[x265-commits] [x265] rc: fix potential build warning
Steve Borho
steve at borho.org
Tue Jun 10 19:58:39 CEST 2014
details: http://hg.videolan.org/x265/rev/7a3214c9622f
branches: stable
changeset: 7026:7a3214c9622f
user: Steve Borho <steve at borho.org>
date: Thu Jun 05 22:45:03 2014 -0500
description:
rc: fix potential build warning
Subject: [x265] Merge with stable
details: http://hg.videolan.org/x265/rev/e5656f1e1904
branches:
changeset: 7027:e5656f1e1904
user: Steve Borho <steve at borho.org>
date: Thu Jun 05 22:45:25 2014 -0500
description:
Merge with stable
Subject: [x265] preset: improve the speed settings for fast preset.
details: http://hg.videolan.org/x265/rev/0cbc7320c9f2
branches:
changeset: 7028:0cbc7320c9f2
user: Deepthi Nandakumar <deepthi at multicorewareinc.com>
date: Mon Jun 09 11:34:11 2014 +0530
description:
preset: improve the speed settings for fast preset.
Subject: [x265] TComRom: fix fraction part variation in x265_lambda2_tab for higher QPs
details: http://hg.videolan.org/x265/rev/a89e0703e724
branches:
changeset: 7029:a89e0703e724
user: Kavitha Sampath <kavitha at multicorewareinc.com>
date: Tue Jun 10 13:58:30 2014 +0530
description:
TComRom: fix fraction part variation in x265_lambda2_tab for higher QPs
diffstat:
doc/reST/cli.rst | 208 ++--
source/CMakeLists.txt | 2 +-
source/Lib/TLibCommon/CommonDef.h | 2 -
source/Lib/TLibCommon/NAL.h | 79 --
source/Lib/TLibCommon/SEI.h | 55 +-
source/Lib/TLibCommon/TComBitCounter.h | 77 --
source/Lib/TLibCommon/TComBitStream.cpp | 190 ++---
source/Lib/TLibCommon/TComBitStream.h | 138 +--
source/Lib/TLibCommon/TComDataCU.h | 2 +-
source/Lib/TLibCommon/TComLoopFilter.h | 2 +-
source/Lib/TLibCommon/TComMotionInfo.h | 1 -
source/Lib/TLibCommon/TComPattern.h | 2 +-
source/Lib/TLibCommon/TComPic.cpp | 18 +-
source/Lib/TLibCommon/TComPic.h | 5 +-
source/Lib/TLibCommon/TComPicSym.h | 2 +-
source/Lib/TLibCommon/TComPicYuv.h | 2 +-
source/Lib/TLibCommon/TComRom.cpp | 25 +-
source/Lib/TLibCommon/TComRom.h | 4 +-
source/Lib/TLibCommon/TComSampleAdaptiveOffset.h | 2 +-
source/Lib/TLibCommon/TComSlice.cpp | 85 +--
source/Lib/TLibCommon/TComSlice.h | 15 +-
source/Lib/TLibCommon/TComTrQuant.cpp | 12 +-
source/Lib/TLibCommon/TComTrQuant.h | 5 +-
source/Lib/TLibCommon/TComYuv.cpp | 2 +-
source/Lib/TLibCommon/TComYuv.h | 2 +-
source/Lib/TLibEncoder/NALwrite.cpp | 140 ---
source/Lib/TLibEncoder/NALwrite.h | 81 --
source/Lib/TLibEncoder/SEIwrite.cpp | 24 +-
source/Lib/TLibEncoder/SyntaxElementWriter.cpp | 2 +-
source/Lib/TLibEncoder/SyntaxElementWriter.h | 2 +-
source/Lib/TLibEncoder/TEncCu.cpp | 2 +-
source/Lib/TLibEncoder/TEncCu.h | 3 +-
source/Lib/TLibEncoder/TEncEntropy.cpp | 1 -
source/Lib/TLibEncoder/TEncEntropy.h | 1 -
source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h | 1 -
source/Lib/TLibEncoder/TEncSbac.cpp | 5 +-
source/Lib/TLibEncoder/TEncSearch.cpp | 482 ++++++------
source/common/CMakeLists.txt | 2 -
source/common/common.cpp | 3 +-
source/common/common.h | 3 +-
source/common/param.cpp | 3 +
source/common/primitives.cpp | 47 +
source/common/primitives.h | 4 +
source/common/x86/asm-primitives.cpp | 33 -
source/encoder/CMakeLists.txt | 3 +-
source/encoder/api.cpp | 27 +-
source/encoder/cturow.cpp | 4 +-
source/encoder/cturow.h | 1 -
source/encoder/dpb.h | 6 +-
source/encoder/encoder.cpp | 327 ++++----
source/encoder/encoder.h | 26 +-
source/encoder/frameencoder.cpp | 353 +++++----
source/encoder/frameencoder.h | 13 +-
source/encoder/framefilter.cpp | 12 +-
source/encoder/level.cpp | 1 -
source/encoder/level.h | 1 -
source/encoder/nal.cpp | 89 ++
source/encoder/nal.h | 48 +
source/encoder/ratecontrol.cpp | 799 ++++++++++++---------
source/encoder/ratecontrol.h | 124 +-
source/encoder/slicetype.cpp | 606 ++++++++--------
source/encoder/slicetype.h | 111 +-
source/test/testharness.h | 1 -
source/x265.cpp | 3 +
source/x265.h | 12 +-
65 files changed, 2030 insertions(+), 2313 deletions(-)
diffs (truncated from 8255 to 300 lines):
diff -r 93921c0afac5 -r a89e0703e724 doc/reST/cli.rst
--- a/doc/reST/cli.rst Wed Jun 04 19:19:35 2014 +0530
+++ b/doc/reST/cli.rst Tue Jun 10 13:58:30 2014 +0530
@@ -361,19 +361,6 @@ Temporal / motion search options
**Range of values:** an integer from 0 to 32768
-.. option:: --rect, --no-rect
-
- Enable analysis of rectangular motion partitions Nx2N and 2NxN
- (50/50 splits, two directions). Default disabled
-
-.. option:: --amp, --no-amp
-
- Enable analysis of asymmetric motion partitions (75/25 splits, four
- directions). This setting has no effect if rectangular partitions
- are disabled. Even though there are four possible AMP partitions,
- only the most likely candidate is tested, based on the results of
- the rectangular mode tests. Default disabled
-
.. option:: --max-merge <1..5>
Maximum number of neighbor (spatial and temporal) candidate blocks
@@ -384,41 +371,6 @@ Temporal / motion search options
The max candidate number is encoded in the SPS and determines the
bit cost of signaling merge CUs. Default 2
-.. option:: --early-skip, --no-early-skip
-
- Measure full CU size (2Nx2N) merge candidates first; if no residual
- is found the analysis is short circuited. Default disabled
-
-.. option:: --fast-cbf, --no-fast-cbf
-
- Short circuit analysis if a prediction is found that does not set
- the coded block flag (aka: no residual was encoded). It prevents
- the encoder from perhaps finding other predictions that also have no
- residual but require less signaling bits. Default disabled
-
-.. option:: --ref <1..16>
-
- Max number of L0 references to be allowed. This number has a linear
- multiplier effect on the amount of work performed in motion search,
- but will generally have a beneficial affect on compression and
- distortion. Default 3
-
-.. option:: --weightp, -w, --no-weightp
-
- Enable weighted prediction in P slices. This enables weighting
- analysis in the lookahead, which influences slice decisions, and
- enables weighting analysis in the main encoder which allows P
- reference samples to have a weight function applied to them prior to
- using them for motion compensation. In video which has lighting
- changes, it can give a large improvement in compression efficiency.
- Default is enabled
-
-
-.. option:: --weightb, --no-weightb
-
- Enable weighted prediction in B slices. Default disabled
-
-
Spatial/intra options
=====================
@@ -457,6 +409,100 @@ Spatial/intra options
propagation of reference errors that may have resulted from lossy
signals. Default disabled
+Mode decision / Analysis
+========================
+
+.. option:: --rect, --no-rect
+
+ Enable analysis of rectangular motion partitions Nx2N and 2NxN
+ (50/50 splits, two directions). Default disabled
+
+.. option:: --amp, --no-amp
+
+ Enable analysis of asymmetric motion partitions (75/25 splits, four
+ directions). This setting has no effect if rectangular partitions
+ are disabled. Even though there are four possible AMP partitions,
+ only the most likely candidate is tested, based on the results of
+ the rectangular mode tests. Default disabled
+
+.. option:: --early-skip, --no-early-skip
+
+ Measure full CU size (2Nx2N) merge candidates first; if no residual
+ is found the analysis is short circuited. Default disabled
+
+.. option:: --fast-cbf, --no-fast-cbf
+
+ Short circuit analysis if a prediction is found that does not set
+ the coded block flag (aka: no residual was encoded). It prevents
+ the encoder from perhaps finding other predictions that also have no
+ residual but require less signaling bits. Default disabled
+
+.. option:: --weightp, -w, --no-weightp
+
+ Enable weighted prediction in P slices. This enables weighting
+ analysis in the lookahead, which influences slice decisions, and
+ enables weighting analysis in the main encoder which allows P
+ reference samples to have a weight function applied to them prior to
+ using them for motion compensation. In video which has lighting
+ changes, it can give a large improvement in compression efficiency.
+ Default is enabled
+
+.. option:: --weightb, --no-weightb
+
+ Enable weighted prediction in B slices. Default disabled
+
+.. option:: --rd <0..6>
+
+ Level of RDO in mode decision. The higher the value, the more
+ exhaustive the analysis and the more rate distortion optimization is
+ used. The lower the value the faster the encode, the higher the
+ value the smaller the bitstream (in general). Default 3
+
+ Note that this table aims for accuracy, but is not necessarily our
+ final target behavior for each mode.
+
+ +-------+---------------------------------------------------------------+
+ | Level | Description |
+ +=======+===============================================================+
+ | 0 | sa8d mode and split decisions, intra w/ source pixels |
+ +-------+---------------------------------------------------------------+
+ | 1 | recon generated (better intra), RDO merge residual |
+ +-------+---------------------------------------------------------------+
+ | 2 | RDO splits and merge residual choice |
+ +-------+---------------------------------------------------------------+
+ | 3 | RDO mode and split decisions |
+ +-------+---------------------------------------------------------------+
+ | 4 | Adds RDO Quant |
+ +-------+---------------------------------------------------------------+
+ | 5 | Adds RDO prediction decisions, enables intra modes in B slices|
+ +-------+---------------------------------------------------------------+
+ | 6 | Currently same as 5 |
+ +-------+---------------------------------------------------------------+
+
+ **Range of values:** 0: least .. 6: full RDO analysis
+
+.. option:: --psy-rd <float>
+
+ Influence rate distortion optimizations to try to preserve the
+ energy of the source image in the encoded image, at the expense of
+ compression efficiency. 1.0 is a typical value. Default disabled. It
+ only has effect on presets which use full RDO-based decisions (slower,
+ veryslow and placebo)
+
+ **Range of values:** 0 .. 2.0
+
+.. option:: --cu-lossless, --no-cu-lossless
+
+ For each CU, evaluate lossless encode (transform and quant bypass)
+ as a potential rate distortion optimization. If :option:`--lossless`
+ has been specified, all CUs will use this option unconditionally
+ regardless of whether this option was seperately enabled. Default
+ disabled.
+
+.. option:: --signhide, --no-signhide
+
+ Hide sign bit of one coeff per TU (rdo). Default enabled
+
Slice decision options
======================
@@ -535,6 +581,13 @@ Slice decision options
Annex A levels: 1, 2, 2.1, 3, 3.1, 4, 4.1, 5, 5.1, 5.2, 6, 6.1, 6.2
+.. option:: --ref <1..16>
+
+ Max number of L0 references to be allowed. This number has a linear
+ multiplier effect on the amount of work performed in motion search,
+ but will generally have a beneficial affect on compression and
+ distortion. Default 3
+
Quality, rate control and rate distortion options
=================================================
@@ -655,58 +708,6 @@ Quality, rate control and rate distortio
**Range of values:** -12 to 12
-.. option:: --rd <0..6>
-
- Level of RDO in mode decision. The higher the value, the more
- exhaustive the analysis and the more rate distortion optimization is
- used. The lower the value the faster the encode, the higher the
- value the smaller the bitstream (in general). Default 3
-
- Note that this table aims for accuracy, but is not necessarily our
- final target behavior for each mode.
-
- +-------+---------------------------------------------------------------+
- | Level | Description |
- +=======+===============================================================+
- | 0 | sa8d mode and split decisions, intra w/ source pixels |
- +-------+---------------------------------------------------------------+
- | 1 | recon generated (better intra), RDO merge residual |
- +-------+---------------------------------------------------------------+
- | 2 | RDO splits and merge residual choice |
- +-------+---------------------------------------------------------------+
- | 3 | RDO mode and split decisions |
- +-------+---------------------------------------------------------------+
- | 4 | Adds RDO Quant |
- +-------+---------------------------------------------------------------+
- | 5 | Adds RDO prediction decisions, enables intra modes in B slices|
- +-------+---------------------------------------------------------------+
- | 6 | Currently same as 5 |
- +-------+---------------------------------------------------------------+
-
- **Range of values:** 0: least .. 6: full RDO analysis
-
-.. option:: --psy-rd <float>
-
- Influence rate distortion optimizations to try to preserve the
- energy of the source image in the encoded image, at the expense of
- compression efficiency. 1.0 is a typical value. Default disabled. It
- only has effect on presets which use full RDO-based decisions (slower,
- veryslow and placebo)
-
- **Range of values:** 0 .. 2.0
-
-.. option:: --cu-lossless, --no-cu-lossless
-
- For each CU, evaluate lossless encode (transform and quant bypass)
- as a potential rate distortion optimization. If :option:`--lossless`
- has been specified, all CUs will use this option unconditionally
- regardless of whether this option was seperately enabled. Default
- disabled.
-
-.. option:: --signhide, --no-signhide
-
- Hide sign bit of one coeff per TU (rdo). Default enabled
-
Loop filters
============
@@ -862,6 +863,13 @@ Bitstream options
to keep the stream headers for you and you want keyframes to be
random access points. Default disabled
+.. option:: --hrd, --no-hrd
+
+ Enable the signalling of HRD parameters to the decoder. The HRD
+ parameters are carried by the Buffering Period SEI messages and
+ Picture Timing SEI messages providing timing information to the
+ decoder. Default disabled
+
.. option:: --aud, --no-aud
Emit an access unit delimiter NAL at the start of each slice access
diff -r 93921c0afac5 -r a89e0703e724 source/CMakeLists.txt
--- a/source/CMakeLists.txt Wed Jun 04 19:19:35 2014 +0530
+++ b/source/CMakeLists.txt Tue Jun 10 13:58:30 2014 +0530
@@ -19,7 +19,7 @@ include(CheckSymbolExists)
include(CheckCXXCompilerFlag)
# X265_BUILD must be incremented each time the public API is changed
-set(X265_BUILD 21)
+set(X265_BUILD 22)
configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"
"${PROJECT_BINARY_DIR}/x265.def")
configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"
diff -r 93921c0afac5 -r a89e0703e724 source/Lib/TLibCommon/CommonDef.h
--- a/source/Lib/TLibCommon/CommonDef.h Wed Jun 04 19:19:35 2014 +0530
+++ b/source/Lib/TLibCommon/CommonDef.h Tue Jun 10 13:58:30 2014 +0530
@@ -38,8 +38,6 @@
#ifndef X265_COMMONDEF_H
#define X265_COMMONDEF_H
-#include <cstdlib>
-#include "common.h"
#include "TypeDef.h"
//! \ingroup TLibCommon
diff -r 93921c0afac5 -r a89e0703e724 source/Lib/TLibCommon/NAL.h
--- a/source/Lib/TLibCommon/NAL.h Wed Jun 04 19:19:35 2014 +0530
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,79 +0,0 @@
-/* The copyright in this software is being made available under the BSD
- * License, included below. This software may be subject to other third party
- * and contributor rights, including patent rights, and no such rights are
- * granted under this license.
- *
- * Copyright (c) 2010-2013, ITU/ISO/IEC
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- * * Neither the name of the ITU/ISO/IEC nor the names of its contributors may
- * be used to endorse or promote products derived from this software without
- * specific prior written permission.
More information about the x265-commits
mailing list