Media/WebRTC/ReleaseNotes/45
Contents
Firefox 45 WebRTC/WebAudio Release Notes:
Full listing of all WebRTC/WebAudio bugs marked as Fixed in Firefox 45:
WebRTC bugs: Bugzilla search for WebRTC bugs marked Fixed in Firefox 45
WebAudio bugs: Bugzilla search for WebAudio bugs marked Fixed in Firefox 45
Noteworthy Changes
IMPORTANT: New Delay-Agnostic AEC
[WebRTC] We've replaced the AEC we were using with the new Delay-Agnostic AEC. It is currently enabled by a pref. If we hear of regressions, we may pref off before Fx45 goes to Release. If you hear echo, please let Maire (mreavy on irc) know as soon as you can. (See bug 1226347.)
Other noteworthy changes:
- [WebRTC] Updated webrtc.org code to branch 43. (See bug 1198458).
- [WebRTC] Making onnegotiationneeded asynchronous can break pages that don't expect this. (See bug 1175609.)
- [Web Audio] bug 1222405 introduced a regression. We will uplifting a fix for this regression before Fx45 goes to Beta. Follow bug 1240054 for status.
- [Web Audio] Input gain to a StereoPannerNode is no longer ignored when pan is 0. (See bug 1214239)
- [Web Audio] PeriodicWave now supports a minimum of 8192 elements. (See bug 1171436.)
- Additional Web Audio Perf improvements.
Bug tickets fixed in Firefox 45 (full list):
Core (General) WebRTC:
bug 1175609: onnegotiationneeded fires synchronously
bug 1190574: Test harness functions like test.chain.replace aren't asserting inputs, hiding bad tests.
bug 1198458: Update WebRTC code to webrtc.org stable branch 43
bug 1215769: TrackIDs of tracks in MediaStreams captured from a media element change when looping
bug 1219480: Replace PRLogModuleInfo usage with LazyLogModule in dom/media
bug 1219566: Add aarch64 macro to webrtc/trunk/build/build_config.h
bug 1220679: JSAPI handling in nsContentPermissionProxy::Allow is busted
bug 1227481: [Static Analysis][Result of operation is garbage or undefined] Function OpenCoreDebugFiles from media/webrtc/trunk/webrtc/modules/audio_processing/aec/aec_core.c
bug 1227708: Differentiate ICE_SUCCESS_RATE telemetry for loop vs webrtc
bug 1227781: Crash creating RTCPeerConnection
bug 1231106: Check PlatformThreadId is non-zero before returning on BSDs as well (for --enable-debug)
Audio/Video:
bug 800564: In libyuv, MJPGToI420() throws away the return code in many cases
bug 911450: sndio webrtc audio backend
bug 1193075: Allow setting & changing the viewport on gUM tab sharing.
bug 1202087: WebRTC screen capture partially broken on windows 10
bug 1207546: Integrate WebRTC with audio channels
bug 1211656: GUM Constraints for screen sharing don't affect stream resolution
bug 1218799: MediaEngine::Shutdown() should not be called on the main thread
bug 1219711: Disabling/muting Media tracks no longer works
bug 1226146: Fix sndio backend after webrtc 43 landing in 1198458
bug 1226347: Cherry-pick Delay-Agnostic AEC from later upstream versions of webrtc
bug 1227407: Correct a logic error in camera code that could be causing a crash
bug 1228788: mozGetUserMedia — FATAL ERROR: AsyncShutdown timeout (Media shutdown: blocking on media thread)
bug 1229413: Remove MediaManager's xpcom-will-shutdown observer
bug 1229926: Attempting to start a "browser" (aka tab) share with fake streams gives "OverconstrainedError: Constraints could be not satisfied., line 0"
Networking:
bug 1006809: Bring triggered check behavior up-to-date with final ICE RFC
bug 1125947: Fix -Wunreachable-code warning in netwerk/sctp/datachannel/DataChannel.cpp
bug 1192403: ice_unittest reports error 13 for TCP sockets
bug 1208278: ICE TCP connections time out after 1.6s
bug 1219557: Only pair addresses from 1918 ranges with others from the same range
bug 1220441: ice unit tests TestStun[Tcp]ServerTrickle are at least unreliable
Signaling:
bug 1192813: WebRTC SDP sets 0.0.0.0 in c line with multiple NICs
bug 1220043: Building WebrtcGlobalInformation.cpp causes C1001 error on VS2015 x64
bug 1221837: sdp without rtpmap for static codec IDs => "Failed to negotiate codec details for all codecs" error.
bug 1223160: Create a SDP file reader for fuzzing
bug 1231196: signaling_unittests hits an assertion in PeerConnectionImpl.cpp
WebAudio:
bug 930257: AudioBufferSourceNode and OscillatorNode don't dispatch ended event when OfflineAudioContext completes soon after source end
bug 1094925: Web Audio ChannelMergerNode ignores inputs from GainNodes with zero gain
bug 1171436: Support at least 8192 elements for PeriodicWave
bug 1214239: [Web Audio] StereoPannerNode ignores input gain when pan is 0
bug 1217625: suspend inactive AudioNodeStreams
bug 1220037: corrupted convolution from out-of-position nyquist DFT coefficient
bug 1220041: some optimizations for copying libav FFT data
bug 1220042: make AlignedTArray base class inheritance private
bug 1221830: double maximum realtime convolver stage size
bug 1221831: use initial input buffer offset to control when convolver stages perform their FFT
bug 1221833: remove direct convolution stage; instead use largest initial FFT stage possible
bug 1221836: return output pointer from FFTConvolver::process() to save a buffer copy
bug 1221855: Crash [@ mozilla::dom::ScriptProcessorNodeEngine::SizeOfExcludingThis const ]
bug 1222202: "ASSERTION: QueryInterface needed" with web audio memory report
bug 1222405: Build band limited tables lazily in PeriodicWave
bug 1223520: "Assertion failure: mOutputBuffer[halfSize].i == 0" with NaN buffer
bug 1224022: Intermittent test_WebAudioMemoryReporting.html | Non-zero usage for explicit/webaudio/audio-node/ScriptProcessorNode/dom-nodes
bug 1224102: reduce the size of the final FFT convolution stage if possible
bug 1225003: Crash [@ mozilla::WebAudioDecodeJob::SizeOfExcludingThis]
bug 1227411:Add some logging of Web Audio API use
bug 1230692: "Assertion failure: !Failed(), at ErrorResult.h:103" - mozilla::WebAudioDecodeJob::OnFailure
Audio/Video:Cubeb :
bug 1225703: Update in-tree libcubeb
Audio/Video:GMP (Gecko Media Plugin):
bug 1220326: [EME] Wipe stack after generating machine ID on MacOSX
bug 1224442: Armor GMP Parent against late Shmem messages from the child
bug 1228215: [EME] Segregate GMP storage by GMP
Audio/Video:MediaStreamGraph (MSG):
bug 1214018: [EME] Generate machine ID on MacOSX
bug 1216417: Resuming a paused media element playing a stream does not play audio
bug 1218593: Dialer touch tones sounds intermittently stop playing audio in Dialer.
bug 1223655: Intermittent "###!!! ASSERTION: Track not found" in MediaEngineDefaultAudioSource::NotifyPull
bug 1223696: The MediaElement will not be played after removeTrack() and addTrack() back.
bug 1228559: Don't allow media stream cross different type MSG
Audio/Video:Media Recording:
bug 1154213: Same timestamps in audio recorded with media recorder api (in audio+video mode)(with vorbis)
bug 1225327: Crash [@ mozilla::dom::MediaRecorder::Session::SizeOfExcludingThis]