diff options
| author | Claus Vium <cvium@users.noreply.github.com> | 2020-11-19 23:59:24 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-11-19 23:59:24 +0100 |
| commit | c30e583201a9a754c33cd7ffd5bd63f68f311b27 (patch) | |
| tree | 993002ddcb4815660de00392a7498b9dbbfa973e /MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | |
| parent | b5ff91c28159695858f24f768b5f6b5b33c0680c (diff) | |
| parent | e21e00cad514159e22ddf99f26a4f8c13e16cc52 (diff) | |
Merge pull request #4501 from ferferga/no-scaling
Don't scale extracted images and ffmpeg improvements
Diffstat (limited to 'MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs')
| -rw-r--r-- | MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index a4a5cecdc..a115179e8 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -2329,7 +2329,8 @@ namespace MediaBrowser.Controller.MediaEncoding /// <summary> /// Gets the number of threads. /// </summary> - public int GetNumberOfThreads(EncodingJobInfo state, EncodingOptions encodingOptions, string outputVideoCodec) +#nullable enable + public static int GetNumberOfThreads(EncodingJobInfo? state, EncodingOptions encodingOptions, string? outputVideoCodec) { if (string.Equals(outputVideoCodec, "libvpx", StringComparison.OrdinalIgnoreCase)) { @@ -2339,17 +2340,21 @@ namespace MediaBrowser.Controller.MediaEncoding return Math.Max(Environment.ProcessorCount - 1, 1); } - var threads = state.BaseRequest.CpuCoreLimit ?? encodingOptions.EncodingThreadCount; + var threads = state?.BaseRequest.CpuCoreLimit ?? encodingOptions.EncodingThreadCount; // Automatic - if (threads <= 0 || threads >= Environment.ProcessorCount) + if (threads <= 0) { return 0; + } + else if (threads >= Environment.ProcessorCount) + { + return Environment.ProcessorCount; } return threads; } - +#nullable disable public void TryStreamCopy(EncodingJobInfo state) { if (state.VideoStream != null && CanStreamCopyVideo(state, state.VideoStream)) |
