require 'rprogram/task' require 'rdvd-slideshow/slideshow_input' module RDvdSlideshow # # ==dvd-slideshow options: # # -n:: mencoder.name # -o:: mencoder.output_dir # -b:: mencoder.background # -a:: mencoder.audio_file # -p:: mencoder.pal # -mp2:: mencoder.mp2 # -L:: mencoder.low_quality # -H:: mencoder.high_quality # -theme:: mencoder.theme # -border:: mencoder.border # -sharpen:: mencoder.sharpen # -r:: mencoder.auto_crop # -w:: mencoder.widescreen # -smp:: mencoder.smp # -mpeg2enc:: mencoder.mpeg2enc # -vcd:: mencoder.vcd # -flv:: mencoder.flv # -s:: mencoder.output_size # -f:: mencoder.input_file # # Instead of providing an input file it is possible to programatically define the input with the write_input method # class SlideshowTask < RProgram::Task long_option :flag => '-n', :name => :name long_option :flag => '-o', :name => :output_dir long_option :flag => '-b', :name => :background long_option :flag => '-a', :name => :audio_file long_option :flag => '-p', :name => :pal long_option :flag => '-mp2', :name => :mp2 long_option :flag => '-L', :name => :low_quality long_option :flag => '-H', :name => :high_quality long_option :flag => '-theme' long_option :flag => '-border' long_option :flag => '-sharpen' long_option :flag => '-r', :name => :auto_crop long_option :flag => '-w', :name => :widescreen long_option :flag => '-smp' long_option :flag => '-mpeg2enc' long_option :flag => '-vcd' long_option :flag => '-flv' long_option :flag => '-s', :name => :output_size long_option :flag => '-f', :name => :input_file # # Configures the input configuration of the slideshow # and generates automatically the corresponding input file. # The provided block is used to configure the SlideshowInput object # def write_input(&block) @input = SlideshowInput.new do |input| block.call(input) if block end @options[:input_file] = @input.file_path end end end