Class: Ffmprb::Process::Input::Cropped

Inherits:
Ffmprb::Process::Input show all
Defined in:
lib/ffmprb/process/input.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Ffmprb::Process::Input

#audio, #channel?, #crop, #cut, #options, #video, #volume

Constructor Details

#initialize(unfiltered, crop:) ⇒ Cropped

Returns a new instance of Cropped.



11
12
13
14
# File 'lib/ffmprb/process/input.rb', line 11

def initialize(unfiltered, crop:)
  @io = unfiltered
  self.crop_ratios = crop
end

Instance Attribute Details

#crop_ratiosObject

Returns the value of attribute crop_ratios.



9
10
11
# File 'lib/ffmprb/process/input.rb', line 9

def crop_ratios
  @crop_ratios
end

Instance Method Details

#filters_for(lbl, process:, video: true, audio: true) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
# File 'lib/ffmprb/process/input.rb', line 16

def filters_for(lbl, process:, video: true, audio: true)

  # Cropping

  lbl_aux = "cp#{lbl}"
  @io.filters_for(lbl_aux, process: process, video: video, audio: audio) +
    [
      *((video && channel?(:video))? Filter.crop(crop_ratios, "#{lbl_aux}:v", "#{lbl}:v"): nil),
      *((audio && channel?(:audio))? Filter.anull("#{lbl_aux}:a", "#{lbl}:a"): nil)
    ]
end