diff options
Diffstat (limited to 'libhb/handbrake/qsv_common.h')
-rw-r--r-- | libhb/handbrake/qsv_common.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/libhb/handbrake/qsv_common.h b/libhb/handbrake/qsv_common.h index ef27464d9..2d4471bb1 100644 --- a/libhb/handbrake/qsv_common.h +++ b/libhb/handbrake/qsv_common.h @@ -44,7 +44,7 @@ void hb_qsv_force_workarounds(); // for developers only typedef struct hb_qsv_info_s { // each info struct only corresponds to one CodecId and implementation combo - const mfxU32 codec_id; + mfxU32 codec_id; mfxIMPL implementation; // whether the encoder is available for this implementation @@ -82,16 +82,19 @@ typedef struct hb_qsv_info_s /* Intel Quick Sync Video utilities */ hb_display_t * hb_qsv_display_init(void); -int hb_qsv_video_encoder_is_enabled(int encoder); +int hb_qsv_video_encoder_is_enabled(int adapter_index, int encoder); int hb_qsv_audio_encoder_is_enabled(int encoder); int hb_qsv_info_init(); void hb_qsv_info_print(); hb_list_t* hb_qsv_adapters_list(); -hb_qsv_info_t* hb_qsv_info_get(int encoder); -int qsv_hardware_generation(int cpu_platform); +hb_qsv_info_t* hb_qsv_encoder_info_get(int adapter_index, int encoder); +int hb_qsv_hardware_generation(int cpu_platform); +int hb_qsv_get_platform(int adapter_index); +int hb_qsv_get_adapter_index(); +int hb_qsv_implementation_is_hardware(mfxIMPL implementation); /* Automatically load and unload any required MFX plug-ins */ -hb_list_t* hb_qsv_load_plugins (hb_qsv_info_t *info, mfxSession session, mfxVersion version); +hb_list_t* hb_qsv_load_plugins (int adapter_index, hb_qsv_info_t *info, mfxSession session, mfxVersion version); void hb_qsv_unload_plugins(hb_list_t **_l, mfxSession session, mfxVersion version); /* Intel Quick Sync Video DECODE utilities */ @@ -247,6 +250,14 @@ enum AVPixelFormat hb_qsv_get_format(AVCodecContext *s, const enum AVPixelFormat int hb_qsv_preset_is_zero_copy_enabled(const hb_dict_t *job_dict); void hb_qsv_uninit_dec(AVCodecContext *s); void hb_qsv_uninit_enc(hb_job_t *job); +mfxIMPL hb_qsv_dx_index_to_impl(int dx_index); +int hb_qsv_parse_adapter_index(hb_job_t *job); +int hb_qsv_setup_job(hb_job_t *job); +int hb_qsv_decode_h264_is_supported(int adapter_index); +int hb_qsv_decode_h265_is_supported(int adapter_index); +int hb_qsv_decode_h265_10_bit_is_supported(int adapter_index); +int hb_qsv_decode_av1_is_supported(int adapter_index); +int hb_qsv_decode_codec_supported_codec(int adapter_index, int video_codec_param, int pix_fmt); #endif // __LIBHB__ #endif // HB_PROJECT_FEATURE_QSV |