From e89e0cf6bbe414a2f9ce2f2f05f7d38bf898c283 Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 21 Jul 2026 13:30:27 +0800 Subject: [PATCH 1/9] clean up ancient info about codec support and clearly define legends --- docs/general/clients/codec-support.md | 58 ++++++++++++--------------- 1 file changed, 25 insertions(+), 33 deletions(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index be3e5404..951b6f3a 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -5,7 +5,7 @@ title: Codec Support # [Codec Tables](https://en.wikipedia.org/wiki/List_of_codecs "Wikipedia's list of all codecs") -The goal is to Direct Play all media. This means the container, video, audio and subtitles are all compatible with the client. If the media is incompatible for any reason, Jellyfin will use FFmpeg to [convert the media](http://howto-pages.org/ffmpeg/) to a format that the client can process. Direct Stream will occur if the audio, container or subtitles happen to not be supported. If the video codec is unsupported, this will result in video transcoding. Subtitles can be tricky because they can cause Direct Stream (subtitles are remuxed) or video transcoding (burning in subtitles) to occur. This is the most intensive CPU component of transcoding. Decoding is less intensive than encoding. +The goal is to Direct Play all media. This means the container, video, audio and subtitles are all compatible with the client. If the media is incompatible for any reason, Jellyfin will [convert the media](http://howto-pages.org/ffmpeg/) to a format that the client can process. Direct Stream will occur if the audio, container or subtitles happen to not be supported. If the video codec is unsupported, this will result in video transcoding. Subtitles can be tricky because they can cause Direct Stream (subtitles are remuxed) or video transcoding (burning in subtitles) to occur. This is the most intensive CPU component of transcoding. Decoding is less intensive than encoding. ## [Video Compatibility](https://en.wikipedia.org/wiki/Comparison_of_video_container_formats "Wikipedia's video codec tables") @@ -13,46 +13,38 @@ The goal is to Direct Play all media. This means the container, video, audio and [Test your browser's compatibility for any codec profile.](https://cconcolato.github.io/media-mime-support/) -| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | [Roku](https://developer.roku.com/docs/specs/media/streaming-specifications.md) | Kodi | Jellyfin Media Player | -| ------------------------------------------------------------------------------------------------------------------ | -------------- | -------------- | --------------- | --------------- | -------------- | -------------- | -------------- | --------------- | ------------------------------------------------------------------------------- | ---- | --------------------- | -| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | -| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | -| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶12 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | -| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶8 | ✅7 | ✅15 | 🔶1 | 🔶2 | ✅5 | 🔶1 | ✅6 | 🔶9 | ✅ | ✅ | -| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶8 | ✅7 | ✅15 | 🔶1 | 🔶2 | 🔶5 | 🔶1 | ✅6 | 🔶9 | ✅ | ✅ | -| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅10 | ✅3 | 🔶3 | ❌ | ✅13 | ✅ | ✅ | ✅ | -| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶11 | ✅ | 🔶4 | ❌ | 🔶14 | ✅ | ✅ | ✅ | +| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | [Roku](https://developer.roku.com/docs/specs/media/streaming-specifications.md) | Kodi | Jellyfin Media Player | +| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | -------------- | -------------- | -------------- | -------------- | --- | -------------- | ------------------------------------------------------------------------------- | ---- | --------------------- | +| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | +| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | +| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶6 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | +| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️7 | ✅ | ✅ | ✅ | +| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶5 | ✅ | 🔶2 | ❌ | 🔶8 | ✅ | ✅ | ✅ | -1HEVC is only supported in MP4, M4V, and MOV containers. +Legends: ❌=Not Supported, 🔶=Support depends on device and/or settings, ⚠️=Software Decode Only, ✅=Fully supported (Hardware support with software fallback)
+This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support.
+For this table, Remuxing due to container compatibility is considered fully supported.
+ +1Android playback is currently broken. Client reports that HEVC is supported and attempts to Direct Stream.
-2Android playback is currently broken. Client reports that HEVC is supported and attempts to Direct Stream. +2Needs at least Android TV 10.
-3May be (partially) dependent on Hardware support (can be compensated with CPU decoding on Android). Most new Android phones in the higher price range and many "4K" Android TV devices have VP9 hardware decoding support. Refer to you manufacturer for supported codecs. +3HEVC decoding is only supported on Windows with the HEVC Video Extension from the Microsoft store.
-4Needs at least Android TV 10. +4HEVC decoding is only supported on 4K devices.
-5As of version 0.12, HEVC is enabled on all devices running Android 5.0+, but early generations of the Amazon Fire may not work yet. 10Bit may be supported depending on your device. Before Client 0.12, HEVC support was enabled on specific devices. +5AV1 decoding is only available on devices with A17 or M3 series chips or newer and requires at least Safari 17.
-6HEVC decoding is supported on Apple devices with the A8X chip or newer and at least iOS 14. +6Need to be manually enabled in Settings > Playback > Enable H.264 High 10 Profile. Playback on Apple Silicon Macs with macOS version < 14 and Intel Macs with all macOS versions may result in blank frames if this is enabled.
-7HEVC decoding is only supported on Windows 10 with the HEVC Video Extension from the Microsoft store. +7VP9 is only available with Swiftfin (VLCKit) player.
-8Chromium 107 does support HEVC decoding when HEVC hardware decoding is available. +8AV1 is enabled by default for Swiftfin (VLCKit). AV1 is disabled by default but can be enabled for Native (AVKit) using Custom Device Profiles. Enabling AV1 may result in a poor experience for SOCs prior to A17.
-9HEVC decoding is only supported on 4K devices. -
-10VP9 decoding on Safari requires at least Safari 14. -
-11AV1 decoding is only available on devices with A17 or M3 series chips or newer and requires at least Safari 17. -
-12Need to be manually enabled in Settings > Playback > Enable H.264 High 10 Profile. Playback on Apple Silicon Macs with macOS version < 14 and Intel Macs with all macOS versions may result in blank frames if this is enabled. -
-13VP9 is only available with Swiftfin (VLCKit) player. -
-14AV1 is enabled by default for Swiftfin (VLCKit). AV1 is disabled by default but can be enabled for Native (AVKit) using Custom Device Profiles. Enabling AV1 may result in a poor experience for SOCs prior to A17. -
-15Requires Firefox 134+ for Windows, 136+ for macOS, and 137+ for Linux. On Windows 11 22H2+ and Windows 10 1507-1709, you can play H.265 (HEVC) video natively. Windows 10 1803+ and Windows 11 21H2 need the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support. +9On Windows 11 22H2+ and Windows 10 1507-1709, you can play H.265 (HEVC) video natively. Windows 10 1803+ and Windows 11 21H2 need the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support. [Format Cheatsheet:](https://en.wikipedia.org/wiki/MPEG-4#MPEG-4_Parts) @@ -198,7 +190,7 @@ If the container is unsupported, this will result in remuxing. The video and aud | Container | Chrome | Edge | Firefox | Safari | Android | Android TV | Kodi | Roku | | :-------------------------------------------------------------------: | :----: | :--: | :-----: | :----: | :-----: | :--------: | :--: | :--: | | [MP4](https://en.wikipedia.org/wiki/MPEG-4_Part_14)1 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| [MKV](https://en.wikipedia.org/wiki/Matroska)2, 3, 8, 9 | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | +| [MKV](https://en.wikipedia.org/wiki/Matroska)2, 3, 8, 9 | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | | [WebM](https://en.wikipedia.org/wiki/WebM)3, 5, 6 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | [TS](https://en.wikipedia.org/wiki/MPEG_transport_stream)4 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | [OGG](https://en.wikipedia.org/wiki/Ogg)5, 7 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | From b7a6917233f81320ba3baac9085f882b8fd9fc5e Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 21 Jul 2026 14:59:03 +0800 Subject: [PATCH 2/9] add firefox note about broken H264 on some linux distros --- docs/general/clients/codec-support.md | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index 951b6f3a..18ba1e9f 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -13,16 +13,16 @@ The goal is to Direct Play all media. This means the container, video, audio and [Test your browser's compatibility for any codec profile.](https://cconcolato.github.io/media-mime-support/) -| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | [Roku](https://developer.roku.com/docs/specs/media/streaming-specifications.md) | Kodi | Jellyfin Media Player | -| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | -------------- | -------------- | -------------- | -------------- | --- | -------------- | ------------------------------------------------------------------------------- | ---- | --------------------- | -| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | -| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | -| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶6 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | -| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️7 | ✅ | ✅ | ✅ | -| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶5 | ✅ | 🔶2 | ❌ | 🔶8 | ✅ | ✅ | ✅ | +| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | [Roku](https://developer.roku.com/docs/specs/media/streaming-specifications.md) | Kodi | Jellyfin Media Player | +| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | --------------- | -------------- | -------------- | -------------- | --- | -------------- | ------------------------------------------------------------------------------- | ---- | --------------------- | +| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | +| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | +| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | 🔶10 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶6 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | +| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️7 | ✅ | ✅ | ✅ | +| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶5 | ✅ | 🔶2 | ❌ | 🔶8 | ✅ | ✅ | ✅ | Legends: ❌=Not Supported, 🔶=Support depends on device and/or settings, ⚠️=Software Decode Only, ✅=Fully supported (Hardware support with software fallback)
This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support.
@@ -45,6 +45,8 @@ For this table, Remuxing due to container compatibility is considered fully supp 8AV1 is enabled by default for Swiftfin (VLCKit). AV1 is disabled by default but can be enabled for Native (AVKit) using Custom Device Profiles. Enabling AV1 may result in a poor experience for SOCs prior to A17.
9On Windows 11 22H2+ and Windows 10 1507-1709, you can play H.265 (HEVC) video natively. Windows 10 1803+ and Windows 11 21H2 need the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support. +
+10Some Linux distributions have improperly packaged Firefox builds, which results in H264 not being available. [Format Cheatsheet:](https://en.wikipedia.org/wiki/MPEG-4#MPEG-4_Parts) From 62a47f4f7555d9a6b38d420a677b161b3ca76ccd Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 21 Jul 2026 15:03:54 +0800 Subject: [PATCH 3/9] More wording cleanup --- docs/general/clients/codec-support.md | 34 +++++++++++++-------------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index 18ba1e9f..c9d2596e 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -13,16 +13,16 @@ The goal is to Direct Play all media. This means the container, video, audio and [Test your browser's compatibility for any codec profile.](https://cconcolato.github.io/media-mime-support/) -| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | [Roku](https://developer.roku.com/docs/specs/media/streaming-specifications.md) | Kodi | Jellyfin Media Player | -| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | --------------- | -------------- | -------------- | -------------- | --- | -------------- | ------------------------------------------------------------------------------- | ---- | --------------------- | -| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | -| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | -| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | 🔶10 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶6 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | -| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶9 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️7 | ✅ | ✅ | ✅ | -| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶5 | ✅ | 🔶2 | ❌ | 🔶8 | ✅ | ✅ | ✅ | +| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | [Roku](https://developer.roku.com/docs/specs/media/streaming-specifications.md) | Kodi | Jellyfin Media Player | +| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | -------------- | -------------- | -------------- | -------------- | --- | -------------- | ------------------------------------------------------------------------------- | ---- | --------------------- | +| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | +| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | +| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | 🔶9 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶5 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | +| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️6 | ✅ | ✅ | ✅ | +| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶 | ✅ | 🔶2 | ❌ | 🔶7 | ✅ | ✅ | ✅ | Legends: ❌=Not Supported, 🔶=Support depends on device and/or settings, ⚠️=Software Decode Only, ✅=Fully supported (Hardware support with software fallback)
This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support.
@@ -32,21 +32,19 @@ For this table, Remuxing due to container compatibility is considered fully supp
2Needs at least Android TV 10.
-3HEVC decoding is only supported on Windows with the HEVC Video Extension from the Microsoft store. +3Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7).
4HEVC decoding is only supported on 4K devices.
-5AV1 decoding is only available on devices with A17 or M3 series chips or newer and requires at least Safari 17. +5Needs to be manually enabled in Settings > Playback > Enable H.264 High 10 Profile. Requires macOS >= 14 and Apple Silicon.
-6Need to be manually enabled in Settings > Playback > Enable H.264 High 10 Profile. Playback on Apple Silicon Macs with macOS version < 14 and Intel Macs with all macOS versions may result in blank frames if this is enabled. +6VP9 is only available with Swiftfin (VLCKit) player.
-7VP9 is only available with Swiftfin (VLCKit) player. +7AV1 is enabled by default for Swiftfin (VLCKit). AV1 is disabled by default for Native (AVKit). Enabling AV1 may result in a poor experience for older devices.
-8AV1 is enabled by default for Swiftfin (VLCKit). AV1 is disabled by default but can be enabled for Native (AVKit) using Custom Device Profiles. Enabling AV1 may result in a poor experience for SOCs prior to A17. +8Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support.
-9On Windows 11 22H2+ and Windows 10 1507-1709, you can play H.265 (HEVC) video natively. Windows 10 1803+ and Windows 11 21H2 need the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support. -
-10Some Linux distributions have improperly packaged Firefox builds, which results in H264 not being available. +9Some Linux distributions have improperly packaged Firefox builds, which results in H264 not being available. [Format Cheatsheet:](https://en.wikipedia.org/wiki/MPEG-4#MPEG-4_Parts) From bf76b2f31835023b3a8bdf278af53fd8b44de4f9 Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 21 Jul 2026 15:04:11 +0800 Subject: [PATCH 4/9] Remove Roku Link --- docs/general/clients/codec-support.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index c9d2596e..935ae1e3 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -13,16 +13,16 @@ The goal is to Direct Play all media. This means the container, video, audio and [Test your browser's compatibility for any codec profile.](https://cconcolato.github.io/media-mime-support/) -| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | [Roku](https://developer.roku.com/docs/specs/media/streaming-specifications.md) | Kodi | Jellyfin Media Player | -| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | -------------- | -------------- | -------------- | -------------- | --- | -------------- | ------------------------------------------------------------------------------- | ---- | --------------------- | -| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | -| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | -| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | 🔶9 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶5 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | -| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️6 | ✅ | ✅ | ✅ | -| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶 | ✅ | 🔶2 | ❌ | 🔶7 | ✅ | ✅ | ✅ | +| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | Roku | Kodi | Jellyfin Media Player | +| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | -------------- | -------------- | -------------- | -------------- | --- | -------------- | -------------- | ---- | --------------------- | +| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | +| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | +| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | 🔶9 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶5 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | +| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | +| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️6 | ✅ | ✅ | ✅ | +| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶 | ✅ | 🔶2 | ❌ | 🔶7 | ✅ | ✅ | ✅ | Legends: ❌=Not Supported, 🔶=Support depends on device and/or settings, ⚠️=Software Decode Only, ✅=Fully supported (Hardware support with software fallback)
This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support.
From d2fe51118f732ad49250c53d42c9546b613a3ef2 Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 28 Jul 2026 14:18:20 +0800 Subject: [PATCH 5/9] Remove outdated info about Android --- docs/general/clients/codec-support.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index 935ae1e3..ec41fa2a 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -28,8 +28,6 @@ Legends: ❌=Not Supported, 🔶=Support depends on device and/or settings, ⚠ This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support.
For this table, Remuxing due to container compatibility is considered fully supported.
-1Android playback is currently broken. Client reports that HEVC is supported and attempts to Direct Stream. -
2Needs at least Android TV 10.
3Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). From fe37b2a33b300adfe199f60ebbb938f82c83f6f2 Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 28 Jul 2026 14:21:08 +0800 Subject: [PATCH 6/9] Reword firefox H264 note --- docs/general/clients/codec-support.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index ec41fa2a..6b2d02f0 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -42,7 +42,7 @@ For this table, Remuxing due to container compatibility is considered fully supp
8Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support.
-9Some Linux distributions have improperly packaged Firefox builds, which results in H264 not being available. +9Some Linux distributions provide a Firefox package that do not have H264 support, causing transcoding to be required. You may need to install additional packages on these system. The most obvious symptom is Jellyfin attempting to transcode to VP9. [Format Cheatsheet:](https://en.wikipedia.org/wiki/MPEG-4#MPEG-4_Parts) From 92c18ec7e12b125f81640e0d0bcd77e047642311 Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 28 Jul 2026 14:26:03 +0800 Subject: [PATCH 7/9] adjust paragraph and layout --- docs/general/clients/codec-support.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index 6b2d02f0..4244b009 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -24,9 +24,13 @@ The goal is to Direct Play all media. This means the container, video, audio and | [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️6 | ✅ | ✅ | ✅ | | [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶 | ✅ | 🔶2 | ❌ | 🔶7 | ✅ | ✅ | ✅ | -Legends: ❌=Not Supported, 🔶=Support depends on device and/or settings, ⚠️=Software Decode Only, ✅=Fully supported (Hardware support with software fallback)
-This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support.
-For this table, Remuxing due to container compatibility is considered fully supported.
+Legends:
+❌=Not Supported.
+🔶=Support depends on device and/or settings.
+⚠️=Software Decode Only.
+✅=Fully supported (Hardware support with software fallback).
+
+This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support. Remuxing due to container compatibility is considered fully supported for this table.

2Needs at least Android TV 10.
From 372b9a0b225d8717d6afa3bc768812a30c54745b Mon Sep 17 00:00:00 2001 From: felix920506 Date: Tue, 28 Jul 2026 14:27:56 +0800 Subject: [PATCH 8/9] adjust numbers --- docs/general/clients/codec-support.md | 36 +++++++++++++-------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index 4244b009..90299ad0 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -13,16 +13,16 @@ The goal is to Direct Play all media. This means the container, video, audio and [Test your browser's compatibility for any codec profile.](https://cconcolato.github.io/media-mime-support/) -| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | Roku | Kodi | Jellyfin Media Player | -| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | -------------- | -------------- | -------------- | -------------- | --- | -------------- | -------------- | ---- | --------------------- | -| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | -| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | -| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | 🔶9 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶5 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | -| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | ✅ | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶3 | 🔶8 | ✅ | 🔶1 | 🔶 | ✅ | ✅ | 🔶4 | ✅ | ✅ | -| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️6 | ✅ | ✅ | ✅ | -| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶 | ✅ | 🔶2 | ❌ | 🔶7 | ✅ | ✅ | ✅ | +| Sorted by efficiency (excluding bit depth) | Chrome | Edge | Firefox | Safari | Android | Android TV | iOS | SwiftFin (iOS) | Roku | Kodi | Jellyfin Media Player | +| ------------------------------------------------------------------------------------------------------------------ | ------ | -------------- | -------------- | -------------- | ------- | -------------- | --- | -------------- | -------------- | ---- | --------------------- | +| [MPEG-4 Part 2/SP](https://en.wikipedia.org/wiki/DivX) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | +| [MPEG-4 Part 2/ASP]() | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | ✅ | ✅ | +| [H.264 8Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | 🔶8 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| [H.264 10Bit](https://caniuse.com/#feat=mpeg4 'H264 Browser Support Reference') | ✅ | ✅ | ❌ | 🔶4 | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ | +| [H.265 8Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶2 | 🔶7 | ✅ | 🔶 | ✅ | ✅ | ✅ | 🔶3 | ✅ | ✅ | +| [H.265 10Bit](https://caniuse.com/#feat=hevc 'HEVC Browser Support Reference') | 🔶 | 🔶2 | 🔶7 | ✅ | 🔶 | 🔶 | ✅ | ✅ | 🔶3 | ✅ | ✅ | +| [VP9](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#VP9 'V9 Browser Support Reference') | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ⚠️5 | ✅ | ✅ | ✅ | +| [AV1](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs#AV1 'AV1 Browser Support Reference') | ✅ | ✅ | ✅ | 🔶 | ✅ | 🔶1 | ❌ | 🔶6 | ✅ | ✅ | ✅ | Legends:
❌=Not Supported.
@@ -32,21 +32,21 @@ Legends:

This table shows the support status of **recent** client software and OS versions. Legacy versions may differ in support. Remuxing due to container compatibility is considered fully supported for this table.

-2Needs at least Android TV 10. +1Needs at least Android TV 10.
-3Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). +2Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7).
-4HEVC decoding is only supported on 4K devices. +3HEVC decoding is only supported on 4K devices.
-5Needs to be manually enabled in Settings > Playback > Enable H.264 High 10 Profile. Requires macOS >= 14 and Apple Silicon. +4Needs to be manually enabled in Settings > Playback > Enable H.264 High 10 Profile. Requires macOS >= 14 and Apple Silicon.
-6VP9 is only available with Swiftfin (VLCKit) player. +5VP9 is only available with Swiftfin (VLCKit) player.
-7AV1 is enabled by default for Swiftfin (VLCKit). AV1 is disabled by default for Native (AVKit). Enabling AV1 may result in a poor experience for older devices. +6AV1 is enabled by default for Swiftfin (VLCKit). AV1 is disabled by default for Native (AVKit). Enabling AV1 may result in a poor experience for older devices.
-8Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support. +7Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support.
-9Some Linux distributions provide a Firefox package that do not have H264 support, causing transcoding to be required. You may need to install additional packages on these system. The most obvious symptom is Jellyfin attempting to transcode to VP9. +8Some Linux distributions provide a Firefox package that do not have H264 support, causing transcoding to be required. You may need to install additional packages on these system. The most obvious symptom is Jellyfin attempting to transcode to VP9. [Format Cheatsheet:](https://en.wikipedia.org/wiki/MPEG-4#MPEG-4_Parts) From 3a9e3dded45c08ed67a29fa7954762fa3ac39a05 Mon Sep 17 00:00:00 2001 From: felix920506 Date: Wed, 29 Jul 2026 15:20:59 +0800 Subject: [PATCH 9/9] Fix grammar Co-authored-by: BotBlake --- docs/general/clients/codec-support.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/clients/codec-support.md b/docs/general/clients/codec-support.md index 90299ad0..f0867df9 100644 --- a/docs/general/clients/codec-support.md +++ b/docs/general/clients/codec-support.md @@ -46,7 +46,7 @@ This table shows the support status of **recent** client software and OS version
7Windows requires the [HEVC video extension from Microsoft Store](https://apps.microsoft.com/detail/9nmzlz57r3t7). Linux requires system ffmpeg for support.
-8Some Linux distributions provide a Firefox package that do not have H264 support, causing transcoding to be required. You may need to install additional packages on these system. The most obvious symptom is Jellyfin attempting to transcode to VP9. +Some Linux distributions provide a Firefox package that does not have H264 support, causing transcoding to be required. You may need to install additional packages on these system. The most obvious symptom is Jellyfin attempting to transcode to VP9. [Format Cheatsheet:](https://en.wikipedia.org/wiki/MPEG-4#MPEG-4_Parts)