aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Playback/BaseStreamingService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-09-04 11:01:31 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-09-04 11:01:31 -0400
commit9c7eef891b808c60181704046a48dd9cdbe96bae (patch)
tree22701a69c5f0be2007f9ea1d16a244f36b8b1a50 /MediaBrowser.Api/Playback/BaseStreamingService.cs
parentdaeedb98ea1ebc59c768ef16ccfdc19b752eea4d (diff)
add configurable encoding params
Diffstat (limited to 'MediaBrowser.Api/Playback/BaseStreamingService.cs')
-rw-r--r--MediaBrowser.Api/Playback/BaseStreamingService.cs20
1 files changed, 18 insertions, 2 deletions
diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs
index 4af564a5a..89ad02170 100644
--- a/MediaBrowser.Api/Playback/BaseStreamingService.cs
+++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs
@@ -346,11 +346,27 @@ namespace MediaBrowser.Api.Playback
var isVc1 = state.VideoStream != null &&
string.Equals(state.VideoStream.Codec, "vc1", StringComparison.OrdinalIgnoreCase);
+ var encodingOptions = ApiEntryPoint.Instance.GetEncodingOptions();
+
if (string.Equals(videoCodec, "libx264", StringComparison.OrdinalIgnoreCase))
{
- param = "-preset superfast";
+ if (!string.IsNullOrWhiteSpace(encodingOptions.H264Preset))
+ {
+ param = "-preset " + encodingOptions.H264Preset;
+ }
+ else
+ {
+ param = "-preset superfast";
+ }
- param += " -crf 23";
+ if (encodingOptions.H264Crf >= 0 && encodingOptions.H264Crf <= 51)
+ {
+ param = " -crf " + encodingOptions.H264Crf.ToString(CultureInfo.InvariantCulture);
+ }
+ else
+ {
+ param += " -crf 23";
+ }
}
else if (string.Equals(videoCodec, "libx265", StringComparison.OrdinalIgnoreCase))