Commit Graph

13528 Commits

Author SHA1 Message Date
Chris Pearce
7b1b141797 Bug 1453843 - Ensure we fire "pause" event when rejecting play() promise. r=bryce
Bug 1435133 introduced a new path where we block autoplay and reject the play()
promise, but we didn't fire a "pause" event. This confuses YouTube's controls.

Additionally, even if we're not in a user generated event handler, we
unilaterally consider the media element blessed if execution reaches here:
https://searchfox.org/mozilla-central/rev/11a2ae294f50049e12515b5821f5a396d951aacb/dom/html/HTMLMediaElement.cpp#4110
We previously rejected before reaching here when not in a user generated event
handler, but now if play() is called before we've reached loadedmetadata, we
reject the promise if we're not in a non-event handler and bail out early, and
so we'll bless even if not in a user generated event handler. Meaning when we
do reach loadedmetadata, we think we were in a user generated event handler
when play() was originally called, and so we won't reject the play promise.

So this patch ensures we dispatch a "pause" event when we reject the play()
promise here. The WHATWG spec says we should do this when pausing anyway.

Note: calling our interal Pause() function when rejecting the play() promise
here breaks YouTube, as if we do that we fire a "timeupdate" event. So I opted
to manually code to fire the event here instead of just calling Pause()
everywhere we want to ensure we're paused.

MozReview-Commit-ID: 1snkiTnPGih

--HG--
extra : rebase_source : 2c5ca6c0ed7c2dff2fb971cd159cfdc12a8a227f
2018-04-20 17:53:37 +12:00
Dorel Luca
65669dae30 Merge mozilla-inbound to mozilla-central. a=merge 2018-04-21 02:00:04 +03:00
Boris Zbarsky
0ba35d199f Bug 1455052 part 8. Stop using nsIDOMEvent in docshell and dom. r=masayuki
MozReview-Commit-ID: ASkuyN3xSwB
2018-04-20 12:55:30 -04:00
Nico Grunbaum
7522ae5acb Bug 1452673 - trackless RTCRtpSender.getStats() returning unfiltered results r=mjf
MozReview-Commit-ID: 7JzZlBUqc0O

--HG--
extra : rebase_source : 6bc54727c6ac024c0d2628fc99751c9c4dc447bf
2018-04-18 00:16:27 -07:00
Paul Adenot
fbf116232d Bug 1444976 - Trace some initial real-time media stuff. r=pehrsons
MozReview-Commit-ID: 7mmDHVS2t8f

--HG--
extra : rebase_source : ac56722792f99aadd8e359ef9ae4b30f6dc78076
extra : source : 7b9d0ce0b1cb20540d1c5bf4c77596359b5cb73e
2018-04-12 17:51:35 +02:00
Paul Adenot
a1cfe22210 Bug 1444976 - Use the AsyncLog to implement a tracing subsystem for real-time media. r=pehrsons
Use it like this:

MOZ_DISABLE_CONTENT_SANDBOX=1 MOZ_LOG=MSGTracing:5,sync,raw MOZ_LOG_FILE=trace.log ./mach run

Now open `chrome://tracing` and load the file.

Lanes are threads, thread 0 is the audio callback thread, the other thread have
normal numbers.

Thread 1 shows the theoretical budget we have for a particular audio callback.

MozReview-Commit-ID: 87woGiFT4ID

--HG--
extra : rebase_source : 03cefb8edf12b077607ae71aeb999fd0ac966674
extra : source : 14929579ba3f71f14c9d81b6ed88563d35da11e0
2018-03-20 18:22:08 +01:00
Paul Adenot
683f9406da Bug 1444976 - Implement a lock-free asynchronous logging system to be used from real-time audio and video code. r=froydnj
This outputs to MOZ_LOG and using an MPSC lock-free queue so we can log to a
particular module from any thread.

MozReview-Commit-ID: INtlki4PEJs

--HG--
extra : rebase_source : c1d488fdd65bfa7ede12c12004921415aaaa1d55
extra : source : f9482471bbd83882f8da3f0ce929f72858abfa04
2018-03-20 18:14:47 +01:00
Cosmin Sabou
4595d43d3a Merge inbound to mozilla-central. a=merge
--HG--
rename : browser/modules/offlineAppCache.jsm => toolkit/modules/offlineAppCache.jsm
2018-04-20 01:29:10 +03:00
Jean-Yves Avenard
abe6e049cd Bug 1435212 - Add support for FFmpeg 4.0. r=bryce
MozReview-Commit-ID: JlDFSUyGQu

--HG--
extra : rebase_source : 310135ac5453b01164910bd3bf50b6107dcbc710
2018-04-19 10:19:15 +02:00
Byron Campen [:bwc]
30281ed197 Bug 1444363: Don't dispatch Encode/Decode to main in the fake h264 impl, because the callsite is on main in the first place. r=bryce
MozReview-Commit-ID: Iznr1jNr75Z

--HG--
extra : rebase_source : 6c61c2194f3147f69b65ad163f639d9578a900d9
2018-04-16 10:52:29 -05:00
Andreea Pavel
5a4b5686f6 Merge mozilla-central to autoland a=backout on a CLOSED TREE
--HG--
extra : rebase_source : 3bbd9b3ffa46ec76f58d6d4d6ce672dd909b8457
2018-04-18 21:36:17 +03:00
Andreea Pavel
14ac5e554d Backed out 3 changesets (bug 1444976) for failing android at dom/media/tests/mochitest/test_getUserMedia_mediaStreamTrackClone.html a=backout
Backed out changeset 79b7ee8b01ee (bug 1444976)
Backed out changeset 35ca96cabe3c (bug 1444976)
Backed out changeset 2512c9c24244 (bug 1444976)
2018-04-18 21:25:14 +03:00
Coroiu Cristina
374b919ce6 Merge inbound to mozilla-central a=merge 2018-04-18 13:44:22 +03:00
Boris Zbarsky
d49151ed50 Bug 1452183 part 1. Stop using nsIDOMDocumentFragment in IDL files. r=mccr8 2018-04-17 21:13:03 -04:00
Paul Adenot
f00a090b8a Bug 1444976 - Trace some initial real-time media stuff. r=pehrsons
MozReview-Commit-ID: 7mmDHVS2t8f

--HG--
extra : rebase_source : a6b0bd42a63f3fc6e4a6307249ed447d749f96c4
extra : source : 7b9d0ce0b1cb20540d1c5bf4c77596359b5cb73e
2018-04-12 17:51:35 +02:00
Takuro Ashie
897da97e65 Bug 1306529 - OmxDataDecoder: Fix a stall issue on shutting down r=jya
Because the shutdown closure awaits finishing itself by
TaskQueue::AwaitShutdownAndIdle(), the function blocks infinitely.

The code is wrongly introduced at the following commit:

  * https://bugzilla.mozilla.org/show_bug.cgi?id=1319987
    * https://hg.mozilla.org/mozilla-central/rev/b2171e3e8b69

This patch calls it on mTaskQueue intead of mOmxTaskQueue to
avoid the issue.

MozReview-Commit-ID: 4qmX2QlniEG

--HG--
extra : rebase_source : 17ef7f95f7205307980dd0924821b005ada06c56
extra : source : eb0a2bb44f95f195343fed284efcdd524a7bb868
2018-03-27 16:37:21 +09:00
Takuro Ashie
956ef94c09 Bug 1306529 - Add initial implementation of PureOmxPlatformLayer r=jya
It's a concrete class of OmxPlatformLayer for accessing OpenMAX IL
libraries directly. It will be usable on various embedded linux systems.
Note that it's not enabled by default yet. Add the following config to
your mozconfig.

  ac_add_options --enable-openmax

TODO: Implement zero-copy mode

MozReview-Commit-ID: EMEXAKzzR64

--HG--
extra : rebase_source : ee6acf7d046e8ce6e18a53988a4ea308b8d4d44f
2018-04-18 11:38:12 +09:00
Andreas Pehrson
1c41efddfa Bug 1454625 - Don't update settings from constraints if already updated from frame. r=padenot
MozReview-Commit-ID: KgiPUnXCWoM

--HG--
extra : rebase_source : 2f378128008ed8c95fb7f3cb3b6601c54ef4c88b
2018-04-17 17:09:11 +02:00
Andreas Pehrson
3be3fab400 Bug 1454625 - Schedule settings update before setting mImage. r=padenot
MozReview-Commit-ID: 9IasAgJImuI

--HG--
extra : rebase_source : 67fc9036b72c19f8fa73084053d617537e0cdaca
2018-04-17 11:14:19 +02:00
Paul Adenot
a28be80f69 Bug 1444976 - Use the AsyncLog to implement a tracing subsystem for real-time media. r=pehrsons
Use it like this:

MOZ_DISABLE_CONTENT_SANDBOX=1 MOZ_LOG=MSGTracing:5,sync,raw MOZ_LOG_FILE=trace.log ./mach run

Now open `chrome://tracing` and load the file.

Lanes are threads, thread 0 is the audio callback thread, the other thread have
normal numbers.

Thread 1 shows the theoretical budget we have for a particular audio callback.

MozReview-Commit-ID: 87woGiFT4ID

--HG--
extra : rebase_source : b4310af51efa83c6670ba4e37433f7a23a575bba
extra : source : 14929579ba3f71f14c9d81b6ed88563d35da11e0
2018-03-20 18:22:08 +01:00
Paul Adenot
5e0440d951 Bug 1444976 - Implement a lock-free asynchronous logging system to be used from real-time audio and video code. r=froydnj
This outputs to MOZ_LOG and using an MPSC lock-free queue so we can log to a
particular module from any thread.

MozReview-Commit-ID: INtlki4PEJs

--HG--
extra : rebase_source : c1d488fdd65bfa7ede12c12004921415aaaa1d55
extra : source : f9482471bbd83882f8da3f0ce929f72858abfa04
2018-03-20 18:14:47 +01:00
Nicholas Nethercote
59e46f2358 Bug 1451535 - Remove NS_ConstExprIsAscii() functions. r=froydnj 2018-04-17 20:03:52 +09:00
Andreas Pehrson
60784fe3c7 Bug 1450954 - Test that a screenshare track's getSettings return sane dimensions. r=jib
MozReview-Commit-ID: GDSQLfXBFBU

--HG--
extra : source : 159a7327328f98867447b62e1a4f0fc8148aea3f
extra : histedit_source : 03c8fc1c0d151a0614adc1af64b445cdcff02a2e
2018-04-10 15:04:25 +02:00
Brindusan Cristian
667fae7dc8 Merge inbound to mozilla-central. a=merge 2018-04-17 12:53:33 +03:00
shindli
805cb19c1d Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-04-17 01:45:58 +03:00
Margareta Eliza Balazs
12088e3639 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-04-16 21:51:56 +03:00
Noemi Erli
28e582447f Backed out changeset d0cf37de4a14 (bug 1450954) for failing in dom/media/tests/mochitest/test_getUserMedia_basicScreenshare.html on a CLOSED TREE 2018-04-16 21:48:02 +03:00
Margareta Eliza Balazs
dbef13782c Backed out 2 changesets (bug 1451278) for breaking windows pgo builds a=backout
Backed out changeset ac685df07bfc (bug 1451278)
Backed out changeset 5944ccd5060d (bug 1451278)
2018-04-16 21:41:03 +03:00
Nicholas Nethercote
2224229b3d Bug 1451278 - Remove NS_ConstExprIsAscii() functions. r=froydnj
MozReview-Commit-ID: DG2HUOa7x6y

--HG--
extra : rebase_source : a0e2f24f96cb688d11984827acb1361abc4988e6
2018-04-16 08:37:25 +10:00
Nico Grunbaum
b5c0e1c02f Bug 1449832 - restore screen share scaling code to prevent cropping r=pehrsons
MozReview-Commit-ID: KctPLbF4PSa

--HG--
extra : rebase_source : 8a3a63a1df890e2343dec44f4cdfe1193d317a9a
2018-04-12 14:26:14 -07:00
Andreas Pehrson
4725f85fd8 Bug 1450954 - Test that a screenshare track's getSettings return sane dimensions. r=jib
MozReview-Commit-ID: GDSQLfXBFBU

--HG--
extra : source : a836af9dc1468a9d4c8f925cb391dd39d8e6e416
extra : histedit_source : 8ff97a3d4a852fc1d4f0bd2eaef04dc0e35247f1
2018-04-10 15:04:25 +02:00
Ben Kelly
dab3fba304 Bug 1451913 P8 Add an AudioContext event target leak test. r=smaug 2018-04-16 06:08:53 -07:00
Ben Kelly
dcda4a3e1c Bug 1451913 P3 Make AudioContext add itself to the new window when its rebound for a document.open(). r=smaug 2018-04-16 06:08:52 -07:00
Nicholas Nethercote
51f2b494ea Bug 1448222 - Remove MediaPrefs. r=jya
This patch converts all the prefs in MediaPrefs to the new StaticPrefs system.

Note that the "media.wmf.skip-blacklist" pref was present in both MediaPrefs
and gfxPrefs. The copy in MediaPrefs was never used; this explains why this
patch does not add an entry for it to StaticPrefList.h.

Note also that the patch removes themedia.rust.mp4parser pref, because it's
unused.

MozReview-Commit-ID: IfHP37NbIjY

--HG--
extra : rebase_source : df84ea813b7c366d7be663c696891325610149c8
2018-03-20 09:48:56 +11:00
Kyle Machulis
541d6f6f00 Bug 1453517 - Remove nsPopupWindowManager and related XPCOM bits; r=bz
MozReview-Commit-ID: JIDdZfnNN8E

--HG--
extra : rebase_source : 8b92fec383a21f80fceb87502e9a7accdb7dd74f
2018-04-11 16:16:13 -07:00
Andreea Pavel
69ae5fe098 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-04-14 00:58:36 +03:00
Andreea Pavel
01f50bc3d8 Merge mozilla-inbound to mozilla-central. a=merge 2018-04-14 00:56:30 +03:00
Masatoshi Kimura
d7043295be Bug 1445601 - Stop using LoadLibraryA in GMP. r=cpearce
We should not use LoadLibraryA (or more generally "A" functions) on Windows
because it is lossy. Bug 1440886 will introduce a static analysis to prevent
potential misuse of LoadLibraryA, so we need to replace existing usages first.

MozReview-Commit-ID: 6krgrVcSHNW

--HG--
extra : rebase_source : 0e93acecfe0c9ccd2e4ba9ad3126b6ae16433387
2018-03-28 00:02:28 +09:00
Alex Chronopoulos
a1457bde95 Bug 1452993 - Get MSG instance from MediaStream to avoid the risk of creating new instance. r=padenot
MozReview-Commit-ID: F1R4FCEe1Gf

--HG--
extra : rebase_source : cfafb0b1ba95ae2aa2dcd77ba681a1026e89f1f5
2018-04-10 18:06:32 +03:00
Sebastian Hengst
0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Gurzau Raul
7334578c1a Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-04-13 02:14:09 +03:00
Gurzau Raul
f620cf509e Merge inbound to mozilla-central. a=merge 2018-04-13 02:08:51 +03:00
Nathan Froyd
a31fa9e19c Bug 1453437 - return UniquePtr from MediaRawData::CreateWriter; r=gerald
Returning UniquePtr is nicer than returning raw pointers, and has the
nice side effect of forcing us to clean up the uses of nsAutoPtr that
were hanging about.
2018-04-12 15:28:21 -04:00
Sebastian Hengst
0eb9d87997 merge mozilla-inbound to mozilla-central. a=merge 2018-04-12 22:20:13 +03:00
Tom Ritter
8a27d79dfd Bug 1446346 Remove skips for webaudio tests that should now be fixed r=padenot
MozReview-Commit-ID: GfkOOv8VLkA

--HG--
extra : rebase_source : 8d7f66b8744bffc28c71f8c4de546840827af7d6
2018-04-11 21:50:04 -05:00
Tom Ritter
1e46fe37dc Bug 1446346 If an AudioContext hasn't been started, do not bother clamping/jittering the CurrentTime r=padenot
This will resolve several intermittments that were occuring because we would
occasionally get unlucky and have a jitter midpoint of 0, making an unstarted
AudioContext report a CurrentTime of 100us (or 1ms - whatever our clamp value
was.)

MozReview-Commit-ID: 45zXLbB93wP

--HG--
extra : rebase_source : 23ea5964dc49543c2b4ca45890c4c08456e75c73
2018-04-11 11:34:57 -05:00
Margareta Eliza Balazs
7bd6a55b97 Backed out changeset 2198e282bdcf (bug 1451681) for bustage in /builds/worker/workspace/build/src/dom/media/platforms/agnostic/bytestreams/AnnexB.cpp on a CLOSED TREE 2018-04-12 16:30:43 +03:00
Jean-Yves Avenard
4446aa0310 Bug 1451681 - Handle case where crypto plain size definition didn't exist. r=cpearce
Also ensure that the MP4 demuxer can't create such sample.

MozReview-Commit-ID: JANgHNiiz2H

--HG--
extra : rebase_source : 652d311cb69e6c3ed3b1ba91719e79acb0a4bb9c
2018-04-09 11:39:13 +02:00
Jan-Ivar Bruaroey
6a472b4cb4 Bug 1452031 - Close fingerprint concern by removing code no longer needed to handle NotFoundError spec case. r=pehrsons
MozReview-Commit-ID: KVQjO18PL0I

--HG--
extra : rebase_source : 3e8f94c486bad728c5c54b8ea3f148f452ea2b07
2018-04-10 01:49:15 -04:00
Jan-Ivar Bruaroey
4665da444b Bug 1452031 - InternalError is not a valid gUM error per spec. Use AbortError instead. r=pehrsons
MozReview-Commit-ID: 3pMRl1XgkfS

--HG--
extra : rebase_source : 6e3ce9812657b09f0a38b5e807cc7b01b0a6789e
2018-04-06 15:06:16 -04:00
Jan-Ivar Bruaroey
b5b5ad5862 Bug 1452031 - Use strong types for Media error names, fixing OverconstrainedError typo. r=pehrsons
MozReview-Commit-ID: AqGoW9rBdl5

--HG--
extra : rebase_source : fc7a638a2502aaebf318a35c6135755558a7396b
2018-04-10 01:22:53 -04:00
Margareta Eliza Balazs
1dff32311e Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-04-12 12:46:52 +03:00
Andreas Pehrson
c376bbc538 Bug 1450954 - Add back code to undo screenshare constraints hack. r=jib
MozReview-Commit-ID: 9rDRj7U8vQi

--HG--
extra : source : e2bd588aa90fe44fe38caed6bc7680111394b934
extra : histedit_source : 148034b0adc84941ae9c39716bb3da6d8258e3a4
2018-04-10 13:13:41 +02:00
shindli
108a654fb8 Merge inbound to mozilla-central. a=merge 2018-04-12 02:45:34 +03:00
Boris Zbarsky
2542e6eb8a Bug 1452741. Stop using the no-arg DOMEventTargetHelper constructor in MediaTrack. r=bkelly
MozReview-Commit-ID: AbE3XJdj4KO
2018-04-11 10:27:00 -04:00
Tristan Bourvon
a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Bryce Van Dyk
f16be73b01 Bug 1447273 - Add test to check that different GainNode configuraitons produce correct output. r=padenot
MozReview-Commit-ID: 6iaCqotLmug

--HG--
extra : rebase_source : abdc6daf57979cb117e4a0e41078594c68d6d58e
2018-04-05 14:58:08 -04:00
Dan Minor
82684c47c4 Bug 1453030 - Add crashtest; r=bwc
MozReview-Commit-ID: 2p3VwoOTICx

--HG--
extra : rebase_source : fd5cbfc8eb607c274875df60f484a66e126db081
2018-04-10 13:36:43 -04:00
Dan Minor
30d5029270 Bug 1453030 - Only create RTCDTMFSender on audio RTCRtpSender senders; r=bwc
MozReview-Commit-ID: KsnUYCs8IYU

--HG--
extra : rebase_source : 2bee2f713ef65ef5baaa6cd37a3f9521beaa9a73
2018-04-10 13:19:42 -04:00
Andreea Pavel
525c9e7907 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-04-11 17:38:56 +03:00
Nika Layzell
0c3ba13e4c Bug 1437167 - Part 1: Stop using PRIntervalTime as the argument to CondVar::Wait and Monitor::Wait, r=mstange, r=froydnj 2018-04-10 17:49:47 -04:00
Andreas Pehrson
351446a16c Bug 1447273 - Consider all AudioChunk members in AudioChunk::CanCombineWithFollowing. r=padenot
MozReview-Commit-ID: 1Fz1GNxRF3P

--HG--
extra : rebase_source : 377a96799f159431f2ab9d34d200ba9110fb2fca
2018-03-26 18:33:42 +02:00
Andreas Pehrson
9b7bfe9819 Bug 1447273 - Reduce AudioChunk::CanCombineWithFollowing indentation. r=padenot
MozReview-Commit-ID: 9pk5xKrYoa6

--HG--
extra : rebase_source : 06dfaeab1e6d579aabd1a8ec02e8dd708396e821
2018-03-26 18:33:09 +02:00
Tom Bannister
988d18881f Bug 1434710 - Replaced all instances of mozilla::IndexSequence, mozilla::MakeIndexSequence and mozilla::IndexSequenceFor with std::index_sequence, std::make_index_sequence and std::index_sequence_for and removed mfbt/IndexSequence.h. r=botond
MozReview-Commit-ID: 1Ema7TUNr5v

--HG--
extra : rebase_source : e5bb164dbe19993214e8c16f92b0a1f5d2ff3fa1
2018-04-09 21:12:13 +10:00
Nathan Froyd
bf9542b8b8 Bug 1453672 - Make MediaRawDataWriter's allocation methods MOZ_MUST_USE. r=gerald
The documentation says that the boolean return values from these methods
must be checked.  We might as well make the compiler check these things
for us.
2018-04-12 07:29:00 -04:00
Jean-Yves Avenard
f5cce074ab Bug 1451681 - Handle case where crypto plain size definition didn't exist. r=cpearce
Also ensure that the MP4 demuxer can't create such sample.

MozReview-Commit-ID: JANgHNiiz2H

--HG--
extra : rebase_source : d6a68579e76f1eda651e38bec5a9ed17c9de3fa4
2018-04-09 11:39:13 +02:00
Andreas Pehrson
aaf89f2684 Bug 1447982 - Rename mLastPrefs to mNetPrefs and update comment for clarity. r=padenot
MozReview-Commit-ID: CJPSDG5OHBs

--HG--
extra : rebase_source : 4be85639204fb53f02f1f5262fa945b78a97b286
2018-03-26 12:24:17 +02:00
Andreas Pehrson
83d5534ca3 Bug 1447982 - Remove early exit when no change on Reconfigure. r=padenot
We don't want to skip all remaining steps. For now it just affects some logging,
but there may be new ones added in the future.

MozReview-Commit-ID: 7fBdgLNT780

--HG--
extra : rebase_source : dc5113298c1dbadd23c19127349a4a66cd460b4c
2018-03-26 12:23:12 +02:00
Andreas Pehrson
deb26bcad0 Bug 1447982 - Pass GraphImpl into ApplySettings. r=padenot
MozReview-Commit-ID: GQlRUB3O1em

--HG--
extra : rebase_source : 80f6fc2f599a917f05de5af00103bbbff3f1caf0
2018-03-26 12:18:35 +02:00
Andreas Pehrson
cb8419331d Bug 1447982 - Remove unused MediaEnginePrefs from AllocationHandle. r=padenot
MozReview-Commit-ID: 3gIU7MCddWG

--HG--
extra : rebase_source : f894d4dcefe229cd8b3aa170c9dd617b4a2b6314
2018-03-26 12:15:56 +02:00
Andreas Pehrson
1776ec7eae Bug 1447982 - Apply and update mic source settings on Reconfigure. r=padenot
MozReview-Commit-ID: KKcRclPpCB2

--HG--
extra : rebase_source : 688291ca5dbaecd0992ad98555d1b4da54aebf84
2018-03-26 11:05:52 +02:00
Andreas Pehrson
be1fb6ddb7 Bug 1447982 - Mic source's ApplySettings shouldn't have weird side effects. r=padenot
MozReview-Commit-ID: DCVi5Wy4WN2

--HG--
extra : rebase_source : 422704dbd55e50326816aebb3bdc7767ba835e4a
2018-03-26 11:04:51 +02:00
Andreas Pehrson
6c20c3f1cf Bug 1447982 - Move mic source allocation logging so it actually covers allocations. r=padenot
MozReview-Commit-ID: Ipq5vqCfvgi

--HG--
extra : rebase_source : 9501f3ce7eee7e6cbf5bc839e4f7581be5a5a543
2018-03-26 11:03:58 +02:00
Andreas Pehrson
bd47efdaa2 Bug 1447982 - Cover channel count changes also when mic source is stopped (muted). r=padenot
MozReview-Commit-ID: HtDS5SXL08

--HG--
extra : rebase_source : bd815cffb2705fcb1da817b10daeb738405e76dd
2018-03-26 11:02:26 +02:00
Andreas Pehrson
b47ca1eca7 Bug 1447982 - Guard against destroyed stream. r=padenot
MozReview-Commit-ID: 51opeU1U6GR

--HG--
extra : rebase_source : 45abf299f05fa1cd8520723b329652d83c1212d7
2018-03-26 10:57:36 +02:00
Andreas Pehrson
c26ee52a6e Bug 1447982 - Remove unnecessary conditional. r=padenot
MozReview-Commit-ID: LKy9TGsGEfj

--HG--
extra : rebase_source : 1bba3bf46287febe8c249b8603503db7ae8716e1
2018-03-26 10:57:06 +02:00
Andreas Pehrson
c14f3bbe02 Bug 1447982 - Add mochitest for audio constraints. r=jib
MozReview-Commit-ID: DGlvTW6EXAO

--HG--
extra : rebase_source : b89a40f34998091b0a42304c3237f900e15cde7e
2018-04-11 16:05:49 +02:00
Bryce Van Dyk
27bbb1c83b Bug 1453648 - Remove special handling for Sine source at 440 Hz test device. r=achronop
MozReview-Commit-ID: foVINjjMOX

--HG--
extra : rebase_source : 6d33600302fdd89b6eee6a874b82e30a06eeb5de
2018-04-11 17:12:28 -04:00
Byron Campen [:bwc]
c67de40370 Bug 1449272 - Part 2: When using both offerToReceiveAudio and offerToReceiveVideo, create the audio transceiver first. r=jib
MozReview-Commit-ID: ClgChq6FLQ7

--HG--
extra : rebase_source : e2c2e9f2abd609522d618b6828c4447f4a515dd0
2018-03-27 13:36:02 -05:00
Byron Campen [:bwc]
aa7de1ce53 Bug 1449272 - Part 1: Update test-case to expect the audio transceiver first when using both offerToReceiveAudio and offerToReceiveVideo. r=jib
MozReview-Commit-ID: FXvNRVIMdQN

--HG--
extra : rebase_source : 88c16c0d32bc8d0008ac92a138930d5ac8d836bc
2018-03-27 13:35:16 -05:00
Andreea Pavel
f4081d2372 Backed out changeset e2949379e13e (bug 1451759) for linux debug failures at dom/media/tests/mochitest/test_peerConnection_addAudioTrackToExistingVideoStream.html on a CLOSED TREE
Enter commit message.  Lines beginning with 'HG:' are removed.
2018-04-11 12:38:00 +03:00
Alex Chronopoulos
0286edbecd Bug 1451759 - Default fake device on media mochitests for Linux debug builds to avoid errors of loopback device. r=jib
MozReview-Commit-ID: GB2n54P4zP5

--HG--
extra : rebase_source : 34fce9df5e207cbdb08cef02cbf494ff7f07b2a5
2018-04-10 17:15:58 +03:00
Chris Pearce
79ee61bdff Bug 1435133 - Test that we delay media play start until we know whether a media has audio or not. r=bryce
Test that play() on a media without audio called before
readyState >= HAVE_METADATA will still play.

MozReview-Commit-ID: 1FeDrEfCEum

--HG--
extra : rebase_source : be6d07905aad853ad028eac372e4e380bdeb1a49
extra : source : e98b4a7aaf020fa3d6d59cb0f53680ef6466d154
2018-04-06 17:13:39 +12:00
Chris Pearce
2be26b6b7c Bug 1443942 - Move code to toggle high res timers into VideoSink. r=jya
We have code in the MDSM to toggle on high resolution timers on Windows when we
start/stop playing because the VideoSink relies on being awoken by timers to
update the set of current frames in the compositor's queue, and on Windows 7 we
end up dropping frames due to the timer lag without this.

We assert in the MDSM's destructor that we've turned off high res timers (as
they cause needless battery drain, so we only want them on when we need them),
and the new test_mediarecorder_principals is hitting that assert on Windows. I
think we're missing turning them off when we create a new VideoSink for
outputting to the MSG. That affects the value returned by
MediaDecoderStateMachine->mVideoSink->IsPlaying(), which is what we use to
decide whether we should enable high resolution timers. We track whether we've
enabled high res timers in MDSM::mHiResTimersRequested, and that gets out of
sync with IsPlaying() when we re-create the MediaSink.

Rather than trying to handle all the permutations of places where we need to
turn off high resolution timers in the MDSM, we're better to move the code to
toggle high res timers into the VideoSink, as that's actually where we need to
be sure that we have high resolution timers enabled anyway. It's the VideoSink
after all that is relying on timers for frame update, not the MDSM.

Also remove the media.hi-res-timers.enabled pref, as we haven't needed it.

MozReview-Commit-ID: 9dNxcYxPDZH

--HG--
extra : rebase_source : 6e403d59bb5f1dd0241fe8298a823ba08b1670fb
2018-04-06 13:33:28 +12:00
Chris Pearce
dd45189315 Bug 1443942 - Rewrite test_mediarecorder_principals. r=bryce
I changed this test earlier in this set of commits to use
midflight-redirect.sjs so that we get more reliable and predictable cross
origin redirects during the download. Unfortunately this test now times out on
Windows.

This test times out on Windows because midflight-redirect.sjs redirects at 1/4
through the resource, whereas this test expects to be able to play through to
1/5 through the resource, and on Windows that seems to be not reached during
playback. This is likely due to decode latency being higher on Windows.

On top of that, the test's first case can sometimes call MediaRecorder.start()
before the redirect has happened, and before the principal has changed, and so
start() doesn't throw a SecurityError as expected, and the test intermittently
fails.

Additionally, the test's code could be clearer if we used async/await.

So rewrite the test to use async/await, and take advantage of
midflight-redirect.sjs's redirect being more predictable than the old
dynamic_redirect.sjs. Basically, we can be careful to wait for either
"loadedmetadata" or "error" on the media element in order to be more confident
the redirect has or hasn't happened yet.

We still can't be 100% sure that the redirect won't have already happened by
the time our "loadedmetadata" handlers run. It's quite possible that the
download has reached 1/4 through the resource by the time the loadedmetadata
handler has run, so we need to handle the "error" and "loadedmetadata" events
racing.

MozReview-Commit-ID: 8plMjkXgjYt

--HG--
extra : rebase_source : 7305598f40c09219494f3e7150799d8875b7c30e
2018-04-05 13:35:14 +12:00
Chris Pearce
a19e516c04 Bug 1443942 - Ensure MediaCacheStreams are initialized with the length of the resource, not the length of the byte range response. r=jya
I'm seeing intermittent failures of test_midflight_redirect_blocked. In this
test, our custom server responds to Firefox's 0- HTTP Byte Range request with a
[0,200] response. When Firefox requests 200-, the server responds with a cross
origin redirect, and then the remainder of the resource.

However sometimes while running test_midflight_redirect_blocked the MP4 demuxer
reads through all 200 bytes while trying to parse metadata before the redirect
has occurred and fed more data into the cache, and so the demuxer thinks it's
hit end of stream, and reports a failure. The demuxer thinks it's hit end of
stream, because we initialize the MediaCacheStream length in
ChannelMediaResource::Open() with the value of the Content-Length HTTP header.
But in an HTTP byte range response, the Content-Length header tells you the
length of the range returned, not the length of the entire resource. The length
of the resource is in the Content-Range header, we need to use that if
available.

So to fix this intermittent test failure, we need to also parse the
Content-Range header in ChannelMediaResource::Open(), and use the length from
that if available.

MozReview-Commit-ID: 29pPRsUvxag

--HG--
extra : rebase_source : ba1ef03d65ebd22698a29d8385f36b4c747ccf43
2018-04-04 12:36:00 +12:00
Chris Pearce
fbd7f61c3c Bug 1443942 - Fix dom/media/test/midflight-redirect.sjs. r=jya
Problems here:
* The variable `to` is undefined for byte range requests to the end of
the resource, making the math fail. Firefox normally makes ranges requests like
this.
* The bytes.length/4 calculation may not be a whole number, so can
result in a byte range header part of the way between two bytes. We need to
round the length off.
* Instead of re-calculating the contentLength, we can just use the length of
the actual byterange substring being returned. That's clearer.
* test_midflight_redirect_blocked needs the redirect to happen
before metadata has completed loading, but other tests require the redirect to
happen *after* metadata is loaded. So add a redirectAt query parameter for the
requester to control when to redirect.

MozReview-Commit-ID: I6n1NqK0Uze

--HG--
extra : rebase_source : a6bd68fe75cfd4c46f63ca815c5a4e9390bd671a
2018-04-04 14:30:15 +12:00
Chris Pearce
9f21b62342 Bug 1443942 - Switch over to midflight redirect for all redirect media tests. r=jya
We have two SJS files; midflight-redirect.sjs and dynamic_redirect.sjs,
which are very similar, but dynamic_redirect.sjs is buggy, so we should
just use midflight-redirect.sjs.

dynamic_redirect.sjs is buggy because it relies on the client doing multiple
HTTP requests to it in order to redirect, but we can't actually guarantee
this. Previously users of it would try things like setting a small MediaCache
size, or only using Ogg for which we expect a seek to the end to calculate
the duration, but I have observed the entire resource being downloaded in
one hit before the media element has finished loading metadata, meaning the
seek (in the Ogg case) can happen without another HTTP request. This is even
with a small MediaCache.

midfligh-redirect.sjs solves this problem by explicitly only returning a
partial response, so the client is forced to make another HTTP request,
which we will serve a redirect to.

MozReview-Commit-ID: 39imyayhnBG

--HG--
extra : rebase_source : 603532e4af0bf304c34739de5b0b243174e3831d
2018-03-29 18:16:33 +13:00
Chris Pearce
6a06dbd8b8 Bug 1443942 - Rewrite test_mixed_principals. r=jya
The original test is failing, as it assumed we'd not error when
origins were mixed without CORS, and the original test was using
outdated practises, so rewrite it.

MozReview-Commit-ID: KlOH83GUOk

--HG--
extra : rebase_source : 2c79691fddc93af0e04d8f23fa31ac8588a8d6e1
extra : amend_source : 2989317530f536915f011977c8f34e048410b018
2018-03-28 16:56:37 +13:00
Chris Pearce
5913d0470e Bug 1443942 - Make redirect SJS' serve with headers to prevent Necko caching. r=jya
Try to prevent Necko from caching the results of our SJS media responses, as
some of the test that use it rely on the server being hit and serving a
redirect. Sometimes the tests which rely on hitting a redirect in an SJS
where timing out without this, as Necko would cache the response and not
hit the server, and so not hit the redirect.

Also include a noise parameter to increase the likelihood that the URL is
unique, to further reduce the chance that Necko caches the result.

MozReview-Commit-ID: 3cLEiDoh4HG

--HG--
extra : rebase_source : 24c152d46540866f14211fae30f1e59c5d23b6d4
2018-03-28 16:55:46 +13:00
Chris Pearce
99ff9f62be Bug 1443943 - Ensure redirect SJS' serve the correct content types. r=jya
dynamic_redirect.sjs and midflight-redirect.sjs are serving files
with "Content-Type: video/ogg", which is incorrect and could lead
to problems given that we're not always asking it to serve Ogg
files. So include the type be to served as a query parameter.

MozReview-Commit-ID: 5f0PXy8lL3G

--HG--
extra : rebase_source : 757395a21317655422767efe3f7c1923a19c0114
2018-03-28 16:51:04 +13:00
Chris Pearce
e8c1b1b7f1 Bug 1443942 - Test for blocking midflight redirects in media elements. r=jya
Test that playback works if we don't block, doesn't if we do block, and does
if we do block and CORS is used.

MozReview-Commit-ID: 9PTZXLOdHIU

--HG--
extra : rebase_source : db7f0c61b64990623ef035b266cf052c45df1c76
2018-03-06 14:44:26 +13:00
Chris Pearce
259a33e836 Bug 1443942 - Block mid-flight redirects to cross origin destinations during media loads. r=jya
There's no compelling use case for mid-flight redirects, and Chrome
already blocks it, so there's little point in maintaining it.

Add a hidden pref to toggle blocking, so we can toggle it off during
testing to ensure that we're blocking a working mid-flight redirect.

MozReview-Commit-ID: EnGNmYFr8Uv

--HG--
extra : rebase_source : a2f4b7c68b73ecc4c7525d4e41e834f4caf85707
2018-03-06 09:55:03 +13:00
Noemi Erli
11310197b3 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-04-09 19:54:32 +03:00
Noemi Erli
b55e1a1cbc Merge inbound to mozilla-central. a=merge 2018-04-09 19:46:07 +03:00
Coroiu Cristina
fa24350f83 Backed out 2 changesets (bug 1306529) for build bustage on a CLOSED TREE
Backed out changeset 87206102c699 (bug 1306529)
Backed out changeset 7e70a7f597c4 (bug 1306529)
2018-04-09 15:59:58 +03:00
Kartikaya Gupta
5cbb6be895 Bug 1426199 - Re-enable more crashtests that are now passing. r=sotaro 2018-04-09 08:02:12 -04:00
Andreas Pehrson
2027a140e6 Bug 1452472 - Guard against stopped source and removed listener after timer fired. r=jib
MozReview-Commit-ID: 72M3xpbOgXP

--HG--
extra : rebase_source : c4ddcce0eac7b7539a61f389010f09383e15ee1f
2018-04-09 13:53:32 +02:00
Takuro Ashie
297ca3383c Bug 1306529 - OmxDataDecoder: Fix a stall issue on shutting down r=jya
Because the shutdown closure awaits finishing itself by
TaskQueue::AwaitShutdownAndIdle(), the function blocks infinitely.

The code is wrongly introduced at the following commit:

  * https://bugzilla.mozilla.org/show_bug.cgi?id=1319987
    * https://hg.mozilla.org/mozilla-central/rev/b2171e3e8b69

This patch calls it on mTaskQueue intead of mOmxTaskQueue to
avoid the issue.

MozReview-Commit-ID: 4qmX2QlniEG

--HG--
extra : rebase_source : f0784c0c5b2e39d2078a5aff72be03b52e413139
extra : intermediate-source : 635153e1dcdc442f8d72727b6fe504842b4ffa31
extra : source : bf011140459cc227c9435e3960770bafb3cecb8e
2018-03-27 16:37:21 +09:00
Takuro Ashie
6e0c9d24c2 Bug 1306529 - Add initial implementation of PureOmxPlatformLayer r=jya
It's a concrete class of OmxPlatformLayer for accessing OpenMAX IL
libraries directly. It will be usable on various embedded linux systems.
Note that it's not enabled by default yet. Add the following config to
your mozconfig.

  ac_add_options --enable-openmax

TODO: Implement zero-copy mode

MozReview-Commit-ID: EMEXAKzzR64

--HG--
extra : rebase_source : d7c5b9baf66d87db38723b278c57fd581a3cbf98
extra : intermediate-source : b8c671a02a4fce085433b16db998c9b04ace87db
extra : source : 131b65580e3dd5c9dcb0ba6a05c16ab90c2dcc68
2018-03-28 18:21:04 +09:00
Alex Chronopoulos
16d2b965f6 Bug 1451781 - Check if output device is mono and remove stereo check in order to disable opus channel inversion. r=jya
MozReview-Commit-ID: 3x27rBs5Ika

--HG--
extra : rebase_source : 0b7232a0705edceda8793444c140aa947cc99d51
2018-04-09 13:07:58 +03:00
Andreas Pehrson
1e2190d040 Bug 1451798 - Check the variable actually containing the string. r=jib
MozReview-Commit-ID: 2xizfHwVPiW

--HG--
extra : rebase_source : 345327a6721e84b64ba3b66cb308dbe1100391bb
2018-04-06 15:06:46 +02:00
Noemi Erli
3c6217a11e Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-04-07 01:03:50 +03:00
Noemi Erli
2108ebfea1 Bug 1446456 - disable test_audioParamSetCurveAtTimeTwice.html for frequent failures on Linux and Windows. r=jmaher
--HG--
extra : rebase_source : 36dfabc5d23aca549f544c25d4f2ef90329dea7d
2018-04-06 13:18:00 +03:00
Nils Ohlmeier [:drno]
c9b218795e Bug 1451926: add a user pref for AV1 codec. r=cpearce
MozReview-Commit-ID: 9R6Ac4O81Ji

--HG--
extra : rebase_source : bd2f46b5596c0ebafc4f60bb8bf1812a8bf776f5
2018-04-05 20:35:57 -07:00
Eliza Balazs
930bf58210 Bug 1446346 - Disable test_audioParamLinearRamp.html on linux and windows for frequent failures. r=jmaher 2018-04-04 06:01:00 +03:00
Andreea Pavel
7a4b9a3f56 Merge mozilla-inbound to mozilla-central. a=merge
--HG--
extra : rebase_source : 66bd87105d99036ada5008499ff0eaea579b531a
2018-04-06 13:20:21 +03:00
Randell Jesup
3013268159 Bug 1448705: use input latency for draining r=jya 2018-04-05 17:15:07 -04:00
Dan Minor
edc3382dd2 Bug 1432793 - Add mochitest for odd simulcast resolutions; r=bwc
This creates a simulcast stream with an odd resolution. This previously would
have caused a runtime assertion failure and crash.

MozReview-Commit-ID: IsywVOu6UeV

--HG--
extra : rebase_source : 7ad1cbe7dd36ccdd7a05e0c0a83db98a36c8c416
2018-04-04 09:24:28 -04:00
Boris Zbarsky
83412146ec Bug 1449631 part 13. Remove now-unnecessary forwarding macros. r=smaug
MozReview-Commit-ID: 6teO2KoGqUo
2018-04-05 13:42:42 -04:00
Boris Zbarsky
2cdc7450c3 Bug 1449631 part 10. Devirtualize AddEventListener. r=smaug
The CanCallerAccess check in the "webidl" version of
nsGlobalWindowOuter::AddEventListener was pointless, because bindings never
call things on outer windows.

MozReview-Commit-ID: 1CGMJ277bPu
2018-04-05 13:42:42 -04:00
Boris Zbarsky
88937275cc Bug 1449631 part 9. Remove nsIDOMEventTarget::AddEventListener. r=smaug
Also switch the XPCOM-y version of EventTarget::AddEventListner to a
Nullable<bool> for aWantsUntrusted.

The three-arg overload of AddEventListener in ContentFrameMessageManager was
never called, so all the AddEventListener overloads there are not needed.

MozReview-Commit-ID: 4IhqHmPVWzE
2018-04-05 13:42:42 -04:00
Boris Zbarsky
4292bca4ee Bug 1449631 part 6. Remove nsIDOMEventTarget::DispatchEvent. r=smaug
MozReview-Commit-ID: 8YMgmMwZkAL
2018-04-05 13:42:41 -04:00
Noemi Erli
ff466e94c1 Merge inbound to mozilla-central. a=merge 2018-04-05 13:02:11 +03:00
Boris Zbarsky
5ae1563978 Bug 1450422. Get rid of nsIDOMDataChannel. r=mystor
MozReview-Commit-ID: Dei5EEd0FZO
2018-04-04 15:32:19 -04:00
Nils Ohlmeier [:drno]
48edb741ab Bug 1446880: updated IDP interface to use RTCIdentityProviderOptions. r=mt
MozReview-Commit-ID: 2xwDYR2kk27

--HG--
extra : rebase_source : 043a2217af0735ad0a5d0d72398e7771fd055105
2018-03-20 11:15:10 +00:00
Nils Ohlmeier [:drno]
641209cf77 Bug 1446880: update setIdentityProvider() to take RTCIdentityProviderOptions. r=mt
MozReview-Commit-ID: Hx3LV9Uw7fi

--HG--
extra : rebase_source : b597b7fe0daff9b6fead92b3cc9c2da3e45a671c
2018-03-19 06:16:20 +00:00
Brindusan Cristian
88cd740311 Backed out 3 changesets (bug 1446880) for mochitest failures on test_exceptions_from_jsimplemented.htm CLOSED TREE
Backed out changeset 3d162d7e2721 (bug 1446880)
Backed out changeset 7142d472f2a4 (bug 1446880)
Backed out changeset 50c255c237f1 (bug 1446880)
2018-04-04 20:48:59 +03:00
Nils Ohlmeier [:drno]
f3ad51380e Bug 1446880: updated IDP interface to use RTCIdentityProviderOptions. r=mt
MozReview-Commit-ID: 2xwDYR2kk27

--HG--
extra : rebase_source : c25e6ae78af97bf974079a58795a8f11ceb10912
2018-03-20 11:15:10 +00:00
Nils Ohlmeier [:drno]
5051a0eb24 Bug 1446880: update setIdentityProvider() to take RTCIdentityProviderOptions. r=mt
MozReview-Commit-ID: Hx3LV9Uw7fi

--HG--
extra : rebase_source : 0ecc2d1e17409f7cb4379be9efb6675aa1eb92f2
2018-03-19 06:16:20 +00:00
Jean-Yves Avenard
7bf7eeeccb Bug 1446931 - P2. Refactor code flow in Benchmark. r=gerald
The code relied on a flag to be set to simply abort. However, that made the code workflow hard to read.

We split each runs so that there's no ambiguity.

MozReview-Commit-ID: LI7pL5p69zu

--HG--
extra : rebase_source : 6c912edf87c13fc6b10a9be6bd57d4ffbf1dfc39
2018-03-30 11:00:50 +02:00
Jean-Yves Avenard
ee706e3b83 Bug 1446931 - P1. Handle errors in Benchmark. r=gerald
Benchmark had never been intended to be able to process invalid content. However over time Benchmark class has been used extensively by the fuzzing team.
As such, it became necessary to handle errors of all kind.

MozReview-Commit-ID: E0YulHuoiq2

--HG--
extra : rebase_source : a8c5bf2e05d5b4e9c89723cb1e0d71e61f17d501
2018-03-29 22:11:06 +02:00
Andreas Pehrson
c90665389c Bug 1407549 - Copy AudioSegment by constructor. r=padenot
This allows static analysis to pass for AudioNodeExternalInputStream.cpp.

MozReview-Commit-ID: 9dvllnnODed

--HG--
extra : rebase_source : 0c7665a3240422d52b82c5c2eaa4942be522dcb9
2018-04-04 12:07:41 +02:00
Andreas Pehrson
c213ba1025 Bug 1407549 - Avoid copying principal handles as much as possible. r=padenot
MozReview-Commit-ID: EMX2nf5nk1L

--HG--
extra : rebase_source : 4cbdfabcafb0bfb844dd022e6f56b425c4f6e87c
2018-03-29 16:15:51 +02:00
Andreas Pehrson
d46c8b84c9 Bug 1407549 - Simplify MSGImpl::AudioTrackPresent. r=padenot
MozReview-Commit-ID: 9MBH3xoah1f

--HG--
extra : rebase_source : 536dc84e1fd11e8edbf426067943c8c210ea0327
2018-03-29 16:10:29 +02:00
Andreas Pehrson
7ca59d202e Bug 1407549 - Make segments allocate chunk storage locally. r=padenot
MozReview-Commit-ID: 19VOLomq8A6

--HG--
extra : rebase_source : 0f492c83bd7d2695fce44381a11cc71ddc9fbc17
2018-03-29 16:13:36 +02:00
Andreas Pehrson
e5aeaef968 Bug 1407549 - Avoid array operations that can cause alloc/dalloc in MediaSegment. r=padenot
MozReview-Commit-ID: Fhg9NIltFti

--HG--
extra : rebase_source : 0e3536bbc1942ac0b5aa2d1c0bdc22eb73b72851
2018-03-28 14:41:11 +02:00
Andreas Pehrson
638e248ed3 Bug 1407549 - Give MediaSegment's chunk array a default capacity. r=padenot
MozReview-Commit-ID: 5BZMFimFjpS

--HG--
extra : rebase_source : 7851e13bbed0d377c376c4b15a708d18944bf133
2018-03-28 14:39:54 +02:00
Dan Glastonbury
e2671eba43 Bug 1451221 - Don't run test_background_video_suspend_ends.html in parallel. r=cpearce
When this test times out, one of the two videos in parallel takes
minutes to start.

MozReview-Commit-ID: AhXsQKDKwOD

--HG--
extra : rebase_source : 3d42329967204c201b9e882b13dafc3149247c79
2018-04-04 16:27:11 +10:00
Margareta Eliza Balazs
210797c4c1 Merge inbound to mozilla-central. a=merge 2018-04-04 12:43:55 +03:00
Ciure Andrei
5ffac2bcd3 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-04-04 00:58:50 +03:00
Ciure Andrei
7208a2fee8 Merge inbound to mozilla-central. a=merge 2018-04-04 00:54:16 +03:00
Ciure Andrei
b861d14e56 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-04-04 00:56:56 +03:00
Bryce Van Dyk
6426b6d6e7 Bug 1443525 - Add mochitests to test gUM when a cubeb context cannot be obtained. r=padenot
Add two mochitests to provide coverage for getUserMedia when getting a cubeb
context fails.
- The first test checks that gUM fails with no audio devices returned. In normal
  circumstances, without cubeb we do not expect devices to be available. Android
  is a notable exception here, due to it having a number of different code paths
  during enumaration, and the test attempts to accomodate this.
- The second test checks that if fake streams are enabled, gUM will still return
  a stream and that this stream can be used.

MozReview-Commit-ID: Fn6rGi6W9hM

--HG--
extra : rebase_source : b22ccc11cb034242f1a8807cfcae05f5ac2daa05
2018-03-20 16:46:33 -04:00
Bryce Van Dyk
daa4ebecbb Bug 1443525 - Add hidden pref to force CubebUtils to return null context. r=padenot
Add a hidden pref, media.cubeb.force_null_context, that will force CubebUtils
to return a nullptr when asked for the cubeb context. This is to enable testing
of components, simulating the case cubeb were to fail.

MozReview-Commit-ID: Kd9Ksu0GfQJ

--HG--
extra : rebase_source : 0ac7837105dc1005dbd3b02f8768fb3ebf55c11e
2018-03-20 11:41:28 -04:00
Peter Van der Beken
5e6f3328ec Bug 1448850 - Remove nsIMessageListener and nsIMessageListenerManager. r=bz.
--HG--
extra : rebase_source : 2938f6e1cb9078a6d45a8d58db0f6bf70e461b9c
2018-02-16 15:28:31 +01:00
Bryce Van Dyk
e9495a620d Bug 1436523 - Update head.js to better handle pref changes for fake/loopback devices during tests. r=achronop
Update head.js so that calls to the gUM helper will check the loopback and fake
device prefs and update the frequency output by test devices accordingly. This
should hopefully avoid issues where tests could change prefs, and the output
tone would no longer be correct for the new configuration.

No longer have audioDevice and videoDevice as globals, this way tests
explicitly fetch direct from prefs.

MozReview-Commit-ID: 9jhVScaBfTX

--HG--
extra : rebase_source : 64b17e44ef166983361f94cf7d287faed3c2cdc5
2018-03-21 15:23:37 -04:00
Bryce Van Dyk
b1fb8c3b44 Bug 1436523 - Change DeviceEnumerationType to scoped enum, add extra logging. r=achronop
Update the DeviceEnumerationType enum to scoped style enum for safety and
consistency. Add extra logging to aid in debugging test issues.

MozReview-Commit-ID: cm5bdlIcEG

--HG--
extra : rebase_source : bfcae3d49f809edfd0ed6ab3e516b8be0c0d517e
2018-03-16 15:09:26 -04:00
Bryce Van Dyk
551cc6f34b Bug 1436523 - Make WebRTC mochitest harness more granular with fake device setup. r=achronop
Update head.js so that logic for fake audio and fake video is more granular.
Now code handles fake audio and fake video separately, and will set the fake
pref is either is needed. This allows for a single loopback device to be set
and fake used for the other. Previously both devices needed to be loopback or
fakes would be used.

MozReview-Commit-ID: K4blmPrSVeh

--HG--
extra : rebase_source : 369ea7f788d29a02db68e517d324977f251c9a98
2018-03-05 14:46:03 -05:00
Bryce Van Dyk
da98dea96a Bug 1436523 - Update dom/media/tests/mochitest tests to better handle loopback devices. r=achronop
With changes giving loopback devices higher precedence in testing, various tests
in dom/media/tests/mochitest have been updated to accommodate this. Many tests
just worked, but some require tweaks, or to explicitly request fake devices.

Also update webaudio's test_mediaStreamAudioSourceNodeGC test to explicitly use
fake devices. This test does not have the loopback tone exposed to it in JS, so
is unabel to adjust the loopback tone to suit its needs.

Various tests are updated to set fake device prefs instead of requesting via
gUM to move away from non-standard behaviour per bug 1436424.

MozReview-Commit-ID: 5GAVZFzF2hq

--HG--
extra : rebase_source : 27f39e3573eda321025ce0739e1d5f4101fc5d12
2018-02-26 12:20:40 -05:00
Bryce Van Dyk
898975f341 Bug 1436523 - Update dom/media/test/ tests to better handle loopback + gUM device config. r=achronop
This changeset adds a gUM_support.js to dom/media/test/. This file provides
functions to setup prefs for loopback or fake device selection before gUM calls
are made. This is useful for configuring tests and providing an explicit point
of reference for settings, rather than the implicit ones provided by the
harness.

Updates tests so that the new helper functions are called before gUM. This
will result in loopback prefs being set if loopback device names are detected,
if not then fake devices will be used. This also removes the use of the fake
constraint in gUM calls.

Update touched tests to use some more modern JS. No behavioural changes were
made (except in minor cases, but functionality should be the same). These
changes are largely as follows:
- var -> let
- async is used in places where I felt it improved readability
- semicolons added to various event handler assignments

MozReview-Commit-ID: 1HuE8thBA6w

--HG--
extra : rebase_source : b866056b2821436cf34ea683421c200b4bb4e55f
2018-02-21 09:11:29 -05:00
Bryce Van Dyk
aa68bc0511 Bug 1436523 - Rework media manager enumeration to prefer loopback to fake devices, allow mixing of fake and loopback. r=achronop
Change the media manager so that if fake and loopback devices are requested,
loopback is preferred. With this change loopback and fake devices can also be
mixed. Since the fake flag is coarse, and does not specify fake audio or video,
we would previously just make everything fake. As loopback sets flags for video
and audio separately, we can now request a single loopback device, while also
setting the fake flag to get a mix. E.g. if we request a loopback audio device,
and set the fake flag, we should get loopback audio and fake video.

This change also attempts to somewhat consolidate where these settings take
place. Previously, EnumerateRawDevices did much of the loopback setup. However,
other steps around fingerprint resistance or fake devices were done in earlier
functions (EnumerateDevices and GetUserMedia). This changeset moves the loopback
setup so that it's more consolidated with the other setup code in these
functions.

MozReview-Commit-ID: FF0bR0Nyws9

--HG--
extra : rebase_source : 374a6fd0842a430e27c695bcf956e2e072a77fc3
2018-02-12 16:56:26 -05:00
Bryce Van Dyk
057cac41e3 Bug 1436523 - Add enum to specify select type of devices to enumerate in MediaManager rather than use bools. r=achronop
Prior to this patch various bools are used to track if we requst fake or
loopback devices during enumeration. However, since the normal, fake, and
loopback cases are mutually exclusive, a enum can be used. This provides allows
for having descriptive enum values in code and makes clear that the settings are
mutually exclusive.

MozReview-Commit-ID: FF0bR0Nyws9

--HG--
extra : rebase_source : 498513bdc6673fa299080097364a6d0dff00a073
2018-02-12 16:55:45 -05:00
Alex Chronopoulos
5cf2c64821 Bug 1431810 - Correct typo mistake in a webaudio test. r=kinetik
MozReview-Commit-ID: 45kAYeTAjaD

--HG--
extra : rebase_source : 101728377ed0e25e27184c2c25c4024b546decca
2018-03-28 14:14:46 +03:00
Alex Chronopoulos
321ec00151 Bug 1431810 - Test that opus phase inversion is disabled on mono output. r=kinetik
MozReview-Commit-ID: 4Q4E4MUF2iW

--HG--
extra : rebase_source : 91439572a6d58856d18188f56226d6b819763e71
2018-03-15 18:30:19 +02:00
Alex Chronopoulos
851a3ee589 Bug 1431810 - Disable Opus phase inversion on stereo to mono downmix. r=rillian
MozReview-Commit-ID: 5eaSPQzUu9o

--HG--
extra : rebase_source : 126d9faa2824d29fc73cf040b033ca585dfdbcee
2018-03-15 18:28:14 +02:00
Tom Ritter
9f13fdcfce Bug 1449244 Remove SphinxBase r=drno
MozReview-Commit-ID: AIcwcWAa4nV

--HG--
extra : rebase_source : 26a1f1379595917c20f042abfa2fbb25c634a9db
2018-03-27 12:04:10 -05:00
Andreas Pehrson
7835856206 Bug 1447563 - Clear direct track listeners from TrackUnionStream during shutdown. r=padenot
MozReview-Commit-ID: 9PbpQpOaIIh

--HG--
extra : rebase_source : d37a941097e921de5b83753244ab1523b34157b8
2018-03-26 19:20:44 +02:00
Andreas Pehrson
a55204490f Bug 1447563 - Clear video outputs during shutdown. r=padenot
MozReview-Commit-ID: L1ZnhmxrPqa

--HG--
extra : rebase_source : b35a810559d4b5706c3cce5a42b58cf388246ba7
2018-03-26 14:58:06 +02:00
Dan Glastonbury
6835957d77 Bug 1446233 - P2: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: EZXfIxBRyG4

--HG--
extra : rebase_source : a0d903e0b64bb72e0dc70a3d9fccee0e9636ef56
2018-03-22 15:33:25 +10:00
Margareta Eliza Balazs
adebb06ac1 Merge inbound to mozilla-central. a=merge 2018-03-28 00:48:11 +03:00
Paul Adenot
ca8f68d641 Bug 1441509 - Start performing the analysis in test_seamless_looping.html after the second loop, to let things stabilize. r=karlt
MozReview-Commit-ID: 5FK30GNk4s5

--HG--
extra : rebase_source : a2963dba94f1ed78779ea9797c59813c08eb9ff1
2018-03-09 15:24:03 +01:00
Nathan Froyd
052d391b9c Bug 1448031 - make various audio/video/media constructors explicit; r=gerald
Attempting to stand up the static analysis for Android builds revealed
that we weren't being explicit enough.
2018-03-27 10:51:32 -04:00
Bryce Van Dyk
93937894aa Bug 1449178 - MediaEngineWebRTC now clears device indicies while updating before checking cubeb. r=padenot
Stop us potentially keeping a stale device list when updating if we can't get a
cubeb context.

MozReview-Commit-ID: H6GdeNXObWV

--HG--
extra : rebase_source : 48fce949627fa17402336db824374847e1b439e6
2018-03-26 14:14:47 -04:00
Bryce Van Dyk
5e0fc84a7a Bug 1447821 - Add logging to ADTSSampleConverter ctor. r=jya
Add logging to aid in debugging of our EME ADTS conversion path.

MozReview-Commit-ID: A7Wv8n31V8V

--HG--
extra : rebase_source : 13f20179aa29180047a37a127029d0e28a1c4f80
2018-03-26 14:29:31 -04:00
Bryce Van Dyk
dd07217b57 Bug 1447821 - Update EMEDecoderModule to handle profile values < 1. r=jya
Update EMEDecoderModule to use 2 as profile number when the given profile is
less than 1 or greater than 4. The CDM doesn't appear to care what values are
given, but 2 was chosen as a safe fallback per discussion on the bug. This
addresses the use case where 0 values are stored in mProfile due to the use of
extended profiles (which are then stored in the mExtendedProfile field).

MozReview-Commit-ID: 5XgabNDsgdf

--HG--
extra : rebase_source : dd66a872aaac2acf4af55f06d3c24f53debe4e63
2018-03-23 14:54:41 -04:00
Tom Ritter
889652f2a2 Bug 1448869 Turn off jitter for some other wbeaudio tests r=baku
MozReview-Commit-ID: GTrw5nJnuCw

--HG--
extra : rebase_source : 22f0ec56b8fd69a00b8ba42d81ec691f45c828fb
2018-03-26 14:17:13 -05:00
Jean-Yves Avenard
130acc845f Bug 1447124 - Use int64_t for SaferMultDiv. r=gerald
This prevent potential division by zero should the cast on the argument cause an overflow.
We still limit the mul and div arguments to INT64_MAX.

MozReview-Commit-ID: gHkv6m4zq0

--HG--
extra : rebase_source : 1c27f9a2ecc4c8bf6a763dedf2859e64bf79ea85
2018-03-27 11:27:08 +02:00
Christian Holler
bfd12285ac Bug 1446929 - Support audio files in media Benchmark class. r=jya
MozReview-Commit-ID: 3EWNM1F4loN

--HG--
extra : rebase_source : 3fe6df940d75772f048b2b65fd7af33c605cab56
2018-03-27 14:07:12 +02:00
Christian Holler
3f4a6d5f8d Bug 1446932 - Handle nullptr in FlacFrameParser::GetTags. r=jya
MozReview-Commit-ID: I50zXqUUD7x

--HG--
extra : rebase_source : d16c105d715af6b8f0dbfead2ad91cd3b8c149a6
2018-03-27 13:02:15 +02:00
Bogdan Tara
302a55b534 Merge inbound to mozilla-central. a=merge 2018-03-27 12:12:57 +03:00
Tom Ritter
c44b92e887 Bug 1446394 Turn off Time Jitter for test_audioParamSetTargetAtTimeZeroTimeConstant.html r=baku
Disable time jittering when comparing different AudioContexts because they might look
different.

MozReview-Commit-ID: A3neLqokQ5c

--HG--
extra : rebase_source : b275942db06d3bb8e80bdb6ed5f94299636d1a8f
2018-03-16 15:10:25 -05:00
Gurzau Raul
1368521911 Backed out 3 changesets (bug 1431810) for failing test_bug1431810_opus_downmix_to_mono.html on Windows
Backed out changeset a01c1941a829 (bug 1431810)
Backed out changeset 43eb1c01c67f (bug 1431810)
Backed out changeset 3fe9d85d684a (bug 1431810)
2018-03-26 12:09:42 +03:00
Alex Chronopoulos
82d85fa592 Bug 1431810 - Correct typo mistake in a webaudio test. r=kinetik
MozReview-Commit-ID: 64Y38ekJKda

--HG--
extra : rebase_source : 0a84291c2f4af5508cb9c46747044224a0ff401c
2018-03-23 20:04:40 +02:00
Alex Chronopoulos
0a753f3dbb Bug 1431810 - Test that opus phase inversion is disabled on mono output. r=kinetik
MozReview-Commit-ID: BUWZUrXmzz2

--HG--
extra : rebase_source : 083c61aa3d53ddbe206343224264579ec1762ee8
2018-03-15 18:30:19 +02:00
Alex Chronopoulos
85119eac26 Bug 1431810 - Disable Opus phase inversion on stereo to mono downmix. r=rillian
MozReview-Commit-ID: 5eaSPQzUu9o

--HG--
extra : rebase_source : 126d9faa2824d29fc73cf040b033ca585dfdbcee
2018-03-15 18:28:14 +02:00
Ciure Andrei
d2b19e2ea2 Merge inbound to mozilla-central. a=merge 2018-03-25 00:38:44 +02:00
Jean-Yves Avenard
276fbcf9e9 Bug 1444479 - P11. Remove unused constant. r=padenot
MozReview-Commit-ID: JJ5vdecIlqy
2018-03-24 11:04:18 +01:00
Jean-Yves Avenard
45419290ff Bug 1444479 - P10. Don't reject files with more than 8 audio channels. r=padenot
MozReview-Commit-ID: 642RlRlHRv7
2018-03-24 10:58:02 +01:00
Jean-Yves Avenard
ebae2f1fac Bug 1444479 - P9. Remove WMF audio decoder channel limit. r=padenot
MozReview-Commit-ID: 4xj1Cd0ZzrA
2018-03-24 10:58:02 +01:00
Jean-Yves Avenard
48fb044530 Bug 1444479 - P8. Remove FFmpeg audio decoder channel limitation. r=padenot
MozReview-Commit-ID: JQWcOny5Tgd
2018-03-24 10:58:02 +01:00
Jean-Yves Avenard
5d750cff32 Bug 1444479 - P7. Allow Apple AudioToolbox decoder handle more than 8 channels. r=padenot
Apple layout standard has a 1:1 equivalence with the WAVE standard. As such, any streams under 18 channels, properly defining a channel layout, should play on all platform.
Otherwise, as Opus and Vorbis, the result will be platform dependent.

MozReview-Commit-ID: ID6b9u2UNQr
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
6edfbc05e3 Bug 1444479 - P6. Make Opus and Vorbis decoder deal with more channels than 8. r=padenot
Under 8 channels, the audio will be reordered so it can be playable on any platforms.
Over 8 channels, the channels will be as output by the decoder. Playing of such stream will be platform dependent as neither Opus nor Vorbis define a channel layout with more than 8 channels.

With WebAudio however, the result will be platform independent (as long as you don't attempt to play it)

MozReview-Commit-ID: 93ATiKm9y20
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
f15eea87d5 Bug 1444479 - P5. Let AudioSink deal with unknown layout. r=padenot
MozReview-Commit-ID: F31zNl5o9n1
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
adbf3514c6 Bug 1444479 - P4. Add new AudioConfig constructor. r=padenot
This will allow to create an AudioConfig with an unknown or unsupported channel layout, defaulting instead to the number of channels.

MozReview-Commit-ID: IonLuo9q2a5
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
52d5d366d4 Bug 1444479 - P3. Add Channels(ChannelMap) method. r=padenot
MozReview-Commit-ID: 9sYeh30NHFF
2018-03-24 10:58:00 +01:00
Jean-Yves Avenard
6f7668d056 Bug 1444479 - P2. Make AudioConverter works with unknown layout. r=padenot
If a channel layout is unsupported, the AudioConverter will instead just use the channel count information to leave the data as-is, only trimming extra channels, or inserting silence if needed.

MozReview-Commit-ID: CXOjcSRsRwI
2018-03-24 10:58:00 +01:00
Jean-Yves Avenard
d44cd705b3 Bug 1444479 - P1. Remove 8 channels limitation in AudioConfig. r=padenot
Instead we place it at 32.
Future changes will change the meaning of this limit to when we can deal with channel layout. If outside that limit the audio will be played on a best attempt basis.

MozReview-Commit-ID: EavmmcxjLI0
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
4680798728 Bug 1432779 - P7. Use typedef rather than actual type. r=padenot
this improve readability.

MozReview-Commit-ID: IYfrLMZ5djX
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
4e7b0b2695 Bug 1432779 - P5. Remove no longer used variables. r=padenot
MozReview-Commit-ID: LqOuM1F0NC2
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
87fa7068d5 Bug 1432779 - P4. Remove the concept of preferred layout. r=padenot,r=kamidphish
Channel layout is derived by the content being played. The concept of preferred layout is meaningless. Either we have a layout defined, or we don't. There's no in-between.

So we remove it.

MozReview-Commit-ID: CSCAInNmzMS
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
5a631a5822 Bug 1432779 - P3. Properly set channel map layout after seeking. r=padenot
MozReview-Commit-ID: 5FY9hdaijhf
2018-03-24 10:57:58 +01:00
Jean-Yves Avenard
113a5cf5d7 Bug 1432779 - P1. Fix ChannelLayout calculation for uncommon layouts. r=padenot
MozReview-Commit-ID: Fi5ESBhziOp
2018-03-24 10:57:58 +01:00
Jean-Yves Avenard
57c6cc0428 Bug 1431221 - P14. Remove static layout definitions. r=padenot
That ChannelLayout uses an AutoTArray internally makes XPCOM report them as leaking when declared as static.

They weren't use outside of ChannelLayout anyway so they can be removed.

MozReview-Commit-ID: KVqdjzvL8pr
2018-03-24 10:57:57 +01:00
Jean-Yves Avenard
e766599866 Bug 1431221 - P13. Remove dual mono layout. r=padenot
It makes no sense to have a case for those as the data structure used (a bitmask) do not allow to represent this channel layout (a channel can only be present once). As such it was a non-functional layout

MozReview-Commit-ID: FjA0fojFcJp
2018-03-24 10:57:56 +01:00
Jean-Yves Avenard
ae2b5719c2 Bug 1431221 - P12. Fix Force Stereo Mode. r=padenot
MozReview-Commit-ID: DEoKXNk3d4E
2018-03-24 10:57:56 +01:00
Jean-Yves Avenard
6c310b818e Bug 1431221 - P11. Configure audio to use desired channel layout. r=padenot
MozReview-Commit-ID: 1wyeCIWohHE
2018-03-24 10:57:56 +01:00
Jean-Yves Avenard
eae919be64 Bug 1431221 - P10. Properly retrieve and set channel layout for opus and vorbis. r=cpearce
MozReview-Commit-ID: A4jEQzHRKDT
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
c69d04a58b Bug 1431221 - P9. Properly retrieve and set channel layout on windows. r=cpearce
MozReview-Commit-ID: GKpOAgPP9qp
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
49fdb79628 Bug 1431221 - P8. Pass channel layout with FFmpeg. r=padenot
MozReview-Commit-ID: LgmguXHZSnB
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
72acc6380b Bug 1431221 - P7. Pass channel layout on mac. r=padenot 2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
ce853cc7ef Bug 1431221 - P6. Add channel map information to AudioInfo. r=padenot
MozReview-Commit-ID: 2zOvciLFtAr
2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
48cf8d7243 Bug 1431221 - P5. Split AudioConfig.{h,cpp} from MediaInfo. r=padenot
MozReview-Commit-ID: EzaC19HS2B8
2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
e9e8bc2708 Bug 1431221 - P4. Use similar channel decriptions as Windows WAVE and FFmpeg. r=padenot
This makes it for future easier conversion for the FFmpeg and Windows WMF decoder, so that we can use their channel map directly.

Also introduce a difference between 2F2 and QUAD, cubeb supports will be added in a future change.

MozReview-Commit-ID: L5NkjeuGslI
2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
bea2ce1579 Bug 1431221 - P3. Fix unified build. r=padenot
MozReview-Commit-ID: Di1uZjK8Iox
2018-03-24 10:57:53 +01:00
Jean-Yves Avenard
0924b93c38 Bug 1431221 - P2. Have mac AAC decoder use proper output layout. r=padenot
We previously made no difference between 3.1, 2F2 or 4.0...

MozReview-Commit-ID: Bt7UVAT5uWf
2018-03-24 10:57:53 +01:00
Jean-Yves Avenard
1e2f478164 Bug 1431221 - P1. Add method to retrieve SMPTE equivalent layout from any channel layout. r=padenot
MozReview-Commit-ID: J8yT5OWIbAH
2018-03-24 10:57:53 +01:00
Cosmin Sabou
d5f5fb893c Backed out 3 changesets (bug 1446233) for permafailing on dom/media/tests/mochitest/test_peerConnection_replaceTrack.html. a=backout
Backed out changeset 9b72102a99b3 (bug 1446233)
Backed out changeset 6f3488ff7c60 (bug 1446233)
Backed out changeset 20301e359a4e (bug 1446233)
2018-03-23 15:18:23 +02:00
Dan Glastonbury
ac492b197c Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: 7TVfYE9DEwp

--HG--
extra : rebase_source : e725ea784360e8d2061dbf4193c7074fde3cfdd1
2018-03-22 15:33:25 +10:00
shindli
5d297279b1 Backed out 3 changesets (bug 1446233) for Wr failures in /html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html on a CLOSED TREE
Backed out changeset ed217fb39a92 (bug 1446233)
Backed out changeset f5bec009a111 (bug 1446233)
Backed out changeset a71dd6219f8a (bug 1446233)
2018-03-23 04:11:01 +02:00
Dan Glastonbury
ac696a0587 Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: I4BL7Ad2xtI

--HG--
extra : rebase_source : 984378bf2fbca347762b3096f75069b7721c97be
2018-03-22 15:33:25 +10:00
Gerald Squelart
9d6a35ba05 Bug 1442819 - Suppress UBSan false positive - r=froydnj
MozReview-Commit-ID: 9pmmYc5gevV

--HG--
extra : rebase_source : 966d42e2a916308097e15d43eb6a8842af3ee961
2018-03-13 08:26:52 +11:00
Andreas Pehrson
b51b21aa64 Bug 1435036 - Improve window checks. r=jib 2018-03-19 09:40:38 +01:00
arthur.iakab
5e8092339a Merge mozilla-central to inbound
--HG--
rename : browser/base/content/test/general/bug364677-data.xml => browser/components/feeds/test/bug364677-data.xml
rename : browser/base/content/test/general/bug364677-data.xml^headers^ => browser/components/feeds/test/bug364677-data.xml^headers^
rename : browser/base/content/test/general/test_bug364677.html => browser/components/feeds/test/test_bug364677.html
rename : services/sync/tps/extensions/tps/bootstrap.js => services/sync/tps/extensions/tps/components/tps-cmdline.js
rename : testing/talos/talos/pageloader/bootstrap.js => testing/talos/talos/pageloader/components/tp-cmdline.js
rename : testing/talos/talos/startup_test/sessionrestore/addon/bootstrap.js => testing/talos/talos/startup_test/sessionrestore/addon/SessionRestoreTalosTest.js
rename : testing/talos/talos/talos-powers/bootstrap.js => testing/talos/talos/talos-powers/components/TalosPowersService.js
rename : tools/quitter/bootstrap.js => tools/quitter/QuitterObserver.js
extra : rebase_source : 5801e95a945b54754f27571e7b211e1eac132d67
2018-03-21 22:27:21 +02:00
Miko Mynttinen
65c6bee9d6 Bug 1445302 - Replace TArray.RemoveElementAt(TArray.Length() - 1) pattern with TArray.RemoveLastElement() or TArray.PopLastElement() r=froydnj
MozReview-Commit-ID: rGjabnP2iz

--HG--
extra : rebase_source : 1ef6c5ce028ac9ebd9f3176d57835c43fe46bada
2018-03-13 14:51:33 +01:00
Bryce Van Dyk
978c69f8d4 Bug 1434477 - If AudioCallbackDriver::Init() can't get a cubeb context, fall back to system clock driver. r=padenot
Change AudioCallbackDriver::Init() to fallback to a system clock driver if a
cubeb context can not be obtained. This should make driver init more robust in
cases where cubeb init fails and then CubebUtils::GetCubebContext() returns no
context.

MozReview-Commit-ID: IlFPytYacoI

--HG--
extra : rebase_source : 7445ceb49583ee3ae399252e995ce6f012d9da2f
2018-03-19 14:46:36 -04:00
Bryce Van Dyk
70d6e49a13 Bug 1434477 - Add extra logging to MediaManager's device enumeration path. r=padenot
Add logging was added to help diagnose gUM failures and provide more log
coverage of that code path.

MozReview-Commit-ID: A76fjlUVpmn

--HG--
extra : rebase_source : 6f67ab223739474c8dec7a72a1ff322503c4df96
2018-03-16 15:09:55 -04:00
Andreas Pehrson
1238d9515a Bug 1444541 - Don't stop recorder on pagehide during frameswap. r=smaug
MozReview-Commit-ID: AZec0yXM1FI

--HG--
extra : rebase_source : d96845f7422f6e57943bf90b1ef0f29df3e08099
2018-03-19 15:52:36 +01:00
Byron Campen [:bwc]
1f0d6d8a26 Bug 1447015: Re-enable test_peerConnection_transceivers on linux debug. r=jib
MozReview-Commit-ID: HNxZl9Avwhk

--HG--
extra : rebase_source : d97ff16136a8b7185135157df72d58dcf6da6db3
2018-03-19 10:07:45 -05:00
Matthew Gregan
3eacaf6b89 Bug 1445546 - Initialize COM on the MediaManager thread. r=padenot
MozReview-Commit-ID: 92FErxjmDE5

--HG--
extra : rebase_source : a1c3c5a1dd08a81fff64c85e7a953052803de64c
2018-03-20 10:31:40 +13:00
Paul Adenot
598ec91d70 Bug 1437366 - Disable the test on Android, all the others are, there are now ways this one can pass. r=pehrsons
MozReview-Commit-ID: 4aefhOoJ8sv

--HG--
extra : rebase_source : d0124ae9a3b6004b38036969a1c9ce79f5c2d978
2018-03-15 14:41:54 +01:00
Paul Adenot
18a3b28518 Bug 1437366 - Lower the sample rate so that the test don't underrun on Windows on try. r=pehrsons
MozReview-Commit-ID: JCCh4k6pifE

--HG--
extra : rebase_source : 5d7a87cfa8b074a2100f666decb2e604a1e05587
2018-03-15 14:39:57 +01:00
Paul Adenot
885ea0a27a Bug 1437366 - Test that sending and receiving audio when using a graph with a sample-rate that is not supported by the MediaPipeline code works. r=pehrsons
MozReview-Commit-ID: 4c5zgkYCX2T

--HG--
extra : rebase_source : 0541e36e980572e08426a715d56b7e2d7c2d152c
2018-03-05 14:53:09 +01:00
Paul Adenot
43aa0c346f Bug 1437366 - Add a way to force the sample-rate used for a MediaStreamGraph. r=pehrsons
MozReview-Commit-ID: 4ICQiNKbUpJ

--HG--
extra : rebase_source : 686278509673cdd3b2705a5b20217ede075a8996
2018-03-02 19:27:57 +01:00
Peter Van der Beken
f5754d679a Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 6: Mark some IDL interfaces as non-scriptable. r=bz.
--HG--
extra : rebase_source : 5911f91bd7a63cd3603494e087e3858bd0527500
2018-03-01 20:19:56 +01:00
Alex Chronopoulos
74a3a94cbd Bug 1387454 - Create preference to enable setting of sample rate in AudioContext. r=padenot
MozReview-Commit-ID: IyFkx8ooLLL

--HG--
extra : rebase_source : f298691c1b9f5f141520fe1ce978ff1ae9dd11a3
2018-04-05 19:26:20 +03:00
Alex Chronopoulos
95ac515bcf Bug 1387454 - Mochitests for interaction of non default rate with WebRTC. r=padenot
MozReview-Commit-ID: HIFLz7UTcLq

--HG--
extra : rebase_source : 73134e3839992d0baa7d284d4d687179fb820551
2018-04-03 20:02:15 +03:00
Alex Chronopoulos
62ba1d3d32 Bug 1387454 - Mochitests for non default rate on webaudio and media recorder. r=padenot
MozReview-Commit-ID: Bs7oI94WrPu

--HG--
extra : rebase_source : 65a53d3770f1e051dd386d50053d63c6c743a5f9
2018-04-03 20:02:15 +03:00
Alex Chronopoulos
2ef6a59abe Bug 1387454 - Create a MediaStreamGraph according to the given sample rate. r=padenot
MozReview-Commit-ID: 4YP8oWIVyjy

--HG--
extra : rebase_source : 54c83c0aa122fecc9e07868405e42d31b2172516
2018-04-03 20:02:15 +03:00
Alex Chronopoulos
5c2b9f6591 Bug 1387454 - Set sample rate in AudioContext constructor. r=padenot
MozReview-Commit-ID: 9uQLotrF86k

--HG--
extra : rebase_source : df35ed5401e24addb2374e3dd2921963e8fe7aa7
2018-04-03 20:02:15 +03:00
sotaro
2cc8bd0a21 Bug 1426199 - Relax ASSERT checks r=nical 2018-04-03 18:25:36 +09:00
Nils Ohlmeier [:drno]
2058100636 Bug 1394602: don't allow SSRC changes with Bundle. r=bwc
MozReview-Commit-ID: Kgb0lghAY7r

--HG--
extra : rebase_source : 26d44970231736c5cfefef4dcfc3b5afcb8b24ba
2017-12-01 15:54:57 -08:00
Boris Zbarsky
9e7585ff47 Bug 1446527 part 7. Remove the various NS_FORWARD_TO_EVENT bits. r=qdot
We no longer have multiple inheritance from nsIDOMEvent anywhere.

This looks like it saves 20KB of codesize or so.

MozReview-Commit-ID: qJtM7QNu9z
2018-03-26 14:53:03 -04:00
Nils Ohlmeier [:drno]
e2747ff63c Bug 1406529: added mochitest for extmap verification r=ng
MozReview-Commit-ID: QVn5MI0XdH

--HG--
rename : dom/media/tests/mochitest/test_peerConnection_basicAudioVideo.html => dom/media/tests/mochitest/test_peerConnection_basicAudioVideoVerifyExtmap.html
rename : dom/media/tests/mochitest/test_peerConnection_basicAudioVideo.html => dom/media/tests/mochitest/test_peerConnection_basicAudioVideoVerifyExtmapSendonly.html
extra : rebase_source : 866f93d306db933d988ea8ca476a625c9b3952d5
2018-03-05 22:07:05 -08:00
Daniel Holbert
edb2e41799 Bug 1447070: Give MediaKeySession.h the #include it needs to provide 'DecoderDoctorLifeLogger' type (to fix non-unified build error). r=gerald
MozReview-Commit-ID: An2FbvpI49I

--HG--
extra : rebase_source : 26a32a772cd2338e2124ae58342b64fb65ffbe49
2018-03-19 10:53:13 -07:00
Daniel Holbert
e4c1cd3677 Bug 1447091: Add #includes to fix non-unified bustage in dom/media. r=gerald
This fixes these two errors:
FileMediaResource.cpp:30:36: error: invalid use of incomplete type ‘class mozilla::AbstractThread’
   mCallback->AbstractMainThread()->Dispatch(

MediaTimer.cpp:50:3: error: ‘Unused’ was not declared in this scope
   Unused << rv;

MozReview-Commit-ID: WkPZc22dMF

--HG--
extra : rebase_source : 5704eb8bb36398be7aabaded9284b4f7263ef477
2018-03-19 11:48:38 -07:00
Dorel Luca
a04c12a681 Backed out changeset 231448afb53d (bug 1446505) for Mochitest failure on dom/media/webspeech/synth/test/test_bfcache.html. CLOSED TREE
--HG--
extra : amend_source : db6c502c4fe939ee072114a60636d3d1cbd96f1d
2018-03-17 01:30:37 +02:00
Eitan Isaacson
aa1affd1f8 Bug 1446505 - Don't pass topic when creating speech services. r=smaug 2018-03-16 12:15:00 +02:00
Eitan Isaacson
f765d0d585 Bug 1184142 - Support WebSpeech in GeckoView. r=snorp r=smaug
--HG--
extra : rebase_source : 81eb1ce2f67f70ee08908d69db54f8625df341cb
2018-03-16 12:08:00 +02:00
Sylvestre Ledru
8c732b1e60 Bug 1443080 - Now that we use static call, some var instances are not needed anymore r=Ehsan
MozReview-Commit-ID: AiuJIY8Gssl

--HG--
extra : rebase_source : 9bb9b7df30d502f8b3f5ffda719aea80109b07e9
2018-03-05 09:33:02 +01:00
Sylvestre Ledru
fa45a3c670 Bug 1443080 - Use the static call for static methods (not instance) r=Ehsan
MozReview-Commit-ID: JwHh4bzxuTR

--HG--
extra : rebase_source : 5f5e37517aa80c2e7b5933962178d761074886e7
2018-03-16 14:29:15 +01:00
Andreas Pehrson
32da610e23 Bug 1443803 - Protect against destroyed MediaStream in MediaEngineWebRTCMicrophoneSource. r=padenot
MozReview-Commit-ID: 3vyzS0DceKI

--HG--
extra : rebase_source : 127ff05f24c28c813af9cd3c90484fdedbf8faa2
2018-03-14 16:46:46 +01:00
Andreas Pehrson
85229c5bef Bug 1438134 - Resolve ApplyConstraints and end track on unexpected error. r=jib
MozReview-Commit-ID: 1uVHTCOwlQw

--HG--
extra : rebase_source : 62a77cacad9de70511fe73006a26da627f002d5c
2018-02-23 10:06:22 +01:00
Andreas Pehrson
1a2a215d37 Bug 1438134 - MozPromisify ApplyConstraints internals. r=jib
MozReview-Commit-ID: Gu9yOxFW1di

--HG--
extra : rebase_source : 419d1a85cb1d94512d7bcb122deedca68dc61b29
2018-02-23 10:05:42 +01:00
Andreas Pehrson
4c95dc3099 Bug 1438134 - Make the return value of MediaEngineSource::Reconfigure well defined. r=jib
MozReview-Commit-ID: DR3sdtdZkob

--HG--
extra : rebase_source : 35d60c11c8bd50547062af708cb009f7835b5893
2018-02-22 15:35:16 +01:00
Andreas Pehrson
f88baf18ca Bug 1438134 - Apply new capability only after stopping capture. r=jib
MozReview-Commit-ID: 6rtcyFpwxmP

--HG--
extra : rebase_source : 8f8b510f7a0369e2f07a61dbdfcaa9272674b0ad
2018-02-14 12:24:25 +01:00
Noemi Erli
da9500ef7d Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-03-15 19:44:05 +02:00
Noemi Erli
6e96a3f1e4 Merge autoland to mozilla-central. a=merge 2018-03-15 19:38:46 +02:00
Nicholas Nethercote
38dbedbf69 Bug 1445556 - Remove media.cubeb.sandbox from MediaPrefs. r=cpearce
Like the other media.cubeb.* prefs, it doesn't need to be a VarCache pref.

MozReview-Commit-ID: A2L8Tf3GAt

--HG--
extra : rebase_source : 86791123613c2f21e4a771c99cb079125495dec3
2018-03-14 16:53:47 +11:00
Nicholas Nethercote
91b9abd6e8 Bug 1445556 - Remove the media.playback.warnings-as-errors.stagefright-vs-rust pref. r=cpearce
It's unused.

MozReview-Commit-ID: 9SRWz8uj4wl

--HG--
extra : rebase_source : c36451b697959953cefb74ab7abfb46fdf0dcb5c
2018-03-14 16:11:44 +11:00
Nicholas Nethercote
112caaf2ed Bug 1445556 - Remove the media.rust.test_mode pref. r=cpearce
It's unused.

MozReview-Commit-ID: 4JDoKDxHqf6

--HG--
extra : rebase_source : 4d4d7578b18193f4969dfe8c39a3d0da5bd26e95
2018-03-14 15:58:46 +11:00
Adrian Wielgosik
27009d1b15 Bug 1445408 - Remove nsIDOMClientRect. r=bz
MozReview-Commit-ID: HP4E3cADa8i

--HG--
extra : rebase_source : caffa42f22f6c25d62d080aa6f65e5105ad263e9
2018-03-13 14:19:17 +01:00
Tom Ritter
3d9500b9f6 Bug 1440195 Add a random context seed for AudioContext and MediaStream r=baku
MozReview-Commit-ID: sHpVCgd8Fs

--HG--
extra : rebase_source : e1bbeab189b7a64c4ce051b74bc19a706b0fa1e8
2018-03-01 11:00:12 -06:00
Arthur Iakab
beb7d9aca5 Bug 1432025, disabling test_peerConnection_transceivers.html on Linux debug platform r=jmaher
--HG--
extra : rebase_source : bb870c0c3a4b0d0cdfbfc7aebc953b85d9d64322
2018-03-14 06:46:00 +02:00
Margareta Eliza Balazs
ca8cc145d5 Backed out 2 changesets (bug 1443942) for mda assertion failures in /build/build/src/dom/media/ChannelMediaResource.cpp
Backed out changeset e2f69088b1d7 (bug 1443942)
Backed out changeset 446bfe8412cb (bug 1443942)
2018-03-13 07:14:32 +02:00
Chris Pearce
2e59cf72c3 Bug 1443942 - Test for blocking midflight redirects in media elements. r=jya
Test that playback works if we don't block, doesn't if we do block, and does
if we do block and CORS is used.

MozReview-Commit-ID: 9PTZXLOdHIU

--HG--
extra : rebase_source : 9071542f9deb36063aa0de3386a75bc0ad111d20
2018-03-06 14:44:26 +13:00
Chris Pearce
0ebc1bfba0 Bug 1443942 - Block mid-flight redirects to cross origin destinations during media loads. r=jya
There's no compelling use case for mid-flight redirects, and Chrome
already blocks it, so there's little point in maintaining it.

Add a hidden pref to toggle blocking, so we can toggle it off during
testing to ensure that we're blocking a working mid-flight redirect.

MozReview-Commit-ID: EnGNmYFr8Uv

--HG--
extra : rebase_source : 3ed71273da24f8f0c8bc24ceede49afa7775650d
2018-03-06 09:55:03 +13:00
Chris Pearce
7101cc436e Bug 1434804 - Test that setting a muted-autoplay media to audible pauses media. r=kamidphish
MozReview-Commit-ID: 7cPgJMvUoja

--HG--
extra : rebase_source : 1d94df4e2fe75e1854207c52259c88813c24be50
2018-03-12 14:15:54 +13:00
Paul Adenot
2423ff6f48 Bug 1443224 - Throw correct exceptions when trying to set the channelCount, the channelCountMode and the channelInterpretation on a ChannelSplitterNode. r=baku
Spec: https://webaudio.github.io/web-audio-api/#dom-audionode-channelcount
Google has written a web platform test this is going to be merged soon (we
currently fail it).

MozReview-Commit-ID: 1RpASaIJrhm

--HG--
extra : rebase_source : 42dc8af6e677831d70e84ffc23e738d49549c59d
extra : amend_source : b4c30805157bd9bfd06afdfc8f439fe8de1b6aae
extra : source : e7b5b629fb30c4c8b8708979e926029f4e743420
2018-03-09 15:22:44 +01:00
Alex Gaynor
52b78d5be4 Bug 1444175 - Mark CamerasParent final; r=gcp
MozReview-Commit-ID: 2m1rCZxrUTq

--HG--
extra : rebase_source : 12fc72011a4dc7d39d3acea6ff0b33a78002113d
2018-03-08 14:54:58 -05:00