Class: Ffmprb::Process::Input::Cropped
- Inherits:
-
ChainBase
- Object
- Ffmprb::Process::Input
- ChainBase
- Ffmprb::Process::Input::Cropped
- Defined in:
- lib/ffmprb/process/input/cropped.rb
Instance Attribute Summary collapse
-
#ratios ⇒ Object
readonly
Returns the value of attribute ratios.
Attributes inherited from Ffmprb::Process::Input
Instance Method Summary collapse
- #filters_for(lbl, video:, audio:) ⇒ Object
-
#initialize(unfiltered, crop:) ⇒ Cropped
constructor
A new instance of Cropped.
Methods inherited from ChainBase
#chain_copy, #unfiltered, #unfiltered=
Methods inherited from Ffmprb::Process::Input
#args, #audio, audio_args, #chain_copy, #channel, #channel?, #copy, #crop, #cut, #loop, #mute, #pace, #pp, resolve, #reverse, #temporise_io!, #video, video_args, #volume
Constructor Details
#initialize(unfiltered, crop:) ⇒ Cropped
Returns a new instance of Cropped.
15 16 17 18 |
# File 'lib/ffmprb/process/input/cropped.rb', line 15 def initialize(unfiltered, crop:) super unfiltered self.ratios = crop end |
Instance Attribute Details
#ratios ⇒ Object
Returns the value of attribute ratios.
13 14 15 |
# File 'lib/ffmprb/process/input/cropped.rb', line 13 def ratios @ratios end |
Instance Method Details
#filters_for(lbl, video:, audio:) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/ffmprb/process/input/cropped.rb', line 20 def filters_for(lbl, video:, audio:) # Cropping lbl_aux = "cp#{lbl}" lbl_tmp = "tmp#{lbl}" super(lbl_aux, video: unsize(video), audio: audio) + [ *((video && channel?(:video))? [ Filter.crop_prop(ratios, "#{lbl_aux}:v", "#{lbl_tmp}:v"), Filter.scale_pad(video.resolution, "#{lbl_tmp}:v", "#{lbl}:v") ]: nil), *((audio && channel?(:audio))? Filter.anull("#{lbl_aux}:a", "#{lbl}:a"): nil) ] end |