mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-22 17:51:16 +00:00
ef8dfd7873
Move RB info from receiver reports into the internal source that the RR are about, and deprecate (but retain) the old mapping where each external source has only a single RB entry in the rtp statistics. The old method is broken if a remote peer uses a single ssrc to send receiver reports for more than one of our internal sources, other as multiple RB in a single packet, or alternate RB in different reports. In each case only the most recent entry was kept, overwriting data for other internal sources. In multicast scenarios each internal source may receive multiple receiver reports from different peers. To support that, all received RR's are now stored into a hash table indexed by the sender's SSRC, and all RRs are placed into an array when generating statistics, so that the information from all peers is retrievable. The current deficient behaviour (adding RB info into non-internal RTPSources) is deprecated but kept in order to be backward compatible, and retained that way in the generated statistics structure. Refs [1] https://tools.ietf.org/html/rfc3550#section-6.4.1 Based on a patch by Fede Claramonte <fclaramonte@twilio.com> Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7424> |
||
---|---|---|
.. | ||
check | ||
examples | ||
files | ||
interactive | ||
meson.build |