Disabling synchronization in udpsink for reverse playback

Muzzu Daniela Daniela.Muzzu at selexelsag.com
Fri Sep 21 05:37:17 PDT 2012


I asked the question because I'm trying to enable reverse playback in gst-rtsp, and with sync=TRUE it happens that udpsink waits for almost a second to synchronize each new chunk, while the other packets inside the GOP are sent immediately because they are late (hence chunks are sent in bursts). On client side, this causes an annoying delay in first frame rendering (only video, no audio in the stream).
On the contrary, with sync=FALSE everything is fine (besides, as dv said, a significant increase of CPU usage ;-) ).

But probably something is wrong in the pipeline before udpsink... I'll furtherly investigate.
Regards,
Daniela

-----Original Message-----
From: gstreamer-devel-bounces+daniela.muzzu=selexelsag.com at lists.freedesktop.org [mailto:gstreamer-devel-bounces+daniela.muzzu=selexelsag.com at lists.freedesktop.org] On Behalf Of Wim Taymans
Sent: Friday, September 21, 2012 12:08 PM
To: gstreamer-devel at lists.freedesktop.org
Subject: Re: Disabling synchronization in udpsink for reverse playback

On 09/21/2012 11:39 AM, dv wrote:
> On 2012-09-21 11:36, Wim Taymans wrote:
>> On 09/21/2012 10:45 AM, Muzzu Daniela wrote:
>>>
>>> Hi,
>>>
>>> I have a question related to the following bug (marked as INVALID), 
>>> where it was proposed to disable sync in udpsink for live streams:
>>>
>>> https://bugzilla.gnome.org/show_bug.cgi?id=665435
>>>
>>> It has been replied that sync should be set to TRUE in all cases.
>>>
>>> But, what about reverse playback? The server has to send chunks in 
>>> reverse order, with a non-regular increase of timestamps. Does it 
>>> make sense to set sync property to FALSE in this case?
>>>
>> No, the running-time (what udpsink synchronizes to) increases 
>> monotonically in all cases. There is no need to disable sync on 
>> udpsink in any case.
>>
>> Wim
>>>
>>> Thanks,
>>>
>>> Daniela
>>>
>>>
>>>
>>> _______________________________________________
>>> 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
>
> I'm curious - what is the benefit of leaving sync on with udpsink? The 
> only reason I can think of is to prevent 100% CPU usage on the sender 
> side and flooding the network, but if there is something that holds 
> the sender back (for example, an alsasrc), then what other reason is 
> there?
If you have multiple sources, alsasrc and v4l2src for example, the sync on the udpsink would make sure that packets with the same running-time are placed on the network at the same time. This makes it easier for a client to do the initial sync on them and requires less buffering in the client.

Wim

> _______________________________________________
> 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