commit | 10880011d9f116a9aff87436de231151e355ac7d | [log] [tgz] |
---|---|---|
author | Stefan Holmer <stefan@webrtc.org> | Wed Feb 03 12:29:59 2016 |
committer | Stefan Holmer <stefan@webrtc.org> | Wed Feb 03 12:30:10 2016 |
tree | 0e1d08f239210c147e47edc0a215fefb0edd8b31 | |
parent | abe095b879ff56bb851aa37ad3746e93500b35bd [diff] |
Support multiple rtx codecs. Adds negotiation of rtx codecs for red and vp9. To keep backwards compatibility with older Chrome versions, this change includes two hacks: 1. Red packets will be retransmitted over the rtx codec associated with vp8 if no rtx codec is associated with red. This is how Chrome does it today and ensures that we still can send red over rtx to older versions. 2. If rtx packets associated with the media codec (vp8/vp9 etc) are received and red has been negotiated, we will assume that the sender incorrectly has packetized red inside the rtx header associated with media. We will therefore restore it with the red payload type instead, which ensures that we can still receive rtx associated with red from old versions. Offering multiple rtx codecs to older versions should not be a problem since old versions themselves only try to negotiate rtx for vp8. R=pbos@webrtc.org TBR=mflodman@webrtc.org BUG=webrtc:4024 TEST=Verified by running apprtc and emulating packet loss between Chrome with and without the patch. Review URL: https://codereview.webrtc.org/1649493004 . Cr-Commit-Position: refs/heads/master@{#11472}
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others. This page is maintained by the Google Chrome team.
See http://www.webrtc.org/native-code/development for instructions on how to get started developing with the native code.