searching for reviewer(padenot)
a756ef52e84fc9d4e7ed4da50ab85df2b48cebfa: Bug 1299139 - Don't export symbols from soundtouch on Windows; r=padenot
Ehsan Akhgari <ehsan@mozilla.com> - Tue, 11 Jun 2019 10:01:54 +0000 - rev 478237
Push 36138 by rgurzau@mozilla.com at Tue, 11 Jun 2019 21:33:19 +0000
Bug 1299139 - Don't export symbols from soundtouch on Windows; r=padenot Differential Revision: https://phabricator.services.mozilla.com/D33093
4c6601b33cbe055779daa09369375f1d7e32b5a1: Bug 1444508 remove obsolete expected failures r=padenot
Karl Tomlinson <karlt+@karlt.net> - Mon, 10 Jun 2019 15:38:05 +0000 - rev 478117
Push 36136 by nerli@mozilla.com at Tue, 11 Jun 2019 03:18:15 +0000
Bug 1444508 remove obsolete expected failures r=padenot These have been lingering since https://hg.mozilla.org/mozilla-central/rev/3ac736416349 due to bug 1474463. Differential Revision: https://phabricator.services.mozilla.com/D34299
f03b1a7c02abc0a597ae07ab047c094b36897029: Bug 1306999 - Reset mSrcStreamPlaybackEnded when unsetting srcObject. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Mon, 10 Jun 2019 13:11:28 +0000 - rev 478050
Push 36134 by nerli@mozilla.com at Mon, 10 Jun 2019 21:47:35 +0000
Bug 1306999 - Reset mSrcStreamPlaybackEnded when unsetting srcObject. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D33296
143bc31d3d701a4d7beaa10994fbd673118583ca: Bug 1306999 - Use ProducerIDs in VideoOutput. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Mon, 10 Jun 2019 13:11:05 +0000 - rev 478048
Push 36134 by nerli@mozilla.com at Mon, 10 Jun 2019 21:47:35 +0000
Bug 1306999 - Use ProducerIDs in VideoOutput. r=padenot With the extra first-frame-logic in HTMLMediaElement there are two VideoOutput instances feeding frames to the same ImageContainer. To maintain FrameID invariants these need to have unique ProducerIDs. Differential Revision: https://phabricator.services.mozilla.com/D33294
a064b18a1a575f044d6f37c93eebb40296b650cd: Bug 1542674 - Make Media debug info machine parsable r=padenot,smaug,jya
Tarek Ziadé <tarek@mozilla.com> - Mon, 27 May 2019 16:15:33 +0000 - rev 475745
Push 36072 by dluca@mozilla.com at Tue, 28 May 2019 09:38:00 +0000
Bug 1542674 - Make Media debug info machine parsable r=padenot,smaug,jya This patch structurizes the media debug information via webidl dictionaries that are returned by HTMLMediaElement::GetMozRequestDebugInfo() and MediaSource::GetMozDebugReaderData(). Differential Revision: https://phabricator.services.mozilla.com/D27893
4d9f7977a103255ef5d9e9424b6233482b25c304: Bug 1121623 part 4. Remove AudioScheduledSourceNode::WrapObject. r=padenot
Boris Zbarsky <bzbarsky@mit.edu> - Thu, 23 May 2019 11:40:14 +0000 - rev 475386
Push 36060 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:47:21 +0000
Bug 1121623 part 4. Remove AudioScheduledSourceNode::WrapObject. r=padenot It's dead code, because AudioScheduledSourceNode is an abstract class and all subclasses override WrapObject. Differential Revision: https://phabricator.services.mozilla.com/D32202
35d351f93ba070079fa9910141fac7327ed1e6ec: Bug 1552194 - Consider ftyp 3gp4 as being mp4. r=padenot
Jean-Yves Avenard <jyavenard@mozilla.com> - Tue, 21 May 2019 11:30:37 +0000 - rev 474874
Push 36048 by shindli@mozilla.com at Wed, 22 May 2019 09:10:21 +0000
Bug 1552194 - Consider ftyp 3gp4 as being mp4. r=padenot 3gp4 is based on mp4. Should the codecs not be supported we will simply error later. Differential Revision: https://phabricator.services.mozilla.com/D31919
0cf679ede4c4b13ad29286daff941853721887b5: bug 1548816 crashtest r=padenot
nils@vulndev.org, Karl Tomlinson <karlt+@karlt.net> - Wed, 08 May 2019 09:35:19 +0000 - rev 474656
Push 36043 by rmaries@mozilla.com at Tue, 21 May 2019 09:44:47 +0000
bug 1548816 crashtest r=padenot Differential Revision: https://phabricator.services.mozilla.com/D30160
825113edb81e866f34e09e18bbdf56af3a4c8ecc: Bug 1552652 - Unbreak building tests on Tier3 after bug 1545079. r=padenot
Jan Beich <jbeich@FreeBSD.org> - Mon, 20 May 2019 09:06:35 +0000 - rev 474478
Push 36040 by rgurzau@mozilla.com at Mon, 20 May 2019 13:43:21 +0000
Bug 1552652 - Unbreak building tests on Tier3 after bug 1545079. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D31756
7e8007308d0daeaf79f9ef9efe642e4ac0fb1941: Bug 1545079 - Create a gtest that exercises revive method of AudioCallbackDriver. r=padenot
Alex Chronopoulos <achronop@gmail.com> - Tue, 14 May 2019 15:27:06 +0000 - rev 474369
Push 36032 by dluca@mozilla.com at Sat, 18 May 2019 10:23:48 +0000
Bug 1545079 - Create a gtest that exercises revive method of AudioCallbackDriver. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D30890
70a4ba81a3960e7fdec38063e2608b56b61436b4: Bug 1545079 - Execute revive logic in operation thread. r=padenot
Alex Chronopoulos <achronop@gmail.com> - Tue, 14 May 2019 16:00:22 +0000 - rev 474368
Push 36032 by dluca@mozilla.com at Sat, 18 May 2019 10:23:48 +0000
Bug 1545079 - Execute revive logic in operation thread. r=padenot `IsStarted` may not be updated at the time `Revive()` method is executed since the update of the flag happens on the async operation. This will be the case if `Revive` is executed right after `Start`. When that happens the revive method asserts that the stream is started. Differential Revision: https://phabricator.services.mozilla.com/D30889
17935ce513d2c8909992f187edc68e0ae2e5d941: Bug 1545079 - Enhance MockCubeb class to simulate a cubeb stream. r=padenot
Alex Chronopoulos <achronop@gmail.com> - Fri, 17 May 2019 16:38:04 +0000 - rev 474367
Push 36032 by dluca@mozilla.com at Sat, 18 May 2019 10:23:48 +0000
Bug 1545079 - Enhance MockCubeb class to simulate a cubeb stream. r=padenot On MochCubeb add a fake audio thread and the corresponding methods for stream_{init,start,stop,destroy}. Differential Revision: https://phabricator.services.mozilla.com/D30888
21607f778c71f98666bd5d5520a3839abc615c29: Bug 1545079 - Move MockCubeb on a seperate reusable header. r=padenot
Alex Chronopoulos <achronop@gmail.com> - Tue, 14 May 2019 15:26:15 +0000 - rev 474366
Push 36032 by dluca@mozilla.com at Sat, 18 May 2019 10:23:48 +0000
Bug 1545079 - Move MockCubeb on a seperate reusable header. r=padenot Extract the existing MockCubeb logic from TestAudioDeviceEnumerator to a separate reusable header. Differential Revision: https://phabricator.services.mozilla.com/D30887
28587715459e4541e26e5f0986d20b0479fda083: Bug 1552342 - Update libcubeb to b9e2c50. r=padenot
Matthew Gregan <kinetik@flim.org> - Fri, 17 May 2019 09:27:50 +1200 - rev 474185
Push 36026 by malexandru@mozilla.com at Fri, 17 May 2019 09:30:40 +0000
Bug 1552342 - Update libcubeb to b9e2c50. r=padenot
f798e09dc294fd2c86f67489ac5b1bbf5195f07d: Bug 1546865 - Retry gUM on mic process limit collision after 200 ms. r=padenot
Jan-Ivar Bruaroey <jib@mozilla.com> - Fri, 10 May 2019 16:06:09 +0000 - rev 473422
Push 35996 by dvarga@mozilla.com at Fri, 10 May 2019 21:46:48 +0000
Bug 1546865 - Retry gUM on mic process limit collision after 200 ms. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D30290
7f32b838169018a9355ccba9a243bd311e319aed: Bug 1548816 be consistent about number of frames copied r=padenot
Karl Tomlinson <karlt+@karlt.net> - Tue, 07 May 2019 11:17:54 +0000 - rev 472976
Push 35983 by ncsoregi@mozilla.com at Wed, 08 May 2019 03:38:51 +0000
Bug 1548816 be consistent about number of frames copied r=padenot Differential Revision: https://phabricator.services.mozilla.com/D30159
c386ebfd9c6bdcf77162391848b32f143561b67f: Bug 1542674 - Make Media debug info machine parsable r=padenot,smaug
Tarek Ziadé <tarek@mozilla.com> - Mon, 06 May 2019 16:39:58 +0000 - rev 472762
Push 35978 by shindli@mozilla.com at Tue, 07 May 2019 09:44:39 +0000
Bug 1542674 - Make Media debug info machine parsable r=padenot,smaug This patch structurizes the media debug information via webidl dictionaries that are returned by HTMLMediaElement::GetMozRequestDebugInfo() and MediaSource::GetMozDebugReaderData(). Differential Revision: https://phabricator.services.mozilla.com/D27893
cf38c251e2e643abd7b4bbc994f141a5dd174c5b: Bug 1547381 - Call StopTrack() in the right order. r=padenot
Jan-Ivar Bruaroey <jib@mozilla.com> - Mon, 06 May 2019 09:14:38 +0000 - rev 472724
Push 35976 by opoprus@mozilla.com at Mon, 06 May 2019 21:44:12 +0000
Bug 1547381 - Call StopTrack() in the right order. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D29924
6b2c2ad50bd0ae8ae58d1202e5d37a6611a697a9: Bug 1546655 - Skip 'flac-s24.flac' and 'opus-mapping2.webm' in test_streams_element_capture.html r=padenot
Alastor Wu <alwu@mozilla.com> - Thu, 02 May 2019 17:48:33 +0000 - rev 472335
Push 35954 by rgurzau@mozilla.com at Fri, 03 May 2019 04:14:31 +0000
Bug 1546655 - Skip 'flac-s24.flac' and 'opus-mapping2.webm' in test_streams_element_capture.html r=padenot Differential Revision: https://phabricator.services.mozilla.com/D29594
bfebd4300498feec18eab878c5fecf005d468d13: Bug 1530178 - Update WPT expectations. r=padenot
Valentin Millet <valentin.millet39@gmail.com> - Thu, 02 May 2019 09:24:57 +0000 - rev 472250
Push 35951 by cbrindusan@mozilla.com at Thu, 02 May 2019 15:30:19 +0000
Bug 1530178 - Update WPT expectations. r=padenot https://github.com/WebAudio/web-audio-api/issues/1004 Differential Revision: https://phabricator.services.mozilla.com/D26474
fe9afae0f868666eec95b151b50d5c6783c3cd91: Bug 1530178 - copyFromChannel/copyToChannel until end of buffer when destination/source is longer r=padenot,karlt
Valentin Millet <valentin.millet39@gmail.com> - Thu, 02 May 2019 09:24:57 +0000 - rev 472248
Push 35951 by cbrindusan@mozilla.com at Thu, 02 May 2019 15:30:19 +0000
Bug 1530178 - copyFromChannel/copyToChannel until end of buffer when destination/source is longer r=padenot,karlt than available space, as clarified in https://github.com/WebAudio/web-audio-api/issues/1004 Differential Revision: https://phabricator.services.mozilla.com/D25791
a885e5f28d3141921d9235adfdd0b88552e507a2: Bug 1546872 - Update cubeb from upstream to 64aa80f. r=padenot
Alex Chronopoulos <achronop@gmail.com> - Thu, 25 Apr 2019 20:14:32 +0300 - rev 471428
Push 35917 by rmaries@mozilla.com at Fri, 26 Apr 2019 09:49:13 +0000
Bug 1546872 - Update cubeb from upstream to 64aa80f. r=padenot Pick commit: 64aa80f - wasapi: notify when a device is disabled. BMO 1546872
c0e459d136243e309fba76dccefc45ac2de6afa4: Bug 1545133 - Avoid trying to double-suspend a MediaStream if external code makes the suspendCount negative. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 25 Apr 2019 16:41:15 +0000 - rev 471355
Push 35916 by rmaries@mozilla.com at Fri, 26 Apr 2019 09:46:15 +0000
Bug 1545133 - Avoid trying to double-suspend a MediaStream if external code makes the suspendCount negative. r=padenot We don't currently know any ways in which external code can make the suspendCount negative, but this will keep us safe should a future bug enable it. Depends on D28805 Differential Revision: https://phabricator.services.mozilla.com/D28806
158a9ef03153ceef4b9a097e087860f8e1712d2d: Bug 1545133 - Add crashtest. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 25 Apr 2019 16:41:33 +0000 - rev 471354
Push 35916 by rmaries@mozilla.com at Fri, 26 Apr 2019 09:46:15 +0000
Bug 1545133 - Add crashtest. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D28805
3ba614682b62df868e89da1d7705b3191954f0fc: Bug 1545279 - Update cubeb from upstream to 3570749. r=padenot
Alex Chronopoulos <achronop@gmail.com> - Thu, 25 Apr 2019 09:22:35 +0000 - rev 471260
Push 35913 by rgurzau@mozilla.com at Thu, 25 Apr 2019 16:18:07 +0000
Bug 1545279 - Update cubeb from upstream to 3570749. r=padenot Pick commits: 3570749 - wasapi: tie monitor lifetime with notification client lifetime. BMO 1545279 (#505) 162625a - test: add option to get the posotion of a stream (#504) Differential Revision: https://phabricator.services.mozilla.com/D28796
eecfddb57e5598e319c5ec4a93bbb07a47821262: Bug 1546655 - Fix test filtering in test_streams_element_capture.html. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 14:49:23 +0000 - rev 470665
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1546655 - Fix test filtering in test_streams_element_capture.html. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D28666
69e2758dbbad1423d57f8067499786451d9695b3: Bug 1546655 - Skip ambisonics.mp4 in test_streams_element_capture.html. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 14:00:53 +0000 - rev 470654
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1546655 - Skip ambisonics.mp4 in test_streams_element_capture.html. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D28651
eab0e21e5347199b24d3eaf17669c2a8efb38781: Bug 1544650 - Always pre-create MediaStreamTracks for DecodedStream in MediaDecoder. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Tue, 23 Apr 2019 16:46:30 +0000 - rev 470635
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1544650 - Always pre-create MediaStreamTracks for DecodedStream in MediaDecoder. r=padenot This moves the responsibility for creating MediaStreamTracks from DecodedStream::Start to MediaDecoder. This let's MediaDecoder create them as soon as metadata is known. This gives the application guarantees on when tracks can be expected to exist, and aligns with the spec that says they should be created when metadata is known. Differential Revision: https://phabricator.services.mozilla.com/D28473
284e4c610279c7cc676e80ff6c500315aacc15e3: Bug 1544650 - Add mochitest. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Tue, 23 Apr 2019 16:46:45 +0000 - rev 470634
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1544650 - Add mochitest. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D28472
e2a82cb2f43cd5735be7d2baa411b32be57b8ee3: Bug 1536766 - Update WPT expectations. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 10:56:18 +0000 - rev 470633
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1536766 - Update WPT expectations. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D28604
2787160c8537aa22a3c20ab22b3f1febe4d51715: Bug 1536766 - End a track only after the graph has reported reaching its end time in DecodedStream. r=jya,padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 10:56:16 +0000 - rev 470632
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1536766 - End a track only after the graph has reported reaching its end time in DecodedStream. r=jya,padenot This gives us a guarantee that the first frame of a media file can be rendered with a second media element and mozCaptureStream(), even if the file is very very short. With longer video-only files there were also cases where nothing ended up being rendered. Probably because the MediaStreamGraph ended up switching from an AudioCallbackDriver to a SystemClockDriver and this took enough time to put the SourceMediaStream::EndTrack and the SourceMediaStream::AddTrackListener calls for this video track to be processed in the same iteration. The listener would then always lose to the ending track and update main thread state too late, leading to its media element not rendering any frames and nasty intermittent failures. Differential Revision: https://phabricator.services.mozilla.com/D27270
93eb3684768757b78558d261f0db56aea2b797bd: Bug 1536766 - Drop frames more accurately when ending and interrupting video track playback. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 10:56:11 +0000 - rev 470631
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1536766 - Drop frames more accurately when ending and interrupting video track playback. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D27269
8b2771254100edaff6d738f1335d4253f9ede203: Bug 1536766 - Make NotifyOutput from SourceMediaStream tracks reflect amount of data in the track. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 10:56:04 +0000 - rev 470630
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1536766 - Make NotifyOutput from SourceMediaStream tracks reflect amount of data in the track. r=padenot `streamCurrentTime` is relative to the start of the stream, as is the track's segment. We need to account for the track's start time in the stream when notifying of output. Differential Revision: https://phabricator.services.mozilla.com/D27268
ea1f424b6c7d84e478cd349091a951d1a9383c51: Bug 1536766 - Remove unused MediaStream::HasCurrentData. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 10:55:50 +0000 - rev 470628
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1536766 - Remove unused MediaStream::HasCurrentData. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D27266
32d459a421329ef10b8b609795053d4debcea408: Bug 1536766 - Handle DecodedStream's resets when calculating VideoChunk durations in the MSG. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 10:55:46 +0000 - rev 470626
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1536766 - Handle DecodedStream's resets when calculating VideoChunk durations in the MSG. r=padenot This is necessary to get an accurate total track duration in case DecodedStream does a lot of seeking and pausing. This also removes previous code for avoiding blocking a video track, as this new code handles that case too. Differential Revision: https://phabricator.services.mozilla.com/D27264
46eb056738352e581e6e334ce4ad0f84fd4a0f07: Bug 1536766 - Don't ignore null frames in MediaStreamGraph. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Wed, 24 Apr 2019 10:55:41 +0000 - rev 470625
Push 35910 by cbrindusan@mozilla.com at Wed, 24 Apr 2019 21:51:39 +0000
Bug 1536766 - Don't ignore null frames in MediaStreamGraph. r=padenot Null frames could still be valid. It's how DecodedStream signals a pause. They could also be valid and have an intrinsic size and the force-black flag set. Differential Revision: https://phabricator.services.mozilla.com/D27263
db146a70077d0fef30987a87e7835e81fd6c5c54: Bug 1544023 - let AudioNode keep the reference of all AudioParams which belong to itself. r=padenot
Alastor Wu <alwu@mozilla.com> - Tue, 23 Apr 2019 17:50:54 +0000 - rev 470522
Push 35906 by aciure@mozilla.com at Tue, 23 Apr 2019 22:14:56 +0000
Bug 1544023 - let AudioNode keep the reference of all AudioParams which belong to itself. r=padenot When we suspend or resume the `AudioContext`, it should affect ALL media streams which belong to or are related to the `AudioNode` that are created by this `AudioContext`. As `AudioNode::OutputParams()` can only return the connected AudioParams, it doesn't return the AudioParams which are belong to itself. That means we would miss to apply the suspend/resume operation for those streams, and it would cause imbalancing suspended count. Therefore, we let `AudioNode` to keep the reference of all its AudioParam, and return them to `AudioContext` in order to do the operation for all streams. Differential Revision: https://phabricator.services.mozilla.com/D28008
4e29ffe20754681357353e3be5521f0cb200f544: Bug 1546012 - Avoid slow sleeps on Android in TestSPSCQueue; r=padenot
Geoff Brown <gbrown@mozilla.com> - Tue, 23 Apr 2019 13:39:36 +0000 - rev 470492
Push 35906 by aciure@mozilla.com at Tue, 23 Apr 2019 22:14:56 +0000
Bug 1546012 - Avoid slow sleeps on Android in TestSPSCQueue; r=padenot Reducing the sleep to 0 on Android results in a dramatic reduction in run time, and the test passes consistently. Differential Revision: https://phabricator.services.mozilla.com/D28296
510178f0dc32ee3c768c6c8f413bf16905c3e422: Bug 1541290 - Restart driver properly on revive method. r=padenot
Alex Chronopoulos <achronop@gmail.com> - Fri, 19 Apr 2019 08:34:22 +0000 - rev 470182
Push 35889 by csabou@mozilla.com at Fri, 19 Apr 2019 16:34:07 +0000
Bug 1541290 - Restart driver properly on revive method. r=padenot Revive method of AudioCallbackDriver was wrong because it was re-initializing an already initialized driver. That was hitting an assert. Instead of that it should stop the drained stream and start it again. Also, mStarted member should be reset properly on the stop method. Differential Revision: https://phabricator.services.mozilla.com/D26678
72d37a08f281c24833d1c49e947fb6db4df2fb87: Bug 1536766 - End a track only after the graph has reported reaching its end time in DecodedStream. r=jya,padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 18 Apr 2019 15:25:54 +0000 - rev 470105
Push 35888 by aiakab@mozilla.com at Fri, 19 Apr 2019 09:47:45 +0000
Bug 1536766 - End a track only after the graph has reported reaching its end time in DecodedStream. r=jya,padenot This gives us a guarantee that the first frame of a media file can be rendered with a second media element and mozCaptureStream(), even if the file is very very short. With longer video-only files there were also cases where nothing ended up being rendered. Probably because the MediaStreamGraph ended up switching from an AudioCallbackDriver to a SystemClockDriver and this took enough time to put the SourceMediaStream::EndTrack and the SourceMediaStream::AddTrackListener calls for this video track to be processed in the same iteration. The listener would then always lose to the ending track and update main thread state too late, leading to its media element not rendering any frames and nasty intermittent failures. Differential Revision: https://phabricator.services.mozilla.com/D27270
63fc8588506005ac9eb0f1ec45ed34e430c6cf4a: Bug 1536766 - Drop frames more accurately when ending and interrupting video track playback. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 18 Apr 2019 15:24:27 +0000 - rev 470104
Push 35888 by aiakab@mozilla.com at Fri, 19 Apr 2019 09:47:45 +0000
Bug 1536766 - Drop frames more accurately when ending and interrupting video track playback. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D27269
addbb04415cb8b82b5cdd5ff8a3905cafa6221fb: Bug 1536766 - Make NotifyOutput from SourceMediaStream tracks reflect amount of data in the track. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 18 Apr 2019 15:25:51 +0000 - rev 470103
Push 35888 by aiakab@mozilla.com at Fri, 19 Apr 2019 09:47:45 +0000
Bug 1536766 - Make NotifyOutput from SourceMediaStream tracks reflect amount of data in the track. r=padenot `streamCurrentTime` is relative to the start of the stream, as is the track's segment. We need to account for the track's start time in the stream when notifying of output. Differential Revision: https://phabricator.services.mozilla.com/D27268
25f3a33ec51b06b14d8f5eef12ebc3afe4c21e88: Bug 1536766 - Remove unused MediaStream::HasCurrentData. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 18 Apr 2019 15:24:12 +0000 - rev 470101
Push 35888 by aiakab@mozilla.com at Fri, 19 Apr 2019 09:47:45 +0000
Bug 1536766 - Remove unused MediaStream::HasCurrentData. r=padenot Differential Revision: https://phabricator.services.mozilla.com/D27266
f9d1f1bfe2b126dc1588e56724b860674519805a: Bug 1536766 - Handle DecodedStream's resets when calculating VideoChunk durations in the MSG. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 18 Apr 2019 15:23:59 +0000 - rev 470099
Push 35888 by aiakab@mozilla.com at Fri, 19 Apr 2019 09:47:45 +0000
Bug 1536766 - Handle DecodedStream's resets when calculating VideoChunk durations in the MSG. r=padenot This is necessary to get an accurate total track duration in case DecodedStream does a lot of seeking and pausing. This also removes previous code for avoiding blocking a video track, as this new code handles that case too. Differential Revision: https://phabricator.services.mozilla.com/D27264
87616997f16017b85f463691262261db6490c30b: Bug 1536766 - Don't ignore null frames in MediaStreamGraph. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Thu, 18 Apr 2019 15:23:46 +0000 - rev 470098
Push 35888 by aiakab@mozilla.com at Fri, 19 Apr 2019 09:47:45 +0000
Bug 1536766 - Don't ignore null frames in MediaStreamGraph. r=padenot Null frames could still be valid. It's how DecodedStream signals a pause. They could also be valid and have an intrinsic size and the force-black flag set. Differential Revision: https://phabricator.services.mozilla.com/D27263
fbd1effe6fe48bd57abbeaaa36b445bfb74e0194: Bug 1543032 - Extend metrics for dropped frames - r=padenot
Tarek Ziadé <tarek@mozilla.com> - Tue, 16 Apr 2019 11:50:38 +0000 - rev 469700
Push 35879 by nerli@mozilla.com at Tue, 16 Apr 2019 22:01:48 +0000
Bug 1543032 - Extend metrics for dropped frames - r=padenot This patch adds the number of dropped frames for each step of the process (read/sink/compositor) and gives us more insight about where frames are dropped, as opposed to the getVideoPlaybackQuality() API which gives the grand total. Differential Revision: https://phabricator.services.mozilla.com/D27488
b8855a45d798aac9bdf82cd328eb17375c5510e5: Bug 1542685 - Avoid integer overflows by multiplying doubles. r=padenot
Andreas Pehrson <apehrson@mozilla.com> - Mon, 08 Apr 2019 14:27:13 +0000 - rev 468352
Push 35835 by aciure@mozilla.com at Mon, 08 Apr 2019 19:00:29 +0000
Bug 1542685 - Avoid integer overflows by multiplying doubles. r=padenot SaferMultDiv(time, audioScale, videoScale) could easily result in overflow because all three args are roughly equal, and SaferMultDiv would always do the multiplication first. The worst-case is then multiplying an int64_t to another int64_t that have very similar values. Since we represent time here in microseconds, this would overflow after only 50 minutes. Differential Revision: https://phabricator.services.mozilla.com/D26494
2f1f6fd32a0dd97ea36df58e187bd94be9d65fc1: Bug 1541311 add support for AudioWorkletNode.numberOfInputs/Outputs r=padenot
Karl Tomlinson <karlt+@karlt.net> - Wed, 03 Apr 2019 13:38:10 +0000 - rev 467864
Push 35810 by aciure@mozilla.com at Thu, 04 Apr 2019 04:33:36 +0000
Bug 1541311 add support for AudioWorkletNode.numberOfInputs/Outputs r=padenot There is no specified limit on the number of inputs or outputs, except that the webidl parameter is unsigned long, but Gecko has an implementation-defined limit. Differential Revision: https://phabricator.services.mozilla.com/D25898
f3098fb60d80e9de86714d5f14f12fb2e55351e8: Bug 1539039 shutdown worklet from AudioContext::Shutdown() r=padenot
Karl Tomlinson <karlt+@karlt.net> - Fri, 29 Mar 2019 16:11:59 +0000 - rev 467511
Push 35799 by cbrindusan@mozilla.com at Tue, 02 Apr 2019 08:35:12 +0000
Bug 1539039 shutdown worklet from AudioContext::Shutdown() r=padenot On process shutdown, the MSG is shut down (and so are other threads) before the final main thread cycle collection, and so we can't depend on unlink to notify the worklet before MSG shutdown. Depends on D25351 Differential Revision: https://phabricator.services.mozilla.com/D25352
973f69d0a81036de9a73b4980755b9bfaa1873f1: Bug 1539039 finish worklet before destination stream is destroyed r=padenot
Karl Tomlinson <karlt+@karlt.net> - Fri, 29 Mar 2019 16:12:08 +0000 - rev 467510
Push 35799 by cbrindusan@mozilla.com at Tue, 02 Apr 2019 08:35:12 +0000
Bug 1539039 finish worklet before destination stream is destroyed r=padenot AudioDestinationNode, AudioContext, and Worklet are part of the same cycle. Any of these may be unlinked before another. The unlink process for this cycle is the notification that the worklet will no longer be used, but the worklet uses the destination stream to send a message to release graph thread objects and so must do this before the stream is destroyed. Differential Revision: https://phabricator.services.mozilla.com/D25351