GNOME Bugzilla – Bug 750332
rtpsession: Add support for reduced size rtcp
Last modified: 2015-06-05 14:54:12 UTC
Created attachment 304484 [details] [review] rtpsession: Add support for reduced size rtcp Attached patch adds support for reduced size RTCP packages
Review of attachment 304484 [details] [review]: I don't think this is complete. I remember seeing code in rtpsession or rtpsource that assumed that RTCP packets start with SR/RR. Also you probably want to change the commit message to say "Add support for *receiving* reduced size RTCP" :) However adding support for sending it is also trivial, just add a property for that and then do some more is_early && do_reduced_size checks during RTCP generation. You can make all early RTCP packets reduced size.
Let't change the commit message by now :)
Created attachment 304499 [details] [review] rtpsession: Add support for receiving reduced size rtcp
commit f8f23bbf5da08fda939ec75d2cfe455134066415 Author: Jose Antonio Santos Cadenas <santoscadenas@gmail.com> Date: Wed Jun 3 13:14:44 2015 +0200 rtpsession: Add support for receiving reduced size rtcp See RFC 5506 https://bugzilla.gnome.org/show_bug.cgi?id=750332
Now we only have to add support for actually sending reduced size RTCP. Are you looking into this? Otherwise I'll do in a bit, it's relatively simple.
No, I just wanted to allow receiving reduced packets.
You should report a bug to whatever is sending you reduced size RTCP without negotiating this first.
In fact RFC says that is not mandatory no negotiate, but just to notify in SDP. Nevertheless, the bug has been reported because it was not notified. My guess it that this situation will become common with more clients, so its better to allow reception of reduced RTCP even if it is not notified.
IIRC the RFC says to make sure that the other side can actually receive reduced size RTCP, and even implement heuristics to detect if some middle box in between drops the packets. Whatever sent those packets probably did any of this.
Probably not, because reduced size rtcp didn't stop even when they were not processed.
Which software was that?
Chrome 44
I would blame the JS to not have implemented re-negoatiation.
The offer generated by chrome does not seem to have required attribute a=rtcp-rsize as defined here: https://tools.ietf.org/html/rfc5506#section-5