<div dir="ltr">Yes, you're right, Tom. Also this patch will not apply at the current tip, since Tom committed a patch to presets.rst yesterday.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 22, 2015 at 7:30 AM, Tom Vaughan <span dir="ltr"><<a href="mailto:tom.vaughan@multicorewareinc.com" target="_blank">tom.vaughan@multicorewareinc.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Pradeep,<br>
In presets.rst you put 2 rows in for limit-refs. The 2nd one should be<br>
limit-modes.<br>
<br>
+| limit-modes | 0 | 0 | 0 | 0 | 0<br>
<span class="">| 0 | 1 | 1 | 1 | 0 |<br>
<br>
</span>Also, I don't see limit-modes changed for slow, slower and veryslow.<br>
<br>
Please double-check that everything matches our planned changes before we<br>
commit this.<br>
<span class="HOEnZb"><font color="#888888"><br>
Tom<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
-----Original Message-----<br>
From: x265-devel [mailto:<a href="mailto:x265-devel-bounces@videolan.org">x265-devel-bounces@videolan.org</a>] On Behalf Of<br>
Pradeep Ramachandran<br>
Sent: Monday, December 21, 2015 12:42 AM<br>
To: <a href="mailto:x265-devel@videolan.org">x265-devel@videolan.org</a><br>
Subject: [x265] [PATCH] presets: Updating presets to improve coding<br>
efficiency and speed<br>
<br>
# HG changeset patch<br>
# User Pradeep Ramachandran <<a href="mailto:pradeep@multicorewareinc.com">pradeep@multicorewareinc.com</a>> # Date<br>
1450687279 -19800<br>
# Mon Dec 21 14:11:19 2015 +0530<br>
# Node ID df793ec188d2cb6ea9dc886296ccb4c7448e4523<br>
# Parent 0315c0c389c99185cbaa73a0e8acfe9ef60dd817<br>
presets: Updating presets to improve coding efficiency and speed.<br>
<br>
This commit results in vast improvements in encoding speed and efficiency<br>
for several presests. Most important features are increasing # references<br>
for some presets and enabling limit-refs and limit-mode to limit impact on<br>
speed.<br>
<br>
diff -r 0315c0c389c9 -r df793ec188d2 doc/reST/cli.rst<br>
--- a/doc/reST/cli.rst Thu Dec 17 23:27:58 2015 +0530<br>
+++ b/doc/reST/cli.rst Mon Dec 21 14:11:19 2015 +0530<br>
@@ -685,7 +685,7 @@<br>
(within your decoder level limits) if you enable one or<br>
both of these flags.<br>
<br>
- This feature is EXPERIMENTAL and functional at all RD levels.<br>
+ Default 3.<br>
<br>
.. option:: --limit-modes, --no-limit-modes<br>
<br>
diff -r 0315c0c389c9 -r df793ec188d2 doc/reST/presets.rst<br>
--- a/doc/reST/presets.rst Thu Dec 17 23:27:58 2015 +0530<br>
+++ b/doc/reST/presets.rst Mon Dec 21 14:11:19 2015 +0530<br>
@@ -22,7 +22,7 @@<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| | ultrafast | superfast | veryfast | faster | fast<br>
| medium | slow | slower | veryslow | placebo |<br>
<br>
+=====================+===========+===========+==========+========+======+<br>
========+======+========+==========+=========+<br>
-| ctu | 32 | 32 | 32 | 64 | 64<br>
| 64 | 64 | 64 | 64 | 64 |<br>
+| ctu | 32 | 32 | 64 | 64 | 64<br>
| 64 | 64 | 64 | 64 | 64 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| min-cu-size | 16 | 8 | 8 | 8 | 8<br>
| 8 | 8 | 8 | 8 | 8 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
@@ -36,7 +36,9 @@<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| scenecut | 0 | 40 | 40 | 40 | 40<br>
| 40 | 40 | 40 | 40 | 40 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
-| ref | 1 | 1 | 1 | 1 | 2<br>
| 3 | 3 | 3 | 5 | 5 |<br>
+| ref | 1 | 1 | 2 | 2 | 3<br>
| 3 | 4 | 4 | 5 | 5 |<br>
++---------------------+-----------+-----------+----------+--------+------<br>
+--------+------+--------+----------+---------+<br>
+| limit-refs | 0 | 0 | 3 | 3 | 3<br>
| 3 | 3 | 2 | 1 | 0 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| me | dia | hex | hex | hex | hex<br>
| hex | star | star | star | star |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
@@ -48,6 +50,8 @@<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| amp | 0 | 0 | 0 | 0 | 0<br>
| 0 | 0 | 1 | 1 | 1 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
+| limit-refs | 0 | 0 | 0 | 0 | 0<br>
| 0 | 1 | 1 | 1 | 0 |<br>
++---------------------+-----------+-----------+----------+--------+------<br>
+--------+------+--------+----------+---------+<br>
| max-merge | 2 | 2 | 2 | 2 | 2<br>
| 2 | 3 | 3 | 4 | 5 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| early-skip | 1 | 1 | 1 | 1 | 0<br>
| 0 | 0 | 0 | 0 | 0 |<br>
@@ -66,7 +70,7 @@<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| aq-mode | 0 | 0 | 1 | 1 | 1<br>
| 1 | 1 | 1 | 1 | 1 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
-| cuTree | 0 | 0 | 0 | 0 | 1<br>
| 1 | 1 | 1 | 1 | 1 |<br>
+| cuTree | 1 | 1 | 1 | 1 | 1<br>
| 1 | 1 | 1 | 1 | 1 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
| rdLevel | 2 | 2 | 2 | 2 | 2<br>
| 3 | 4 | 6 | 6 | 6 |<br>
<br>
+---------------------+-----------+-----------+----------+--------+------+<br>
--------+------+--------+----------+---------+<br>
diff -r 0315c0c389c9 -r df793ec188d2 source/common/param.cpp<br>
--- a/source/common/param.cpp Thu Dec 17 23:27:58 2015 +0530<br>
+++ b/source/common/param.cpp Mon Dec 21 14:11:19 2015 +0530<br>
@@ -159,7 +159,7 @@<br>
param->subpelRefine = 2;<br>
param->searchRange = 57;<br>
param->maxNumMergeCand = 2;<br>
- param->limitReferences = 0;<br>
+ param->limitReferences = 3;<br>
param->limitModes = 0;<br>
param->bEnableWeightedPred = 1;<br>
param->bEnableWeightedBiPred = 0;<br>
@@ -279,9 +279,9 @@<br>
param->bEnableWeightedPred = 0;<br>
param->rdLevel = 2;<br>
param->maxNumReferences = 1;<br>
+ param->limitReferences = 0;<br>
param->rc.aqStrength = 0.0;<br>
param->rc.aqMode = X265_AQ_NONE;<br>
- param->rc.cuTree = 0;<br>
param->rc.qgSize = 32;<br>
param->bEnableFastIntra = 1;<br>
}<br>
@@ -296,9 +296,9 @@<br>
param->bEnableWeightedPred = 0;<br>
param->rdLevel = 2;<br>
param->maxNumReferences = 1;<br>
+ param->limitReferences = 0;<br>
param->rc.aqStrength = 0.0;<br>
param->rc.aqMode = X265_AQ_NONE;<br>
- param->rc.cuTree = 0;<br>
param->rc.qgSize = 32;<br>
param->bEnableSAO = 0;<br>
param->bEnableFastIntra = 1; @@ -306,13 +306,11 @@<br>
else if (!strcmp(preset, "veryfast"))<br>
{<br>
param->lookaheadDepth = 15;<br>
- param->maxCUSize = 32;<br>
param->bFrameAdaptive = 0;<br>
param->subpelRefine = 1;<br>
param->bEnableEarlySkip = 1;<br>
param->rdLevel = 2;<br>
- param->maxNumReferences = 1;<br>
- param->rc.cuTree = 0;<br>
+ param->maxNumReferences = 2;<br>
param->rc.qgSize = 32;<br>
param->bEnableFastIntra = 1;<br>
}<br>
@@ -322,8 +320,7 @@<br>
param->bFrameAdaptive = 0;<br>
param->bEnableEarlySkip = 1;<br>
param->rdLevel = 2;<br>
- param->maxNumReferences = 1;<br>
- param->rc.cuTree = 0;<br>
+ param->maxNumReferences = 2;<br>
param->bEnableFastIntra = 1;<br>
}<br>
else if (!strcmp(preset, "fast")) @@ -331,7 +328,7 @@<br>
param->lookaheadDepth = 15;<br>
param->bFrameAdaptive = 0;<br>
param->rdLevel = 2;<br>
- param->maxNumReferences = 2;<br>
+ param->maxNumReferences = 3;<br>
param->bEnableFastIntra = 1;<br>
}<br>
else if (!strcmp(preset, "medium")) @@ -348,6 +345,7 @@<br>
param->subpelRefine = 3;<br>
param->maxNumMergeCand = 3;<br>
param->searchMethod = X265_STAR_SEARCH;<br>
+ param->maxNumReferences = 4;<br>
param->lookaheadSlices = 4; // limit parallelism as already<br>
enough work exists<br>
}<br>
else if (!strcmp(preset, "slower")) @@ -365,6 +363,8 @@<br>
param->subpelRefine = 3;<br>
param->maxNumMergeCand = 3;<br>
param->searchMethod = X265_STAR_SEARCH;<br>
+ param->maxNumReferences = 4;<br>
+ param->limitReferences = 2;<br>
param->bIntraInBFrames = 1;<br>
param->lookaheadSlices = 4; // limit parallelism as already<br>
enough work exists<br>
}<br>
@@ -384,6 +384,7 @@<br>
param->maxNumMergeCand = 4;<br>
param->searchMethod = X265_STAR_SEARCH;<br>
param->maxNumReferences = 5;<br>
+ param->limitReferences = 1;<br>
param->bIntraInBFrames = 1;<br>
param->lookaheadSlices = 0; // disabled for best quality<br>
}<br>
@@ -405,6 +406,7 @@<br>
param->searchMethod = X265_STAR_SEARCH;<br>
param->bEnableTransformSkip = 1;<br>
param->maxNumReferences = 5;<br>
+ param->limitReferences = 0;<br>
param->rc.bEnableSlowFirstPass = 1;<br>
param->bIntraInBFrames = 1;<br>
param->lookaheadSlices = 0; // disabled for best quality<br>
_______________________________________________<br>
x265-devel mailing list<br>
<a href="mailto:x265-devel@videolan.org">x265-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/x265-devel" rel="noreferrer" target="_blank">https://mailman.videolan.org/listinfo/x265-devel</a><br>
_______________________________________________<br>
x265-devel mailing list<br>
<a href="mailto:x265-devel@videolan.org">x265-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/x265-devel" rel="noreferrer" target="_blank">https://mailman.videolan.org/listinfo/x265-devel</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature"><div dir="ltr"><div><div>Deepthi Nandakumar<br></div>Engineering Manager, x265<br></div>Multicoreware, Inc<br></div></div>
</div>