[gst-devel] Transcoding

Cameron Hutchison camh+gst at xdna.net
Sun Jan 30 00:44:03 CET 2005

I'm trying to transcode some AVI/xvid/mp3 videos I have into an mpeg2
program stream in a form suitable as a title for a DVD.

At the same time, I want to change the FPS from 23.976 to 25.0 (PAL) and
resize the video from 624x352 to 720x576.

I've built the following gst-launch pipeline based on a pipeline
template posted to this list by Ronald S. Bultje in an earlier thread
(Transcoding with gstreamer):

gst-launch \
    mplex name=m ! filesink location=$outfile \
    { \
        filesrc location=$infile ! avidemux name=d \
        { \
            d.video_0 ! queue ! \
            xviddec ! \
            videorate ! video/x-raw-yuv,framerate=25.0 ! \
            videoscale ! video/x-raw-yuv,width=720,height=576 ! \
            mpeg2enc format=8 framerate=3 aspect=3 bitrate=8500 \
            ! queue ! m.video_%d \
        } \
        { \
            d.audio_0 ! queue ! \
            mad ! audioconvert ! ffenc_ac3 bitrate=256000 \
            ! queue ! m.audio_%d \
        } \

When I run this pipeline, there seems to be no output to the
outfile. Watching top(1), I dont see gst-launch using much CPU time at
all. If I kill the process with ^C, it reports a certain number of
iterations, relative to the amount of time I let it run. So, something
seems to be happening, but I can't see what.

I did try to put a progressreport element in there (two actually, for
audio and video), but I still got no output.

Have I constructed my pipeline correctly?

Also, am I choosing the best elements for the task? I notice 2 avi
demuxers, and I assume the ffmpeg mpeg4 decoder is the same as an xvid
decoder? Also I have two choices for mpeg2 encoding.


More information about the gstreamer-devel mailing list