diff options
author | sr55 <[email protected]> | 2018-06-08 23:04:22 +0100 |
---|---|---|
committer | sr55 <[email protected]> | 2018-06-08 23:04:22 +0100 |
commit | c2a7fba08f489844a1474c01be455ae1e9a03abb (patch) | |
tree | f3a7a414d0d6a1ad3b9e2c553d74b5d0b32b95d4 /win/CS/HandBrake.Interop/Interop | |
parent | f4bd868418555189faac85e0af3f3ad64058836a (diff) |
WinGui: Add Support for the VCE Encoders.
Diffstat (limited to 'win/CS/HandBrake.Interop/Interop')
3 files changed, 18 insertions, 0 deletions
diff --git a/win/CS/HandBrake.Interop/Interop/HbLib/HbFunctions.cs b/win/CS/HandBrake.Interop/Interop/HbLib/HbFunctions.cs index c55c8a927..65b81c509 100644 --- a/win/CS/HandBrake.Interop/Interop/HbLib/HbFunctions.cs +++ b/win/CS/HandBrake.Interop/Interop/HbLib/HbFunctions.cs @@ -409,6 +409,12 @@ namespace HandBrake.Interop.Interop.HbLib [DllImport("hb", EntryPoint = "hb_qsv_info_init", CallingConvention = CallingConvention.Cdecl)] public static extern int hb_qsv_info_init(); + [DllImport("hb", EntryPoint = "hb_vce_h264_available", CallingConvention = CallingConvention.Cdecl)] + public static extern int hb_vce_h264_available(); + + [DllImport("hb", EntryPoint = "hb_vce_h265_available", CallingConvention = CallingConvention.Cdecl)] + public static extern int hb_vce_h265_available(); + // hb_image_t* hb_get_preview2(hb_handle_t* h, int title_idx, int picture, hb_geometry_settings_t* geo, int deinterlace); [DllImport("hb", EntryPoint = "hb_get_preview2", CallingConvention = CallingConvention.Cdecl)] public static extern IntPtr hb_get_preview2(IntPtr hbHandle, int title_idx, int preview_idx, ref hb_geometry_settings_s geo, int deinterlace); diff --git a/win/CS/HandBrake.Interop/Interop/HbLib/NativeConstants.cs b/win/CS/HandBrake.Interop/Interop/HbLib/NativeConstants.cs index aacec1bcf..dbf96aeda 100644 --- a/win/CS/HandBrake.Interop/Interop/HbLib/NativeConstants.cs +++ b/win/CS/HandBrake.Interop/Interop/HbLib/NativeConstants.cs @@ -51,6 +51,10 @@ namespace HandBrake.Interop.Interop.HbLib public const uint HB_VCODEC_QSV_H265_10BIT = 0x0000400; public const uint HB_VCODEC_QSV_MASK = 0x0000F00; + public const uint HB_VCODEC_FFMPEG_VCE_H264 = 0x00040000; + public const uint HB_VCODEC_FFMPEG_VCE_H265 = 0x00080000; + public const uint HB_VCODEC_FFMPEG_MASK = (0x00000F0 | HB_VCODEC_FFMPEG_VCE_H264 | HB_VCODEC_FFMPEG_VCE_H265); + // Encode state public const int HB_STATE_IDLE = 1; public const int HB_STATE_SCANNING = 2; diff --git a/win/CS/HandBrake.Interop/Interop/Model/Encoding/VideoEncoder.cs b/win/CS/HandBrake.Interop/Interop/Model/Encoding/VideoEncoder.cs index 68c09d0d1..a5aded796 100644 --- a/win/CS/HandBrake.Interop/Interop/Model/Encoding/VideoEncoder.cs +++ b/win/CS/HandBrake.Interop/Interop/Model/Encoding/VideoEncoder.cs @@ -28,6 +28,10 @@ namespace HandBrake.Interop.Interop.Model.Encoding [ShortName("qsv_h264")] QuickSync, + [DisplayName("H.264 (AMD VCE)")] + [ShortName("vce_h264")] + VceH264, + [DisplayName("MPEG-4")] [ShortName("mpeg4")] FFMpeg, @@ -60,6 +64,10 @@ namespace HandBrake.Interop.Interop.Model.Encoding [ShortName("qsv_h265_10bit")] QuickSyncH26510b, + [DisplayName("H.265 (AMD VCE)")] + [ShortName("vce_h265")] + VceH265, + [DisplayName("VP8")] [ShortName("VP8")] VP8, |