Skip to content

Firefox: cannot play AV1 encoded media #7430

@SvetlinZarev

Description

@SvetlinZarev

This issue respects the following points:

  • This issue is not already reported on GitHub (I've searched it).
  • I agree to follow Jellyfin's Code of Conduct.
  • This report addresses only a single issue; If you encounter multiple issues, kindly create separate reports for each one.

Describe the bug

I've transcoded some of my media files to AV1. Now I'm no longer able to play them on Firefox (tested on Mac & Linux). The files play fine under Chrome or the Android app (using VLC).

The symptoms are exactly the same as in #5364 which was reported (and closed) more than a year ago.

The only line that appears in the logs is this:

[2025-12-15 17:23:54.013 +02:00] [INF] [25] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "svetlin". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True

No FFmpeg log file is created.

Reproduction Steps

  1. Use Firefox (tested with 145.0.1) on linux/mac (I don't use windows, so I do not know if the issue is reproducible there)
  2. Try to play the attached AV1 encoded media:

output.mkv.zip

Expected/Actual behaviour

Actual behaviour:

Nothing happens. The player tries to "load" for forever.

Expected behavior:

The media is played sucessfully.

Media info of the file

ffprobe version 8.0.1 Copyright (c) 2007-2025 the FFmpeg developers
  built with Apple clang version 17.0.0 (clang-1700.4.4.1)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/8.0.1 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
  libavutil      60.  8.100 / 60.  8.100
  libavcodec     62. 11.100 / 62. 11.100
  libavformat    62.  3.100 / 62.  3.100
  libavdevice    62.  1.100 / 62.  1.100
  libavfilter    11.  4.100 / 11.  4.100
  libswscale      9.  1.100 /  9.  1.100
  libswresample   6.  1.100 /  6.  1.100
Input #0, matroska,webm, from 'output.mkv':
  Metadata:
    title           : Star Trek - The Next Generation - S01E02 - The naked now
    ENCODER         : Lavf61.7.100
  Duration: 00:00:09.22, start: 0.000000, bitrate: 1034 kb/s
  Chapters:
    Chapter #0:0: start 0.007000, end 7.000000
      Metadata:
        title           : 00:00:00.000
  Stream #0:0: Video: av1 (libdav1d) (Main), yuv420p(tv, bt709), 1440x1080, SAR 1:1 DAR 4:3, 23.98 fps, 23.98 tbr, 1k tbn, start 0.007000 (default)
    Metadata:
      BPS             : 1360723
      NUMBER_OF_FRAMES: 65555
      NUMBER_OF_BYTES : 465059725
      _STATISTICS_WRITING_APP: mkvmerge v96.0 ('It's My Life') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2025-12-14 12:27:31
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      DURATION        : 00:00:07.013000000
  Stream #0:1(eng): Audio: opus, 48000 Hz, 5.1, fltp (default)
    Metadata:
      title           : Opus 5.1 @ 256kbs
      BPS             : 222277
      NUMBER_OF_FRAMES: 136723
      NUMBER_OF_BYTES : 75975909
      _STATISTICS_WRITING_APP: mkvmerge v96.0 ('It's My Life') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2025-12-14 12:27:31
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      DURATION        : 00:00:07.008000000
  Stream #0:2(eng): Subtitle: subrip (srt)
    Metadata:
      BPS             : 65
      NUMBER_OF_FRAMES: 635
      NUMBER_OF_BYTES : 22477
      _STATISTICS_WRITING_APP: mkvmerge v96.0 ('It's My Life') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2025-12-14 12:27:31
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      DURATION        : 00:00:09.223000000

Logs

[2025-12-15 17:23:54.013 +02:00] [INF] [25] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "svetlin". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True

FFmpeg logs

None. No ffmpeg logs are created

Server version

10.11.5

Web version

10.11.5

Build version

10.11.5

Platform

Linux, Mac

Browser

Firefox 145.0.1

Additional information

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingplaybackThis PR or issue mainly concerns playback

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions