Module: Falcon::Encoder::InstanceMethods
- Defined in:
- lib/falcon/encoder.rb
Instance Method Summary collapse
- #encode ⇒ Object
- #fail! ⇒ Object
- #fail? ⇒ Boolean
-
#metadata_options ⇒ Object
A hash of metadatas for video:.
- #output_directory ⇒ Object
- #output_path ⇒ Object
- #processing! ⇒ Object
- #processing? ⇒ Boolean
- #profile ⇒ Object
- #profile_options(input_file, output_file) ⇒ Object
- #resolution ⇒ Object
- #success! ⇒ Object
- #success? ⇒ Boolean
- #transcoder ⇒ Object
Instance Method Details
#encode ⇒ Object
78 79 80 81 82 83 84 |
# File 'lib/falcon/encoder.rb', line 78 def encode videoable.run_callbacks(:encode) do videoable.run_callbacks(:"#{name}_encode") do process_encoding end end end |
#fail! ⇒ Object
103 104 105 106 |
# File 'lib/falcon/encoder.rb', line 103 def fail! self.status = FAILURE save(:validate => false) end |
#fail? ⇒ Boolean
90 91 92 |
# File 'lib/falcon/encoder.rb', line 90 def fail? self.status == FAILURE end |
#metadata_options ⇒ Object
A hash of metadatas for video:
{ :title => ”, :author => ”, :copyright => ”,
:comment => '', :description => '', :language => ''}
74 75 76 |
# File 'lib/falcon/encoder.rb', line 74 def videoable.send(name). end |
#output_directory ⇒ Object
56 57 58 |
# File 'lib/falcon/encoder.rb', line 56 def output_directory @output_directory ||= File.dirname(self.output_path) end |
#output_path ⇒ Object
52 53 54 |
# File 'lib/falcon/encoder.rb', line 52 def output_path @output_path ||= self.profile.path(source_path, name).to_s end |
#processing! ⇒ Object
98 99 100 101 |
# File 'lib/falcon/encoder.rb', line 98 def processing! self.status = PROCESSING save(:validate => false) end |
#processing? ⇒ Boolean
86 87 88 |
# File 'lib/falcon/encoder.rb', line 86 def processing? self.status == PROCESSING end |
#profile ⇒ Object
40 41 42 |
# File 'lib/falcon/encoder.rb', line 40 def profile @profile ||= Falcon::Profile.find(profile_name) end |
#profile_options(input_file, output_file) ⇒ Object
60 61 62 63 64 65 66 67 |
# File 'lib/falcon/encoder.rb', line 60 def (input_file, output_file) self.profile..merge({ :input_file => input_file, :output_file => output_file, :resolution => self.ffmpeg_resolution #:resolution_and_padding => self.ffmpeg_resolution_and_padding_no_cropping }) end |
#resolution ⇒ Object
44 45 46 |
# File 'lib/falcon/encoder.rb', line 44 def resolution self.width ? "#{self.width}x#{self.height}" : nil end |
#success! ⇒ Object
108 109 110 111 112 |
# File 'lib/falcon/encoder.rb', line 108 def success! self.status = SUCCESS self.encoded_at = Time.now save(:validate => false) end |
#success? ⇒ Boolean
94 95 96 |
# File 'lib/falcon/encoder.rb', line 94 def success? self.status == SUCCESS end |
#transcoder ⇒ Object
48 49 50 |
# File 'lib/falcon/encoder.rb', line 48 def transcoder @transcoder ||= ::WebVideo::Transcoder.new(source_path) end |