Media/WebRTC/ReleaseNotes/41

From MozillaWiki
Jump to: navigation, search

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