module HydraHls::Derivatives::Processors::Media
Public Instance Methods
encode_file(file_suffix, options)
click to toggle source
Calls superclass method
# File lib/hydra_hls/derivatives/processors/media.rb, line 17 def encode_file(file_suffix, options) return super(file_suffix,options) unless file_suffix.include?("hls") Dir::mktmpdir(['sufia', "_#{file_suffix}"], Hydra::Derivatives.temp_file_base){ |temp_dir| encode_hls(source_path, options, temp_dir.to_s) HydraHls::HlsOutputFileService.call(directives, temp_dir) } end
encode_hls(input_path, options, output_dir)
click to toggle source
# File lib/hydra_hls/derivatives/processors/media.rb, line 6 def encode_hls(input_path, options, output_dir) segment_base = File.join(output_dir, options[:format]) segment_list = segment_base + ".m3u8" segment_files = segment_base + "_%05d.ts" inopts = options[Hydra::Derivatives::Processors::Ffmpeg::INPUT_OPTIONS] ||= "-y" outopts = options[Hydra::Derivatives::Processors::Ffmpeg::OUTPUT_OPTIONS] output_files = "-segment_list #{segment_list} #{segment_files}" self.class.execute "#{Hydra::Derivatives.ffmpeg_path} #{inopts} -i \"#{input_path}\" #{outopts} #{output_files}" end