ehbrs-tools 0.16.4 → 0.16.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7341652d89d152c04706843882ca18b17663fe66c31907623edc2fea512388e7
4
- data.tar.gz: f2276a0506108cc0883e9c2e84399207df0da20b944f625d46a6040351707c89
3
+ metadata.gz: 6dc9f681502aa982f3b5f9858770ca29aaf4d993495bf29fdc59e6393a517a47
4
+ data.tar.gz: 99b2ab99b50446770660561475f1f164e52bd6728b0532423db5062a1ef622ab
5
5
  SHA512:
6
- metadata.gz: d72eaddb648e816b85f2a5bad606a3834f64086bb0f5e434e181b20e3dd33212409ea001000f8ee612cd3c528d234e361d64b83feb9f3fdc5da13ea6f6f86f3d
7
- data.tar.gz: 92ca59564d7bc9f61f5842c66da7f3d204d9f58321bae0bd92afe16bab511e8ad22c84fe2633e9d2fbaf12e808a829642ad86725030fde63f6a84be97d4a2c1b
6
+ metadata.gz: e55b14db254112bc093cb6d1b16c590cd21fcfa626d8969eb7d9c672d6652c4c08be83c4e7152bd715ed4b9105b9164d7529471b87ceeb48ca88880237bd5849
7
+ data.tar.gz: a5c2dc9b6fc43cb397ed01aa7ddbba7d3d466507a1974b4c24d9b68b71285e2e666be34c92935f1a467b20a6f963afde0136fe5968989c719468bb8d7ee42bb8
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ehbrs
4
4
  module Tools
5
- VERSION = '0.16.4'
5
+ VERSION = '0.16.5'
6
6
  end
7
7
  end
@@ -6,30 +6,12 @@ require 'ehbrs_ruby_utils/videos/stream'
6
6
  module Ehbrs
7
7
  module Videos
8
8
  class Track < ::SimpleDelegator
9
- TYPE_MAPPING = {
10
- audio: 'Audio',
11
- video: 'Video',
12
- subtitle: 'Subtitle'
13
- }.freeze
14
-
15
- def codec
16
- codec_name
17
- end
18
-
19
- def type
20
- TYPE_MAPPING.fetch(codec_type)
21
- end
22
-
23
- def number
24
- index
25
- end
26
-
27
9
  def extra
28
10
  ffprobe_data.fetch(:codec_tag_string).to_s
29
11
  end
30
12
 
31
13
  def to_s
32
- "[#{type}(#{number}): #{codec}/#{language || '-'}" +
14
+ "[#{codec_type}(#{index}): #{codec_name}/#{language || '-'}" +
33
15
  extra.if_present('') { |v| " | #{v}" } + ']'
34
16
  end
35
17
  end
@@ -10,7 +10,7 @@ module Ehbrs
10
10
  common_constructor :codec, :listed_extras
11
11
 
12
12
  def check(track)
13
- return nil unless track.codec == codec
13
+ return nil unless track.codec_name == codec
14
14
  return nil if listed_extras.any? do |extra|
15
15
  track.extra.downcase.include?(extra.downcase)
16
16
  end
@@ -12,7 +12,7 @@ module Ehbrs
12
12
  common_constructor :codec, :extra
13
13
 
14
14
  def check(track)
15
- return nil unless track.codec == codec
15
+ return nil unless track.codec_name == codec
16
16
  return nil unless track.extra.downcase.include?(extra.downcase)
17
17
 
18
18
  "Unsupported extra \"#{extra}\" for codec \"#{codec}\" and track #{track}"
@@ -10,9 +10,9 @@ module Ehbrs
10
10
  common_constructor :listed_codecs
11
11
 
12
12
  def check(track)
13
- return nil if listed_codecs.include?(track.codec)
13
+ return nil if listed_codecs.include?(track.codec_name)
14
14
 
15
- "Not listed codec \"#{track.codec}\" (Track: #{track}, listed: #{listed_codecs})"
15
+ "Not listed codec \"#{track.codec_name}\" (Track: #{track}, listed: #{listed_codecs})"
16
16
  end
17
17
 
18
18
  def fix
@@ -12,7 +12,7 @@ module Ehbrs
12
12
  common_constructor :codec
13
13
 
14
14
  def check(track)
15
- return nil unless track.codec == codec
15
+ return nil unless track.codec_name == codec
16
16
 
17
17
  "Unsupported codec \"#{codec}\" for track #{track}"
18
18
  end
@@ -35,19 +35,6 @@ module Ehbrs
35
35
  video.tracks.flat_map(&:ffmpeg_fix_args)
36
36
  end
37
37
 
38
- def track_fix_args(track)
39
- ["#{track_codec_option_by_type(track.type)}:#{track.number}",
40
- track.passed? ? 'copy' : track_codec_fix_by_type(track.type)]
41
- end
42
-
43
- def track_codec_option_by_type(track_type)
44
- TRACK_TYPE_OPTIONS.fetch(track_type)
45
- end
46
-
47
- def track_codec_fix_by_type(track_type)
48
- TRACK_TYPE_FIX_CODECS.fetch(track_type)
49
- end
50
-
51
38
  def container_fix_args
52
39
  ['-f', ::Ehbrs::Videos::Unsupported::Fixes::SupportedContainer::FIX_FORMAT]
53
40
  end
@@ -6,28 +6,28 @@ module Ehbrs
6
6
  module Fixes
7
7
  class SupportedCodec
8
8
  TRACK_TYPE_OPTIONS = {
9
- 'Audio' => '-acodec',
10
- 'Video' => '-vcodec',
11
- 'Subtitle' => '-scodec'
9
+ audio: '-acodec',
10
+ video: '-vcodec',
11
+ subtitle: '-scodec'
12
12
  }.freeze
13
13
 
14
14
  TRACK_TYPE_FIX_CODECS = {
15
- 'Audio' => 'libvorbis',
16
- 'Video' => 'libx264',
17
- 'Subtitle' => 'ass'
15
+ audio: 'libvorbis',
16
+ video: 'libx264',
17
+ subtitle: 'ass'
18
18
  }.freeze
19
19
 
20
20
  def ffmpeg_args(track)
21
- ["#{track_codec_option_by_type(track.type)}:#{track.number}",
22
- track_codec_fix_by_type(track.type)]
21
+ ["#{track_codec_option_by_type(track.codec_type)}:#{track.index}",
22
+ track_codec_fix_by_type(track.codec_type)]
23
23
  end
24
24
 
25
25
  def track_codec_option_by_type(track_type)
26
- TRACK_TYPE_OPTIONS.fetch(track_type)
26
+ TRACK_TYPE_OPTIONS.fetch(track_type.to_s.underscore.to_sym)
27
27
  end
28
28
 
29
29
  def track_codec_fix_by_type(track_type)
30
- TRACK_TYPE_FIX_CODECS.fetch(track_type)
30
+ TRACK_TYPE_FIX_CODECS.fetch(track_type.to_s.underscore.to_sym)
31
31
  end
32
32
  end
33
33
  end
@@ -3,7 +3,7 @@
3
3
  require 'pathname'
4
4
 
5
5
  class Pathname
6
- def basename_sub
7
- parent.join(yield(basename))
6
+ def basename_sub(suffix = '')
7
+ parent.join(yield(basename(suffix)))
8
8
  end
9
9
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRubyUtils
4
- VERSION = '0.55.0'
4
+ VERSION = '0.56.0'
5
5
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EhbrsRubyUtils
4
- VERSION = '0.5.0'
4
+ VERSION = '0.5.1'
5
5
  end
@@ -8,7 +8,7 @@ module EhbrsRubyUtils
8
8
  enable_simple_cache
9
9
  enable_listable
10
10
 
11
- lists.add_symbol :codec_type, :audio, :video, :subtitle, :data
11
+ lists.add_symbol :codec_type, :audio, :video, :subtitle, :data, :attachment
12
12
 
13
13
  common_constructor :ffprobe_data do
14
14
  self.ffprobe_data = ffprobe_data.symbolize_keys.freeze
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ehbrs-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.4
4
+ version: 0.16.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-22 00:00:00.000000000 Z
11
+ date: 2020-12-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm-tools