diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-11-20 10:50:54 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-11-20 10:50:54 -0500 |
| commit | 7dd75e079a7c2c82e00bb84bed0c7308ba738e3c (patch) | |
| tree | 85941ead4d74d8d83e4c5d4edc332b462caba454 /MediaBrowser.Api/Playback/Progressive/VideoService.cs | |
| parent | f7271792222dfa6f4cf4e5b3c5d8876775f88e2b (diff) | |
fixes #619 - Command line fail for internal subs
Diffstat (limited to 'MediaBrowser.Api/Playback/Progressive/VideoService.cs')
| -rw-r--r-- | MediaBrowser.Api/Playback/Progressive/VideoService.cs | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/MediaBrowser.Api/Playback/Progressive/VideoService.cs b/MediaBrowser.Api/Playback/Progressive/VideoService.cs index 0ef6d13cc..97b808b86 100644 --- a/MediaBrowser.Api/Playback/Progressive/VideoService.cs +++ b/MediaBrowser.Api/Playback/Progressive/VideoService.cs @@ -143,12 +143,19 @@ namespace MediaBrowser.Api.Playback.Progressive args += keyFrameArg; + var hasGraphicalSubs = state.SubtitleStream != null && !state.SubtitleStream.IsExternal && + (state.SubtitleStream.Codec.IndexOf("pgs", StringComparison.OrdinalIgnoreCase) != -1 || + state.SubtitleStream.Codec.IndexOf("dvd", StringComparison.OrdinalIgnoreCase) != -1); + var request = state.VideoRequest; // Add resolution params, if specified - if (request.Width.HasValue || request.Height.HasValue || request.MaxHeight.HasValue || request.MaxWidth.HasValue) + if (!hasGraphicalSubs) { - args += GetOutputSizeParam(state, codec, performSubtitleConversion); + if (request.Width.HasValue || request.Height.HasValue || request.MaxHeight.HasValue || request.MaxWidth.HasValue) + { + args += GetOutputSizeParam(state, codec, performSubtitleConversion); + } } if (request.Framerate.HasValue) @@ -175,13 +182,10 @@ namespace MediaBrowser.Api.Playback.Progressive args += " -level " + state.VideoRequest.Level; } - if (state.SubtitleStream != null) + // This is for internal graphical subs + if (hasGraphicalSubs) { - // This is for internal graphical subs - if (!state.SubtitleStream.IsExternal && (state.SubtitleStream.Codec.IndexOf("pgs", StringComparison.OrdinalIgnoreCase) != -1 || state.SubtitleStream.Codec.IndexOf("dvd", StringComparison.OrdinalIgnoreCase) != -1)) - { - args += GetInternalGraphicalSubtitleParam(state, codec); - } + args += GetInternalGraphicalSubtitleParam(state, codec); } return args; |
