Use libvorbis though ffmpeg
Categories
(Core :: Audio/Video: Playback, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox118 | --- | fixed |
People
(Reporter: padenot, Assigned: padenot)
References
Details
Attachments
(20 files, 1 obsolete file)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
Bug 1823953 - Create libgkcodecs, move libvorbis and libogg to it. r?#firefox-build-system-reviewers
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 | |
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 | |
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 |
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Comment 1•2 years ago
|
||
A regular update to current tip prior to adding a new decoder.
Assignee | ||
Comment 2•2 years ago
|
||
Depends on D173456
Assignee | ||
Comment 3•2 years ago
|
||
We need to use libvorbis both from libavcodec and libxul during a transition
period while re-architecturing things, so this moves libvorbis and libogg (a
dependency) to a separate shared lib, linked when needed.
Depends on D173457
Assignee | ||
Comment 4•2 years ago
|
||
We'll control this via a pref in a subsequent patch. The ffvpx decoder module
always takes precedence to other decoders (such as the Agnostic Decoder Module
in this case) so we don't have anything else to do here.
Depends on D173458
Assignee | ||
Comment 5•2 years ago
|
||
It seems to work without, but the officiel ffmpeg command line utility and the
example for their internal library all do this.
This also splits the big DoDecode function into three sub-function for clarity,
as it was a bit hard with the #if statements.
Depends on D173459
Assignee | ||
Comment 6•2 years ago
|
||
Depends on D173460
Assignee | ||
Comment 7•2 years ago
|
||
It's needed for some codecs but not all of them, and the decoder that wraps
libvorbis is one of them. This is necessary when a codec capabilities flag
include: AV_CODEC_CAP_CHANNEL_CONF
. All channels are decoded as they are
present in the file, and the sample rate is also necessary when this flag is
present.
Depends on D173461
Comment 8•2 years ago
|
||
The severity field is not set for this bug.
:jimm, could you have a look please?
For more information, please visit auto_nag documentation.
Assignee | ||
Comment 9•2 years ago
|
||
Depends on D173461
Assignee | ||
Comment 10•2 years ago
|
||
Updated•2 years ago
|
Assignee | ||
Comment 11•2 years ago
|
||
Depends on D181526
Assignee | ||
Comment 12•2 years ago
|
||
Depends on D181378
Assignee | ||
Comment 13•2 years ago
|
||
When inverting the phase of the new results, and summing with the previous
expected result, the resulting audio has an RMS level of -83.6091dB. This is
because ffmpeg converts to int16_t after decoding, when using libvorbis.
Depends on D181529
Assignee | ||
Comment 14•2 years ago
|
||
Depends on D182189
Assignee | ||
Comment 15•2 years ago
|
||
Assignee | ||
Comment 16•2 years ago
|
||
This simplifies the code. ffmpeg docs say that sending should always work, so
we're asserting in this case.
Depends on D182576
Assignee | ||
Comment 17•2 years ago
|
||
Depends on D182790
Assignee | ||
Comment 18•2 years ago
|
||
Depends on D182791
Assignee | ||
Comment 19•2 years ago
|
||
It's possible to submit a packet and to have no audio returned, only when
decoding vorbis:
https://searchfox.org/mozilla-central/source/dom/media/platforms/agnostic/VorbisDecoder.cpp#184
This causes a mismatch between trimmers and packets, and cause the wrong packet
to be trimmed. Instead, when decoding vorbis, we insert a phony packet when we
encounter this situation, so that we can keep the rest of the system intact and
uniform.
Depends on D182792
Assignee | ||
Comment 20•2 years ago
|
||
Depends on D182794
Assignee | ||
Comment 21•2 years ago
|
||
Assignee | ||
Comment 22•2 years ago
|
||
Depends on D183279
![]() |
||
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Comment 23•2 years ago
|
||
Updated•2 years ago
|
Comment 25•2 years ago
|
||
Comment 26•2 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/471e9f82be05
https://hg.mozilla.org/mozilla-central/rev/48505a6dd45f
https://hg.mozilla.org/mozilla-central/rev/255a8d31fa30
https://hg.mozilla.org/mozilla-central/rev/b141c6be7a35
https://hg.mozilla.org/mozilla-central/rev/cd7210964527
https://hg.mozilla.org/mozilla-central/rev/6ef95f6cfc70
https://hg.mozilla.org/mozilla-central/rev/b5de80ded096
https://hg.mozilla.org/mozilla-central/rev/16cf423c977a
https://hg.mozilla.org/mozilla-central/rev/21b00fe97569
https://hg.mozilla.org/mozilla-central/rev/a66d57a2c942
https://hg.mozilla.org/mozilla-central/rev/5afe59a72ef9
https://hg.mozilla.org/mozilla-central/rev/b63dba46cf98
https://hg.mozilla.org/mozilla-central/rev/caa4ca652e45
https://hg.mozilla.org/mozilla-central/rev/e2eff775781c
https://hg.mozilla.org/mozilla-central/rev/420290afa063
https://hg.mozilla.org/mozilla-central/rev/38f6e4c814d2
https://hg.mozilla.org/mozilla-central/rev/c74ebfe0f673
https://hg.mozilla.org/mozilla-central/rev/3bef9bfef223
https://hg.mozilla.org/mozilla-central/rev/7804dfbaadea
https://hg.mozilla.org/mozilla-central/rev/edecf3c12704
https://hg.mozilla.org/mozilla-central/rev/062a5e572906
Assignee | ||
Updated•1 years ago
|
Comment hidden (Intermittent Failures Robot) |
Description
•