diff options
| author | Cody Robibero <cody@robibe.ro> | 2026-08-01 08:07:42 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-01 08:07:42 -0400 |
| commit | c55fde25a54e9d2c2ba0e781d4a6f790990f85bd (patch) | |
| tree | e3ff791da44f75001b3332598791f4e3c3cd70d9 /Jellyfin.Api/Controllers/DynamicHlsController.cs | |
| parent | 030031dcff5bb5d11f88f7e6c4e2361b35c2cb7e (diff) | |
| parent | 893662ba50ed2812e090a659814a2a265f6ef876 (diff) | |
Merge pull request #17501 from alchemyyy/fix/skip-sidx-fmp4-hls
Skip SIDX in fMP4 HLS segments
Diffstat (limited to 'Jellyfin.Api/Controllers/DynamicHlsController.cs')
| -rw-r--r-- | Jellyfin.Api/Controllers/DynamicHlsController.cs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Jellyfin.Api/Controllers/DynamicHlsController.cs b/Jellyfin.Api/Controllers/DynamicHlsController.cs index 838f48949d..4aa728b5bf 100644 --- a/Jellyfin.Api/Controllers/DynamicHlsController.cs +++ b/Jellyfin.Api/Controllers/DynamicHlsController.cs @@ -1607,8 +1607,9 @@ public class DynamicHlsController : BaseJellyfinApiController if (state.VideoStream is not null && state.IsOutputVideo) { - // fMP4 needs this flag to write the audio packet DTS/PTS including the initial delay into MOOF::TRAF::TFDT - hlsArguments += $" {(useLegacySegmentOption ? "-hls_ts_options" : "-hls_segment_options")} movflags=+frag_discont"; + // fMP4 needs frag_discont to write the audio packet DTS/PTS including the initial delay into MOOF::TRAF::TFDT + // HLS does not use SIDX, and skipping it avoids FFmpeg rewriting open-GOP boundary packet PTS + hlsArguments += $" {(useLegacySegmentOption ? "-hls_ts_options" : "-hls_segment_options")} movflags=+frag_discont+skip_sidx"; } segmentFormat = "fmp4" + outputFmp4HeaderArg; |
