From 2d6cd536a07f3416a84525777b0b907036a3d7dc Mon Sep 17 00:00:00 2001 From: "Dmitrichenko, Max" Date: Sat, 4 Jan 2020 22:49:14 +0100 Subject: qsv: better codec check against hw --- libhb/qsv_common.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libhb/qsv_common.c b/libhb/qsv_common.c index 0af10b9fb..48a70caa2 100644 --- a/libhb/qsv_common.c +++ b/libhb/qsv_common.c @@ -928,7 +928,7 @@ hb_list_t* hb_qsv_load_plugins(hb_qsv_info_t *info, mfxSession session, mfxVersi if (HB_CHECK_MFX_VERSION(version, 1, 8)) { - if (info->codec_id == MFX_CODEC_HEVC) + if (info->codec_id == MFX_CODEC_HEVC && !(qsv_hardware_generation(hb_get_cpu_platform()) < QSV_G5)) { if (HB_CHECK_MFX_VERSION(version, 1, 15) && qsv_implementation_is_hardware(info->implementation)) @@ -994,7 +994,9 @@ const char* hb_qsv_decode_get_codec_name(enum AVCodecID codec_id) int hb_qsv_decode_is_enabled(hb_job_t *job) { return ((job != NULL && job->qsv.decode) && - (job->title->video_decode_support & HB_DECODE_SUPPORT_QSV)); + (job->title->video_decode_support & HB_DECODE_SUPPORT_QSV)) && + (job->vcodec == HB_VCODEC_QSV_H265 ? (qsv_hardware_generation(hb_get_cpu_platform()) >= QSV_G5) : 1) && + (job->vcodec == HB_VCODEC_QSV_H265_10BIT ? (qsv_hardware_generation(hb_get_cpu_platform()) >= QSV_G6) : 1); } static int hb_dxva2_device_check(); -- cgit v1.2.3