Commit graph

59 commits

Author SHA1 Message Date
Moonchild
c9b8a576da Issue #1656 - Remove more vim control lines.
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from dom. More to come.
2023-05-04 10:47:14 +08:00
u3shit
e59e8c3b2c Issue #2101 - Part 5: Add ColorRange support to video decoders 2023-02-27 12:10:57 +08:00
u3shit
3e62b1fc9f Issue #2118 - Part 2: Add support for Identity YUVColorSpace
https://hg.mozilla.org/mozilla-central/rev/be342c90755d11551623362f2058c0326f63bbb3
2023-02-27 11:08:35 +08:00
Moonchild
1644bf94f0 No issue - Accept also video/vp8 as MIME type 2023-02-08 16:57:28 +08:00
Moonchild
60e4e33442 Issue #80 - Re-unify most of DOM 2022-09-09 10:09:40 +08:00
Moonchild
5dfded811d Issue #80 - reinstated unified building for some large chunks of our code.
This should reduce compile complexity saving time and reducing linker stress.
2022-09-07 10:36:23 +08:00
trav90
5c61382dac Issue #457 - Silence some GCC compiler warnings in FFmpeg code 2022-05-22 06:47:01 +08:00
Moonchild
009fb3146f Issue #1820 - Part 8: Check bit depth in PDM::Supports. 2022-05-04 10:06:02 +08:00
Brian Smith
13fcc4a046 Issue #1829 - Revert "Issue #1751" 2022-05-04 09:40:24 +08:00
Moonchild
8d800b1cb0 Issue #21 - Remove Telemetry plumbing and fix build.
Note this won't give working applications. Requires FE changes and
additional js module changes (next part).
2022-04-28 10:25:48 +08:00
Moonchild
2f27335cc4 Issue #1751 -- Remove XP_DARWIN 2021-05-05 10:27:04 +08:00
Moonchild
348c6604be Issue #1053 - Remove MOZ_WIDGET_ANDROID and IDB_MOBILE 2021-03-12 08:59:50 +08:00
Moonchild
787b0a52a3 Issue #1053 - Part 3b: Remove AndroidSurfaceTexture and Android media decoder
interface.
2021-01-01 10:01:11 +08:00
Moonchild
0cd673d720 Issue #1656 - Part 6: Clean up the build files 2020-09-25 22:04:23 +08:00
Moonchild
8c395520d9 Issue #1656 - Part 1: Nuke most vim config lines in the tree.
Since these are just interpreted comments, there's 0 impact on actual code.
This removes all lines that match /* vim: set(.*)tw=80: */ with S&R -- there are
a few others scattered around which will be removed manually in a second part.
2020-09-25 22:04:12 +08:00
Moonchild
f5f9c8c597 Issue #1224 - Remove constant expressions from /dom
This excludes DOMProxy handlers in dom bindings because that's intertwined with
codegen and js that needs to be handled together.
2020-09-18 20:53:42 +08:00
Moonchild
b26dfcc543 Issue #80 - Re-land early dom/media de-unification with fixups.
For some reason these changes never got merged back to master
after reverting to work on a branch...
2020-06-06 07:21:21 +08:00
adeshkp
fb67c8b028 Issue #80 - Fix includes in dom/media/platfoms for Mac build 2020-05-02 08:27:39 +08:00
adeshkp
b788c64cea Issue #80 - Fix includes in dom/media/platforms for Mac build 2020-05-02 08:25:32 +08:00
Moonchild
527ad10c12 Issue #80 - De-unify dom/media part 1 (updated reland)
This de-unifies up to and including dom/media/platforms with the exception of
dom/media/platforms/wmf, because that one throws weird errors in the Win
SDK which don't have a clear cause (yet)
2020-05-02 08:23:45 +08:00
Moonchild
294a1da59b Revert "Issue #80 - De-unify dom/media part 1"
This reverts commit b5b62d841c733dcb62112f3158f1488e670671d6.
2020-05-02 08:23:42 +08:00
Moonchild
094d4730dd Issue #80 - De-unify dom/media part 1
This de-unifies up to and including dom/media/platforms with the exception of
dom/media/platforms/wmf, because that one throws weird errors in the Win
SDK which don't have a clear cause (yet)
2020-05-02 08:23:36 +08:00
wolfbeast
429f908af1 Issue #26 Part 2a: make more EME code conditional.
- Exclude missed MediaKey functions and CDMProxy code.
- Exclude EME APIs frm being built (webidl change)
- Fix tests in --disable-eme state
2020-02-07 07:59:01 +08:00
adeshkp
aea50f182f Telemetry: Remove stubs and related code 2019-02-16 00:24:04 +08:00
trav90
74ccd45360 [FFmpeg] Don't define AV_CODEC_ID_VPx with libavcodec 58 2019-02-16 00:23:11 +08:00
trav90
5949fc61dc [FFmpeg] Use new decode API with recent FFmpeg version.
In libavcodec 58 and later, the old avcodec_decode_video2 is broken and only return the first visible frame found after a VP9 super-frame.
2019-02-16 00:23:10 +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
8290899faf Remove MediaTelemetryConstants 2019-02-16 00:21:01 +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
ae5c83e90d Cleanup some comments in our media code. 2019-02-16 00:19:34 +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
76f1e6edca Update aom to slightly newer commit ID 2019-02-16 00:16:50 +08:00
trav90
1c8af26369 Add av1 to MediaSource.isTypeSupported
When av1 video playback is enabled, declare it as supported in the webm container in MediaSource.IsTypeSupported.

Also support special mime types of the form video/webm; codecs=vp9.experimental.<git-commit-id> so test sites can verify playback support of particular encodings while the av1 bitstream is under development.
2019-02-16 00:16:48 +08:00
trav90
dc0970c312 Remove aom_codec_stream_info_t sz field references
Upstream has removed the requirement to set this when initializing the stream_info struct.
2019-02-16 00:16:46 +08:00
trav90
b3aa26975c Make AOMDecoder actually build 2019-02-16 00:16:44 +08:00
trav90
349a05d4ad Add AOMDecoder to AgnosticDecoderModule 2019-02-16 00:16:35 +08:00
trav90
19743f8e4d Add AOMDecoder
Port the VPXDecoder interface to libaom which uses the same api with the names changed.
2019-02-16 00:16:33 +08:00
trav90
3b0820badb Implement keyframe and framesize VPXDecoder helpers
Encapsulate code from WebMDemuxer to query keyframe and frame resolution inside VPXDecoder, so we have a clean wrapper for all the libvpx functions we use.
2019-02-16 00:15:40 +08:00
trav90
0c88f36323 [vpx] Store VPXDecoder codec as an enum
Use the enum we already have here instead of converting to an int when we pass it around, giving us better type checking.
2019-02-16 00:15:37 +08:00
trav90
c582c801da [ffmpeg] Always allocate memory to pass extradata
Despite wording of the documentation to the contrary, we can't provide a static pointer to an immutable object.
2019-02-16 00:15:04 +08:00