GNOME Bugzilla – Bug 740752
add retransmission support
Last modified: 2014-12-16 15:48:05 UTC
based off RFC4588
Created attachment 291548 [details] [review] media: implement ssrc-multiplexed retransmission support
Created attachment 291884 [details] [review] media: implement ssrc-multiplexed retransmission support Fix a refcounting issue.
Created attachment 291885 [details] [review] examples: add a retransmission example
Review of attachment 291884 [details] [review]: Looks good, please push after the following few changes :) ::: gst/rtsp-server/rtsp-media.c @@ +1272,3 @@ + guint pt = gst_rtsp_stream_get_pt (stream); + + ret = g_list_append (ret, GUINT_TO_POINTER (pt)); prepend here, and then reverse the list in the end. That's faster @@ +1412,3 @@ + + if (rtx_pt == 0) { + /* FIXME: ran out of space of dynamic payload types */ GST_WARNING_OBJECT() maybe ::: gst/rtsp-server/rtsp-stream.c @@ +1369,3 @@ + if (stream->priv->rtxsend) { + guint pt = gst_rtsp_stream_get_pt (stream); + gchar *pt_s = g_strdup_printf ("%d", pt); This string is leaked @@ +1753,3 @@ + + pt = gst_rtsp_stream_get_pt (stream); + pt_s = g_strdup_printf ("%u", pt); And this
> + ret = g_list_append (ret, GUINT_TO_POINTER (pt)); > > prepend here, and then reverse the list in the end. That's faster That's not a good pattern, better just use a GQueue on the stack then and return queue.head when done :) </bikeshed>
commit fa4d8db7ea9079e3a92cdc4fcccc284e22c0df63 Author: Matthew Waters <matthew@centricular.com> Date: Mon Dec 1 23:42:34 2014 +1100 examples: add a retransmisison example implementing RFC4588 Currently only SSRC-multiplexed rtx streams are supported commit a44b564f59c738f9f115df7e7995935f77d29d4b Author: Sebastian Dröge <sebastian@centricular.com> Date: Tue Dec 16 16:46:15 2014 +0100 rtsp-stream: Fix some minor memory leaks commit 8ae35665911424eea52ba4a7444eb9d1dbff1d0c Author: Sebastian Dröge <sebastian@centricular.com> Date: Tue Dec 16 16:46:06 2014 +0100 rtsp-media: Some minor cleanup commit 06bfc0697b8fa8d7272124868706cd896b423257 Author: Sebastian Dröge <sebastian@centricular.com> Date: Tue Dec 16 16:42:13 2014 +0100 rtsp-stream: Fix compiler warnings rtsp-stream.c:1351:3: error: non-void function 'gst_rtsp_stream_get_retransmission_time' should return a value [-Wreturn-type] g_return_if_fail (GST_IS_RTSP_STREAM (stream)); ^ rtsp-stream.c:1384:3: error: non-void function 'gst_rtsp_stream_get_retransmission_pt' should return a value [-Wreturn-type] g_return_if_fail (GST_IS_RTSP_STREAM (stream)); ^ commit 4f40781fff4f74ca80f202b3b6e435ff9a86ee1e Author: Matthew Waters <matthew@centricular.com> Date: Thu Nov 27 01:12:36 2014 +1100 media: implement ssrc-multiplexed retransmission support based off RFC 4588 and the server-rtpaux example in -good