Media/WebRTC/ReleaseNotes/50

From MozillaWiki
Jump to: navigation, search

Firefox50 WebRTC/WebAudio Release Notes:

Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox50:

WebRTC bugs: Bugzilla search for WebRTC related bugs marked Fixed in Firefox 50

WebAudio bugs: Bugzilla search for WebAudio bugs marked Fixed in Firefox 50

Noteworthy Changes:

  • Several quality improvements for Mac full duplex landed in libcubeb. The current plan is to ship Mac full duplex and Windows full duplex to release in Fx 50. (See bug 1280280, bug 1283850 and bug 1285541.)
  • Support for addtrack event for MediaStream. (See bug 1208328.)
  • Implement MediaStreamTrack.readyState/onended (See bug 1208373.)
  • MediaStreamAudioSourceNode was getting garbage collected while there were live audio tracks (See bug 934512.)
  • [Web Audio] Fixed "Acid Defender" WebAudio game to remove extra beep artifacts (See bug 1283910.)
  • [Web Audio] Allow smooth off-main-thread scheduling of listener and source position. (See bug 1265394.)
  • [Web Audio] Added a new IIRFilterNode that implements a general IIR filter. (See bug 1265408.)
  • [Web Audio] Implemented new web audio spec filters (See bug 1265395.)
  • [Web Audio] Fixed correctness issues (See bug 1213313 and bug 1257718.)
  • Fixed no video being rendered after renegotiating recvonly video (e.g. on meet.jit.si) (See bug 1273652.) Uplifted to Fx49.
  • Cherry-picked bugfix for Delay-Agnostic AEC from Chrome 51 (See bug 1286644.) Uplifted to Fx49 and Fx48.
  • Implemented MediaStreamTrack.getConstraints() + getSettings() (See bug 1213517.)
  • Fixed packetization mode 0 for H.264 codec (See bug 1167544.)
  • We have landed partial support for FEC in Fx50 (See bug 1279049 and bug 1275360), but we expect to have full support landed in Fx51. It is still TBD if we will pref on FEC in Fx51 or a later release, but in Fx51 anyone should be able to flip the pref and try FEC in Firefox.

Bug tickets fixed in Firefox 50 that affect WebRTC or Web Audio (full list):

Audio/Video:Cubeb :

bug 1280280 Uplift cubeb to revision 073c9f011114

bug 845648 Supply more useful strings for cubeb context and stream names

bug 1280630 Add telemetry probes to know which back-end is used the most

bug 1286341 1,500 instances of "Couldn't convert chrome URL: chrome://branding/locale/brand.properties" emitted from none during linux64 debug testing

bug 1283850 Uplift cubeb to revision b8aebef

bug 1283020 Change the various latency API to use frames instead of milliseconds

bug 1288980 Expose audio backend in about:support

bug 1281402 Crash in `anonymous namespace::close_wasapi_stream

bug 1289678 Investigate libcubeb backend initialization failures reported via AUDIOSTREAM_BACKEND_USED telemetry

bug 1285541 Update cubeb to revision e2d399

bug 1290425 Update cubeb from upstream to fec2a83786

bug 1289209 Intermittent LeakSanitizer | leak at pa_xmalloc0, pulse_init, cubeb_init, GetCubebContextUnlocked

bug 1290625 Assertion failed: (r == 0 && "Deadlock") on OSX when getting microphone with getUserMedia

bug 783733 JACK audio output support [initial version] [cubeb]

Audio/Video:GMP (Gecko Media Plugin):

bug 1280743 dom/media/gmp/GMPParent.cpp fails to compile with --disable-eme

bug 1285231 Don't use Move() to empty plugins list in GMPServiceParent.cpp

bug 1288021 GMPs on a Network path not mapped to drive letter fail to load. (Uplifted to Fx49.)

bug 1284192 Make CDMProxy be a base class and move the logic into subclass

bug 1284809 Rename CDMCallbackProxy to GMPCDMCallbackProxy to make it GMP specific use

Audio/Video:MediaStreamGraph (MSG):

bug 1266646 Change HTMLMediaElement::StreamSizeListerner to inherit MediaStreamDirectTrackListener.

bug 1281408 Crash producing memory report [@ mozilla::dom::MediaStreamAudioSourceNode::SizeOfIncludingThis]

bug 1284726 dom/media/DOMMediaStream.cpp:13:10: fatal error: 'mozilla/dom/MediaStreamTrackEvent.h' file no{{Bug|t} found (with disable-eme/disable-webrtc)

bug 1274221 HTMLMediaElement::mVideoTrackList is not synced with HTMLMediaElement::mSrcStream::mTracks.

bug 1208328 Implement addtrack event for MediaStream

bug 1208373 Implement MediaStreamTrack.readyState/onended

bug 1278027 In Firefox Nightly, WebRTC recording is slowed by 100%. So duration is 2x the actual duration. (Uplifted to Fx49.)

bug 1281193 Intermittent browser_devices_get_user_media.js | application crashed [@ mozilla::MediaStreamGraphImpl::AudioTrackPresent(bool &)] (Uplifted to Fx49.)

bug 934512 MediaStreamAudioSourceNode cycle collection happening too soon with getUserMedia (e.g. on http://greweb.me/zpeech/)

bug 1280445 MediaStreamGraph holding on to Images until after gfx shutdown

Audio/Video:Media Recording:

bug 1289989 Remove VS2013 workaround for VP8 test crash

WebAudio:

bug 1283910 "Acid Defender" WebAudio game has extra beep artifacts in Firefox 50

bug 1273009 [Web Audio API] CPU consumption is gradually increased when issue many AudioParam automation.

bug 1261168 Add AlignedAutoTArray type in Web Audio

bug 1269741 Allow resuming a context that has been suspended in the same event loop turn

bug 1282820 Change the URL in webidl files for the Web Audio API

bug 1265394 Implement AudioParam cartesian coordinates for PannerNode

bug 1265408 Implement IIRFilterNode

bug 1265395 Implement the new filter equations

bug 1283056 Intermittent 876024-1.html | application terminated with exit code 5 | Assertion failure: (mAudioContextState == AudioContextState::Suspended && aNewState == AudioContextState::Running) || (mAudioContextState == AudioContextState::Running && aNewState ==

bug 1279092 Intermittent browser_bug1181073.js | Interval is throttled with audio stopped (5.015000000000327 ms) | leaked 2 window(s) until shutdown [url = https://example.com/] Return code: 1

bug 1242268 Intermittent test_WebAudioMemoryReporting.html | Non-zero usage for explicit/webaudio/audio-node/ScriptProcessorNode/dom-nodes

bug 1257718 linearRampToValueAtTime not ramping to correct value

bug 1276483 WaveShaper doesn't work, when connected from a silent GainNode

bug 1213313 WebAudio setTargetAtTime uses incorrect starting value

Core (General) WebRTC:

bug 1278476 add anrdroid/aarch64 target to WebRTC's GYP

bug 1188120 Can we remove test_zmedia_cleanup.html?

bug 1210660 Change vp8 threshold for static images in screensharing mode (Uplifted to Fx49.)

bug 1277853 fix clang checks in webrtc arm assembly

bug 1284074 Intermittent dom/media/tests/mochitest/test_peerConnection_removeThenAddVideoTrackNoBundle.html | application crashed [@ mozilla::layers::TextureClient::SetLastFwdTransactionId(unsigned __int64)]

bug 1276805 Intermittent test_peerConnection_basicAudioNATSrflx.html | PeerConnectionWrapper (pcLocal): legal ICE state transition from connected to failed

bug 1273652 No video rendering after renegotiating recvonly video (e.g. on meet.jit.si) (Uplifted to Fx49.)

bug 1275863 test test_peerConnection_addTrack.html fails on Autophone (Uplifted to Fx49.)

bug 1042631 The pointer from Firefox window share shows misplaced (Uplifted to Fx49.)

bug 1289123 We attempt to run removed test test_zmedia_cleanup.html on Autophone

bug 1285501 WebRTC fails to build on DragonFly: undefined reference to `webrtc::AudioDeviceLinuxALSA::AudioDeviceLinuxALSA(int)' (Uplifted to Fx49, Fx48, and ESR.)

bug 1278309 WebRTC promise resolving with undefined

WebRTC:Audio/Video:

bug 1286644 Cherry-pick bugfix for Delay-Agnostic AEC from Chrome 51 (Uplifted to Fx49 and Fx48.)

bug 1279004 Don't decode SRTCP packets with the wrong SSRC

bug 1277009 Fix -Wstring-conversion warnings in dom/media/compiledtest/TestAudioPacketizer.cpp

bug 1213517 Implement MediaStreamTrack.getConstraints() + getSettings()

bug 1286096 Make getSettings() and concurrent access work for audio constraints as well

bug 1275119 Remove confusing receiving codec data base from Video Conduit

bug 1281866 Rename gUM's SourceUnavailableError to NotReadableError.

bug 1280209 Test test_getUserMedia_playAudioTwice.html times out on Autophone android 6 debug

bug 1279036 Video resolution over 640x480 not working properly in getUserMedia on OSX (REGRESSION) (Uplifted to Fx49.)

WebRTC:Networking:

bug 1281708 "Assertion failure: false" [@ mozilla::NrIceStunServer::ToNicerStunStruct]

bug 1289984 Fix nICEr compiler warnings on Win

bug 1288987 mtransport/test/sctp_unittest.cpp:111:18: error: 'struct sockaddr_conn' has no member named 'sconn_len' (DragonFly) (Uplifted to Fx49, Fx48, and ESR.)

bug 1167544 OpenH264 appears to send STAP-A aggregation packets in mode 0

bug 1281150 Remove obsolete RTCDataChannel.stream property

bug 1285318 Turn off WebRTC TCP packet filter for e10s (Uplifted to Fx49 and Fx48.)

WebRTC:Signaling:

bug 1279049 Add sdp for audio FEC

bug 1275360 Add sdp for video FEC

bug 1287874 Assert fail on ctx->timeout_ms

bug 1282792 FF sends RTCP sender reports for recvonly tracks (Uplifted to Fx49.)

bug 1280283 Fix uchex warnings about null-check after pointer deref in webrtc/signaling

bug 1204099 Implement more stringent RTP payload type validation

bug 1280259 Jsep Track SSRC are filled multiple times with remote SSRC's

bug 1283619 Send Conduit ignores remote Remb support (Uplifted to Fx49.)