Firefox 40 WebRTC/WebAudio Release Notes:
Full listing of all WebRTC/WebAudio bugs marked as Fixed in Firefox 40:
WebAudio bugs: Bugzilla search for WebAudio bugs marked Fixed in Firefox 40
Noteworthy bugs marked fixed in Firefox 40:
Core (General) WebRTC:
bug 1152538: enable WebRTC Identity by default
bug 1100502: about:webrtc works fully in e10s. All sessions are now visible regardless of process.
bug 1137614: crashes in libvpx in vp8_diamond_search_sadx4
bug 1159659: Allow tab sharing gUM requests on Windows XP and OSX 10.6
bug 1161079: Multistream landing broke encoder statistics - Uplifted to 39 and ESR 38.
bug 1152443: enumerateDevices is not persisting IDs after a restart
bug 1127727: Detached tab with shared video is displayed with a large throbber after re-attachment
bug 1146637: Firefox OS (flame) ignores constraints, chooses very low video resolution
bug 1155089: RTPSender.replaceTrack()ing a gUM audio track with a WebAudio track yields silence - This bug fix and the bug fix for bug 1081819 means that it is now possible to replaceTrack() a getUserMedia audio track with a WebAudio track and send it over WebRTC!
bug 1106958: Use android.media.MediaCodec for decoding in WebRTC stack- Major new support for hardware codecs on Android contributed by Intel (Thanks, Intel!)
bug 1151628, bug 1152016 - MJPEG getUserMedia sources don't work (regression) - This was fixed in Firefox 29 and regressed in Firefox 30. Enables high resolution getUserMedia captures on many webcams. - Uplifted to 38
bug 1162412 - FacingMode regression (android, b2g) - Uplifted to 38.0.5
bug 1149494: video.onloadedmetadata handler doesn't seem to work with MediaStream input since Firefox37 - Uplifted to 38
bug 1159300 - GMP OpenH264 fails to decode on reload on Windows - Works first time, fails on second. - Uplifted to 38
bug 1162251: H264 packetization was incompatible with sliced mode-1 - H.264 and also with mode 0. - Fix landed in 40 and uplifted to 38.0
bug 996238: ALPN identifiers - Supports stream isolation from JS content
bug 1157766: JSEP rewrite in 37 had regressed datachannels past max 16 (8 started by each side) - Fix landed in 40 and uplifted to 38.
bug 1131779: Webrtc stops using relay port after permission error response - After a TURN server responded to a permission request with denied (403) the relay will be tried for other candidates
bug 1161317: Incorrect encryption of RTCP Packets when using unidirectional PeerConnections - Typo fix - Uplifted to 38
Some edge-condition crash fixes
bug 1096795: Put a=rtcp in SDP when gathering ends.
bug 1146529: fix preferred_codec (only used for debugging) and HW H.264 priority on B2G
bug 1149838: We should not suppress negotiationneeded before the first offer/answer exchange - negotiationneeded event fires also for initial negotiation, not only for re-negotiations.
bug 1149298: null candidate never fires on pc.onicecandidate (regression) - Uplifted to 39
bug 1161619: fix leaks/races in StatsQueries in edge cases
bug 1161136: JsepSessionImpl does not remove mid from bundle group when rejecting an m-section in some cases
bug 1164061: TMMBR is now enabled for WebRTC. We will be putting it behind pref when we uplift the patch on this bug by or before May 22nd.
bug 1153056: about:webrtc blanks whenever allocated PeerConnections goes to zero - Uplifted to 38
bug 1152093: Made SDP codec name comparisons case-insensitive (regression) - Uplifted to 38
bug 926838: Import new FFT kernel for ARM; major performance improvement
bug 1094764: Implement suspend and resume - Provides major power/CPU use improvements, especially on mobile
bug 1153783 Implement detune parameter for AudioBufferSourceNode
bug 1152359: Fix bug in doppler calculations
bug 1157137: Reduce delay/improve performance in ScriptProcessorNodes