summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRodeo <[email protected]>2013-09-24 23:25:16 +0000
committerRodeo <[email protected]>2013-09-24 23:25:16 +0000
commit0f25cd001eb497e139caf78000ca00bfd569fa5b (patch)
treef9cf631237429ad85bf005044fa9426af368deef
parentdfb994ee3f02ee38fbb3d90ac016d18ce9382845 (diff)
QSV: remove RateDistortionOpt control.
The option seems to have no effect in my testing, and is of limited usefulness, so let's leave it unknown (up to the implementation). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5810 b64f7644-9d1e-0410-96f1-a4d463321fa5
-rw-r--r--libhb/enc_qsv.c13
-rw-r--r--libhb/qsv_common.c16
2 files changed, 5 insertions, 24 deletions
diff --git a/libhb/enc_qsv.c b/libhb/enc_qsv.c
index 073e18423..44798e1d8 100644
--- a/libhb/enc_qsv.c
+++ b/libhb/enc_qsv.c
@@ -620,13 +620,12 @@ int encqsvInit(hb_work_object_t *w, hb_job_t *job)
hb_log("encqsvInit: MFX_RATECONTROL_LA, ignoring VBV");
}
/*
- * When LA is used, ExtBRC, MBBRC and RateDistortionOpt are ignored.
- * But some drivers ignore them too late and change other settings
+ * When LA is used, ExtBRC and MBBRC are ignored. However, some
+ * graphics drivers ignore them too late and change other settings
* (such as AsyncDepth) based on their values. So disable them here.
*/
- pv->param.codingOption2.ExtBRC = MFX_CODINGOPTION_OFF;
- pv->param.codingOption2.MBBRC = MFX_CODINGOPTION_OFF;
- pv->param.codingOption.RateDistortionOpt = MFX_CODINGOPTION_OFF;
+ pv->param.codingOption2.ExtBRC = MFX_CODINGOPTION_OFF;
+ pv->param.codingOption2.MBBRC = MFX_CODINGOPTION_OFF;
}
else
{
@@ -973,7 +972,7 @@ int encqsvInit(hb_work_object_t *w, hb_job_t *job)
hb_qsv_codingoption_get_name(option1->CAVLC));
if (videoParam.mfx.RateControlMethod != MFX_RATECONTROL_LA)
{
- // LA and ExtBRC, MBBRC, RateDistortionOpt are mutually exclusive
+ // LA and ExtBRC/MBBRC are mutually exclusive
if (hb_qsv_info->capabilities & HB_QSV_CAP_OPTION2_EXTBRC)
{
hb_log("encqsvInit: ExtBRC %s",
@@ -984,8 +983,6 @@ int encqsvInit(hb_work_object_t *w, hb_job_t *job)
hb_log("encqsvInit: MBBRC %s",
hb_qsv_codingoption_get_name(option2->MBBRC));
}
- hb_log("encqsvInit: RateDistortionOpt %s",
- hb_qsv_codingoption_get_name(option1->RateDistortionOpt));
}
if (hb_qsv_info->capabilities & HB_QSV_CAP_OPTION2_TRELLIS)
{
diff --git a/libhb/qsv_common.c b/libhb/qsv_common.c
index 73f5b2ab8..1683264dc 100644
--- a/libhb/qsv_common.c
+++ b/libhb/qsv_common.c
@@ -460,22 +460,6 @@ int hb_qsv_param_parse(hb_qsv_param_t *param,
param->codingOption.CAVLC = hb_qsv_codingoption_xlat(ivalue);
}
}
- else if (!strcasecmp(key, "rate-distorsion-opt") ||
- !strcasecmp(key, "rdo"))
- {
- switch (vcodec)
- {
- case HB_VCODEC_QSV_H264:
- ivalue = hb_qsv_atobool(value, &error);
- break;
- default:
- return HB_QSV_PARAM_UNSUPPORTED;
- }
- if (!error)
- {
- param->codingOption.RateDistortionOpt = hb_qsv_codingoption_xlat(ivalue);
- }
- }
else if (!strcasecmp(key, "videoformat"))
{
switch (vcodec)