WebRTC M72 Release Notes
WebRTC M72 branch (cut at r25798)
WebRTC M72, currently available in Chrome's beta channel and as native libraries for Android and iOS, contains the three milestones features: Unified Plan SDP, support for getDisplayMedia and improved privacy protection using mDNS (still behind flag), in addition to the numerous enhancements of the getUserMedia and RTCPeerConnection API’s. As with previous releases, we encourage all developers to run versions of Chrome on the Canary, Dev, and Beta channels frequently and quickly report any issues found. Please take a look at this page, for some pointers on how to file a good bug report. The help we have received has been invaluable!
The Chrome release schedule can be found here. Native libraries for Android and iOS are built on a weekly basis and are available on JCenter and CocoaPods; the Changelog is available here.
Unified Plan is the spec-complaint SDP format, it is being rolled out together with the RTCRtpTransceiver APIs that are heavily tied to the standard format. This is a big milestone for cross-browser compatibility, but also a breaking change for applications with “Plan B” assumptions - see PSA and the “Unified Plan” Transition Guide (JavaScript). Experiments making Unified Plan the default in Canary, Dev and Beta channels are ongoing and the plan is to roll this out to 100% in M72 Stable.
Screen Capture API is now available for WebRTC in Chrome. It is possible to request access for acquiring user’s display as a video track without going through extensions based APIs. Current implementation produces the same UI and permissions flow as the extensions for an easy migration. Users are asked for permission in each request as their answer does not persist. Note that extensions-based screen capture APIs are still available and getDisplayMedia() does not have audio-capture support yet.
The resizeMode constrainable property allows control of the resolution-adjustment mechanism for video tracks. If the property is false, getUserMedia() will use only native resolutions without adjustment for the video tracks it returns. If the property is true, cropping and downscaling may be used to satisfy other resolution constraints such as width, height and aspectRatio.
In line with this IETF spec IP host addresses are replaced with generic multicast DNS names for local ICE candidates. This improvement limits the amount of unique information exposed by browsers, while maintaining the ability to establish P2P connection within local networks. This feature is only available behind a flag and can be tested by setting chrome://flags/#enable-webrtc-hide-local-ips-with-mdns.
The mobile aec (AECM) will not produce comfort noise any more, and the high pass filter in the audio processing module has changed interface for toggling on/off. See PSA for details.
Platform | Issue | Description | Component |
Chrome | Remove the old AudioProcessing statistics interface | Audio | |
Chrome | Delete RTPPayloadRegistry | Network>RTP | |
Chrome | Remove audio call duration UMA metric WebRTC.Call.TimeSendingAudioRtpPacketsInSeconds | Audio, Stats |
Type | Issue | Description | Component |
Feature | Potential high render delays with bursty video. | Video | |
Feature | AEC3: Clockdrift detection | Audio | |
Feature | Use codec rate when generating RTCP for audio | Audio | |
Feature | Expose parameters for configuring packet loss rate set in Opus encoder | Audio | |
Feature | fake_network_pipe counts only buffer overflows as loss. | BWE | |
Feature | Add unacknowledged but allocated traffic to bandwidth estimate. | BWE | |
Feature | Adaptive loss-backoff thresholds | BWE | |
Feature | Integrate Per Frame Encryption Interface Into WebRTC | Network | |
Feature | It should be possible to enable the CongestionWindowPushbackController without a field trial | Network | |
Feature | Support VPN adapter type in WebRTC | Network>ICE | |
Feature | Make RTCP interval configurable. | Network>RTP | |
Feature | Add RTCRtpReceiver::getParameters() RTCP and simulcast support | PeerConnection | |
Feature | Enable Video Encryption Using the FrameEncryptorInterface | Video | |
Feature | Enable target bitrate RTCP XR message from field trial | Video | |
Feature | Add VP9 Profile 2 to supported codecs | Video | |
Feature | Don't buffer encoded frames if full superframe drop mode is enabled | Video | |
Feature | Set frame duration per spatial layer | Video | |
Feature | Send Nack with a delay after packets out of order is detected on packet receive | Video | |
Feature | Make WavReader tolerant towards optional Wave chunks | Audio | |
Feature | Add support for RTP two-byte header extensions | Network>RTP | |
Feature | Add PeerConnection option to configure minimum audio jitter buffer delay | Audio | |
Feature | Expose metric for delayed packet outage in getStats | Audio | |
Feature | Add support for the resizeMode MediaStreamTrack constraint | Blink>GetUserMedia | |
Bug | AEC3: Comfort noise is too low | Audio | |
Bug | Usage of the dominant nearend functionality during the initial phase may cause echo | Audio | |
Bug | The adaptive filter in AEC3 looses all information at echo path delay changes | Audio | |
Bug | The custom suppressor behavior in AEC3 during stationary render noise causes echo leakage | Audio | |
Bug | During call startup, AEC3 transparency is lower than later in the call | Blink>Media>Audio | |
Bug | Timeout in neteq_signal_fuzzer | Blink>WebRTC>Audio | |
Bug | The AEC3 echo suppressor is to conservative during saturated echo | Blink>WebRTC>Audio | |
Bug | AEC3: Faster delay detection is needed | Blink>WebRTC>Audio | |
Bug | The custom suppressor behavior in AEC3 during stationary render noise causes echo leakage | Blink>WebRTC>Audio | |
Bug | Better metrics for Unified Plan breakages | Blink>WebRTC>PeerConnection | |
Bug | Add metrics to find out how far PCs come in negotiation before failing | Blink>WebRTC>PeerConnection | |
Bug | RtcStats doesn't report remote data properly with unified plan | Blink>WebRTC>Network | |
Bug | Make ice credentials same for createOffer/createAnswer and pooled port allocator session. | Network>ICE | |
Bug | Race condition between mDNS name registration and cricket::Port::SignalPortComplete | Network>ICE | |
Bug | Hide IP addresses obfuscated by .local names in stats | Network>ICE | |
Bug | Specify single packet max size explicitly when splitting frame into packets | Network>RTP | |
Bug | Support "a=ssrc:... msid:..." line with no stream ID | PeerConnection | |
Bug | Fix FrameEncryptor being deallocated too early. | Audio | |
Bug | AEC3: Avoid fading when render signal is stationary at call init. | Audio | |
Bug | AEC3: Filter performance mismatch between direct path and reverberant paths. | Audio | |
Bug | AEC3: Delay estimator delays the capture signal | Audio | |
Bug | AEC3: Dominant nearend detection can be further utilized for transparency | Audio | |
Bug | The parsing and output of the AEC3 parameter for using dominant nearend is missing | Audio | |
Bug | Parsing of json file specifying the APM behavior fails silently | Audio | |
Bug | Some elements of the AEC3 config struct are not parsed by the json parser | Audio | |
Bug | The AEC3 echo reverb modelling is tailored to unreasonable large rooms | Audio | |
Bug | During call startup, AEC3 transparency is lower than later in the call | Audio | |
Bug | Clear locks from AEC2 and AECM audio processing submodules | Audio | |
Bug | Data Race in channel_send.cc | Audio | |
Bug | RTP header extensions not logged in RTC event log. | Audio, Tools | |
Bug | virtual/webrtc-wpt-unified-plan/external/wpt/webrtc/simplecall-no-ssrcs.https.html failing on chromium.mac/Mac10.13 Tests (dbg) | Blink>WebRTC | |
Bug | AEC3: Avoid ducking when render signal is stationary at call startup | Blink>WebRTC>Audio | |
Bug | sqrt of negative number in aimd_rate_control.cc | BWE | |
Bug | VideoSendStreamImpl::OnBitrateUpdated seems wrong when sent a bitrate of 0 | BWE, Video | |
Bug | Utility to create hkdf | Network | |
Bug | RtpSender And RtpReceiver should not set a FrameEncryptor/FrameDecryptor in a stopped state. | Network | |
Bug | Move CryptoOptions to RTCConfiguration | Network | |
Bug | GetRtpReceiver/SenderCapabilities() return multiple RTX codec entries | PeerConnection | |
Bug | peerconnection_client|server doesn't support field trials. | SampleApps | |
Bug | Can not see "Local Preview" window in video_loopback. Pressing Enter does nothing on Windows. | SampleApps, Video | |
Bug | Add support for RtpEncodingParameters max_framerate. | Video | |
Bug | AEC3: ERLE might not be updated during reverberation | Audio | |
Bug | Prevent SetChannel On Stopped Receiver | PeerConnection | |
Bug | FlexFEC causes retransmit bitrate increase. | Video | |
Bug | Echo cancellation cannot be disabled on Android | Blink>GetUserMedia>Mic, Blink>WebRTC>Audio |
--
---
You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrt...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/e685bb87-62df-4a71-8beb-9c652dcd7795%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/CADxkKiL9CnHp12jFbvQi8peQm_7Jb%2BGOkP48e0YQ5Sqm8%3DV17Q%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/CANDN_yXA1hfoTUmdtHiR%2BXkgYtc60c%2BjimPSaXYS3_sTbioZAw%40mail.gmail.com.