<div dir="ltr"># HG changeset patch<br># User Deepthi Nandakumar <<a href="mailto:deepthi@multicorewareinc.com">deepthi@multicorewareinc.com</a>><br># Date 1379334518 -19800<br># Node ID 46b065f7d676e7ff26c46a40f1790bdae290d7fa<br>
# Parent  881444f5910b2b0e0f286a6ca47fcc743515cbb2<br>CLI options: Eliminate rdoqts option; cleanup<br><br>1. Eliminate rdoqts CLI option: enabled when rdoq and ts are both enabled.<br>2. Rearrange default initialisations in x265_param_ t structure<br>
<br>diff -r 881444f5910b -r 46b065f7d676 source/common/common.cpp<br>--- a/source/common/common.cpp    Mon Sep 16 09:41:34 2013 +0530<br>+++ b/source/common/common.cpp    Mon Sep 16 17:58:38 2013 +0530<br>@@ -115,45 +115,58 @@<br>
     va_end(arg);<br> }<br> <br>-extern "C"<br> void x265_param_default(x265_param_t *param)<br> {<br>     memset(param, 0, sizeof(x265_param_t));<br>+<br>+    /* Applying non-zero default values to all elements in the param structure */<br>
+    param->logLevel = X265_LOG_INFO;<br>+    param->bEnableWavefront = 1;<br>     param->frameNumThreads = 1;<br>-    param->logLevel = X265_LOG_INFO;<br>+    <br>+    param->internalBitDepth = 8;<br>+<br>
+    /* CU definitions */<br>+    param->maxCUSize = 64;<br>+    param->tuQTMaxInterDepth = 3;<br>+    param->tuQTMaxIntraDepth = 3;<br>+<br>+    /* Coding Structure */<br>+    param->decodingRefreshType = 1;<br>
+    param->keyframeMin = 0;<br>+    param->keyframeMax = 250;<br>+    param->bframes = 3;<br>+    param->lookaheadDepth = 10;<br>+    param->bFrameAdaptive = X265_B_ADAPT_FAST;<br>+    param->scenecutThreshold = 40; /* Magic number pulled in from x264*/<br>
+<br>+    /* Intra Coding Tools */<br>+    param->bEnableStrongIntraSmoothing = 1;<br>+<br>+    /* Inter Coding tools */<br>     param->searchMethod = X265_STAR_SEARCH;<br>     param->subpelRefine = 5;<br>     param->searchRange = 60;<br>
     param->bipredSearchRange = 4;<br>-    param->internalBitDepth = 8;<br>-    param->decodingRefreshType = 1;<br>-    param->maxCUSize = 64;<br>-    param->tuQTMaxInterDepth = 3;<br>-    param->tuQTMaxIntraDepth = 3;<br>
+    param->maxNumMergeCand = 5u;<br>     param->bEnableAMP = 1;<br>     param->bEnableRectInter = 1;<br>-    <br>-    param->bEnableLoopFilter = 1;<br>-    param->bEnableSAO = 1;<br>-    param->bEnableWavefront = 1;<br>
-    param->saoLcuBasedOptimization = 1;<br>-    param->maxNumMergeCand = 5u;<br>+    param->bRDLevel = X265_FULL_RDO;<br>+    param->bEnableRDO = 1;<br>+    param->bEnableRDOQ = 1;<br>+    param->bEnableRDOQTS = 1;<br>
     param->bEnableSignHiding = 1;<br>-    param->bEnableStrongIntraSmoothing = 1;<br>-    <br>-    param->bEnableRDOQTS = 1;<br>     param->bEnableTransformSkip = 1;<br>     param->bEnableTSkipFast = 1;<br>
+<br>+    /* Loop Filter */<br>+    param->bEnableLoopFilter = 1;<br>     <br>-    param->bRDLevel = X265_FULL_RDO;<br>-<br>-    param->bFrameAdaptive = X265_B_ADAPT_FAST;<br>-    param->lookaheadDepth = 10;<br>
-    param->bframes = 3;<br>-    param->scenecutThreshold = 40; /* Magic number pulled in from x264*/<br>-    param->keyframeMin = 0;<br>-    param->keyframeMax = 250;<br>-<br>+    /*SAO Loop Filter */<br>+    param->bEnableSAO = 1;<br>
+    param->saoLcuBasedOptimization = 1;<br>+    <br>+    /* Rate control options */<br>     param->rc.bitrate = 0;<br>     param->rc.rateTolerance = 0.1;<br>     param->rc.qCompress = 0.6;<br>diff -r 881444f5910b -r 46b065f7d676 source/encoder/encoder.cpp<br>
--- a/source/encoder/encoder.cpp    Mon Sep 16 09:41:34 2013 +0530<br>+++ b/source/encoder/encoder.cpp    Mon Sep 16 17:58:38 2013 +0530<br>@@ -219,6 +219,11 @@<br>         _param->rc.rateControlMode = X265_RC_ABR;<br>
     }<br> <br>+    if(!(_param->bEnableRDOQ && _param->bEnableTransformSkip))<br>+    {<br>+        _param->bEnableRDOQTS = 0;<br>+    }<br>+<br>     /* Set flags according to RDLevel specified - check_params has verified that RDLevel is within range */<br>
     switch(_param->bRDLevel)<br>     {<br>diff -r 881444f5910b -r 46b065f7d676 source/x265opts.h<br>--- a/source/x265opts.h    Mon Sep 16 09:41:34 2013 +0530<br>+++ b/source/x265opts.h    Mon Sep 16 17:58:38 2013 +0530<br>
@@ -80,8 +80,6 @@<br> OPT("cbqpoffs",        param->cbQpOffset,             required_argument, 0, "Chroma Cb QP Offset")<br> OPT("crqpoffs",        param->crQpOffset,             required_argument, 0, "Chroma Cr QP Offset")<br>
 OPT("rd",              param->bRDLevel,               required_argument, 0, "Level of RD in mode decision 0:least....2:full RDO")<br>-OPT("no-rdoqts",       param->bEnableRDOQTS,                no_argument, 0, "Disable RDO quantization with transform skip")<br>
-OPT("rdoqts",          param->bEnableRDOQTS,                no_argument, 0, "Enable RDO quantization with transform skip")<br> OPT("no-signhide",     param->bEnableSignHiding,            no_argument, 0, "Disable hide sign bit of one coeff per TU (rdo)")<br>
 OPT("signhide",        param->bEnableSignHiding,            no_argument, 0, "Hide sign bit of one coeff per TU (rdo)")<br> <br><br></div>