Media/WebRTC/ReleaseNotes/42

From MozillaWiki
Jump to: navigation, search

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