[gst-devel] Transcoding with gstreamer

Ronald S. Bultje rbultje at ronald.bitfreak.net
Thu Nov 25 05:57:06 CET 2004


Hi David,

On Thu, 2004-11-25 at 12:04, David Given wrote:
> Has anyone had any luck encoding video in any of the various standard formats 
> with gstreamer? I can't seem to find an mpeg muxer, for example. Is this kind 
> of thing expected to work?

Yes. I've done DVD ripping on the commandline. I've done video
transcoding a few months ago using a similar pipeline. A graphical
frontend is in the works.

$ gst-launch-0.8 $muxer name=mux ! filesink location=$outfile { filesrc
location=$infile ! $demuxer name=demux ! { queue ! $decoder !
ffmpegcolorspace ! $encoder ! queue ! m. } { demux. ! { queue !
$adecoder ! audioconvert ! $aencoder ! queue ! m. } }

By doing s/filesrc/dvdreadsrc, you can rip dvds.

Now, as for elements:
muxers: asfmux (ASF), avimux (AVI), mplex (MPEG), matroskamux
(Matroska), oggmux (Ogg)
encoders: ffenc_mpeg4 (MPEG-4/DivX), divxenc, xvidenc, mpeg2enc
(MPEG-1/2), theoraenc, ...
Demuxers/decoders should be easy to find yourself. I've done AVI-to-MPEG
transcoding, v4l-to-avi/ogg capturing and DVD-to-Ogg/Theora backupping.

> And does anyone know why frequently when experimenting with a pipeline I 
> frequently just get:
> 
> $ gst-launch-0.8 filesrc location=Neverending\ Story.xm ! mikmod ! tee ! 
> osssink { queue ! goom ! spider ! xvimagesink }
> RUNNING pipeline ...
> ERROR: pipeline doesn't want to play.

$ gst-launch-0.8 filesrc location=Neverending\ Story.xm ! mikmod ! tee
name=t ! osssink { t. ! queue ! goom ! ffmpegcolorspace ! xvimagesink }

Ronald

-- 
Ronald S. Bultje <rbultje at ronald.bitfreak.net>





More information about the gstreamer-devel mailing list