[gst-devel] Two pipelines playing at once

René Stadler mail at renestadler.de
Sun Mar 16 15:05:23 CET 2008

Sam Thursfield wrote:
> Hi
> I'm trying to implement replaygain using rganalysis that can run in
> the background while a song is playing. Basically, if there is no rg
> data about a song, I start the following two pipelines:
> playbin sink=<rgvolume ! directsoundsink or gconfsink>
> playbin sink=<rganalysis ! fakesink>
> The two don't play well together however. Even if I start the second
> one after the first playbin posts going into the playing state, no
> audio comes out until the rganalysis pipeline has finished. Leave the
> rganalysis pipeline in paused and the first pipeline plays fine.
> I would guess the problem is due to the second thread running as fast
> as it can stream and leaving no CPU for the first one to play.
> However, I don't know of a way to set priorities for pipelines or
> anything of the sort. Any help on how to solve this would be much
> appriecated.
> Thank
> Sam

I cannot reproduce this, though I'm just having access to a dual core 
machine right now.  What hardware and OS are you trying this with?  In 
theory it should work just fine, a process consuming 100% CPU should not 
disrupt audio playback even with just one core/CPU.

Could you try running an rganalysis in another process to ensure that 
it's not a problem with your system?  If that works without disrupting 
playback it might be a problem with gstreamer or the application...

   René Stadler

More information about the gstreamer-devel mailing list