Bug 52264 - gstrtspsrc - multicast missing udp buffer-size setting - no way to set udp duffer-size
Summary: gstrtspsrc - multicast missing udp buffer-size setting - no way to set udp du...
Status: RESOLVED FIXED
Alias: None
Product: GStreamer SDK
Classification: Unclassified
Component: Windows SDK Distribution (show other bugs)
Version: 2012.5
Hardware: x86 (IA32) Windows (All)
: medium critical
Assignee: bugs
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-07-19 11:50 UTC by aha.unsworth
Modified: 2013-05-08 19:06 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description aha.unsworth 2012-07-19 11:50:14 UTC
For receiving video data via RTSP when the video is sent via multicast there is no way to specify the udpsrc buffer-size.

Look at function gst_rtspsrc_stream_configure_mcast in file gstrtspsrc.c, there is a missing call to set udp buffer-size.

It should have the below code:
   if (src->udp_buffer_size != 0)
      g_object_set (G_OBJECT (stream->udpsrc[0]), "buffer-size",
          src->udp_buffer_size, NULL);

This is a problem as you do not get a change to set the udpsrc buffer-size, why? Because gstrtspsrc tries connecting with other options first, i.e. udp unicast, when it gets round to multicast it has already created the udpsrc, then just deletes it and creates a new one for multicast, but does not set the udpsrc buffer-size, and as it has already created the udpsrc and signalled the creation it appears you do not get a signal for udpsrc removed and re-created, so for multicast the udpsrc buffer-size is 0 (zero).

Why is this an issue?

On windows the native network buffer is not large and with video i-frames being huge the buffer is to small and you get i-frame corruption, it looks terrible, and there is no (easy) way to set the udpsrc buffer-size.

A lot of video sources are multicast so this is a bit of an issue, but at least the fix is simple (provided above).

Regards,

Aha Unsworth
Comment 1 Sebastian Dröge (slomo) 2013-02-19 12:55:41 UTC
Thanks, could you provide a patch for this problem?
Comment 2 Thiago Santos 2013-05-08 19:06:33 UTC
Pushed your fix. Should be available in the next release.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.