[gst-devel] RTP audio stream to filesink, issue with packet loss
Thorsten Brendt
tbrendt at googlemail.com
Thu Jan 13 13:23:10 CET 2011
On Thu, Jan 13, 2011 at 10:46 AM, Tim-Philipp Müller <t.i.m at zen.co.uk> wrote:
> On Thu, 2011-01-13 at 03:10 +0100, Thorsten Brendt wrote:
>
>> > Tried adding an audiorate element?
>>
>> Do you mean a caps-filter element like this?:
>>
>> 'audio/x-raw-int, width=16, depth=16, rate=8000, endianness=1234,
>> signed=(boolean)true, channels=1'
>
> No, I meant an "audiorate" element, which is part of gst-plugins-base.
>
> Factory Details:
> Long name: Audio rate adjuster
> Class: Filter/Effect/Audio
> Description: Drops/duplicates/adjusts timestamps on audio samples to
> make a perfect stream
Ah, I should've looked at the gstreamer sources instead of searching
for "gstreamer audiorate"... lazy me!
Anyway, this was a great pointer! Just adding audiorate to the
pipeline didn't help. However, I could trace down the issue to the
jitter buffer: I needed to set do-lost=true to ask the jitter buffer
element to send packet-lost events downstream. Now this combination
works just like I expected. For the sake of completeness here's the
pipeline I used:
filesrc location=foobar.pcap ! pcapparse
! "application/x-rtp, payload=0, clock-rate=8000"
! gstrtpjitterbuffer do-lost=true ! rtppcmudepay ! mulawdec
! audiorate ! wavenc ! filesink location=foobar.wav
Tim, thank you very much for your help!
Cheers,
Thorsten
More information about the gstreamer-devel
mailing list