diff options
| author | Joshua M. Boniface <joshua@boniface.me> | 2019-10-01 12:07:09 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-10-01 12:07:09 -0400 |
| commit | 575b96d03a2cf98a0e5dd9d9f7329adca34c0311 (patch) | |
| tree | 56eb2c23f2f3681d275fe22647612cc9f867db0d /MediaBrowser.Api | |
| parent | 7203f463f4da296b663abfdda9dfcf023ac40912 (diff) | |
Revert "Fix premature stop when streaming"
Diffstat (limited to 'MediaBrowser.Api')
| -rw-r--r-- | MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs index 8fa6c3dac..f5f753684 100644 --- a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs +++ b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs @@ -965,6 +965,14 @@ namespace MediaBrowser.Api.Playback.Hls var outputTsArg = Path.Combine(Path.GetDirectoryName(outputPath), Path.GetFileNameWithoutExtension(outputPath)) + "%d" + GetSegmentFileExtension(state.Request); + var timeDeltaParam = string.Empty; + + if (isEncoding && state.TargetFramerate > 0) + { + float startTime = 1 / (state.TargetFramerate.Value * 2); + timeDeltaParam = string.Format(CultureInfo.InvariantCulture, "-segment_time_delta {0:F3}", startTime); + } + var segmentFormat = GetSegmentFileExtension(state.Request).TrimStart('.'); if (string.Equals(segmentFormat, "ts", StringComparison.OrdinalIgnoreCase)) { @@ -972,7 +980,7 @@ namespace MediaBrowser.Api.Playback.Hls } return string.Format( - "{0} {1} -map_metadata -1 -map_chapters -1 -threads {2} {3} {4} {5} -f hls -max_delay 5000000 -avoid_negative_ts disabled -start_at_zero -hls_time {6} -individual_header_trailer 0 -hls_segment_type {7} -start_number {8} -hls_segment_filename \"{9}\" -hls_playlist_type vod -hls_list_size 0 -y \"{10}\"", + "{0} {1} -map_metadata -1 -map_chapters -1 -threads {2} {3} {4} {5} -f segment -max_delay 5000000 -avoid_negative_ts disabled -start_at_zero -segment_time {6} {10} -individual_header_trailer 0 -segment_format {11} -segment_list_type m3u8 -segment_start_number {7} -segment_list \"{8}\" -y \"{9}\"", inputModifier, EncodingHelper.GetInputArgument(state, encodingOptions), threads, @@ -980,10 +988,11 @@ namespace MediaBrowser.Api.Playback.Hls GetVideoArguments(state, encodingOptions), GetAudioArguments(state, encodingOptions), state.SegmentLength.ToString(CultureInfo.InvariantCulture), - segmentFormat, startNumberParam, + outputPath, outputTsArg, - outputPath + timeDeltaParam, + segmentFormat ).Trim(); } } |
