ehbrs-tools 0.23.0 → 0.23.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/exe/ehbrs +2 -2
- data/lib/ehbrs/tools/runner.rb +21 -0
- data/lib/ehbrs/tools/runner/cooking_book.rb +32 -0
- data/lib/ehbrs/tools/runner/cooking_book/build.rb +52 -0
- data/lib/ehbrs/{runner/videos/series.rb → tools/runner/finances.rb} +4 -4
- data/lib/ehbrs/tools/runner/finances/bb_browser.rb +37 -0
- data/lib/ehbrs/tools/runner/fs.rb +18 -0
- data/lib/ehbrs/tools/runner/fs/selected.rb +81 -0
- data/lib/ehbrs/tools/runner/fs/used_space.rb +161 -0
- data/lib/ehbrs/tools/runner/google.rb +18 -0
- data/lib/ehbrs/tools/runner/google/translate.rb +89 -0
- data/lib/ehbrs/tools/runner/music.rb +18 -0
- data/lib/ehbrs/tools/runner/music/selected.rb +28 -0
- data/lib/ehbrs/tools/runner/self.rb +18 -0
- data/lib/ehbrs/tools/runner/self/test.rb +27 -0
- data/lib/ehbrs/tools/runner/telegram.rb +28 -0
- data/lib/ehbrs/tools/runner/telegram/send_message.rb +31 -0
- data/lib/ehbrs/tools/runner/vg.rb +18 -0
- data/lib/ehbrs/tools/runner/vg/ips.rb +134 -0
- data/lib/ehbrs/tools/runner/vg/wii.rb +74 -0
- data/lib/ehbrs/{runner/web_utils → tools/runner}/videos.rb +3 -3
- data/lib/ehbrs/tools/runner/videos/extract.rb +70 -0
- data/lib/ehbrs/tools/runner/videos/probe.rb +34 -0
- data/lib/ehbrs/tools/runner/videos/series.rb +20 -0
- data/lib/ehbrs/tools/runner/videos/series/rename.rb +74 -0
- data/lib/ehbrs/tools/runner/videos/unsupported.rb +61 -0
- data/lib/ehbrs/tools/runner/web_utils.rb +26 -0
- data/lib/ehbrs/tools/runner/web_utils/videos.rb +20 -0
- data/lib/ehbrs/tools/runner/web_utils/videos/download.rb +65 -0
- data/lib/ehbrs/tools/runner/web_utils/videos/upload.rb +77 -0
- data/lib/ehbrs/tools/version.rb +1 -1
- data/vendor/aranha-parsers/lib/aranha/parsers/source_address.rb +10 -8
- data/vendor/aranha-parsers/lib/aranha/parsers/version.rb +1 -1
- data/vendor/eac_docker/eac_docker.gemspec +1 -1
- data/vendor/eac_docker/lib/eac_docker/debug.rb +15 -0
- data/vendor/eac_docker/lib/eac_docker/images/coded.rb +4 -0
- data/vendor/eac_docker/lib/eac_docker/images/templatized.rb +12 -2
- data/vendor/eac_docker/lib/eac_docker/version.rb +1 -1
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/boolean.rb +1 -1
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
- data/vendor/ehbrs_ruby_utils/ehbrs_ruby_utils.gemspec +3 -2
- data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/version.rb +1 -1
- data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/stream.rb +11 -1
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec.rb +14 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_attachment.source.yaml +28 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_attachment.target.yaml +7 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_audio.source.yaml +49 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_audio.target.yaml +7 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_subtitle.source.yaml +43 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_subtitle.target.yaml +7 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_video.source.yaml +59 -0
- data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_video.target.yaml +7 -0
- data/vendor/ehbrs_ruby_utils/spec/rubocop_check_spec.rb +1 -5
- data/vendor/ehbrs_ruby_utils/spec/spec_helper.rb +3 -0
- metadata +42 -32
- data/lib/ehbrs/runner.rb +0 -19
- data/lib/ehbrs/runner/cooking_book.rb +0 -30
- data/lib/ehbrs/runner/cooking_book/build.rb +0 -50
- data/lib/ehbrs/runner/finances.rb +0 -16
- data/lib/ehbrs/runner/finances/bb_browser.rb +0 -35
- data/lib/ehbrs/runner/fs.rb +0 -16
- data/lib/ehbrs/runner/fs/selected.rb +0 -79
- data/lib/ehbrs/runner/fs/used_space.rb +0 -159
- data/lib/ehbrs/runner/google.rb +0 -16
- data/lib/ehbrs/runner/google/translate.rb +0 -87
- data/lib/ehbrs/runner/music.rb +0 -16
- data/lib/ehbrs/runner/music/selected.rb +0 -26
- data/lib/ehbrs/runner/self.rb +0 -16
- data/lib/ehbrs/runner/self/test.rb +0 -25
- data/lib/ehbrs/runner/telegram.rb +0 -26
- data/lib/ehbrs/runner/telegram/send_message.rb +0 -29
- data/lib/ehbrs/runner/vg.rb +0 -16
- data/lib/ehbrs/runner/vg/ips.rb +0 -132
- data/lib/ehbrs/runner/vg/wii.rb +0 -72
- data/lib/ehbrs/runner/videos.rb +0 -16
- data/lib/ehbrs/runner/videos/extract.rb +0 -68
- data/lib/ehbrs/runner/videos/probe.rb +0 -32
- data/lib/ehbrs/runner/videos/series/rename.rb +0 -72
- data/lib/ehbrs/runner/videos/unsupported.rb +0 -59
- data/lib/ehbrs/runner/web_utils.rb +0 -24
- data/lib/ehbrs/runner/web_utils/videos/download.rb +0 -63
- data/lib/ehbrs/runner/web_utils/videos/upload.rb +0 -75
data/lib/ehbrs/tools/version.rb
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'active_support/core_ext/module/delegation'
|
4
|
-
require 'eac_ruby_utils/
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
5
5
|
require 'yaml'
|
6
6
|
|
7
7
|
module Aranha
|
8
8
|
module Parsers
|
9
9
|
class SourceAddress
|
10
|
-
|
10
|
+
require_sub __FILE__
|
11
11
|
|
12
12
|
class << self
|
13
13
|
SUBS = [
|
@@ -35,12 +35,8 @@ module Aranha
|
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
-
|
39
|
-
|
40
|
-
def initialize(source)
|
41
|
-
@sub = self.class.detect_sub(source)
|
42
|
-
end
|
43
|
-
|
38
|
+
enable_simple_cache
|
39
|
+
common_constructor :source
|
44
40
|
delegate :content, :url, to: :sub
|
45
41
|
|
46
42
|
def to_s
|
@@ -50,6 +46,12 @@ module Aranha
|
|
50
46
|
def serialize
|
51
47
|
sub.serialize.strip + "\n"
|
52
48
|
end
|
49
|
+
|
50
|
+
private
|
51
|
+
|
52
|
+
def sub_uncached
|
53
|
+
self.class.detect_sub(source)
|
54
|
+
end
|
53
55
|
end
|
54
56
|
end
|
55
57
|
end
|
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
|
|
12
12
|
|
13
13
|
s.files = Dir['{lib}/**/*']
|
14
14
|
|
15
|
-
s.add_dependency 'eac_ruby_utils', '~> 0.
|
15
|
+
s.add_dependency 'eac_ruby_utils', '~> 0.69', '>= 0.69.1'
|
16
16
|
s.add_dependency 'eac_templates', '~> 0.1'
|
17
17
|
|
18
18
|
s.add_development_dependency 'eac_ruby_gem_support', '~> 0.2'
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/boolean'
|
4
|
+
|
5
|
+
module EacDocker
|
6
|
+
module Debug
|
7
|
+
class << self
|
8
|
+
ENABLE_ENVVAR = 'EAC_DOCKER_DEBUG'
|
9
|
+
|
10
|
+
def enabled?
|
11
|
+
::EacRubyUtils::Boolean.parse(ENV[ENABLE_ENVVAR])
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'eac_docker/debug'
|
3
4
|
require 'eac_docker/executables'
|
4
5
|
require 'eac_docker/images/base'
|
5
6
|
require 'eac_ruby_utils/core_ext'
|
@@ -26,6 +27,9 @@ module EacDocker
|
|
26
27
|
private
|
27
28
|
|
28
29
|
def id_uncached
|
30
|
+
if ::EacDocker::Debug.enabled?
|
31
|
+
::EacDocker::Executables.docker.command(*build_args.excluding('--quiet')).system!
|
32
|
+
end
|
29
33
|
::EacDocker::Executables.docker.command(*build_args).execute!.strip
|
30
34
|
end
|
31
35
|
|
@@ -11,17 +11,27 @@ module EacDocker
|
|
11
11
|
class Templatized < ::EacDocker::Images::Base
|
12
12
|
enable_immutable
|
13
13
|
immutable_accessor :tag
|
14
|
+
attr_reader :provide_dir
|
14
15
|
|
15
16
|
def provide
|
16
17
|
::EacRubyUtils::Fs::Temp.on_directory do |provide_dir|
|
17
|
-
|
18
|
-
|
18
|
+
begin
|
19
|
+
self.provide_dir = provide_dir
|
20
|
+
template.apply(self, provide_dir)
|
21
|
+
coded_image(provide_dir).tag(tag).provide
|
22
|
+
ensure
|
23
|
+
self.provide_dir = nil
|
24
|
+
end
|
19
25
|
end
|
20
26
|
end
|
21
27
|
|
22
28
|
def coded_image(provide_dir)
|
23
29
|
::EacDocker::Images::Coded.new(provide_dir)
|
24
30
|
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
attr_writer :provide_dir
|
25
35
|
end
|
26
36
|
end
|
27
37
|
end
|
@@ -6,7 +6,7 @@ module EacRubyUtils
|
|
6
6
|
def parse(value)
|
7
7
|
return parse_string(value) if value.is_a?(::String)
|
8
8
|
return parse_string(value.to_s) if value.is_a?(::Symbol)
|
9
|
-
return parse_number(value) if value.is_a?(::
|
9
|
+
return parse_number(value) if value.is_a?(::Numeric)
|
10
10
|
|
11
11
|
value ? true : false
|
12
12
|
end
|
@@ -14,7 +14,8 @@ Gem::Specification.new do |s|
|
|
14
14
|
|
15
15
|
s.files = Dir['{lib}/**/*']
|
16
16
|
|
17
|
-
s.add_dependency 'eac_ruby_utils', '~> 0.
|
17
|
+
s.add_dependency 'eac_ruby_utils', '~> 0.69', '>= 0.69.1'
|
18
18
|
|
19
|
-
s.add_development_dependency '
|
19
|
+
s.add_development_dependency 'aranha-parsers', '~> 0.7', '>= 0.7.2'
|
20
|
+
s.add_development_dependency 'eac_ruby_gem_support', '~> 0.2'
|
20
21
|
end
|
@@ -29,12 +29,18 @@ module EhbrsRubyUtils
|
|
29
29
|
ffprobe_data
|
30
30
|
end
|
31
31
|
|
32
|
-
%i[index
|
32
|
+
%i[index].each do |method_name|
|
33
33
|
define_method method_name do
|
34
34
|
ffprobe_data.fetch(method_name)
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
+
%i[codec_name codec_long_name].each do |method_name|
|
39
|
+
define_method method_name do
|
40
|
+
ffprobe_data[method_name]
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
38
44
|
def codec_type
|
39
45
|
ffprobe_data.fetch(:codec_type).to_sym
|
40
46
|
end
|
@@ -46,6 +52,10 @@ module EhbrsRubyUtils
|
|
46
52
|
def language
|
47
53
|
tags[:language]
|
48
54
|
end
|
55
|
+
|
56
|
+
def title
|
57
|
+
tags[:title]
|
58
|
+
end
|
49
59
|
end
|
50
60
|
end
|
51
61
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aranha/parsers/spec/source_target_fixtures_example'
|
4
|
+
require 'ehbrs_ruby_utils/videos/stream'
|
5
|
+
|
6
|
+
RSpec.describe ::EhbrsRubyUtils::Videos::Stream do
|
7
|
+
include_examples 'source_target_fixtures', __FILE__
|
8
|
+
|
9
|
+
def source_data(source_file)
|
10
|
+
instance = described_class.new(::YAML.load_file(source_file))
|
11
|
+
%w[codec_name codec_long_name codec_type index language title]
|
12
|
+
.map { |k| [k.to_sym, instance.send(k)] }.sort.to_h
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
---
|
2
|
+
:index: 19
|
3
|
+
:codec_type: attachment
|
4
|
+
:codec_tag_string: "[0][0][0][0]"
|
5
|
+
:codec_tag: '0x0000'
|
6
|
+
:r_frame_rate: 0/0
|
7
|
+
:avg_frame_rate: 0/0
|
8
|
+
:time_base: 1/90000
|
9
|
+
:start_pts: 0
|
10
|
+
:start_time: '0.000000'
|
11
|
+
:duration_ts: 383973120
|
12
|
+
:duration: '4266.368000'
|
13
|
+
:disposition:
|
14
|
+
:default: 0
|
15
|
+
:dub: 0
|
16
|
+
:original: 0
|
17
|
+
:comment: 0
|
18
|
+
:lyrics: 0
|
19
|
+
:karaoke: 0
|
20
|
+
:forced: 0
|
21
|
+
:hearing_impaired: 0
|
22
|
+
:visual_impaired: 0
|
23
|
+
:clean_effects: 0
|
24
|
+
:attached_pic: 0
|
25
|
+
:timed_thumbnails: 0
|
26
|
+
:tags:
|
27
|
+
:filename: encoding-source-code.7z
|
28
|
+
:mimetype: application/octet-stream
|
@@ -0,0 +1,49 @@
|
|
1
|
+
---
|
2
|
+
:index: 18
|
3
|
+
:codec_name: aac
|
4
|
+
:codec_long_name: AAC (Advanced Audio Coding)
|
5
|
+
:profile: LC
|
6
|
+
:codec_type: audio
|
7
|
+
:codec_time_base: 1/48000
|
8
|
+
:codec_tag_string: "[0][0][0][0]"
|
9
|
+
:codec_tag: '0x0000'
|
10
|
+
:sample_fmt: fltp
|
11
|
+
:sample_rate: '48000'
|
12
|
+
:channels: 2
|
13
|
+
:channel_layout: stereo
|
14
|
+
:bits_per_sample: 0
|
15
|
+
:r_frame_rate: 0/0
|
16
|
+
:avg_frame_rate: 0/0
|
17
|
+
:time_base: 1/1000
|
18
|
+
:start_pts: 0
|
19
|
+
:start_time: '0.000000'
|
20
|
+
:disposition:
|
21
|
+
:default: 1
|
22
|
+
:dub: 0
|
23
|
+
:original: 0
|
24
|
+
:comment: 0
|
25
|
+
:lyrics: 0
|
26
|
+
:karaoke: 0
|
27
|
+
:forced: 0
|
28
|
+
:hearing_impaired: 0
|
29
|
+
:visual_impaired: 0
|
30
|
+
:clean_effects: 0
|
31
|
+
:attached_pic: 0
|
32
|
+
:timed_thumbnails: 0
|
33
|
+
:tags:
|
34
|
+
:language: jpn
|
35
|
+
:title: "[AnimeRG] Tenshi No Tamago [1080p] [ScavvyKiD]"
|
36
|
+
:BPS: '125375'
|
37
|
+
:BPS-eng: '125375'
|
38
|
+
:DURATION: '01:11:06.368000000'
|
39
|
+
:DURATION-eng: '01:11:06.368000000'
|
40
|
+
:NUMBER_OF_FRAMES: '199986'
|
41
|
+
:NUMBER_OF_FRAMES-eng: '199986'
|
42
|
+
:NUMBER_OF_BYTES: '66861986'
|
43
|
+
:NUMBER_OF_BYTES-eng: '66861986'
|
44
|
+
:_STATISTICS_WRITING_APP: mkvmerge v8.3.0 ('Over the Horizon') 32bit
|
45
|
+
:_STATISTICS_WRITING_APP-eng: mkvmerge v8.3.0 ('Over the Horizon') 32bit
|
46
|
+
:_STATISTICS_WRITING_DATE_UTC: '2015-12-04 08:47:49'
|
47
|
+
:_STATISTICS_WRITING_DATE_UTC-eng: '2015-12-04 08:47:49'
|
48
|
+
:_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
|
49
|
+
:_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
|
@@ -0,0 +1,43 @@
|
|
1
|
+
---
|
2
|
+
:index: 0
|
3
|
+
:codec_name: ass
|
4
|
+
:codec_long_name: ASS (Advanced SSA) subtitle
|
5
|
+
:codec_type: subtitle
|
6
|
+
:codec_time_base: 0/1
|
7
|
+
:codec_tag_string: "[0][0][0][0]"
|
8
|
+
:codec_tag: '0x0000'
|
9
|
+
:r_frame_rate: 0/0
|
10
|
+
:avg_frame_rate: 0/0
|
11
|
+
:time_base: 1/1000
|
12
|
+
:start_pts: 980
|
13
|
+
:start_time: '0.980000'
|
14
|
+
:disposition:
|
15
|
+
:default: 0
|
16
|
+
:dub: 0
|
17
|
+
:original: 0
|
18
|
+
:comment: 0
|
19
|
+
:lyrics: 0
|
20
|
+
:karaoke: 0
|
21
|
+
:forced: 0
|
22
|
+
:hearing_impaired: 0
|
23
|
+
:visual_impaired: 0
|
24
|
+
:clean_effects: 0
|
25
|
+
:attached_pic: 0
|
26
|
+
:timed_thumbnails: 0
|
27
|
+
:tags:
|
28
|
+
:language: fre
|
29
|
+
:title: French Subs
|
30
|
+
:BPS: '19'
|
31
|
+
:BPS-eng: '19'
|
32
|
+
:DURATION: '01:11:01.020000000'
|
33
|
+
:DURATION-eng: '01:11:01.020000000'
|
34
|
+
:NUMBER_OF_FRAMES: '134'
|
35
|
+
:NUMBER_OF_FRAMES-eng: '134'
|
36
|
+
:NUMBER_OF_BYTES: '10267'
|
37
|
+
:NUMBER_OF_BYTES-eng: '10267'
|
38
|
+
:_STATISTICS_WRITING_APP: mkvmerge v8.3.0 ('Over the Horizon') 32bit
|
39
|
+
:_STATISTICS_WRITING_APP-eng: mkvmerge v8.3.0 ('Over the Horizon') 32bit
|
40
|
+
:_STATISTICS_WRITING_DATE_UTC: '2015-12-04 08:47:49'
|
41
|
+
:_STATISTICS_WRITING_DATE_UTC-eng: '2015-12-04 08:47:49'
|
42
|
+
:_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
|
43
|
+
:_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
|
@@ -0,0 +1,59 @@
|
|
1
|
+
---
|
2
|
+
:index: 17
|
3
|
+
:codec_name: h264
|
4
|
+
:codec_long_name: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
|
5
|
+
:profile: High
|
6
|
+
:codec_type: video
|
7
|
+
:codec_time_base: 1001/48000
|
8
|
+
:codec_tag_string: "[0][0][0][0]"
|
9
|
+
:codec_tag: '0x0000'
|
10
|
+
:width: 1920
|
11
|
+
:height: 1080
|
12
|
+
:coded_width: 1920
|
13
|
+
:coded_height: 1088
|
14
|
+
:has_b_frames: 2
|
15
|
+
:sample_aspect_ratio: '1:1'
|
16
|
+
:display_aspect_ratio: '16:9'
|
17
|
+
:pix_fmt: yuv420p
|
18
|
+
:level: 41
|
19
|
+
:chroma_location: left
|
20
|
+
:field_order: progressive
|
21
|
+
:refs: 1
|
22
|
+
:is_avc: 'true'
|
23
|
+
:nal_length_size: '4'
|
24
|
+
:r_frame_rate: 24000/1001
|
25
|
+
:avg_frame_rate: 24000/1001
|
26
|
+
:time_base: 1/1000
|
27
|
+
:start_pts: 0
|
28
|
+
:start_time: '0.000000'
|
29
|
+
:bits_per_raw_sample: '8'
|
30
|
+
:disposition:
|
31
|
+
:default: 1
|
32
|
+
:dub: 0
|
33
|
+
:original: 0
|
34
|
+
:comment: 0
|
35
|
+
:lyrics: 0
|
36
|
+
:karaoke: 0
|
37
|
+
:forced: 0
|
38
|
+
:hearing_impaired: 0
|
39
|
+
:visual_impaired: 0
|
40
|
+
:clean_effects: 0
|
41
|
+
:attached_pic: 0
|
42
|
+
:timed_thumbnails: 0
|
43
|
+
:tags:
|
44
|
+
:language: eng
|
45
|
+
:title: "[AnimeRG] Tenshi No Tamago [1080p] [ScavvyKiD]"
|
46
|
+
:BPS: '3495932'
|
47
|
+
:BPS-eng: '3495932'
|
48
|
+
:DURATION: '01:11:06.218000000'
|
49
|
+
:DURATION-eng: '01:11:06.218000000'
|
50
|
+
:NUMBER_OF_FRAMES: '102288'
|
51
|
+
:NUMBER_OF_FRAMES-eng: '102288'
|
52
|
+
:NUMBER_OF_BYTES: '1864301082'
|
53
|
+
:NUMBER_OF_BYTES-eng: '1864301082'
|
54
|
+
:_STATISTICS_WRITING_APP: mkvmerge v8.3.0 ('Over the Horizon') 32bit
|
55
|
+
:_STATISTICS_WRITING_APP-eng: mkvmerge v8.3.0 ('Over the Horizon') 32bit
|
56
|
+
:_STATISTICS_WRITING_DATE_UTC: '2015-12-04 08:47:49'
|
57
|
+
:_STATISTICS_WRITING_DATE_UTC-eng: '2015-12-04 08:47:49'
|
58
|
+
:_STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
|
59
|
+
:_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
|