https://wiki.mozilla.org/api.php?action=feedcontributions&user=Nohlmeier&feedformat=atomMozillaWiki - User contributions [en]2024-03-29T10:33:46ZUser contributionsMediaWiki 1.27.4https://wiki.mozilla.org/index.php?title=Media/WebRTC/Features_Under_Test&diff=1225649Media/WebRTC/Features Under Test2020-04-01T04:25:30Z<p>Nohlmeier: Added socket process</p>
<hr />
<div>There are a number of WebRTC features under test which can be enabled with preferences:<br />
<br />
* transport-cc: [https://bugzilla.mozilla.org/show_bug.cgi?id=1619859 Bug 1619859] for Jitsi support<br />
media.navigator.video.use_transport_cc true<br />
<br />
* RTX:[https://bugzilla.mozilla.org/show_bug.cgi?id=1164187 Bug 1164187] ... perhaps there will be a pref?<br />
<br />
* WebRTC-SDP parser: [https://bugzilla.mozilla.org/show_bug.cgi?id=1617035 Bug 1617035] For general WebRTC sessions<br />
media.peerconnection.sdp.parser webrtc-sdp<br />
media.peerconnection.sdp.alternate_parse_mode never<br />
<br />
* Socket process (including sandbox): Bug number ???<br />
prefs ???</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1219765Media/WebRTC/ReleaseNotes2019-11-01T20:03:07Z<p>Nohlmeier: Added 71 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/71|Firefox 71]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/70|Firefox 70]]<br />
* [[Media/WebRTC/ReleaseNotes/69|Firefox 69]]<br />
* [[Media/WebRTC/ReleaseNotes/68|Firefox 68]]<br />
* [[Media/WebRTC/ReleaseNotes/67|Firefox 67]]<br />
* [[Media/WebRTC/ReleaseNotes/66|Firefox 66]]<br />
* [[Media/WebRTC/ReleaseNotes/65|Firefox 65]]<br />
* [[Media/WebRTC/ReleaseNotes/64|Firefox 64]]<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/71&diff=1219764Media/WebRTC/ReleaseNotes/712019-11-01T20:02:27Z<p>Nohlmeier: Initial 71 release notes</p>
<hr />
<div>=Firefox 71 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 71:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/36tc44b Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 71]<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1572846}} Rework Clearkey to use more flexible underlying crypto library<br />
<br />
{{Bug|1577885}} Stop using `using namespace std` at global scope in GMP<br />
<br />
{{Bug|1579506}} Remove OpenAES source code<br />
<br />
{{Bug|1583861}} Files should use GMP_LOG macro from GMPLog.h rather than spinning their own<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1454998}} Remove the notion of streams from the MediaStreamGraph<br />
<br />
{{Bug|1574284}} Crash in macOS AudioIPC when unplugging mic during a WebRTC call [@ cubeb_backend::capi::capi_stream_get_current_device]<br />
<br />
{{Bug|1577534}} Perma tier2 LeakSanitizer | leak at NewSegment, CreateSegment, mozilla::ipc::Shmem::Alloc, mozilla::ipc::IToplevelProtocol::CreateSharedMemory<br />
<br />
{{Bug|1586387}} Crash in [@ mozilla::MediaTrackGraphImpl::AppendMessage]<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1512175}} MediaRecorder.mimeType returns empty string<br />
<br />
{{Bug|1514158}} Implement MediaRecorder's audioBitsPerSecond and videoBitsPerSecond attributes<br />
<br />
{{Bug|1575026}} MediaEngineWebRTC.cpp fires assert MOZ_ASSERT(!preferredDeviceFound); when invoking getUserMedia<br />
<br />
{{Bug|1575271}} AddressSanitizer: SEGV /builds/worker/workspace/build/src/dom/media/encoder/MediaEncoder.cpp:449:5 in mozilla::MediaEncoder::RunOnGraph(already_AddRefed<mozilla::Runnable>)<br />
<br />
{{Bug|1582407}} MediaRecorder-pause-resume.html fails<br />
<br />
{{Bug|1582408}} MediaRecorder's WPT idlharness.window.js is not spec compliant<br />
<br />
{{Bug|1589029}} Simplify ShutdownBlocker handling in MediaRecorder<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1575131}} Update libcubeb to pick up PR 530 (IAudioClient3 support on Windows 10)<br />
<br />
{{Bug|1575638}} Perform hard-right panning on macbooks in Gecko and not in cubeb<br />
<br />
{{Bug|1575883}} Implement a way to bail out safely from a real-time audio thread on Linux<br />
<br />
{{Bug|1581000}} Turn on Rust version of Cubeb AudioUnit by default in Nightly<br />
<br />
{{Bug|1582222}} Increasing YouTube player speed causes tab crashes without any debug trace<br />
<br />
{{Bug|1583105}} Crash in [@ `anonymous namespace'::wasapi_stream_render_loop]<br />
<br />
{{Bug|1583996}} Main thread hang in audioipc_server_new_client when opening new window<br />
<br />
{{Bug|1584522}} Change the audio callback trace logger to be more ergonomic<br />
<br />
{{Bug|1588669}} Allow ALSA/SNDIO lazy bindings<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1499597}} Unable to set negative value for Q of BiquadFilterNode when type is "lowpass" or "highpass"<br />
<br />
{{Bug|1576656}} Align the ConvolverNode ctor and some setters to spec<br />
<br />
{{Bug|1577184}} AddressSanitizer: SEGV /src/obj-firefox/dist/include/mozilla/MozPromise.h:454:24 in mozilla::MozPromise<bool, nsresult, false>::ThenValueBase::Dispatch(mozilla::MozPromise<bool, nsresult, false>*)<br />
<br />
{{Bug|1577932}} Stop using `using namespace std` at global scope in dom/media/webaudio<br />
<br />
{{Bug|1583496}} Perma /webaudio/the-audio-api/*| Executing * - context.audioWorklet is undefined when Gecko 71 merges to Beta on 2019-10-14<br />
<br />
{{Bug|1583512}} Remove remaining references to doppler shift from AudioBufferSourceNode<br />
<br />
{{Bug|1585671}} Start testing the Processing Model section of the spec in WPT<br />
<br />
{{Bug|1585946}} Perma webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-construction.https.html | X Creating a node before loading a module should throw. threw "ReferenceError" instead of InvalidStateError. when Gecko 71 merges to Beta on 2019-10-14<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1517369}} Fatal error in src/media/webrtc/trunk/webrtc/video/video_send_stream.cc, line 797 # last system error: 1<br />
<br />
{{Bug|1565738}} OSX Mojave (10.14) - browser/base/content/test/webrtc/browser.ini | Multiple failures from manifest file on macosx1014<br />
<br />
{{Bug|1571015}} Add telemetry for WebRTC usage<br />
<br />
{{Bug|1579076}} Remove or renew expired WebRTC telemetry<br />
<br />
{{Bug|1579388}} Perma dom/media/tests/mochitest/test_enumerateDevices.html | undefined assertion name - got 2, expected +0 - when Gecko 71 merges to Beta on 2019-10-14<br />
<br />
{{Bug|1579834}} [Webrtc] Add mips64el build support<br />
<br />
{{Bug|1581577}} Hostname obfuscation ICE duration telemetry is being reported in milliseconds, not seconds<br />
<br />
{{Bug|1586271}} Make WEBRTC_CALL_DURATION telemetry opt-out on release channel<br />
<br />
{{Bug|1586423}} meet.google.com / Google Hangouts doesn't work in Nightly ("Couldn't start the video call because of an error")<br />
<br />
{{Bug|1587164}} undefined shift in media/webrtc/trunk/webrtc/rtc_base/timeutils.cc:142<br />
<br />
{{Bug|1588346}} Remove WebRTC SDK dir<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1397528}} Assertion failure: rv, at /home/worker/workspace/build/src/dom/media/MediaManager.cpp:2716<br />
<br />
{{Bug|1508567}} firefox cannot limit framerate in getusermedia with screen<br />
<br />
{{Bug|1509316}} MediaCodec decoder not usable on Android somehow.<br />
<br />
{{Bug|1548087}} Feature policy should limit what info enumerateDevices() reveals in iframes.<br />
<br />
{{Bug|1559011}} Capturing some windows via getDisplayMedia doesn't work properly on Windows<br />
<br />
{{Bug|1568169}} Unrelease MediaStream after failed getUserMedia request<br />
<br />
{{Bug|1572281}} Doesn't switch the mic automatically when unplugging the mic<br />
<br />
{{Bug|1576771}} Replacing video track in Hubs fails to send data to SFU<br />
<br />
{{Bug|1576836}} Permafailing MediaStream-removetrack.https.html | Test named 'Test that removal from a MediaStream fires ended on media elements (video first)' specified 2 'cleanup' functions, and 1 returned a non-thenable value.<br />
<br />
{{Bug|1579526}} Wrong screen sharing preview (regression)<br />
<br />
{{Bug|1580524}} Free conduits when transceiver is stopped<br />
<br />
{{Bug|1581193}} devicechange event stopped working when unplugging/replugging device<br />
<br />
{{Bug|1581806}} devicechange event is triggered for any device in windows<br />
<br />
{{Bug|1581898}} Firefox 69: Tab crash when establishing a WebRTC call (CrashChannel::OpenContentStream)<br />
<br />
{{Bug|1581902}} Enable WebRTC H.264 support when hardware codec is available.<br />
<br />
{{Bug|1583967}} addition of unsigned offset overflowed in media/webrtc/trunk/webrtc/common_audio/signal_processing/downsample_fast.c:45<br />
<br />
{{Bug|1584560}} Wrong input channel count on gUM without settings<br />
<br />
{{Bug|1587159}} undefined shift in media/webrtc/trunk/webrtc/modules/audio_coding/codecs/g722/g722_encode.c:78<br />
<br />
{{Bug|1587248}} AddressSanitizer: SEGV /builds/worker/workspace/build/src/dom/html/HTMLMediaElement.cpp:448:9 in mozilla::dom::HTMLMediaElement::MediaStreamRenderer::Start()<br />
<br />
{{Bug|1587543}} Bump openh264 fallback downloader to version 1.8.1.1<br />
<br />
{{Bug|1588640}} [macOS 10.15] Screen sharing shouldn't require "Camera" OSX permission. Should instead raise & gate on OS "ScreenRecording" permission consistently.<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1567201}} Support mDNS queries in mdns_service<br />
<br />
{{Bug|1569250}} Add telemetry for mDNS use in WebRTC<br />
<br />
{{Bug|1570669}} Peer reflex candidate shows up as (redacted) even if camera/microphone permission granted<br />
<br />
{{Bug|1581023}} Update DataChannel log macros<br />
<br />
{{Bug|1582320}} Color code ICE state on about:webrtc<br />
<br />
{{Bug|1582646}} Crash in [@ mozilla::net::WebrtcTCPSocket::InvokeOnConnected]<br />
<br />
{{Bug|1583046}} Crash in [@ mozilla::net::WebrtcTCPSocket::OpenWithoutHttpProxy]<br />
<br />
{{Bug|1583317}} Add a pref to disable DTLS 1.0<br />
<br />
{{Bug|1584362}} Crash in [@ mozilla::net::WebrtcTCPSocket::OnInputStreamReady]<br />
<br />
{{Bug|1584695}} Place the DataChannelConnection connection state behind an acessor<br />
<br />
{{Bug|1584751}} Only try to open DataChannelConnections that aren't already open<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1560370}} Move from using a vendored copy of webrtc-sdp in tree to using it as an external dependency<br />
<br />
{{Bug|1573210}} Need to disable RTCPeerConnection-onicecandidateerror.https.html<br />
<br />
{{Bug|1576893}} webrtc/RTCPeerConnection-iceConnectionState.https.html has an invalid test<br />
<br />
{{Bug|1580853}} New failure in RTCDataChannel-send-blob-order.html<br />
<br />
{{Bug|1581964}} left shift of 1 by 31 places cannot be represented in type 'int' in media/webrtc/signaling/src/sdp/sipcc/sdp_attr.c:1483:33<br />
<br />
{{Bug|1582190}} Crash in [@ mozilla::PeerConnectionImpl::GetDatachannelParameters]<br />
<br />
{{Bug|1585009}} Support playout-delay RTP header extension<br />
<br />
===Intermittent Test failures:===<br />
<br />
{{Bug|1564902}} Intermittent PROCESS-CRASH | Main app process exited normally | application crashed [@ abort] | Fatal error in src/media/webrtc/trunk/webrtc/modules/pacing/paced_sender.cc<br />
<br />
{{Bug|1577537}} Intermittent dom/media/test/crashtests/1411322.html | application crashed [@ mozilla::(anonymous namespace)::MediaStreamGraphStableStateRunnable::Run()]<br />
<br />
{{Bug|1586328}} Intermittent dom/media/test/test_mediarecorder_record_getdata_afterstart.html | should have had start event first<br />
<br />
{{Bug|1586593}} Intermittent <webrtc/test-name> | application crashed [@ mozilla::DataChannel::SetReadyState(unsigned short)]<br />
<br />
{{Bug|1586903}} Intermittent SUMMARY: AddressSanitizer: SEGV /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/Assertions.h:332:3 in MOZ_Crash (crashes under MediaRecorder::Session::DoSessionEndTask)<br />
<br />
===Web Platform Tests:===<br />
<br />
{{Bug|1577769}} [wpt-sync] Sync PR 18770 - WebRTC: Add a test related to https://github.com/w3c/webrtc-pc/issues/2215<br />
<br />
{{Bug|1581392}} [wpt-sync] Sync PR 19064 - Run more of some webaudio tests inside the test harness.<br />
<br />
{{Bug|1585444}} [wpt-sync] Sync PR 19454 - Fix iceConnectionState test to accept "completed" state</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1217858Media/WebRTC/ReleaseNotes2019-09-13T23:37:03Z<p>Nohlmeier: Added 70 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/70|Firefox 70]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/69|Firefox 69]]<br />
* [[Media/WebRTC/ReleaseNotes/68|Firefox 68]]<br />
* [[Media/WebRTC/ReleaseNotes/67|Firefox 67]]<br />
* [[Media/WebRTC/ReleaseNotes/66|Firefox 66]]<br />
* [[Media/WebRTC/ReleaseNotes/65|Firefox 65]]<br />
* [[Media/WebRTC/ReleaseNotes/64|Firefox 64]]<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/70&diff=1217857Media/WebRTC/ReleaseNotes/702019-09-13T23:36:12Z<p>Nohlmeier: Initial 70 release notes</p>
<hr />
<div>=Firefox 70 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 70:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2LThRXi Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 70]<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1370165}} 20:18:13 ERROR - shutil error: Destination path '/builds/slave/test/build/application/Nightly.app/Contents/Resources/gmp-clearkey' already exists<br />
<br />
{{Bug|1566523}} [10.15][Mac] Remove com.apple.quarantine xattr from CDM dylib after downloading<br />
<br />
{{Bug|1573902}} PChromiumCDM::Init's return value should be named to reflect that it is used<br />
<br />
{{Bug|1574515}} Perma gtest | timed out after 300 seconds without output<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1493613}} Make MediaStreamTrack the controller of MediaStreamGraph units<br />
<br />
{{Bug|1570684}} Crash in [@ mozilla::dom::MediaStreamTrack::Graph]<br />
<br />
{{Bug|1573102}} Remove MediaStreamGraph strong-refs<br />
<br />
{{Bug|1574965}} Control MediaStreamGraph shutdown from the main thread<br />
<br />
{{Bug|1577495}} Use only one SharedDummyStream per HTMLMediaElement<br />
<br />
{{Bug|1577734}} Crash in [@ mozilla::dom::HTMLMediaElement::MediaStreamRenderer::UpdateGraphTime]<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1014393}} [MediaRecorder] Handle non monotonically increasing timestamp in WebM muxer.<br />
<br />
{{Bug|1499572}} MediaRecorder.requestData not working correctly when timeslice is omitted<br />
<br />
{{Bug|1563520}} Followup to finish clarifying EbmlComposer<br />
<br />
{{Bug|1569645}} Assertion failure: false (No video encoder for this video track), at /builds/worker/workspace/build/src/dom/media/encoder/MediaEncoder.cpp:568<br />
<br />
{{Bug|1573524}} Assertion failure: !Ended(), at /builds/worker/workspace/build/src/dom/media/MediaStreamTrack.cpp:376<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1530715}} Implement CoreAudio backend for Cubeb in Rust<br />
<br />
{{Bug|1539225}} media.cubeb.backend does not work with cubeb remote<br />
<br />
{{Bug|1566369}} Lower the audio thread pool thread count to 1 on Linux<br />
<br />
{{Bug|1567457}} Update cubeb-pulse-rs to version 3a748a2<br />
<br />
{{Bug|1567480}} Update libcubeb to 0b5b52d<br />
<br />
{{Bug|1568182}} Pick audio latencies depending on the use case on OSX<br />
<br />
{{Bug|1569090}} Update audioipc to 177ebd96<br />
<br />
{{Bug|1569460}} Firefox 70.0a1 (2019-07-27) core::result::unwrap_failed - panic in CubebDeviceCollectionManager ::internal_register<br />
<br />
{{Bug|1570446}} Update cubeb-coreaudio-rs to version ee0f981<br />
<br />
{{Bug|1570948}} Bump audio_thread_priority to 0.17<br />
<br />
{{Bug|1574644}} Update cubeb-coreaudio-rs to version 71faddb<br />
<br />
{{Bug|1574914}} Bump audio_thread_priority to 0.18<br />
<br />
{{Bug|1576168}} Update audio_thread_priority to 0.19.1<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1324545}} Implement AudioContext getOutputTimestamp()<br />
<br />
{{Bug|1324552}} Implement BaseAudioContext baseLatency and outputLatency attributes<br />
<br />
{{Bug|1350973}} Implement new attributes MediaStreamAudioSourceNode and MediaElementAudioSourceNode<br />
<br />
{{Bug|1456263}} ChannelMergerNode constructor should throw errors<br />
<br />
{{Bug|1542931}} Construct AudioWorkletProcessor for each AudioWorkletNode<br />
<br />
{{Bug|1558123}} call AudioWorkletProcessor.process()<br />
<br />
{{Bug|1564422}} Change `outputLatency` and `getOutputTimestamp` when `resistFingerPrinting` is enabled<br />
<br />
{{Bug|1564464}} Adjust `audionode-connect-method-chaining.html` to only requires what is mandated by the spec<br />
<br />
{{Bug|1568835}} Permafail TEST-UNEXPECTED-FAIL | /webaudio/the-audio-api/the-audioworklet-interface/audioworklet-addmodule-resolution.https.html | when Gecko 70 merges to Beta on 2019-08-26<br />
<br />
{{Bug|1568868}} Permafail TEST-UNEXPECTED-OK | /webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/cors-check.https.html | expected ERROR when Gecko 70 merges to Beta on 2019-08-26<br />
<br />
{{Bug|1570015}} Fix `test_waveShaperGain.html` by waiting for the DOM to be ready<br />
<br />
{{Bug|1576909}} Perma wpt TEST-UNEXPECTED-FAIL | /webaudio/the-audio-api/the-audioworklet-interface/audioworklet-addmodule-resolution.https.html when Gecko 70 merges to Beta on 2019-08-26<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1550691}} High frequency intermittent Tier 2 TEST-UNEXPECTED-TIMEOUT | /webrtc/RTCDataChannel-bufferedAmount.html | Data channel bufferedamountlow event fires after send() is complete - Test timed out<br />
<br />
{{Bug|1551316}} Add pc.restartIce() method.<br />
<br />
{{Bug|1560207}} SUMMARY: AddressSanitizer: SEGV /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/Maybe.h:525:3 in emplace<const long &><br />
<br />
{{Bug|1561923}} Remove expired WebRTC telemetry<br />
<br />
{{Bug|1562341}} Regression causing WebRTC data channel establishment to fail<br />
<br />
{{Bug|1568101}} Implement 'CreateEncoder' in MediaDataDecoderCodec<br />
<br />
{{Bug|1570158}} Add proxy information to candidates table in about:webrtc<br />
<br />
{{Bug|1571027}} about:webrtc no longer displays RTP stats<br />
<br />
{{Bug|1571586}} The compressed size of encoded video from AppleVTEncoder is not as expected<br />
<br />
{{Bug|1574512}} Crash in nr_ice_get_default_local_address<br />
<br />
{{Bug|1575876}} Unbreak build on FreeBSD after libc++ changes<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1480088}} WebRTC: Overflow in FEC Processing (project zero)<br />
<br />
{{Bug|1560907}} MediaStreamTrack::GetConstraints() returns {mediaSource: "camera"} for all tracks where it should be empty<br />
<br />
{{Bug|1560979}} MediaStreamTrack-MediaElement-disabled-video-is-black.https.html fails<br />
<br />
{{Bug|1561254}} Support groupId in constraints<br />
<br />
{{Bug|1561319}} WPT mediacapture-streams/GUM-invalid-facing-mode.https.html fails<br />
<br />
{{Bug|1561569}} WPT GUM-impossible-constraint.https.html fails<br />
<br />
{{Bug|1565317}} Crash in [@ mozilla::ReduceConstraint]<br />
<br />
{{Bug|1570594}} Perma /builds/worker/workspace/build/src/dom/html/HTMLMediaElement.cpp:2427:26: error: unused variable 't' [-Werror=unused-variable] when Gecko 70 merges to Beta on 2019-08-26<br />
<br />
{{Bug|1570673}} No black video sent out if track is muted before MediaPipeline is activated<br />
<br />
{{Bug|1571667}} MediaStreamTrack-applyConstraints WPT failing test "applyConstraints rejects invalid groupID"<br />
<br />
{{Bug|1573536}} AddressSanitizer: SEGV /src/obj-firefox/dist/include/mozilla/RefPtr.h:91:27 near [@ mozilla::SourceListener::InitializeAsync]<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1506219}} Update to latest draft-ietf-rtcweb-ip-handling<br />
<br />
{{Bug|1554976}} Generate mDNS ICE candidates in webrtc signaling<br />
<br />
{{Bug|1555792}} Enable webrtc use of socket process on nightly by default<br />
<br />
{{Bug|1558886}} OSX Mojave (10.14) - TEST-UNEXPECTED-FAIL | WebRtcIceConnectTest.TestNetworkOnlineTriggersConsent | Value of: res<br />
<br />
{{Bug|1558887}} OSX Mojave (10.14) - WebRtcIceConnectTest.TestConsentDelayed | Expected equality of these values:<br />
<br />
{{Bug|1560636}} IPC messages from socket process happen on main<br />
<br />
{{Bug|1567892}} Proxy check should run on the parent process<br />
<br />
{{Bug|1571987}} Make sure proxy checks work with the socket process<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1520550}} Remove TCP/TLS/RTP/SAVPF from SDP parsing in Fx 72 or later<br />
<br />
{{Bug|1526039}} about:webrtc is missing protocol in candidates table<br />
<br />
{{Bug|1551854}} No remote audio WebRTC after sip 200 OK SDP<br />
<br />
{{Bug|1564647}} rsdparsa fails to build with rust 1.37<br />
<br />
{{Bug|1566701}} Update Rust SDP Parser to version with FQDN Support<br />
<br />
{{Bug|1567951}} Add implicit rollback to setRemoteDescription(offer) per spec.<br />
<br />
{{Bug|1568530}} Triage new failures in RTCPeerConnection-iceConnectionState.https.html, RTCPeerConnection-onicecandidateerror.html, and protocol/candidate-exchange.https.html<br />
<br />
{{Bug|1568639}} Check whether we can re-enable test_peerConnection_replaceTrack.html on fission<br />
<br />
===Intermittent Test failures:===<br />
<br />
{{Bug|1411152}} Intermittent dom/media/test/test_mediarecorder_record_timeslice.html | Mime type in ondataavailable = - got "", expected "audio/ogg"<br />
<br />
{{Bug|1513464}} Intermittent dom/media/tests/mochitest/test_peerConnection_restartIceNoBundle.html | iceconnectionstate event 'failed' matches expected state 'checking' - got "failed", expected "checking"<br />
<br />
{{Bug|1517022}} Intermittent dom/media/test/test_mediarecorder_record_gum_video_timeslice_mixed.html | Test timed out.<br />
<br />
{{Bug|1557553}} Intermittent TEST-UNEXPECTED-TIMEOUT | /webrtc/RTCPeerConnection-iceConnectionState.https.html | ICE can connect in a recvonly usecase - Test timed out<br />
<br />
{{Bug|1559512}} Intermittent dom/media/tests/mochitest/test_peerConnection_basicVideoVerifyRtpHeaderExtensions.html | number of sdp ids match received ids ["3","4","5"] == ["5","4"]<br />
<br />
{{Bug|1563697}} Intermittent dom/media/tests/crashtests/1429507_1.html | assertion count 1 is more than expected 0 assertions<br />
<br />
{{Bug|1565800}} Intermittent Android org.mozilla.geckoview.test.MediaElementTest.mp4PauseMedia | application crashed [@ abort]<br />
<br />
{{Bug|1571165}} Intermittent mda - wpt | application crashed [@ mozilla::AudioCallbackDriver::Revive()]<br />
<br />
===Web Platform Tests:===<br />
<br />
{{Bug|1534826}} [wpt-sync] Sync PR 15741 - [ImageCapture] Add pan/tilt constraint and wire in Linux/CrOS.<br />
<br />
{{Bug|1555480}} [wpt-sync] Sync PR 17082 - Reland tests from "Change ICE connection state on transceiver changes"<br />
<br />
{{Bug|1559261}} [wpt-sync] Sync PR 17327 - Have containValues check array lengths<br />
<br />
{{Bug|1559300}} [wpt-sync] Sync PR 17338 - Update interfaces/webrtc.idl<br />
<br />
{{Bug|1564410}} [wpt-sync] Sync PR 17719 - Web Audio: SharedArrayBuffer and COOP/COEP<br />
<br />
{{Bug|1564662}} [wpt-sync] Sync PR 17430 - Correct mediacapture-streams idlharness interface types<br />
<br />
{{Bug|1564754}} [wpt-sync] Sync PR 17643 - Re-enable RTCRtpSender-getStats.https.html tests.<br />
<br />
{{Bug|1564774}} [wpt-sync] Sync PR 17660 - Implement DOMPoint.fromPoint<br />
<br />
{{Bug|1565300}} [wpt-sync] Sync PR 17642 - Implement RTCPeerConnection.onicecandidateerror and add web-platform-test<br />
<br />
{{Bug|1565718}} [wpt-sync] Sync PR 17383 - Make ChannelMerger active processing test less flaky<br />
<br />
{{Bug|1566498}} [wpt-sync] Sync PR 17855 - Active Processing for ConvolverNode<br />
<br />
{{Bug|1567547}} [wpt-sync] Sync PR 17939 - Implement RTCPeerConnection.restartIce() according to spec.<br />
<br />
{{Bug|1567694}} [wpt-sync] Sync PR 17959 - Unbreak RTCPeerConnection-getStats<br />
<br />
{{Bug|1569685}} [wpt-sync] Sync PR 18155 - Do not throw errors in copyFromChannel/copyToChannel<br />
<br />
{{Bug|1571193}} [wpt-sync] Sync PR 18270 - Replace deprecated API usage in wpt RTCPeerConnection-onicecandidateerror.html<br />
<br />
{{Bug|1571534}} [wpt-sync] Sync PR 18282 - Update current_frame<br />
<br />
{{Bug|1575829}} [wpt-sync] Sync PR 18611 - Add WPT test for responder iceConnectionState</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC&diff=1215002Media/WebRTC2019-07-12T19:38:53Z<p>Nohlmeier: Replaced individual release notes with a link to the release notes collection page</p>
<hr />
<div>WebRTC is a free, open project that will bring peer-to-peer real-time audio, video and data to the web without plugins, using open web [[standards]]. Checkout the [http://www.webrtc.org/ WebRTC project page] set up by Google for interesting links and details. <br />
<br />
==Releases & Notes==<br />
*[https://wiki.mozilla.org/RapidRelease/Calendar Firefox Release Schedule Calendar]<br />
*[https://wiki.mozilla.org/Media/WebRTC/ReleaseNotes Firefox WebRTC & Web Audio Release Notes]<br />
<br />
===Triage Guidelines===<br />
The Product Backlog is continually maintained to ensure relative priorities are understood. <br />
<br />
* Priorities follow the Firefox Desktop Standard:<br />
Go to [https://wiki.mozilla.org/Media/Bugs#WebRTC_Bugzilla_Queries WebRTC bugs] to search for all open WebRTC bugs (including untriaged and unconfirmed bugs).<br />
<br />
** Priority 1 - Blocker, must-fix before shipping. Almost by definition of P1, the "affected" flags and "tracking" flags for the bug should be set when it's triaged. <br />
** Priority 2 - High priority backlog (bugs we are currently working on or will be working on next)<br />
** Priority 3 - Lower priority backlog <br />
** Priority 4 - Bugs we will accept patches for<br />
** Priority 5 - Parking lot (Bugs we do not plan to spend any time on)<br />
<br />
*RANK: The Rank field lets us prioritize bugs within a priority bucket (P2, P3, etc) in bugzilla. To have some rhyme/reason to the order - Rank should relate to Priority. The "Ranking" number does not need to be unique. Unless there is a reason to for a bug to be considered before (or after) others in the Priority bucket - the triager will default to mid-range value.<br />
** P1 Rank options=0-9, default 5<br />
** P2 Rank options=10-19, default 15<br />
** P3 Rank options=20-29, default 25<br />
** P4 Rank options=30-39, default 35<br />
** P5 Rank options=40-49, default 45<br />
*** Note: P5 and "parking-lot"-labelled bugs are treated identically. We no longer use "parking-lot"; it is a legacy classification.<br />
<br />
<p> </p><br />
*QE-Verify is a flag that developers should be setting. QE uses to filter which bugs they check.<br />
**"+" means that QE should look at the bug and it can be verified with human eyes<br />
**"-" means QE should not look at<br />
***Typically QE-verify"-" goes with "in-testsuite" being set to "+", to show testing via another method.<br />
<br />
===Filing a bug===<br />
* Open a bug under Product:"Core" || Component: "WebRTC, WebRTC:Audio, WebRTC:Network or WebRTC:Signaling"<br />
** After triage, bugs will be marked "firefox-blocking", with a Priority, and a Rank<br />
*If there is a bug that should be considered for taking ASAP - you can mark "firefox-backlog"+<br />
**Before it can be given a Rank it should:<br />
*** be in an actionable state<br />
*** for defects, the problem is ready for Engineering or UX: diagnosis, measurement, design, or fixing<br />
*** for feature requests or enhancements, it means that there's a clear problem statement or suggestion<br />
*** has a difficulty/user-impact ratio low enough that we can reasonably expect to spend time fixing the bug within the next 6 months<br />
<p> </p><br />
<br />
'''Contributor Engagement'''<br />
* Add Whiteboard tag of [well filed] to the well filed bugs to acknowledge that we appreciate the effort and thoroughness<br />
* Add Whiteboard tag of [good first bug] for contributors to pick up<br />
<br />
==Project Status ==<br />
*[https://mozilla.aha.io/published/b40393012432847d857ee68299a8a82f?page=2 Detailed Roadmap], noting that the further out the more lose the targets are]<br />
<br />
==Contacts and Useful Links==<br />
*[https://mozilla.github.io/webrtc-landing/gum_test.html Click here] to try WebRTC features in the Firefox browser<br />
*[https://wiki.mozilla.org/Webrtc/contacts Contacts for WebRTC]<br />
*[https://wiki.mozilla.org/Webrtc/links Useful Links for WebRTC]<br />
*[https://wiki.mozilla.org/Media/WebRTC/Tests Running tests for WebRTC in Firefox]<br />
*[https://wiki.mozilla.org/Media/WebRTC/Logging Getting WebRTC logs in Firefox]<br />
<br />
==Meetings==<br />
<p> </p><br />
{| class="wikitable"<br />
|-<br />
! Meeting !! Day of week !! Pacific Time !! Eastern Time !! Central European Time !! Vidyo Room !! Notes<br />
|-<br />
| "Weekly Stand-up" || Wednesday || 6:00AM - 6:30AM & 1:30 - 2:00 PM || 9:00AM - 9:30PM & 4:30 - 5:00 PM || 3:00PM - 3:30PM & - 10:30PM-11:00PM || webRTC-Apps || [https://etherpad.mozilla.org/webrtcweekly etherpad]<br />
|-<br />
|}<br />
* Stand-up = 2 minutes on what have you been working on, planning to work on, and are you blocked. Bring-up topics for longer Discussion at end if needed.<br />
** Developers and active contributors only need to attend one of the two sessions each week. We have 2 sessions due to the number of very different time zones throughout the team.<br />
** please update the [https://etherpad.mozilla.org/webrtcweekly Stand-up Notes etherpad] if you cannot make the meeting (even if it's just to say you're on PTO)<br />
* [http://ietf.org/ IETF Standards Meetings]<br />
<br />
==Archived==<br />
===Notes===<br />
*[https://wiki.mozilla.org/Media/WebRTC/archived Archived notes]<br />
<br />
<br />
<br />
----</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1214441Media/WebRTC/ReleaseNotes2019-07-01T19:51:46Z<p>Nohlmeier: Added 68 and 69 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/69|Firefox 69]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/68|Firefox 68]]<br />
* [[Media/WebRTC/ReleaseNotes/67|Firefox 67]]<br />
* [[Media/WebRTC/ReleaseNotes/66|Firefox 66]]<br />
* [[Media/WebRTC/ReleaseNotes/65|Firefox 65]]<br />
* [[Media/WebRTC/ReleaseNotes/64|Firefox 64]]<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/69&diff=1214440Media/WebRTC/ReleaseNotes/692019-07-01T19:50:35Z<p>Nohlmeier: Initial 69 release notes</p>
<hr />
<div>=Firefox 69 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 69:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2Jl1a5O Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 69]<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1522305}} Make MediaRecorder.start() timeslice parameter unsigned<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1429847}} When remoting audio streams, bump the priority of the child process thread to avoid underruns<br />
<br />
{{Bug|1549321}} Crash in [@ IPCError-browser | RecvCreateAudioIPCConnection CubebUtils::CreateAudioIPCConnection failed]<br />
<br />
{{Bug|1550695}} Crash in [@ wasapi_init]<br />
<br />
{{Bug|1560720}} audio_thread_priority is always built even if unused<br />
<br />
{{Bug|1561681}} Change log level for audio thread promotion related-messages<br />
<br />
{{Bug|1561945}} Update cubeb from upstream to 98a1c8e<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1056706}} Investigate why we can't decode mp3 using decodeAudioData on Android<br />
<br />
{{Bug|1444508}} Convolver with mono response produces stereo output<br />
<br />
{{Bug|1553215}} Throw when the MediaStream passed to MediaStreamAudioSourceNode does not have an audio track, and implement the correct behaviour<br />
<br />
{{Bug|1557060}} Perma /webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html | expected ERROR when Gecko 69 merges to Beta on 19-07-01<br />
<br />
{{Bug|1557398}} Perma /webaudio/the-audio-api/the-audioworklet-interface/audioworklet-suspend.https.html | context.audioWorklet is undefined when when Gecko 69 merges to Beta on 19-07-01<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1537986}} Video MediaStreamTrack.getSettings returns empty object with media.navigator.streams.fake = true<br />
<br />
{{Bug|1550177}} RTCPeerConnection fires "complete" but never "gathering" icegatheringstatechange on answerer side<br />
<br />
{{Bug|1553213}} AddressSanitizer: SEGV /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/RefPtr.h:268:27 in get near [mozilla::dom::MediaDevices::GetDisplayMedia]<br />
<br />
{{Bug|1555568}} Create wpt test to count mandatory stats members implemented<br />
<br />
{{Bug|1559913}} wpt /webrtc/protocol/candidate-exchange.https.html has frequent intermittent timeouts<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1333879}} Receiving multiple codecs in a SDP answer does not work<br />
<br />
{{Bug|1523162}} multiple definition of `WebRtc_GetCPUFeaturesARM' when compiling for armv7<br />
<br />
{{Bug|1548679}} Stop downloading OpenH264 plugin on Android<br />
<br />
{{Bug|1552755}} Crash in [@ AsyncShutdownTimeout | profile-before-change | CamerasParent 1,CamerasParent 2]<br />
<br />
{{Bug|1554699}} Getting HTMLMediaElement's preload, defaultPlaybackRate, playbackRate attributes when playing a MediaStream must return constant values<br />
<br />
{{Bug|1556766}} Add telemetry for WebRTC video codecs used in calls<br />
<br />
{{Bug|1558646}} WPT MediaStream-MediaElement-firstframe.https.html, line 41: Error: Got unexpected event undefined<br />
<br />
{{Bug|1560969}} WPT mediacapture-streams/MediaStream-idl.https.html times out<br />
<br />
{{Bug|1561249}} No WPT catching extraneous MediaStream events "active" and "inactive" and related handler attributes<br />
<br />
{{Bug|1561268}} mediacapture-streams/MediaStreamTrack-end-manual.https.html is not spec compliant<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1381136}} Remove PPID-based fragmentation/reassembly<br />
<br />
{{Bug|1548841}} Handle incoming mDNS ICE candidates in webrtc signaling<br />
<br />
{{Bug|1556109}} [socket-process] shows up as not responding in OSX activity monitor<br />
<br />
{{Bug|1557053}} ice-state.https.html has a failure<br />
<br />
{{Bug|1560562}} rlog ringbuffer is printfing everything<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1531825}} RTCDTMFSender.insertDTMF while tones are already playing begins playing the new tones immediately<br />
<br />
{{Bug|1531885}} RTCPeerConnection constructor exceptions related to RTCCertificate aren't surfaced properly<br />
<br />
{{Bug|1549361}} Remove leak suppression from meta/webrtc/__dir__.ini<br />
<br />
{{Bug|1551589}} When datachannel events fire, the DataChannel in question should be in state "open"<br />
<br />
{{Bug|1553011}} Import new version of our Rust based SDP parser<br />
<br />
{{Bug|1554284}} Logging in the SDP parser comparison code should log to error when unexpected results are found<br />
<br />
{{Bug|1556795}} RTCDataChannel.id logic needs an overhaul<br />
<br />
{{Bug|1556801}} Bug 1525554 broke RTCPeerConnection-ontrack.https.html and RTCPeerConnection-peerIdentity.https.html<br />
<br />
{{Bug|1557052}} RTCDataChannel-send.html has a new failure<br />
<br />
{{Bug|1558524}} Incoming mDNS candidates are ignored<br />
<br />
===Intermittent Test failures:===<br />
<br />
{{Bug|1306999}} Intermittent dom/media/test/test_streams_individual_pause.html | video1 video frame should not have updated since video1 paused - got "r0g0b0a0", expected "r0g255b0a255"<br />
<br />
{{Bug|1389983}} Intermittent dom/media/tests/mochitest/test_getUserMedia_addtrack_removetrack_events.html | assertion count 1 is more than expected 0 assertions<br />
<br />
{{Bug|1545247}} Intermittent dom/media/tests/mochitest/| <test-name>| application crashed [@ webrtc::MouseCursorMonitorX11::CaptureCursor()] after application terminated with exit code 11<br />
<br />
{{Bug|1556696}} Intermittent TVW /webrtc/RTCPeerConnection-mandatory-getStats.https.html | application crashed [@ mozilla::VideoFrameConverter::ProcessVideoFrame(RefPtr<mozilla::layers::Image> const&, mozilla::TimeStamp, mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUn<br />
<br />
{{Bug|1560251}} Intermittent /webaudio/the-audio-api/the-mediastreamaudiosourcenode-interface/mediastreamaudiosourcenode-routing.html | MediaStreamAudioSourceNode captures the right track. - assert_true: Other track seem to be routed to the AudioContext?<br />
<br />
{{Bug|1560454}} Intermittent /webaudio/the-audio-api/the-scriptprocessornode-interface/simple-input-output.html | X ScriptProcessor output[1152:]: Expected 1 for all values but found 41599 unexpected values:<br />
<br />
===Web Platform Tests:===<br />
<br />
{{Bug|1541974}} [wpt-sync] Sync PR 16213 - webrtc wpt: add test for ice disconnection<br />
<br />
{{Bug|1542946}} [wpt-sync] Sync PR 16277 - [RTCPeerConnection] Update negotiationneeded tests and expectations<br />
<br />
{{Bug|1543272}} [wpt-sync] Sync PR 16165 - Revise tests for datachannel ID handling<br />
<br />
{{Bug|1543281}} [wpt-sync] Sync PR 16299 - Fix WPTs access to ICE transport object from DTLS transport object.<br />
<br />
{{Bug|1545522}} [wpt-sync] Sync PR 16300 - Add WPT test for sending over-long messages.<br />
<br />
{{Bug|1545644}} [wpt-sync] Sync PR 16303 - Do not resume a suspended BaseAudioContext when AudioWorklet starts<br />
<br />
{{Bug|1545667}} [wpt-sync] Sync PR 16350 - [PeerConnection] Fix crash: Old state information surfaced in SLD/SRD.<br />
<br />
{{Bug|1545680}} [wpt-sync] Sync PR 16368 - Fix flakiness in audioworklet-suspend.https.html<br />
<br />
{{Bug|1545683}} [wpt-sync] Sync PR 16370 - Adjust test threshold for win10<br />
<br />
{{Bug|1547396}} [wpt-sync] Sync PR 16527 - MediaStreamAudioDestinationNode has no outputs<br />
<br />
{{Bug|1547450}} [wpt-sync] Sync PR 16531 - Fix include in no-media-call.html.<br />
<br />
{{Bug|1547576}} [wpt-sync] Sync PR 16542 - Test getFreguencyResponse for all BiquadFilter types<br />
<br />
{{Bug|1547637}} [wpt-sync] Sync PR 16432 - Same events at the same time don't replace each other<br />
<br />
{{Bug|1547900}} [wpt-sync] Sync PR 16560 - [OverconstrainedErrorEvent] Remove tests related files and code for the event.<br />
<br />
{{Bug|1549700}} [wpt-sync] Sync PR 16327 - Implement getRemoteCertificates on DTLSTransport<br />
<br />
{{Bug|1550237}} [wpt-sync] Sync PR 16373 - Always leave an event in the AudioParam timeline<br />
<br />
{{Bug|1550243}} [wpt-sync] Sync PR 16385 - Compute RTCPeerConnection iceConnectionState based on RTCIceTransport states.<br />
<br />
{{Bug|1550263}} [wpt-sync] Sync PR 16564 - Test multi-threaded ConvolverNode<br />
<br />
{{Bug|1550326}} [wpt-sync] Sync PR 16608 - Monkey-patched ICE connection "failed" state to "disconnected".<br />
<br />
{{Bug|1550359}} [wpt-sync] Sync PR 16664 - Use PFFFT for WebAudio FFT on Android<br />
<br />
{{Bug|1551003}} [wpt-sync] Sync PR 16729 - PeerConnection: Ensure only actively used ICE transports are considered<br />
<br />
{{Bug|1551005}} [wpt-sync] Sync PR 16736 - Add test for transports being updated correctly on bundling<br />
<br />
{{Bug|1551760}} [wpt-sync] Sync PR 16733 - Fix typo: ZeroOuttputProcessor<br />
<br />
{{Bug|1551762}} [wpt-sync] Sync PR 16732 - Add AudioWorklet test for disconnected inputs<br />
<br />
{{Bug|1551909}} [wpt-sync] Sync PR 16753 - Media Capabilities: enable API on workers.<br />
<br />
{{Bug|1552252}} [wpt-sync] Sync PR 16857 - Rebase max-message-size tests, and fix max-message-size in Blink<br />
<br />
{{Bug|1553133}} [wpt-sync] Sync PR 16934 - Add WPT test for sctp.maxChannels<br />
<br />
{{Bug|1553442}} [wpt-sync] Sync PR 16848 - [PeerConnection] Add RTCRtpSender.setStreams()<br />
<br />
{{Bug|1553677}} [wpt-sync] Sync PR 16961 - Add WPT test that verifies that reflexive candidates work.<br />
<br />
{{Bug|1553792}} [wpt-sync] Sync PR 16969 - webrtc wpt: check for ice connected or completed<br />
<br />
{{Bug|1553796}} [wpt-sync] Sync PR 16970 - Add RTP timestamp to RTCRtpReceiver::RTCRtpContributingSource<br />
<br />
{{Bug|1554087}} [wpt-sync] Sync PR 16993 - webrtc wpt: validate connectionstate goes to failed with wrong fingerprints<br />
<br />
{{Bug|1554204}} [wpt-sync] Sync PR 16997 - webrtc wpt: add addIceCandidate(new RTCIceCandidate({candidate, sdpMid})) test<br />
<br />
{{Bug|1554220}} [wpt-sync] Sync PR 16715 - Restore original tail-processing for ScriptProcessor and AudioWorklet<br />
<br />
{{Bug|1556796}} [wpt-sync] Sync PR 17169 - Add test for active processing of AudioBufferSourceNode<br />
<br />
{{Bug|1557426}} [wpt-sync] Sync PR 16815 - webrtc wpt: add missing pc.close during cleanup<br />
<br />
{{Bug|1558611}} [wpt-sync] Sync PR 17233 - Active Processing for ConvolverNode<br />
<br />
{{Bug|1558624}} [wpt-sync] Sync PR 17273 - ChannelMergerNode supports active processing</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/68&diff=1214439Media/WebRTC/ReleaseNotes/682019-07-01T19:46:42Z<p>Nohlmeier: Initial 68 release notes</p>
<hr />
<div>=Firefox 68 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 68:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2FM3UIz Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 68]<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1535010}} GMPDiskStorage.cpp and GMPServiceParent.cpp do unnecessary I/O syscalls to create directories during startup<br />
<br />
{{Bug|1544602}} Assertion failure: IsAtomic<bool>::value || NS_IsMainThread() (Non-atomic static pref 'media.gmp.insecure.allow' being accessed on background thread)<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1423253}} Kill NotifyPull for video tracks<br />
<br />
{{Bug|1538630}} Check a predicate when waiting on condition variables in GraphRunner<br />
<br />
{{Bug|1538640}} wait for GraphRunner thread shutdown<br />
<br />
{{Bug|1539045}} use AppendMessage() for ForceShutDown()<br />
<br />
{{Bug|1541290}} Crash on Web Speech API, (Speech Recognition portion) when feeding audio from the microphone<br />
<br />
{{Bug|1551855}} Add dedicated pref to enable GraphRunner also when audio worklets is disabled<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1532391}} Extend lifetime of MEDIA_RECORDER_RECORDING_DURATION, MEDIA_RECORDER_TRACK_ENCODER_INIT_TIMEOUT_TYPE, and SCALARS_MEDIARECORDER.RECORDING_COUNT telemetry probes<br />
<br />
{{Bug|1538113}} Fix warnings from bug 1423253 landing<br />
<br />
{{Bug|1538727}} Assertion failure: false (Not connected to this video track), at /builds/worker/workspace/build/src/dom/media/encoder/MediaEncoder.cpp:612<br />
<br />
{{Bug|1542685}} Crash in [@ mozilla::DriftCompensator::GetVideoTime]<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1531833}} Miscellaneous audio improvements on Windows and Android<br />
<br />
{{Bug|1533539}} Crash in [@ mozilla::CubebUtils::GetCubebContextUnlocked]<br />
<br />
{{Bug|1536605}} New warnings in audioipc with rust 1.34 due to ATOMIC_USIZE_INIT usage<br />
<br />
{{Bug|1541101}} crash in [@ audiounit_stream_start ]<br />
<br />
{{Bug|1541805}} Crash in [@ wasapi_init]<br />
<br />
{{Bug|1545279}} Crash in [@ monitor_device_notifications::notify]<br />
<br />
{{Bug|1546872}} Audio devices appear to only be enumerated on content process creation<br />
<br />
{{Bug|1552342}} Update libcubeb to pick up PR 507.<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1324548}} Implement MediaStreamTrackAudioSourceNode<br />
<br />
{{Bug|1375562}} Random actions cause a suspended AudioContext to resume.<br />
<br />
{{Bug|1445923}} WebAudio: Remove b2g dead code<br />
<br />
{{Bug|1456269}} Construct OscillatorNode with PeriodicWave fails<br />
<br />
{{Bug|1456962}} Update default channel attributes for DynamicsCompressorNode<br />
<br />
{{Bug|1477205}} Stop throwing error when creating AudioNodes on a closed context<br />
<br />
{{Bug|1528319}} Reloading after creating AudioContext causes InvalidStateError<br />
<br />
{{Bug|1530178}} [Web Audio API] copyFromChannel/copyToChannel error occurs<br />
<br />
{{Bug|1538470}} Crash in [@ mozilla::dom::AudioNode::AudioNode]<br />
<br />
{{Bug|1539522}} windows/aarch64 - dom/media/webaudio/test/test_audioContextSuspendResumeClose.html | Test timed out.<br />
<br />
{{Bug|1541311}} add support for AudioWorkletNode.numberOfInputs/Outputs<br />
<br />
{{Bug|1541467}} AddressSanitizer: SEGV /builds/worker/workspace/build/src/obj-firefox/dist/include/nsPIDOMWindow.h:517:38 in WindowID<br />
<br />
{{Bug|1549041}} audible is no longer fired with tabs.onUpdated after a tab is reloaded or a navigation happened<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1072388}} Cannot call createOffer/setLocalDescription in "have-local-offer" state, nor createAnswer/setRemoteDescription in "have-remote-offer" state<br />
<br />
{{Bug|1496359}} [Wayland] We need to implement PipeWire support<br />
<br />
{{Bug|1512281}} Add a pref to turn off RTCP in WebRTC to prevent regressions in which the local stats are used for the remote stats (again)<br />
<br />
{{Bug|1515716}} Refactor WebRTC RTP stats types<br />
<br />
{{Bug|1525323}} Assertion failure: false (A non-finished SourceMediaStream wasn't fed enough data by NotifyPull), at /builds/worker/workspace/build/src/dom/media/MediaStreamGraph.cpp:1254<br />
<br />
{{Bug|1531494}} Remove all non-implemented RTC stats dictionaries and fields from the WebIDL and the IPC code<br />
<br />
{{Bug|1532898}} Move WebRTC Video Telemetry recording to the VideoConduit<br />
<br />
{{Bug|1534466}} implement getSynchronizationSources for Video<br />
<br />
{{Bug|1535766}} Crash in [@ mozilla::WebrtcGmpVideoEncoder::Encoded]<br />
<br />
{{Bug|1537567}} windows/aarch64 - dom/media/tests/mochitest/test_peerConnection_setParameters_scaleResolutionDownBy.html | Error in test execution: Error: Timeout checkScaleDownBy@http://mochi.test:8888/tests/dom/media/tests/mochitest/test_peerConnection_setParameter<br />
<br />
{{Bug|1538359}} windows/aarch64 - Intermittent dom/media/tests/mochitest/test_getUserMedia_audioCapture.html | Error executing test: Error: Audio analysis timed out waitForAnalysisSuccess@https://example.com/tests/dom/media/tests/mochitest/head.js:196:63 ... @https://<br />
<br />
{{Bug|1538508}} FF 66.0 breaks H.264 basline constrained for WebRTC<br />
<br />
{{Bug|1539220}} Browser crashes when User tries to set avatar image with Camera option.<br />
<br />
{{Bug|1539809}} Assertion failure: !oldTransceiver.HasLevel() || !HasLevel() || oldTransceiver.GetLevel() == GetLevel(), at /builds/worker/workspace/build/src/media/webrtc/signaling/src/jsep/JsepTransceiver.h:61<br />
<br />
{{Bug|1541553}} Once a non-zero RTT is reported we are allowed to report RTTs of zero, we should do so<br />
<br />
{{Bug|1543938}} Perma LeakSanitizer | leak at alloc, __rdl_alloc, alloc::alloc::alloc, _$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Alloc$GT$::alloc<br />
<br />
{{Bug|1545090}} Assertion failure: !aTransportId.empty(), at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:393<br />
<br />
{{Bug|1547278}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/MediaTransportHandler.cpp:493<br />
<br />
{{Bug|1548097}} getContributingSources and getSynchronizationSources should return results sorted by playout time in descending order<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1335740}} Disable getUserMedia on non-secure origins<br />
<br />
{{Bug|1407415}} CamerasParent::StopVideoCapture() should try and avoid blocking the IPDL Background ("PBackground") thread<br />
<br />
{{Bug|1494675}} Remove the AllocationHandle API<br />
<br />
{{Bug|1497559}} Remove support for application capturing from our local copy of webrtc.org<br />
<br />
{{Bug|1506884}} Audit and document member access from threads in AudioConduit<br />
<br />
{{Bug|1528078}} Add telemetry for getUserMedia/getDisplayMedia/enumerateDevices secure vs insecure vs legacy<br />
<br />
{{Bug|1532576}} Fallback openh264 gmp source file is out of date<br />
<br />
{{Bug|1533071}} Enable openh264 plugin for win64-aarch64<br />
<br />
{{Bug|1534313}} Make the CubebDeviceEnumerator the only path to enumerate audio devices<br />
<br />
{{Bug|1540251}} Workaround unset OpenH264 NAL size in WebrtcGmpVideoEncoder::Encoded<br />
<br />
{{Bug|1540434}} Crash in [@ mozilla::GetUserMediaWindowListener::Remove]<br />
<br />
{{Bug|1546865}} getUserMedia({audio}) right after audioTrack.stop() fails with AbortError<br />
<br />
{{Bug|1549383}} Bustage on src/dom/media/systemservices/CamerasParent.cpp when Gecko 68 merges to Beta on 2019-05-07<br />
<br />
{{Bug|1549699}} Restore previous behaviour for audio devices on Windows and Android<br />
<br />
{{Bug|1551361}} Add more logging to the basic RTP extensions test<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1318167}} Add support for ICE end of candidate<br />
<br />
{{Bug|1518609}} Add Telemetry to determine when maxRetransmitTime in DataChannel init can be deprecated<br />
<br />
{{Bug|1535868}} Negotiating DTLS without SRTP extension results in random crashes<br />
<br />
{{Bug|1545827}} Get webrtc https proxy for TURN/TCP working with the socket process<br />
<br />
{{Bug|1546562}} ICE Restart fails when re-negotiating after ICE failure.<br />
<br />
{{Bug|1546691}} PeerConnectionObserver can spontaneously go away when network is lost<br />
<br />
{{Bug|1548272}} DataChannel::GetOrdered makes a racy access to DataChannel::mFlags<br />
<br />
{{Bug|1550540}} Crash with failed "@mozilla.org/peerconnection;1" instance<br />
<br />
{{Bug|1551702}} Hide DataChannelConnection ctor, set local port on construction<br />
<br />
{{Bug|1551740}} Assertion failure: !stream->obsolete, at media/mtransport/nricectx.cpp:420<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1225877}} Parse latest a=simulcast and a=rid<br />
<br />
{{Bug|1240897}} Firefox incorrectly generates "a=setup" line in answer when negotiated DTLS role is "passive".<br />
<br />
{{Bug|1288105}} Opus payload type mis-match results in broken audio<br />
<br />
{{Bug|1518672}} signalingstatechange event fires too soon.<br />
<br />
{{Bug|1529595}} Remove "token" from RTCIceCredentialType<br />
<br />
{{Bug|1529612}} RTCDataChannel.bufferedAmount is updated too soon after sending data<br />
<br />
{{Bug|1529635}} RTCIceCandidate constructor validation for sdpMid/sdpMLineIndex is not implemented<br />
<br />
{{Bug|1529695}} Implement RTCDataChannel.negotiated<br />
<br />
{{Bug|1529708}} RTCIceConnectionState-candidate-pair.https.html.ini needs to be removed<br />
<br />
{{Bug|1531078}} Fuzzy Date.now precision could cause tests to fail<br />
<br />
{{Bug|1531110}} Handle setLocalDescription (either offer or answer) with empty sdp string<br />
<br />
{{Bug|1531122}} JsepSessionImpl can erroneously compare a locally-created offer with a locally set answer<br />
<br />
{{Bug|1531803}} RTCTrackEvent-fire.html wpt wants ontrack events when a=msid is altered in remote description<br />
<br />
{{Bug|1531828}} RTCDTMFSender ontonechange events should stop if the transceiver stops sending<br />
<br />
{{Bug|1531894}} createDataChannel throws InvalidParameterError instead of TypeError if both maxRetransmits and maxPacketLifeTime are set<br />
<br />
{{Bug|1531904}} RTCPeerConnection.createDataChannel doesn't do a very good job of validating stream ids<br />
<br />
{{Bug|1531908}} RTCPeerConnection.createDataChannel does not check the length of the label<br />
<br />
{{Bug|1531910}} RTCPeerConnection.createDataChannel does not check the length of the protocol<br />
<br />
{{Bug|1531914}} RTCRtpTransceiver-stop.html wpt has a flawed test: "A stopped sendonly transceiver should generate an inactive m-section in the offer"<br />
<br />
{{Bug|1534673}} Stop paying attention to msid-semantic when parsing a=msid<br />
<br />
{{Bug|1534683}} webrtc/protocol/msid-parse.html uses malformed sdp<br />
<br />
{{Bug|1534692}} mock-idp.js does not seem to be working in the webrtc wpt<br />
<br />
{{Bug|1535410}} RTCPeerConnection.addIceCandidate validation for sdpMid/sdpMLineIndex is not implemented<br />
<br />
{{Bug|1535442}} Pay attention to ufrag when incorporating ICE candidates into SDP<br />
<br />
{{Bug|1536631}} Invalid modifications to SDP should result in an InvalidModificationError<br />
<br />
{{Bug|1540752}} Clean up cruft left in meta/webrtc/idlharness.https.window.js.ini<br />
<br />
{{Bug|1542021}} NS_ERROR_UNEXPECTED from PeerConnection.jsm in signaling rollback demo<br />
<br />
{{Bug|1542343}} RTCDataChannel-send.html disabled on aarch64<br />
<br />
{{Bug|1542345}} RTCRtpTransceiver.https.html disabled on aarch64<br />
<br />
{{Bug|1542907}} Should ignore multiple identical msids<br />
<br />
{{Bug|1543425}} Calling createOffer then transceiver.stop() on a just-added transceiver can cause nullptr crashes<br />
<br />
{{Bug|1543427}} Setting local offer, then transceiver.stop(), then local rollback, then a remote offer, then addIceCandidate can cause nullptr crashes<br />
<br />
{{Bug|1543429}} Rejecting the bundle tag can lead to JSEP errors<br />
<br />
{{Bug|1546396}} meta/webrtc/RTCPeerConnection-connectionState.https.html.ini needs to be updated<br />
<br />
{{Bug|1546402}} A bunch of new failing tests in webrtc/RTCPeerConnection-createDataChannel.html<br />
<br />
{{Bug|1546404}} A bunch of new failing tests in webrtc/RTCPeerConnection-ondatachannel.html<br />
<br />
{{Bug|1546406}} Need to update meta/webrtc/RTCSctpTransport-events.html.ini<br />
<br />
{{Bug|1546408}} simulcast-answer.html is flawed<br />
<br />
{{Bug|1546981}} webrtc/RTCPeerConnection-setLocalDescription-answer.html has a duplicate test-case<br />
<br />
===Intermittent Test failures:===<br />
<br />
{{Bug|1373123}} Intermittent dom/media/tests/mochitest/test_peerConnection_stats.html | Error in test execution: Error: Waiting for synced RTCP timed out after at least 15000ms waitForSyncedRtcp@http://mochi.test:8888/tests/dom/media/tests/mochitest/test_peerConnection_<br />
<br />
{{Bug|1407650}} Intermittent dom/media/test/test_mediarecorder_record_changing_video_resolution.html | Expected number of resize events - got 2, expected 3<br />
<br />
{{Bug|1504336}} Intermittent dom/media/tests/mochitest/test_peerConnection_simulcastOddResolution.html | Width 640 should be within 10% of 1280 for rid 'foo'<br />
<br />
{{Bug|1511542}} Intermittent GECKO(1060) | Assertion failure: NS_IsMainThread(), at /builds/worker/workspace/build/src/media/webrtc/signaling/src/media-conduit/VideoConduit.cpp:451<br />
<br />
{{Bug|1538232}} Intermittent GECKO(1801) | Assertion failure: !iter->IsNull(), at /builds/worker/workspace/build/src/dom/media/encoder/TrackEncoder.cpp:618<br />
<br />
{{Bug|1541030}} Intermittent Assertion failure: mStream (How come we don't have a stream here?), at /builds/worker/workspace/build/src/dom/media/webaudio/AudioNode.cpp:280<br />
<br />
===Web Platform Tests:===<br />
<br />
{{Bug|1504514}} [wpt-sync] Sync PR 13902 - An incoming offer can generate simulcast<br />
<br />
{{Bug|1531387}} [wpt-sync] Sync PR 15535 - Updates RTCIceTransport to standard state API.<br />
<br />
{{Bug|1532123}} [wpt-sync] Sync PR 15531 - Exposing RID attribute in RTCRtpCodingParameters.<br />
<br />
{{Bug|1532151}} [wpt-sync] Sync PR 15520 - Add support for AudioContextOptions sampleRate<br />
<br />
{{Bug|1532522}} [wpt-sync] Sync PR 15621 - Mark MediaDevices-related interfaces as SecureContext<br />
<br />
{{Bug|1534108}} [wpt-sync] Sync PR 15651 - RTCError: Make "message" optional and be the last argument.<br />
<br />
{{Bug|1534144}} [wpt-sync] Sync PR 15710 - ABSN with null buffer should output silence<br />
<br />
{{Bug|1535709}} [wpt-sync] Sync PR 15778 - Add SctpTransport API<br />
<br />
{{Bug|1535797}} [wpt-sync] Sync PR 15438 - Update RTCDataChannel bufferedamountlow implementation.<br />
<br />
{{Bug|1535850}} [wpt-sync] Sync PR 15790 - Use matching sample rate for the context as for the reference file<br />
<br />
{{Bug|1536651}} [wpt-sync] Sync PR 15911 - webrtc wpt: fix use of helper function<br />
<br />
{{Bug|1537584}} [wpt-sync] Sync PR 15945 - Create RTCIceTransport using a webrtc::IceTransportInterface object.<br />
<br />
{{Bug|1538312}} [wpt-sync] Sync PR 15957 - Revert "Create RTCIceTransport using a webrtc::IceTransportInterface object."<br />
<br />
{{Bug|1538392}} [wpt-sync] Sync PR 16017 - Reland "Create RTCIceTransport using a webrtc::IceTransportInterface object."<br />
<br />
{{Bug|1539655}} [wpt-sync] Sync PR 16046 - Include html WebIDL in idlharness for WebRTC<br />
<br />
{{Bug|1539679}} [wpt-sync] Sync PR 15925 - webrtc wpt: add connectionState tests<br />
<br />
{{Bug|1539996}} [wpt-sync] Sync PR 16092 - Adding WPT for accepting an offer to receive simulcast.<br />
<br />
{{Bug|1541338}} [wpt-sync] Sync PR 16131 - s/transciever/transceiver<br />
<br />
{{Bug|1541501}} [wpt-sync] Sync PR 16038 - Data channel tests updated by Lennart Grahl <lennart.grahl@gmail.com><br />
<br />
{{Bug|1541505}} [wpt-sync] Sync PR 16037 - Add RTCSctpTransport basic state tests<br />
<br />
{{Bug|1541509}} [wpt-sync] Sync PR 16042 - Replace generateOffer by generateAudioReceiveOnlyOffer<br />
<br />
{{Bug|1541549}} [wpt-sync] Sync PR 16053 - Revert "Reland "Create RTCIceTransport using a webrtc::IceTransportInterface object.""</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1210933Media/WebRTC/ReleaseNotes2019-04-19T23:56:41Z<p>Nohlmeier: Added 67 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/66|Firefox 67]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/66|Firefox 66]]<br />
* [[Media/WebRTC/ReleaseNotes/65|Firefox 65]]<br />
* [[Media/WebRTC/ReleaseNotes/64|Firefox 64]]<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/67&diff=1210932Media/WebRTC/ReleaseNotes/672019-04-19T23:54:29Z<p>Nohlmeier: Initial 67 release notes</p>
<hr />
<div>=Firefox 67 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 67:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2UHMPsG Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 67]<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1515210}} no open h.264 cisco codec for webrtc support for aarch64<br />
<br />
{{Bug|1532354}} Remove dead code from GMPServiceParent: ProcessPossiblePlugin and DeleteGMPServiceParent<br />
<br />
{{Bug|1532578}} Automatic installation of OpenH264 plugin is broken on Android on Firefox 67<br />
<br />
{{Bug|1532756}} Unable to load OpenH264 plugin on Android<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1473469}} Run MediaStreamGraph from a single thread<br />
<br />
{{Bug|1521577}} 1.5 seconds audio delay in appear.in<br />
<br />
{{Bug|1528436}} Perma TEST-UNEXPECTED-FAIL : xperf: File 'c:\windows\system32\dxgi.dll' (normalized from 'C:\Windows\System32\dxgi.dll') was accessed and we were not expecting it. DiskReadCount: 2, DiskWriteCount: 0, DiskReadBytes: 32768, DiskWriteBytes: 0<br />
<br />
{{Bug|1529399}} Remove unnecessary wrapper runnable from CreateDirectTaskDrainer() for stable state runnables<br />
<br />
{{Bug|1534238}} GraphRunner::Run can run before its constructor is finished<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1481244}} Crash in <name omitted> | mozilla::AudioStream::SetVolume<br />
<br />
{{Bug|1512445}} Import Windows AudioIPC changes and enable in build (but leave disabled via pref)<br />
<br />
{{Bug|1524818}} audioipc fails to build with nightly Rust: "error: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting"<br />
<br />
{{Bug|1527659}} Update cubeb from upstream to 3afc335<br />
<br />
{{Bug|1532645}} Update cubeb-backend to workaround https://github.com/rust-lang/rust/issues/58881<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1517324}} start blocked AudioContext when it's MediaStreamAudioSourceNode starts<br />
<br />
{{Bug|1519562}} AudioWorkletGlobalScope::RegisterProcessor: save descriptors in a map<br />
<br />
{{Bug|1524026}} Web audio didn't produce sound even if AudioContext is resumed from blocked<br />
<br />
{{Bug|1524087}} raptor-webaudio-firefox regression from clang 8<br />
<br />
{{Bug|1528876}} enable AudioWorklet in Nightly Web Audio wpt<br />
<br />
{{Bug|1533911}} windows/aarch64 - /webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html | X SNR (58.621820307137014 dB) is not greater than or equal to 85.586. Got 58.621820307137014. - assert_true: expected true got false<br />
<br />
{{Bug|1533912}} windows/aarch64 - /webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-scheduling.html | X With playbackRate 0.25: output0[18] is not close to 1.0499999999999998 within a relative error of 4.542e-8 (RelErr=0.07462636629740381).<br />
<br />
{{Bug|1535214}} run AudioWorklet for realtime AudioContext on MSG thread<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1231414}} RTCPeerConnection.addTrack should not require a stream to be passed<br />
<br />
{{Bug|1515699}} Remove webrtc ARM64 build workarounds after we switch to clang-cl<br />
<br />
{{Bug|1523795}} Perma Assertion failure: get() (dereferencing a UniquePtr containing nullptr), at /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/UniquePtr.h:302<br />
<br />
{{Bug|1525341}} Jitter stat for WebRTC audio is always zero<br />
<br />
{{Bug|1526512}} WebRTC RTCP stat roundTripTime is expressed in milliseconds not in (double) seconds<br />
<br />
{{Bug|1527526}} AudioConduit is reporting RTP send statistics when it should be reporting RTP receive statistics<br />
<br />
{{Bug|1527633}} Rename GetRTPStats to something more descriptive<br />
<br />
{{Bug|1530025}} Video only stats functions should be moved off of MediaConduitInterface and onto VideoSessionConduit<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1213453}} Implement MediaDeviceInfo.groupId<br />
<br />
{{Bug|1440601}} Tabsharing exposed on Fennec Nightly. Disable it.<br />
<br />
{{Bug|1519535}} Crash in CFPasteboardPromiseDataUsingBlock<br />
<br />
{{Bug|1520200}} web.ciscospark.com sometimes displays a zoomed-in upper-left corner of the video feed<br />
<br />
{{Bug|1522238}} Set frame timestamps in MediaPipeline<br />
<br />
{{Bug|1522488}} WebRTC: cannot switch microphone to another one without page refresh<br />
<br />
{{Bug|1522773}} Permafailing tier 2 Assertion failure: Request::mDisconnected, at /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/MozPromise.h:429<br />
<br />
{{Bug|1523412}} GetStreamCaps can fail with S_FALSE<br />
<br />
{{Bug|1523611}} Firefox 65+ isn't enforcing >=libvpx-1.7.0 requirement<br />
<br />
{{Bug|1523817}} Over 3s A/V sync delay when Firefox is the sender.<br />
<br />
{{Bug|1524145}} No longer able to send stereo audio when setting fmtp stereo=1 in the sdp<br />
<br />
{{Bug|1524648}} MediaEngineWebRTCMicrophoneSource::Deallocat asserts if another browser already has gUM on audio and video<br />
<br />
{{Bug|1525230}} Video cropped when resolution changes<br />
<br />
{{Bug|1530488}} Disable camera for aarch64 windows builds<br />
<br />
{{Bug|1535044}} Missing mozilla namespace in TestGroupId.cpp<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1490658}} Support RTCIceCandidate.usernameFragment<br />
<br />
{{Bug|1494311}} Make mtransport API more IPC friendly<br />
<br />
{{Bug|1510898}} Disable SRTP Sha1_32 cipher in Nightly builds<br />
<br />
{{Bug|1521879}} Use mtransport in a separate process, guarded by a pref<br />
<br />
{{Bug|1526477}} Firefox failing to nominate ICE pairs when interoping with an ice-lite endpoint<br />
<br />
{{Bug|1528352}} ICE failed with ICMP error (Windows only seems?)<br />
<br />
{{Bug|1530107}} Crash in [@ mozilla::PeerConnectionImpl::PeerConnectionImpl]<br />
<br />
{{Bug|1530815}} Crash in [@ r_assoc_fetch_bucket]<br />
<br />
{{Bug|979966}} Need better r_log diagnostics when no candidate pairs exist for a stream<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1370562}} PeerConnection stops functioning properly after receiving disabled m= line in SDP without a=inactive attribute<br />
<br />
{{Bug|1402912}} Put multiple a=msid in SDP when a track is attached to multiple streams<br />
<br />
{{Bug|1508685}} Local reoffer generated without mid when remote answer did not have mid<br />
<br />
{{Bug|1524642}} RTCRtpTransceiver wpt has been quietly disabled<br />
<br />
{{Bug|1525397}} Remove lsan suppressions from webrtc wpt<br />
<br />
{{Bug|1526733}} Replace TCP/TLS/RTP/SAVP with correct DTLS value<br />
<br />
{{Bug|1528323}} Make replaceTrack async even when transceiver is not associated<br />
<br />
{{Bug|1529403}} webrtc wpt meta files need to have links to bugs when tests are expected to fail, timeout, or are disabled<br />
<br />
{{Bug|1529693}} Figure out why RTCPeerConnection-createDataChannel.html is disabled on test-verify linux debug<br />
<br />
{{Bug|1529787}} Renew SDP parser telemetry<br />
<br />
{{Bug|1530435}} Preserve bug history of webrtc.sdp.parser_diff telemetry<br />
<br />
{{Bug|1531075}} createOffer with no transceivers fails<br />
<br />
{{Bug|1531084}} RTCPeerConnection.getStats needs to throw InvalidAccessError if a unique Receiver/Sender cannot be found<br />
<br />
{{Bug|1531094}} RTCPeerConnection-getStats.html asserts the presence of "inbound-rtp" and "outbound-rtp" stats when no RTP streams exist<br />
<br />
{{Bug|1531103}} RTCPeerConnection-onnegotiationneeded.html wpt has been quietly disabled<br />
<br />
{{Bug|1531143}} RTCPeerConnection-setLocalDescription.html wpt has a bad renegotiation test-case<br />
<br />
{{Bug|1531144}} Need to re-enable RTCPeerConnection-setRemoteDescription-answer.html wpt<br />
<br />
{{Bug|1531146}} Need to re-enable RTCPeerConnection-setRemoteDescription-offer.html wpt<br />
<br />
{{Bug|1531148}} RTCPeerConnection-setRemoteDescription-tracks.https.html wpt expects remote and local track ids to match<br />
<br />
{{Bug|1531156}} RTCPeerConnection.currentRemote/LocalDescription can have the wrong type<br />
<br />
{{Bug|1531439}} RTCPeerConnection-transceivers.https.html wpt expects remote and local track ids to match<br />
<br />
{{Bug|1531448}} RTCPeerConnection.close() should stop the transceivers<br />
<br />
{{Bug|1531472}} RTCRtpSender-replaceTrack.https.html wpt has been quietly disabled<br />
<br />
{{Bug|1531505}} Firefox is parsing and using source-level msid<br />
<br />
{{Bug|1531811}} Remove unused onremovestream from RTCPeerConnection.webidl<br />
<br />
{{Bug|1534607}} webrtc web-platform-test meta subdirectories need bug links in them for disabled tests<br />
<br />
{{Bug|1534734}} jsep-initial-offer.https.html is too strict<br />
<br />
{{Bug|1535100}} Rework RTCDTMFSender-ontonechange tests to use cumulative time when checking whether tonechange events are happening too early<br />
<br />
===Intermittent Test failures:===<br />
<br />
{{Bug|1412231}} Intermittent Assertion failure: mAudioContextOperation == AudioContextOperation::Close (We should be reviving the graph?), at /builds/worker/workspace/build/src/dom/media/MediaStreamGraph.cpp:4051<br />
<br />
{{Bug|1518378}} Intermittent Test Verify dom/media/webaudio/test/test_pannerNodeHRTFSymmetry.html | maxDifference: a, first bad index: b with test-data offset 0 and expected-data offset 0; corresponding values c and 0 --- differences - got d, expected +0 | Test timed out<br />
<br />
{{Bug|1518946}} Intermittent browser/base/content/test/webrtc/browser_devices_get_user_media_queue_request.js | microphone selector hidden -<br />
<br />
{{Bug|1522535}} Intermittent /webrtc/RTCPeerConnection-removeTrack.https.html | application crashed [@ libxul.so + 0xd1a437] (leaking the world)<br />
<br />
{{Bug|1533261}} Intermittent PID 9884 | Assertion failure: gInstance, at z:/build/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionCtx.cpp:159<br />
<br />
===Web Platform Tests:===<br />
<br />
{{Bug|1492316}} [wpt-sync] Sync PR 13061 - Sub-sample accurate start for ABSN<br />
<br />
{{Bug|1498465}} [wpt-sync] Sync PR 13477 - Compute azimuth correctly according to the spec<br />
<br />
{{Bug|1511573}} [wpt-sync] Sync PR 14317 - MSID information change should trigger related track events<br />
<br />
{{Bug|1513504}} [wpt-sync] Sync PR 14476 - Switch to new ICE state implementation<br />
<br />
{{Bug|1514670}} [wpt-sync] Sync PR 14554 - Added tests for missing MID field in sdp<br />
<br />
{{Bug|1515979}} [wpt-sync] Sync PR 14635 - Fix WebRTC test use of Resolver after PR 14417<br />
<br />
{{Bug|1517444}} [wpt-sync] Sync PR 14699 - Wiring for webrtc DtlsTransport events and state<br />
<br />
{{Bug|1517740}} [wpt-sync] Sync PR 14716 - Update tests that broke due to upstream changes of Resolver.<br />
<br />
{{Bug|1517942}} [wpt-sync] Sync PR 14730 - Fixing web platform tests for PeerConnection.setRemoteDescription().<br />
<br />
{{Bug|1518754}} [wpt-sync] Sync PR 14757 - RTCRtpReceiver.getSynchronizationSources() added.<br />
<br />
{{Bug|1526291}} [wpt-sync] Sync PR 15139 - Handle role conflict in the standalone RTCIceTransport<br />
<br />
{{Bug|1526301}} [wpt-sync] Sync PR 15005 - Update cached azimuth/elevation/cone gain<br />
<br />
{{Bug|1526316}} [wpt-sync] Sync PR 15009 - MediaCapabilities: Add "transmission" type.<br />
<br />
{{Bug|1526399}} [wpt-sync] Sync PR 15157 - Implement and ship RTCRtpEncodingParameters.scaleResolutionDownBy<br />
<br />
{{Bug|1526499}} [wpt-sync] Sync PR 15132 - Add support for all RTCIceCandidate fields.<br />
<br />
{{Bug|1526532}} [wpt-sync] Sync PR 14937 - Add RTCError, RTCErrorInit, RTCErrorDetailType and WPT coverage.<br />
<br />
{{Bug|1526599}} [wpt-sync] Sync PR 15215 - Use oversampling to compute frame number<br />
<br />
{{Bug|1526647}} [wpt-sync] Sync PR 15270 - Relax required SNR a bit<br />
<br />
{{Bug|1526801}} [wpt-sync] Sync PR 15292 - [PeerConnection] Fire signalingstatechange event at the right time<br />
<br />
{{Bug|1526860}} [wpt-sync] Sync PR 15214 - Round up to the next render quantum for suspend<br />
<br />
{{Bug|1527044}} [wpt-sync] Sync PR 15133 - Deflake RTCPeerConnection-track-stats.https.html.<br />
<br />
{{Bug|1529821}} [wpt-sync] Sync PR 15506 - Surface dtlsTransport via state-surfacer</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Oxidation&diff=1210893Oxidation2019-04-19T03:18:07Z<p>Nohlmeier: Added Why Rust for the SDP parser</p>
<hr />
<div>'''Oxidation''' is a project to integrate [https://www.rust-lang.org/ Rust] code in and around Firefox. <br />
<br />
Rust support has been required on all platforms since Firefox 54, and the first major Rust components were shipped in Firefox 56 (encoding_rs) and 57 (Stylo). Moving forward, the goal of Oxidation is to make it easier and more pleasant to use Rust in Firefox, and correspondingly to increase the amount of Rust code in Firefox.<br />
<br />
This page is intended to serve as the starting point for all matters relating to Rust code in Firefox: the what, the why, and the how.<br />
<br />
= Guidelines =<br />
<br />
The goal of this section is to provide some high-level guidelines about when Rust should be used. <br />
<br />
In summary, Rust should be used in the following situations.<br />
* For new components and completely rewritten components there should be a strong bias towards using Rust, especially for code around Firefox but not within Firefox.<br />
* For existing components it's more complicated!<br />
<br />
The following sections have more detail. Ultimately, choice of language for a code component is an engineering decision, with corresponding trade-offs, and is best decided by individual teams.<br />
<br />
== Rust Strengths ==<br />
<br />
Rust has the following strengths.<br />
* Memory safety, which prevents crashes and security vulnerabilities.<br />
* Thread safety, which enables improved performance via parallelism.<br />
* Nimbleness: the safety makes it easy to make significant changes quickly and with confidence.<br />
* Pleasant to use, particularly once a moderate level of experience has been reached.<br />
* A great community.<br />
<br />
== Rust Weaknesses ==<br />
<br />
One major issue with Rust relates to personnel.<br />
* There is a wide variety of experience levels within Mozilla, for both coding and reviewing.<br />
* Rust's learning curve is steep at the start, which can be intimidating.<br />
<br />
There are also technical challenges.<br />
* Compilation is slow.<br />
* Crossing the C++/Rust boundary can be difficult.<br />
<br />
See "Blockers and obstacles" below for more details about work being done to remedy these weaknesses.<br />
<br />
== Recommendations ==<br />
<br />
Therefore, Rust is most suitable in the following situations.<br />
* For components that are relatively standalone, with small and simple APIs.<br />
** This minimizes the C++/Rust boundary layer issues.<br />
** Infrastructure tools that are standalone programs are ideal.<br />
** Note that it's good software engineering practice to write loosely-coupled components anyway.<br />
* For components that process untrusted input, e.g. parsers.<br />
** Rust's memory safety is a big help here.<br />
** See the [http://spw17.langsec.org/papers/chifflier-parsing-in-2017.pdf "Writing parsers like it is 2017"] paper for lots of good details.<br />
* For components where parallelism can provide big performance wins.<br />
* For components where Servo has demonstrated success.<br />
<br />
In terms of where to keep Rust crates, there are three options.<br />
* Put the crate in mozilla-central or in Servo's repository.<br />
** For binding code, the decision to put it into Gecko or Servo can be difficult. The best choice depends on the details of the binding code in question.<br />
* Put the crate on [https://crates.io crates.io] and use Cargo to access it at build-time.<br />
** This is only suitable for highly general-purpose crates, such as <tt>smallvec</tt>.<br />
* Put the crate somewhere else (e.g. a separate GitHub repository), and regularly vendor it into mozilla-central.<br />
** This makes sense for pre-existing third-party crates that we choose to import.<br />
** Otherwise, this option is not recommended, because vendoring is something of a hassle.<br />
<br />
In general, erring on the side of tighter coupling is advisable. For example, the <tt>heapsize</tt> crate used in memory reporting was moved to crates.io, and then other crates came to depend on it. Later on it needed major API changes, and we ended up replacing it with a new crate called <tt>malloc_size_of</tt> (stored in Servo's repository) because that was easier than modifying <tt>heapsize</tt>.<br />
<br />
= Documentation and assistance =<br />
<br />
== Rust in general ==<br />
<br />
* The [https://www.rust-lang.org/learn Rust Documentation] page is the best place to start. In particular, the [https://doc.rust-lang.org/book/ The Rust Programming Language] provides a good overview.<br />
* [https://www.rust-lang.org/en-US/community.html The Rust Community] page lists IRC channels, forums, and other places where Rust assistance can be obtained.<br />
* [http://shop.oreilly.com/product/0636920040385.do Programming Rust: Fast, Safe Systems Development], by Jim Blandy & Jason Orendorff, is a detailed guide to the language.<br />
* [https://github.com/ctjhoa/rust-learning rust-learning] is a huge collection of assorted Rust resources.<br />
<br />
== Rust in Firefox ==<br />
<br />
* [https://developer.mozilla.org/en-US/Firefox/Building_Firefox_with_Rust_code Developer Documentation]<br />
* [https://firefox-source-docs.mozilla.org/build/buildsystem/rust.html Build System Documentation]<br />
* [[Rust_Update_Policy_for_Firefox|Rust Update Policy for Firefox]]<br />
* The #servo IRC channel contains lots of people who know about both Rust and Gecko.<br />
* Are you new to Rust and not sure if your Rust code could be improved? The following people can review Rust patches for Firefox from an "is this good Rust code?" point of view.<br />
** Alexis Beingessner (:gankro)<br />
** Josh Bowman-Matthews (:jdm)<br />
** Emilio Cobos Alvarez (:emilio)<br />
** Manish Goregaokar (:manishearth)<br />
** Nika Layzell (:mystor)<br />
** Cameron McCormack (:heycam)<br />
<br />
= Rust Components =<br />
<br />
== Within Firefox ==<br />
<br />
=== Completed ===<br />
<br />
* MP4 metadata parser: {{bug|1161350}} (shipped for desktop in Firefox 48)<br />
** '''Why Rust?''' Parses untrusted input, replaces libstagefright, a 3rd-party library with a history of security vulnerabilities.<br />
* Replace uconv with encoding-rs: {{bug|1261841}} (shipped in Firefox 56)<br />
* CSS style calculation (from Servo): {{bug|stylo}} (shipped for desktop in Firefox 57)<br />
** '''Why Rust?''' Code taken from Servo, uses parallel algorithms.<br />
* U2F HID backend: {{bug|1388843}} (shipped in Firefox 57)<br />
* XPIDL binding generator ({{bug|1293362}}) (shipped in Firefox 60)<br />
* New prefs parser: {{bug|1423840}} (shipped in Firefox 60)<br />
** '''Why Rust?''' Old parser needed replacing. Well-separated component, simple interface, parses untrusted input.<br />
* Audio remoting for Linux: {{bug|1434156}} (shipped in Firefox 60)<br />
<br />
=== In progress ===<br />
<br />
* WebRender: {{bug|webrender}}<br />
** '''Why Rust?''' Code taken from Servo, has high performance; Rust's memory and thread safety provides protection against complexity.<br />
* [https://github.com/CraneStation/cranelift/ cranelift, a low-level retargetable code generator]: {{bug|1469027}}<br />
** '''Why Rust?''' It's a new, well-separated component with a clear interface. Also, Rust is a great language for writing compilers, due to algebraic data types and pattern matching.<br />
* Audio remoting for Windows: {{bug|1432303}}<br />
* Audio remoting for Mac OS: {{bug|1425788}}<br />
* SDP parsing in WebRTC: {{bug|1365792}}<br />
** '''Why Rust?''' SDP is a complex text protocol and the existing parser in C has a history of security issues.<br />
* Linebreaking with xi-unicode: {{bug|1290022}} (last update late 2016)<br />
<br />
=== Proposed ===<br />
<br />
* Parallel layout<br />
** '''Why Rust?''' Existing code from Servo, parallel performance.<br />
* Replace the XML parser<br />
** '''Why Rust?''' Parses untrusted input, replaces expat, a 3rd-party library with a history of frequent security vulnerabilities.<br />
* WebMIDI: {{bug|1201593}}, {{bug|1201596}}, {{bug|1201598}}<br />
* Gamepad code: {{bug|1286699}}<br />
* Replace the telemetry module(?)<br />
** '''Why Rust?''' The existing C++ code has a history of threading problems.<br />
* Replace DOM serializers (XML, HTML for Save As.., plain text)<br />
** '''Why Rust?''' Need a rewrite anyway. Minor history of security vulnerabilities.<br />
* Image decoders?<br />
** '''Why Rust?''' Parsing untrusted input, some history of security vulnerabilities.<br />
* Expose Rust API to JS Debugger: {{bug|1263317}}<br />
* Generate Rust bindings for IPDL actors ({{bug|1379739}})<br />
* WebM demuxer: {{bug|1267492}}<br />
<br />
== Outside Firefox ==<br />
<br />
=== Completed ===<br />
<br />
* Testing<br />
** GeckoDriver, a WebDriver implementation for Firefox integrated via marionette protocol: {{bug|1340637}} ([https://github.com/mozilla/geckodriver/releases standalone releases])<br />
** [https://github.com/mozilla/grcov grcov], a tool to collect and aggregate code coverage data for multiple source files, used in Firefox CI.<br />
* Build system, etc.<br />
** [https://github.com/mozilla/sccache/ sccache], compiler cache with s3 storage. Caching C++ and Rust compilation, used in Firefox CI.<br />
** Parts of [https://github.com/mozsearch/mozsearch mozsearch], the backend for the [http://searchfox.org Searchfox] code indexing tool.<br />
** [https://github.com/luser/rust-makecab makecab], a reimplementation of Microsoft's makecab tool. Used to compress PDB files before uploading to symbol server in Firefox CI.<br />
* Application Services, server-side<br />
** [https://github.com/mozilla-services/autopush-rs autopush-rs] Rust async based websocket server that implements Mozilla's push/webpush/broadcast protocols.<br />
*** '''Why Rust?''' Concise code with the memory efficiency of C.<br />
** [https://github.com/mozilla-services/megaphone/ Megaphone], a real-time update broadcast server for Firefox.<br />
** [https://github.com/mozilla/fxa-email-service/ fxa_email_service], a service for sending email to Firefox Accounts.<br />
** [https://github.com/mozilla-services/pairsona/ pairsona], a tool to associate instances of firefox.<br />
* Application Services, client-side<br />
** [https://github.com/mozilla/application-services/tree/master/fxa-rust-client fxa-rust-client], a cross-compiled FxA Rust client that can work with Firefox Sync keys and more.<br />
<br />
=== In Progress ===<br />
<br />
* IPDL Parser: {{bug|1316754}}<br />
** '''Why Rust?''' Rust is a much better language than Python for writing compilers, due to strong typing, algebraic data types, and pattern matching.<br />
<br />
= Blockers and obstacles =<br />
<br />
This section lists areas where Rust integration could be improved.<br />
* Tracking bug: Make the developer experience for Firefox + Rust great: {{Bug|rust-great}}<br />
* Compile speed and memory usage<br />
** Incremental compilation ([https://github.com/rust-lang/rust/labels/A-incr-comp A-incr-comp issues], [https://github.com/rust-lang/rust/labels/WG-compiler-incr WG-compiler-incr issues])<br />
** [https://users.rust-lang.org/t/contract-opportunity-mozilla-distributed-compilation-cache-written-in-rust/13898 Distributed compilation cache]<br />
** [https://github.com/rust-lang/cargo/issues/1997 Artifact caching]?<br />
* Inlining between C++ and Rust would reduce cost of crossing the language barrier<br />
* Debugging: improve gdb and lldb support for Rust. The first step is to establish Rust language support in DWARF distinct from the existing C++ support.<br />
* Bindings/interop<br />
** Immature rust-bindgen and cbindgen tools for general cross-language support. Working aroudn clang bugs in different versions and on different platforms can be tricky.<br />
** No IPDL binding generator ({{bug|1379739}})<br />
** No WebIDL binding generator for DOM components (Servo must have something here?)<br />
* Remaining minor crash report issues {{bug|1348896}}<br />
* IDE/symbol lookup support?<br />
* Code coverage?<br />
* Profiling improvements? Especially for parallel code<br />
* Test integration?<br />
* Are Rust's Vec, HashSet/HashMap as performant as Gecko's equivalents? {{bug|1425770}}<br />
<br />
= Meetings =<br />
<br />
* [https://github.com/servo/servo/wiki/Orlando-Oxidation-2018 Orlando, Dec 2018]<br />
* [https://github.com/servo/servo/wiki/San-Francisco-Oxidation San Francisco, Jun 2018]<br />
* [https://github.com/servo/servo/wiki/Austin-Oxidation Austin, Dec 2017]<br />
* [https://github.com/servo/servo/wiki/Mozlando-Oxidation Mozlando, Dec 2015]<br />
* [https://github.com/servo/servo/wiki/Oxidation-2015-11-05 Oxidation, Nov 2015]<br />
* [https://github.com/servo/servo/wiki/Whistler-GFX#servo-in-gecko Whistler, June 2015]<br />
* [https://github.com/servo/servo/wiki/Mozlandia-Rust-In-Gecko Mozlandia, Dec 2014]<br />
<br />
<!--<br />
= People =<br />
<br />
* Tom Tromey: debugging<br />
* Boris Zbarsky: Stylo, Gecko<br />
* Nathan Froyd: build system, integration, Cargo<br />
* Ted Mielczarek: build system, crash reporting, releng<br />
* Emilio Cobos Álvarez: Stylo<br />
* Manish Goregaokar: Stylo, Rust internals<br />
* Kartikaya Gupta: gfx, WebRender<br />
* Bobby Holley: Stylo, Gecko<br />
* Nicholas Nethercote: coordination, rustc perf<br />
* Anthony Jones: coordination<br />
* Selena Deckelmann: coordination<br />
* Nick Fitzgerald: bindgen<br />
* Nika Layzell: bindings<br />
* Alex Crichton: rustc, Cargo<br />
* Michael Woerister: rustc<br />
* Mike Hommey: build system, allocator, Linux distros<br />
--></div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/Bugs&diff=1207820Media/Bugs2019-02-16T00:38:33Z<p>Nohlmeier: fixed typo</p>
<hr />
<div>=Media Bug Triage=<br />
All bugs related to audio and video in Firefox get triaged according to [https://mozilla.github.io/bug-handling/triage-bugzilla Mozilla bug handling policy]<br />
<br />
[https://mozilla.github.io/triage-center/?component=External+Software+Affecting+Firefox%3AOpenH264&component=Firefox+for+Android%3AAudio%2FVideo&component=Core%3AAudio%2FVideo&component=Core%3AAudio%2FVideo%3A+cubeb&component=Core%3AAudio%2FVideo%3A+GMP&component=Core%3AAudio%2FVideo%3A+MediaStreamGraph&component=Core%3AAudio%2FVideo%3A+Playback&component=Core%3AAudio%2FVideo%3A+Recording&component=Core%3AWeb+Audio&component=Core%3AWebRTC&component=Core%3AWebRTC%3A+Audio%2FVideo&component=Core%3AWebRTC%3A+Networking&component=Core%3AWebRTC%3A+Signaling Triage Center] is the tool to be used to identify bugs which need attention in the Media area.<br />
<br />
The person doing triage should take a look at the categories <br />
* "Triage decision needed"<br />
* "Requests > 5 days"<br />
If time permits it would be good if everyone could spend a few minutes to close some of the long standing bugs in the "NEEDINFO > 14 days" category so that we can drive down that number over time and category eventually becomes "triagable" again.<br />
<br />
<br />
=Old - Deprecated=<br />
<br />
The previous way of triaging Media bugs can be found at [[Media/Bugs/Deprecated]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/Bugs/Deprecated&diff=1207819Media/Bugs/Deprecated2019-02-16T00:33:40Z<p>Nohlmeier: Created this page to preserve old triage instructions in case it's helpful going foward</p>
<hr />
<div>These are the old links for reference purposes only. To be removed at some future point (except if there are links in here which are worth keeping).<br />
<br />
The current way of doing triage can be found at [[Media/Bugs]]<br />
<br />
===Media combined - Playback, WebRTC, WebAudio, Cubeb, MediaStreamGraph, Media Recording===<br />
* [https://mzl.la/2tkh1cS Un-triaged bugs]<br />
* [https://mzl.la/2M0udeU Unconfirmed bugs]<br />
* [https://mzl.la/2JXqkXs P1 bugs]<br />
* [https://crash-stats.mozilla.com/search/?proto_signature=~Webrtc&proto_signature=~webrtc&proto_signature=~jsep&proto_signature=~VideoConduit&proto_signature=~MediaRecorder&proto_signature=~MediaStreamGraph&proto_signature=~rtc%3A%3A&proto_signature=~cubeb&proto_signature=~MediaEncoder&proto_signature=~MediaEngine&proto_signature=~MediaManager&product=Firefox&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature Crashes in WebRTC, MediaStreamGraph, cubeb, MediaRecorder]<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~webrtc&proto_signature=~MediaStream&proto_signature=~Webrtc&proto_signature=~cubeb&proto_signature=~jsep&proto_signature=~VideoConduit&proto_signature=~AudioConduit&proto_signature=~MediaPipeline&proto_signature=~MediaEngine&proto_signature=~MediaRecord&proto_signature=~MediaManager&proto_signature=~rtc%3A%3A&product=Firefox&version=61.0a1&version=60.0a1&version=60.0b&version=59.0.1&version=59.0&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature Just in 59/60/61 (Note: URL will need updates occasionally)]<br />
* WebAudio: Note that this has to be split due to URL-length limits in the server<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~WebAudio&proto_signature=~AudioNode&proto_signature=~AudioContext&proto_signature=~BufferDecoder&proto_signature=~OscillatorNode&proto_signature=~AudioDestination&proto_signature=~ScriptProcessorNode&proto_signature=~DelayNode&proto_signature=~AudioScheduled&proto_signature=~CompressorNode&proto_signature=~AudioListener&proto_signature=~ConstantSource&proto_signature=~PannerNode&proto_signature=~FilterNode&product=Firefox&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature WebAudio crashes -- first half]<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~DelayBuffer&proto_signature=~GainNode&proto_signature=~ShaperNode&proto_signature=~AudioSourceNode&proto_signature=~AudioEvent&proto_signature=~AudioProcessing&proto_signature=~ConvolverNode&proto_signature=~AudioParam&proto_signature=~HRTF&proto_signature=~WebCore&proto_signature=~AudioBuffer&proto_signature=~AnalyserNode&product=Firefox&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature WebAudio crashes -- 2nd half]<br />
<br />
===Core::Audio/Video (Main Component) Queries===<br />
<br />
* [http://mzl.la/1h3slCq Un-triaged Audio/Video bugs]<br />
** Help us triage. Any bug found in this search needs to be moved to one of the other media components (shown below)<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Playback Queries===<br />
<br />
* [https://bugzilla.mozilla.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo&component=Audio%2FVideo%3A%20Playback&list_id=14006559&priority=--&product=Core&query_format=advanced&query_based_on=&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cshort_desc%2Cpriority%2Cchangeddate Untriaged Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P1&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P1 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P2&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P2 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P3&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P3 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P5&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P5 Playback bugs]<br />
<br />
===Core::Audio/Video - MediaStreamGraph Bugzilla Queries===<br />
<br />
* [http://mzl.la/1RC0aXs Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1RC0fug Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1RC0oxP Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1RBZUb6 Un-triaged MediaStreamGraph bugs]<br />
**Search based on Open MediaStreamGraph component bugs that have priority flag set]<br />
* [http://mzl.la/1RC02r8 Unconfirmed MediaStreamGraph bugs]<br />
**Search based on Open MediaStreamGraph component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Cubeb Bugzilla Queries===<br />
<br />
* [http://mzl.la/1HjtQrV Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1HjtUIj Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1HjtW2Y Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1Hju0Qg Un-triaged Cubeb bugs]<br />
**Search based on Open Cubeb component bugs that have priority flag set]<br />
* [http://mzl.la/1Hju7Lu Unconfirmed Cubeb bugs]<br />
**Search based on Open Cubeb component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - GMP (Gecko Media Plugin) Bugzilla Queries===<br />
<br />
* [http://mzl.la/1Q3CLBo Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1HjuaXK Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results <br />
* [http://mzl.la/1NceYey Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1Hjujui Un-triaged GMP bugs]<br />
**Search based on Open GMP component bugs that have priority flag set]<br />
* [http://mzl.la/1HjuoOK Unconfirmed GMP bugs]<br />
**Search based on Open GMP component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Recording Bugzilla Queries===<br />
<br />
* [http://mzl.la/1jXz16N Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1M0rudk Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1MTEvYw Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority. <br />
* [http://mzl.la/1iH134R Un-triaged Recording bugs]<br />
**Search based on Open Recording component bugs that have no Backlog flag being set]<br />
* [http://mzl.la/1M0qXZ2 Unconfirmed Recording bugs]<br />
**Search based on Open Recording component bugs that have no Backlog flag being set]<br />
<br />
<p> </p><br />
<br />
===Web Audio Bugzilla Queries===<br />
<br />
* [http://mzl.la/1MTEa8b Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1MTEbsR Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1MTEbJp Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority. <br />
* [http://mzl.la/1M0izbQ Un-triaged Web Audio bugs]<br />
**Search based on Open WebAudio component bugs that have no Backlog flag being set]<br />
* [http://mzl.la/1MTEggc Unconfirmed Web Audio bugs]<br />
**Search based on Open WebAudio component bugs that have no Backlog flag being set]<br />
<br />
<p> </p><br />
<br />
===WebRTC Bugzilla Queries===<br />
<br />
* [http://mzl.la/1S1PrWF Bugzilla Ranked "P1" - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1RPW8tq Bugzilla Ranked "P2" - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1Cos5lF Bugzilla Ranked "P3 to P5 - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1h2L6WT Un-triaged WebRTC bugs]<br />
**Search based on Open WebRTC bugs that have no Backlog flag set]<br />
* [http://mzl.la/1S1RN7L Unconfirmed WebRTC bugs]<br />
**Search based on Open WebRTC bugs that have no Backlog flag set]<br />
* [http://mzl.la/1MUt9bh Parking-lot bugs]<br />
** Search based on Open WebRTC bugs that have the parking-lot flag set]<br />
** NOTE: parking-lot bugs are the same as P5 bugs; we will not be dedicating time to fixing these. If you need a parking-lot bug fixed, please needinfo the triage owner of that bug about raising the priority.</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/Bugs&diff=1207818Media/Bugs2019-02-16T00:33:18Z<p>Nohlmeier: Added more instructions on how to triage and move old content out into a different site</p>
<hr />
<div>=Media Bug Triage=<br />
All bugs related to audio and video in Firefox get triaged according to [https://mozilla.github.io/bug-handling/triage-bugzilla Mozilla bug handling policy]<br />
<br />
[https://mozilla.github.io/triage-center/?component=External+Software+Affecting+Firefox%3AOpenH264&component=Firefox+for+Android%3AAudio%2FVideo&component=Core%3AAudio%2FVideo&component=Core%3AAudio%2FVideo%3A+cubeb&component=Core%3AAudio%2FVideo%3A+GMP&component=Core%3AAudio%2FVideo%3A+MediaStreamGraph&component=Core%3AAudio%2FVideo%3A+Playback&component=Core%3AAudio%2FVideo%3A+Recording&component=Core%3AWeb+Audio&component=Core%3AWebRTC&component=Core%3AWebRTC%3A+Audio%2FVideo&component=Core%3AWebRTC%3A+Networking&component=Core%3AWebRTC%3A+Signaling Triage Center] is the tool to be used to identify bugs which need attention in the Media area.<br />
<br />
The person doing triage should take a look at the categories <br />
* "Triage decision needed"<br />
* "Requests > 5 days"<br />
If time permits it would be good if everyone could spend a few minutes to close some of the long standing bugs in the "NEEDINFO > 14 days" category so that we can drive down that number over time and category eventually becomes "triable" again.<br />
<br />
<br />
=Old - Deprecated=<br />
<br />
The previous way of triaging Media bugs can be found at [[Media/Bugs/Deprecated]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/66&diff=1207343Media/WebRTC/ReleaseNotes/662019-02-06T23:00:22Z<p>Nohlmeier: Populated Noteworthy changes</p>
<hr />
<div>=Firefox 66 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 66:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2t8VHHy Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 66]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
* Legacy stats are gone now {{Bug|1328194}}<br />
<br />
* Implemented getDisplayMedia {{Bug|1321221}}<br />
<br />
* Fixed regression: Datachannel are allowed again without SRTP DTLS extension {{Bug|1510487}}<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1516669}} Convert gmp-clearkey to use Chromium ContentDecryptionModule_10 interface<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1513638}} DOMMediaStream::CountUnderlyingStreams, resolve a Promise while in stable state.<br />
<br />
{{Bug|1513973}} Audio input latency, possibly in MediaStreamGraph<br />
<br />
{{Bug|1518834}} Muting locally on appear.in freezes video<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1514016}} [ MediaRecorder ] New Pause/resume events in 65 fire synchronously, which is web incompatible.<br />
<br />
{{Bug|1515032}} Add test case for playing blob consisting of multiple file blobs<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1521791}} Update cubeb from upstream to 67d37c1<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1501709}} AudioWorkletGlobalScope::RegisterProcessor: check descriptors and convert them to an internal representation<br />
<br />
{{Bug|1511120}} Turn on the pref "media.autoplay.block-webaudio" on Nightly<br />
<br />
{{Bug|1512737}} Missing tests for HRTF<br />
<br />
{{Bug|1513722}} Run AudioWorklet from offline MSG thread<br />
<br />
{{Bug|1513733}} start blocked AudioContext when it's source media element starts<br />
<br />
{{Bug|1518352}} remove unnecessary WeakPtr support from PannerNode<br />
<br />
{{Bug|1518994}} Enable NEON in AudioNodeEngine on aarch64<br />
<br />
{{Bug|1519430}} Don't resume the context on user interaction or AudioScheduledSourceNode.start if the context was explicitely suspended<br />
<br />
{{Bug|1520021}} clang-cl should not use AudioNodeEngine's NEON workarounds<br />
<br />
{{Bug|1520457}} Adjust the message written in the console when the auto-play policy block an AudioContext<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1328194}} Remove legacy PeerConnection.getStats and associated legacy stats type<br />
<br />
{{Bug|1347070}} Add qpSum to local outbound RTCRTPStreamStats<br />
<br />
{{Bug|1421724}} browser_devices_get_user_media_screen.js consistently timing out in ccov builds<br />
<br />
{{Bug|1486038}} fix webrtc compilation errors on aarch64 windows<br />
<br />
{{Bug|1495446}} In getStats(), RTCP timestamps have the wrong epoch<br />
<br />
{{Bug|1515205}} Peer sees choppy motion/low frameRate in 1-1 call with Google Meet (regression)<br />
<br />
{{Bug|1515379}} mFramesDeliveredToEncoder stat is should be initialized in VideoConduit<br />
<br />
{{Bug|1515548}} Crash [@ webrtc::DesktopCaptureImpl::Run ] provoked by {frameRate: {max: 0}} (divide by zero)<br />
<br />
{{Bug|1517731}} Enable mochitests for maxRetransmits and maxPacketLifeTime<br />
<br />
{{Bug|1518735}} Make WebRTC PeerConnection stats mochitest easier to edit<br />
<br />
{{Bug|1519415}} Perma-failing tier2 dom/media/tests/mochitest/test_getUserMedia_permission.html | Test timed out.<br />
<br />
{{Bug|813063}} Missing LICENSE files etc.<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1321221}} Implement getDisplayMedia for screen capture to comply with spec changes<br />
<br />
{{Bug|1371741}} Disallow getUserMedia on nullprincipals (sandboxed iframes, top-level data urls).<br />
<br />
{{Bug|1439997}} Switch OS X video capture to new version of webrtc.org code<br />
<br />
{{Bug|1474376}} Make mediaSource legacy constraint values "screen" and "window" mean the same<br />
<br />
{{Bug|1497573}} Remove DesktopCapture::Stop<br />
<br />
{{Bug|1497610}} Upstream IsNewerOrSameTimestamp<br />
<br />
{{Bug|1497619}} Restore thread check in process_thread_impl.cc<br />
<br />
{{Bug|1497992}} Upstream or remove VideoReceiver::Reset<br />
<br />
{{Bug|1498253}} Remove _current_sync_offset from channel.h<br />
<br />
{{Bug|1512280}} Minor cleanups in MediaManager: shorten MediaManager::GetUserMedia(), better LOG macros<br />
<br />
{{Bug|1512459}} Remove webrtc sndio audio device<br />
<br />
{{Bug|1514241}} Chromium-specific code in HTMLMediaElement-captureStream WPT<br />
<br />
{{Bug|1515068}} Assertion failure: mSrcStreamPausedGraphTime == GRAPH_TIME_MAX, at /builds/worker/workspace/build/src/dom/html/HTMLMediaElement.cpp:4665<br />
<br />
{{Bug|1515527}} Log why GMPVideoEncoderParent::Encode fails<br />
<br />
{{Bug|1515873}} Crash in mozilla::MediaManager::GetBackend<br />
<br />
{{Bug|1517681}} Fix wpt MediaStream-default-feature-policy.https.html to comply with getUserMedia spec<br />
<br />
{{Bug|1518106}} WebRTC microphone input not working (regression)<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1510487}} DTLS without SRTP extension (for datachannel only) closes connection<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1502899}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/jsep/JsepSessionImpl.cpp:813<br />
<br />
{{Bug|1520289}} Replace TCP/TLS/RTP/SAVPF with correct DTLS value<br />
<br />
===Intermittent Test failures:===<br />
<br />
{{Bug|1517710}} Intermittent PROCESS-CRASH | Main app process exited normally | application crashed [@ mozilla::MediaStreamGraphImpl::AppendMessage(mozilla::UniquePtr<mozilla::ControlMessage, mozilla::DefaultDelete<mozilla::ControlMessage> >)]<br />
<br />
{{Bug|1517711}} Intermittent /feature-policy/reporting/microphone-report-only.https.html | application crashed [@ mozilla::detail::MutexImpl::lock()]<br />
<br />
===Web Platform Tests:===<br />
<br />
{{Bug|1503351}} [wpt-sync] Sync PR 13788 - Add RTCPeerConnection.connectionState and onconnectionstate.<br />
<br />
{{Bug|1507775}} [wpt-sync] Sync PR 14089 - Remove timeout in async_test for mediacapture-streams tests<br />
<br />
{{Bug|1507797}} [wpt-sync] Sync PR 14091 - Test getUserMedia non-applicable constraints are ignored<br />
<br />
{{Bug|1509173}} [wpt-sync] Sync PR 14170 - webrtc-wpt: use addTrack(track, stream) to increase firefox compat<br />
<br />
{{Bug|1509239}} [wpt-sync] Sync PR 14175 - Fix bad merge 'Merge branch 'master' into gecko/1498793'.<br />
<br />
{{Bug|1509310}} [wpt-sync] Sync PR 14181 - Media Capabilities: switch MediaCapabilitiesInfo to a dictionary.<br />
<br />
{{Bug|1509602}} [wpt-sync] Sync PR 14216 - Media Capabilities: implement Blink shell of encrypted media support.<br />
<br />
{{Bug|1509772}} [wpt-sync] Sync PR 14227 - Remove the timeout in async_test for webrtc and xhr tests<br />
<br />
{{Bug|1511578}} [wpt-sync] Sync PR 14319 - web platform tests for new networkPriority encoding parameter.<br />
<br />
{{Bug|1511855}} [wpt-sync] Sync PR 14341 - Create RTCDtlsTransport objects in the blink layer<br />
<br />
{{Bug|1512176}} [wpt-sync] Sync PR 14378 - Implement RTCRtpReceiver.getParameters()<br />
<br />
{{Bug|1512414}} [wpt-sync] Sync PR 14393 - Add WPT tests for correct parsing of msid<br />
<br />
{{Bug|1513230}} [wpt-sync] Sync PR 14462 - Reland "Create RTCDtlsTransport objects in the blink layer"<br />
<br />
{{Bug|1514125}} [wpt-sync] Sync PR 14516 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=192685<br />
<br />
{{Bug|1514432}} [wpt-sync] Sync PR 14530 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=192706</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1207342Media/WebRTC/ReleaseNotes2019-02-06T22:54:27Z<p>Nohlmeier: Added 66 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/66|Firefox 66]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/65|Firefox 65]]<br />
* [[Media/WebRTC/ReleaseNotes/64|Firefox 64]]<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/66&diff=1207341Media/WebRTC/ReleaseNotes/662019-02-06T22:53:54Z<p>Nohlmeier: Sorted WPT and Intermittents out</p>
<hr />
<div>=Firefox 66 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 66:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2t8VHHy Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 66]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1516669}} Convert gmp-clearkey to use Chromium ContentDecryptionModule_10 interface<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1513638}} DOMMediaStream::CountUnderlyingStreams, resolve a Promise while in stable state.<br />
<br />
{{Bug|1513973}} Audio input latency, possibly in MediaStreamGraph<br />
<br />
{{Bug|1518834}} Muting locally on appear.in freezes video<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1514016}} [ MediaRecorder ] New Pause/resume events in 65 fire synchronously, which is web incompatible.<br />
<br />
{{Bug|1515032}} Add test case for playing blob consisting of multiple file blobs<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1521791}} Update cubeb from upstream to 67d37c1<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1501709}} AudioWorkletGlobalScope::RegisterProcessor: check descriptors and convert them to an internal representation<br />
<br />
{{Bug|1511120}} Turn on the pref "media.autoplay.block-webaudio" on Nightly<br />
<br />
{{Bug|1512737}} Missing tests for HRTF<br />
<br />
{{Bug|1513722}} Run AudioWorklet from offline MSG thread<br />
<br />
{{Bug|1513733}} start blocked AudioContext when it's source media element starts<br />
<br />
{{Bug|1518352}} remove unnecessary WeakPtr support from PannerNode<br />
<br />
{{Bug|1518994}} Enable NEON in AudioNodeEngine on aarch64<br />
<br />
{{Bug|1519430}} Don't resume the context on user interaction or AudioScheduledSourceNode.start if the context was explicitely suspended<br />
<br />
{{Bug|1520021}} clang-cl should not use AudioNodeEngine's NEON workarounds<br />
<br />
{{Bug|1520457}} Adjust the message written in the console when the auto-play policy block an AudioContext<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1328194}} Remove legacy PeerConnection.getStats and associated legacy stats type<br />
<br />
{{Bug|1347070}} Add qpSum to local outbound RTCRTPStreamStats<br />
<br />
{{Bug|1421724}} browser_devices_get_user_media_screen.js consistently timing out in ccov builds<br />
<br />
{{Bug|1486038}} fix webrtc compilation errors on aarch64 windows<br />
<br />
{{Bug|1495446}} In getStats(), RTCP timestamps have the wrong epoch<br />
<br />
{{Bug|1515205}} Peer sees choppy motion/low frameRate in 1-1 call with Google Meet (regression)<br />
<br />
{{Bug|1515379}} mFramesDeliveredToEncoder stat is should be initialized in VideoConduit<br />
<br />
{{Bug|1515548}} Crash [@ webrtc::DesktopCaptureImpl::Run ] provoked by {frameRate: {max: 0}} (divide by zero)<br />
<br />
{{Bug|1517731}} Enable mochitests for maxRetransmits and maxPacketLifeTime<br />
<br />
{{Bug|1518735}} Make WebRTC PeerConnection stats mochitest easier to edit<br />
<br />
{{Bug|1519415}} Perma-failing tier2 dom/media/tests/mochitest/test_getUserMedia_permission.html | Test timed out.<br />
<br />
{{Bug|813063}} Missing LICENSE files etc.<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1321221}} Implement getDisplayMedia for screen capture to comply with spec changes<br />
<br />
{{Bug|1371741}} Disallow getUserMedia on nullprincipals (sandboxed iframes, top-level data urls).<br />
<br />
{{Bug|1439997}} Switch OS X video capture to new version of webrtc.org code<br />
<br />
{{Bug|1474376}} Make mediaSource legacy constraint values "screen" and "window" mean the same<br />
<br />
{{Bug|1497573}} Remove DesktopCapture::Stop<br />
<br />
{{Bug|1497610}} Upstream IsNewerOrSameTimestamp<br />
<br />
{{Bug|1497619}} Restore thread check in process_thread_impl.cc<br />
<br />
{{Bug|1497992}} Upstream or remove VideoReceiver::Reset<br />
<br />
{{Bug|1498253}} Remove _current_sync_offset from channel.h<br />
<br />
{{Bug|1512280}} Minor cleanups in MediaManager: shorten MediaManager::GetUserMedia(), better LOG macros<br />
<br />
{{Bug|1512459}} Remove webrtc sndio audio device<br />
<br />
{{Bug|1514241}} Chromium-specific code in HTMLMediaElement-captureStream WPT<br />
<br />
{{Bug|1515068}} Assertion failure: mSrcStreamPausedGraphTime == GRAPH_TIME_MAX, at /builds/worker/workspace/build/src/dom/html/HTMLMediaElement.cpp:4665<br />
<br />
{{Bug|1515527}} Log why GMPVideoEncoderParent::Encode fails<br />
<br />
{{Bug|1515873}} Crash in mozilla::MediaManager::GetBackend<br />
<br />
{{Bug|1517681}} Fix wpt MediaStream-default-feature-policy.https.html to comply with getUserMedia spec<br />
<br />
{{Bug|1518106}} WebRTC microphone input not working (regression)<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1510487}} DTLS without SRTP extension (for datachannel only) closes connection<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1502899}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/jsep/JsepSessionImpl.cpp:813<br />
<br />
{{Bug|1520289}} Replace TCP/TLS/RTP/SAVPF with correct DTLS value<br />
<br />
===Intermittent Test failures:===<br />
<br />
{{Bug|1517710}} Intermittent PROCESS-CRASH | Main app process exited normally | application crashed [@ mozilla::MediaStreamGraphImpl::AppendMessage(mozilla::UniquePtr<mozilla::ControlMessage, mozilla::DefaultDelete<mozilla::ControlMessage> >)]<br />
<br />
{{Bug|1517711}} Intermittent /feature-policy/reporting/microphone-report-only.https.html | application crashed [@ mozilla::detail::MutexImpl::lock()]<br />
<br />
===Web Platform Tests:===<br />
<br />
{{Bug|1503351}} [wpt-sync] Sync PR 13788 - Add RTCPeerConnection.connectionState and onconnectionstate.<br />
<br />
{{Bug|1507775}} [wpt-sync] Sync PR 14089 - Remove timeout in async_test for mediacapture-streams tests<br />
<br />
{{Bug|1507797}} [wpt-sync] Sync PR 14091 - Test getUserMedia non-applicable constraints are ignored<br />
<br />
{{Bug|1509173}} [wpt-sync] Sync PR 14170 - webrtc-wpt: use addTrack(track, stream) to increase firefox compat<br />
<br />
{{Bug|1509239}} [wpt-sync] Sync PR 14175 - Fix bad merge 'Merge branch 'master' into gecko/1498793'.<br />
<br />
{{Bug|1509310}} [wpt-sync] Sync PR 14181 - Media Capabilities: switch MediaCapabilitiesInfo to a dictionary.<br />
<br />
{{Bug|1509602}} [wpt-sync] Sync PR 14216 - Media Capabilities: implement Blink shell of encrypted media support.<br />
<br />
{{Bug|1509772}} [wpt-sync] Sync PR 14227 - Remove the timeout in async_test for webrtc and xhr tests<br />
<br />
{{Bug|1511578}} [wpt-sync] Sync PR 14319 - web platform tests for new networkPriority encoding parameter.<br />
<br />
{{Bug|1511855}} [wpt-sync] Sync PR 14341 - Create RTCDtlsTransport objects in the blink layer<br />
<br />
{{Bug|1512176}} [wpt-sync] Sync PR 14378 - Implement RTCRtpReceiver.getParameters()<br />
<br />
{{Bug|1512414}} [wpt-sync] Sync PR 14393 - Add WPT tests for correct parsing of msid<br />
<br />
{{Bug|1513230}} [wpt-sync] Sync PR 14462 - Reland "Create RTCDtlsTransport objects in the blink layer"<br />
<br />
{{Bug|1514125}} [wpt-sync] Sync PR 14516 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=192685<br />
<br />
{{Bug|1514432}} [wpt-sync] Sync PR 14530 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=192706</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/66&diff=1207340Media/WebRTC/ReleaseNotes/662019-02-06T22:42:43Z<p>Nohlmeier: Initial 66 release notes</p>
<hr />
<div>=Firefox 66 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 66:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2t8VHHy Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 66]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1516669}} Convert gmp-clearkey to use Chromium ContentDecryptionModule_10 interface<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1507775}} [wpt-sync] Sync PR 14089 - Remove timeout in async_test for mediacapture-streams tests<br />
<br />
{{Bug|1507797}} [wpt-sync] Sync PR 14091 - Test getUserMedia non-applicable constraints are ignored<br />
<br />
{{Bug|1513638}} DOMMediaStream::CountUnderlyingStreams, resolve a Promise while in stable state.<br />
<br />
{{Bug|1513973}} Audio input latency, possibly in MediaStreamGraph<br />
<br />
{{Bug|1517711}} Intermittent /feature-policy/reporting/microphone-report-only.https.html | application crashed [@ mozilla::detail::MutexImpl::lock()]<br />
<br />
{{Bug|1518834}} Muting locally on appear.in freezes video<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1514016}} [ MediaRecorder ] New Pause/resume events in 65 fire synchronously, which is web incompatible.<br />
<br />
{{Bug|1515032}} Add test case for playing blob consisting of multiple file blobs<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1521791}} Update cubeb from upstream to 67d37c1<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1501709}} AudioWorkletGlobalScope::RegisterProcessor: check descriptors and convert them to an internal representation<br />
<br />
{{Bug|1511120}} Turn on the pref "media.autoplay.block-webaudio" on Nightly<br />
<br />
{{Bug|1512737}} Missing tests for HRTF<br />
<br />
{{Bug|1513722}} Run AudioWorklet from offline MSG thread<br />
<br />
{{Bug|1513733}} start blocked AudioContext when it's source media element starts<br />
<br />
{{Bug|1518352}} remove unnecessary WeakPtr support from PannerNode<br />
<br />
{{Bug|1518994}} Enable NEON in AudioNodeEngine on aarch64<br />
<br />
{{Bug|1519430}} Don't resume the context on user interaction or AudioScheduledSourceNode.start if the context was explicitely suspended<br />
<br />
{{Bug|1520021}} clang-cl should not use AudioNodeEngine's NEON workarounds<br />
<br />
{{Bug|1520457}} Adjust the message written in the console when the auto-play policy block an AudioContext<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1328194}} Remove legacy PeerConnection.getStats and associated legacy stats type<br />
<br />
{{Bug|1347070}} Add qpSum to local outbound RTCRTPStreamStats<br />
<br />
{{Bug|1421724}} browser_devices_get_user_media_screen.js consistently timing out in ccov builds<br />
<br />
{{Bug|1486038}} fix webrtc compilation errors on aarch64 windows<br />
<br />
{{Bug|1495446}} In getStats(), RTCP timestamps have the wrong epoch<br />
<br />
{{Bug|1503351}} [wpt-sync] Sync PR 13788 - Add RTCPeerConnection.connectionState and onconnectionstate.<br />
<br />
{{Bug|1509173}} [wpt-sync] Sync PR 14170 - webrtc-wpt: use addTrack(track, stream) to increase firefox compat<br />
<br />
{{Bug|1509239}} [wpt-sync] Sync PR 14175 - Fix bad merge 'Merge branch 'master' into gecko/1498793'.<br />
<br />
{{Bug|1509772}} [wpt-sync] Sync PR 14227 - Remove the timeout in async_test for webrtc and xhr tests<br />
<br />
{{Bug|1511578}} [wpt-sync] Sync PR 14319 - web platform tests for new networkPriority encoding parameter.<br />
<br />
{{Bug|1511855}} [wpt-sync] Sync PR 14341 - Create RTCDtlsTransport objects in the blink layer<br />
<br />
{{Bug|1512176}} [wpt-sync] Sync PR 14378 - Implement RTCRtpReceiver.getParameters()<br />
<br />
{{Bug|1512414}} [wpt-sync] Sync PR 14393 - Add WPT tests for correct parsing of msid<br />
<br />
{{Bug|1513230}} [wpt-sync] Sync PR 14462 - Reland "Create RTCDtlsTransport objects in the blink layer"<br />
<br />
{{Bug|1514125}} [wpt-sync] Sync PR 14516 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=192685<br />
<br />
{{Bug|1514432}} [wpt-sync] Sync PR 14530 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=192706<br />
<br />
{{Bug|1515205}} Peer sees choppy motion/low frameRate in 1-1 call with Google Meet (regression)<br />
<br />
{{Bug|1515379}} mFramesDeliveredToEncoder stat is should be initialized in VideoConduit<br />
<br />
{{Bug|1515548}} Crash [@ webrtc::DesktopCaptureImpl::Run ] provoked by {frameRate: {max: 0}} (divide by zero)<br />
<br />
{{Bug|1517710}} Intermittent PROCESS-CRASH | Main app process exited normally | application crashed [@ mozilla::MediaStreamGraphImpl::AppendMessage(mozilla::UniquePtr<mozilla::ControlMessage, mozilla::DefaultDelete<mozilla::ControlMessage> >)]<br />
<br />
{{Bug|1517731}} Enable mochitests for maxRetransmits and maxPacketLifeTime<br />
<br />
{{Bug|1518735}} Make WebRTC PeerConnection stats mochitest easier to edit<br />
<br />
{{Bug|1519415}} Perma-failing tier2 dom/media/tests/mochitest/test_getUserMedia_permission.html | Test timed out.<br />
<br />
{{Bug|813063}} Missing LICENSE files etc.<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1321221}} Implement getDisplayMedia for screen capture to comply with spec changes<br />
<br />
{{Bug|1371741}} Disallow getUserMedia on nullprincipals (sandboxed iframes, top-level data urls).<br />
<br />
{{Bug|1439997}} Switch OS X video capture to new version of webrtc.org code<br />
<br />
{{Bug|1474376}} Make mediaSource legacy constraint values "screen" and "window" mean the same<br />
<br />
{{Bug|1497573}} Remove DesktopCapture::Stop<br />
<br />
{{Bug|1497610}} Upstream IsNewerOrSameTimestamp<br />
<br />
{{Bug|1497619}} Restore thread check in process_thread_impl.cc<br />
<br />
{{Bug|1497992}} Upstream or remove VideoReceiver::Reset<br />
<br />
{{Bug|1498253}} Remove _current_sync_offset from channel.h<br />
<br />
{{Bug|1509310}} [wpt-sync] Sync PR 14181 - Media Capabilities: switch MediaCapabilitiesInfo to a dictionary.<br />
<br />
{{Bug|1509602}} [wpt-sync] Sync PR 14216 - Media Capabilities: implement Blink shell of encrypted media support.<br />
<br />
{{Bug|1512280}} Minor cleanups in MediaManager: shorten MediaManager::GetUserMedia(), better LOG macros<br />
<br />
{{Bug|1512459}} Remove webrtc sndio audio device<br />
<br />
{{Bug|1514241}} Chromium-specific code in HTMLMediaElement-captureStream WPT<br />
<br />
{{Bug|1515068}} Assertion failure: mSrcStreamPausedGraphTime == GRAPH_TIME_MAX, at /builds/worker/workspace/build/src/dom/html/HTMLMediaElement.cpp:4665<br />
<br />
{{Bug|1515527}} Log why GMPVideoEncoderParent::Encode fails<br />
<br />
{{Bug|1515873}} Crash in mozilla::MediaManager::GetBackend<br />
<br />
{{Bug|1517681}} Fix wpt MediaStream-default-feature-policy.https.html to comply with getUserMedia spec<br />
<br />
{{Bug|1518106}} WebRTC microphone input not working (regression)<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1510487}} DTLS without SRTP extension (for datachannel only) closes connection<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1502899}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/jsep/JsepSessionImpl.cpp:813<br />
<br />
{{Bug|1520289}} Replace TCP/TLS/RTP/SAVPF with correct DTLS value</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1206619Media/WebRTC/ReleaseNotes2019-01-24T01:48:14Z<p>Nohlmeier: Added 65 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/65|Firefox 65]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/64|Firefox 64]]<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/65&diff=1206618Media/WebRTC/ReleaseNotes/652019-01-24T01:47:31Z<p>Nohlmeier: Added noteworthy changes</p>
<hr />
<div>=Firefox 65 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 65:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2RLkUH3 Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 65]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
* HTTP Proxy authentication for WebRTC TURN TCP is now supported {{Bug|1203503}}<br />
<br />
* Updated libwebrtc to version 64 {{Bug|1376873}}<br />
<br />
* Several stats got values got updated or deprecated to get closer to spec<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1423241}} Remove MediaStreamListener<br />
<br />
{{Bug|1504020}} [wpt-sync] Sync PR 13840 - Add support for resizeMode in MediaStreamTrack.getSettings()<br />
<br />
{{Bug|1504082}} [wpt-sync] Sync PR 13845 - Add extra utilities to content::media_constraints<br />
<br />
{{Bug|1504087}} [wpt-sync] Sync PR 13846 - Wire the resizeMode property to the constraints parsing mechanism.<br />
<br />
{{Bug|1504098}} [wpt-sync] Sync PR 13848 - Add support for the resizeMode constraint in getUserMedia()<br />
<br />
{{Bug|1504385}} [wpt-sync] Sync PR 13870 - Add support for resizeMode in [MediaStreamTrack|InputDeviceInfo].getCapabilities()<br />
<br />
{{Bug|1504769}} [wpt-sync] Sync PR 13927 - MediaDevices is SecureContext<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1453078}} Intermittent dom/media/test/test_mediarecorder_principals.html | assertion count 1 is more than expected 0 assertions<br />
<br />
{{Bug|1458538}} [ MediaRecorder ] The Pause and resume events don't work in Firefox<br />
<br />
{{Bug|1496377}} test_mediarecorder_state_transition.html is not being run in tests (and fails)<br />
<br />
{{Bug|1500210}} [wpt-sync] Sync PR 13602 - WPT test for https://github.com/w3c/mediacapture-record/pull/152<br />
<br />
{{Bug|1503518}} [wpt-sync] Sync PR 13805 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=190778<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1500109}} Crash in audiounit_create_unit<br />
<br />
{{Bug|1501148}} Refactor AudioIPC to make way for multiple OS backends (Windows support)<br />
<br />
{{Bug|1501605}} Update cubeb from upstream to 04d58b6<br />
<br />
{{Bug|1502165}} Crash in audiounit_get_devices_of_type<br />
<br />
{{Bug|1503240}} Print commits in update.sh script<br />
<br />
{{Bug|1504932}} replace README_Mozilla with moz.yaml<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1476514}} Preparation for running AudioWorklet from MSG thread<br />
<br />
{{Bug|1501619}} [wpt-sync] Sync PR 13698 - [run_web_tests] Check for extra baselines<br />
<br />
{{Bug|1502004}} Move AudioWorkletGlobalScope from dom/worklet to dom/media/webaudio<br />
<br />
{{Bug|1503132}} Run offline MSG thread even when not rendering<br />
<br />
{{Bug|1503236}} Move WorkletImpl reference from WorkletGlobalScope to classes inheriting WorkletGlobalScope<br />
<br />
{{Bug|1503950}} when more than two AudioParam events of the same type (e.g. setValueAtTime) are added at the same time, the latter events are ignored<br />
<br />
{{Bug|1504723}} Fix typo in enum name for some BiquadFilter and WaveShaper nodes<br />
<br />
{{Bug|1504982}} Add AutomationRate webidl definition<br />
<br />
{{Bug|1505726}} [wpt-sync] Sync PR 13980 - [media] Treat cross-origin redirect as TAINTED only for no-cors requests<br />
<br />
{{Bug|1508671}} Perma web platform /worklets/audio-worklet-csp.https.html when Gecko 65 merges to Beta on 2018-12-03<br />
<br />
{{Bug|1508905}} Allow dom/media/webaudio/blink to be reformatted with clang-format<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1227519}} Establish deprecation date for DHE cipher suites in WebRTC<br />
<br />
{{Bug|1324788}} Update RTCIceCandidateStats to spec<br />
<br />
{{Bug|1368816}} VideoCaptureExternalTest Rotation gtest is disabled<br />
<br />
{{Bug|1376873}} Update WebRTC code to webrtc.org stable branch 64<br />
<br />
{{Bug|1436993}} [wpt-sync] PR 9434 - Rename RTCIceCandidate ufrag field to usernameFragment<br />
<br />
{{Bug|1450733}} [wpt-sync] Sync PR 10271 - Bring RTCCertificate interface up to date with Candidate Recommendation<br />
<br />
{{Bug|1457129}} Intermittent /webrtc/RTCPeerConnection-track-stats.https.html | RTCPeerConnection.getStats(receivingTrack) is the same as RTCRtpReceiver.getStats() - assert_true: expected true got false<br />
<br />
{{Bug|1470067}} Remove PtrVector<br />
<br />
{{Bug|1487278}} Intermittent PID 11358 | Assertion failure: transceiver->IsAssociated() (ICE candidate was gathered before the transceiver was associated! This should never happen.) at /builds/worker/workspace/build/src/media/webrtc/signaling/src/jsep/JsepSessionImpl.cpp<br />
<br />
{{Bug|1489040}} WebRTC ICE candidate stats ipAddress needs to be renamed<br />
<br />
{{Bug|1503023}} An invalid state error can arise when a PeerConnection is closed before its certificates are initialized<br />
<br />
{{Bug|1503363}} Don't assume that all WINNT targets support sse2<br />
<br />
{{Bug|1503444}} [wpt-sync] Sync PR 13798 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=191077<br />
<br />
{{Bug|1504383}} [wpt-sync] Sync PR 13869 - Check for AudioContext to enable generating audio tracks with it<br />
<br />
{{Bug|1504496}} [wpt-sync] Sync PR 13892 - Move peerIdentity test from webrtc-pc to webrtc-identity<br />
<br />
{{Bug|1504498}} [wpt-sync] Sync PR 13893 - Rename generateOffer to generateDataChannelOffer and remove use of legacy optionsRename generateOffer to generateDataChannelOffer and remove use of legacy options<br />
<br />
{{Bug|1504515}} [wpt-sync] Sync PR 13903 - Move RTCRtpTransceiver tests related to OfferToReceive legacy options to webrtc/legacy<br />
<br />
{{Bug|1504517}} [wpt-sync] Sync PR 13904 - Remove unneeded setting of onaddstream<br />
<br />
{{Bug|1504520}} [wpt-sync] Sync PR 13907 - Let sender sends some media data so that getStats produce some outbou…<br />
<br />
{{Bug|1504561}} [wpt-sync] Sync PR 13910 - Fix typo in RTCRtpReceiver-getParameters.html<br />
<br />
{{Bug|1504604}} [wpt-sync] Sync PR 13914 - Fix RTCRtpTransceiver direction tests<br />
<br />
{{Bug|1504616}} [wpt-sync] Sync PR 13915 - webrtc: rename DTLSTransport.transport to .iceTransport<br />
<br />
{{Bug|1504629}} [wpt-sync] Sync PR 13916 - Update replaceTrack after removeTrack tests<br />
<br />
{{Bug|1504855}} [wpt-sync] Sync PR 13931 - Implement RTCQuicStream.write()<br />
<br />
{{Bug|1504933}} [wpt-sync] Sync PR 13940 - Update RTCPeerConnection-setRemoteDescription-tracks.https.html as MediaStream has no constraint on the order of the track<br />
<br />
{{Bug|1505067}} [wpt-sync] Sync PR 13950 - Fix and re-enable simplecall-no-ssrcs.https.html.<br />
<br />
{{Bug|1505731}} [wpt-sync] Sync PR 13981 - Fix typo in RTCPeerConnection-setLocalDescription-offer.html<br />
<br />
{{Bug|1506644}} -msse2 flag slips in again in non-x86 builds<br />
<br />
{{Bug|1507039}} [wpt-sync] Sync PR 14043 - Remove display of stats by default in webrtc/get-stats.html<br />
<br />
{{Bug|1507064}} [wpt-sync] Sync PR 14046 - Implement RTCQuicStream.waitForWriteBufferedAmountBelow()<br />
<br />
{{Bug|1507216}} Crash in mozalloc_abort | abort | webrtc::internal::Call::~Call<br />
<br />
{{Bug|1507228}} [wpt-sync] Sync PR 14054 - webrtc: add test for legacy default stream<br />
<br />
{{Bug|1507977}} [wpt-sync] Sync PR 14098 - Implement RTCQuicStream.readInto()<br />
<br />
{{Bug|1508007}} [wpt-sync] Sync PR 14103 - Implement RTCQuicStream.waitForReadable()<br />
<br />
{{Bug|1508224}} [wpt-sync] Sync PR 14122 - Prevent timeout when remote stats are not implemented<br />
<br />
{{Bug|1512517}} Update WebRTC stat deprecation warnings<br />
<br />
{{Bug|979649}} RTCP timestamps transmitted from Windows XP have significant clock drift<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1274392}} Make echoCancellation:false flip the other audio processing defaults to false<br />
<br />
{{Bug|1406941}} Write unittest for configuring AudioConduit<br />
<br />
{{Bug|1411681}} H.264 High 4.0 profile streams no longer display when using WebRTC (regression)<br />
<br />
{{Bug|1425277}} Have a unified MediaDataEncoder API<br />
<br />
{{Bug|1475209}} Get rid of EnumDevResolver in MediaDevices.cpp by using a promise/mozpromise/pledge solution directly.<br />
<br />
{{Bug|1482150}} Expand CubebDeviceEnumerator to enumerate output devices<br />
<br />
{{Bug|1492479}} Have MediaManager::GetUserMedia() return a MozPromise<br />
<br />
{{Bug|1497175}} Replace all remaining uses of Pledge with MozPromise, and remove Pledge (cleanup)<br />
<br />
{{Bug|1497552}} Remove support for 44100 Hz in dtmf_tone_generator<br />
<br />
{{Bug|1497577}} Upstream code to detect zero size windows in desktop capture<br />
<br />
{{Bug|1497602}} Enable DirectX screen capturer on Windows<br />
<br />
{{Bug|1497606}} Remove disable_composition_ in screen_capturer_win_gdi<br />
<br />
{{Bug|1497951}} Have VP8/VP9 decoder wrapper to detect change of stream content<br />
<br />
{{Bug|1497974}} Upstream changes to jitter_buffer.cc<br />
<br />
{{Bug|1498205}} Upstream or remove PlatformUIThread<br />
<br />
{{Bug|1502172}} Crash in video capture on Win 10<br />
<br />
{{Bug|1502313}} Adding video to Facebook audio call on Linux fails even if the permission is granted<br />
<br />
{{Bug|1502927}} Remove MediaStream.currentTime<br />
<br />
{{Bug|1503536}} Call ApplySettings in MediaEngineWebRTCMicrophoneSource::Start<br />
<br />
{{Bug|1505284}} Use H264 MediaDataDecoder for webrtc calls<br />
<br />
{{Bug|1508677}} Use VP8/VP9 MediaDataDecoder for webrtc call<br />
<br />
{{Bug|1509548}} Reenable the start time assertion in StreamTracks.h<br />
<br />
{{Bug|1509842}} Re-enable AGC by default<br />
<br />
{{Bug|1509994}} Move code from video_engine from media/webrtc/trunk/webrtc to elsewhere in tree<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1194010}} ICE TCP might connect to any port<br />
<br />
{{Bug|1203503}} ICE/TURN/TCP via an HTTP-Proxy does not support Authentication<br />
<br />
{{Bug|1494301}} Write a single API surface for mtransport<br />
<br />
{{Bug|1494312}} Make mtransport API entirely async<br />
<br />
{{Bug|1502766}} Firefox 64 does not respect the RTCConfiguration iceTransportPolicy<br />
<br />
{{Bug|1505733}} Gather DTLS versions used in WebRTC<br />
<br />
{{Bug|1507700}} interop with chrome/mdns candidates is broken<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1456417}} addIceCandidate without sdpMLineIndex incorrectly assumes sdpMLineIndex = 0<br />
<br />
{{Bug|1496245}} RTCPeerConnection createOffer generates malformed sdp after rollback<br />
<br />
{{Bug|1498793}} Accept a=msid without track id<br />
<br />
{{Bug|1504252}} Remove dead code in signaling/src/media<br />
<br />
{{Bug|1507413}} Only 32 transceivers active simultaneously</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/65&diff=1206617Media/WebRTC/ReleaseNotes/652019-01-24T01:41:35Z<p>Nohlmeier: Initial 65 release notes</p>
<hr />
<div>=Firefox 65 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 65:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2RLkUH3 Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 65]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1423241}} Remove MediaStreamListener<br />
<br />
{{Bug|1504020}} [wpt-sync] Sync PR 13840 - Add support for resizeMode in MediaStreamTrack.getSettings()<br />
<br />
{{Bug|1504082}} [wpt-sync] Sync PR 13845 - Add extra utilities to content::media_constraints<br />
<br />
{{Bug|1504087}} [wpt-sync] Sync PR 13846 - Wire the resizeMode property to the constraints parsing mechanism.<br />
<br />
{{Bug|1504098}} [wpt-sync] Sync PR 13848 - Add support for the resizeMode constraint in getUserMedia()<br />
<br />
{{Bug|1504385}} [wpt-sync] Sync PR 13870 - Add support for resizeMode in [MediaStreamTrack|InputDeviceInfo].getCapabilities()<br />
<br />
{{Bug|1504769}} [wpt-sync] Sync PR 13927 - MediaDevices is SecureContext<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1453078}} Intermittent dom/media/test/test_mediarecorder_principals.html | assertion count 1 is more than expected 0 assertions<br />
<br />
{{Bug|1458538}} [ MediaRecorder ] The Pause and resume events don't work in Firefox<br />
<br />
{{Bug|1496377}} test_mediarecorder_state_transition.html is not being run in tests (and fails)<br />
<br />
{{Bug|1500210}} [wpt-sync] Sync PR 13602 - WPT test for https://github.com/w3c/mediacapture-record/pull/152<br />
<br />
{{Bug|1503518}} [wpt-sync] Sync PR 13805 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=190778<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1500109}} Crash in audiounit_create_unit<br />
<br />
{{Bug|1501148}} Refactor AudioIPC to make way for multiple OS backends (Windows support)<br />
<br />
{{Bug|1501605}} Update cubeb from upstream to 04d58b6<br />
<br />
{{Bug|1502165}} Crash in audiounit_get_devices_of_type<br />
<br />
{{Bug|1503240}} Print commits in update.sh script<br />
<br />
{{Bug|1504932}} replace README_Mozilla with moz.yaml<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1476514}} Preparation for running AudioWorklet from MSG thread<br />
<br />
{{Bug|1501619}} [wpt-sync] Sync PR 13698 - [run_web_tests] Check for extra baselines<br />
<br />
{{Bug|1502004}} Move AudioWorkletGlobalScope from dom/worklet to dom/media/webaudio<br />
<br />
{{Bug|1503132}} Run offline MSG thread even when not rendering<br />
<br />
{{Bug|1503236}} Move WorkletImpl reference from WorkletGlobalScope to classes inheriting WorkletGlobalScope<br />
<br />
{{Bug|1503950}} when more than two AudioParam events of the same type (e.g. setValueAtTime) are added at the same time, the latter events are ignored<br />
<br />
{{Bug|1504723}} Fix typo in enum name for some BiquadFilter and WaveShaper nodes<br />
<br />
{{Bug|1504982}} Add AutomationRate webidl definition<br />
<br />
{{Bug|1505726}} [wpt-sync] Sync PR 13980 - [media] Treat cross-origin redirect as TAINTED only for no-cors requests<br />
<br />
{{Bug|1508671}} Perma web platform /worklets/audio-worklet-csp.https.html when Gecko 65 merges to Beta on 2018-12-03<br />
<br />
{{Bug|1508905}} Allow dom/media/webaudio/blink to be reformatted with clang-format<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1227519}} Establish deprecation date for DHE cipher suites in WebRTC<br />
<br />
{{Bug|1324788}} Update RTCIceCandidateStats to spec<br />
<br />
{{Bug|1368816}} VideoCaptureExternalTest Rotation gtest is disabled<br />
<br />
{{Bug|1376873}} Update WebRTC code to webrtc.org stable branch 64<br />
<br />
{{Bug|1436993}} [wpt-sync] PR 9434 - Rename RTCIceCandidate ufrag field to usernameFragment<br />
<br />
{{Bug|1450733}} [wpt-sync] Sync PR 10271 - Bring RTCCertificate interface up to date with Candidate Recommendation<br />
<br />
{{Bug|1457129}} Intermittent /webrtc/RTCPeerConnection-track-stats.https.html | RTCPeerConnection.getStats(receivingTrack) is the same as RTCRtpReceiver.getStats() - assert_true: expected true got false<br />
<br />
{{Bug|1470067}} Remove PtrVector<br />
<br />
{{Bug|1487278}} Intermittent PID 11358 | Assertion failure: transceiver->IsAssociated() (ICE candidate was gathered before the transceiver was associated! This should never happen.) at /builds/worker/workspace/build/src/media/webrtc/signaling/src/jsep/JsepSessionImpl.cpp<br />
<br />
{{Bug|1489040}} WebRTC ICE candidate stats ipAddress needs to be renamed<br />
<br />
{{Bug|1503023}} An invalid state error can arise when a PeerConnection is closed before its certificates are initialized<br />
<br />
{{Bug|1503363}} Don't assume that all WINNT targets support sse2<br />
<br />
{{Bug|1503444}} [wpt-sync] Sync PR 13798 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=191077<br />
<br />
{{Bug|1504383}} [wpt-sync] Sync PR 13869 - Check for AudioContext to enable generating audio tracks with it<br />
<br />
{{Bug|1504496}} [wpt-sync] Sync PR 13892 - Move peerIdentity test from webrtc-pc to webrtc-identity<br />
<br />
{{Bug|1504498}} [wpt-sync] Sync PR 13893 - Rename generateOffer to generateDataChannelOffer and remove use of legacy optionsRename generateOffer to generateDataChannelOffer and remove use of legacy options<br />
<br />
{{Bug|1504515}} [wpt-sync] Sync PR 13903 - Move RTCRtpTransceiver tests related to OfferToReceive legacy options to webrtc/legacy<br />
<br />
{{Bug|1504517}} [wpt-sync] Sync PR 13904 - Remove unneeded setting of onaddstream<br />
<br />
{{Bug|1504520}} [wpt-sync] Sync PR 13907 - Let sender sends some media data so that getStats produce some outbou…<br />
<br />
{{Bug|1504561}} [wpt-sync] Sync PR 13910 - Fix typo in RTCRtpReceiver-getParameters.html<br />
<br />
{{Bug|1504604}} [wpt-sync] Sync PR 13914 - Fix RTCRtpTransceiver direction tests<br />
<br />
{{Bug|1504616}} [wpt-sync] Sync PR 13915 - webrtc: rename DTLSTransport.transport to .iceTransport<br />
<br />
{{Bug|1504629}} [wpt-sync] Sync PR 13916 - Update replaceTrack after removeTrack tests<br />
<br />
{{Bug|1504855}} [wpt-sync] Sync PR 13931 - Implement RTCQuicStream.write()<br />
<br />
{{Bug|1504933}} [wpt-sync] Sync PR 13940 - Update RTCPeerConnection-setRemoteDescription-tracks.https.html as MediaStream has no constraint on the order of the track<br />
<br />
{{Bug|1505067}} [wpt-sync] Sync PR 13950 - Fix and re-enable simplecall-no-ssrcs.https.html.<br />
<br />
{{Bug|1505731}} [wpt-sync] Sync PR 13981 - Fix typo in RTCPeerConnection-setLocalDescription-offer.html<br />
<br />
{{Bug|1506644}} -msse2 flag slips in again in non-x86 builds<br />
<br />
{{Bug|1507039}} [wpt-sync] Sync PR 14043 - Remove display of stats by default in webrtc/get-stats.html<br />
<br />
{{Bug|1507064}} [wpt-sync] Sync PR 14046 - Implement RTCQuicStream.waitForWriteBufferedAmountBelow()<br />
<br />
{{Bug|1507216}} Crash in mozalloc_abort | abort | webrtc::internal::Call::~Call<br />
<br />
{{Bug|1507228}} [wpt-sync] Sync PR 14054 - webrtc: add test for legacy default stream<br />
<br />
{{Bug|1507977}} [wpt-sync] Sync PR 14098 - Implement RTCQuicStream.readInto()<br />
<br />
{{Bug|1508007}} [wpt-sync] Sync PR 14103 - Implement RTCQuicStream.waitForReadable()<br />
<br />
{{Bug|1508224}} [wpt-sync] Sync PR 14122 - Prevent timeout when remote stats are not implemented<br />
<br />
{{Bug|1512517}} Update WebRTC stat deprecation warnings<br />
<br />
{{Bug|979649}} RTCP timestamps transmitted from Windows XP have significant clock drift<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1274392}} Make echoCancellation:false flip the other audio processing defaults to false<br />
<br />
{{Bug|1406941}} Write unittest for configuring AudioConduit<br />
<br />
{{Bug|1411681}} H.264 High 4.0 profile streams no longer display when using WebRTC (regression)<br />
<br />
{{Bug|1425277}} Have a unified MediaDataEncoder API<br />
<br />
{{Bug|1475209}} Get rid of EnumDevResolver in MediaDevices.cpp by using a promise/mozpromise/pledge solution directly.<br />
<br />
{{Bug|1482150}} Expand CubebDeviceEnumerator to enumerate output devices<br />
<br />
{{Bug|1492479}} Have MediaManager::GetUserMedia() return a MozPromise<br />
<br />
{{Bug|1497175}} Replace all remaining uses of Pledge with MozPromise, and remove Pledge (cleanup)<br />
<br />
{{Bug|1497552}} Remove support for 44100 Hz in dtmf_tone_generator<br />
<br />
{{Bug|1497577}} Upstream code to detect zero size windows in desktop capture<br />
<br />
{{Bug|1497602}} Enable DirectX screen capturer on Windows<br />
<br />
{{Bug|1497606}} Remove disable_composition_ in screen_capturer_win_gdi<br />
<br />
{{Bug|1497951}} Have VP8/VP9 decoder wrapper to detect change of stream content<br />
<br />
{{Bug|1497974}} Upstream changes to jitter_buffer.cc<br />
<br />
{{Bug|1498205}} Upstream or remove PlatformUIThread<br />
<br />
{{Bug|1502172}} Crash in video capture on Win 10<br />
<br />
{{Bug|1502313}} Adding video to Facebook audio call on Linux fails even if the permission is granted<br />
<br />
{{Bug|1502927}} Remove MediaStream.currentTime<br />
<br />
{{Bug|1503536}} Call ApplySettings in MediaEngineWebRTCMicrophoneSource::Start<br />
<br />
{{Bug|1505284}} Use H264 MediaDataDecoder for webrtc calls<br />
<br />
{{Bug|1508677}} Use VP8/VP9 MediaDataDecoder for webrtc call<br />
<br />
{{Bug|1509548}} Reenable the start time assertion in StreamTracks.h<br />
<br />
{{Bug|1509842}} Re-enable AGC by default<br />
<br />
{{Bug|1509994}} Move code from video_engine from media/webrtc/trunk/webrtc to elsewhere in tree<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1194010}} ICE TCP might connect to any port<br />
<br />
{{Bug|1203503}} ICE/TURN/TCP via an HTTP-Proxy does not support Authentication<br />
<br />
{{Bug|1494301}} Write a single API surface for mtransport<br />
<br />
{{Bug|1494312}} Make mtransport API entirely async<br />
<br />
{{Bug|1502766}} Firefox 64 does not respect the RTCConfiguration iceTransportPolicy<br />
<br />
{{Bug|1505733}} Gather DTLS versions used in WebRTC<br />
<br />
{{Bug|1507700}} interop with chrome/mdns candidates is broken<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1456417}} addIceCandidate without sdpMLineIndex incorrectly assumes sdpMLineIndex = 0<br />
<br />
{{Bug|1496245}} RTCPeerConnection createOffer generates malformed sdp after rollback<br />
<br />
{{Bug|1498793}} Accept a=msid without track id<br />
<br />
{{Bug|1504252}} Remove dead code in signaling/src/media<br />
<br />
{{Bug|1507413}} Only 32 transceivers active simultaneously</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/Bugs&diff=1204643Media/Bugs2018-11-30T23:16:15Z<p>Nohlmeier: Added new bug triage policy</p>
<hr />
<div>=Media Bug Triage=<br />
All bugs related to audio and video in Firefox get triaged according to [https://github.com/mozilla/bug-handling/blob/master/policy/triage-bugzilla.md Mozilla bug handling policy]<br />
<br />
[https://mozilla.github.io/triage-center/?component=External+Software+Affecting+Firefox%3AOpenH264&component=Firefox+for+Android%3AAudio%2FVideo&component=Core%3AAudio%2FVideo&component=Core%3AAudio%2FVideo%3A+cubeb&component=Core%3AAudio%2FVideo%3A+GMP&component=Core%3AAudio%2FVideo%3A+MediaStreamGraph&component=Core%3AAudio%2FVideo%3A+Playback&component=Core%3AAudio%2FVideo%3A+Recording&component=Core%3AWeb+Audio&component=Core%3AWebRTC&component=Core%3AWebRTC%3A+Audio%2FVideo&component=Core%3AWebRTC%3A+Networking&component=Core%3AWebRTC%3A+Signaling Triage Center] is the tool to be used to identify bugs which need attention in the Media area.<br />
<br />
=Old - Deprecated=<br />
These are the old links only for reference purposes. To be removed at some future point (except if there are links in here which are worth keeping).<br />
===Media combined - Playback, WebRTC, WebAudio, Cubeb, MediaStreamGraph, Media Recording===<br />
* [https://mzl.la/2tkh1cS Un-triaged bugs]<br />
* [https://mzl.la/2M0udeU Unconfirmed bugs]<br />
* [https://mzl.la/2JXqkXs P1 bugs]<br />
* [https://crash-stats.mozilla.com/search/?proto_signature=~Webrtc&proto_signature=~webrtc&proto_signature=~jsep&proto_signature=~VideoConduit&proto_signature=~MediaRecorder&proto_signature=~MediaStreamGraph&proto_signature=~rtc%3A%3A&proto_signature=~cubeb&proto_signature=~MediaEncoder&proto_signature=~MediaEngine&proto_signature=~MediaManager&product=Firefox&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature Crashes in WebRTC, MediaStreamGraph, cubeb, MediaRecorder]<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~webrtc&proto_signature=~MediaStream&proto_signature=~Webrtc&proto_signature=~cubeb&proto_signature=~jsep&proto_signature=~VideoConduit&proto_signature=~AudioConduit&proto_signature=~MediaPipeline&proto_signature=~MediaEngine&proto_signature=~MediaRecord&proto_signature=~MediaManager&proto_signature=~rtc%3A%3A&product=Firefox&version=61.0a1&version=60.0a1&version=60.0b&version=59.0.1&version=59.0&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature Just in 59/60/61 (Note: URL will need updates occasionally)]<br />
* WebAudio: Note that this has to be split due to URL-length limits in the server<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~WebAudio&proto_signature=~AudioNode&proto_signature=~AudioContext&proto_signature=~BufferDecoder&proto_signature=~OscillatorNode&proto_signature=~AudioDestination&proto_signature=~ScriptProcessorNode&proto_signature=~DelayNode&proto_signature=~AudioScheduled&proto_signature=~CompressorNode&proto_signature=~AudioListener&proto_signature=~ConstantSource&proto_signature=~PannerNode&proto_signature=~FilterNode&product=Firefox&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature WebAudio crashes -- first half]<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~DelayBuffer&proto_signature=~GainNode&proto_signature=~ShaperNode&proto_signature=~AudioSourceNode&proto_signature=~AudioEvent&proto_signature=~AudioProcessing&proto_signature=~ConvolverNode&proto_signature=~AudioParam&proto_signature=~HRTF&proto_signature=~WebCore&proto_signature=~AudioBuffer&proto_signature=~AnalyserNode&product=Firefox&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature WebAudio crashes -- 2nd half]<br />
<br />
===Core::Audio/Video (Main Component) Queries===<br />
<br />
* [http://mzl.la/1h3slCq Un-triaged Audio/Video bugs]<br />
** Help us triage. Any bug found in this search needs to be moved to one of the other media components (shown below)<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Playback Queries===<br />
<br />
* [https://bugzilla.mozilla.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo&component=Audio%2FVideo%3A%20Playback&list_id=14006559&priority=--&product=Core&query_format=advanced&query_based_on=&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cshort_desc%2Cpriority%2Cchangeddate Untriaged Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P1&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P1 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P2&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P2 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P3&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P3 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P5&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P5 Playback bugs]<br />
* [https://is.gd/media_playback_triaged Open Playback bugs]<br />
<br />
===Core::Audio/Video - MediaStreamGraph Bugzilla Queries===<br />
<br />
* [http://mzl.la/1RC0aXs Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1RC0fug Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1RC0oxP Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1RBZUb6 Un-triaged MediaStreamGraph bugs]<br />
**Search based on Open MediaStreamGraph component bugs that have priority flag set]<br />
* [http://mzl.la/1RC02r8 Unconfirmed MediaStreamGraph bugs]<br />
**Search based on Open MediaStreamGraph component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Cubeb Bugzilla Queries===<br />
<br />
* [http://mzl.la/1HjtQrV Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1HjtUIj Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1HjtW2Y Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1Hju0Qg Un-triaged Cubeb bugs]<br />
**Search based on Open Cubeb component bugs that have priority flag set]<br />
* [http://mzl.la/1Hju7Lu Unconfirmed Cubeb bugs]<br />
**Search based on Open Cubeb component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - GMP (Gecko Media Plugin) Bugzilla Queries===<br />
<br />
* [http://mzl.la/1Q3CLBo Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1HjuaXK Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results <br />
* [http://mzl.la/1NceYey Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1Hjujui Un-triaged GMP bugs]<br />
**Search based on Open GMP component bugs that have priority flag set]<br />
* [http://mzl.la/1HjuoOK Unconfirmed GMP bugs]<br />
**Search based on Open GMP component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Recording Bugzilla Queries===<br />
<br />
* [http://mzl.la/1jXz16N Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1M0rudk Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1MTEvYw Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority. <br />
* [http://mzl.la/1iH134R Un-triaged Recording bugs]<br />
**Search based on Open Recording component bugs that have no Backlog flag being set]<br />
* [http://mzl.la/1M0qXZ2 Unconfirmed Recording bugs]<br />
**Search based on Open Recording component bugs that have no Backlog flag being set]<br />
<br />
<p> </p><br />
<br />
===Web Audio Bugzilla Queries===<br />
<br />
* [http://mzl.la/1MTEa8b Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1MTEbsR Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1MTEbJp Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority. <br />
* [http://mzl.la/1M0izbQ Un-triaged Web Audio bugs]<br />
**Search based on Open WebAudio component bugs that have no Backlog flag being set]<br />
* [http://mzl.la/1MTEggc Unconfirmed Web Audio bugs]<br />
**Search based on Open WebAudio component bugs that have no Backlog flag being set]<br />
<br />
<p> </p><br />
<br />
===WebRTC Bugzilla Queries===<br />
<br />
* [http://mzl.la/1S1PrWF Bugzilla Ranked "P1" - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1RPW8tq Bugzilla Ranked "P2" - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1Cos5lF Bugzilla Ranked "P3 to P5 - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1h2L6WT Un-triaged WebRTC bugs]<br />
**Search based on Open WebRTC bugs that have no Backlog flag set]<br />
* [http://mzl.la/1S1RN7L Unconfirmed WebRTC bugs]<br />
**Search based on Open WebRTC bugs that have no Backlog flag set]<br />
* [http://mzl.la/1MUt9bh Parking-lot bugs]<br />
** Search based on Open WebRTC bugs that have the parking-lot flag set]<br />
** NOTE: parking-lot bugs are the same as P5 bugs; we will not be dedicating time to fixing these. If you need a parking-lot bug fixed, please needinfo the triage owner of that bug about raising the priority.</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/64&diff=1202989Media/WebRTC/ReleaseNotes/642018-10-28T04:58:41Z<p>Nohlmeier: Swapped order in a sentence</p>
<hr />
<div>=Firefox 64 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 64:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2zb1uis Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 64]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
* scaleResolutionDownBy and maxBitrate can now be updated live on a connected PeerConnection {{Bug|1253499}}<br />
<br />
* Enable automatic gain control (AGC) by default now in {{Bug|1496714}}<br />
<br />
* SRTP is now using AES CPU instructions (through using NSS instead of build in libsrtp ciphers) and offers AEAD_AES_128_GCM and AEAD_AES_256_GCM through {{Bug|1479665}} and some follow up bugs<br />
<br />
* Datachannels should get more throughput in most scenarios through {{Bug|1051685}}<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1258143}} Remove LocalMediaStream (and its Stop()) from js<br />
<br />
{{Bug|1492627}} [wpt-sync] Sync PR 13084 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=189516<br />
<br />
{{Bug|1493565}} [wpt-sync] Sync PR 13181 - Make use of navigator.mediaDevices.getUserMedia instead of navigator.getUserMedia<br />
<br />
{{Bug|1495935}} [wpt-sync] Sync PR 13321 - Include ended tracks when cloning MediaStreams.<br />
<br />
{{Bug|1498058}} [wpt-sync] Sync PR 13361 - Fix media element field behavior when playing MediaStreams<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1482346}} [wpt-sync] Sync PR 12401 - Upstream image_capture tests to WPT<br />
<br />
{{Bug|1487948}} [wpt-sync] Sync PR 12790 - [Image Capture] Add focusDistance constraint.<br />
<br />
{{Bug|1489417}} [wpt-sync] Sync PR 12893 - Add tests for mediacapture-image<br />
<br />
{{Bug|1490689}} [wpt-sync] Sync PR 12967 - [Image Capture] Add exposureTime constraint.<br />
<br />
{{Bug|1496383}} MediaRecorder state error cases does not match its W3C spec<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1489052}} Can't get audio to work over BT with Bluetooth headset<br />
<br />
{{Bug|1491152}} 2018 MacBook Pro sound fails after waking up from sleep<br />
<br />
{{Bug|1498519}} Update cubeb from upstream to 4559815<br />
<br />
{{Bug|1500377}} Update cubeb to a68892d and cubeb-pulse-rs to 100b858<br />
<br />
{{Bug|1500468}} Enumerate device is broken in Linux<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1473467}} implement AudioWorkletGlobalScope::RegisterProcessor()<br />
<br />
{{Bug|1485198}} [wpt-sync] Sync PR 12606 - Update audit.js and fix error catching logic in should().throw()<br />
<br />
{{Bug|1487963}} PannerNode should throw when parameters are out of range<br />
<br />
{{Bug|1488242}} Throw the correct error type in {ConstantSourceNode,AudioBufferSourceNode}.{Start,Stop}<br />
<br />
{{Bug|1488586}} [wpt-sync] Sync PR 12834 - Throw errors for invalid rolloffFactor and coneOuterGain<br />
<br />
{{Bug|1488630}} [wpt-sync] Sync PR 12837 - Fix cases where setValueCurveAtTime was not throwing errors<br />
<br />
{{Bug|1488949}} [wpt-sync] Sync PR 12857 - Change detune min/max limits<br />
<br />
{{Bug|1489338}} [wpt-sync] Sync PR 12887 - Slightly improve AudioBuffer resampling<br />
<br />
{{Bug|1490103}} [wpt-sync] Sync PR 12938 - Honor given outputChannelCount for AudioWorkletNodeOptions<br />
<br />
{{Bug|1493779}} AddressSanitizer: ILL /builds/worker/workspace/build/src/xpcom/base/nsDebugImpl.cpp:628:3 in NS_ABORT_OOM(unsigned long)<br />
<br />
{{Bug|1495582}} [wpt-sync] Sync PR 13296 - ConvolverNode buffer can be set multiple times<br />
<br />
{{Bug|1496496}} Sound indicator incorrectly shows when playing a silent web audio<br />
<br />
{{Bug|1497112}} detect and optimize when AudioParam stream inputs are null<br />
<br />
{{Bug|1497757}} [wpt-sync] Sync PR 13445 - Allow posting a SharedArrayBuffer to AudioWorklet<br />
<br />
{{Bug|1500238}} StereoPanner does not handle a pan value of zero for mono signals<br />
<br />
{{Bug|1500303}} apply input gain correctly for stereo-to-stereo StereoPanner<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1253499}} scaleResolutionDownBy and maxBitrate don't update live.<br />
<br />
{{Bug|1468451}} Crash near null [@ mozilla::PeerConnectionMedia::AddTransceiver]<br />
<br />
{{Bug|1479632}} Intermittent dom/media/tests/mochitest/test_peerConnection_stats.html | inbound-rtp.pliCount is a sane number for a short test. value=100<br />
<br />
{{Bug|1486693}} [wpt-sync] Sync PR 12715 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=189040<br />
<br />
{{Bug|1487256}} [wpt-sync] Sync PR 12750 - Add RTCQuicStream IDL + binding skeleton<br />
<br />
{{Bug|1487585}} [wpt-sync] Sync PR 12771 - RTCQuicTransport: start() implementation<br />
<br />
{{Bug|1487848}} [wpt-sync] Sync PR 12782 - webrtc: throw SyntaxError on {iceServers: []}<br />
<br />
{{Bug|1488832}} Assertion failure: mInitDone, at /builds/worker/workspace/build/src/dom/media/webrtc/MediaEngineRemoteVideoSource.cpp:190<br />
<br />
{{Bug|1489033}} WebRTC local-candidate and remote-candidate stats need coverage<br />
<br />
{{Bug|1489487}} [wpt-sync] Sync PR 12895 - Implement DTMF [[ToneBuffer]] in the blink layer<br />
<br />
{{Bug|1489623}} Spec change: throw SyntaxError on RTCIceServer with no urls<br />
<br />
{{Bug|1490700}} Divide-by-zero in [@webrtc::I420Buffer::CropAndScaleFrom]<br />
<br />
{{Bug|1491128}} Add comment block to dom/webidl/RTCDTMFToneChangeEvent.webidl<br />
<br />
{{Bug|1493012}} [wpt-sync] Sync PR 13123 - Add allowance for race in DTMF ontonechange events<br />
<br />
{{Bug|1494648}} [wpt-sync] Sync PR 13241 - [Unified Plan] Remote MediaStreamTracks should be muted by default.<br />
<br />
{{Bug|1495477}} [wpt-sync] Sync PR 13287 - Implement RTCQuicTransport.onquicstream and stream reset/finish<br />
<br />
{{Bug|1495626}} [wpt-sync] Sync PR 13298 - Remove invalid RTCPeerConnection.addTransceiver() tests<br />
<br />
{{Bug|1495968}} [wpt-sync] Sync PR 13322 - Remove and fix non-spec compliant WebRTC tests<br />
<br />
{{Bug|1495976}} [wpt-sync] Sync PR 13323 - Reland: Implement RTCIceTransport.onselectedcandidatepairchange<br />
<br />
{{Bug|1498237}} Intermittent dom/media/tests/mochitest/identity/test_fingerprints.html | Test timed out.<br />
<br />
{{Bug|1498679}} Perma tier2 dom/media/tests/mochitest/test_setSinkId.html | Never enter here, this must fail| wpt/setSinkId.html | setSinkId fails with NotFoundError on made up deviceid - assert_unreached: Should have rejected: undefined Reached unreachable code<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1377146}} Remove AudioStreamTrack and VideoStreamTrack<br />
<br />
{{Bug|1404992}} Rework VideoConduit<br />
<br />
{{Bug|1479051}} [macOS 10.14] WebRTC sites silently fail if user previously clicked "Don't Allow" for Firefox camera/mic access<br />
<br />
{{Bug|1479840}} Test that enumerateDevices() neither resolves nor rejects when navigated away.<br />
<br />
{{Bug|1479841}} Start replacing uses of Pledge with MozPromise in MediaManager (cleanup)<br />
<br />
{{Bug|1481152}} Restrict number of concurrent uses of an audio input device in a child process<br />
<br />
{{Bug|1487057}} Finish cleaning up audio input devices code<br />
<br />
{{Bug|1487419}} Share screen doesn't work on Mac with getUserMedia Test Page with multiple monitors<br />
<br />
{{Bug|1489757}} Changeset 549f0b8075d5 causes video streams to take a very long time to recover from packet loss<br />
<br />
{{Bug|1494498}} Fix constraints logging.<br />
<br />
{{Bug|1494806}} Exact constraints containing string arrays, e.g. {deviceId: {exact:['id']}} are treated as ideal.<br />
<br />
{{Bug|1495478}} Intermittent /builds/worker/workspace/build/src/dom/media/webrtc/MediaTrackConstraints.cpp:484:3: error: use of undeclared identifier 'LogConstraints'<br />
<br />
{{Bug|1496529}} [webrtc]H264 video decoding cause a crash/failure when using playback decoder.<br />
<br />
{{Bug|1496714}} Consider enabling AGC by default<br />
<br />
{{Bug|1497254}} Remove the concept of an Allocation from MediaEngineWebRTCAudio<br />
<br />
{{Bug|1497351}} Do without new null defaults for dictionary-typed members in MediaStreamTrack.webidl<br />
<br />
{{Bug|1497390}} Remove support for legacy mozAutoGainControl and mozNoiseSuppression constraints.<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1051685}} WebRTC data channels always use the default SCTP window size of 128K<br />
<br />
{{Bug|1435789}} Deprecate RTCIceCandidateStats.mozLocalTransport and add protocol and relayProtocol<br />
<br />
{{Bug|1479665}} Update libsrtp to 2.2.0-pre<br />
<br />
{{Bug|1480869}} Stop using SRTP cipher suites from NSS<br />
<br />
{{Bug|1485883}} SRTP extension using NSS extension handlers<br />
<br />
{{Bug|1486012}} re-implement ICE restart as the creation of new ICE streams on the pre-existing context<br />
<br />
{{Bug|1491511}} Add Telemetry for SRTP cipher usage in WebRTC<br />
<br />
{{Bug|1492834}} Remove "Attempting to protect RTP" and related log messages<br />
<br />
{{Bug|1493146}} Lengthen ice-pwd<br />
<br />
{{Bug|1498068}} SRTP_AEAD_AES_128_GCM failed to connect<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1492248}} UBSan: undefined-behavior media/webrtc/signaling/src/sdp/sipcc/sdp_token.c:1803:13<br />
<br />
{{Bug|1493765}} Stop using NrIce* stuff in PeerConnectionImpl<br />
<br />
{{Bug|1495160}} WEBRTC_DATACHANNEL_NEGOTIATED Telemetry broken since 59<br />
<br />
{{Bug|1495569}} SDP offers without a=mid get rejected after creating an answer (Local descriptions must have a=mid attributes)</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1202988Media/WebRTC/ReleaseNotes2018-10-28T04:57:25Z<p>Nohlmeier: Added 64 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/64|Firefox 64]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/64&diff=1202987Media/WebRTC/ReleaseNotes/642018-10-28T04:56:25Z<p>Nohlmeier: Filled the initial bug list from 64</p>
<hr />
<div>=Firefox 64 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 64:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2zb1uis Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 64]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
* scaleResolutionDownBy and maxBitrate can now be updated live on a connected PeerConnection {{Bug|1253499}}<br />
<br />
* Enable automatic gain control (AGC) by default now in {{Bug|1496714}}<br />
<br />
* SRTP is now using AES CPU instructions (through using NSS instead of build in libsrtp ciphers) and offers AEAD_AES_128_GCM and AEAD_AES_256_GCM through {{Bug|1479665}} and some follow up bugs<br />
<br />
* Datachannels should get in most scenarios more throughput through {{Bug|1051685}}<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1258143}} Remove LocalMediaStream (and its Stop()) from js<br />
<br />
{{Bug|1492627}} [wpt-sync] Sync PR 13084 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=189516<br />
<br />
{{Bug|1493565}} [wpt-sync] Sync PR 13181 - Make use of navigator.mediaDevices.getUserMedia instead of navigator.getUserMedia<br />
<br />
{{Bug|1495935}} [wpt-sync] Sync PR 13321 - Include ended tracks when cloning MediaStreams.<br />
<br />
{{Bug|1498058}} [wpt-sync] Sync PR 13361 - Fix media element field behavior when playing MediaStreams<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1482346}} [wpt-sync] Sync PR 12401 - Upstream image_capture tests to WPT<br />
<br />
{{Bug|1487948}} [wpt-sync] Sync PR 12790 - [Image Capture] Add focusDistance constraint.<br />
<br />
{{Bug|1489417}} [wpt-sync] Sync PR 12893 - Add tests for mediacapture-image<br />
<br />
{{Bug|1490689}} [wpt-sync] Sync PR 12967 - [Image Capture] Add exposureTime constraint.<br />
<br />
{{Bug|1496383}} MediaRecorder state error cases does not match its W3C spec<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1489052}} Can't get audio to work over BT with Bluetooth headset<br />
<br />
{{Bug|1491152}} 2018 MacBook Pro sound fails after waking up from sleep<br />
<br />
{{Bug|1498519}} Update cubeb from upstream to 4559815<br />
<br />
{{Bug|1500377}} Update cubeb to a68892d and cubeb-pulse-rs to 100b858<br />
<br />
{{Bug|1500468}} Enumerate device is broken in Linux<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1473467}} implement AudioWorkletGlobalScope::RegisterProcessor()<br />
<br />
{{Bug|1485198}} [wpt-sync] Sync PR 12606 - Update audit.js and fix error catching logic in should().throw()<br />
<br />
{{Bug|1487963}} PannerNode should throw when parameters are out of range<br />
<br />
{{Bug|1488242}} Throw the correct error type in {ConstantSourceNode,AudioBufferSourceNode}.{Start,Stop}<br />
<br />
{{Bug|1488586}} [wpt-sync] Sync PR 12834 - Throw errors for invalid rolloffFactor and coneOuterGain<br />
<br />
{{Bug|1488630}} [wpt-sync] Sync PR 12837 - Fix cases where setValueCurveAtTime was not throwing errors<br />
<br />
{{Bug|1488949}} [wpt-sync] Sync PR 12857 - Change detune min/max limits<br />
<br />
{{Bug|1489338}} [wpt-sync] Sync PR 12887 - Slightly improve AudioBuffer resampling<br />
<br />
{{Bug|1490103}} [wpt-sync] Sync PR 12938 - Honor given outputChannelCount for AudioWorkletNodeOptions<br />
<br />
{{Bug|1493779}} AddressSanitizer: ILL /builds/worker/workspace/build/src/xpcom/base/nsDebugImpl.cpp:628:3 in NS_ABORT_OOM(unsigned long)<br />
<br />
{{Bug|1495582}} [wpt-sync] Sync PR 13296 - ConvolverNode buffer can be set multiple times<br />
<br />
{{Bug|1496496}} Sound indicator incorrectly shows when playing a silent web audio<br />
<br />
{{Bug|1497112}} detect and optimize when AudioParam stream inputs are null<br />
<br />
{{Bug|1497757}} [wpt-sync] Sync PR 13445 - Allow posting a SharedArrayBuffer to AudioWorklet<br />
<br />
{{Bug|1500238}} StereoPanner does not handle a pan value of zero for mono signals<br />
<br />
{{Bug|1500303}} apply input gain correctly for stereo-to-stereo StereoPanner<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1253499}} scaleResolutionDownBy and maxBitrate don't update live.<br />
<br />
{{Bug|1468451}} Crash near null [@ mozilla::PeerConnectionMedia::AddTransceiver]<br />
<br />
{{Bug|1479632}} Intermittent dom/media/tests/mochitest/test_peerConnection_stats.html | inbound-rtp.pliCount is a sane number for a short test. value=100<br />
<br />
{{Bug|1486693}} [wpt-sync] Sync PR 12715 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=189040<br />
<br />
{{Bug|1487256}} [wpt-sync] Sync PR 12750 - Add RTCQuicStream IDL + binding skeleton<br />
<br />
{{Bug|1487585}} [wpt-sync] Sync PR 12771 - RTCQuicTransport: start() implementation<br />
<br />
{{Bug|1487848}} [wpt-sync] Sync PR 12782 - webrtc: throw SyntaxError on {iceServers: []}<br />
<br />
{{Bug|1488832}} Assertion failure: mInitDone, at /builds/worker/workspace/build/src/dom/media/webrtc/MediaEngineRemoteVideoSource.cpp:190<br />
<br />
{{Bug|1489033}} WebRTC local-candidate and remote-candidate stats need coverage<br />
<br />
{{Bug|1489487}} [wpt-sync] Sync PR 12895 - Implement DTMF [[ToneBuffer]] in the blink layer<br />
<br />
{{Bug|1489623}} Spec change: throw SyntaxError on RTCIceServer with no urls<br />
<br />
{{Bug|1490700}} Divide-by-zero in [@webrtc::I420Buffer::CropAndScaleFrom]<br />
<br />
{{Bug|1491128}} Add comment block to dom/webidl/RTCDTMFToneChangeEvent.webidl<br />
<br />
{{Bug|1493012}} [wpt-sync] Sync PR 13123 - Add allowance for race in DTMF ontonechange events<br />
<br />
{{Bug|1494648}} [wpt-sync] Sync PR 13241 - [Unified Plan] Remote MediaStreamTracks should be muted by default.<br />
<br />
{{Bug|1495477}} [wpt-sync] Sync PR 13287 - Implement RTCQuicTransport.onquicstream and stream reset/finish<br />
<br />
{{Bug|1495626}} [wpt-sync] Sync PR 13298 - Remove invalid RTCPeerConnection.addTransceiver() tests<br />
<br />
{{Bug|1495968}} [wpt-sync] Sync PR 13322 - Remove and fix non-spec compliant WebRTC tests<br />
<br />
{{Bug|1495976}} [wpt-sync] Sync PR 13323 - Reland: Implement RTCIceTransport.onselectedcandidatepairchange<br />
<br />
{{Bug|1498237}} Intermittent dom/media/tests/mochitest/identity/test_fingerprints.html | Test timed out.<br />
<br />
{{Bug|1498679}} Perma tier2 dom/media/tests/mochitest/test_setSinkId.html | Never enter here, this must fail| wpt/setSinkId.html | setSinkId fails with NotFoundError on made up deviceid - assert_unreached: Should have rejected: undefined Reached unreachable code<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1377146}} Remove AudioStreamTrack and VideoStreamTrack<br />
<br />
{{Bug|1404992}} Rework VideoConduit<br />
<br />
{{Bug|1479051}} [macOS 10.14] WebRTC sites silently fail if user previously clicked "Don't Allow" for Firefox camera/mic access<br />
<br />
{{Bug|1479840}} Test that enumerateDevices() neither resolves nor rejects when navigated away.<br />
<br />
{{Bug|1479841}} Start replacing uses of Pledge with MozPromise in MediaManager (cleanup)<br />
<br />
{{Bug|1481152}} Restrict number of concurrent uses of an audio input device in a child process<br />
<br />
{{Bug|1487057}} Finish cleaning up audio input devices code<br />
<br />
{{Bug|1487419}} Share screen doesn't work on Mac with getUserMedia Test Page with multiple monitors<br />
<br />
{{Bug|1489757}} Changeset 549f0b8075d5 causes video streams to take a very long time to recover from packet loss<br />
<br />
{{Bug|1494498}} Fix constraints logging.<br />
<br />
{{Bug|1494806}} Exact constraints containing string arrays, e.g. {deviceId: {exact:['id']}} are treated as ideal.<br />
<br />
{{Bug|1495478}} Intermittent /builds/worker/workspace/build/src/dom/media/webrtc/MediaTrackConstraints.cpp:484:3: error: use of undeclared identifier 'LogConstraints'<br />
<br />
{{Bug|1496529}} [webrtc]H264 video decoding cause a crash/failure when using playback decoder.<br />
<br />
{{Bug|1496714}} Consider enabling AGC by default<br />
<br />
{{Bug|1497254}} Remove the concept of an Allocation from MediaEngineWebRTCAudio<br />
<br />
{{Bug|1497351}} Do without new null defaults for dictionary-typed members in MediaStreamTrack.webidl<br />
<br />
{{Bug|1497390}} Remove support for legacy mozAutoGainControl and mozNoiseSuppression constraints.<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1051685}} WebRTC data channels always use the default SCTP window size of 128K<br />
<br />
{{Bug|1435789}} Deprecate RTCIceCandidateStats.mozLocalTransport and add protocol and relayProtocol<br />
<br />
{{Bug|1479665}} Update libsrtp to 2.2.0-pre<br />
<br />
{{Bug|1480869}} Stop using SRTP cipher suites from NSS<br />
<br />
{{Bug|1485883}} SRTP extension using NSS extension handlers<br />
<br />
{{Bug|1486012}} re-implement ICE restart as the creation of new ICE streams on the pre-existing context<br />
<br />
{{Bug|1491511}} Add Telemetry for SRTP cipher usage in WebRTC<br />
<br />
{{Bug|1492834}} Remove "Attempting to protect RTP" and related log messages<br />
<br />
{{Bug|1493146}} Lengthen ice-pwd<br />
<br />
{{Bug|1498068}} SRTP_AEAD_AES_128_GCM failed to connect<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1492248}} UBSan: undefined-behavior media/webrtc/signaling/src/sdp/sipcc/sdp_token.c:1803:13<br />
<br />
{{Bug|1493765}} Stop using NrIce* stuff in PeerConnectionImpl<br />
<br />
{{Bug|1495160}} WEBRTC_DATACHANNEL_NEGOTIATED Telemetry broken since 59<br />
<br />
{{Bug|1495569}} SDP offers without a=mid get rejected after creating an answer (Local descriptions must have a=mid attributes)</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1200555Media/WebRTC/ReleaseNotes2018-09-04T23:10:20Z<p>Nohlmeier: Added 63 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/63|Firefox 63]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/63&diff=1200554Media/WebRTC/ReleaseNotes/632018-09-04T23:09:42Z<p>Nohlmeier: Initial 63 release notes</p>
<hr />
<div>=Firefox 63 WebRTC/WebAudio Release Notes:=<br />
<br />
===Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 63:===<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2PH6ZML Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 63]<br />
<br />
=== Noteworthy Changes: ===<br />
<br />
* The new SDP parser written in Rust is turned on now in Firefox Nightly<br />
<br />
* Correct MIDs are now set inside the RTP packets {{Bug|1478685}}<br />
<br />
* Lots of WebRTC stats cleanups<br />
<br />
* H264 on Android works again {{Bug|1481139}}<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1475277}} Update GMP fallback downloader for Widevine CDM 1.4.9.1088<br />
<br />
{{Bug|1478008}} gmp-clearkey should use the same warnings under clang-cl as with clang<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1460346}} Verify the methods being called on audio thread exclusively.<br />
<br />
{{Bug|1464931}} [wpt-sync] Sync PR 11208 - Do not allow the empty string as a facingMode constraint value for MediaStreams.<br />
<br />
{{Bug|1468735}} [wpt-sync] Sync PR 11506 - Support all constrainable properties for audio tracks in MediaStreamTrack.getSettings().<br />
<br />
{{Bug|1469717}} [wpt-sync] Sync PR 11577 - Clean up mediacapture-streams enumerateDevices IDL test<br />
<br />
{{Bug|1471588}} Expand on MSGTracing to trace more things on the audio thread<br />
<br />
{{Bug|1480036}} Allow scaling all MSG volume with a pref<br />
<br />
{{Bug|1480161}} MediaStreamGraph's underrun assertion fails when audio processing enabled<br />
<br />
{{Bug|1481957}} Intermittent dom/media/tests/mochitest/test_getUserMedia_cubebDisabled.html | application crashed [@ mozilla::MediaStreamGraphImpl::ReevaluateInputDevice()]<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1464957}} [wpt-sync] Sync PR 11211 - [mediacapture] Simply test and use standard API<br />
<br />
{{Bug|1469695}} [wpt-sync] Sync PR 11575 - Auto-update the mediacapture-fromelement IDL file<br />
<br />
{{Bug|1469701}} [wpt-sync] Sync PR 11576 - Auto-update the mediacapture-image IDL file<br />
<br />
{{Bug|1475403}} [wpt-sync] Sync PR 11952 - Update the mediacapture-fromelement IDL file + test<br />
<br />
{{Bug|1480589}} Extend lifetime of MEDIA_RECORDER_RECORDING_DURATION, MEDIA_RECORDER_TRACK_ENCODER_INIT_TIMEOUT_TYPE, and SCALARS_MEDIARECORDER.RECORDING_COUNT telemetry probes<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1469152}} mono audio plays only in the left speaker (OS X, 61+)<br />
<br />
{{Bug|1470041}} Add padding for liblibc musl support<br />
<br />
{{Bug|1470113}} Crash in audiounit_stream_destroy<br />
<br />
{{Bug|1471164}} Update cubeb from upstream to 2968cba<br />
<br />
{{Bug|1471922}} Provide more information in failure summary than line "thread '<unnamed>' panicked at 'assertion failed: `(left != right)`"<br />
<br />
{{Bug|1476278}} Update libcubeb to revision 6c47043<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1148354}} Remove the doppler effect from the PannerNode<br />
<br />
{{Bug|1413283}} Mark ctor-constantsource.html as passing, since bug 1456266 landed<br />
<br />
{{Bug|1413284}} ConstantSourceNode.start(-1) should throw RangeError<br />
<br />
{{Bug|1414366}} ConstantSourceNode start/stop incorrect<br />
<br />
{{Bug|1421091}} setValueCurveAtTime doesn't accept sequence<float><br />
<br />
{{Bug|1456271}} new PeriodicWave(context) fails<br />
<br />
{{Bug|1459041}} [wpt-sync] Sync PR 10830 - Move AudioBufferSourceNode tests to WPT<br />
<br />
{{Bug|1459354}} [wpt-sync] Sync PR 10857 - WaveShaper must output non-zero values even if input is silent<br />
<br />
{{Bug|1465261}} [wpt-sync] Sync PR 11236 - Fix flaky k-rate-panner test<br />
<br />
{{Bug|1465316}} [wpt-sync] Sync PR 11239 - [WebAudio] throw an error when buffer has been already set.<br />
<br />
{{Bug|1466182}} Add AudioWorkletProcessor interface definitions<br />
<br />
{{Bug|1466968}} [wpt-sync] Sync PR 11360 - Reland "WaveShaper must output non-zero values even if input is silent"<br />
<br />
{{Bug|1468258}} [wpt-sync] Sync PR 11466 - Clean up the webaudio idl test and add long timeout<br />
<br />
{{Bug|1468276}} [wpt-sync] Sync PR 11467 - Adjust test thresholds for win10<br />
<br />
{{Bug|1468399}} [wpt-sync] Sync PR 11482 - If AudioWorklet AudioParam is constant, make the array have length 1<br />
<br />
{{Bug|1470045}} [wpt-sync] Sync PR 11595 - Clean up webaudio IDL test<br />
<br />
{{Bug|1470856}} Add "AudioWorklet" definition<br />
<br />
{{Bug|1471843}} Remove audioWorklet attribute from Window<br />
<br />
{{Bug|1472095}} setValueCurveAtTime throws incorrect exceptions<br />
<br />
{{Bug|1472550}} Using linearRampToValueAtTime() with PannerNode produces wrong spatial sound<br />
<br />
{{Bug|1474222}} ConvolverNode output should sometimes be mono<br />
<br />
{{Bug|1474470}} support convolution of stereo input with a mono impulse response buffer<br />
<br />
{{Bug|1476231}} Add ffmpeg FFT functions to ffvpx and switch web audio from libav to ffvpx<br />
<br />
{{Bug|1476695}} Return minimum and maximum 32bits float for AudioParam.{minValue,maxValue} that used to return infinity<br />
<br />
{{Bug|1476744}} Pull values from the AudioListener when computing PannerNode values<br />
<br />
{{Bug|1477131}} [wpt-sync] Sync PR 12076 - Fix typo in panner-distance-clampling.html test<br />
<br />
{{Bug|1477144}} [wpt-sync] Sync PR 12080 - Use RangeError object instead of 'RangeError'<br />
<br />
{{Bug|1477445}} [wpt-sync] Sync PR 12112 - Idl file updates webaudio<br />
<br />
{{Bug|1478837}} Reinstate AudioParam tests removed by Google<br />
<br />
{{Bug|1480661}} avoid reading channel count of most recent delay buffer input when reading samples at max delay<br />
<br />
{{Bug|1481676}} Add AudioWorklet tests to WPT<br />
<br />
{{Bug|1483174}} Permafailing z:/build/build/src/dom/media/webaudio/blink/HRTFPanner.cpp(40): error C2220: warning treated as error - no 'object' file generated<br />
<br />
{{Bug|1484046}} Intermittent dom/media/webaudio/test/test_convolverNodeChannelInterpretationChanges.html | application crashed [@ mozilla::TimeStamp::operator-(mozilla::TimeStamp const&) const]<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1393306}} Add deprecation warning for removal of stat.isRemote in 65.<br />
<br />
{{Bug|1455724}} Add telemetry for legacy callback based PeerConnection.getStats() API<br />
<br />
{{Bug|1465473}} [WebRTC] No video when using RTCPeerConnection multitrack<br />
<br />
{{Bug|1465746}} [wpt-sync] Sync PR 11267 - webrtc wpt: check signalingState before addIceCandidate<br />
<br />
{{Bug|1466123}} [wpt-sync] Sync PR 11301 - Improve RTCPeerConnection-setRemoteDescription-tracks.https.html tests.<br />
<br />
{{Bug|1468189}} [wpt-sync] Sync PR 11460 - nit wpt/webrtc/: Use assert_array_equals, not assert_equals<br />
<br />
{{Bug|1468939}} [wpt-sync] Sync PR 11524 - webrtc: add tooling to allow using jscodeshift codemods<br />
<br />
{{Bug|1469570}} [wpt-sync] Sync PR 11569 - webrtc wpt: trust getUserMedia to be compliant<br />
<br />
{{Bug|1471691}} [wpt-sync] Sync PR 11694 - webrtc wpt: remove generateMediaStreamTrack usage<br />
<br />
{{Bug|1471697}} Intermittent PROCESS-CRASH | Main app process exited normally | application crashed [@ RefPtr<mozilla::MediaPipelineReceiveVideo::PipelineListener>::operator->() const] Assertion failure: mRawPtr !<br />
<br />
{{Bug|1471798}} [wpt-sync] Sync PR 11700 - Auto-update the webrtc IDL file<br />
<br />
{{Bug|1474658}} RTCRtpStreamStats.ssrc should be an unsigned long<br />
<br />
{{Bug|1475092}} [wpt-sync] Sync PR 11924 - Implement RTCRtpSender/Receiver.getCapabilities()<br />
<br />
{{Bug|1476389}} [wpt-sync] Sync PR 12036 - webrtc wpt: close RTCPeerConnection in generateAnswer helper<br />
<br />
{{Bug|1476438}} [wpt-sync] Sync PR 12040 - webrtc wpt: rename RTCPeerConnection-addTransceiver.html to .https.html<br />
<br />
{{Bug|1476463}} [wpt-sync] Sync PR 12041 - webrtc wpt: remove generateMediaStreamTrack in RTCRtpSender-replaceTrack<br />
<br />
{{Bug|1477043}} [wpt-sync] Sync PR 12069 - Implement & ship: RTCPeerConnection.addTransceiver()<br />
<br />
{{Bug|1477228}} [wpt-sync] Sync PR 12032 - webrtc wpt: rename RTCRtpSender-replaceTrack.html to RTCRtpSender-replaceTrack.https.html<br />
<br />
{{Bug|1477651}} [wpt-sync] Sync PR 12141 - webrtc: make transceiver tests work in Firefox<br />
<br />
{{Bug|1477825}} Clean up static analysis findings in PeerConnectionImpl.cpp<br />
<br />
{{Bug|1478285}} [wpt-sync] Sync PR 12179 - webrtc wpt: remove generateMediaStreamTrack, add cleanup after getNoiseStream<br />
<br />
{{Bug|1478890}} Get rid of CallbackObjectHolder::ToXPCOMCallback usage in webrtc code<br />
<br />
{{Bug|1479099}} [wpt-sync] Sync PR 12216 - Add RTCIceTransport IDL + binding skeleton<br />
<br />
{{Bug|1479460}} [wpt-sync] Sync PR 12230 - webrtc: throw InvalidAccessError on mismatching rtcpmuxPolicy in setRemoteDescription<br />
<br />
{{Bug|1479539}} [wpt-sync] Sync PR 12237 - Fix RTCPeerConnection-transceivers.https.html bug.<br />
<br />
{{Bug|1480498}} Rename RTCRTPStreamStats to match the spec RTCRtpStreamStats<br />
<br />
{{Bug|1480525}} _localIdp and _remoteIdp are not checked before closed in PeerConnection.js<br />
<br />
{{Bug|1481218}} [wpt-sync] Sync PR 12325 - Fix the wpt/webrtc/RTCRtpParameters-transactionId test<br />
<br />
{{Bug|1481557}} improve getStats isRemote deprecation warning<br />
<br />
{{Bug|1481851}} getStats: kind is missing from RTPStreamStats<br />
<br />
{{Bug|1481982}} [wpt-sync] Sync PR 12365 - Add RTCQuicTransport IDL + binding skeleton<br />
<br />
{{Bug|1482198}} [wpt-sync] Sync PR 12383 - RTCIceTransport: gather() implementation.<br />
<br />
{{Bug|1483511}} --disable-webrtc fails to build in dom/media/gtest/ ('MediaEngineWebRTC.h' file not found)<br />
<br />
{{Bug|1485845}} [wpt-sync] Sync PR 12661 - RTCIceTransport: start() implementation.<br />
<br />
{{Bug|1486028}} add aarch64 windows cases to various webrtc headers<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1152401}} enumerateDevices() should enumerate audio output devices (feature behind pref)<br />
<br />
{{Bug|1404977}} Rework device enumeration<br />
<br />
{{Bug|1433158}} Update libvpx to 1.7.0<br />
<br />
{{Bug|1455364}} Crash in [@ CrashReporter::TerminateHandler | std::__terminate][@ webrtc::MouseCursorMonitorMac::CaptureImage(float)]<br />
<br />
{{Bug|1461871}} Crash in [@ CrashReporter::TerminateHandler | std::__terminate][@ AVCaptureDALDevice setActiveVideoMaxFrameDuration]<br />
<br />
{{Bug|1467965}} [wpt-sync] Sync PR 11442 - Media capabilities idl<br />
<br />
{{Bug|1470932}} Crash in mozilla::MediaManager::IsActivelyCapturingOrHasAPermission<br />
<br />
{{Bug|1474661}} Simulcast bitrates different than requested<br />
<br />
{{Bug|1477200}} Temporarily bump audio input and output latency on OSX as a stop-gap measure, on macbook pros<br />
<br />
{{Bug|1479027}} Test case from bug 1476600 hits assertion in MSG<br />
<br />
{{Bug|1479853}} SSRC switching logic can hit non-debug asserts in webrtc.org<br />
<br />
{{Bug|1480856}} getUserMedia with processing causes assertion in MediaEngineWebRTCAudio.cpp<br />
<br />
{{Bug|1481139}} Firefox for Android failed to load gmp-openh264 v1.7.1<br />
<br />
{{Bug|1481725}} re-evaluate minimum bitrate for 640xsomething resolution<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1448846}} Temporary ICMP error causing fatal error in ICE UDP socket?<br />
<br />
{{Bug|1473840}} IPv6 candidates ignored even if not MAC-based or Teredo<br />
<br />
{{Bug|1474517}} Sync rsdparsa from github<br />
<br />
{{Bug|1474808}} MediaPipeline::SetTransport doesn't always set mDescription<br />
<br />
{{Bug|1476640}} [Static Analysis] infer errors in media/mtransport/*.<br />
<br />
{{Bug|1477072}} Flip media.peerconnection.sdp.rust.enabled to True in Nightly<br />
<br />
{{Bug|1478000}} nICEr and nrappkit should use the same warnings under clang-cl as with clang<br />
<br />
{{Bug|1478685}} Incorrect MID is sent in RTP header extension<br />
<br />
{{Bug|1483338}} Key media transports by a string id rather than level<br />
<br />
{{Bug|1484024}} Add Telemetry for DHE cipher usage in WebRTC<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1335206}} Emit new SCTP data channel offer format in Fx >= 62<br />
<br />
{{Bug|1432920}} Support dtls-message parsing in Rust SDP Parser<br />
<br />
{{Bug|1432930}} Rust SDP Parser fails to produce an error on NewSdpTest.CheckMalformedImageattr<br />
<br />
{{Bug|1432931}} Rust SDP Parser fails to produce an error on NewSdpTest.ParseInvalidSimulcastNoSuchSendRid<br />
<br />
{{Bug|1432932}} Rust SDP Parser fails to produce an error on NewSdpTest.ParseInvalidSimulcastNoSuchRecvRid<br />
<br />
{{Bug|1432955}} Add telemetry for Rust SDP Parser<br />
<br />
{{Bug|1433529}} Fix TODOs in rsdparsa_capi parse_sdp<br />
<br />
{{Bug|1433534}} Clean up TODOs in RsdparsaSdpMediaSection.cpp<br />
<br />
{{Bug|1436403}} Set channels in Rust SDP Parser rather than in RsdparsaSdpAttributeList<br />
<br />
{{Bug|1437165}} Handle unimplemented attributes in RsdparsaSdpAttributeList::LoadAttribute<br />
<br />
{{Bug|1437166}} Implement RsdparsaSdpAttributeList::GetSsrcGroup()<br />
<br />
{{Bug|1437169}} Improve error checking in parse_fingerprint in attribute_type.rs<br />
<br />
{{Bug|1438290}} Implement RsdparsaSdpMediaSection::AddDataChannel<br />
<br />
{{Bug|1438536}} Add bool field to indicate whether direction was specified to RustSdpAttributeExtmap<br />
<br />
{{Bug|1438539}} rsdparsa needs to ensure there is a connection at the session level if it is missing at a media level<br />
<br />
{{Bug|1438574}} Rust SDP parser should not fail to parse unknown group semantics<br />
<br />
{{Bug|1444354}} sdp_unit_tests NewSdpTest::GetGroups() fails intermittently with rust sdp parser<br />
<br />
{{Bug|1472321}} Transceivers that are created recvonly/inactive don't have a peer identity when they have a send track<br />
<br />
{{Bug|1473686}} Enable SDP unit test CheckSctpmap<br />
<br />
{{Bug|1473967}} Add C++/Rust glue code for the SDP attribute maxptime<br />
<br />
{{Bug|1474711}} Add C++/Rust glue code for rtcp-fb transport-cc<br />
<br />
{{Bug|1474712}} Fix the ssrc parsing in the rust SDP parser<br />
<br />
{{Bug|1476081}} Remove output code that was used for debugging in the SDP code.<br />
<br />
{{Bug|1476085}} Add C++/Rust glue code for the SDP attribute candidate<br />
<br />
{{Bug|1476600}} Mid from stopped transceiver is reused<br />
<br />
{{Bug|1476644}} [Static Analysis] DEAD_STORE in media/webrtc/signaling/gtest/videoconduit_unittests.cpp<br />
<br />
{{Bug|1476750}} Rename the preference media.webrtc.rsdparsa_enabled<br />
<br />
{{Bug|1477815}} Remove RustSdpAttributeType<br />
<br />
{{Bug|1478367}} Move transceivers mochitest to web-platform-tests.<br />
<br />
{{Bug|1479510}} Add a telemetry probe for the SDP comparer that records failed rust parsings.<br />
<br />
{{Bug|1481548}} Implement a comparison function for SdpFmtpAttributeList<br />
<br />
{{Bug|1485592}} sdp_utils.c uses isdigit()<br />
<br />
{{Bug|1486817}} Use separate log modules for mediapipeline and rtplogger</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Firefox/Block_autoplay&diff=1199257Firefox/Block autoplay2018-08-09T23:36:42Z<p>Nohlmeier: Fixed spelling mistake</p>
<hr />
<div>Blocking audible media without user interaction.<br />
<br />
<br />
= Project Members =<br />
* Platform Engineering: Chris Pearce (Tech Lead), Alastor Wu, Nils Ohlmeier (Engineer Manager)<br />
* Front-End Engineering: Dale Harvey<br />
* User Experience: Mark Liang, Bryant Mao (till August, 2018)<br />
* Product Manager: Cindy Hsiang<br />
<br />
= Tracking Bug =<br />
*{{Bug|1376321}} -[meta] make media.autoplay.enabled=false work<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1376321",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "resolution,priority"<br />
}<br />
</bugzilla><br />
</onlyinclude><br />
<br />
= Frontend Tracking Bug =<br />
*{{Bug|1457425}} -[meta] [meta] Frontend work for block autoplay<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1457425",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "resolution,priority"<br />
}<br />
</bugzilla><br />
</onlyinclude></div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Firefox/Block_autoplay&diff=1199255Firefox/Block autoplay2018-08-09T23:18:56Z<p>Nohlmeier: Added frontend meta bug tracking</p>
<hr />
<div>Blocking audible video without user interaction.<br />
<br />
= Tracking Bug =<br />
*{{Bug|1376321}} -[meta] make media.autoplay.enabled=false work<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1376321",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "resolution,priority"<br />
}<br />
</bugzilla><br />
</onlyinclude><br />
<br />
= Frontend Tracking Bug =<br />
*{{Bug|1457425}} -[meta] [meta] Frontend work for block autoplay<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1457425",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "resolution,priority"<br />
}<br />
</bugzilla><br />
</onlyinclude></div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Firefox/Block_autoplay&diff=1199254Firefox/Block autoplay2018-08-09T23:13:25Z<p>Nohlmeier: Sort by resolution and priority</p>
<hr />
<div>Blocking audible video without user interaction.<br />
<br />
= Tracking Bug =<br />
*{{Bug|1376321}} -[meta] make media.autoplay.enabled=false work<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1376321",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "resolution,priority"<br />
}<br />
</bugzilla><br />
</onlyinclude></div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Firefox/Block_autoplay&diff=1199253Firefox/Block autoplay2018-08-09T23:10:06Z<p>Nohlmeier: Added the meta bug</p>
<hr />
<div>Blocking audible video without user interaction.<br />
<br />
= Tracking Bug =<br />
*{{Bug|1376321}} -[meta] make media.autoplay.enabled=false work<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1376321",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "priority"<br />
}<br />
</bugzilla><br />
</onlyinclude></div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Firefox/Block_autoplay&diff=1199252Firefox/Block autoplay2018-08-09T22:53:15Z<p>Nohlmeier: Initial place holder</p>
<hr />
<div>Blocking audible video without user interaction.<br />
<br />
TBD</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Firefox/Block_autoplay&diff=1199250Firefox/Block autoplay2018-08-09T22:47:35Z<p>Nohlmeier: Nohlmeier moved page Firefox/Block autoplay to Firefox/Block autoplay in background: New block autoplay project has name collision with the old project</p>
<hr />
<div>#REDIRECT [[Firefox/Block autoplay in background]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Firefox/Block_autoplay_in_background&diff=1199249Firefox/Block autoplay in background2018-08-09T22:47:34Z<p>Nohlmeier: Nohlmeier moved page Firefox/Block autoplay to Firefox/Block autoplay in background: New block autoplay project has name collision with the old project</p>
<hr />
<div>=Overview=<br />
<br />
== Background ==<br />
The Block Playback feature is designed to block media with enabled autoplay if the tabs are opened in the background. Videos which autoplay in the background will now have their load deferred until the tab is visible for the first time.<br><br />
This avoids autoplay during session restore and premature playback.Resources will still be preloaded but Firefox will delay the start of playback until the tab that contain a video with an enabled autoplay is visited. Once a tab / RenderFrame has ever played media before, it's allowed to continue to autoplay/autoload indefinitely; this is to support playlist type applications.The main advantages of the Block Playback feature is that it prevents obviously user annoyance but also conserves power as Firefox will only consume power once the tab is foregrounded<br />
<br />
==Overall Project Health==<br />
<font color="green">'''[GREEN, ON TRACK]'''</font> <br />
*QA has checked 100% of all bugs, bringing 5 more bugs for further clarification and follow-up.<br />
*In total, we have 17 bugs for tracking, 17 out of these 17 bugs are resolved, representing a 100% completion rate. <br />
<br />
==Target Milestone==<br />
<s>Firefox54</s> Firefox 56<br />
<br />
= The Team =<br />
<br />
* Engineering Project Manager: [mailto:bchien@mozilla.com Bobby Chien]<br />
* Engineer Owner:<br />
** [mailto:alwu@mozilla.com Alastor Wu]<br />
** [mailto:bwu@mozilla.com Blake Wu]<br />
* UX designers: [mailto:mliang@mozilla.com Mark Liang]<br />
* QA Contacts:<br />
** [mailto:emil.ghitta@softvision.ro Emil Ghitta] (irc: emilghitta) - QA Lead<br />
** [mailto:bogdan.maris@softvision.ro Bogdan Maris] (irc: bogdan_maris) - QA peer<br />
** [mailto:simona.marcu@softvision.ro Simona Badau] (irc: simonab) - QA<br />
<br />
= MVP Scope-Bug Tracking =<br />
*{{Bug|1308154}} -[meta] Block autoplay media until the tab is visible at first time<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1308154",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "bug_id"<br />
}<br />
</bugzilla><br />
</onlyinclude><br />
<br />
*{{Bug|1350869}} -Bug 1350869 -[QA] Block Playback feature tracking bug<br />
<onlyinclude><br />
<bugzilla><br />
{<br />
"blocks": "1350869",<br />
"include_fields": "id, priority, summary, status,resolution,assigned_to, last_change_time",<br />
"order": "bug_id"<br />
}<br />
</bugzilla><br />
</onlyinclude><br />
<br />
= UX Spec =<br />
*UX Spec: [https://mozilla.invisionapp.com/share/6T8UPZR8K UX Spec] <br />
*UX Bug reference:[https://bugzilla.mozilla.org/show_bug.cgi?id=1308399 Bug 1308399]<br />
<br />
=Signoff-Report =<br />
== Signoff-Report Summary ==<br />
*Mid- Auroa Signoff- RED *<br />
*Recommendation : DON'T SHIP IT.( Targeted GA: Firefox 54 - June 13, 2017)<br />
*Testing status: COMPLETED (100%). <br />
*4 passed (9%), 0 blocked (0%), 0 failed with known bugs (0%), 40 failed with new bugs (91%)<br />
<br />
== Signoff-Report Details ==<br />
*Proposed course of action: fix 1347758, 1349201 and 1349202 in order to make this feature eligible for shipping with Fx54.<br />
*New bugs uncovered during sign off: https://mzl.la/2nwWIIh.<br />
*Reason: 91% of our tests failed with a total of 7 bugs - https://mzl.la/2nwWIIh.<br />
*Bug 1347758 - HTML5 video/audio doesn't play if node was removed in background tab –> RESOLVED FIXED, 03/24 landed on Firefox55.<br />
*Bug 1349201 - Mute button is not working on several websites–> –> RESOLVED WORKSFORME, 03/21<br />
*Bug 1349202 - Block Playback feature is not working as intended on several websites–: Duplicate of Bug 1347758 <br />
*Bug 1350869 - [QA] Block Playback feature tracking bug<br />
<br />
=Test Case and Test plan=<br />
*Softvision Test Plan : [https://wiki.mozilla.org/QA/Block_Playback TestPlan]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1196193Media/WebRTC/ReleaseNotes2018-06-26T00:16:10Z<p>Nohlmeier: Added 62 release notes</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/62|Firefox 62]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/62&diff=1196192Media/WebRTC/ReleaseNotes/622018-06-26T00:15:39Z<p>Nohlmeier: Added noteworthy things</p>
<hr />
<div>=Firefox 62 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 62:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2IrG5o2 Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 62]<br />
<br />
== Noteworthy Changes: ==<br />
<br />
* RTP Logger logs in clear text now and doesn't truncate the labels at the end of line {{Bug|1465253}}<br />
<br />
* Screen capture on OSX 10.9 fixed {{Bug|1409018}}<br />
<br />
* Unreliable data channels are now really unreliable {{Bug|1464917}}<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1282262}} Intermittent dom/media/tests/mochitest/test_getUserMedia_mediaStreamClone.html | Test timed out.<br />
<br />
{{Bug|1282264}} Intermittent dom/media/tests/mochitest/test_getUserMedia_mediaStreamTrackClone.html | Test timed out.<br />
<br />
{{Bug|1455554}} [wpt-sync] Sync PR 10545 - Support the groupId property in MediaStreamTrack.getSettings()<br />
<br />
{{Bug|1455736}} [wpt-sync] Sync PR 10553 - Support groupId in MediaStremTrack.getCapabilities() for video tracks<br />
<br />
{{Bug|1455747}} [wpt-sync] Sync PR 10554 - Support groupId constrainable properties in MediaDevices.getUserMedia()<br />
<br />
{{Bug|1457361}} MediaElementAudioCaptureOfMediaStreamError used but not defined<br />
<br />
{{Bug|1457427}} Use ControlMessage to open a new driver from SourceStream<br />
<br />
{{Bug|1464050}} [wpt-sync] Sync PR 11138 - Support groupId in MediaStreamTrack.getCapabilities() for audio tracks<br />
<br />
{{Bug|1465408}} [wpt-sync] Sync PR 11245 - Support groupId in MediaDevices.getUserMedia() for audio tracks<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1266345}} Intermittent test_mediarecorder_principals.html | mediaRecorder.onerror must fire SecurityError<br />
<br />
{{Bug|1458552}} [wpt-sync] Sync PR 10772 - Add mediacapture-fromelement/OWNERS<br />
<br />
{{Bug|1458616}} [wpt-sync] Sync PR 10788 - Add mediacapture-image/OWNERS<br />
<br />
{{Bug|1458852}} HTMLMediaElement::GetCurrentImage may return old image<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1465299}} Update AudioIPC defaults in CubebUtils.cpp to match actual defaults in all.js<br />
<br />
{{Bug|1466066}} Update cubeb from upstream to abf6ae2<br />
<br />
{{Bug|1467882}} fix volume handling in sndio backend<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1413098}} Should also block web audio when the pref "media.autoplay.enabled=false"<br />
<br />
{{Bug|1456265}} ChannelSplitter constructor gives incorrect values<br />
<br />
{{Bug|1456946}} new ChannelSplitter(c, {channelCount: 6}) fails<br />
<br />
{{Bug|1458290}} [wpt-sync] Sync PR 10738 - Move AudioParam tests to WPT<br />
<br />
{{Bug|1458446}} Add AudioWorkletNode interface definitions<br />
<br />
{{Bug|1459036}} [wpt-sync] Sync PR 10829 - Move AudioBuffer tests to WPT<br />
<br />
{{Bug|1459259}} [wpt-sync] Sync PR 10851 - Move Analyser tests to WPT<br />
<br />
{{Bug|1459265}} [wpt-sync] Sync PR 10852 - Move AudioContext tests to WPT<br />
<br />
{{Bug|1460896}} Update AudioWorkletGlobalScope definitions<br />
<br />
{{Bug|1460907}} Implement AudioParamMap definitions<br />
<br />
{{Bug|1461540}} warning: ‘errorMessage’ may be used uninitialized, for MediaBufferDecoder.cpp:563:15<br />
<br />
{{Bug|1468085}} Audio(loudspeaker site) don't work on Nightly62.0a1<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1429507}} Crash near null [@ GraphRate]<br />
<br />
{{Bug|1456101}} Intermittent Linux xserver hang with webrtc screen capture hangs user's desktop<br />
<br />
{{Bug|1456706}} Low-hanging fruit in WebRTC web-platform-tests<br />
<br />
{{Bug|1459152}} [wpt-sync] Sync PR 10841 - Adds a test for basic WebRTC video codec conformance.<br />
<br />
{{Bug|1459617}} WebRTC ASan build fails with recent trunk clang (fixed in WebRTC upstream)<br />
<br />
{{Bug|1459826}} [wpt-sync] Sync PR 10884 - webrtc wpt: pass test in promise_test and async_test<br />
<br />
{{Bug|1459832}} [wpt-sync] Sync PR 10885 - Reland "Adds a test for basic WebRTC video codec conformance."<br />
<br />
{{Bug|1459903}} [wpt-sync] Sync PR 10893 - webrtc wpt: pass test function in more tests<br />
<br />
{{Bug|1461496}} [wpt-sync] Sync PR 10997 - Add test to verify a particular PeerConnection setup does not deadlock<br />
<br />
{{Bug|1461563}} WPT RTCPeerConnection-setRemoteDescription.html is incorrect with transceivers (timeout)<br />
<br />
{{Bug|1461614}} "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Werror,-W#warnings]<br />
<br />
{{Bug|1461712}} Nit: some misleading helper names in WPT webrtc<br />
<br />
{{Bug|1461904}} Intermittent AddressSanitizer: heap-use-after-free /builds/worker/workspace/build/src/media/mtransport/sigslot.h:318:13 in ~lock_block<br />
<br />
{{Bug|1462179}} Follow-up to WPT RTCPeerConnection-setRemoteDescription.html patch<br />
<br />
{{Bug|1464934}} [wpt-sync] Sync PR 11209 - Reland "More video protocol tests"<br />
<br />
{{Bug|1465253}} rtplogger MOZ_LOG setting truncates lines<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1409018}} Screen capture does not update on OS X since we started targetting OS X 10.9<br />
<br />
{{Bug|1434983}} Intermittent dom/media/tests/mochitest/test_peerConnection_basicScreenshare.html | Error in test execution: Error: Timeout checking for stats for track {d052d795-95ae-084a-871c-e234ceec9b38} after at least30000ms waitForRtpFlow@<br />
<br />
{{Bug|1450658}} Should bring window to front when screen-sharing a window<br />
<br />
{{Bug|1456071}} Permanent false-positive /webrtc/RTCDTMFSender-insertDTMF.https.html | application crashed [@ mozalloc_abort][@ webrtc::voe::ChannelProxy::SendTelephoneEventOutband]<br />
<br />
{{Bug|1458559}} [wpt-sync] Sync PR 10774 - Add media-capabilities/OWNERS<br />
<br />
{{Bug|1460559}} Enable tracing of new real time logger in dom/media/webrtc/* files<br />
<br />
{{Bug|1463581}} Stopping a live gUM track doesn't update the aggregated track.enabled state across track clones<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1374699}} Compiler warnings for nICEr and nrappkit<br />
<br />
{{Bug|1439236}} Crash in m_copym<br />
<br />
{{Bug|1455647}} Move SRTP logic out of MediaPipeline, and into mtransport<br />
<br />
{{Bug|1464917}} Unexpected retransmissions on a completely unreliable data channel<br />
<br />
{{Bug|1466175}} AddressSanitizer: SEGV /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/TransceiverImpl.cpp:1001:22 in Stop<br />
<br />
{{Bug|1466375}} Make nICEr compile as unified sources<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1432918}} Support Fmtp parsing in Rust SDP Parser<br />
<br />
{{Bug|1432922}} Fix parsing of a=rtcp-fb:* with Rust SDP Parser<br />
<br />
{{Bug|1432934}} Rust SDP Parser fails to produce an error on NewSdpTest.ParseInvalidSimulcastNotSending<br />
<br />
{{Bug|1432936}} Rust SDP Parser fails to produce an error on NewSdpTest.ParseInvalidSimulcastNotReceiving<br />
<br />
{{Bug|1433093}} Implement RsdparsaSdpMediaSection::SetPort(unsigned int port) Rust SDP Parser bindings<br />
<br />
{{Bug|1436080}} Implement RsdparsaSdp::AddMediaSection method<br />
<br />
{{Bug|1438289}} Implement RsdparsaSdpMediaSection::AddCodec and RsdparsaSdpMediaSection::ClearCodecs<br />
<br />
{{Bug|1464069}} LibFuzzer: STUN crash [@nr_stun_decode_message]<br />
<br />
{{Bug|1464162}} Make a few vector operations more efficient by reserving size beforehand.<br />
<br />
{{Bug|1467502}} Merge Rsdparser changes from github to mozilla central</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/62&diff=1196191Media/WebRTC/ReleaseNotes/622018-06-26T00:06:13Z<p>Nohlmeier: Filled the initial bug list from 62</p>
<hr />
<div>=Firefox 62 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 62:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2IrG5o2 Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 62]<br />
<br />
== Noteworthy Changes: ==<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1282262}} Intermittent dom/media/tests/mochitest/test_getUserMedia_mediaStreamClone.html | Test timed out.<br />
<br />
{{Bug|1282264}} Intermittent dom/media/tests/mochitest/test_getUserMedia_mediaStreamTrackClone.html | Test timed out.<br />
<br />
{{Bug|1455554}} [wpt-sync] Sync PR 10545 - Support the groupId property in MediaStreamTrack.getSettings()<br />
<br />
{{Bug|1455736}} [wpt-sync] Sync PR 10553 - Support groupId in MediaStremTrack.getCapabilities() for video tracks<br />
<br />
{{Bug|1455747}} [wpt-sync] Sync PR 10554 - Support groupId constrainable properties in MediaDevices.getUserMedia()<br />
<br />
{{Bug|1457361}} MediaElementAudioCaptureOfMediaStreamError used but not defined<br />
<br />
{{Bug|1457427}} Use ControlMessage to open a new driver from SourceStream<br />
<br />
{{Bug|1464050}} [wpt-sync] Sync PR 11138 - Support groupId in MediaStreamTrack.getCapabilities() for audio tracks<br />
<br />
{{Bug|1465408}} [wpt-sync] Sync PR 11245 - Support groupId in MediaDevices.getUserMedia() for audio tracks<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1266345}} Intermittent test_mediarecorder_principals.html | mediaRecorder.onerror must fire SecurityError<br />
<br />
{{Bug|1458552}} [wpt-sync] Sync PR 10772 - Add mediacapture-fromelement/OWNERS<br />
<br />
{{Bug|1458616}} [wpt-sync] Sync PR 10788 - Add mediacapture-image/OWNERS<br />
<br />
{{Bug|1458852}} HTMLMediaElement::GetCurrentImage may return old image<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1465299}} Update AudioIPC defaults in CubebUtils.cpp to match actual defaults in all.js<br />
<br />
{{Bug|1466066}} Update cubeb from upstream to abf6ae2<br />
<br />
{{Bug|1467882}} fix volume handling in sndio backend<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1413098}} Should also block web audio when the pref "media.autoplay.enabled=false"<br />
<br />
{{Bug|1456265}} ChannelSplitter constructor gives incorrect values<br />
<br />
{{Bug|1456946}} new ChannelSplitter(c, {channelCount: 6}) fails<br />
<br />
{{Bug|1458290}} [wpt-sync] Sync PR 10738 - Move AudioParam tests to WPT<br />
<br />
{{Bug|1458446}} Add AudioWorkletNode interface definitions<br />
<br />
{{Bug|1459036}} [wpt-sync] Sync PR 10829 - Move AudioBuffer tests to WPT<br />
<br />
{{Bug|1459259}} [wpt-sync] Sync PR 10851 - Move Analyser tests to WPT<br />
<br />
{{Bug|1459265}} [wpt-sync] Sync PR 10852 - Move AudioContext tests to WPT<br />
<br />
{{Bug|1460896}} Update AudioWorkletGlobalScope definitions<br />
<br />
{{Bug|1460907}} Implement AudioParamMap definitions<br />
<br />
{{Bug|1461540}} warning: ‘errorMessage’ may be used uninitialized, for MediaBufferDecoder.cpp:563:15<br />
<br />
{{Bug|1468085}} Audio(loudspeaker site) don't work on Nightly62.0a1<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1429507}} Crash near null [@ GraphRate]<br />
<br />
{{Bug|1456101}} Intermittent Linux xserver hang with webrtc screen capture hangs user's desktop<br />
<br />
{{Bug|1456706}} Low-hanging fruit in WebRTC web-platform-tests<br />
<br />
{{Bug|1459152}} [wpt-sync] Sync PR 10841 - Adds a test for basic WebRTC video codec conformance.<br />
<br />
{{Bug|1459617}} WebRTC ASan build fails with recent trunk clang (fixed in WebRTC upstream)<br />
<br />
{{Bug|1459826}} [wpt-sync] Sync PR 10884 - webrtc wpt: pass test in promise_test and async_test<br />
<br />
{{Bug|1459832}} [wpt-sync] Sync PR 10885 - Reland "Adds a test for basic WebRTC video codec conformance."<br />
<br />
{{Bug|1459903}} [wpt-sync] Sync PR 10893 - webrtc wpt: pass test function in more tests<br />
<br />
{{Bug|1461496}} [wpt-sync] Sync PR 10997 - Add test to verify a particular PeerConnection setup does not deadlock<br />
<br />
{{Bug|1461563}} WPT RTCPeerConnection-setRemoteDescription.html is incorrect with transceivers (timeout)<br />
<br />
{{Bug|1461614}} "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Werror,-W#warnings]<br />
<br />
{{Bug|1461712}} Nit: some misleading helper names in WPT webrtc<br />
<br />
{{Bug|1461904}} Intermittent AddressSanitizer: heap-use-after-free /builds/worker/workspace/build/src/media/mtransport/sigslot.h:318:13 in ~lock_block<br />
<br />
{{Bug|1462179}} Follow-up to WPT RTCPeerConnection-setRemoteDescription.html patch<br />
<br />
{{Bug|1464934}} [wpt-sync] Sync PR 11209 - Reland "More video protocol tests"<br />
<br />
{{Bug|1465253}} rtplogger MOZ_LOG setting truncates lines<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1409018}} Screen capture does not update on OS X since we started targetting OS X 10.9<br />
<br />
{{Bug|1434983}} Intermittent dom/media/tests/mochitest/test_peerConnection_basicScreenshare.html | Error in test execution: Error: Timeout checking for stats for track {d052d795-95ae-084a-871c-e234ceec9b38} after at least30000ms waitForRtpFlow@<br />
<br />
{{Bug|1450658}} Should bring window to front when screen-sharing a window<br />
<br />
{{Bug|1456071}} Permanent false-positive /webrtc/RTCDTMFSender-insertDTMF.https.html | application crashed [@ mozalloc_abort][@ webrtc::voe::ChannelProxy::SendTelephoneEventOutband]<br />
<br />
{{Bug|1458559}} [wpt-sync] Sync PR 10774 - Add media-capabilities/OWNERS<br />
<br />
{{Bug|1460559}} Enable tracing of new real time logger in dom/media/webrtc/* files<br />
<br />
{{Bug|1463581}} Stopping a live gUM track doesn't update the aggregated track.enabled state across track clones<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1374699}} Compiler warnings for nICEr and nrappkit<br />
<br />
{{Bug|1439236}} Crash in m_copym<br />
<br />
{{Bug|1455647}} Move SRTP logic out of MediaPipeline, and into mtransport<br />
<br />
{{Bug|1464917}} Unexpected retransmissions on a completely unreliable data channel<br />
<br />
{{Bug|1466175}} AddressSanitizer: SEGV /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/TransceiverImpl.cpp:1001:22 in Stop<br />
<br />
{{Bug|1466375}} Make nICEr compile as unified sources<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1432918}} Support Fmtp parsing in Rust SDP Parser<br />
<br />
{{Bug|1432922}} Fix parsing of a=rtcp-fb:* with Rust SDP Parser<br />
<br />
{{Bug|1432934}} Rust SDP Parser fails to produce an error on NewSdpTest.ParseInvalidSimulcastNotSending<br />
<br />
{{Bug|1432936}} Rust SDP Parser fails to produce an error on NewSdpTest.ParseInvalidSimulcastNotReceiving<br />
<br />
{{Bug|1433093}} Implement RsdparsaSdpMediaSection::SetPort(unsigned int port) Rust SDP Parser bindings<br />
<br />
{{Bug|1436080}} Implement RsdparsaSdp::AddMediaSection method<br />
<br />
{{Bug|1438289}} Implement RsdparsaSdpMediaSection::AddCodec and RsdparsaSdpMediaSection::ClearCodecs<br />
<br />
{{Bug|1464069}} LibFuzzer: STUN crash [@nr_stun_decode_message]<br />
<br />
{{Bug|1464162}} Make a few vector operations more efficient by reserving size beforehand.<br />
<br />
{{Bug|1467502}} Merge Rsdparser changes from github to mozilla central</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/Bugs&diff=1195703Media/Bugs2018-06-18T22:55:39Z<p>Nohlmeier: Update triage bugzilla links to show all Media bugs</p>
<hr />
<div>===Media combined - Playback, WebRTC, WebAudio, Cubeb, MediaStreamGraph, Media Recording===<br />
* [https://mzl.la/2tkh1cS Un-triaged bugs]<br />
* [https://mzl.la/2M0udeU Unconfirmed bugs]<br />
* [https://mzl.la/2JXqkXs P1 bugs]<br />
* [https://crash-stats.mozilla.com/search/?proto_signature=~Webrtc&proto_signature=~webrtc&proto_signature=~jsep&proto_signature=~VideoConduit&proto_signature=~MediaRecorder&proto_signature=~MediaStreamGraph&proto_signature=~rtc%3A%3A&proto_signature=~cubeb&proto_signature=~MediaEncoder&proto_signature=~MediaEngine&proto_signature=~MediaManager&product=Firefox&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature Crashes in WebRTC, MediaStreamGraph, cubeb, MediaRecorder]<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~webrtc&proto_signature=~MediaStream&proto_signature=~Webrtc&proto_signature=~cubeb&proto_signature=~jsep&proto_signature=~VideoConduit&proto_signature=~AudioConduit&proto_signature=~MediaPipeline&proto_signature=~MediaEngine&proto_signature=~MediaRecord&proto_signature=~MediaManager&proto_signature=~rtc%3A%3A&product=Firefox&version=61.0a1&version=60.0a1&version=60.0b&version=59.0.1&version=59.0&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature Just in 59/60/61 (Note: URL will need updates occasionally)]<br />
* WebAudio: Note that this has to be split due to URL-length limits in the server<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~WebAudio&proto_signature=~AudioNode&proto_signature=~AudioContext&proto_signature=~BufferDecoder&proto_signature=~OscillatorNode&proto_signature=~AudioDestination&proto_signature=~ScriptProcessorNode&proto_signature=~DelayNode&proto_signature=~AudioScheduled&proto_signature=~CompressorNode&proto_signature=~AudioListener&proto_signature=~ConstantSource&proto_signature=~PannerNode&proto_signature=~FilterNode&product=Firefox&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature WebAudio crashes -- first half]<br />
** [https://crash-stats.mozilla.com/search/?proto_signature=~DelayBuffer&proto_signature=~GainNode&proto_signature=~ShaperNode&proto_signature=~AudioSourceNode&proto_signature=~AudioEvent&proto_signature=~AudioProcessing&proto_signature=~ConvolverNode&proto_signature=~AudioParam&proto_signature=~HRTF&proto_signature=~WebCore&proto_signature=~AudioBuffer&proto_signature=~AnalyserNode&product=Firefox&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature WebAudio crashes -- 2nd half]<br />
<br />
===Core::Audio/Video (Main Component) Queries===<br />
<br />
* [http://mzl.la/1h3slCq Un-triaged Audio/Video bugs]<br />
** Help us triage. Any bug found in this search needs to be moved to one of the other media components (shown below)<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Playback Queries===<br />
<br />
* [https://bugzilla.mozilla.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo&component=Audio%2FVideo%3A%20Playback&list_id=14006559&priority=--&product=Core&query_format=advanced&query_based_on=&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cshort_desc%2Cpriority%2Cchangeddate Untriaged Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P1&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P1 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P2&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P2 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P3&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P3 Playback bugs]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P5&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Audio%2FVideo%3A%20Playback&product=Core P5 Playback bugs]<br />
* [https://is.gd/media_playback_triaged Open Playback bugs]<br />
<br />
===Core::Audio/Video - MediaStreamGraph Bugzilla Queries===<br />
<br />
* [http://mzl.la/1RC0aXs Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1RC0fug Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1RC0oxP Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1RBZUb6 Un-triaged MediaStreamGraph bugs]<br />
**Search based on Open MediaStreamGraph component bugs that have priority flag set]<br />
* [http://mzl.la/1RC02r8 Unconfirmed MediaStreamGraph bugs]<br />
**Search based on Open MediaStreamGraph component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Cubeb Bugzilla Queries===<br />
<br />
* [http://mzl.la/1HjtQrV Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1HjtUIj Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1HjtW2Y Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1Hju0Qg Un-triaged Cubeb bugs]<br />
**Search based on Open Cubeb component bugs that have priority flag set]<br />
* [http://mzl.la/1Hju7Lu Unconfirmed Cubeb bugs]<br />
**Search based on Open Cubeb component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - GMP (Gecko Media Plugin) Bugzilla Queries===<br />
<br />
* [http://mzl.la/1Q3CLBo Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1HjuaXK Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results <br />
* [http://mzl.la/1NceYey Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1Hjujui Un-triaged GMP bugs]<br />
**Search based on Open GMP component bugs that have priority flag set]<br />
* [http://mzl.la/1HjuoOK Unconfirmed GMP bugs]<br />
**Search based on Open GMP component bugs that have priority flag set]<br />
<br />
<p> </p><br />
<br />
===Core::Audio/Video - Recording Bugzilla Queries===<br />
<br />
* [http://mzl.la/1jXz16N Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1M0rudk Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1MTEvYw Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority. <br />
* [http://mzl.la/1iH134R Un-triaged Recording bugs]<br />
**Search based on Open Recording component bugs that have no Backlog flag being set]<br />
* [http://mzl.la/1M0qXZ2 Unconfirmed Recording bugs]<br />
**Search based on Open Recording component bugs that have no Backlog flag being set]<br />
<br />
<p> </p><br />
<br />
===Web Audio Bugzilla Queries===<br />
<br />
* [http://mzl.la/1MTEa8b Bugzilla Ranked "P1"" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1MTEbsR Bugzilla Ranked "P2" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
* [http://mzl.la/1MTEbJp Bugzilla Ranked "P3 to P5 list] <br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority. <br />
* [http://mzl.la/1M0izbQ Un-triaged Web Audio bugs]<br />
**Search based on Open WebAudio component bugs that have no Backlog flag being set]<br />
* [http://mzl.la/1MTEggc Unconfirmed Web Audio bugs]<br />
**Search based on Open WebAudio component bugs that have no Backlog flag being set]<br />
<br />
<p> </p><br />
<br />
===WebRTC Bugzilla Queries===<br />
<br />
* [http://mzl.la/1S1PrWF Bugzilla Ranked "P1" - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1RPW8tq Bugzilla Ranked "P2" - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
* [http://mzl.la/1Cos5lF Bugzilla Ranked "P3 to P5 - backlog="webRTC+" or "backlog"="tech-debt" list] <br />
**Add the "Rank" Column to your results and sort on Rank <br />
***The option to "Change columns" is at bottom of search results<br />
** P3 bugs are unlikely to be fixed within the next 6 months; patches are welcome. P4 and P5 bugs will not get engineering time, but we will accept patches for P4 bugs. If you need a bug fixed sooner and can't contribute a patch or if you disagree with how a bug is prioritized, please needinfo the triage owner of that bug about raising the priority.<br />
* [http://mzl.la/1h2L6WT Un-triaged WebRTC bugs]<br />
**Search based on Open WebRTC bugs that have no Backlog flag set]<br />
* [http://mzl.la/1S1RN7L Unconfirmed WebRTC bugs]<br />
**Search based on Open WebRTC bugs that have no Backlog flag set]<br />
* [http://mzl.la/1MUt9bh Parking-lot bugs]<br />
** Search based on Open WebRTC bugs that have the parking-lot flag set]<br />
** NOTE: parking-lot bugs are the same as P5 bugs; we will not be dedicating time to fixing these. If you need a parking-lot bug fixed, please needinfo the triage owner of that bug about raising the priority.</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1194360Media/WebRTC/ReleaseNotes2018-05-23T16:45:59Z<p>Nohlmeier: Fixed displayed version number</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/61|Firefox 61]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1194359Media/WebRTC/ReleaseNotes2018-05-23T16:45:17Z<p>Nohlmeier: Added 61 release notes link</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 61]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/61&diff=1194358Media/WebRTC/ReleaseNotes/612018-05-23T16:44:26Z<p>Nohlmeier: Initial 61 release note list</p>
<hr />
<div>=Firefox 61 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 61:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2x6zFdp Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 61]<br />
<br />
== Noteworthy Changes: ==<br />
<br />
Firefox now ensures unique Extmap IDs in bundled transports {{Bug|1406529}}<br />
<br />
PeerIdentity implementation API is now up to spec {{Bug|1446880}}<br />
<br />
Firefox can now have multiple MediaStreamGraphs per process, one per audio sampling rate {{Bug|1387454}} <br />
<br />
==Bug tickets fixed in Firefox 61 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1456630}} Avoid main-thread IO creating SystemInfo when starting up GMP service<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1387454}} Have multiple MediaStreamGraphs per process, one per audio sampling rate<br />
<br />
{{Bug|1407549}} Bad performance of TrackUnionStream::CopyTrackData<br />
<br />
{{Bug|1437002}} [wpt-sync] PR 9388 - Support MediaStreamTrack.getCapabilities() for echoCancellation and deviceId<br />
<br />
{{Bug|1437366}} Sound card sample rate affects mixer.com audio (FF 59 Beta)<br />
<br />
{{Bug|1442221}} [wpt-sync] Sync PR 9733 - Introduce InputDeviceInfo interface<br />
<br />
{{Bug|1447273}} WebAudio changing volume not working<br />
<br />
{{Bug|1452088}} [wpt-sync] Sync PR 9927 - Implement InputDeviceInfo.getCapabilities() for audio devices<br />
<br />
{{Bug|1452993}} Replace unnecessary MediaStreamGraph::GetInstance call in MediaManager<br />
<br />
{{Bug|1457058}} remove unused GraphDriver::RemoveCallback<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1444541}} MediaRecorder goes to a stopped state when pulling out a tab<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1431221}} 4.0 audio file doesn't play properly<br />
<br />
{{Bug|1432779}} Have cubeb use same channel configuration as Windows/FFmpeg and rework cubeb_mixer<br />
<br />
{{Bug|1436713}} Crash in audiounit_enumerate_devices<br />
<br />
{{Bug|1443525}} Add a test to ensure we're not crashing if cubeb_init fails<br />
<br />
{{Bug|1445067}} black flashing and content process crash when reading article on the atlantic (IPDL error [PCompositorBridgeChild]: "constructor for actor failed")<br />
<br />
{{Bug|1445546}} Ensure COM is correctly initialized on all threads that call into libcubeb<br />
<br />
{{Bug|1446233}} Update audioipc to support cpupool stack size and thread size.<br />
<br />
{{Bug|1447097}} Crash in audioipc server: access outside bounds of object<br />
<br />
{{Bug|1448627}} Crash in MixerContext::MixerContext<br />
<br />
{{Bug|1448883}} Cubeb refuses to open a stream if it contains more than 8 channels<br />
<br />
{{Bug|1449342}} Mono sound only plays on left side<br />
<br />
{{Bug|1449555}} Crash in static HRESULT `anonymous namespace'::get_default_endpoint<br />
<br />
{{Bug|1458199}} Update cubeb from upstream to 44341a1<br />
<br />
{{Bug|776137}} Video and Sound (Youtube) asynchronous if AirPlay is enabled<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1437041}} [wpt-sync] PR 9441 - Upstream IIRFilterNode tests to WPT<br />
<br />
{{Bug|1438319}} [wpt-sync] PR 9524 - Fix timeouts in WPT AudioParam tests<br />
<br />
{{Bug|1438628}} [wpt-sync] PR 9548 - Fix WebAudio WPT tests that timeout.<br />
<br />
{{Bug|1440806}} [wpt-sync] Sync PR 9654 - Move more chrome webaudio layout tests to WPT<br />
<br />
{{Bug|1442809}} [wpt-sync] Sync PR 9798 - Upstream ConvolverNode tests to WPT<br />
<br />
{{Bug|1443224}} ChannelMerger should throw errors on invalid values of count and mode<br />
<br />
{{Bug|1443250}} [wpt-sync] Sync PR 9823 - Move merger/splitter tests to WPT<br />
<br />
{{Bug|1443628}} [wpt-sync] Sync PR 9883 - Upstream AudioWorklet tests to WPT suite<br />
<br />
{{Bug|1444102}} [wpt-sync] Sync PR 9925 - Set array length to 0 for disconnected worklet input<br />
<br />
{{Bug|1446218}} [wpt-sync] Sync PR 10062 - Web Platorm Tests: add /interfaces/webaudio.idl and corresponding test<br />
<br />
{{Bug|1446346}} Intermittent dom/media/webaudio/test/test_audioParamLinearRamp.html | maxDifference: 0.8999999985098839, first bad index: 0 with test-data offset 0 and expected-data offset 0; corresponding values 1 and 0.10000000149011612<br />
<br />
{{Bug|1446394}} Intermittent dom/media/webaudio/test/test_audioParamSetTargetAtTimeZeroTimeConstant.html | maxDifference: 0.799999974668026, first bad index: 0 with test-data offset 0 and expected-data offset 0; corresponding values 0.8999999761581421<br />
<br />
{{Bug|1446591}} Intermittent dom/media/webaudio/test/test_audioParamExponentialRamp.html | maxDifference: 0.8999999985098839, first bad index: 0 with test-data offset 0 and expected-data offset 0; corresponding values 1 and 0.10000000149011612 --- differences - got 1765<br />
<br />
{{Bug|1452320}} [wpt-sync] Sync PR 10320 - Move AudioNode tests to WPT<br />
<br />
{{Bug|1454455}} [wpt-sync] Sync PR 10490 - Implement selectable AudioParam rate<br />
<br />
{{Bug|1454516}} [wpt-sync] Sync PR 10496 - Apply automatic pull for AudioWorkletNode with zero output<br />
<br />
{{Bug|1455442}} [wpt-sync] Sync PR 10541 - Move BiquadFilter tests to WPT<br />
<br />
{{Bug|1456259}} AnalyserNode constructor issues<br />
<br />
{{Bug|1456266}} ConstantsourceNode.channelCount<br />
<br />
{{Bug|1456980}} [wpt-sync] Sync PR 10643 - Move WebAudio node constructor tests to WPT<br />
<br />
{{Bug|1457013}} AudioBuffer ctor throws wrong exceptions with out-of-range arguments<br />
<br />
{{Bug|1458089}} [wpt-sync] Sync PR 10720 - Move AudioBuffer ctor test to WPT.<br />
<br />
{{Bug|1458673}} AudioBufferSource.start and stop throws incorrect errors<br />
<br />
{{Bug|1458979}} AudioBuffer copy to/from channel throws incorrect errors<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1375540}} Intermittent TEST-UNEXPECTED-TIMEOUT | dom/media/tests/mochitest/test_peerConnection_basicH264Video.html | application timed out after 330/370 seconds with no output<br />
<br />
{{Bug|1394602}} Receiving media before signaling can cause crashes<br />
<br />
{{Bug|1432793}} Crash in mozalloc_abort | abort | webrtc::ViEEncoder::ReconfigureEncoder<br />
<br />
{{Bug|1434477}} getUserMedia for fake streams never returns<br />
<br />
{{Bug|1437345}} Firefox build failed with disable-pulseaudio and enable-alsa<br />
<br />
{{Bug|1437488}} [wpt-sync] PR 9479 - Improve RTCRtpSender.replaceTrack tests compability with Firefox<br />
<br />
{{Bug|1437670}} webrtc fails to build on bsd since switch to gn build<br />
<br />
{{Bug|1438459}} [wpt-sync] PR 9516 - Make WPT webrtc/simplecall.html pass<br />
<br />
{{Bug|1439503}} [wpt-sync] Sync PR 9583 - Add the "dtmf" attribute on RTCRTPSender<br />
<br />
{{Bug|1444007}} browser/base/content/test/webrtc/browser_devices_get_user_media_multi_process.js abuses promise returned by BrowserTestUtils.removeTab<br />
<br />
{{Bug|1445802}} Permafailing tier2 GECKO(10468) | Assertion failure: CompositorThreadHolder::IsInCompositorThread(), at z:/build/build/src/gfx/layers/ipc/SharedSurfacesParent.cpp:199<br />
<br />
{{Bug|1445860}} NullPtr crash on setting Identity on RecvOnly Transceiver<br />
<br />
{{Bug|1446391}} [wpt-sync] Sync PR 10075 - Add memory of last SDP offer/answer created<br />
<br />
{{Bug|1446880}} Update Identity implementation<br />
<br />
{{Bug|1447180}} Intermittent browser/base/content/test/webrtc/browser_devices_get_user_media_multi_process.js | recording-device-events notification unexpected - Got 1, expected 0<br />
<br />
{{Bug|1447311}} [wpt-sync] Sync PR 10109 - Test that DTMFSender rejects properly after close<br />
<br />
{{Bug|1447692}} RTCDataChannelEventInit is required<br />
<br />
{{Bug|1447986}} [wpt-sync] Sync PR 10142 - RTCRtpSender.getStats() in blink added behind flag.<br />
<br />
{{Bug|1450921}} [wpt-sync] Sync PR 10278 - Don't enforce name rule for RTCDTMFToneChangeEvent<br />
<br />
{{Bug|1452673}} RTCRtpSender.getStats() returns too much data when sender.track is null<br />
<br />
{{Bug|1453030}} Crash [@ mozilla::WebrtcVideoConduit::ConfigureRecvMediaCodecs]<br />
<br />
{{Bug|1453975}} [wpt-sync] Sync PR 10458 - Fix race in track-stats.https.html test.<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1376960}} Set prefs to automate gUM-prompts for WPT<br />
<br />
{{Bug|1436523}} Need to allow fake camera and loopback audio at the same time.<br />
<br />
{{Bug|1438134}} Failed applyConstraints may still change resolution<br />
<br />
{{Bug|1440255}} Crash @ java.lang.RuntimeException: Camera thread already started! at org.webrtc.videoengine.VideoCaptureAndroid.startCapture(VideoCaptureAndroid.java) - Tokbox crashes on Nightly<br />
<br />
{{Bug|1441585}} getUserMedia camera fails to start on android sometimes due to preview/picture size mismatch<br />
<br />
{{Bug|1443803}} Intermittent application crashed [@ mozilla::Atomic<bool, (mozilla::MemoryOrdering)2u, void>::operator bool] in test_peerConnection_transceivers.html<br />
<br />
{{Bug|1444363}} Intermittent dom/media/tests/mochitest/test_peerConnection_basicH264Video.html | unexpected-crash-dump-found - This test left crash dumps behind, but we weren't expecting it to!<br />
<br />
{{Bug|1444976}} Define, implement and land a way to measure audio thread load during a scenario<br />
<br />
{{Bug|1447982}} getSettings for microphone broken after applyConstraints makes changes<br />
<br />
{{Bug|1448031}} make various audio/video/media constructors explicit<br />
<br />
{{Bug|1448863}} Stop sync dispatching in mozilla::WebrtcGmpVideoDecoder::Decode<br />
<br />
{{Bug|1449178}} MediaEngineWebRTC doesn't clear device IDs while updating device list if GetCubebContext fails<br />
<br />
{{Bug|1449832}} getUserMedia crops video track when requesting screen with single dimension constraint<br />
<br />
{{Bug|1450954}} getUserMedia reports incorrect track settings when requesting screen with single dimension constraint<br />
<br />
{{Bug|1451798}} Video facingMode regression<br />
<br />
{{Bug|1452031}} OverConstrainedError typo on applyConstraints()<br />
<br />
{{Bug|1452048}} Camera thread hang when trying to reconfig android camera capture<br />
<br />
{{Bug|1452472}} Crash in InvalidArrayIndex_CRASH | nsTArray_Impl<T>::operator[] | mozilla::MediaEngineWebRTCMicrophoneSource::Stop<br />
<br />
{{Bug|1453648}} Remove special handling for "Sine source at 440 Hz"<br />
<br />
{{Bug|1453740}} Crash when shared window is minimized<br />
<br />
{{Bug|1454625}} A gUM-video's resolution settings may be incorrect<br />
<br />
{{Bug|1456115}} Make some code called on the MSG thread a bit more real-time safe<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1443032}} Crash on SCTP shutdown | crash in sctp_setopt<br />
<br />
{{Bug|1448230}} Intermittent leakcheck | default process: 1536 bytes leaked (CondVar, DataChannelConnection, DataChannelConnectionShutdown, Mutex, PollableEvent, ...)<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1363900}} Turn RTP header extension ID mismatch into error<br />
<br />
{{Bug|1379265}} Write C++ bindings to rsdparsa and integrate into existing SDP code<br />
<br />
{{Bug|1406529}} Ensure unique Extmap IDs in bundled transports<br />
<br />
{{Bug|1446583}} [WebRTC] Update location for setting trace-pc coverage flags for LibFuzzer<br />
<br />
{{Bug|1447015}} Re-enable test_peerConnection_transceivers on linux debug<br />
<br />
{{Bug|1449042}} bytesReceived but no video after adding video in second round of negotiation<br />
<br />
{{Bug|1449272}} offerToReceiveAudio and offerToReceiveVideo create m-sections in reverse order<br />
<br />
{{Bug|1455557}} WebRTC: incorrect handling CRLF/LF in SDP may break NACK</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes&diff=1192195Media/WebRTC/ReleaseNotes2018-04-11T17:16:40Z<p>Nohlmeier: Added links to all existing WebRTC release note pages</p>
<hr />
<div>== Beta ==<br />
* [[Media/WebRTC/ReleaseNotes/60|Firefox 60]]<br />
== Releases ==<br />
* [[Media/WebRTC/ReleaseNotes/59|Firefox 59]]<br />
* [[Media/WebRTC/ReleaseNotes/58|Firefox 58]]<br />
* [[Media/WebRTC/ReleaseNotes/57|Firefox 57]]<br />
* [[Media/WebRTC/ReleaseNotes/56|Firefox 56]]<br />
* [[Media/WebRTC/ReleaseNotes/55|Firefox 55]]<br />
* [[Media/WebRTC/ReleaseNotes/54|Firefox 54]]<br />
* [[Media/WebRTC/ReleaseNotes/53|Firefox 53]]<br />
* [[Media/WebRTC/ReleaseNotes/52|Firefox 52]]<br />
* [[Media/WebRTC/ReleaseNotes/51|Firefox 51]]<br />
* [[Media/WebRTC/ReleaseNotes/50|Firefox 50]]<br />
* [[Media/WebRTC/ReleaseNotes/49|Firefox 49]]<br />
* [[Media/WebRTC/ReleaseNotes/48|Firefox 48]]<br />
* [[Media/WebRTC/ReleaseNotes/47|Firefox 47]]<br />
* [[Media/WebRTC/ReleaseNotes/46|Firefox 46]]<br />
* [[Media/WebRTC/ReleaseNotes/45|Firefox 45]]<br />
* [[Media/WebRTC/ReleaseNotes/44|Firefox 44]]<br />
* [[Media/WebRTC/ReleaseNotes/43|Firefox 43]]<br />
* [[Media/WebRTC/ReleaseNotes/42|Firefox 42]]<br />
* [[Media/WebRTC/ReleaseNotes/41|Firefox 41]]<br />
* [[Media/WebRTC/ReleaseNotes/40|Firefox 40]]</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/60&diff=1190945Media/WebRTC/ReleaseNotes/602018-03-22T16:20:16Z<p>Nohlmeier: Created initial release notes</p>
<hr />
<div>=Firefox 60 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 60:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2pzn6QP Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 60]<br />
<br />
== Noteworthy Changes: ==<br />
<br />
RTP packets with padding no longer get dropped {{Bug|1435025}}<br />
<br />
Turn off camera/microphone while all tracks are muted/disabled. {{Bug|1299515}}<br />
<br />
Rename DataChannel to RTCDataChannel per specification {{Bug|1173851}}<br />
<br />
==Bug tickets fixed in Firefox 60 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1436267}} GraphImpl()->CurrentDriver() == aPreviousDriver assertion failure in SetGraphTime()<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1411857}} Webrtc mediaRecorder.start timeslice not working<br />
<br />
{{Bug|1433062}} Write unittest for VP8TrackEncoder's custom keyframe interval<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1428952}} Update audioipc to use Tokio for async processing of sockets.<br />
<br />
{{Bug|1432733}} Update cubeb from upstream to 2b98e3d<br />
<br />
{{Bug|1432869}} Update cubeb from upstream to 4c18a84<br />
<br />
{{Bug|1433384}} Crash in audiounit_enumerate_devices<br />
<br />
{{Bug|1434156}} Allow Linux AudioIPC to ride the trains<br />
<br />
{{Bug|1435307}} Update cubeb from upstream to cc0d538<br />
<br />
{{Bug|1438888}} Update cubeb from upstream to 1d53c3a<br />
<br />
{{Bug|1440538}} Update Cubeb-rs to v0.4<br />
<br />
{{Bug|1441588}} Assertion failure: sPreferredSampleRate, at /builds/worker/workspace/build/src/dom/media/CubebUtils.cpp:313<br />
<br />
{{Bug|1442640}} Crash in cubeb_enumerate_devices<br />
<br />
{{Bug|1442753}} cmake is invoked during build but not declared as dependency via configure or mach bootstrap<br />
<br />
{{Bug|1443368}} PulseRust backend asserts that 'assertion failed: `(left != right)`'<br />
<br />
{{Bug|1443528}} Extend Telemetry::AUDIOSTREAM_BACKEND_USED telemetry probe<br />
<br />
{{Bug|1443612}} Pre-start cubeb before content sandboxing if media.cubeb.sandbox is false<br />
<br />
{{Bug|1443988}} Update audioipc to 7e866e5 from upstream<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1436096}} Panner node equal power should have different output for mono and stereo<br />
<br />
{{Bug|1439046}} UBSan: division by zero in [@ WebCore::DynamicsCompressorKernel::process]<br />
<br />
{{Bug|1441361}} [wpt-sync] Sync PR 9412 - Upstream PannerNode tests to WPT<br />
<br />
{{Bug|1441500}} Remove smoothing of delayTime in DelayNode<br />
<br />
{{Bug|1443228}} Convolver should throw NotSupportedError for invalid channel count<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1339568}} Intermittent shutdown hang in linux32/64 mochitest-media-e10s jobs<br />
<br />
{{Bug|1393119}} Build webrtc.org code using 'gn'<br />
<br />
{{Bug|1409868}} Include date on closed sessions in about:webrtc<br />
<br />
{{Bug|1414171}} Organize candidates in the ICE stats section by components<br />
<br />
{{Bug|1414176}} Fix failure WebRTC tests relying on non-comformant Promise handling<br />
<br />
{{Bug|1415886}} argument name 'reuse' in comment does not match parameter name 'addressReuse'<br />
<br />
{{Bug|1431891}} Intermittent leakcheck | tab process: 2176 bytes leaked (ChildDNSService, Mutex, NrIceResolver, PeerConnectionMedia, PollableEvent, ...)<br />
<br />
{{Bug|1432923}} gtest TransportTest.TestConnectVerifyNewECDHE leaks NSS resources somehow<br />
<br />
{{Bug|1433576}} Change timebase used in RTCRtpContributingSource and RTCRtpSynchronizationSource<br />
<br />
{{Bug|1434803}} PeerConnectionImpl errors get swallowed in the binding layer in a bunch of cases<br />
<br />
{{Bug|1435025}} Rtp padding packets dropped as invalid packets<br />
<br />
{{Bug|1435695}} WebRTC fails to build with GCC 8<br />
<br />
{{Bug|1436759}} Intermittent SUMMARY: AddressSanitizer: heap-use-after-free /builds/worker/workspace/build/src/media/mtransport/sigslot.h:2007:11 in sigslot::_connection4<mozilla::TransportLayerIce, mozilla::NrIceMediaStream*, int, unsigned char const*, int, sigslot::si<br />
<br />
{{Bug|1439001}} receiver.getSynchronizationSources()[0].audioLevel only present in two-way calls<br />
<br />
{{Bug|1439041}} Improve mochitest for RTP sources by making some assumptions assertions<br />
<br />
{{Bug|1439076}} csrc-audio-level support is not offered<br />
<br />
{{Bug|1441260}} Unify interface for setting RTP headers for Audio and Video conduits<br />
<br />
{{Bug|1442404}} Crash in mozilla::NrUdpSocketIpc::create<br />
<br />
{{Bug|1443198}} Crash [@ operator!]<br />
<br />
{{Bug|1443281}} Intermittent browser/base/content/test/webrtc/browser_devices_get_user_media_tear_off_tab.js | A promise chain failed to handle a rejection: this.window is null - stack: null<br />
<br />
{{Bug|1443640}} Intermittent toolkit/components/extensions/test/xpcshell/test_ext_i18n_css.js | xpcshell return code: 0<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1280099}} Intermittent test_peerConnection_trackDisabling.html | Test timed out.<br />
<br />
{{Bug|1299515}} Turn off camera/microphone while all tracks are muted/disabled.<br />
<br />
{{Bug|1333468}} Implement "Device Accessible" privacy indicator (spec requirement)<br />
<br />
{{Bug|1408294}} getUserMedia request with audio stalls the video track if no audio output available<br />
<br />
{{Bug|1423582}} Large-buffer leak in MediaEngineRemoteVideoSource<br />
<br />
{{Bug|1426718}} Assert that we append audio at most once per stream per iteration. r?padenot<br />
<br />
{{Bug|1429390}} Make H.264 Encode dispatch asynchronous<br />
<br />
{{Bug|1430856}} Crash in std::_Function_handler<T>::_M_invoke<br />
<br />
{{Bug|1430993}} Replace RefPtr with StaticRefPtr to avoid the static constructor<br />
<br />
{{Bug|1431056}} test_peerConnection_replaceTrack.html fails with loopback tone enabled.<br />
<br />
{{Bug|1433552}} Crash in mozilla::camera::ResolutionFeasibilityDistance<br />
<br />
{{Bug|1434439}} Firefox can get stuck in mode where it always downscales camera video unnecessarily.<br />
<br />
{{Bug|1434600}} MediaManager and MediaEngine*Source are being kept alive until the process exits<br />
<br />
{{Bug|1434628}} Tier-2 windows-mingw32-32 debug build bustage<br />
<br />
{{Bug|1434861}} Unnecessary frame copying in MediaEngineRemoteVideoSource::DeliverFrame<br />
<br />
{{Bug|1434946}} MediaEngineRemoteVideoSource getSettings no longer reports constrained framerate<br />
<br />
{{Bug|1434958}} Allow using gstreamer 1.0 and don't hardcode paths when setting up fake devices for webrtc testing<br />
<br />
{{Bug|1434988}} Audio loopback mochitest may use private devices on linux (and it can be loud!)<br />
<br />
{{Bug|1435670}} Crash in std::__1::__function::__func<T>::operator()<br />
<br />
{{Bug|1435673}} Crash in libsystem_pthread.dylib@0x1530<br />
<br />
{{Bug|1436074}} Reduce timer for turning off camera on disable by time camera has already been on<br />
<br />
{{Bug|1436117}} A WrappedI420Buffer in MediaPipeline might outlive its buffer<br />
<br />
{{Bug|1436341}} On Windows the camera light is not turned off after you disabled the camera.<br />
<br />
{{Bug|1436352}} Camera with microphone might have light on when disabled in application<br />
<br />
{{Bug|1436694}} SourceListener in bad state after initial Start() fails<br />
<br />
{{Bug|1436959}} Devicechange event is not changed if you unplug a camera<br />
<br />
{{Bug|1438538}} The microphone icon from the URL bar is not displayed if you activate your microphone<br />
<br />
{{Bug|1438554}} [Mac] Crash in webrtc::videocapturemodule::VideoCaptureImpl::IncomingFrame<br />
<br />
{{Bug|1439529}} No video stream on webRTC - Xiaomi & Huawei devices<br />
<br />
{{Bug|1440040}} Intermittent GECKO(1045) | Assertion failure: (aGraph->IterationEnd() == 0 && mLastAppendTime == 0) || aGraph->IterationEnd() > mLastAppendTime), at /builds/worker/workspace/build/src/dom/media/webrtc/MediaEngineWebRTCAudio<br />
<br />
{{Bug|1440169}} Intermittent TEST-UNEXPECTED-TIMEOUT | dom/media/tests/mochitest/test_peerConnection_verifyAudioAfterRenegotiation.html | application timed out after 370 seconds with no output<br />
<br />
{{Bug|1440252}} getUserMedia processing test page does not function accordingly<br />
<br />
{{Bug|1440356}} Sharing indicators missing/incorrect when sharing devices in multiple frames<br />
<br />
{{Bug|1441145}} Wrong video stream resolution<br />
<br />
{{Bug|1442294}} When video disabled (A/V situation) the red camera icon (URL bar) should be downgraded to the red microphone icon(URL bar)<br />
<br />
{{Bug|1443585}} No need to use fake devices in test_pc_trackDisabling.html<br />
<br />
{{Bug|1444074}} getUserMedia fails when full-duplex is disabled<br />
<br />
{{Bug|1444175}} Mark CamerasParent as final<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1173851}} Rename DataChannel to RTCDataChannel per specification<br />
<br />
{{Bug|1411977}} RUN_ON_THREAD() should not "queue jump" when dispatching to same-thread<br />
<br />
{{Bug|1424398}} Intermittent leakcheck | tab process: 6864 bytes leaked (ChildDNSRecord, ChildDNSService, DNSListenerProxy, DNSRequestChild, Mutex, ...)<br />
<br />
{{Bug|1434531}} [firefox 58] WebRTC problem with TURNs in tcp<br />
<br />
{{Bug|1437832}} RTCPeerconnection.removeTrack throws exception<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1290949}} pc.removeTrack should not remove sender from pc.getSenders()<br />
<br />
{{Bug|1425618}} {offerToReceiveAudio: false} and {offerToReceiveVideo: false} stopped working.<br />
<br />
{{Bug|1426831}} Maximum message size reset to default when creating data channels at a later stage<br />
<br />
{{Bug|1435013}} Offer created with offerToReceive false does not reflect the transceiver state<br />
<br />
{{Bug|1437741}} Firefox 59 generates m=application line first instead of last in SDP<br />
<br />
{{Bug|1439736}} Create mochitest for synchronization sources in a unidirectional call<br />
<br />
{{Bug|1441192}} Reference cycle caused by PeerConnectionMedia::mQueuedIceCtxOperations<br />
<br />
{{Bug|1442385}} Remove dead onremovestream code</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/59&diff=1188438Media/WebRTC/ReleaseNotes/592018-02-02T18:01:17Z<p>Nohlmeier: Updated Bugzilla search URL</p>
<hr />
<div>=Firefox 59 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 59:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2DXGVYh Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 59]<br />
<br />
== Noteworthy Changes: ==<br />
<br />
* Transceivers are now available in Firefox {{bug|1290948}}<br />
<br />
* getContributingSources is now available {{bug|1363667}}<br />
<br />
* Implemented muted/onmute/onunmute {{bug|1208378}}<br />
<br />
* Firefox on Windows is no longer limited to 16 audio stream {{bug|1397793}}<br />
<br />
==Bug tickets fixed in Firefox 59 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1404230}} [EME] Support HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1411205}} [EME] Test case for Bug 1404230 HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1415466}} [EME] Update content_decryption_module.h and content_decryption_module_ext.h for CDM version 1.4.9.xxxx<br />
<br />
{{Bug|1416667}} Use MOZ_CRASH_UNSAFE_PRINTF in GMPChild::ProcessingError to take aReason into account.<br />
<br />
{{Bug|1416686}} Reduce the uses of IPC_FAIL_NO_REASON in GMPChild.cpp<br />
<br />
{{Bug|1417297}} Convert gmp-clearkey to use Chromium ContentDecryptionModule_9 interface<br />
<br />
{{Bug|1417332}} Convert CDM Error to CDM Exception when we got OnLegacySessionError from CDM<br />
<br />
{{Bug|1422669}} Restore librlz from Bug 1332530 for calculating the machine ID.<br />
<br />
{{Bug|1422856}} Stop using GetNativePath in GMPServiceParent<br />
<br />
{{Bug|1430517}} Remove VIDEO_CHROMIUM_CDM_MAX_SHMEMS telemetry<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1406350}} Create a loopback devices sink to source for automated testing on Linux/Pulse<br />
<br />
{{Bug|1415556}} Clarify MediaStreamGraph code thread usage<br />
<br />
{{Bug|1419378}} Return failure in AudioCallbackDriver::Init when out channels is 0<br />
<br />
{{Bug|1425623}} Avoid heap memory allocation on MSG::UpdateGraph<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1403307}} Intermittent dom/media/test/test_mediarecorder_pause_resume_video.html | Last frame should be green<br />
<br />
{{Bug|1424191}} MediaRecorder(videoStream) unexpectedly stops itself<br />
<br />
{{Bug|1429765}} Extend lifetime of MEDIA_RECORDER_RECORDING_DURATION, MEDIA_RECORDER_TRACK_ENCODER_INIT_TIMEOUT_TYPE, and SCALARS_MEDIARECORDER.RECORDING_COUNT telemetry probes<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1370598}} Don't cap latency at 512 frames on Macs that are not Macbooks or Macbook Air.<br />
<br />
{{Bug|1405877}} Cubeb audioipc requires a named Unix-domain socket<br />
<br />
{{Bug|1420930}} Update cubeb from upstream to 8a0a300<br />
<br />
{{Bug|1421267}} Update cubeb from upstream to e17ba01<br />
<br />
{{Bug|1423901}} Update cubeb from upstream to a88bf02<br />
<br />
{{Bug|1426174}} Crash in `anonymous namespace''::wasapi_stream_init<br />
<br />
{{Bug|1426791}} All OSX tests are going to permacrash when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1426867}} Crash in mozilla::CubebUtils::GetCubebContextUnlocked<br />
<br />
{{Bug|1427150}} When building against pulseaudio >= 2.0, the resulting build does a buffer overflow read with pulseaudio < 2.0<br />
<br />
{{Bug|1427702}} Update cubeb from upstream to bda37c2<br />
<br />
{{Bug|1429666}} cubeb_resampler_speex calls data callback while draining<br />
<br />
{{Bug|1430870}} Avoid static ctors in AudioIPC startup code<br />
<br />
{{Bug|1430996}} Remove NIGHTLY_BUILD restriction to running cubeb-pulse-rs<br />
<br />
{{Bug|1431333}} Cubeb logging does not work with cubeb-sandox on<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1339889}} Intermittent dom/media/webaudio/test/test_mediaElementAudioSourceNodeFidelity.html | Found unexpected noise during analysis.<br />
<br />
{{Bug|1424906}} PeriodicWave disableNormalization false is incorrect<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1363667}} Add getContributingSources and getSynchronizationSources to RTCRtpReceiver<br />
<br />
{{Bug|1406135}} Can't subscribe to large amount of webRTC streams (regression)<br />
<br />
{{Bug|1414167}} Annotate SDPs on about:webrtc with offer and answer<br />
<br />
{{Bug|1414169}} Show received ICE candidates on about:webrtc<br />
<br />
{{Bug|1416932}} Add tests to detect inclusion of negotiated RTP header extensions in RTP packets<br />
<br />
{{Bug|1418522}} Show unmatched candidates on about:webrtc<br />
<br />
{{Bug|1419093}} Track RTC RTP source objects interface to dictionary spec change<br />
<br />
{{Bug|1421819}} Only create webrtc::call() object on video calls<br />
<br />
{{Bug|1421830}} test_peerConnection_scaleResolution.html sometimes generates log chatter until shutdown<br />
<br />
{{Bug|1421958}} OfferToReceiveVideo and OfferToReceiveAudio should be of type Boolean not Long<br />
<br />
{{Bug|1424318}} Crash in webrtc::FloatS16ToFloat<br />
<br />
{{Bug|1424342}} WebRTC crashes in random places on Win<br />
<br />
{{Bug|1426130}} trickle_caption_msg in about:webrtc is not properly localizable<br />
<br />
{{Bug|1426323}} Media: WebRTC: Fix build config for MIPS64<br />
<br />
{{Bug|1426678}} Assertion failure: mRawPtr != nullptr (You can't dereference a NULL RefPtr with operator*().), at /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/RefPtr.h:370<br />
<br />
{{Bug|1427009}} Crash in mozalloc_abort | abort | webrtc::StreamId::Set<br />
<br />
{{Bug|1429085}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:439<br />
<br />
{{Bug|1429536}} Assertion failure: !(aWidth&1), at /home/worker/workspace/build/src/dom/media/webrtc/MediaEngineDefault.cpp:145<br />
<br />
{{Bug|1430213}} Pref toggle for RTCRtpReceiver getContributingSources and getSynchronizationSources APIs<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1208378}} Implement MediaStreamTrack.muted/onmute/onunmute<br />
<br />
{{Bug|1372073}} Neutralize the threat of fingerprinting of media devices API when 'privacy.resistFingerprinting' is true<br />
<br />
{{Bug|1376276}} firefox53 cannot limit framerate in getusermedia with screen<br />
<br />
{{Bug|1388219}} Support down-scaling per track in getUserMedia<br />
<br />
{{Bug|1388667}} NormalizedConstraints doesn't work properly in multiple content processes case<br />
<br />
{{Bug|1397793}} Remove webrtc.org "External" audio interface and switch gUM audio input to APM<br />
<br />
{{Bug|1399413}} Multiple content process getUserMedia is rejected (all platforms except OSX)<br />
<br />
{{Bug|1404997}} Move Opus decoding/NetEQ out of the MSG thread, it’s too expensive<br />
<br />
{{Bug|1406935}} Write unittest for configuring VideoConduit<br />
<br />
{{Bug|1406936}} Write unittest for re-configuring VideoConduit<br />
<br />
{{Bug|1406937}} Write unittest for the video-encode path through VideoConduit<br />
<br />
{{Bug|1411739}} MediaManager.cpp uses HostIsHttps instead of window.isSecureContext<br />
<br />
{{Bug|1411742}} Remove unused prefs and member variables in media.getusermedia<br />
<br />
{{Bug|1412394}} near perma fail dom/media/tests/crashtests/1367930_2.html | crash<br />
<br />
{{Bug|1418165}} Protect sVideoCaptureThread with sThreadMonitor<br />
<br />
{{Bug|1418331}} Crash in mozilla::camera::VideoEngine::CreateVideoCapture<br />
<br />
{{Bug|1418367}} Webrtc web-platform-tests are disabled because number of concurrent AudioSessionConduits is very limited on windows and linux32<br />
<br />
{{Bug|1418694}} WebRTC microphone input not working (regression)<br />
<br />
{{Bug|1418871}} VideoCapture thread hangs due to deadlock in shutdown<br />
<br />
{{Bug|1420162}} Remove USE_GRAPH_RATE because it's the default now, and we don't support anything else<br />
<br />
{{Bug|1420585}} getUserMedia hangs when constraints can't be met<br />
<br />
{{Bug|1421706}} recent regression - quick build up of latency on webrtc calls using Firefox Nightly<br />
<br />
{{Bug|1422875}} fake:true constraint should not affect screen sharing (needed for testing screenshare+audio)<br />
<br />
{{Bug|1423228}} Prevent using non-fake devices when testing screen-sharing<br />
<br />
{{Bug|1423515}} Failed to send a devicechange event for permanent permission case (no live stream)<br />
<br />
{{Bug|1423819}} Assertion failure: pthread_mutex_destroy(&mMutex) == 0 (pthread_mutex_destroy failed), at /builds/worker/workspace/build/src/xpcom/threads/RecursiveMutex.cpp:63<br />
<br />
{{Bug|1423893}} Crash in webrtc::AudioBuffer::CopyFrom<br />
<br />
{{Bug|1423920}} Crash in arena_t::DallocSmall | arena_dalloc | `anonymous namespace''::wasapi_device_collection_destroy<br />
<br />
{{Bug|1423923}} Properly feed reverse stream to the AudioProcessingModule<br />
<br />
{{Bug|1423929}} Crash in webrtc::SincResampler::Resample<br />
<br />
{{Bug|1423930}} Crash in webrtc::WebRtcAec_BufferFarend<br />
<br />
{{Bug|1423953}} Crash in arena_t::MallocSmall | moz_xmalloc | nsTArray_base<T>::EnsureCapacity<T> | nsTArray_Impl<T>::AppendElements<T> | mozilla::MediaSegmentBase<T>::AppendChunk<br />
<br />
{{Bug|1423954}} Crash in mozilla::SourceMediaStream::AppendToTrack<br />
<br />
{{Bug|1424660}} Crash in mozilla::MediaEngineWebRTCMicrophoneSource::PacketizeAndProcess<br />
<br />
{{Bug|1425596}} Stop busy looping in mFakeAudioDevice<br />
<br />
{{Bug|1425631}} Use common SharedThreadPool across WebRTC<br />
<br />
{{Bug|1425904}} Crash in RtlRaiseStatus | RtlpUnWaitCriticalSection | RtlLeaveCriticalSection | <T>::operator() | mozilla::MozPromise<T>::InvokeCallbackMethod<T><br />
<br />
{{Bug|1426123}} Avoid spurious divide-by-zero warning from coverity for SelectSendResolution()<br />
<br />
{{Bug|1426171}} Potential crash if GraphRate is greater than 48kHz in WebrtcAudioConduit::GetAudioFrame<br />
<br />
{{Bug|1426486}} Make GetInputStream()->AsSourceStream() invariant<br />
<br />
{{Bug|1428098}} Don't reconfig the video encoder stack manually<br />
<br />
{{Bug|1428390}} Risk for shutdown deadlock in CamerasChild<br />
<br />
{{Bug|1428392}} Remove AudioOutputObserver<br />
<br />
{{Bug|1429219}} Enforce providing simulcast encodings with enough bits to avoid encoder Init failure<br />
<br />
{{Bug|1430931}} appear.in hits MOZ_CRASH(ArrayBufferInputStream not thread-safe)<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1230759}} Update libsrtp to version 2.2.0-pre<br />
<br />
{{Bug|1297418}} Update sctp library from upstream<br />
<br />
{{Bug|1426059}} Remove unused code in mtransport<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1290948}} Implement RTCRtpTransceiver and pc.addTransceiver<br />
<br />
{{Bug|1400363}} Update muted state on tracks when negotiation happens<br />
<br />
{{Bug|1404686}} Crash - WebRtc - Null Pointer dereference in nsWrapperCache::HasWrapperFlag<br />
<br />
{{Bug|1421965}} Crash in mozilla::MediaPipeline::MediaPipeline<br />
<br />
{{Bug|1422215}} WebRTC - Use After Free in in JsepSessionImpl::CheckNegotiationNeeded()<br />
<br />
{{Bug|1423842}} onaddstream changed behaviour with transceivers<br />
<br />
{{Bug|1425621}} Lost ability to detect remote track removal (Remove remote tracks from their streams when negotiated away)<br />
<br />
{{Bug|1425697}} Data Channel remote maximum message size slightly incorrect<br />
<br />
{{Bug|1425873}} addTransceiver(<string>, {streams: [stream]) should fire ontrack with stream in streams argument.<br />
<br />
{{Bug|1425901}} Use nsITimerCallback for DTMF timers<br />
<br />
{{Bug|1425956}} Removing a track and later re-adding it to a peer connection causes InvalidSessionDescriptionError<br />
<br />
{{Bug|1425996}} Various builds will be busted when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1427745}} Enable ESLint rule mozilla/use-services for dom/media<br />
<br />
{{Bug|1430707}} Hit MOZ_CRASH() at PeerConnectionMedia.cpp:490</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/59&diff=1188381Media/WebRTC/ReleaseNotes/592018-02-02T07:58:35Z<p>Nohlmeier: Updated bugs</p>
<hr />
<div>=Firefox 59 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 59:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2EwoFWZ Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 59] <br />
<br />
== Noteworthy Changes: ==<br />
<br />
* Transceivers are now available in Firefox {{bug|1290948}}<br />
<br />
* getContributingSources is now available {{bug|1363667}}<br />
<br />
* Implemented muted/onmute/onunmute {{bug|1208378}}<br />
<br />
* Firefox on Windows is no longer limited to 16 audio stream {{bug|1397793}}<br />
<br />
==Bug tickets fixed in Firefox 59 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1404230}} [EME] Support HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1411205}} [EME] Test case for Bug 1404230 HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1415466}} [EME] Update content_decryption_module.h and content_decryption_module_ext.h for CDM version 1.4.9.xxxx<br />
<br />
{{Bug|1416667}} Use MOZ_CRASH_UNSAFE_PRINTF in GMPChild::ProcessingError to take aReason into account.<br />
<br />
{{Bug|1416686}} Reduce the uses of IPC_FAIL_NO_REASON in GMPChild.cpp<br />
<br />
{{Bug|1417297}} Convert gmp-clearkey to use Chromium ContentDecryptionModule_9 interface<br />
<br />
{{Bug|1417332}} Convert CDM Error to CDM Exception when we got OnLegacySessionError from CDM<br />
<br />
{{Bug|1422669}} Restore librlz from Bug 1332530 for calculating the machine ID.<br />
<br />
{{Bug|1422856}} Stop using GetNativePath in GMPServiceParent<br />
<br />
{{Bug|1430517}} Remove VIDEO_CHROMIUM_CDM_MAX_SHMEMS telemetry<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1406350}} Create a loopback devices sink to source for automated testing on Linux/Pulse<br />
<br />
{{Bug|1415556}} Clarify MediaStreamGraph code thread usage<br />
<br />
{{Bug|1419378}} Return failure in AudioCallbackDriver::Init when out channels is 0<br />
<br />
{{Bug|1425623}} Avoid heap memory allocation on MSG::UpdateGraph<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1403307}} Intermittent dom/media/test/test_mediarecorder_pause_resume_video.html | Last frame should be green<br />
<br />
{{Bug|1424191}} MediaRecorder(videoStream) unexpectedly stops itself<br />
<br />
{{Bug|1429765}} Extend lifetime of MEDIA_RECORDER_RECORDING_DURATION, MEDIA_RECORDER_TRACK_ENCODER_INIT_TIMEOUT_TYPE, and SCALARS_MEDIARECORDER.RECORDING_COUNT telemetry probes<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1370598}} Don't cap latency at 512 frames on Macs that are not Macbooks or Macbook Air.<br />
<br />
{{Bug|1405877}} Cubeb audioipc requires a named Unix-domain socket<br />
<br />
{{Bug|1420930}} Update cubeb from upstream to 8a0a300<br />
<br />
{{Bug|1421267}} Update cubeb from upstream to e17ba01<br />
<br />
{{Bug|1423901}} Update cubeb from upstream to a88bf02<br />
<br />
{{Bug|1426174}} Crash in `anonymous namespace''::wasapi_stream_init<br />
<br />
{{Bug|1426791}} All OSX tests are going to permacrash when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1426867}} Crash in mozilla::CubebUtils::GetCubebContextUnlocked<br />
<br />
{{Bug|1427150}} When building against pulseaudio >= 2.0, the resulting build does a buffer overflow read with pulseaudio < 2.0<br />
<br />
{{Bug|1427702}} Update cubeb from upstream to bda37c2<br />
<br />
{{Bug|1429666}} cubeb_resampler_speex calls data callback while draining<br />
<br />
{{Bug|1430870}} Avoid static ctors in AudioIPC startup code<br />
<br />
{{Bug|1430996}} Remove NIGHTLY_BUILD restriction to running cubeb-pulse-rs<br />
<br />
{{Bug|1431333}} Cubeb logging does not work with cubeb-sandox on<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1339889}} Intermittent dom/media/webaudio/test/test_mediaElementAudioSourceNodeFidelity.html | Found unexpected noise during analysis.<br />
<br />
{{Bug|1424906}} PeriodicWave disableNormalization false is incorrect<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1363667}} Add getContributingSources and getSynchronizationSources to RTCRtpReceiver<br />
<br />
{{Bug|1406135}} Can't subscribe to large amount of webRTC streams (regression)<br />
<br />
{{Bug|1414167}} Annotate SDPs on about:webrtc with offer and answer<br />
<br />
{{Bug|1414169}} Show received ICE candidates on about:webrtc<br />
<br />
{{Bug|1416932}} Add tests to detect inclusion of negotiated RTP header extensions in RTP packets<br />
<br />
{{Bug|1418522}} Show unmatched candidates on about:webrtc<br />
<br />
{{Bug|1419093}} Track RTC RTP source objects interface to dictionary spec change<br />
<br />
{{Bug|1421819}} Only create webrtc::call() object on video calls<br />
<br />
{{Bug|1421830}} test_peerConnection_scaleResolution.html sometimes generates log chatter until shutdown<br />
<br />
{{Bug|1421958}} OfferToReceiveVideo and OfferToReceiveAudio should be of type Boolean not Long<br />
<br />
{{Bug|1424318}} Crash in webrtc::FloatS16ToFloat<br />
<br />
{{Bug|1424342}} WebRTC crashes in random places on Win<br />
<br />
{{Bug|1426130}} trickle_caption_msg in about:webrtc is not properly localizable<br />
<br />
{{Bug|1426323}} Media: WebRTC: Fix build config for MIPS64<br />
<br />
{{Bug|1426678}} Assertion failure: mRawPtr != nullptr (You can't dereference a NULL RefPtr with operator*().), at /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/RefPtr.h:370<br />
<br />
{{Bug|1427009}} Crash in mozalloc_abort | abort | webrtc::StreamId::Set<br />
<br />
{{Bug|1429085}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:439<br />
<br />
{{Bug|1429536}} Assertion failure: !(aWidth&1), at /home/worker/workspace/build/src/dom/media/webrtc/MediaEngineDefault.cpp:145<br />
<br />
{{Bug|1430213}} Pref toggle for RTCRtpReceiver getContributingSources and getSynchronizationSources APIs<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1208378}} Implement MediaStreamTrack.muted/onmute/onunmute<br />
<br />
{{Bug|1372073}} Neutralize the threat of fingerprinting of media devices API when 'privacy.resistFingerprinting' is true<br />
<br />
{{Bug|1376276}} firefox53 cannot limit framerate in getusermedia with screen<br />
<br />
{{Bug|1388219}} Support down-scaling per track in getUserMedia<br />
<br />
{{Bug|1388667}} NormalizedConstraints doesn't work properly in multiple content processes case<br />
<br />
{{Bug|1397793}} Remove webrtc.org "External" audio interface and switch gUM audio input to APM<br />
<br />
{{Bug|1399413}} Multiple content process getUserMedia is rejected (all platforms except OSX)<br />
<br />
{{Bug|1404997}} Move Opus decoding/NetEQ out of the MSG thread, it’s too expensive<br />
<br />
{{Bug|1406935}} Write unittest for configuring VideoConduit<br />
<br />
{{Bug|1406936}} Write unittest for re-configuring VideoConduit<br />
<br />
{{Bug|1406937}} Write unittest for the video-encode path through VideoConduit<br />
<br />
{{Bug|1411739}} MediaManager.cpp uses HostIsHttps instead of window.isSecureContext<br />
<br />
{{Bug|1411742}} Remove unused prefs and member variables in media.getusermedia<br />
<br />
{{Bug|1412394}} near perma fail dom/media/tests/crashtests/1367930_2.html | crash<br />
<br />
{{Bug|1418165}} Protect sVideoCaptureThread with sThreadMonitor<br />
<br />
{{Bug|1418331}} Crash in mozilla::camera::VideoEngine::CreateVideoCapture<br />
<br />
{{Bug|1418367}} Webrtc web-platform-tests are disabled because number of concurrent AudioSessionConduits is very limited on windows and linux32<br />
<br />
{{Bug|1418694}} WebRTC microphone input not working (regression)<br />
<br />
{{Bug|1418871}} VideoCapture thread hangs due to deadlock in shutdown<br />
<br />
{{Bug|1420162}} Remove USE_GRAPH_RATE because it's the default now, and we don't support anything else<br />
<br />
{{Bug|1420585}} getUserMedia hangs when constraints can't be met<br />
<br />
{{Bug|1421706}} recent regression - quick build up of latency on webrtc calls using Firefox Nightly<br />
<br />
{{Bug|1422875}} fake:true constraint should not affect screen sharing (needed for testing screenshare+audio)<br />
<br />
{{Bug|1423228}} Prevent using non-fake devices when testing screen-sharing<br />
<br />
{{Bug|1423515}} Failed to send a devicechange event for permanent permission case (no live stream)<br />
<br />
{{Bug|1423819}} Assertion failure: pthread_mutex_destroy(&mMutex) == 0 (pthread_mutex_destroy failed), at /builds/worker/workspace/build/src/xpcom/threads/RecursiveMutex.cpp:63<br />
<br />
{{Bug|1423893}} Crash in webrtc::AudioBuffer::CopyFrom<br />
<br />
{{Bug|1423920}} Crash in arena_t::DallocSmall | arena_dalloc | `anonymous namespace''::wasapi_device_collection_destroy<br />
<br />
{{Bug|1423923}} Properly feed reverse stream to the AudioProcessingModule<br />
<br />
{{Bug|1423929}} Crash in webrtc::SincResampler::Resample<br />
<br />
{{Bug|1423930}} Crash in webrtc::WebRtcAec_BufferFarend<br />
<br />
{{Bug|1423953}} Crash in arena_t::MallocSmall | moz_xmalloc | nsTArray_base<T>::EnsureCapacity<T> | nsTArray_Impl<T>::AppendElements<T> | mozilla::MediaSegmentBase<T>::AppendChunk<br />
<br />
{{Bug|1423954}} Crash in mozilla::SourceMediaStream::AppendToTrack<br />
<br />
{{Bug|1424660}} Crash in mozilla::MediaEngineWebRTCMicrophoneSource::PacketizeAndProcess<br />
<br />
{{Bug|1425596}} Stop busy looping in mFakeAudioDevice<br />
<br />
{{Bug|1425631}} Use common SharedThreadPool across WebRTC<br />
<br />
{{Bug|1425904}} Crash in RtlRaiseStatus | RtlpUnWaitCriticalSection | RtlLeaveCriticalSection | <T>::operator() | mozilla::MozPromise<T>::InvokeCallbackMethod<T><br />
<br />
{{Bug|1426123}} Avoid spurious divide-by-zero warning from coverity for SelectSendResolution()<br />
<br />
{{Bug|1426171}} Potential crash if GraphRate is greater than 48kHz in WebrtcAudioConduit::GetAudioFrame<br />
<br />
{{Bug|1426486}} Make GetInputStream()->AsSourceStream() invariant<br />
<br />
{{Bug|1428098}} Don't reconfig the video encoder stack manually<br />
<br />
{{Bug|1428390}} Risk for shutdown deadlock in CamerasChild<br />
<br />
{{Bug|1428392}} Remove AudioOutputObserver<br />
<br />
{{Bug|1429219}} Enforce providing simulcast encodings with enough bits to avoid encoder Init failure<br />
<br />
{{Bug|1430931}} appear.in hits MOZ_CRASH(ArrayBufferInputStream not thread-safe)<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1230759}} Update libsrtp to version 2.2.0-pre<br />
<br />
{{Bug|1297418}} Update sctp library from upstream<br />
<br />
{{Bug|1426059}} Remove unused code in mtransport<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1290948}} Implement RTCRtpTransceiver and pc.addTransceiver<br />
<br />
{{Bug|1400363}} Update muted state on tracks when negotiation happens<br />
<br />
{{Bug|1404686}} Crash - WebRtc - Null Pointer dereference in nsWrapperCache::HasWrapperFlag<br />
<br />
{{Bug|1421965}} Crash in mozilla::MediaPipeline::MediaPipeline<br />
<br />
{{Bug|1422215}} WebRTC - Use After Free in in JsepSessionImpl::CheckNegotiationNeeded()<br />
<br />
{{Bug|1423842}} onaddstream changed behaviour with transceivers<br />
<br />
{{Bug|1425621}} Lost ability to detect remote track removal (Remove remote tracks from their streams when negotiated away)<br />
<br />
{{Bug|1425697}} Data Channel remote maximum message size slightly incorrect<br />
<br />
{{Bug|1425873}} addTransceiver(<string>, {streams: [stream]) should fire ontrack with stream in streams argument.<br />
<br />
{{Bug|1425901}} Use nsITimerCallback for DTMF timers<br />
<br />
{{Bug|1425956}} Removing a track and later re-adding it to a peer connection causes InvalidSessionDescriptionError<br />
<br />
{{Bug|1425996}} Various builds will be busted when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1427745}} Enable ESLint rule mozilla/use-services for dom/media<br />
<br />
{{Bug|1430707}} Hit MOZ_CRASH() at PeerConnectionMedia.cpp:490</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/59&diff=1188366Media/WebRTC/ReleaseNotes/592018-02-01T22:11:23Z<p>Nohlmeier: Added highlights</p>
<hr />
<div>=Firefox 59 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 59:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2EwoFWZ Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 59] <br />
<br />
== Noteworthy Changes: ==<br />
<br />
* Transceivers are now available in Firefox {{bug|1290948}}<br />
<br />
* getContributingSources is now available {{bug|1363667}}<br />
<br />
* Implemented muted/onmute/onunmute {{bug|1208378}}<br />
<br />
* Firefox on Windows is no longer limited to 16 audio stream {{bug|1397793}}<br />
<br />
==Bug tickets fixed in Firefox 59 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1404230}} [EME] Support HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1411205}} [EME] Test case for Bug 1404230 HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1415466}} [EME] Update content_decryption_module.h and content_decryption_module_ext.h for CDM version 1.4.9.xxxx<br />
<br />
{{Bug|1416667}} Use MOZ_CRASH_UNSAFE_PRINTF in GMPChild::ProcessingError to take aReason into account.<br />
<br />
{{Bug|1416686}} Reduce the uses of IPC_FAIL_NO_REASON in GMPChild.cpp<br />
<br />
{{Bug|1417297}} Convert gmp-clearkey to use Chromium ContentDecryptionModule_9 interface<br />
<br />
{{Bug|1417332}} Convert CDM Error to CDM Exception when we got OnLegacySessionError from CDM<br />
<br />
{{Bug|1422669}} Restore librlz from Bug 1332530 for calculating the machine ID.<br />
<br />
{{Bug|1422856}} Stop using GetNativePath in GMPServiceParent<br />
<br />
{{Bug|1430517}} Remove VIDEO_CHROMIUM_CDM_MAX_SHMEMS telemetry<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1382366}} Crash in mozilla::SystemClockDriver::WaitForNextIteration | mozilla::MediaStreamGraphImpl::UpdateMainThreadState<br />
<br />
{{Bug|1406350}} Create a loopback devices sink to source for automated testing on Linux/Pulse<br />
<br />
{{Bug|1415556}} Clarify MediaStreamGraph code thread usage<br />
<br />
{{Bug|1419363}} heap-use-after-free in mozilla::dom::HTMLMediaElement::NotifyMediaStreamTracksAvailable<br />
<br />
{{Bug|1419378}} Return failure in AudioCallbackDriver::Init when out channels is 0<br />
<br />
{{Bug|1425623}} Avoid heap memory allocation on MSG::UpdateGraph<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1403307}} Intermittent dom/media/test/test_mediarecorder_pause_resume_video.html | Last frame should be green<br />
<br />
{{Bug|1424191}} MediaRecorder(videoStream) unexpectedly stops itself<br />
<br />
{{Bug|1429765}} Extend lifetime of MEDIA_RECORDER_RECORDING_DURATION, MEDIA_RECORDER_TRACK_ENCODER_INIT_TIMEOUT_TYPE, and SCALARS_MEDIARECORDER.RECORDING_COUNT telemetry probes<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1370598}} Don't cap latency at 512 frames on Macs that are not Macbooks or Macbook Air.<br />
<br />
{{Bug|1405877}} Cubeb audioipc requires a named Unix-domain socket<br />
<br />
{{Bug|1420930}} Update cubeb from upstream to 8a0a300<br />
<br />
{{Bug|1421267}} Update cubeb from upstream to e17ba01<br />
<br />
{{Bug|1423901}} Update cubeb from upstream to a88bf02<br />
<br />
{{Bug|1426174}} Crash in `anonymous namespace''::wasapi_stream_init<br />
<br />
{{Bug|1426791}} All OSX tests are going to permacrash when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1426867}} Crash in mozilla::CubebUtils::GetCubebContextUnlocked<br />
<br />
{{Bug|1427150}} When building against pulseaudio >= 2.0, the resulting build does a buffer overflow read with pulseaudio < 2.0<br />
<br />
{{Bug|1427702}} Update cubeb from upstream to bda37c2<br />
<br />
{{Bug|1429666}} cubeb_resampler_speex calls data callback while draining<br />
<br />
{{Bug|1430870}} Avoid static ctors in AudioIPC startup code<br />
<br />
{{Bug|1430996}} Remove NIGHTLY_BUILD restriction to running cubeb-pulse-rs<br />
<br />
{{Bug|1431333}} Cubeb logging does not work with cubeb-sandox on<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1339889}} Intermittent dom/media/webaudio/test/test_mediaElementAudioSourceNodeFidelity.html | Found unexpected noise during analysis.<br />
<br />
{{Bug|1424906}} PeriodicWave disableNormalization false is incorrect<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1363667}} Add getContributingSources and getSynchronizationSources to RTCRtpReceiver<br />
<br />
{{Bug|1406135}} Can't subscribe to large amount of webRTC streams (regression)<br />
<br />
{{Bug|1414167}} Annotate SDPs on about:webrtc with offer and answer<br />
<br />
{{Bug|1414169}} Show received ICE candidates on about:webrtc<br />
<br />
{{Bug|1416932}} Add tests to detect inclusion of negotiated RTP header extensions in RTP packets<br />
<br />
{{Bug|1418522}} Show unmatched candidates on about:webrtc<br />
<br />
{{Bug|1419093}} Track RTC RTP source objects interface to dictionary spec change<br />
<br />
{{Bug|1421819}} Only create webrtc::call() object on video calls<br />
<br />
{{Bug|1421830}} test_peerConnection_scaleResolution.html sometimes generates log chatter until shutdown<br />
<br />
{{Bug|1421958}} OfferToReceiveVideo and OfferToReceiveAudio should be of type Boolean not Long<br />
<br />
{{Bug|1424318}} Crash in webrtc::FloatS16ToFloat<br />
<br />
{{Bug|1424342}} WebRTC crashes in random places on Win<br />
<br />
{{Bug|1425780}} AddressSanitizer: heap-use-after-free /builds/worker/workspace/build/src/obj-firefox/dist/include/mtransport/sigslot.h:318:13 in ~lock_block<br />
<br />
{{Bug|1426130}} trickle_caption_msg in about:webrtc is not properly localizable<br />
<br />
{{Bug|1426323}} Media: WebRTC: Fix build config for MIPS64<br />
<br />
{{Bug|1426449}} Crash in webrtc::SimulcastRateAllocator::GetAllocation<br />
<br />
{{Bug|1426678}} Assertion failure: mRawPtr != nullptr (You can't dereference a NULL RefPtr with operator*().), at /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/RefPtr.h:370<br />
<br />
{{Bug|1427009}} Crash in mozalloc_abort | abort | webrtc::StreamId::Set<br />
<br />
{{Bug|1429085}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:439<br />
<br />
{{Bug|1429536}} Assertion failure: !(aWidth&1), at /home/worker/workspace/build/src/dom/media/webrtc/MediaEngineDefault.cpp:145<br />
<br />
{{Bug|1430213}} Pref toggle for RTCRtpReceiver getContributingSources and getSynchronizationSources APIs<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1208378}} Implement MediaStreamTrack.muted/onmute/onunmute<br />
<br />
{{Bug|1372073}} Neutralize the threat of fingerprinting of media devices API when 'privacy.resistFingerprinting' is true<br />
<br />
{{Bug|1376276}} firefox53 cannot limit framerate in getusermedia with screen<br />
<br />
{{Bug|1388219}} Support down-scaling per track in getUserMedia<br />
<br />
{{Bug|1388667}} NormalizedConstraints doesn't work properly in multiple content processes case<br />
<br />
{{Bug|1397793}} Remove webrtc.org "External" audio interface and switch gUM audio input to APM<br />
<br />
{{Bug|1399413}} Multiple content process getUserMedia is rejected (all platforms except OSX)<br />
<br />
{{Bug|1404997}} Move Opus decoding/NetEQ out of the MSG thread, it’s too expensive<br />
<br />
{{Bug|1406935}} Write unittest for configuring VideoConduit<br />
<br />
{{Bug|1406936}} Write unittest for re-configuring VideoConduit<br />
<br />
{{Bug|1406937}} Write unittest for the video-encode path through VideoConduit<br />
<br />
{{Bug|1411739}} MediaManager.cpp uses HostIsHttps instead of window.isSecureContext<br />
<br />
{{Bug|1411742}} Remove unused prefs and member variables in media.getusermedia<br />
<br />
{{Bug|1412394}} near perma fail dom/media/tests/crashtests/1367930_2.html | crash<br />
<br />
{{Bug|1417797}} UAF in H264 decoder shutdown in VCMDecodedFrameCallback::Decoded()<br />
<br />
{{Bug|1418165}} Protect sVideoCaptureThread with sThreadMonitor<br />
<br />
{{Bug|1418331}} Crash in mozilla::camera::VideoEngine::CreateVideoCapture<br />
<br />
{{Bug|1418367}} Webrtc web-platform-tests are disabled because number of concurrent AudioSessionConduits is very limited on windows and linux32<br />
<br />
{{Bug|1418694}} WebRTC microphone input not working (regression)<br />
<br />
{{Bug|1418871}} VideoCapture thread hangs due to deadlock in shutdown<br />
<br />
{{Bug|1420162}} Remove USE_GRAPH_RATE because it's the default now, and we don't support anything else<br />
<br />
{{Bug|1420585}} getUserMedia hangs when constraints can't be met<br />
<br />
{{Bug|1421706}} recent regression - quick build up of latency on webrtc calls using Firefox Nightly<br />
<br />
{{Bug|1421963}} Intermittent GECKO(3202) | ==3255==ERROR: AddressSanitizer: heap-use-after-free on address 0x61d000a582b4 at pc 0x7f1472493c22 bp 0x7f14688f2d30 sp 0x7f14688f2d28<br />
<br />
{{Bug|1422389}} AddressSanitizer: negative-size-param near [@ mozilla::MediaEngineDefaultVideoSource::Notify]<br />
<br />
{{Bug|1422875}} fake:true constraint should not affect screen sharing (needed for testing screenshare+audio)<br />
<br />
{{Bug|1423228}} Prevent using non-fake devices when testing screen-sharing<br />
<br />
{{Bug|1423515}} Failed to send a devicechange event for permanent permission case (no live stream)<br />
<br />
{{Bug|1423770}} Write out of bounds in ConvertAudioSamples<br />
<br />
{{Bug|1423819}} Assertion failure: pthread_mutex_destroy(&mMutex) == 0 (pthread_mutex_destroy failed), at /builds/worker/workspace/build/src/xpcom/threads/RecursiveMutex.cpp:63<br />
<br />
{{Bug|1423893}} Crash in webrtc::AudioBuffer::CopyFrom<br />
<br />
{{Bug|1423920}} Crash in arena_t::DallocSmall | arena_dalloc | `anonymous namespace''::wasapi_device_collection_destroy<br />
<br />
{{Bug|1423923}} Properly feed reverse stream to the AudioProcessingModule<br />
<br />
{{Bug|1423929}} Crash in webrtc::SincResampler::Resample<br />
<br />
{{Bug|1423930}} Crash in webrtc::WebRtcAec_BufferFarend<br />
<br />
{{Bug|1423953}} Crash in arena_t::MallocSmall | moz_xmalloc | nsTArray_base<T>::EnsureCapacity<T> | nsTArray_Impl<T>::AppendElements<T> | mozilla::MediaSegmentBase<T>::AppendChunk<br />
<br />
{{Bug|1423954}} Crash in mozilla::SourceMediaStream::AppendToTrack<br />
<br />
{{Bug|1424660}} Crash in mozilla::MediaEngineWebRTCMicrophoneSource::PacketizeAndProcess<br />
<br />
{{Bug|1425596}} Stop busy looping in mFakeAudioDevice<br />
<br />
{{Bug|1425631}} Use common SharedThreadPool across WebRTC<br />
<br />
{{Bug|1425904}} Crash in RtlRaiseStatus | RtlpUnWaitCriticalSection | RtlLeaveCriticalSection | <T>::operator() | mozilla::MozPromise<T>::InvokeCallbackMethod<T><br />
<br />
{{Bug|1426123}} Avoid spurious divide-by-zero warning from coverity for SelectSendResolution()<br />
<br />
{{Bug|1426171}} Potential crash if GraphRate is greater than 48kHz in WebrtcAudioConduit::GetAudioFrame<br />
<br />
{{Bug|1426486}} Make GetInputStream()->AsSourceStream() invariant<br />
<br />
{{Bug|1428098}} Don't reconfig the video encoder stack manually<br />
<br />
{{Bug|1428390}} Risk for shutdown deadlock in CamerasChild<br />
<br />
{{Bug|1428392}} Remove AudioOutputObserver<br />
<br />
{{Bug|1429219}} Enforce providing simulcast encodings with enough bits to avoid encoder Init failure<br />
<br />
{{Bug|1430931}} appear.in hits MOZ_CRASH(ArrayBufferInputStream not thread-safe)<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1230759}} Update libsrtp to version 2.2.0-pre<br />
<br />
{{Bug|1297418}} Update sctp library from upstream<br />
<br />
{{Bug|1426059}} Remove unused code in mtransport<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1290948}} Implement RTCRtpTransceiver and pc.addTransceiver<br />
<br />
{{Bug|1400363}} Update muted state on tracks when negotiation happens<br />
<br />
{{Bug|1404686}} Crash - WebRtc - Null Pointer dereference in nsWrapperCache::HasWrapperFlag<br />
<br />
{{Bug|1421965}} Crash in mozilla::MediaPipeline::MediaPipeline<br />
<br />
{{Bug|1422215}} WebRTC - Use After Free in in JsepSessionImpl::CheckNegotiationNeeded()<br />
<br />
{{Bug|1423842}} onaddstream changed behaviour with transceivers<br />
<br />
{{Bug|1425621}} Lost ability to detect remote track removal (Remove remote tracks from their streams when negotiated away)<br />
<br />
{{Bug|1425697}} Data Channel remote maximum message size slightly incorrect<br />
<br />
{{Bug|1425873}} addTransceiver(<string>, {streams: [stream]) should fire ontrack with stream in streams argument.<br />
<br />
{{Bug|1425901}} Use nsITimerCallback for DTMF timers<br />
<br />
{{Bug|1425956}} Removing a track and later re-adding it to a peer connection causes InvalidSessionDescriptionError<br />
<br />
{{Bug|1425996}} Various builds will be busted when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1427745}} Enable ESLint rule mozilla/use-services for dom/media<br />
<br />
{{Bug|1430707}} Hit MOZ_CRASH() at PeerConnectionMedia.cpp:490</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/59&diff=1188365Media/WebRTC/ReleaseNotes/592018-02-01T21:30:49Z<p>Nohlmeier: Added all bugs</p>
<hr />
<div>=Firefox 59 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 59:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2EwoFWZ Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 59] <br />
<br />
== Noteworthy Changes: ==<br />
<br />
==Bug tickets fixed in Firefox 59 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video: GMP:===<br />
<br />
{{Bug|1404230}} [EME] Support HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1411205}} [EME] Test case for Bug 1404230 HDCP Policy check on MediaKeys<br />
<br />
{{Bug|1415466}} [EME] Update content_decryption_module.h and content_decryption_module_ext.h for CDM version 1.4.9.xxxx<br />
<br />
{{Bug|1416667}} Use MOZ_CRASH_UNSAFE_PRINTF in GMPChild::ProcessingError to take aReason into account.<br />
<br />
{{Bug|1416686}} Reduce the uses of IPC_FAIL_NO_REASON in GMPChild.cpp<br />
<br />
{{Bug|1417297}} Convert gmp-clearkey to use Chromium ContentDecryptionModule_9 interface<br />
<br />
{{Bug|1417332}} Convert CDM Error to CDM Exception when we got OnLegacySessionError from CDM<br />
<br />
{{Bug|1422669}} Restore librlz from Bug 1332530 for calculating the machine ID.<br />
<br />
{{Bug|1422856}} Stop using GetNativePath in GMPServiceParent<br />
<br />
{{Bug|1430517}} Remove VIDEO_CHROMIUM_CDM_MAX_SHMEMS telemetry<br />
<br />
===Audio/Video: MediaStreamGraph:===<br />
<br />
{{Bug|1382366}} Crash in mozilla::SystemClockDriver::WaitForNextIteration | mozilla::MediaStreamGraphImpl::UpdateMainThreadState<br />
<br />
{{Bug|1406350}} Create a loopback devices sink to source for automated testing on Linux/Pulse<br />
<br />
{{Bug|1415556}} Clarify MediaStreamGraph code thread usage<br />
<br />
{{Bug|1419363}} heap-use-after-free in mozilla::dom::HTMLMediaElement::NotifyMediaStreamTracksAvailable<br />
<br />
{{Bug|1419378}} Return failure in AudioCallbackDriver::Init when out channels is 0<br />
<br />
{{Bug|1425623}} Avoid heap memory allocation on MSG::UpdateGraph<br />
<br />
===Audio/Video: Recording:===<br />
<br />
{{Bug|1403307}} Intermittent dom/media/test/test_mediarecorder_pause_resume_video.html | Last frame should be green<br />
<br />
{{Bug|1424191}} MediaRecorder(videoStream) unexpectedly stops itself<br />
<br />
{{Bug|1429765}} Extend lifetime of MEDIA_RECORDER_RECORDING_DURATION, MEDIA_RECORDER_TRACK_ENCODER_INIT_TIMEOUT_TYPE, and SCALARS_MEDIARECORDER.RECORDING_COUNT telemetry probes<br />
<br />
===Audio/Video: cubeb:===<br />
<br />
{{Bug|1370598}} Don't cap latency at 512 frames on Macs that are not Macbooks or Macbook Air.<br />
<br />
{{Bug|1405877}} Cubeb audioipc requires a named Unix-domain socket<br />
<br />
{{Bug|1420930}} Update cubeb from upstream to 8a0a300<br />
<br />
{{Bug|1421267}} Update cubeb from upstream to e17ba01<br />
<br />
{{Bug|1423901}} Update cubeb from upstream to a88bf02<br />
<br />
{{Bug|1426174}} Crash in `anonymous namespace''::wasapi_stream_init<br />
<br />
{{Bug|1426791}} All OSX tests are going to permacrash when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1426867}} Crash in mozilla::CubebUtils::GetCubebContextUnlocked<br />
<br />
{{Bug|1427150}} When building against pulseaudio >= 2.0, the resulting build does a buffer overflow read with pulseaudio < 2.0<br />
<br />
{{Bug|1427702}} Update cubeb from upstream to bda37c2<br />
<br />
{{Bug|1429666}} cubeb_resampler_speex calls data callback while draining<br />
<br />
{{Bug|1430870}} Avoid static ctors in AudioIPC startup code<br />
<br />
{{Bug|1430996}} Remove NIGHTLY_BUILD restriction to running cubeb-pulse-rs<br />
<br />
{{Bug|1431333}} Cubeb logging does not work with cubeb-sandox on<br />
<br />
===Web Audio:===<br />
<br />
{{Bug|1339889}} Intermittent dom/media/webaudio/test/test_mediaElementAudioSourceNodeFidelity.html | Found unexpected noise during analysis.<br />
<br />
{{Bug|1424906}} PeriodicWave disableNormalization false is incorrect<br />
<br />
===WebRTC:===<br />
<br />
{{Bug|1363667}} Add getContributingSources and getSynchronizationSources to RTCRtpReceiver<br />
<br />
{{Bug|1406135}} Can't subscribe to large amount of webRTC streams (regression)<br />
<br />
{{Bug|1414167}} Annotate SDPs on about:webrtc with offer and answer<br />
<br />
{{Bug|1414169}} Show received ICE candidates on about:webrtc<br />
<br />
{{Bug|1416932}} Add tests to detect inclusion of negotiated RTP header extensions in RTP packets<br />
<br />
{{Bug|1418522}} Show unmatched candidates on about:webrtc<br />
<br />
{{Bug|1419093}} Track RTC RTP source objects interface to dictionary spec change<br />
<br />
{{Bug|1421819}} Only create webrtc::call() object on video calls<br />
<br />
{{Bug|1421830}} test_peerConnection_scaleResolution.html sometimes generates log chatter until shutdown<br />
<br />
{{Bug|1421958}} OfferToReceiveVideo and OfferToReceiveAudio should be of type Boolean not Long<br />
<br />
{{Bug|1424318}} Crash in webrtc::FloatS16ToFloat<br />
<br />
{{Bug|1424342}} WebRTC crashes in random places on Win<br />
<br />
{{Bug|1425780}} AddressSanitizer: heap-use-after-free /builds/worker/workspace/build/src/obj-firefox/dist/include/mtransport/sigslot.h:318:13 in ~lock_block<br />
<br />
{{Bug|1426130}} trickle_caption_msg in about:webrtc is not properly localizable<br />
<br />
{{Bug|1426323}} Media: WebRTC: Fix build config for MIPS64<br />
<br />
{{Bug|1426449}} Crash in webrtc::SimulcastRateAllocator::GetAllocation<br />
<br />
{{Bug|1426678}} Assertion failure: mRawPtr != nullptr (You can't dereference a NULL RefPtr with operator*().), at /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/RefPtr.h:370<br />
<br />
{{Bug|1427009}} Crash in mozalloc_abort | abort | webrtc::StreamId::Set<br />
<br />
{{Bug|1429085}} Assertion failure: false, at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:439<br />
<br />
{{Bug|1429536}} Assertion failure: !(aWidth&1), at /home/worker/workspace/build/src/dom/media/webrtc/MediaEngineDefault.cpp:145<br />
<br />
{{Bug|1430213}} Pref toggle for RTCRtpReceiver getContributingSources and getSynchronizationSources APIs<br />
<br />
===WebRTC: Audio/Video:===<br />
<br />
{{Bug|1208378}} Implement MediaStreamTrack.muted/onmute/onunmute<br />
<br />
{{Bug|1372073}} Neutralize the threat of fingerprinting of media devices API when 'privacy.resistFingerprinting' is true<br />
<br />
{{Bug|1376276}} firefox53 cannot limit framerate in getusermedia with screen<br />
<br />
{{Bug|1388219}} Support down-scaling per track in getUserMedia<br />
<br />
{{Bug|1388667}} NormalizedConstraints doesn't work properly in multiple content processes case<br />
<br />
{{Bug|1397793}} Remove webrtc.org "External" audio interface and switch gUM audio input to APM<br />
<br />
{{Bug|1399413}} Multiple content process getUserMedia is rejected (all platforms except OSX)<br />
<br />
{{Bug|1404997}} Move Opus decoding/NetEQ out of the MSG thread, it’s too expensive<br />
<br />
{{Bug|1406935}} Write unittest for configuring VideoConduit<br />
<br />
{{Bug|1406936}} Write unittest for re-configuring VideoConduit<br />
<br />
{{Bug|1406937}} Write unittest for the video-encode path through VideoConduit<br />
<br />
{{Bug|1411739}} MediaManager.cpp uses HostIsHttps instead of window.isSecureContext<br />
<br />
{{Bug|1411742}} Remove unused prefs and member variables in media.getusermedia<br />
<br />
{{Bug|1412394}} near perma fail dom/media/tests/crashtests/1367930_2.html | crash<br />
<br />
{{Bug|1417797}} UAF in H264 decoder shutdown in VCMDecodedFrameCallback::Decoded()<br />
<br />
{{Bug|1418165}} Protect sVideoCaptureThread with sThreadMonitor<br />
<br />
{{Bug|1418331}} Crash in mozilla::camera::VideoEngine::CreateVideoCapture<br />
<br />
{{Bug|1418367}} Webrtc web-platform-tests are disabled because number of concurrent AudioSessionConduits is very limited on windows and linux32<br />
<br />
{{Bug|1418694}} WebRTC microphone input not working (regression)<br />
<br />
{{Bug|1418871}} VideoCapture thread hangs due to deadlock in shutdown<br />
<br />
{{Bug|1420162}} Remove USE_GRAPH_RATE because it's the default now, and we don't support anything else<br />
<br />
{{Bug|1420585}} getUserMedia hangs when constraints can't be met<br />
<br />
{{Bug|1421706}} recent regression - quick build up of latency on webrtc calls using Firefox Nightly<br />
<br />
{{Bug|1421963}} Intermittent GECKO(3202) | ==3255==ERROR: AddressSanitizer: heap-use-after-free on address 0x61d000a582b4 at pc 0x7f1472493c22 bp 0x7f14688f2d30 sp 0x7f14688f2d28<br />
<br />
{{Bug|1422389}} AddressSanitizer: negative-size-param near [@ mozilla::MediaEngineDefaultVideoSource::Notify]<br />
<br />
{{Bug|1422875}} fake:true constraint should not affect screen sharing (needed for testing screenshare+audio)<br />
<br />
{{Bug|1423228}} Prevent using non-fake devices when testing screen-sharing<br />
<br />
{{Bug|1423515}} Failed to send a devicechange event for permanent permission case (no live stream)<br />
<br />
{{Bug|1423770}} Write out of bounds in ConvertAudioSamples<br />
<br />
{{Bug|1423819}} Assertion failure: pthread_mutex_destroy(&mMutex) == 0 (pthread_mutex_destroy failed), at /builds/worker/workspace/build/src/xpcom/threads/RecursiveMutex.cpp:63<br />
<br />
{{Bug|1423893}} Crash in webrtc::AudioBuffer::CopyFrom<br />
<br />
{{Bug|1423920}} Crash in arena_t::DallocSmall | arena_dalloc | `anonymous namespace''::wasapi_device_collection_destroy<br />
<br />
{{Bug|1423923}} Properly feed reverse stream to the AudioProcessingModule<br />
<br />
{{Bug|1423929}} Crash in webrtc::SincResampler::Resample<br />
<br />
{{Bug|1423930}} Crash in webrtc::WebRtcAec_BufferFarend<br />
<br />
{{Bug|1423953}} Crash in arena_t::MallocSmall | moz_xmalloc | nsTArray_base<T>::EnsureCapacity<T> | nsTArray_Impl<T>::AppendElements<T> | mozilla::MediaSegmentBase<T>::AppendChunk<br />
<br />
{{Bug|1423954}} Crash in mozilla::SourceMediaStream::AppendToTrack<br />
<br />
{{Bug|1424660}} Crash in mozilla::MediaEngineWebRTCMicrophoneSource::PacketizeAndProcess<br />
<br />
{{Bug|1425596}} Stop busy looping in mFakeAudioDevice<br />
<br />
{{Bug|1425631}} Use common SharedThreadPool across WebRTC<br />
<br />
{{Bug|1425904}} Crash in RtlRaiseStatus | RtlpUnWaitCriticalSection | RtlLeaveCriticalSection | <T>::operator() | mozilla::MozPromise<T>::InvokeCallbackMethod<T><br />
<br />
{{Bug|1426123}} Avoid spurious divide-by-zero warning from coverity for SelectSendResolution()<br />
<br />
{{Bug|1426171}} Potential crash if GraphRate is greater than 48kHz in WebrtcAudioConduit::GetAudioFrame<br />
<br />
{{Bug|1426486}} Make GetInputStream()->AsSourceStream() invariant<br />
<br />
{{Bug|1428098}} Don't reconfig the video encoder stack manually<br />
<br />
{{Bug|1428390}} Risk for shutdown deadlock in CamerasChild<br />
<br />
{{Bug|1428392}} Remove AudioOutputObserver<br />
<br />
{{Bug|1429219}} Enforce providing simulcast encodings with enough bits to avoid encoder Init failure<br />
<br />
{{Bug|1430931}} appear.in hits MOZ_CRASH(ArrayBufferInputStream not thread-safe)<br />
<br />
===WebRTC: Networking:===<br />
<br />
{{Bug|1230759}} Update libsrtp to version 2.2.0-pre<br />
<br />
{{Bug|1297418}} Update sctp library from upstream<br />
<br />
{{Bug|1426059}} Remove unused code in mtransport<br />
<br />
===WebRTC: Signaling:===<br />
<br />
{{Bug|1290948}} Implement RTCRtpTransceiver and pc.addTransceiver<br />
<br />
{{Bug|1400363}} Update muted state on tracks when negotiation happens<br />
<br />
{{Bug|1404686}} Crash - WebRtc - Null Pointer dereference in nsWrapperCache::HasWrapperFlag<br />
<br />
{{Bug|1421965}} Crash in mozilla::MediaPipeline::MediaPipeline<br />
<br />
{{Bug|1422215}} WebRTC - Use After Free in in JsepSessionImpl::CheckNegotiationNeeded()<br />
<br />
{{Bug|1423842}} onaddstream changed behaviour with transceivers<br />
<br />
{{Bug|1425621}} Lost ability to detect remote track removal (Remove remote tracks from their streams when negotiated away)<br />
<br />
{{Bug|1425697}} Data Channel remote maximum message size slightly incorrect<br />
<br />
{{Bug|1425873}} addTransceiver(<string>, {streams: [stream]) should fire ontrack with stream in streams argument.<br />
<br />
{{Bug|1425901}} Use nsITimerCallback for DTMF timers<br />
<br />
{{Bug|1425956}} Removing a track and later re-adding it to a peer connection causes InvalidSessionDescriptionError<br />
<br />
{{Bug|1425996}} Various builds will be busted when Gecko 59 merges to Beta on 2018-01-11<br />
<br />
{{Bug|1427745}} Enable ESLint rule mozilla/use-services for dom/media<br />
<br />
{{Bug|1430707}} Hit MOZ_CRASH() at PeerConnectionMedia.cpp:490</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/59&diff=1188364Media/WebRTC/ReleaseNotes/592018-02-01T21:15:11Z<p>Nohlmeier: Combined both bug queries into one</p>
<hr />
<div>=Firefox 59 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 59:==<br />
'''''WebRTC and WebAudio bugs:'''''<br />
[https://mzl.la/2EwoFWZ Bugzilla search for WebRTC and WebAudio related bugs marked Fixed in Firefox 59] <br />
<br />
== Noteworthy Changes: ==<br />
<br />
==Bug tickets fixed in Firefox 59 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video:Cubeb :===<br />
<br />
===Audio/Video:GMP (Gecko Media Plugin):===<br />
<br />
===Audio/Video:MediaStreamGraph (MSG):===<br />
<br />
===Audio/Video:Media Recording: ===<br />
<br />
===WebAudio:===<br />
<br />
===Core (General) WebRTC:===<br />
<br />
===WebRTC:Audio/Video:===<br />
<br />
===WebRTC:Networking:===<br />
<br />
===WebRTC:Signaling:===</div>Nohlmeierhttps://wiki.mozilla.org/index.php?title=Media/WebRTC/ReleaseNotes/59&diff=1188256Media/WebRTC/ReleaseNotes/592018-01-31T07:13:48Z<p>Nohlmeier: Updated webaudio URL</p>
<hr />
<div>=Firefox 59 WebRTC/WebAudio Release Notes:=<br />
<br />
==Full listing of all WebRTC & WebAudio bugs marked as Fixed in Firefox 59:==<br />
'''''WebRTC bugs:'''''<br />
[https://mzl.la/2EmoZY1 Bugzilla search for WebRTC related bugs marked Fixed in Firefox 59] <br />
<br />
'''''WebAudio bugs:'''''<br />
[https://mzl.la/2Er8EBG Bugzilla search for WebAudio bugs marked Fixed in Firefox 59]<br />
<br />
== Noteworthy Changes: ==<br />
<br />
==Bug tickets fixed in Firefox 59 that affect WebRTC or Web Audio (full list):==<br />
<br />
===Audio/Video:Cubeb :===<br />
<br />
===Audio/Video:GMP (Gecko Media Plugin):===<br />
<br />
===Audio/Video:MediaStreamGraph (MSG):===<br />
<br />
===Audio/Video:Media Recording: ===<br />
<br />
===WebAudio:===<br />
<br />
===Core (General) WebRTC:===<br />
<br />
===WebRTC:Audio/Video:===<br />
<br />
===WebRTC:Networking:===<br />
<br />
===WebRTC:Signaling:===</div>Nohlmeier