diff options
Diffstat (limited to 'MediaBrowser.Api/Playback/Progressive/VideoService.cs')
| -rw-r--r-- | MediaBrowser.Api/Playback/Progressive/VideoService.cs | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/MediaBrowser.Api/Playback/Progressive/VideoService.cs b/MediaBrowser.Api/Playback/Progressive/VideoService.cs index 519bfa8d8..46830384d 100644 --- a/MediaBrowser.Api/Playback/Progressive/VideoService.cs +++ b/MediaBrowser.Api/Playback/Progressive/VideoService.cs @@ -136,11 +136,20 @@ namespace MediaBrowser.Api.Playback.Progressive } // See if we can save come cpu cycles by avoiding encoding - if (codec.Equals("copy", StringComparison.OrdinalIgnoreCase)) + if (string.Equals(codec, "copy", StringComparison.OrdinalIgnoreCase)) { - return state.VideoStream != null && IsH264(state.VideoStream) && string.Equals(state.OutputContainer, "ts", StringComparison.OrdinalIgnoreCase) ? - args + " -bsf:v h264_mp4toannexb" : - args; + if (string.Equals(state.OutputContainer, "mkv", StringComparison.OrdinalIgnoreCase)) + { + //args += " -copyts -avoid_negative_ts disabled -start_at_zero"; + } + + if (state.VideoStream != null && IsH264(state.VideoStream) && + (string.Equals(state.OutputContainer, "ts", StringComparison.OrdinalIgnoreCase) || string.Equals(state.OutputContainer, "mkv", StringComparison.OrdinalIgnoreCase))) + { + args += " -bsf:v h264_mp4toannexb"; + } + + return args; } var keyFrameArg = string.Format(" -force_key_frames expr:gte(t,n_forced*{0})", |
