leaky queue: up or down? (choppy sound) [SOLVED?]

Antoine Martin antoine at nagafix.co.uk
Mon Apr 18 12:41:52 PDT 2011


On 04/18/2011 08:53 PM, Stefan Kost wrote:
> hi,
> 
> On 15.04.2011 15:59, Antoine Martin wrote:
>> Hi,
>>
>> I have some tcp sound pipelines like these:
>> * sender:
>> SOMESRC ! vorbisenc ! gdppay ! queue leaky=downstream ! tcpserverssink
>> host=192.168.42.222 port=20222
>>
>> * receiver:
>> tcpclientsrc host=192.168.123.222 port=20222 ! queue leaky=upstream !
>> gdpdepay ! vorbisdec  ! pulsesink
>>
>> I had added the leaky queues because the clients may take a few seconds
>> before connecting and I want them to get the sound without much of a
>> delay (1 second is ok), dropping what they missed before connecting if
>> needed.
>>
>> I must be misunderstanding the way "queue" leaks because when it does I
>> get choppy sound that doesn't go away until the client re-connects.
>> I tried up/down stream without much luck. Or maybe it is not in the
>> right location in the pipeline?
> 
> The leaky mode is dropping buffers when the queue is full (either from
> the top of the queue or from the bottom). That is why you get choppy
> audio. I can understand how the queue would help in this case to
> mitigate the client connection latencies.
I thought that by using "leaky=downstream" before the tcpserversink I
could get a clean flow once the client starts pumping the data out.
But that's not the case.

I could be wrong since the choppy sound didn't always occur in my tests
- I could just be (un)lucky, but I think I have solved it by adding
another queue (non-leaky this time) after the leaky one:

SRC ! vorbisenc ! gdppay ! queue leaky=downstream ! queue ! tcpserverssink

Maybe this can help someone else.

Thanks
Antoine


> 
> Stefan
>> Thanks
>> Antoine
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list