Commit graph

1,056 commits

Author SHA1 Message Date
wolfbeast
52f04699c0 Use targetFrame->GetRectRelativeToSelf() as the initial intersection rect.
Tag #249.
2019-02-16 00:22:54 +08:00
wolfbeast
47f52cee1f Intersection ratio should be 1.0 for zero-area intersections.
Tag #249
2019-02-16 00:22:53 +08:00
wolfbeast
42d9f2ffb3 Revise lifetime management of IntersectionObservers.
Tag #249
2019-02-16 00:22:51 +08:00
trav90
129388e5e0 Remove AndroidMediaDecoder and friends
They are no longer supported and don't work with newer Android versions anyway.
2019-02-16 00:22:37 +08:00
wolfbeast
4aacec4782 Issue #910 part 3. Throw SyntaxError from Location::SetProtocol on URI parse failures. 2019-02-16 00:22:31 +08:00
wolfbeast
a6eab2d84e Issue #910 part 2. Strip ':' and anything following it from the string passed to the location.protocol setter. 2019-02-16 00:22:29 +08:00
wolfbeast
32eb361301 Issue #910 part 1. Don't navigate when location.protocol is set to anything other than http or https. 2019-02-16 00:22:28 +08:00
wolfbeast
a3386fbe38 Make HTMLOptionsCollection::mSelect into a strong reference.
The cycle collector makes weak references like this obsolete.
2019-02-16 00:22:20 +08:00
wolfbeast
27d88fc505 Do not report resource-timing subdocument loads triggered by that subdocument. 2019-02-16 00:22:18 +08:00
wolfbeast
391e7d295f Clear CanvasShutdownObserver::mCanvas when the canvas goes away.
This is fallout from Bug 1167235 - Use a fast method of double buffering for canvas.

It is possible for the CanvasRenderingContext2D to be destroyed while we're in the
middle of the call to nsObserverService::NotifyObservers() for shutdown.
This leaves the shutdown observer with a dangling pointer to the canvas, so this
patch explicitly clears the pointer when the context goes away.
2019-02-16 00:22:12 +08:00
wolfbeast
c2aa68fcd1 Root parameter dictionaries in AesTask::Init(). 2019-02-16 00:22:07 +08:00
wolfbeast
bb5e286644 Clear weak pointers in VTT shutdown observers. 2019-02-16 00:21:20 +08:00
trav90
9ddf94a187 Add missing #include 2019-02-16 00:21:17 +08:00
trav90
f7a2e36cbc Move the MP3 code to it's own directory 2019-02-16 00:21:16 +08:00
trav90
8cfddb6559 Remove separate MP3 name space
It is no longer needed.
2019-02-16 00:21:14 +08:00
trav90
eae0de2b3f Remove the old MP3FrameParser
All former users of the old MP3 parsing code are gone, so we can now just remove the parser itself as well.
2019-02-16 00:21:11 +08:00
trav90
0f8e1d95d0 Remove files and comments related to MP4Reader
The MP4Reader no longer exists in the tree.
2019-02-16 00:21:10 +08:00
trav90
ef2f6d6f28 Remove Rust files from media gtests 2019-02-16 00:21:08 +08:00
trav90
8290899faf Remove MediaTelemetryConstants 2019-02-16 00:21:01 +08:00
trav90
fa8d24c264 Remove DirectShowReader Part 4: Tests 2019-02-16 00:20:59 +08:00
trav90
f9d8a59a89 Remove DirectShowReader Part 3: Directories 2019-02-16 00:20:58 +08:00
trav90
f457d25da7 Remove DirectShowReader Part 2: Build system 2019-02-16 00:20:56 +08:00
trav90
93510088fb Remove DirectShowReader Part 1: Conditional code 2019-02-16 00:20:54 +08:00
wolfbeast
7cc01b1884 Remove VR Hardware input support (gamepad type)
This resolves #881
2019-02-16 00:20:29 +08:00
wolfbeast
9b1124ccbd Remove VR hardware support.
This resolves #881
2019-02-16 00:20:27 +08:00
trav90
f75592fd13 Remove OMX_PLATFORM_GONK 2019-02-16 00:20:25 +08:00
trav90
e99eefeb84 Remove remaining MOZ_GONK_MEDIACODEC code 2019-02-16 00:20:24 +08:00
trav90
33038b14f2 Add AV1 support to MP4Decoder. 2019-02-16 00:19:39 +08:00
trav90
ae5c83e90d Cleanup some comments in our media code. 2019-02-16 00:19:34 +08:00
wolfbeast
b32338ed19 Tell the cycle collector about nsScriptLoadRequest::mElement.
Not doing this can cause a leak because there is a cycle between the load request and the script element.
2019-02-16 00:19:31 +08:00
wolfbeast
6e25ae612a Fix build bustage.
Tag #871
2019-02-16 00:19:29 +08:00
wolfbeast
a30b6ee962 Split the content viewer marking function in CCUncollectable out,
so a document-based marking function can be used separately.

Tag #871
2019-02-16 00:19:25 +08:00
wolfbeast
b7a342f120 Ensure user input suppression works correctly even after document.open. 2019-02-16 00:18:43 +08:00
wolfbeast
429b2125de Apply CheckedInt to infoLength for preventing it from overflowing in the future.
CheckedInt propagates the mIsValid in each add operation so that it avoids needing a bunch of code
for the overflow check in each add operation. Additionally, it avoids mismatching parameters
between the computing result and the additional overflow check.

This patch uses CheckedInt to take advantage of those implicit features of it.
2019-02-16 00:18:39 +08:00
wolfbeast
930cc1db3b Fix a longstanding IndexedDB correctness issue.
Standards Compliance fix, port of Bug 1492737
2019-02-16 00:18:35 +08:00
trav90
1269f82d33 Revert "Add support for AV1 in MP4"
This commit was incomplete. Will re-land AV1 in MP4 support properly at a future date.

This reverts commit 29f718ef78f1a25ca904c6438b59ffc8e365a750.
2019-02-16 00:17:57 +08:00
trav90
de6b3a930f Ensure we correctly parse the finalized codec string for av1 2019-02-16 00:17:56 +08:00
trav90
1b0277eca5 Add support for AV1 in MP4 2019-02-16 00:17:54 +08:00
trav90
8dd06e64c3 Use larger stack for media decoder threads
This increases the thread size for the platform decoder threads (to prevent stack overflows, particularly when decoding av1), while leaving the others at their default values.
2019-02-16 00:17:53 +08:00
trav90
ad02b504a6 Downsample av1 images unconditionally
Adding partial support for 10/12-bit video images seems to have broken the native pixel-stride support we were using to pass 8-bit AV1 frame data formatted in 16-bit pixel values, resulting in vertical green lines.

Revert to the earlier behavior of always downsampling to 8 bit data. This is slower, but at least displays correctly.
2019-02-16 00:17:51 +08:00
trav90
cbacc81f82 Fix canPlayType/isTypeSupported for AV1 content 2019-02-16 00:17:50 +08:00
trav90
6676331d30 Put AV1 codec behind a pref
Disabled by default.
2019-02-16 00:17:48 +08:00
trav90
b66027c8c0 Updates to AOMDecoder for aom v1.0.0
This reflects the API changes to the aom_codec_decode function and the removal of I440. It also sets allow_lowbitdepth to give proper support for 8 bit video, and removes the git version from the mime type.
2019-02-16 00:17:35 +08:00
trav90
48f6d2e034 Update aom to v1.0.0
Update aom to commit id d14c5bb4f336ef1842046089849dee4a301fbbf0.
2019-02-16 00:17:30 +08:00
trav90
992c6637e3 Update aom to commit id e87fb2378f01103d5d6e477a4ef6892dc714e614 2019-02-16 00:17:15 +08:00
trav90
ff19a9f251 [aom] Don't resample 8-bit images
The libaom av1 decoder will return 16 bit per channel aom_image_t structures with only 8 significant bits.

Detect this case and use the mSkip fields of PlanarYCbCrImage to handle the extra data instead of allocating and performing an extra copy to obtain the necessary 8 bit representation.
2019-02-16 00:17:11 +08:00
trav90
0b85248bea [aom] Resample high bit depth frames
The libaom av1 decoder can return high bit depth frame data now. Handle those frames by downsampling them to 8 bits per channel so they can be passed to our normal playback pipeline.
2019-02-16 00:17:10 +08:00
trav90
2ab8fcbfd1 Update aom to commit id f5bdeac22930ff4c6b219be49c843db35970b918 2019-02-16 00:17:05 +08:00
trav90
ecc55bc615 Add missing includes to FFmpegLibWrapper 2019-02-16 00:16:54 +08:00
trav90
d7a7fe75a0 Fix typo (build bustage) 2019-02-16 00:16:52 +08:00