[x265-commits] [x265] analysis: use only skip costs for recursionDepthCheck
Deepthi Nandakumar
deepthi at multicorewareinc.com
Thu May 19 16:00:45 CEST 2016
details: http://hg.videolan.org/x265/rev/d2de32f15de0
branches:
changeset: 11450:d2de32f15de0
user: Deepthi Nandakumar <deepthi at multicorewareinc.com>
date: Fri May 06 17:30:24 2016 +0530
description:
analysis: use only skip costs for recursionDepthCheck
Also cleanup variable names
Subject: [x265] analysis: introduce recursion skip
details: http://hg.videolan.org/x265/rev/912e46145616
branches:
changeset: 11451:912e46145616
user: Deepthi Nandakumar <deepthi at multicorewareinc.com>
date: Thu May 12 16:55:39 2016 +0530
description:
analysis: introduce recursion skip
Earlier, analysis would exit recursion if a skip was found. This option provides
the ability to control when early exit from recursion needs to be turned on
Subject: [x265] grain: improve grain handling settings
details: http://hg.videolan.org/x265/rev/3e530043698b
branches:
changeset: 11452:3e530043698b
user: Deepthi Nandakumar <deepthi at multicorewareinc.com>
date: Thu May 12 14:53:41 2016 +0530
description:
grain: improve grain handling settings
Turn off SAO, increase psychovisual settings to better retain high frequency
Subject: [x265] cmake: update build (fixes #271)
details: http://hg.videolan.org/x265/rev/ff15c3d11a5c
branches:
changeset: 11453:ff15c3d11a5c
user: Deepthi Nandakumar <deepthi at multicorewareinc.com>
date: Fri May 13 07:44:09 2016 +0530
description:
cmake: update build (fixes #271)
Subject: [x265] cmake: apply -march=i686 for 32bit GCC only if there is no -march in CXXFLAGS (fixes #270)
details: http://hg.videolan.org/x265/rev/bebae72f9db7
branches:
changeset: 11454:bebae72f9db7
user: Ma0 <mateuszb at poczta.onet.pl>
date: Thu May 05 13:05:08 2016 +0200
description:
cmake: apply -march=i686 for 32bit GCC only if there is no -march in CXXFLAGS (fixes #270)
Subject: [x265] remove redudant check
details: http://hg.videolan.org/x265/rev/b7b01cc80075
branches:
changeset: 11455:b7b01cc80075
user: Sagar Kotecha<sagar at multicorewareinc.com>
date: Wed May 11 12:54:28 2016 +0530
description:
remove redudant check
Subject: [x265] presets: disable recursion skip at veryslow and placebo presets
details: http://hg.videolan.org/x265/rev/e5b5bdc3c154
branches:
changeset: 11456:e5b5bdc3c154
user: Deepthi Nandakumar <deepthi at multicorewareinc.com>
date: Sat May 14 07:29:46 2016 +0530
description:
presets: disable recursion skip at veryslow and placebo presets
Further testing to trade recursion-skip off with other options in the remaining presets
Subject: [x265] [x265] docs: edited presets.rst to enable full table to display without horizontal scrolling on readthedocs.org
details: http://hg.videolan.org/x265/rev/28cf9adfc82e
branches:
changeset: 11457:28cf9adfc82e
user: Tom Vaughan <tom.vaughan at multicorewareinc.com>
date: Wed May 18 02:01:34 2016 +0000
description:
[x265] docs: edited presets.rst to enable full table to display without horizontal scrolling on readthedocs.org
Subject: [x265] [x265] docs: fix presets.rst to fit on one page without scrolling
details: http://hg.videolan.org/x265/rev/7241944b3893
branches:
changeset: 11458:7241944b3893
user: Tom Vaughan <tom.vaughan at multicorewareinc.com>
date: Wed May 18 19:25:34 2016 +0000
description:
[x265] docs: fix presets.rst to fit on one page without scrolling
diffstat:
doc/reST/cli.rst | 7 ++
doc/reST/presets.rst | 144 ++++++++++++++++++++++++-------------------
source/CMakeLists.txt | 7 +-
source/common/framedata.cpp | 2 +-
source/common/param.cpp | 10 +++
source/encoder/analysis.cpp | 51 +++++++-------
source/encoder/encoder.cpp | 7 +-
source/x265.h | 6 +-
source/x265cli.h | 3 +
9 files changed, 139 insertions(+), 98 deletions(-)
diffs (truncated from 517 to 300 lines):
diff -r a5362b9533f6 -r 7241944b3893 doc/reST/cli.rst
--- a/doc/reST/cli.rst Wed May 04 21:08:09 2016 +0000
+++ b/doc/reST/cli.rst Wed May 18 19:25:34 2016 +0000
@@ -734,6 +734,13 @@ the prediction quad-tree.
Measure 2Nx2N merge candidates first; if no residual is found,
additional modes at that depth are not analysed. Default disabled
+.. option:: --recursion-skip, --no-recursion-skip
+
+ Measure 2Nx2N merge candidates first; if no residual is found, then
+ do not recurse to higher depths. In rdlevels 4 and lower, additional
+ heuristics such as neighbour costs are used to skip recursion.
+ Default enabled.
+
.. option:: --fast-intra, --no-fast-intra
Perform an initial scan of every fifth intra angular mode, then
diff -r a5362b9533f6 -r 7241944b3893 doc/reST/presets.rst
--- a/doc/reST/presets.rst Wed May 04 21:08:09 2016 +0000
+++ b/doc/reST/presets.rst Wed May 18 19:25:34 2016 +0000
@@ -21,68 +21,80 @@ achieve the best quality at your selecte
The presets adjust encoder parameters as shown in the following table.
Any parameters below that are specified in your command-line will be
changed from the value specified by the preset.
+ 0. ultrafast
+ 1. superfast
+ 2. veryfast
+ 3. faster
+ 4. fast
+ 5. medium **(default)**
+ 6. slow
+ 7. slower
+ 8. veryslow
+ 9. placebo
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| |ultrafast |superfast |veryfast |faster |fast |medium |slow |slower |veryslow |placebo |
-+=================+==========+==========+=========+=======+=====+=======+=====+=======+=========+========+
-| ctu | 32 | 32 | 64 | 64 | 64 | 64 | 64 | 64 | 64 | 64 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| min-cu-size | 16 | 8 | 8 | 8 | 8 | 8 | 8 | 8 | 8 | 8 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| bframes | 3 | 3 | 4 | 4 | 4 | 4 | 4 | 8 | 8 | 8 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| b-adapt | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 2 | 2 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| rc-lookahead | 5 | 10 | 15 | 15 | 15 | 20 | 25 | 30 | 40 | 60 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| lookahead-slices| 8 | 8 | 8 | 8 | 8 | 8 | 4 | 4 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| scenecut | 0 | 40 | 40 | 40 | 40 | 40 | 40 | 40 | 40 | 40 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| ref | 1 | 1 | 2 | 2 | 3 | 3 | 4 | 4 | 5 | 5 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| limit-refs | 0 | 0 | 3 | 3 | 3 | 3 | 3 | 2 | 1 | 0 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| me | dia | hex | hex | hex |hex | hex |star | star | star | star |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| merange | 57 | 57 | 57 | 57 | 57 | 57 | 57 | 57 | 57 | 92 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| subme | 0 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 4 | 5 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| rect | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| amp | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| limit-modes | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| max-merge | 2 | 2 | 2 | 2 | 2 | 2 | 3 | 3 | 4 | 5 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| early-skip | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| fast-intra | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| b-intra | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| sao | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| signhide | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| weightp | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| weightb | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| aq-mode | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| cuTree | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| rdLevel | 2 | 2 | 2 | 2 | 2 | 3 | 4 | 6 | 6 | 6 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| rdoq-level | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 2 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| tu-intra | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 3 | 4 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
-| tu-inter | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 3 | 4 |
-+-----------------+----------+----------+---------+-------+-----+-------+-----+-------+---------+--------+
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| preset | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
++=================+=====+=====+=====+=====+=====+=====+======+======+======+======+
+| ctu | 32 | 32 | 64 | 64 | 64 | 64 | 64 | 64 | 64 | 64 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| min-cu-size | 16 | 8 | 8 | 8 | 8 | 8 | 8 | 8 | 8 | 8 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| bframes | 3 | 3 | 4 | 4 | 4 | 4 | 4 | 8 | 8 | 8 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| b-adapt | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 2 | 2 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| rc-lookahead | 5 | 10 | 15 | 15 | 15 | 20 | 25 | 30 | 40 | 60 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| lookahead-slices| 8 | 8 | 8 | 8 | 8 | 8 | 4 | 4 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| scenecut | 0 | 40 | 40 | 40 | 40 | 40 | 40 | 40 | 40 | 40 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| ref | 1 | 1 | 2 | 2 | 3 | 3 | 4 | 4 | 5 | 5 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| limit-refs | 0 | 0 | 3 | 3 | 3 | 3 | 3 | 2 | 1 | 0 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| me | dia | hex | hex | hex | hex | hex | star | star | star | star |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| merange | 57 | 57 | 57 | 57 | 57 | 57 | 57 | 57 | 57 | 92 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| subme | 0 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 4 | 5 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| rect | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| amp | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| limit-modes | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| max-merge | 2 | 2 | 2 | 2 | 2 | 2 | 3 | 3 | 4 | 5 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| early-skip | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| recursion-skip | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| fast-intra | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| b-intra | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| sao | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| signhide | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| weightp | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| weightb | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| aq-mode | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| cuTree | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| rdLevel | 2 | 2 | 2 | 2 | 2 | 3 | 4 | 6 | 6 | 6 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| rdoq-level | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 2 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| tu-intra | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 3 | 4 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
+| tu-inter | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 3 | 4 |
++-----------------+-----+-----+-----+-----+-----+-----+------+------+------+------+
.. _tunings:
@@ -125,18 +137,24 @@ visual quality. The purpose of this opti
eliminate grain, but prevent noticeable artifacts caused by uneven
distribution of grain. :option:`--tune` *grain* strongly restricts
algorithms that vary the quantization parameter within and across frames.
+Tune grain also biases towards decisions that retain more high frequency
+components.
* :option:`--aq-mode` 0
* :option:`--cutree` 0
* :option:`--ipratio` 1.1
* :option:`--pbratio` 1.0
* :option:`--qpstep` 1
-
+ * :option:`--sao` 0
+ * :option:`--psy-rd` 4.0
+ * :option:`--psy-rdoq` 10.0
+ * :option:`--recursion-skip` 0
+
It also enables a specialised ratecontrol algorithm :option:`--rc-grain`
that strictly minimises QP fluctuations across frames, while still allowing
the encoder to hit bitrate targets and VBV buffer limits (with a slightly
higher margin of error than normal). It is highly recommended that this
-algorithm is used only through the :option:`--tune` *grain* feature.
+algorithm is used only through the :option:`--tune` *grain* feature.
Fast Decode
~~~~~~~~~~~
diff -r a5362b9533f6 -r 7241944b3893 source/CMakeLists.txt
--- a/source/CMakeLists.txt Wed May 04 21:08:09 2016 +0000
+++ b/source/CMakeLists.txt Wed May 18 19:25:34 2016 +0000
@@ -30,7 +30,7 @@ option(STATIC_LINK_CRT "Statically link
mark_as_advanced(FPROFILE_USE FPROFILE_GENERATE NATIVE_BUILD)
# X265_BUILD must be incremented each time the public API is changed
-set(X265_BUILD 83)
+set(X265_BUILD 84)
configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"
"${PROJECT_BINARY_DIR}/x265.def")
configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"
@@ -181,7 +181,10 @@ if(GCC)
add_definitions(-march=native)
endif()
elseif(X86 AND NOT X64)
- add_definitions(-march=i686)
+ string(FIND "${CMAKE_CXX_FLAGS}" "-march" marchPos)
+ if(marchPos LESS "0")
+ add_definitions(-march=i686)
+ endif()
endif()
if(ARM AND CROSS_COMPILE_ARM)
set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm)
diff -r a5362b9533f6 -r 7241944b3893 source/common/framedata.cpp
--- a/source/common/framedata.cpp Wed May 04 21:08:09 2016 +0000
+++ b/source/common/framedata.cpp Wed May 18 19:25:34 2016 +0000
@@ -41,7 +41,7 @@ bool FrameData::create(const x265_param&
for (uint32_t ctuAddr = 0; ctuAddr < sps.numCUsInFrame; ctuAddr++)
m_picCTU[ctuAddr].initialize(m_cuMemPool, 0, param.internalCsp, ctuAddr);
- CHECKED_MALLOC(m_cuStat, RCStatCU, sps.numCUsInFrame);
+ CHECKED_MALLOC_ZERO(m_cuStat, RCStatCU, sps.numCUsInFrame);
CHECKED_MALLOC(m_rowStat, RCStatRow, sps.numCuInHeight);
reinit(sps);
return true;
diff -r a5362b9533f6 -r 7241944b3893 source/common/param.cpp
--- a/source/common/param.cpp Wed May 04 21:08:09 2016 +0000
+++ b/source/common/param.cpp Wed May 18 19:25:34 2016 +0000
@@ -164,6 +164,7 @@ void x265_param_default(x265_param* para
param->bEnableWeightedPred = 1;
param->bEnableWeightedBiPred = 0;
param->bEnableEarlySkip = 0;
+ param->bEnableRecursionSkip = 1;
param->bEnableAMP = 0;
param->bEnableRectInter = 0;
param->rdLevel = 3;
@@ -388,6 +389,7 @@ int x265_param_default_preset(x265_param
param->maxNumMergeCand = 4;
param->searchMethod = X265_STAR_SEARCH;
param->maxNumReferences = 5;
+ param->bEnableRecursionSkip = 0;
param->limitReferences = 1;
param->limitModes = 1;
param->bIntraInBFrames = 1;
@@ -410,6 +412,7 @@ int x265_param_default_preset(x265_param
param->maxNumMergeCand = 5;
param->searchMethod = X265_STAR_SEARCH;
param->bEnableTransformSkip = 1;
+ param->bEnableRecursionSkip = 0;
param->maxNumReferences = 5;
param->limitReferences = 0;
param->rc.bEnableSlowFirstPass = 1;
@@ -461,6 +464,10 @@ int x265_param_default_preset(x265_param
param->rc.aqMode = 0;
param->rc.qpStep = 1;
param->rc.bEnableGrain = 1;
+ param->bEnableRecursionSkip = 0;
+ param->psyRd = 4.0;
+ param->psyRdoq = 10.0;
+ param->bEnableSAO = 0;
}
else
return -1;
@@ -614,6 +621,7 @@ int x265_param_parse(x265_param* p, cons
OPT("max-merge") p->maxNumMergeCand = (uint32_t)atoi(value);
OPT("temporal-mvp") p->bEnableTemporalMvp = atobool(value);
OPT("early-skip") p->bEnableEarlySkip = atobool(value);
+ OPT("recursion-skip") p->bEnableRecursionSkip = atobool(value);
OPT("rdpenalty") p->rdPenalty = atoi(value);
OPT("tskip") p->bEnableTransformSkip = atobool(value);
OPT("no-tskip-fast") p->bEnableTSkipFast = atobool(value);
@@ -1344,6 +1352,7 @@ void x265_print_params(x265_param* param
TOOLVAL(param->psyRdoq, "psy-rdoq=%.2lf");
TOOLOPT(param->bEnableRdRefine, "rd-refine");
TOOLOPT(param->bEnableEarlySkip, "early-skip");
+ TOOLOPT(param->bEnableRecursionSkip, "recursion-skip");
TOOLVAL(param->noiseReductionIntra, "nr-intra=%d");
TOOLVAL(param->noiseReductionInter, "nr-inter=%d");
TOOLOPT(param->bEnableTSkipFast, "tskip-fast");
@@ -1402,6 +1411,7 @@ char *x265_param2string(x265_param* p)
s += sprintf(s, " max-merge=%d", p->maxNumMergeCand);
BOOL(p->bEnableTemporalMvp, "temporal-mvp");
BOOL(p->bEnableEarlySkip, "early-skip");
+ BOOL(p->bEnableRecursionSkip, "recursion-skip");
s += sprintf(s, " rdpenalty=%d", p->rdPenalty);
BOOL(p->bEnableTransformSkip, "tskip");
BOOL(p->bEnableTSkipFast, "tskip-fast");
diff -r a5362b9533f6 -r 7241944b3893 source/encoder/analysis.cpp
--- a/source/encoder/analysis.cpp Wed May 04 21:08:09 2016 +0000
+++ b/source/encoder/analysis.cpp Wed May 18 19:25:34 2016 +0000
@@ -885,7 +885,8 @@ SplitData Analysis::compressInterCU_rd0_
bool mightSplit = !(cuGeom.flags & CUGeom::LEAF);
bool mightNotSplit = !(cuGeom.flags & CUGeom::SPLIT_MANDATORY);
uint32_t minDepth = topSkipMinDepth(parentCTU, cuGeom);
- bool earlyskip = false;
+ bool skipModes = false; /* Skip any remaining mode analyses at current depth */
+ bool skipRecursion = false; /* Skip recursion */
bool splitIntra = true;
bool skipRectAmp = false;
bool chooseMerge = false;
More information about the x265-commits
mailing list