Media/WebRTC/ReleaseNotes/42
Contents
Firefox 42 WebRTC/WebAudio Release Notes:
Full listing of all WebRTC/WebAudio bugs marked as Fixed in Firefox 42:
WebRTC bugs: Bugzilla search for WebRTC bugs marked Fixed in Firefox 42
WebAudio bugs: Bugzilla search for WebAudio bugs marked Fixed in Firefox 42
Noteworthy Changes:
- IPV6 support in WebRTC
- Multiple BUNDLE groups
- Tab audio capture has landed pref'd off. Plan is to extend it to screen capture and pref on screen capture in Fx44.
- Improved ability for applications to monitor and control what devices are used in getUserMedia (DeviceId constraints and enhanced support)
- Prefs for controlling ICE candidate generation and IP exposure
- Hooks for extensions to allow/deny createOffer/Answer
- Web Audio performance improvements
Bug tickets fixed in Firefox 42:
Core (General) WebRTC:
bug 980609: Tab-to-tab call while VPNed cause failed assertion: (ctx->state == NR_TURN_CLIENT_STATE_INITTED || ctx->state == NR_TURN_CLIENT_STATE_CONNECTED)
bug 1037389: Add support for deviceId in gUM constraints
bug 1175621: Use moves inside WrapRunnable* functions
bug 1176363: Crash in SkPixelRef::lockPixels()
bug 1176987: Move steeplechase_long testcases to a new folder under mochitests.
bug 1181262: --disable-webrtc builds are busted with "RTCCertificate.h:23:10: fatal error: 'mtransport/dtlsidentity.h' file not found"
bug 1181883: Add serializer on MediaDeviceInfo
bug 1182626: Steeplechase_long tests need to be enhanced to run for 3 hours
bug 1184426: Unprefix RTCIceCandidatePairStats.priority (formerly mozPriority)
bug 1186142: TypeError on PeerConnection.getStats() with no arguments.
bug 1186209: enumerateDevices doesn't return if no devices are found
bug 1188970: WebRTC log file is not created on Windows when the TMP env var is set and the default log file name is used
bug 1189060: Add hooks to allow an extension to hook into createOffer() and createAnswer()
bug 1189171: New startup terminalspew: "WARNING: the property getUserMedia.sharingMenuMicrophoneApplication already exists : file xpcom/ds/nsPersistentProperties.cpp, line 532"
Audio/Video:
bug 1137169: Uninitialised value uses related to mozilla::dom::WebAudioUtils::SpeexResamplerProcess
bug 1152381: Implement mediaDevices.getSupportedConstraints()
bug 1156472: Allow of capture of audio in various forms of screen sharing (tab/window/etc)
bug 1173654: Support all image formats in MediaPipelineTransmit
bug 1180748: --disable-webrtc broken by Bug 1037389
bug 1181265: crash in webrtc::videocapturemodule::DeviceInfoDS::CreateCapabilityMap(char const*)
bug 1181428: Only persist deviceIds after user has granted gUM permission
bug 1183883: 2,200 instances of "Graph thread slowdown?: 'std::abs(framePosition - CurrentDriver()->StateComputedTime()) < MillisecondsToMediaTime(5)'" emitted from dom/media/MediaStreamGraph.cpp during linux64 debug testing
bug 1186198: Don't name a test 'unexpected'.
bug 1186708: "Assertion failure: !mIsSome" - mozilla::MediaManager::GetUserMedia - browserWindow passed as null
bug 1191296: test_getUserMedia_constraints.html is going to permafail when Gecko 42 merges to Aurora
Networking:
bug 797262: Update nICEr and nr_socket_prsock to do IPv6
bug 909925: Intermittent 791330.html,855796.html,863929.html | load failed: timed out waiting for reftest-wait to be removed | application timed out after 330 seconds with no output | application crashed
bug 971357: Ensure that STUN traffic is logged to the RLogRingbuffer
bug 1035428: Writable callb}}ack for TURN TCP is not rescheduled after writing from queue
bug 1176377: Activate multi_tcp_socket_unittest
bug 1177921: ice_unittest has numerous failures when not running in CI
bug 1178349: ice_unittest is not running in CI on linux
bug 1180311: null-dereference crash in nr_stun_get_addrs
bug 1183985: IPv6 supports leaks sockets on Linux
bug 1184226: Peers that refuse to provide a client certificate cause assertion in TransportShutdown
bug 1185198: ICE TCP active candidate need to use port 9
bug 1186339: IPv6 sockets try to connect to IPv4 TCP STUN servers
bug 1186696: PeerConnection.js: TypeError: Argument 2 of EventTarget.setEventHandler is not callable.
bug 1187206: JavaScript error: resource://gre/modules/media/PeerConnectionIdp.jsm, line 103: TypeError: sdp is null
bug 1187472: Candidate gathering failures on UDP or TCP results in no local candidates
bug 1189030: Add an about:config pref to disable non-relay ICE candidates
bug 1189040: Add an about:config pref with a whitelist for interfaces to use for ICE
bug 1189041: Add about:config pref to limit ICE discovery to default route
bug 1189198: UDP stun client sends messages to TCP STUN server
bug 1189961: AAAA resolution of STUN servers fails
bug 1190615: nr_ice_component_initialize_udp disregards STUN server transport
bug 1190720: IP version check for TCP sockets from bug 1186339 doesn't work with DNS names
bug 1191180: "Assertion failure: mCertificate" in mozilla::PeerConnectionImpl::GetFingerprint
Signaling:
bug 1098015: Need to not fail on seeing RTCAnswerOptions in CreateAnswer
bug 1112692: JsepSessionImpl does not support more than one BUNDLE group
bug 1142105: Move SDP helper code from the jsep code where possible
bug 1172785: WebRTC certificate management
bug 1173599: imageattr support in sdparta
bug 1186040: use XPCOM refcounting macros instead of mozilla::RefCounted in WebrtcGlobalParent.h
bug 1187775: Support relay-only ICE transport (RTCConfiguration.iceTransportPolicy = "relay")
WebAudio:
bug 914392: Remove AudioNodeEngine::NodeMutex() usage
bug 1157768: Use ffmpeg FFT on x86 instead of kissfft
bug 1173016: Optimize PeriodicWave initialization
bug 1179662: crash in MediaStream::AddConsumer with SetVelocity()/Doppler after source node finishes
bug 1180355: Crash when creating an AudioContext with the AudioChannelService turned on on desktop
bug 1180539: Correctly dispatch media-playback notifications when an AudioContext is closed/suspended/resumed
bug 1182808: Remove AlignedFallibleTArray
bug 1183044: [New Tab Page] Sound on pinned websites starts playing when just opening a new tab
bug 1184419: Use nsTHashtable enumerators in Web Audio
bug 1184801: AnalyserNode corrupts input stream for other consumers
bug 1185176: "Assertion failure: mStream (How come we don't have a stream here?)" with oscillator
bug 1185192: Assertion failure: "Invalid AudioContextState transition" with mozCaptureStreamUntilEnded
bug 1186343: WaveShaperNode#setCurve should throw when the curve is less than two elements
bug 1186779: Make const_casts with AllocateAudioBlock() safer
bug 1186781: Skip AllocateAudioBlock() allocations known to be unnecessary.
bug 1187785: Interpolation between band-limited PeriodicWave tables is reversed
bug 1188244: handle memory allocation failure in WaveShaperNode.curve setter
bug 1188704: simplify PeriodicWave::createBandLimitedTables()
bug 1189168: "Assertion failure: NS_IsMainThread()" with WebAudio memory reporter
bug 1190291: don't process blocks beyond aTicksToProcess in an offline graph