[Bug 719938] rtpbin: allow dynamic RTP/RTCP encoders and decoders
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Thu Dec 5 16:42:49 PST 2013
https://bugzilla.gnome.org/show_bug.cgi?id=719938
GStreamer | gst-plugins-good | git
Olivier Crete (Tester) <olivier.crete> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #263627|none |needs-work
status| |
--- Comment #2 from Olivier Crete (Tester) <olivier.crete at ocrete.ca> 2013-12-06 00:42:48 UTC ---
Review of attachment 263627:
--> (https://bugzilla.gnome.org/review?bug=719938&attachment=263627)
::: gst/rtpmanager/gstrtpbin.c
@@ +2523,3 @@
+ g_value_set_object (&ret, NULL);
+
+ g_signal_emitv (args, gst_rtp_bin_signals[signal], 0, &ret);
Why is this not just g_signal_emit (session->bin, gst_rtp_bin_signals[signal],
session->id, &ret); ?
@@ +2547,3 @@
+ } else {
+ GST_DEBUG_OBJECT (session->bin, "adding requested encoder %p", encoder);
+ gst_bin_add (GST_BIN_CAST (session->bin), encoder);
This should check the return value.
@@ +2862,3 @@
+ GstPadTemplate *etempl;
+
+ session->rtp_dec_queue = gst_element_factory_make ("queue", NULL);
Why did you add a queue?
@@ +2870,3 @@
+ GST_DEBUG_OBJECT (rtpbin, "linking RTP decoder");
+ decsink = gst_element_get_static_pad (decoder, "rtp_sink");
+ gst_pad_link_full (qsrc, decsink, GST_PAD_LINK_CHECK_NOTHING);
The decoder is application provided, this should probably do full checking, and
check the return value.
@@ +2876,3 @@
+ decsrc = gst_element_get_static_pad (decoder, "rtp_src");
+ gst_pad_link_full (decsrc, session->recv_rtp_sink,
+ GST_PAD_LINK_CHECK_NOTHING);
Same here.
@@ +2885,3 @@
+ templ = gst_pad_template_new (GST_PAD_TEMPLATE_NAME_TEMPLATE (templ),
+ GST_PAD_TEMPLATE_DIRECTION (templ), GST_PAD_REQUEST,
+ GST_PAD_TEMPLATE_CAPS (etempl));
Creating a fake template looks like a hack.
@@ +3151,3 @@
+ GstPadTemplate *etempl;
+
+ session->rtp_enc_queue = gst_element_factory_make ("queue", NULL);
Again why the queue ?
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list