diff options
-rw-r--r-- | libhb/enc_qsv.c | 7 | ||||
-rw-r--r-- | libhb/qsv_common.c | 3 |
2 files changed, 7 insertions, 3 deletions
diff --git a/libhb/enc_qsv.c b/libhb/enc_qsv.c index 91405eaea..fdb6a91f6 100644 --- a/libhb/enc_qsv.c +++ b/libhb/enc_qsv.c @@ -908,7 +908,12 @@ int encqsvInit(hb_work_object_t *w, hb_job_t *job) // encode-only is a bit less sensitive to memory issues pv->param.videoParam->mfx.GopRefDist = FFMIN(pv->param.videoParam->mfx.GopRefDist, 16); pv->param.codingOption2.LookAheadDepth = FFMIN(pv->param.codingOption2.LookAheadDepth, - pv->param.rc.lookahead ? 60 : 0); + pv->param.rc.lookahead ? 100 : 0); + } + if (pv->param.rc.lookahead) + { + // LookAheadDepth 10 will cause a hang with some driver versions + pv->param.codingOption2.LookAheadDepth = FFMAX(pv->param.codingOption2.LookAheadDepth, 11); } /* diff --git a/libhb/qsv_common.c b/libhb/qsv_common.c index a76a9e7bb..a54f20afc 100644 --- a/libhb/qsv_common.c +++ b/libhb/qsv_common.c @@ -1168,8 +1168,7 @@ int hb_qsv_param_parse(hb_qsv_param_t *param, hb_qsv_info_t *info, ivalue = hb_qsv_atoi(value, &error); if (!error) { - // LookAheadDepth 10 will cause a hang with some driver versions - param->codingOption2.LookAheadDepth = HB_QSV_CLIP3(11, 100, + param->codingOption2.LookAheadDepth = HB_QSV_CLIP3(10, 100, ivalue); } } |