Fails to find audio decoder for mp4a with media.allow-audio-non-utility = false
Categories
(Core :: Audio/Video, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr102 | --- | unaffected |
firefox-esr115 | --- | verified |
firefox114 | --- | unaffected |
firefox115 | --- | verified |
firefox116 | --- | verified |
People
(Reporter: ke5trel, Assigned: gerard-majax)
References
(Blocks 1 open bug, Regression)
Details
(Keywords: regression)
Attachments
(1 file)
48 bytes,
text/x-phabricator-request
|
dmeehan
:
approval-mozilla-release+
|
Details | Review |
STR:
- Run the latest snap Nightly 116.0a1 (2818) on Ubuntu 23.04.
- Play a youtube video with h264ify.
Video fails with terminal error:
[Child 36581, MediaDecoderStateMachine #1] WARNING: Decoder=7f066ef1a500 Decode error: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005) -
Error no decoder found for audio/mp4a-latm: file /root/parts/firefox/build/dom/media/MediaDecoderStateMachineBase.cpp:164
Works after changing media.allow-audio-non-utility = true
. The tarball Nightly is not affected.
Regressed by Bug 1835804.
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 1•1 year ago
|
||
Cool. It makes no sense because Snap was one of the things I looked for on telemetry for those decoding problem and yielded no result.
Can you install this https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/bGBJ5AsqRnWprmTn47rTFQ/runs/0/artifacts/public/build/firefox_116.0a1_amd64.snap ? It's a not-yet-finished but nightly build with debug enabled of the snap, and running this with MOZ_LOG=timestamp,PlatformDecoderModule:5
env set should help diagnose
Assignee | ||
Comment 2•1 year ago
|
||
(you might need to gunzip
it before snap install
)
Assignee | ||
Comment 3•1 year ago
|
||
At least I can repro locally, that's good.
Assignee | ||
Comment 4•1 year ago
|
||
Can you confirm you also see:
2023-06-22 11:43:15.281193 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: H264/AAC codecs unsupported without [
2023-06-22 11:43:15.281206 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: libavcodec.so.60
2023-06-22 11:43:15.281211 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.59
2023-06-22 11:43:15.281213 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.58
2023-06-22 11:43:15.281214 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec-ffmpeg.so.58
2023-06-22 11:43:15.281216 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec-ffmpeg.so.57
2023-06-22 11:43:15.281217 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec-ffmpeg.so.56
2023-06-22 11:43:15.281218 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.57
2023-06-22 11:43:15.281219 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.56
2023-06-22 11:43:15.281221 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.55
2023-06-22 11:43:15.281222 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.54
2023-06-22 11:43:15.281223 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.53
2023-06-22 11:43:15.281225 UTC - [Utility 12114: Main Thread]: D/PlatformDecoderModule FFMPEG: ]
Assignee | ||
Comment 5•1 year ago
|
||
Could the sandbox need changes?
user@ubuntu-2204-snap:~$ find /snap/firefox/current/usr/lib/x86_64-linux-gnu/|grep libavcodec
/snap/firefox/current/usr/lib/x86_64-linux-gnu/libavcodec.so.58
/snap/firefox/current/usr/lib/x86_64-linux-gnu/libavcodec.so.58.54.100
user@ubuntu-2204-snap:~$ grep libavcodec.so.58 snap_aac_sandbox_logging.log
Sandbox: Failed errno -2 op open flags 02000000 path /snap/firefox/x9/usr/lib/firefox/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/var/lib/snapd/lib/gl/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /var/lib/snapd/lib/gl/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/var/lib/snapd/lib/gl32/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /var/lib/snapd/lib/gl32/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/var/lib/snapd/void/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /var/lib/snapd/void/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/usr/lib/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/usr/lib/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/usr/lib/x86_64-linux-gnu/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/usr/lib/x86_64-linux-gnu/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/gnome-platform/lib/x86_64-linux-gnu/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/gnome-platform/lib/x86_64-linux-gnu/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/gnome-platform/usr/lib/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/gnome-platform/usr/lib/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/gnome-platform/lib/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/gnome-platform/lib/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/dri/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/dri/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/libunity/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/libunity/libavcodec.so.58
Sandbox: SandboxBroker: denied op=open rflags=2000000 perms=1 path=/snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/pulseaudio/libavcodec.so.58 for pid=14355
Sandbox: Failed errno -13 op open flags 02000000 path /snap/firefox/x9/gnome-platform/usr/lib/x86_64-linux-gnu/pulseaudio/libavcodec.so.58
Sandbox: Failed errno -2 op open flags 02000000 path /lib/x86_64-linux-gnu/libavcodec.so.58
Sandbox: Failed errno -2 op open flags 02000000 path /lib/x86_64-linux-gnu/libavcodec.so.58
Sandbox: Failed errno -2 op open flags 02000000 path /usr/lib/x86_64-linux-gnu/libavcodec.so.58
Sandbox: Failed errno -2 op open flags 02000000 path /lib/libavcodec.so.58
Sandbox: Failed errno -2 op open flags 02000000 path /usr/lib/libavcodec.so.58
2023-06-22 11:59:39.134460 UTC - [Utility 14355: Main Thread]: D/PlatformDecoderModule FFMPEG: , libavcodec.so.58
Assignee | ||
Comment 6•1 year ago
|
||
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 7•1 year ago
|
||
I just for confirmation this is also hitting Nix package?
Comment 9•1 year ago
|
||
bugherder |
Assignee | ||
Comment 10•1 year ago
|
||
Comment on attachment 9340496 [details]
Bug 1839852 - Allow access to LD_LIBRARY_PATH from Utility process r?jld!
Beta/Release Uplift Approval Request
- User impact if declined: Audio decoding done on the wrong process for AAC codec
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): We just add sandboxing rules to allow a bit more of loading, the code already exists we just dont use it on this process for now
- String changes made/needed: N/A
- Is Android affected?: No
Comment 11•1 year ago
|
||
Comment on attachment 9340496 [details]
Bug 1839852 - Allow access to LD_LIBRARY_PATH from Utility process r?jld!
115 is now in RC, moving uplift request to release
:gerard-majax, I don't understand why this is needed in Fx115 when the regressor only landed in Fx116?
Assignee | ||
Comment 12•1 year ago
|
||
the "regressor" is just a patch doing its work on nightly, but the underlying issue it exposed is on beta and release as well, and telemetry shows we have 99% of our audio decoding of AAC being done on the wrong process for Snap package at least
Assignee | ||
Updated•1 year ago
|
Comment 13•1 year ago
|
||
Comment on attachment 9340496 [details]
Bug 1839852 - Allow access to LD_LIBRARY_PATH from Utility process r?jld!
Approved for 115.0 RC2
Comment 14•1 year ago
|
||
bugherder uplift |
Comment 15•1 year ago
|
||
bugherder uplift |
Updated•1 year ago
|
Updated•1 year ago
|
Comment 16•1 year ago
|
||
bugherder uplift |
Updated•1 year ago
|
Updated•1 year ago
|
Comment 17•1 year ago
|
||
This bug fix cannot be verified on our end due to multiple blockers: a proper "affected" Nightly build could not be found in Treeherder (to manually install and reproduce), the one that we found here would not reproduce it and/or the installation of the h264ify addon would not interfere with plying YT videos.
This being said we cannot verify this fix.
Assignee | ||
Comment 18•1 year ago
|
||
(In reply to Daniel Bodea [:danibodea] from comment #17)
This bug fix cannot be verified on our end due to multiple blockers: a proper "affected" Nightly build could not be found in Treeherder (to manually install and reproduce), the one that we found here would not reproduce it and/or the installation of the h264ify addon would not interfere with plying YT videos.
This being said we cannot verify this fix.
You need to install previous version from the edge channel on Snap or treeherder.
The linked build above already contains the fix.
Comment 19•1 year ago
|
||
With the build from comment 1, I have managed to reproduce the issue: if the user would install the h264ify addon, youtube videos would not play anymore, unless the pref media.allow-audio-non-utility was flipped to TRUE.
I have verified this fix in the latest Nightly and Beta SNAP builds. The ESR115 build is not yet available with SNAP, but I managed to install it manually from here but, unfortunately, the latest available snap build in treeherder does not contain the fix. If there is a snap build containing the fix that I can use to manually install and verify, please provide it here for us.
The ESR channel remains to be verified. Thank you for the help, Alexandre LISSY :gerard-majax!
Assignee | ||
Comment 20•1 year ago
|
||
(In reply to Daniel Bodea [:danibodea] from comment #19)
With the build from comment 1, I have managed to reproduce the issue: if the user would install the h264ify addon, youtube videos would not play anymore, unless the pref media.allow-audio-non-utility was flipped to TRUE.
I have verified this fix in the latest Nightly and Beta SNAP builds. The ESR115 build is not yet available with SNAP, but I managed to install it manually from here but, unfortunately, the latest available snap build in treeherder does not contain the fix. If there is a snap build containing the fix that I can use to manually install and verify, please provide it here for us.
Your link is after the uplift, so unless I'm misreading something, it should contain the fix. When you say "the latest available snap build in treeherder does not contain the fix" do you mean you assume it does not, or you verified it still repro the issue ?
Because this push https://treeherder.mozilla.org/jobs?repo=mozilla-esr115&searchStr=snap&revision=24630fd6a7af697c27f1394308eeb3b91a6618b0 contains the present fix and you are linking the very next push: https://treeherder.mozilla.org/jobs?repo=mozilla-esr115&searchStr=snap&revision=4a8666238269bba3dcccc95812d13d2c8abd9252
So the fix should be there.
Please note on non nightly channels, the pref default value is different, so we block audio decoding only on nightly (for now): https://searchfox.org/mozilla-central/rev/3b707c8fd7e978eebf24279ee51ccf07895cfbcb/modules/libpref/init/StaticPrefList.yaml#10113,10115 ; on those channels you might want to set it to false
before checking with h264ify
And if the pref is not there, it means the fix is missing.
Comment 21•1 year ago
|
||
You are correct, the changeset I linked in comment 19 technically does contain the fix as it is 1-2 days after pushing the fix, however, after manually installing it on Ubuntu22, the sound in Youtube videos would NOT be heard, with either having h264ify addon installed or not AND the pref mentioned was NOT found in about:config. This would suggest that there is another exposed issue on this build OR that the installation I performed is incorrect (command: snap install --dangerous target.snap).
Fortunately, the latest ESR v115.0esr (build ID: 20230702062700) is now available for installation (with the command: sudo snap install firefox --channel=esr/candidate ) and the fix could be verified correctly.
Comment 22•1 year ago
•
|
||
Could you provide us with the correct commands to manually install a snap build to re-verify fix on ESR channel? Thanks.
Assignee | ||
Comment 23•1 year ago
•
|
||
no pref means no patch (the one to disable audio)
Assignee | ||
Comment 24•1 year ago
|
||
(In reply to Daniel Bodea [:danibodea] from comment #22)
Could you provide us with the correct commands to manually install a snap build to re-verify fix on ESR channel? Thanks.
this should be the right one, but manually installing can sometime behave badly. If it's working well from upstream ESR then we are fine.
Description
•