After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 465146 - Add more complete negotiation to gstrtpbasepayload
Add more complete negotiation to gstrtpbasepayload
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal enhancement
: 0.10.9
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2007-08-09 18:49 UTC by Olivier Crête
Modified: 2008-05-02 12:39 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add proper caps nego to the base payloader class (2.23 KB, patch)
2007-08-09 18:50 UTC, Olivier Crête
none Details | Review
Add _getcaps function to rtpilbcpay for upstream nego (1.94 KB, patch)
2007-08-09 18:51 UTC, Olivier Crête
none Details | Review
Much better _getcaps function for rtpilbcpay (2.06 KB, patch)
2007-08-09 23:34 UTC, Olivier Crête
none Details | Review
Improved patch to add proper get_caps function to base rtp payloader (2.26 KB, patch)
2007-08-10 16:37 UTC, Olivier Crête
rejected Details | Review
Even more improved patch for caps nego for rtpilbcpay (2.02 KB, patch)
2007-08-10 16:38 UTC, Olivier Crête
none Details | Review
Add getcaps vfunc to basertppay (3.14 KB, patch)
2007-08-13 16:52 UTC, Olivier Crête
committed Details | Review
rtpilbcpay patch that uses the vfunc is the base class (2.06 KB, patch)
2007-08-13 16:53 UTC, Olivier Crête
committed Details | Review
caps based configuration for speexenc/rtpspeexpay (4.93 KB, patch)
2007-08-13 21:10 UTC, Olivier Crête
none Details | Review
slighthly fixed patch for speexenc (speexpay patch included unchanged) (4.96 KB, patch)
2007-10-05 21:38 UTC, Olivier Crête
committed Details | Review

Description Olivier Crête 2007-08-09 18:49:38 UTC
I'm attaching a patch that improves the _set_outcaps() function of the base rtp payloader class to be able to perform negotiation of the type "src ! pay ! application/x-rtp, payload=100 ! sink". I'm also attaching a patch against gstrtpilbcpay in good to do the same, which also implement a getcaps() function.
Comment 1 Olivier Crête 2007-08-09 18:50:33 UTC
Created attachment 93388 [details] [review]
Add proper caps nego to the base payloader class
Comment 2 Olivier Crête 2007-08-09 18:51:11 UTC
Created attachment 93389 [details] [review]
Add _getcaps function to rtpilbcpay for upstream nego
Comment 3 Olivier Crête 2007-08-09 23:34:49 UTC
Created attachment 93405 [details] [review]
Much better _getcaps function for rtpilbcpay
Comment 4 Olivier Crête 2007-08-10 16:37:59 UTC
Created attachment 93447 [details] [review]
Improved patch to add proper get_caps function to base rtp payloader
Comment 5 Olivier Crête 2007-08-10 16:38:29 UTC
Created attachment 93448 [details] [review]
Even more improved patch for caps nego for rtpilbcpay
Comment 6 Wim Taymans 2007-08-12 16:31:28 UTC
Commited something more clever to -base:

        * gst-libs/gst/rtp/gstbasertppayload.c:
        (gst_basertppayload_set_outcaps):
        * gst-libs/gst/rtp/gstbasertppayload.h:
        Improve caps negotiation so that downstream elements can confiure
        certain RTP properties by fixing them on the caps. See #465146.
        Add docs.

Please see if it also works.
Comment 7 Olivier Crête 2007-08-13 16:52:43 UTC
Created attachment 93581 [details] [review]
Add getcaps vfunc to basertppay

The first part works, as we discussed, here is a patch that add a getcaps vfunc to the basertppayload class.
Comment 8 Olivier Crête 2007-08-13 16:53:16 UTC
Created attachment 93582 [details] [review]
rtpilbcpay patch that uses the vfunc is the base class
Comment 9 Olivier Crête 2007-08-13 21:10:51 UTC
Created attachment 93601 [details] [review]
caps based configuration for speexenc/rtpspeexpay

I've done the same thing with speex so we want have a testable PC implementation of the whole concept (and it works with farsight).
Comment 10 Olivier Crête 2007-10-05 21:38:33 UTC
Created attachment 96731 [details] [review]
slighthly fixed patch for speexenc (speexpay patch included unchanged)

Oops, seems like ANY codecs can be marked with a simple flags... lets just ignore them
Comment 11 Olivier Crête 2008-04-15 15:30:21 UTC
Can we get the speex/ilbc patches applied too? Speex particularly since its the best free voice coder.
Comment 12 Wim Taymans 2008-05-02 12:24:56 UTC
        Patch by: Olivier Crete <tester at tester dot ca>

        * gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_class_init),
        (gst_rtpilbcpay_sink_setcaps), (gst_rtpilbcpay_sink_getcaps):
        Add negotiation for the ILBC mode. See #465146.
Comment 13 Wim Taymans 2008-05-02 12:34:25 UTC
        Patch by: Olivier Crete <tester at tester dot ca>

        * gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_class_init),
        (gst_rtp_speex_pay_getcaps):
        Add negotiation for the speec channels and rate. See #465146.
Comment 14 Wim Taymans 2008-05-02 12:39:20 UTC
        Patch by: Olivier Crete <tester at tester dot ca>

        * ext/speex/gstspeexenc.c: (gst_speex_enc_sink_getcaps),
        (gst_speex_enc_init), (gst_speex_enc_chain):
        Add negotiation for the speex channels and rate. Fixes #465146.