Support more codecs in Matroska (Opus, Vorbis, VP8, VP9, AV1, and HEVC)
Categories
(Core :: Audio/Video: Playback, task, P1)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox145 | --- | fixed |
People
(Reporter: alwu, Assigned: alwu)
References
(Blocks 1 open bug)
Details
Attachments
(7 files)
|
85.13 KB,
image/png
|
Details | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review |
Currently we already have AVC and AAC support in Matroska, I'm going to add more codecs in this bug.
In this bug, we will add support for Opus, Vorbis, VP8, VP9, AV1, and HEVC in Matroska. FLAC and MP3 are not included yet, as they require additional plumbing and have very limited usage.
Comment 1•8 months ago
|
||
This seems especially important since existing code seems to expect supported codecs to work across all (supported) containers: https://github.com/jellyfin/jellyfin-web/blob/6c3a3a7205e543bca2eece03984a8fc93d9afd89/src/scripts/browserDeviceProfile.js#L614
In this case Jellyfin specifically would assume every codec that works in mp4 also works in matroska. Missing support could therefore break playback in this case at least (not sure about other apps, this is the only peoductive mime checking code I know, but it might also affect other apps). So it might be good to have it done until it ships in non-nightly.
| Assignee | ||
Comment 2•8 months ago
|
||
Per our initial Glean probe, we will start adding HEVC, VPX, Opus, AV1 and Vorbis support in this bug.
| Assignee | ||
Comment 3•8 months ago
|
||
| Assignee | ||
Comment 4•8 months ago
|
||
Also replace a new test file output_hevc.mkv because the old
one is gbrp which we don't support. The new one is yuv420.
| Assignee | ||
Comment 5•8 months ago
|
||
Also change the vp9 test file from grba to yuv420.
| Assignee | ||
Comment 6•8 months ago
|
||
| Assignee | ||
Comment 7•8 months ago
|
||
Also changed the test file from gbrp to yuv420.
| Assignee | ||
Comment 8•8 months ago
|
||
Per [1], x-matroska is a legacy MIME type, and the updated MIME type removes
the x prefix. We should support both.
Weβve also added new test cases to verify that using these MIME types with
HTMLMediaElement.canPlayType() returns the correct result.
Comment 10•8 months ago
|
||
Comment 11•8 months ago
|
||
| Assignee | ||
Updated•8 months ago
|
Comment 12•8 months ago
|
||
Comment 13•8 months ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/b166d3bd8d53
https://hg.mozilla.org/mozilla-central/rev/e65f4b93eeab
https://hg.mozilla.org/mozilla-central/rev/fa804997096d
https://hg.mozilla.org/mozilla-central/rev/a524c8ade3d6
https://hg.mozilla.org/mozilla-central/rev/b9cc4b3c7471
https://hg.mozilla.org/mozilla-central/rev/cd184ca12a25
| Assignee | ||
Updated•8 months ago
|
Description
•