diff options
| author | gnattu <gnattu@users.noreply.github.com> | 2024-03-24 22:19:48 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-24 08:19:48 -0600 |
| commit | cf16110a56f4dbbd4c29452392660489c275bb9e (patch) | |
| tree | 5d50eca879cd1507f0725914640dcb9f3f776980 /MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | |
| parent | f544219c502550bd377b9a3637ed8b562bda4027 (diff) | |
fix: map encoder preset to quality setting for VideoToolbox (#11205)
Diffstat (limited to 'MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs')
| -rw-r--r-- | MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index acf4f76a5..8a3bd5bcd 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -1846,6 +1846,31 @@ namespace MediaBrowser.Controller.MediaEncoding param += " -gops_per_idr 1"; } } + else if (string.Equals(videoEncoder, "h264_videotoolbox", StringComparison.OrdinalIgnoreCase) // h264 (h264_videotoolbox) + || string.Equals(videoEncoder, "hevc_videotoolbox", StringComparison.OrdinalIgnoreCase)) // hevc (hevc_videotoolbox) + { + switch (encodingOptions.EncoderPreset) + { + case "veryslow": + case "slower": + case "slow": + case "medium": + param += " -prio_speed 0"; + break; + + case "fast": + case "faster": + case "veryfast": + case "superfast": + case "ultrafast": + param += " -prio_speed 1"; + break; + + default: + param += " -prio_speed 1"; + break; + } + } else if (string.Equals(videoEncoder, "libvpx", StringComparison.OrdinalIgnoreCase)) // vp8 { // Values 0-3, 0 being highest quality but slower |
