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•2 years ago
|
| Assignee | ||
Comment 1•2 years 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•2 years ago
|
||
(you might need to gunzip it before snap install)
| Assignee | ||
Comment 3•2 years ago
|
||
At least I can repro locally, that's good.
| Assignee | ||
Comment 4•2 years 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•2 years 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•2 years ago
|
||
| Assignee | ||
Updated•2 years ago
|
| Assignee | ||
Comment 7•2 years ago
|
||
I just for confirmation this is also hitting Nix package?
Comment 9•2 years ago
|
||
| bugherder | ||
| Assignee | ||
Comment 10•2 years 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•2 years 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•2 years 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•2 years ago
|
Comment 13•2 years 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•2 years ago
|
||
| bugherder uplift | ||
Comment 15•2 years ago
|
||
| bugherder uplift | ||
Updated•2 years ago
|
Updated•2 years ago
|
Comment 16•2 years ago
|
||
| bugherder uplift | ||
Updated•2 years ago
|
Updated•2 years ago
|
Comment 17•2 years 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•2 years 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•2 years 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•2 years 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•2 years 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•2 years 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•2 years ago
•
|
||
no pref means no patch (the one to disable audio)
| Assignee | ||
Comment 24•2 years 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
•