]> granicus.if.org Git - handbrake/commitdiff
QSV: remove RateDistortionOpt control.
authorRodeo <tdskywalker@gmail.com>
Tue, 24 Sep 2013 23:25:16 +0000 (23:25 +0000)
committerRodeo <tdskywalker@gmail.com>
Tue, 24 Sep 2013 23:25:16 +0000 (23:25 +0000)
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

libhb/enc_qsv.c
libhb/qsv_common.c

index 073e18423ed0d08dd848a4aaf52c861dbe440daa..44798e1d8e6ad1d62766e0f0a1ec6aa03f461179 100644 (file)
@@ -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)
     {
index 73f5b2ab8ea8bcc785ece3169264f0d8ea58c2d7..1683264dc9e6b425da278521daee4a304c21225f 100644 (file)
@@ -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)