Media/WebRTC/ReleaseNotes/41
Contents
Firefox 41 WebRTC/WebAudio Release Notes:
Full listing of all WebRTC/WebAudio bugs marked as Fixed in Firefox 41:
WebRTC bugs: Bugzilla search for WebRTC bugs marked Fixed in Firefox 41
WebAudio bugs: Bugzilla search for WebAudio bugs marked Fixed in Firefox 41
Noteworthy Changes:
- Canvas capture stream (pref'd off by default in Fx41, plan to pref on by default in Fx42) - See bug 1032848 - Please flip the pref, help us test this and report bugs!
- ICE TCP support - pref'd off by default - See bug 891551 - Please flip the pref, help us test this and report bugs!
- Min/max bitrates are now dependent on resolution - See bug 1159489
- Disabling the default STUN server - See bug 1143827
- Improvements when running in multiprocess (e10s) mode - See bug 1109338
- Web Audio performance improvements
Bug tickets fixed in Firefox 41:
Core (General) WebRTC:
bug 1168075: [bluetooth2] Build break on flame-kk after enabling bluetooth api v2.
bug 1157995: Leak with expando on navigator.mediaDevices - uplifted to 39
bug 1161615: gUM mochitest hang after catching errors
bug 1157057: Rewrite the handling of the nsITimer object in nrappkitTimerCallback
bug 1160745: Fix webrtc tests building on OpenBSD (missing -lsndio)
bug 1162026: convert WrapRunnable* and supporting machinery to use variadic templates
bug 1166659: Add mochitest tags for webrtc and webaudio tests
bug 1132318: refine resolution/framerate selection - uplifted to 39
bug 1159489: Make WebRTC video min/max bitrates dynamic and dependent on resolution and framerate
bug 1032848: Add mediastream = canvas.CaptureStream() or equivalent
bug 1076906: Fix license headers for some WebRTC files, and provide LICENSE file
bug 1087629: Add mochitest for handling ICE failure cases
bug 1173255: Cleanup MediaManager e10s code (avoids opening it on clear cookies) in prep for deviceId constraint
bug 1135372: Intermittent browser_devices_get_user_media_in_frame.js | application crashed [@ mozilla::MediaManager::Observe(nsISupports *,char const *,wchar_t const *)] after "Assertion failure: device, at dom\media\MediaManager.cpp:2058" - uplifted to 39
bug 1171143: Fix capture build for iOS
bug 881742: crash in _VEC_memcpy | webrtc::Plane::Copy(int, int, unsigned char const*)
bug 1163859: WebRTC logging module triggering content thread warning on pref write operation
Audio/Video:
bug 1163239: GMP Crash at GMPParent::ChildTerminated() on OSX on FF38 on shutdown after using openh264.
bug 1164061: WebRTC Move TMMBR use behind pref - uplifted to 40
bug 1165423: [e10s] WebRTC DTLS handshake problems with e10s enabled
bug 1162720: enumerateDevices crashes on Android (webcamtoy.com crashes) - uplifted to 39
bug 1169665: enumerateDevices should never fail with NotFoundError
bug 1164463: MediaManager shutdown is non-deterministic and doesn't always finish
bug 1167306: Several webrtc prefs are broken - uplifted to 40
bug 1171499: [GMP] EncodingComplete can happen while GMPVideoEncoderChild is still in use.
bug 1166183: Back out the direct listener removal landed by mistake in bug 1141781 - uplifted to 38.0.5
bug 1166140: gUM test framework tests MediaStream::CurrentTime == 0 before HTMLMediaElement::Play()
bug 1169125: Occasional green frames in remote video when streaming a CanvasCaptureMediaStream over WebRTC
bug 1054706: WebRTC mochitests don't test that video actually flows
bug 1158372: Cleanup leaks webrtc::videocapturemodule::DeviceInfoDS::CreateCapabilityMap()
Also, fixed crashes when sending certain MediaStreams sourced from a <video> element via captureStream()
Networking:
bug 1170059: Fix -Wunreachable-code clang warnings in webrtc/signaling
bug 1169498: Trivial comment fix for call to NrIceCtx::Create()
bug 1087551: addIceCandidate silently fails if called at the wrong time
bug 1109338: WebRTC e10s/IPC traffic needs to avoid MainThread and use PBackground instead
bug 1035468: We need a NAT simulator that can be used for testing ICE
bug 891551: WebRTC: Add support for TCP ICE candidates -- pref'd off
bug 1143827: Remove Mozilla's default STUN server
bug 1167274: Some failures in PeerConnectionMedia::OnProxyAvailable will prevent ICE gathering from starting
Signaling:
bug 1096795: WebRTC SDP does not include required a=rtcp:<port> - uplifted to 40
bug 1155965: crash in mozilla::JsepSessionImpl::ValidateLocalDescription(mozilla::Sdp const&)
bug 1160280: JsepSessionImpl should add ssrc attributes for recvonly m-sections - uplifted to 40
bug 1164197: Logging of uninitialized string buffer in sdp_parse_attr_rtr
bug 1164575: SetLocalDescription should log the SDP like SetRemoteDescription
bug 1164582: We need better error reporting for malformed msids
bug 1152185: media/webrtc/signaling/test/signaling_unittests.cpp fails to build with musl libc (no <sys/queue.h>)
bug 1163505: PtrVector should disallow copies to prevent premature&double deletions
bug 952145: JSEP support for state rollbacks
bug 1169338: Re-enable some webrtc mochitests on B2G emulator
bug 1170683: rtcp port numbers are missing and show in renegotiations
bug 818640: WebRTC should accept dynamic payload values < 96
bug 1165520: JsepSessionImpl adds rtcp-fb to answer that was not present in the offer
bug 1171120: Make mtransport and signalling build for iOS
bug 1165129: JsepSessionImpl will not handle JS reordering the codecs in a local answer, once we start emitting multiple
bug 1167922: Handle broken entries in media.peerconnection.default_iceservers more gracefully
bug 1142757: media/webrtc/signaling/test/mediaconduit_unittests.cpp |AudioSendAndReceive::GenerateAndReadSamples| has several leaks
WebAudio
bug 1161946: MainThreadMediaStreamListener should be notified just when the stream is finished
bug 1163585: Small improvement of the use of nsTArray in MSG::UpdateCurrentTimeForStreams
bug 1163597: MediaStreamGraphImpl::RecomputeBlockingAt should not loop 3 times the mStreams array.
bug 1163958: Reduce the allocation in MediaStreamGraph
bug 1165735: Make ThreadSharedFloatArrayBufferList::mContents infallible
bug 1169356: Intermittent test_mediaElementAudioSourceNodeCrossOrigin.html | Buffer is not silent as expected, for http://example.org:80/tests/dom/media/webaudio/test/corsServer.sjs (cors: anonymous) - got false, expected true
bug 1175786: Rewrite test_mediaElementAudioSourceNodeCrossOrigin.html to be less machine-loading dependent
bug 1127188: Web Audio stuff on reloaded page is keeping the page alive due to ICC
bug 974089: Web Audio CPU usage climbs during long waits for garbage collection
bug 1118372: [Web Audio API] WaveShaper input signal is forced normalization to range -1 - +1
bug 1002513: WebAudio linear distance model not clamping