Class: Ffmprb::Process::Input::ChainBase

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

Direct Known Subclasses

Channeled, Cropped, Cut, Looping, Loud, Paced, Postprocessed, Reversed

Instance Attribute Summary

Attributes inherited from Ffmprb::Process::Input

#io, #process

Instance Method Summary collapse

Methods inherited from Ffmprb::Process::Input

#args, #audio, audio_args, #channel?, #copy, #crop, #cut, #loop, #mute, #pace, #pp, resolve, #reverse, #temporise_io!, #video, video_args, #volume

Constructor Details

#initialize(unfiltered) ⇒ ChainBase

Returns a new instance of ChainBase.



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

def initialize(unfiltered)
  @io = unfiltered
end

Instance Method Details

#chain_copy(src_input) ⇒ Object

TODO SPEC ME



17
18
19
20
21
# File 'lib/ffmprb/process/input/chain_base.rb', line 17

def chain_copy(src_input)  # TODO SPEC ME
  dup.tap do |top|
    top.unfiltered = unfiltered.chain_copy(src_input)
  end
end

#channel(medium) ⇒ Object



30
31
32
# File 'lib/ffmprb/process/input/chain_base.rb', line 30

def channel(medium)
  io.channel medium
end

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



23
24
25
26
27
# File 'lib/ffmprb/process/input/chain_base.rb', line 23

def filters_for(lbl, video:, audio:)

  # Doing nothing
  unfiltered.filters_for lbl, video: video, audio: audio
end

#unfilteredObject



13
# File 'lib/ffmprb/process/input/chain_base.rb', line 13

def unfiltered; @io; end

#unfiltered=(input) ⇒ Object



14
# File 'lib/ffmprb/process/input/chain_base.rb', line 14

def unfiltered=(input); @io = input; end