Commit Graph

546 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
d02e297b2d Bug 1624819 - Remove TaskCategory and other quantum dom remnants. r=smaug,media-playback-reviewers,credential-management-reviewers,cookie-reviewers,places-reviewers,win-reviewers,valentin,mhowell,sgalich,alwu
Sorry this is not a particularly easy patch to review. But it should be
mostly straight-forward.

I kept Document::Dispatch mostly for convenience, but could be
cleaned-up too / changed by SchedulerGroup::Dispatch. Similarly maybe
that can just be NS_DispatchToMainThread if we add an NS_IsMainThread
check there or something (to preserve shutdown semantics).

Differential Revision: https://phabricator.services.mozilla.com/D190450
2023-10-10 08:51:12 +00:00
Emilio Cobos Álvarez
eb5453c631 Bug 1856300 - Remove some unnecessary casts in HTMLMediaElement. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D189750
2023-10-02 15:17:44 +00:00
Natalia Csoregi
9a4e48d386 Backed out 3 changesets (bug 1693250) for causing high frequency failures on test_recreate_audio_sink_clock_time.html. CLOSED TREE
Backed out changeset 7a2f57793a3b (bug 1693250)
Backed out changeset f869096a85f2 (bug 1693250)
Backed out changeset 54b9fbe63086 (bug 1693250)
2023-07-18 06:01:09 +03:00
alwu
2c2afcf279 Bug 1693250 - part3 : add another test to check whether audio sink incorrectly inserts silence. r=media-playback-reviewers,webidl,saschanaz,padenot
Differential Revision: https://phabricator.services.mozilla.com/D183435
2023-07-17 19:54:24 +00:00
Tom Schuster
f33200529a Bug 1834737 - Make RFPTarget parameter of Document::ShouldResistFingerprinting non-optional. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D178925
2023-05-31 09:46:54 +00:00
Karl Tomlinson
f92ec4bbae Bug 1832479 use types for decoder owner Invalidate() boolean parameters r=pehrsons
for safety and readability.

Differential Revision: https://phabricator.services.mozilla.com/D177983
2023-05-16 21:30:29 +00:00
Karl Tomlinson
8c187a8ad2 Bug 1832479 remove declaration of missing UpdateInitialMediaSize() r=pehrsons
Definition was removed in
https://hg.mozilla.org/integration/mozilla-inbound/rev/e13f35cff432#l1.308

Differential Revision: https://phabricator.services.mozilla.com/D177982
2023-05-16 21:30:29 +00:00
Emilio Cobos Álvarez
ded1458b5b Bug 1829189 - Make OnAttrSetButNotChanged and AfterSetAttr infallible. r=smaug
Same rg + sed shenanigans as the first patch.

There were two that could fail, both due to OOM:

 * HTMLInputElement::AfterSetAttr: If we fail (only in the type=range
   case) we end up with an old value without it being clamped by
   min/max/step.

 * HTMLBodyElement::AfterSetAttr: If we fail we won't peek up the
   DocShell's frame margins and styling could be incorrect.

That seems better than having to deal with broken states after we've
already set the attribute.

Depends on D176069

Differential Revision: https://phabricator.services.mozilla.com/D176070
2023-04-21 08:56:27 +00:00
Andreas Pehrson
04981fbabb Bug 1807215 - Make the intrinsic size arg in MediaDecoderOwner::Invalidate a const ref. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D174083
2023-04-03 08:36:39 +00:00
Tom Schuster
46046879fd Bug 1813584 - Use fine grained RFP for CubebUtils::PreferredSampleRate. r=media-playback-reviewers,alwu
Differential Revision: https://phabricator.services.mozilla.com/D168523
2023-02-15 10:55:31 +00:00
alwu
203938c43b Bug 1803834 - part2 : pause/resume non-audible autoplay video when its visibility changes. r=media-playback-reviewers,padenot
https://html.spec.whatwg.org/multipage/media.html#ready-states:eligible-for-autoplay-2

Depends on D163741

Differential Revision: https://phabricator.services.mozilla.com/D163742
2022-12-06 18:21:39 +00:00
alwu
d124f21b3c Bug 1803834 - part1 : rename mAutoplaying to 'mCanAutoplayFlag'. r=media-playback-reviewers,padenot
Our current attribute `mAutoplaying` seems be equal to the `can
autoplay flag` defined in the spec, so rename it to the spec name.

https://html.spec.whatwg.org/multipage/media.html#can-autoplay-flag

Differential Revision: https://phabricator.services.mozilla.com/D163741
2022-12-06 18:21:39 +00:00
Chun-Min Chang
b919002a70 Bug 1774300 - Implement VideoFrame Constructor for HTMLVideoElement r=padenot
This patch makes it possible to construct a VideoFrame from a
HTMLVideoElement. The necessity of the paired arguments in this
constructor is verified in the WebCodecs' wpt.

Depends on D150019

Differential Revision: https://phabricator.services.mozilla.com/D150525
2022-10-06 00:37:24 +00:00
Butkovits Atila
e0ff314b94 Backed out 19 changesets (bug 1793497, bug 1774300) for causing lint failure. CLOSED TREE
Backed out changeset f5460317d244 (bug 1793497)
Backed out changeset 5af8771526a1 (bug 1774300)
Backed out changeset 3ab7aead37b5 (bug 1774300)
Backed out changeset 5f837d7e621b (bug 1774300)
Backed out changeset 56bfa6480cb5 (bug 1774300)
Backed out changeset db37fffc8519 (bug 1774300)
Backed out changeset d5d263cedbc9 (bug 1774300)
Backed out changeset 52fdd5a613f4 (bug 1774300)
Backed out changeset 6ce76e0d6fd2 (bug 1774300)
Backed out changeset c5f67f22597e (bug 1774300)
Backed out changeset 4a7dca31703e (bug 1774300)
Backed out changeset e56596b91a86 (bug 1774300)
Backed out changeset 825ae6e7be9b (bug 1774300)
Backed out changeset 19f750d86a73 (bug 1774300)
Backed out changeset 50995e55c546 (bug 1774300)
Backed out changeset 33b150b4c911 (bug 1774300)
Backed out changeset 2bc06d0e8808 (bug 1774300)
Backed out changeset ba9bc5c631b0 (bug 1774300)
Backed out changeset 4a145bdd6b86 (bug 1774300)
2022-10-05 01:05:57 +03:00
Chun-Min Chang
8f56e0f140 Bug 1774300 - Implement VideoFrame Constructor for HTMLVideoElement r=padenot
This patch makes it possible to construct a VideoFrame from a
HTMLVideoElement. The necessity of the paired arguments in this
constructor is verified in the WebCodecs' wpt.

Depends on D150019

Differential Revision: https://phabricator.services.mozilla.com/D150525
2022-10-04 21:38:28 +00:00
Brad Werth
0f8e1e30b5 Bug 1787561 Part 2: Expose HDR telemetry to HTMLMediaElement as a Chrome property. r=alwu,emilio
This is necessary scaffolding for testing of the HDR telemetry in a way
that involves the RDD process. This is important for matching real-world
conditions.

Depends on D155902

Differential Revision: https://phabricator.services.mozilla.com/D156245
2022-09-08 18:02:04 +00:00
criss
e11e938522 Backed out 3 changesets (bug 1787561) for causing mochitest failures on browser_tab_visibility_and_play_time.js
Backed out changeset a41ab0c5f32f (bug 1787561)
Backed out changeset c1375f03dc75 (bug 1787561)
Backed out changeset afef5857aea6 (bug 1787561)
2022-09-07 23:49:05 +03:00
Brad Werth
f83b217e6c Bug 1787561 Part 2: Expose HDR telemetry to HTMLMediaElement as a Chrome property. r=alwu,emilio
This is necessary scaffolding for testing of the HDR telemetry in a way
that involves the RDD process. This is important for matching real-world
conditions.

Depends on D155902

Differential Revision: https://phabricator.services.mozilla.com/D156245
2022-09-07 18:31:46 +00:00
Chun-Min Chang
5bd99e209b Bug 1776796 - Rename MarkAsContentSource r=media-playback-reviewers,alwu
`HTMLMediaElement::MarkAsContentSource` [1] was added in Bug 1299718 to
monitor the visibility / invisibility of various usage of video element.
However, that telemetry had been removed in Bug 1356046.
`MarkAsContentSource` is only used for logging currently. It's better to
reword its name and related comments to bring the code in line with the
current status.

[1] https://searchfox.org/mozilla-central/rev/5b2d2863bd315f232a3f769f76e0eb16cdca7cb0/dom/html/HTMLMediaElement.h#799

Differential Revision: https://phabricator.services.mozilla.com/D150434
2022-07-27 00:20:45 +00:00
Kagami Sascha Rosylight
ca80f84bf8 Bug 1767996 - Apply readability-make-member-function-const on dom/html r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D145627
2022-05-13 05:35:25 +00:00
Kagami Sascha Rosylight
ece003e2d3 Bug 1768189 - Part 13: Apply modernize-concat-nested-namespaces to dom/html/HTMLIFrameElement.h ... r=andi
Depends on D145746

Differential Revision: https://phabricator.services.mozilla.com/D145747
2022-05-09 20:41:08 +00:00
az
92ad30e0bc Bug 1652950 - Unprefix mozPreservesPitch, update corresponding tests r=emilio,saschanaz
Differential Revision: https://phabricator.services.mozilla.com/D143237
2022-04-20 18:43:47 +00:00
Paul Adenot
fa471bffbf Bug 1678373 - Add a way to measure the duration a media was muted. r=alwu,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125088
2021-10-12 09:03:53 +00:00
Paul Adenot
378544d209 Bug 1678373 - Expose audio telemetry counters as chrome-only attributes like their video counterparts. r=alwu,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125084
2021-10-12 09:03:52 +00:00
Paul Adenot
f847331ea9 Bug 1678373 - Rename chrome-only telemetry counter attributes to distinguish audio and video. r=alwu,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125083
2021-10-12 09:03:52 +00:00
Alexandru Michis
49a60b8e39 Backed out 24 changesets (bug 1678373) for causing bc failures in browser_tab_visibility_and_play_time.js
CLOSED TREE

Backed out changeset 1886dbd81c46 (bug 1678373)
Backed out changeset aeff26b5b1ae (bug 1678373)
Backed out changeset 261d8e4483d4 (bug 1678373)
Backed out changeset 89cb5ae23632 (bug 1678373)
Backed out changeset b1eaedd192ab (bug 1678373)
Backed out changeset 58a3eb19c818 (bug 1678373)
Backed out changeset b027ec789cbe (bug 1678373)
Backed out changeset fd596a84feb9 (bug 1678373)
Backed out changeset 1f0ed0392ae2 (bug 1678373)
Backed out changeset ac2be1df81af (bug 1678373)
Backed out changeset bf6d47905d78 (bug 1678373)
Backed out changeset a9fe4f310962 (bug 1678373)
Backed out changeset a15316058968 (bug 1678373)
Backed out changeset 217cdfd46120 (bug 1678373)
Backed out changeset c33c8411129b (bug 1678373)
Backed out changeset 3b854fc36abf (bug 1678373)
Backed out changeset e47c82bcb49a (bug 1678373)
Backed out changeset 2a77cbba1c9f (bug 1678373)
Backed out changeset 65206afede36 (bug 1678373)
Backed out changeset bd04930155f4 (bug 1678373)
Backed out changeset 034e8edd4619 (bug 1678373)
Backed out changeset ed1e56487c4c (bug 1678373)
Backed out changeset b7673d20c521 (bug 1678373)
Backed out changeset 5a93251e2fea (bug 1678373)
2021-10-07 20:36:47 +03:00
Paul Adenot
027d553f00 Bug 1678373 - Add a way to measure the duration a media was muted. r=alwu,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125088
2021-10-07 15:44:54 +00:00
Paul Adenot
d4c37b39d0 Bug 1678373 - Expose audio telemetry counters as chrome-only attributes like their video counterparts. r=alwu,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125084
2021-10-07 15:44:53 +00:00
Paul Adenot
03580ad5e7 Bug 1678373 - Rename chrome-only telemetry counter attributes to distinguish audio and video. r=alwu,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125083
2021-10-07 15:44:53 +00:00
alwu
5cfc0d13d0 Bug 1723799 - part2 : add test. r=padenot,webidl,smaug
Differential Revision: https://phabricator.services.mozilla.com/D121681
2021-08-09 19:30:12 +00:00
Kagami Sascha Rosylight
e826dafcc0 Bug 1723050 - Part 14: Replace typedef by using in dom/html/ r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D121312
2021-08-09 13:37:27 +00:00
Paul Adenot
40411a55fc Bug 1703603 - Handle HTMLMediaElement playing MediaSource when using mozCaptureStreamUntilEnded. r=bryce
This means keeping a reference to the MediaSource object in the MediaStream to
ensure it's being kept alive for the duration of the playback.

Differential Revision: https://phabricator.services.mozilla.com/D112607
2021-06-02 14:20:40 +00:00
Brendan Early
5725b6792c Bug 1120222 - Set AudioSink name to title of MediaElement's parent r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D93462
2021-04-19 15:17:26 +00:00
Peter Van der Beken
2ed1ecb468 Bug 1696158 - Move CanSavePresentation to the parent process. Keep track of various flags for deciding whether to put a page in BFCache. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D110231
2021-04-19 14:50:54 +00:00
smolnar
b8fdbb0df4 Backed out 8 changesets (bug 1696158) for causing multiple failures. CLOSED TREE
Backed out changeset 09c598c8fd29 (bug 1696158)
Backed out changeset 02f956c26901 (bug 1696158)
Backed out changeset b61a3a324cce (bug 1696158)
Backed out changeset 95810ed7f1e5 (bug 1696158)
Backed out changeset 4f93a7b61496 (bug 1696158)
Backed out changeset c80c55b56f2a (bug 1696158)
Backed out changeset 11627c409882 (bug 1696158)
Backed out changeset b98b4316a510 (bug 1696158)
2021-04-19 17:04:08 +03:00
Peter Van der Beken
03373996de Bug 1696158 - Move CanSavePresentation to the parent process. Keep track of various flags for deciding whether to put a page in BFCache. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D110231
2021-04-19 12:39:19 +00:00
Bryce Seager van Dyk
eaed32625a Bug 1696034 - Restore code to record VIDEO_ENCRYPTED_PLAY_TIME_MS probe. r=alwu
This code didn't make it across when we reworked how we record our playback
probes. However, it's a useful checksum to compare against our Widevine
playtime + as a general data point. This patch restores the code to record the
probe.

Differential Revision: https://phabricator.services.mozilla.com/D107072
2021-04-05 14:32:14 +00:00
alwu
3d6d1b5570 Bug 1691578 - part7 : add test case for audio sink failed start-up. r=bryce,emilio
Differential Revision: https://phabricator.services.mozilla.com/D104571
2021-02-25 18:07:07 +00:00
alwu
f04288172c Bug 1691578 - part6 : add test cases to test reporting decode error. r=bryce,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D104570
2021-02-25 18:07:06 +00:00
alwu
bcfc99dc97 Bug 1691578 - part5 : add test cases to test the ability of reporting error for not supported media type. r=bryce,emilio
Add test cases for `DecoderDoctorDiagnostics::StoreFormatDiagnostics()`, which is used when checking the ability of whether the decoder is supported for certain type.

Differential Revision: https://phabricator.services.mozilla.com/D104475
2021-02-25 18:07:06 +00:00
Cosmin Sabou
26e6b5110c Backed out 8 changesets (bug 1691578) for bc failures on browser_decoderDoctor.js. CLOSED TREE
Backed out changeset c535dd429ada (bug 1691578)
Backed out changeset 518eadda7826 (bug 1691578)
Backed out changeset c181e29b13f2 (bug 1691578)
Backed out changeset 23f6dcc3ceb5 (bug 1691578)
Backed out changeset bfd3e4878545 (bug 1691578)
Backed out changeset 214ab3a2f00b (bug 1691578)
Backed out changeset 71a17ff3322c (bug 1691578)
Backed out changeset 6aa662e8d06e (bug 1691578)
2021-02-25 21:08:07 +02:00
alwu
fb225347cc Bug 1691578 - part7 : add test case for audio sink failed start-up. r=bryce,emilio
Differential Revision: https://phabricator.services.mozilla.com/D104571
2021-02-25 18:07:07 +00:00
alwu
50ec8cc8d2 Bug 1691578 - part6 : add test cases to test reporting decode error. r=bryce,webidl,emilio
Differential Revision: https://phabricator.services.mozilla.com/D104570
2021-02-25 18:07:06 +00:00
alwu
234b5d9181 Bug 1691578 - part5 : add test cases to test the ability of reporting error for not supported media type. r=bryce,emilio
Add test cases for `DecoderDoctorDiagnostics::StoreFormatDiagnostics()`, which is used when checking the ability of whether the decoder is supported for certain type.

Differential Revision: https://phabricator.services.mozilla.com/D104475
2021-02-25 18:07:06 +00:00
alwu
d82660eae4 Bug 1686696 - part3 : enforce to only dispatch periodic timeupdate once within 250ms. r=bryce
Inplemented an event runner for `timeupdate` only, which would ensure that for periodic `timeupdate` it should be only dispatched once within 250ms.

Differential Revision: https://phabricator.services.mozilla.com/D102675
2021-02-11 20:19:24 +00:00
alwu
92ce5fd24c Bug 1686696 - part1.5 : remove 'nsNotifyAboutPlayingRunner' from a friend class in media element. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D104114
2021-02-11 20:19:24 +00:00
alwu
8de222ed59 Bug 1686696 - part1 : store pending event runner instead of saving event name. r=bryce,mccr8
In this patch, we move all event runners to a separate file and implement an event blocker.

In order to allow us to do a special check for `timeupdate` event, we have to know that event is periodic or mandatory.

We have to save extra information for `timeupdate, however, current design for storing pending events is not flexible enough to achieve that.

Therefore, instead of storing the event name, we store the event runners which can all have different implementation and know when they should dispatch their own event.

Differential Revision: https://phabricator.services.mozilla.com/D102673
2021-02-11 20:19:23 +00:00
Bogdan Tara
f3776aebd8 Backed out 6 changesets (bug 1686696) for 1587248.html crashtest failures CLOSED TREE
Backed out changeset 690c6a094f8a (bug 1686696)
Backed out changeset 7f9d487945c3 (bug 1686696)
Backed out changeset 40358a758624 (bug 1686696)
Backed out changeset 36c696166033 (bug 1686696)
Backed out changeset ab149e8fc0d5 (bug 1686696)
Backed out changeset 8fce79f9bd65 (bug 1686696)
2021-02-11 06:29:47 +02:00
alwu
ac4e041d07 Bug 1686696 - part3 : enforce to only dispatch periodic timeupdate once within 250ms. r=bryce
Inplemented an event runner for `timeupdate` only, which would ensure that for periodic `timeupdate` it should be only dispatched once within 250ms.

Differential Revision: https://phabricator.services.mozilla.com/D102675
2021-02-11 03:45:30 +00:00
alwu
2e20d3f5c4 Bug 1686696 - part1.5 : remove 'nsNotifyAboutPlayingRunner' from a friend class in media element. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D104114
2021-02-11 03:45:29 +00:00