From 6c53420fe328c012d4347a615c5b5add3c9374d5 Mon Sep 17 00:00:00 2001 From: Nyanmisaka Date: Wed, 2 Feb 2022 05:30:19 +0800 Subject: [PATCH] Fix the broken fMP4 main playlist (#7263) --- .../Playlist/DynamicHlsPlaylistGenerator.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Jellyfin.MediaEncoding.Hls/Playlist/DynamicHlsPlaylistGenerator.cs b/src/Jellyfin.MediaEncoding.Hls/Playlist/DynamicHlsPlaylistGenerator.cs index 5cdacaf31a..3382ba2511 100644 --- a/src/Jellyfin.MediaEncoding.Hls/Playlist/DynamicHlsPlaylistGenerator.cs +++ b/src/Jellyfin.MediaEncoding.Hls/Playlist/DynamicHlsPlaylistGenerator.cs @@ -46,7 +46,7 @@ public class DynamicHlsPlaylistGenerator : IDynamicHlsPlaylistGenerator var segmentExtension = EncodingHelper.GetSegmentFileExtension(request.SegmentContainer); // http://ffmpeg.org/ffmpeg-all.html#toc-hls-2 - var isHlsInFmp4 = string.Equals(segmentExtension, "mp4", StringComparison.OrdinalIgnoreCase); + var isHlsInFmp4 = string.Equals(segmentExtension, ".mp4", StringComparison.OrdinalIgnoreCase); var hlsVersion = isHlsInFmp4 ? "7" : "3"; var builder = new StringBuilder(128); @@ -65,11 +65,14 @@ public class DynamicHlsPlaylistGenerator : IDynamicHlsPlaylistGenerator if (isHlsInFmp4) { + // Init file that only includes fMP4 headers builder.Append("#EXT-X-MAP:URI=\"") .Append(request.EndpointPrefix) .Append("-1") .Append(segmentExtension) .Append(request.QueryString) + .Append("&runtimeTicks=0") + .Append("&actualSegmentLengthTicks=0") .Append('"') .AppendLine(); }