Discussion:
Bug#1068126: firefox: No video, no codecs found
Add Reply
Eduard Bloch
2024-03-31 11:10:01 UTC
Reply
Permalink
Package: firefox
Version: 124.0.1-1
Severity: important

Dear Maintainer,

* What led up to the situation?

Last week's dist-upgrade, including ffmpeg and libavcodec and related
libs.

* What exactly did you do (or not do) that was effective (or
ineffective)?
* What was the outcome of this action?

Observed that ALL video playback (with HTML5 tech) ceased to work,
either no video starting at all or some error report, depending on the
page. YT can generate a debug report, I could add it but there is not
much to see, the main info is:

"debug_error": "{\"errorCode\":\"html5.missingapi\",\"errorMessage\":\"This video format is not supported.\",\"SN\":\"HTML5_NO_AVAILABLE_FORMATS_FALLBACK\",\"yn\":\"\",\"wK\":\"nocodecs.1;a6s.0\"

- next experiment: try firefox-esr. Result: no problem there, videos do work as usual

- next experiment: download the upstream build and unpack it. Result: works as supposed. Also tried the 125-beta, also works there

- next experiments: reinstall ffmpeg, reinstall libavcodec60, also
tried libavcode-extra60, restarting firefox inbetween. Does not cure
the problem, remains broken.

- next experiment: did a strace on firefox, checking for libav... and
yes, it loads the latest versions of that libs. And remains broken.

- next experiment: double-checking the ArchLinux guide,
https://wiki.archlinux.org/title/Firefox section 4.2.3. Tried setting
and unsetting (to defaults) of those variables, and restarting. Did
not change a thing, remains broken. Also tried removing the profile
and starting with fresh settings, and even that remains broken (unlike
with upstream build or ESR version in the same situation).

- more digging: tried to observe error output. It prints something to
STDERR but that isn't helpful. vainfo... lines are the same as from
players like vlc, the other errors: no idea, maybe this is the
culprit?

- more digging: tried to generate debug output, like:
MOZ_LOG_FILE=/tmp/upstream_log MOZ_LOG="FFmpegVideo:5" ./firefox
That works just fine, those files (with ...child-number... extension)
are created and in the one for the playback window, I can find lots
of sensible codec log printing.

BUT: when I do the same with our version, that also creates log files
but they have zero size, nothing is even printed into them.

So, is this maybe some internal failure in our build, which aborts
the video engine loading early on without telling the user?

* What outcome did you expect instead?

A non-broken Debian package, at least SOME useful MOZ_LOG information in
case when someone tries to debug issues.

strace:

112061 openat(AT_FDCWD, "/usr/lib/firefox/libavcodec.so.60", O_RDONLY|O_CLOEXEC <unfinished ...>
112061 sendmsg(22, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/usr/lib/firefox/libavcodec.so.6"..., iov_len=34}, {iov_base=NULL, iov_len=0}], msg_iovlen=3, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[21]}], msg_controllen=24, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
112064 <... recvmsg resumed>{msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/usr/lib/firefox/libavcodec.so.6"..., iov_len=8194}], msg_iovlen=2, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[112]}], msg_controllen=24, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 50
112064 openat(AT_FDCWD, "/usr/lib/firefox/libavcodec.so.60", O_RDONLY|O_NOCTTY|O_CLOEXEC <unfinished ...>
112061 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libavcodec.so.60", O_RDONLY|O_CLOEXEC <unfinished ...>
112061 sendmsg(22, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/lib/x86_64-linux-gnu/libavcodec"..., iov_len=39}, {iov_base=NULL, iov_len=0}], msg_iovlen=3, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[21]}], msg_controllen=24, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
112064 <... recvmsg resumed>{msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/lib/x86_64-linux-gnu/libavcodec"..., iov_len=8194}], msg_iovlen=2, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[112]}], msg_controllen=24, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 55
112064 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libavcodec.so.60", O_RDONLY|O_NOCTTY|O_CLOEXEC <unfinished ...>
112061 openat(AT_FDCWD, "/usr/lib/firefox/libavutil.so.58", O_RDONLY|O_CLOEXEC <unfinished ...>
112061 sendmsg(22, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/usr/lib/firefox/libavutil.so.58"..., iov_len=33}, {iov_base=NULL, iov_len=0}], msg_iovlen=3, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[21]}], msg_controllen=24, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
112064 <... recvmsg resumed>{msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/usr/lib/firefox/libavutil.so.58"..., iov_len=8194}], msg_iovlen=2, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[116]}], msg_controllen=24, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 49
112064 openat(AT_FDCWD, "/usr/lib/firefox/libavutil.so.58", O_RDONLY|O_NOCTTY|O_CLOEXEC <unfinished ...>
112061 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libavutil.so.58", O_RDONLY|O_CLOEXEC <unfinished ...>
112061 sendmsg(22, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/lib/x86_64-linux-gnu/libavutil."..., iov_len=38}, {iov_base=NULL, iov_len=0}], msg_iovlen=3, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[21]}], msg_controllen=24, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
112064 <... recvmsg resumed>{msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\0\0\0\0\0\0\10\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="/lib/x86_64-linux-gnu/libavutil."..., iov_len=8194}], msg_iovlen=2, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[90]}], msg_controllen=24, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 54
112064 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libavutil.so.58", O_RDONLY|O_NOCTTY|O_CLOEXEC <unfinished ...>

STDERR:

Fresh profile, no changes:

[Child 95675, MediaDecoderStateMachine #1] WARNING: Decoder=7fe598245f00 state=DECODING_METADATA Decode metadata failed, shutting down decoder: file ./dom/media/MediaDecoderStateMachine.cpp:372
[Child 95675, MediaDecoderStateMachine #1] WARNING: Decoder=7fe598245f00 Decode error: NS_ERROR_DOM_MEDIA_METADATA_ERR (0x806e0006) - static mozilla::MP4Metadata::ResultAndByteBuffer mozilla::MP4Metadata::Metadata(mozilla::ByteStream*): Cannot parse metadata: file ./dom/media/MediaDecoderStateMachineBase.cpp:166
[Child 95675, MediaDecoderStateMachine #1] WARNING: Decoder=7fe5983e4000 state=DECODING_METADATA Decode metadata failed, shutting down decoder: file ./dom/media/MediaDecoderStateMachine.cpp:372
[Child 95675, MediaDecoderStateMachine #1] WARNING: Decoder=7fe5983e4000 Decode error: NS_ERROR_DOM_MEDIA_METADATA_ERR (0x806e0006) - static mozilla::MP4Metadata::ResultAndByteBuffer mozilla::MP4Metadata::Metadata(mozilla::ByteStream*): Cannot parse metadata: file ./dom/media/MediaDecoderStateMachineBase.cpp:166
[Child 95675, MediaDecoderStateMachine #1] WARNING: Decoder=7fe5983e3400 state=DECODING_METADATA Decode metadata failed, shutting down decoder: file ./dom/media/MediaDecoderStateMachine.cpp:372
[Child 95675, MediaDecoderStateMachine #1] WARNING: Decoder=7fe5983e3400 Decode error: NS_ERROR_DOM_MEDIA_METADATA_ERR (0x806e0006) - static mozilla::MP4Metadata::ResultAndByteBuffer mozilla::MP4Metadata::Metadata(mozilla::ByteStream*): Cannot parse metadata: file ./dom/media/MediaDecoderStateMachineBase.cpp:166
libva info: VA-API version 1.20.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva info: va_openDriver() returns 0


-- Package-specific info:


-- Addons package information

-- System Information:
Debian Release: trixie/sid
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.7.9-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_FIRMWARE_WORKAROUND
Locale: LANG=de_DE.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages firefox depends on:
ii debianutils 5.17
ii fontconfig 2.15.0-1.1
ii libasound2t64 1.2.11-1+b1
ii libatk1.0-0t64 2.52.0-1
ii libc6 2.37-15.1
ii libcairo-gobject2 1.18.0-3
ii libcairo2 1.18.0-3
ii libdbus-1-3 1.14.10-4+b1
ii libevent-2.1-7t64 2.1.12-stable-8.1+b1
ii libffi8 3.4.6-1
ii libfontconfig1 2.15.0-1.1
ii libfreetype6 2.13.2+dfsg-1+b2
ii libgcc-s1 14-20240315-1
ii libgdk-pixbuf-2.0-0 2.42.10+dfsg-3+b2
ii libglib2.0-0t64 2.78.4-6
ii libgtk-3-0t64 3.24.41-4
ii libnspr4 2:4.35-1.1+b1
ii libnss3 2:3.99-1
ii libpango-1.0-0 1.52.1+ds-1
ii libstdc++6 14-20240315-1
ii libvpx8 1.13.1-2
ii libx11-6 2:1.8.7-1
ii libx11-xcb1 2:1.8.7-1
ii libxcb-shm0 1.15-1
ii libxcb1 1.15-1
ii libxcomposite1 1:0.4.5-1
ii libxdamage1 1:1.1.6-1
ii libxext6 2:1.3.4-1+b1
ii libxfixes3 1:6.0.0-2
ii libxrandr2 2:1.5.4-1
ii procps 2:4.0.4-4
ii zlib1g 1:1.3.dfsg-3.1

Versions of packages firefox recommends:
ii libavcodec-extra60 [libavcodec60] 7:6.1.1-3

Versions of packages firefox suggests:
ii fonts-lmodern 2.005-1
ii fonts-stix [otf-stix] 1.1.1-5
ii libcanberra0t64 [libcanberra0] 0.30-12.2+b1
ii libgssapi-krb5-2 1.20.1-6+b1
pn pulseaudio <none>

-- no debconf information
Michael Evans
2024-06-03 04:20:01 UTC
Reply
Permalink
I had a very similar / the same? issue.

Please check Firefox's Bugzilla for more details / troubleshooting
steps if your issue is different:

https://bugzilla.mozilla.org/show_bug.cgi?id=1887735

(my) resolution steps:
about:config
CORRECT SETTING: media.rdd-process.enabled = true // Default

My final troubleshooting steps:
* A broken profile
* A newly created 'clean' test profile
(which worked, pointing me to a profile specific issue)
* MOZ_LOG="PlatformDecoderModule:5" firefox --profile 7lnvxapn.TestTemplate
Console output log
* about:support
Detailed summary including the missing RDD process breadcrumb.
Eduard Bloch
2024-06-23 06:40:01 UTC
Reply
Permalink
Post by Michael Evans
I had a very similar / the same? issue.
Please check Firefox's Bugzilla for more details / troubleshooting
https://bugzilla.mozilla.org/show_bug.cgi?id=1887735
about:config
CORRECT SETTING: media.rdd-process.enabled = true // Default
* A broken profile
* A newly created 'clean' test profile
(which worked, pointing me to a profile specific issue)
* MOZ_LOG="PlatformDecoderModule:5" firefox --profile 7lnvxapn.TestTemplate
Console output log
* about:support
Detailed summary including the missing RDD process breadcrumb.
Loading...