Browse Source

Update EncodingHelper.cs

Fix the problem that hardware decoding cannot be used on macOS.
不帅你报警 4 years ago
parent
commit
d5dcb12407
1 changed files with 8 additions and 1 deletions
  1. 8 1
      MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs

+ 8 - 1
MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs

@@ -456,7 +456,8 @@ namespace MediaBrowser.Controller.MediaEncoding
             var isQsvEncoder = outputVideoCodec.IndexOf("qsv", StringComparison.OrdinalIgnoreCase) != -1;
             var isWindows = RuntimeInformation.IsOSPlatform(OSPlatform.Windows);
             var isLinux = RuntimeInformation.IsOSPlatform(OSPlatform.Linux);
-
+            var isMacOS = RuntimeInformation.IsOSPlatform(OSPlatform.OSX);
+            
             if (!IsCopyCodec(outputVideoCodec))
             {
                 if (state.IsVideoRequest
@@ -511,6 +512,12 @@ namespace MediaBrowser.Controller.MediaEncoding
                         }
                     }
                 }
+                
+                if (state.IsVideoRequest
+                    && string.Equals(encodingOptions.HardwareAccelerationType, "videotoolbox", StringComparison.OrdinalIgnoreCase))
+                {
+                    arg.Append("-hwaccel videotoolbox ");
+                }
             }
 
             arg.Append("-i ")