[gst-devel] Help needed to create a PVR schema

Ronald S. Bultje rbultje at ronald.bitfreak.net
Mon May 23 23:11:06 CEST 2005


On Mon, 2005-05-16 at 14:26, obs wrote:
>                              alsasink
>                            /
> alsasrc device=hw:0 ! tee
>                            \
>                              mpegaudio
>                                        \
>                                          avimux ! filesink
>                                        /
>                            ffenc_mpeg4
>                          /
>             v4lsrc ! tee
>                          \
>                            ximagesink
> But it doesn't work. I have add thread, queue... but it fails always or
> it's too slow and without synchronisation.

Ho, right, this is a lot of problems in the same sentence. So what is
it; too slow? Or unsynchronized? Or doesn't it work at all?

Unsynchronized: capture is hard. Clocks run as an element starts
playing, and may thus not have the same offset. Muxers don't handle this
(yet). So in practice, it's a good idea to set the whole pipeline to
PAUSED, then set both inputs to PLAYING (alsasrc/v4lsrc) and then set
the rest to PLAYING. This ensures that the a/v sync offset diff is
approximately zero. to keep synchronization, use the 'sync' property in
v4lsrc (cupid does that) or use videorate and audiorate (flumotion does

If it fails, I'll need error messages. If it's too slow, check your CPU
usage and use different encoding quaility settings.

Also, see cupid's source tree, docs/pipeline.txt, it explains some of
the pipelines used in cupid's design, how and why, etc. May be an
interesting read for you.


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

More information about the gstreamer-devel mailing list