瀏覽代碼

Add HWA video transpose support (+-90/180)

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
nyanmisaka 1 年之前
父節點
當前提交
deb36eeeda

File diff suppressed because it is too large
+ 258 - 94
MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs


+ 6 - 1
MediaBrowser.Controller/MediaEncoding/FilterOptionType.cs

@@ -33,6 +33,11 @@ namespace MediaBrowser.Controller.MediaEncoding
         /// <summary>
         /// The overlay_vulkan_framesync.
         /// </summary>
-        OverlayVulkanFrameSync = 5
+        OverlayVulkanFrameSync = 5,
+
+        /// <summary>
+        /// The transpose_opencl_reversal.
+        /// </summary>
+        TransposeOpenclReversal = 6
     }
 }

+ 8 - 1
MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs

@@ -110,25 +110,31 @@ namespace MediaBrowser.MediaEncoding.Encoder
             "yadif_cuda",
             "tonemap_cuda",
             "overlay_cuda",
+            "transpose_cuda",
             "hwupload_cuda",
             // opencl
             "scale_opencl",
             "tonemap_opencl",
             "overlay_opencl",
+            "transpose_opencl",
             // vaapi
             "scale_vaapi",
             "deinterlace_vaapi",
             "tonemap_vaapi",
             "procamp_vaapi",
             "overlay_vaapi",
+            "transpose_vaapi",
             "hwupload_vaapi",
             // vulkan
             "libplacebo",
             "scale_vulkan",
             "overlay_vulkan",
+            "transpose_vulkan",
+            "flip_vulkan",
             // videotoolbox
             "yadif_videotoolbox",
             "scale_vt",
+            "transpose_vt",
             "overlay_videotoolbox",
             "tonemap_videotoolbox",
             // rkrga
@@ -144,7 +150,8 @@ namespace MediaBrowser.MediaEncoding.Encoder
             { 2, new string[] { "tonemap_opencl", "bt2390" } },
             { 3, new string[] { "overlay_opencl", "Action to take when encountering EOF from secondary input" } },
             { 4, new string[] { "overlay_vaapi", "Action to take when encountering EOF from secondary input" } },
-            { 5, new string[] { "overlay_vulkan", "Action to take when encountering EOF from secondary input" } }
+            { 5, new string[] { "overlay_vulkan", "Action to take when encountering EOF from secondary input" } },
+            { 6, new string[] { "transpose_opencl", "rotate by half-turn" } }
         };
 
         // These are the library versions that corresponds to our minimum ffmpeg version 4.4 according to the version table below

Some files were not shown because too many files changed in this diff