[gst-devel] A/V Synchronization in Pipe

Andy Wingo wingo at pobox.com
Thu Oct 6 06:11:02 CEST 2005


Hey dude,

On Thu, 2005-09-22 at 01:12 +0200, Stefan de Konink wrote:
> We, as in Local Broadcast Station, use Gstreamer for basically all our
> transmissions. We started off with Shoutcast/Icecast for Ogg/Vorbis+Theora
> streaming but due to latency Gstreamer replaced it for single channel
> operations.

I can't believe Thomas didn't reply. He must have been jealous, having
had this desire for a while but holding off for the Right Solution :-)

> Testing Gstreamer with DV and Theora/Vorbis on my laptop with a pipeline I
> can't manage two things: position of the window (from the pipeline) and AV
> Sync, the last one is just nasty. What would be the way to implement this
> correctly from a pipe?

1) DV capture for those of us working on Flumotion gives us near-perfect
sync. To encode into ogg, you'd do like this:

gst-launch-0.8 \
  dv1394src ! dvdec drop-factor=2 name=d \
   d.video ! { queue ! videorate ! ffmpegcolorspace ! theoraenc \
               ! queue } ! { oggmux name=mux ! filesink } \
   d.audio ! { queue ! audiorate ! audioconvert ! rawvorbisenc \
               ! queue } ! mux.

Unfortunately something strange is happenning on my side that's making
this not work. I'll be looking at this. Obviously it works in flumotion.

2) Position of the window -- what does this mean? You want to do an
overlay? videomixer does this, and quite well -- see
flumotion/components/converters/overlay/overlay.py for the pipeline. To
set the position you set object properties on the videomixer sink pads.
The source is the best documentation unfortunately.

> Another question. Maybe some of you know Sony's Anycast station. If I can
> get gstreamer to do my stuff I'm really interested in a project to create
> a Live-Broadcast system from Gstreamer. (Like LiveSupport did for Radio).
> My current implementation consists in a webinterface and SMIL generator
> for a cable text, but a (OSS) tool for Live productions would be quite
> usefull. Saves a lot of commandline heroism.

Neat. Let us know how it goes.

Cheers,
-- 
Andy Wingo
http://wingolog.org/





More information about the gstreamer-devel mailing list