« Ist meine Diplomarbeit ein Projekt? | Main | rmagick, acts_as_authenticated, acl_system »

ffmpeg, rvideo und Linux!

So, heute hab ich mich mal intensiver mit dem Projekt "Folien und Videos hochladen" beschäftigt.
Nach ein paar Recherchen auf rubyforge.org bin ich zuerst auf das Tool flvtool2 und dann auf rvideo gestoßen. Es geht darum, dass man die Videos in .mov, .mpg usw. auf den Server hochlädt und dieser sie dann in .flv umwandelt. So kann man dann die Videos ohne Probleme mit dem Flash-Player im Browser anschauen. Mit rvideo hat man die Möglichkeit auf ffmpeg zuzugreifen.
Das Programm ermöglicht einem Videos in verschiedene Formate zu transcodieren. Mit relativ wenig Ruby-Code kann man dann z.B. aus einer .mpg eine .flv-Datei basteln. Ein Problem hat mich fast zur Verzweiflung gebracht. Nach der Transcodierung hatte die .flv-Datei keinen Sound... nicht wirklich optimal :-). Nach langer Fehlersuche habe ich plötzlich gemerkt, dass meine ffmpeg-Version nicht mehr auf dem aktuellen Stand ist! So konnte auch nicht lame eingebunden werden und damit keine mp3 in die flv-Datei. Naja, jetzt gehts und ich bin zufrieden ^^.

Hier noch der Code:

require 'rubygems'
require 'rvideo'


#file = RVideo::Inspector.new(:file => "lions.mpg")
#print file.audio_codec
#print file.video_codec
transcoder = RVideo::Transcoder.new
recipe = "ffmpeg -i lions.mpg -s 640x480 -s"
recipe += " 640x480 -y test2.flv"
#recipe += "\nflvtool2 -U test2.flv"

begin
transcoder.execute(recipe, {:input_file => "lions.mpg",
:output_file => "test2.flv", :resolution => "640x480"})
rescue TranscoderError => e
puts "Unable to transcode file: #{e.class} - #{e.message}"
end

TrackBack

TrackBack URL for this entry:
http://www.innoq.com/movabletype/mt-tb.cgi/2880

Comments (1)

Hallo,

danke für den Beitrag. Ich hab jedoch folgendes Problem:

C:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:477:in `const_missing': uninitialized constant VideoTranscoding::TranscoderError (NameError)
from P:/video_transcoding/VideoTranscoding/lib/video_transcoding.rb:18:in `tc'
from P:/video_transcoding/VideoTranscoding/lib/video_transcoding.rb:25

Woran kann das liegen ?

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

About

This page contains a single entry from the blog posted on November 12, 2007 5:15 PM.

The previous post in this blog was Ist meine Diplomarbeit ein Projekt?.

The next post in this blog is rmagick, acts_as_authenticated, acl_system.

Many more can be found on the main index page or by looking through the archives.

Powered by
Movable Type 3.31