diff options
| author | Anthony Lavado <anthony@lavado.ca> | 2020-06-16 00:07:55 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-16 00:07:55 -0400 |
| commit | 25f8e596cb922fc7d98f934777b1a9279c4269a4 (patch) | |
| tree | c7e155825abbae3cd78ffe73c16f81d0f621ca42 /MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs | |
| parent | 741db0287a0348399da037804fb8b36c00ec8165 (diff) | |
| parent | dabb869a6b9f1c3359a663fd6b6e380f882e2ae2 (diff) | |
Merge pull request #2809 from nyanmisaka/hwaccel
Add more separate hardware decoding toggles, support videotoolbox
Diffstat (limited to 'MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs')
| -rw-r--r-- | MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs index a4896d5f9..82f6ce15e 100644 --- a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs +++ b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs @@ -111,6 +111,7 @@ namespace MediaBrowser.MediaEncoding.Encoder SetAvailableDecoders(validator.GetDecoders()); SetAvailableEncoders(validator.GetEncoders()); + SetAvailableHwaccels(validator.GetHwaccels()); } _logger.LogInformation("FFmpeg: {EncoderLocation}: {FfmpegPath}", EncoderLocation, _ffmpegPath ?? string.Empty); @@ -257,6 +258,13 @@ namespace MediaBrowser.MediaEncoding.Encoder // _logger.Info("Supported decoders: {0}", string.Join(",", list.ToArray())); } + private List<string> _hwaccels = new List<string>(); + public void SetAvailableHwaccels(IEnumerable<string> list) + { + _hwaccels = list.ToList(); + //_logger.Info("Supported hwaccels: {0}", string.Join(",", list.ToArray())); + } + public bool SupportsEncoder(string encoder) { return _encoders.Contains(encoder, StringComparer.OrdinalIgnoreCase); @@ -267,6 +275,11 @@ namespace MediaBrowser.MediaEncoding.Encoder return _decoders.Contains(decoder, StringComparer.OrdinalIgnoreCase); } + public bool SupportsHwaccel(string hwaccel) + { + return _hwaccels.Contains(hwaccel, StringComparer.OrdinalIgnoreCase); + } + public bool CanEncodeToAudioCodec(string codec) { if (string.Equals(codec, "opus", StringComparison.OrdinalIgnoreCase)) |
