+2014-10-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: emit an Active Parameter Sets SEI in stream headers if
+ interlaced
+
+ The APS is technically required if we're going to be emitting
+ picture timing SEI which we do for HRD and for interlaced inputs.
+ The lack of APS for interlaced content was causing a warning from
+ the HM decoder and on Windows the decoder would later crash.
+ [5e604833c5aa] [1.4] <stable>
+
+2014-10-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix an msvc warning
+ [c369e6a12710]
+
+2014-10-30 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm:
+ asm: AVX2 version luma_vpp[4x4], improve 391c -> 302c
+ [f0f073deb207]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: replace constant table tab_c_512 by pw_512
+ [b39313659e71]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: replace constant table tab_c_128 by pb_128
+ [7bb7f03d3e6b]
+
+2014-10-30 Nicolas Morey-Chaisemartin <nmorey@kalray.eu>
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp:
+ lowres: save intra mode in lowres
+ [7047fec7140a]
+
+2014-10-30 Steve Borho <steve@borho.org>
+
+ * doc/reST/api.rst:
+ doc: make a note about how to ensure the version number is accurate
+ [f807d346663e]
+
+ * source/encoder/encoder.cpp:
+ encoder: fix some obviously incorrect comments
+ [de28d1b07e6f]
+
+ * doc/reST/cli.rst, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ Merge with stable
+ [0f14e29eceb1]
+
+ * source/encoder/encoder.cpp:
+ encoder: give more warnings when features are automatically disabled
+
+ and add comments describing why the combinations are prevented. Some
+ of them are simply impossible, the option would have no affect and
+ so it is best not to pretend it is enabled. Some will not be useful
+ (have a negative impact on performance with no compression
+ improvement). And others are just currently broken and not typically
+ used.
+ [ba3193adff60] <stable>
+
+ * doc/reST/cli.rst, source/common/param.cpp, source/x265.cpp,
+ source/x265.h:
+ api: allow --psy-rdoq values up to 50; it can be beneficial for film
+ grain
+ [73c243602b07] <stable>
+
+ * source/encoder/analysis.cpp:
+ analysis: remove TODO comment, I've given up on the idea
+ [31d648740464]
+
+2014-10-29 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: move m_bestME[] from search to Mode structure
+ [a147b3b6c2f7]
+
+2014-10-29 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, doc/reST/threading.rst, source/x265.h:
+ docs: improve --pmode documentation, the feature is fully functional
+ [9b73a4d2210a] <stable>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: inline checkBestMode(), improve comments
+ [86ca1de606e3]
+
+ * source/encoder/analysis.cpp:
+ Merge with stable
+ [2b7d08c60105]
+
+ * source/test/CMakeLists.txt, source/test/testpool.cpp:
+ cmake: remove obsolete pool test
+ [393eb6c95e7c]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/frameencoder.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: nits - pull Mode out of Search class, remove unused
+ NUM_LAYERS
+ [2bcf4e77b4bf]
+
+ * source/encoder/analysis.cpp:
+ analysis: do not allow top-skip and depth earlyout in --pmode with
+ --rd 5/6
+
+ Now outputs match or are better than those without --pmode
+ [476acb7a4088] <stable>
+
+2014-10-29 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: correct wrong index name
+ [3995c5e0f313] <stable>
+
+2014-10-29 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: clarify --rd 1
+ [2a719b6e07ee]
+
+ * source/encoder/analysis.cpp:
+ analysis: add #if to make pmode exactly match non-pmode
+
+ This switch will throw away the hard work of some worker thread, so
+ it should only be used for debugging.
+
+ With the flag enabled, pmode matches non-pmode output exactly for RD
+ levels 2, 3 and 4. But RD 5 and 6 still have problems.
+ [e92170188568]
+
+ * doc/reST/cli.rst, doc/reST/presets.rst:
+ Merge with stable
+ [31ed48cdbefe]
+
+ * doc/reST/cli.rst, doc/reST/lossless.rst, doc/reST/presets.rst:
+ docs: update preset table and various command line options
+ [812ce345a14d] <stable>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp:
+ Merge with stable
+ [210967feb8c3]
+
+2014-10-30 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/predict.cpp, source/common/predict.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ fix rd=0,1
+ [41220fab15c1] <stable>
+
+2014-10-29 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: nit
+ [27827068b3ec]
+
+2014-10-29 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ api: expose deblocking filter offsets as public params, deprecate
+ --[no-]lft
+
+ It was always a bit unfortunate to base the deblock param name on
+ loop filter when HEVC has two (deblock and SAO).
+
+ Now we support --deblock=<int>:<int> and similar options as x264
+ does
+ [f58a1cc0126a]
+
+ * source/x265.h:
+ api: improve comment for bEnableCbfFastMode
+ [f834d2e8195f]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ search: relocate intra in inter functions to search.cpp
+ [fe3b88e11f44]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp:
+ Merge with stable
+ [f5603998be03]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix for --rd 0, do not assume a CU is only inter or intra
+ [3aec7242d0be] <stable>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: split generateCoeffRecon() into its two callers, improve
+ comments
+
+ The function consisted of a big if (inter) else (intra) expression
+ and it had only two callers, one which knew it was inter and one
+ which knew it was intra.
+ [7c2b831e52fb]
+
+2014-10-29 gopi jayaraman <gopi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: rect cost compare typo fix for pmode
+ [da5ba239bf59] <stable>
+
+2014-10-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: ensure RDOQ entropy state is always initialized for chroma
+ intra
+
+ Fixes non-determinism seen in --preset slow and lower
+ [afb216f71318] <stable>
+
+ * doc/uncrustify/apply-to-all-source.py, doc/uncrustify/drag-
+ uncrustify.bat, source/Lib/COPYING.HM, source/Lib/README.txt,
+ source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/vec/blockcopy-
+ sse3.cpp, source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/predict.cpp, source/encoder/predict.h:
+ Merge with default (prep for 1.4 release)
+ [24b4177ea1ec] <stable>
+
+ * source/encoder/search.cpp:
+ search: trModeC -> tuDepthC
+ [7cfc1edb083f]
+
+ * source/encoder/entropy.cpp:
+ entropy: simplify loadIntraDirModeLuma
+ [42566b53b96d]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: make getIntraRemModeBits() const
+ [c561b0e99684]
+
+ * source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/search.cpp:
+ search: add a fast method for estimating non-MPM intra mode signal
+ cost
+ [9cdc7c61d3fb]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp:
+ search: move getIntraDirLumaPredictor() into getIntraRemModeBits()
+ [9cc367aa2b40]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: use fast-path to get mpm mode signal cost
+
+ inline single caller of getIntraModeBits
+ [5b1d67874dd3]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: make a fast const method for getting MPM mode signal cost
+ [7400828ccd0e]
+
+ * source/encoder/search.cpp:
+ search: simplify checks for 2x2 chroma blocks
+
+ "log2TrSize == 2 && m_csp != X265_CSP_I444" essentially means that
+ the chroma transform would be 2x2, aka log2TrSizeC == 1.
+
+ In offsetSubTUCBFs(), the chroma tu size is not calculated but
+ implied. We should be able to skip the X265_CSP_I444 check since the
+ function should only be called by 4:2:2 encodes that code two half-
+ sized chroma blocks per luma block
+ [90e1b515a364]
+
+ * source/encoder/search.cpp:
+ search: remove redundant work from residualTransformQuantInter()
+ [252f886f4871]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/search.cpp:
+ cudata: split getQuadtreeTULog2MinSizeInCU() into intra/inter
+ functions
+
+ The caller usually knows what the CU prediction mode is
+ [98573a12738d]
+
+ * source/encoder/search.cpp:
+ search: remove redundant logic
+ [689e105ae41f]
+
+ * doc/uncrustify/apply-to-all-source.py, doc/uncrustify/drag-
+ uncrustify.bat:
+ doc: remove uncrustify helper scripts
+
+ I don't expect a lot of whole-new file development or wholesale
+ style enforcement. Leave the config script in place for new
+ developers.
+ [f91c01f6ca83]
+
+2014-10-28 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ [OUTPUT CHANGED for 422] made loops for chroma components in
+ xEstimateResidualQT()
+
+ The output change for 422 is valid. Initially the no. of bits(cbf
+ and coeff.) were calculated per block and per chroma component. Now
+ the no. of bits are calculated per chroma component.
+ [554dd4aad4a0]
+
+2014-10-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.h:
+ search: sync up argument names between source and header
+ [fa79ec52c34d]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: remove x prefixes from inter residual coding functions
+ [da3191896381]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: use Cost instances to accumulate costs in
+ xEstimateResidualQT
+ [efe17882bca5]
+
+ * source/encoder/search.cpp:
+ search: nits
+ [4ad4ba77a339]
+
+ * source/common/cudata.cpp, source/common/cudata.h:
+ cudata: coding style nits
+
+ * reorder arguments so outputs are listed first
+ * pass const by reference
+ * return single integer output rather than pass by reference
+ * A == 0 ? B : C => A ? C : B;
+ * standardized variable names (puIdx, absPartIdx, etc)
+ [4afcdb09550e]
+
+ * source/common/cudata.cpp, source/common/cudata.h:
+ cudata: perform MV scaling directly within POC distance function
+
+ this avoids some code duplication and is also a bit more efficient
+ [59df6b4fe1d7]
+
+ * source/encoder/encoder.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ slicetype: remove top-level Encoder pointer from Slicetype
+
+ Move the slice type assignment earlier to happen even before the
+ picture is given to the lookahead
+ [3ccb20b6c022]
+
+ * source/encoder/encoder.cpp:
+ encoder: nit cleanup of code copying data from input picture
+ [84f4cb50fe46]
+
+ * source/common/cudata.cpp, source/common/deblock.cpp,
+ source/common/frame.h, source/common/predict.cpp,
+ source/common/predict.h, source/common/quant.cpp,
+ source/encoder/analysis.cpp, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/sao.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ fix some header include loops
+ [fd95b6a592ee]
+
+ * source/common/frame.cpp, source/common/frame.h,
+ source/encoder/encoder.cpp:
+ frame: initialize and re-initialize m_bChromaExtended
+
+ fixes some non-determinism
+ [0fc522bebda5]
+
+2014-10-27 Nicolas Morey-Chaisemartin <nmorey@kalray.eu>
+
+ * source/common/param.cpp, source/encoder/encoder.cpp,
+ source/encoder/search.cpp:
+ Set tuQTMaxLog2Size to MIN(5, maxLog2CUSize)
+
+ This allows 32x32 TUs even when --ctu 32 is used, for instance
+ [14388f2a7a88]
+
+ * doc/reST/cli.rst, source/common/param.cpp, source/x265.cpp:
+ Add CLI option to enable/disable Temporal MVP
+ [f6f662559bde]
+
+ * source/CMakeLists.txt, source/common/cudata.cpp,
+ source/common/param.cpp, source/common/slice.h,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/x265.h:
+ Add flag to enable/disable temporal MVP
+ [ef27c0eb2fd6]
+
+2014-10-27 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h:
+ asm: AVX2 version of luma_pp[4x4], improve 320c -> 188c
+ [52ba1fb2227e]
+
+2014-10-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: simplify logic slightly, combine conditionals
+ [d62838b20805]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix a typo in --rd 5 --rect
+ [685127dfd466]
+
+ * source/encoder/analysis.cpp:
+ analysis: allow AMP to work at 64x64 with --pmode and --rd 5
+ [0f71dcb02c59]
+
+ * source/encoder/search.cpp:
+ search: leave a helpful comment to avoid unfortunate reordering
+ [26e1574a5424]
+
+ * source/common/predict.cpp, source/common/predict.h,
+ source/encoder/search.cpp:
+ predict: cache color space dimension shifts, use in search.cpp
+ [c36cfbbb7133]
+
+ * source/encoder/analysis.cpp:
+ analysis: in RD 5/6 ignore redundant merge candidates
+ [f5f26b4b6487]
+
+ * source/encoder/analysis.cpp:
+ analysis: use same MV range check in merge functions
+ [07482bd07946]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp:
+ analysis: defer broadcast sets of merge mv field data until final
+ selection
+
+ The MC / encode functions do not need for the ME sub-parts to be
+ set. This is only needed by later neighbor parts
+ [3d5b73b500d4]
+
+ * source/encoder/search.cpp:
+ search: use member variable from Predict for csp
+
+ There's no need to derefernece the CU for the color space
+ [14ad8ed3792e]
+
+ * source/encoder/entropy.cpp:
+ entropy: nit
+ [3abbf77f3c5a]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: simplify handling of TU size edge case in
+ extractIntraResultChromaQT
+ [bea22ebe6af1]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: fixes for chroma tskip coding with placebo preset
+
+ Move the tskip decision after the special logic that deals with 4x4
+ luma, etc A couple of places where tskip == 0 was implied needed to
+ actually set the flag
+ [453d131f974b]
+
+ * source/encoder/search.cpp:
+ search: trMode -> tuDepth, improve clarity
+ [93a1d11c0a6e]
+
+ * source/common/cudata.h:
+ cudata: remove unused setDepthSubParts
+ [9e74e80f2192]
+
+ * source/common/cudata.h, source/encoder/search.cpp:
+ cudata: setTrIdxSubParts() -> setTUDepthSubParts()
+ [a2d70700d53b]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/common/deblock.cpp, source/common/quant.cpp,
+ source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/search.cpp:
+ cudata: renames (m_depth, m_trIdx) -> (m_cuDepth, m_tuDepth)
+
+ No behavior changes
+ [288db4430fcd]
+
+ * doc/reST/cli.rst:
+ docs: update --tu-intra-depth / --tu-inter-depth docs (refs #71)
+ [654ea07f93de]
+
+ * source/encoder/entropy.cpp:
+ entropy: improve check strings and comments
+ [97ca46e10144]
+
+ * source/encoder/search.cpp:
+ search: further --rd-penalty 2 fixes (refs #71)
+ [b0eaff8d1d1a]
+
+ * source/encoder/analysis.cpp:
+ analysis: invalidate slave entropy contexts, to help find bugs
+
+ this function has no effect in non-checked builds
+ [8fd59b57e5e0]
+
+ * source/encoder/analysis.cpp:
+ analysis: checkIntraInInter_rd0_4() needs the entropy context to be
+ initialized
+ [5a3c867cdf57]
+
+2014-10-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: further work on --pmode for --rd 5/6
+
+ Still needs debugging. The results with --pmode enabled have worse
+ compression than without, when used with --rd 5. That should be un-
+ possible.
+ [69277ae804d0]
+
+2014-10-24 gopi jayaraman <gopi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: adding support for --rd 5/6 in compressInterCU_dist() and
+ parallelModeAnalysis()
+ [9e221c8530bc]
+
+2014-10-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/entropy.cpp:
+ entropy: readability nits
+ [78af768201c7]
+
+ * source/common/common.h:
+ common: add support for debug breaks in Xcode
+ [3e4aee59e21d]
+
+ * source/common/param.cpp:
+ param: fix w-s spacing in log messages for --rdpenalty and chroma
+ offsets
+
+ and some nit fixes with braces while I was in the area
+ [d9ce2644307a]
+
+2014-10-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: motionCompensation(chroma) needs to be performed for
+ asymmetric merge also
+
+ This fixes a bug introduced in commit (372a8230110a) for rd2
+ rect/amp options
+ [1b555ddd7667]
+
+ * source/encoder/motion.cpp:
+ motion: this emms is required
+ [d32f1ad8d061]
+
+ * source/encoder/analysis.cpp:
+ analysis: cleanup
+ [5fd8b40075a6]
+
+2014-10-27 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/cudata.h, source/encoder/frameencoder.cpp:
+ cugeom: fix uninitialized reported by valgrind
+ [3a8f6f685436]
+
+2014-10-25 Steve Borho <steve@borho.org>
+
+ * source/common/cudata.cpp:
+ cudata: validate subCU size against current analysis depth
+ [67d73bffd1fd]
+
+ * source/common/cudata.cpp, source/common/cudata.h:
+ cudata: make sure per-part buffers are allocate for g_maxCUSize
+
+ There are memsets which rely on the data being consecutive, and for
+ this to work they have to be the correct length. This fixes some
+ X265_CHECK failures and possibly some odd behavior with --ctu 32 or
+ --ctu 16
+ [d3a3d6cad8db]
+
+ * source/encoder/search.cpp:
+ search: improve comments in mergeEstimation()
+ [5186635c0536]
+
+ * source/encoder/search.cpp:
+ search: turn some redundant clears of tskip flags into runtime
+ checks
+ [72f2b87c86eb]
+
+ * source/encoder/search.cpp:
+ search: cleanup residualQTIntraChroma
+
+ There was a bug where it was reading tskip before setting it to
+ zero, but fortunately we never allow analysis to set tskip anyway.
+ [4d3797830500]
+
+ * doc/reST/cli.rst:
+ docs: update --tskip and --cu-lossless docs
+ [f81a2cec4183]
+
+ * source/encoder/encoder.cpp:
+ encoder: issue warning and disable --pmode if rdlevel < 2
+ [4e7f9bca6f39]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: remove resiYuv from Mode, keep tmpResiYuv in m_rqt[]
+
+ The residual buffer is always very short lived; there is no reason
+ to keep a copy of it per mode.
+ [08be12894acd]
+
+ * source/encoder/search.h:
+ search: updateCandList() can be a static method
+ [4e8edad1f2e6]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline updateModeCost
+ [e69a8546897a]
+
+ * source/encoder/encoder.cpp:
+ encoder: issue warnings and explicitly disable tskip or culossless
+ if rd < 3
+
+ the analysis code is quite incapable of making these RDO decisions
+ at these RD levels. It's best that these tools never appear to be
+ enabled at these RD RD levels, and to explain why
+ [b2aa1fd68ffa]
+
+ * source/encoder/search.cpp:
+ search: prevent warnings about unused bCheckSplit value
+ [5e8e0e5fb760]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ primitives: remove unused calcrecon primitive (assembly needs
+ cleanup)
+ [daa0e77083a7]
+
+ * source/encoder/analysis.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/motion.cpp, source/encoder/search.cpp,
+ source/encoder/slicetype.cpp, source/encoder/weightPrediction.cpp:
+ trim x265_emms(), try to only use prior to floating point operations
+ [64bb88dc7cb6]
+
+ * source/encoder/search.cpp:
+ search: avoid a context save at the last recursion depth
+ [d7fbf10efe61]
+
+ * source/encoder/search.cpp:
+ search: improve comments and readability of
+ residualTransformQuantIntra
+ [58545ea1f6af]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: keep recon QT in pixels, instead of shorts
+
+ This changes outputs, apparently because SSE is now comparing fenc
+ against the clipped recon instead of the un-clipped recon. This was
+ punishing residuals which were close to the pixel dynamic range
+ limits. The user never sees un- clipped pixels, and external
+ distortion metrics always use clipped recon, so it makes sense to do
+ the same here (never mind the obvious perf benefits)
+ [567491c02bf7]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: remove tskip analysis out of luma chroma normal path
+ [1ea467c9bb22]
+
+ * source/encoder/search.cpp:
+ search: nit. splitted is not a word
+ [794bf8c060d4]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: rename methods that read coeff and recon from RQT struct at
+ final depths
+
+ also reorder arguments and pass reconYuv as a reference
+ [69ee86fd7284]
+
+ * source/encoder/search.cpp:
+ search: give offsetSubTUCBFs a basic comment
+ [67ae716977fd]
+
+2014-10-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: simplify RDO chroma intra coding, changes tskip outputs
+
+ Since the TU layers above tskip's 4x4 are not encoding their
+ residual (they only need distortion, not RD cost) there is no reason
+ to try to preserve the entropy coder state. This gives slightly
+ better compression than before, when tskip is enabled, and I believe
+ it makes the code a lot more maintainable.
+ [2261ad40ffe8]
+
+2014-10-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: simplify initTrDepth
+ [ddafaee9bf39]
+
+ * source/encoder/search.cpp:
+ search: reconYuv as ref
+ [f97c6f14a975]
+
+ * source/encoder/search.cpp:
+ search: improve a variable name
+ [b51aceca9bd8]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: rename a couple chroma intra helper methods
+ [6f964d4cc8ef]
+
+2014-10-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: rename tmpCoeff to coeffRQT, tmpShortYuv to reconQtYuv /
+ resiQtYuv
+
+ Explain why these buffers are allocated to max CU size at every
+ layer, fix a few nits
+ [847c45521c19]
+
+ * source/encoder/search.cpp:
+ search: fix 4:2:2 chroma tskip bit-cost estimation
+ [0fc9c36d0c92]
+
+ * source/common/yuv.cpp, source/common/yuv.h:
+ yuv: add copyPartToPart* methods for recon RQT finalization
+
+ We're switching reconQt to be kept in pixels rather than shorts
+ [d918b786a3e6]
+
+ * source/common/shortyuv.cpp, source/common/shortyuv.h:
+ shortyuv: use absPartIdx for CU/TU part offset like everywhere else
+ [0922d96a74a6]
+
+2014-10-24 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/pixel-util8.asm:
+ weight_sp: pshufd to handle width 6 for SSE version of asm code
+
+ Backout of 2cb8cdaa7df5
+ [1a07740f85f5]
+
+2014-10-24 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/search.cpp:
+ search: refactored xEstimateResidualQT() to remove cbf flag settings
+ [759c6cbf54fa]
+
+ * source/encoder/search.cpp:
+ search: remove redundant cbf flags setting in xEstimateResidualQT()
+ [363bd8ef6c6b]
+
+2014-10-24 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/quant.cpp:
+ quant.cpp: nits
+ [5f0838850cb5]
+
+2014-10-24 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: remove unnecessary set of cbf flags in xEstimateResidualQT()
+ [a0c07b8e583b]
+
+2014-10-23 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: add -Wno-array-bounds if the compiler supports it
+
+ These warnings have proven to always be spurious
+ [e3a3d17b821c]
+
+2014-10-23 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ [OUTPUT CHANGED for 444] : considering cbf bits for best cost
+ estimation for 444 format
+ [cfa3750f72a5]
+
+2014-10-23 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: cleanup checkInter functions
+ [daed2d3f67ba]
+
+ * source/encoder/analysis.cpp:
+ analysis: remove unnecessary set of skip flags in checkInter_rd5_6()
+
+ initSubCU() does this already, and the pred's cu is not being reused
+ [79f0d5f296ef]
+
+ * source/common/quant.cpp, source/common/quant.h,
+ source/encoder/analysis.cpp, source/encoder/encoder.cpp,
+ source/encoder/search.cpp, source/encoder/search.h:
+ search: large mostly mechanical change to pass cu by reference
+ [b2005914aeb7]
+
+ * source/common/cudata.h:
+ cudata: remove unused method
+ [260eee4634a5]
+
+ * source/common/predict.cpp, source/common/predict.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ predict: enforce calling conventions, fix wrong side-effects
+
+ use references and consts where possible, order arguments to follow
+ the convention of memcpy (dest, src)
+
+ This exposed a bug in addWeightBi() and addWeightUni(), they were
+ modifying the PU size variables directly instead of making chroma
+ versions. This explains why it seemed to best necessary at times to
+ make seemingly redundant calls to prepMotionCompensation.
+
+ as a side-effect, this commit also removes the 1k 'avg' buffer that
+ bidir allocated on the stack and instead uses the existing
+ tmpPredYuv
+ [ff804d8ab03d]
+
+ * source/common/predict.cpp, source/common/predict.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ predict: rename members for clarity, save work in
+ singleMotionEstimation()
+
+ The first thing singleMotionEstimation() did was call
+ getPartIndexAndSize() to get the PU part index and dimensions. Then
+ it called prepMotionCompensation() which did the exact same thing,
+ storing its outputs into member variables. (after predInterSearch()
+ had already done it twice as well)
+
+ Now singleMotionEstimation() and predInterSearch() both directly use
+ the variables initialized by prepMotionCompensation(). Now when the
+ master thread calls its own singleMotionEstimation(), there is much
+ less redundant work
+ [c942de89cbed]
+
+ * source/encoder/search.cpp:
+ search: fix a change of outputs from f3bd6e5a880a, always zero
+ unused refs
+
+ it's not clear why this affects outputs, but it seems better to err
+ on the side of the data being initialized.
+ [8ac590040e8c]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: re-combine --pme with --no-pme code paths
+ [f8ee24fbbede]
+
+ * source/common/cudata.cpp, source/common/cudata.h:
+ cudata: cache numPartInCUSize as a class static
+
+ The obliviates a lot of pointer dereferences in some key functions
+ [2763d49b2e23]
+
+ * source/encoder/entropy.cpp:
+ entropy: drop last use of g_winUnitX, g_winUnitY
+ [77210e81c4ad]
+
+ * source/common/cudata.cpp, source/common/deblock.cpp,
+ source/common/framedata.cpp, source/common/framedata.h,
+ source/common/predict.cpp, source/common/slice.h,
+ source/encoder/encoder.cpp:
+ slice: move numPartitions and numPartInCUSize from FrameData to SPS
+
+ these fields never change, so it made no sense to have copies in
+ every FrameData they are based on CTU size, so SPS made sense
+ [17c5d2cc1335]
+
+ * source/common/cudata.h:
+ cudata: remove default arguments for getPUAboveRightAdi(),
+ getPUBelowLeftAdi()
+ [077015265a08]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/common/framedata.cpp, source/encoder/analysis.cpp:
+ cudata: simplify allocation / initialization interfaces
+
+ the callers shouldn't need to know details about partitions or coeff
+ buffer sizes
+ [ebaeb6aa5dda]
+
+ * source/encoder/search.cpp:
+ search: use intptr_t for picture stride variables
+ [fa3e1744f125]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/frameencoder.cpp:
+ cudata: push more data type casts out to callers
+ [bb5814a49de5]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp:
+ cudata: use static array of absolute depth broadcast set functions
+
+ this commit changed the value arguments to these set functions to
+ match the data type of their array, forcing one cast in analysis.cpp
+ to avoid a warning.
+ [f593e0455cbc]
+
+2014-10-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: encodeResidue rewrite, much improved --rd 0
+
+ it's not clear --rd 0 is always correct, but I can encode long clips
+ without hash mistakes and at reasonable bitrates (compared to
+ previous --rd 0). I suspect there is still problems with passing in
+ residual to residualTransformQuantInter() and getting it back in the
+ same ShortYuv instance
+ [bd865dd464bc]
+
+ * source/common/frame.cpp, source/common/frame.h,
+ source/common/framedata.h, source/common/quant.cpp,
+ source/common/quant.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/search.cpp:
+ nr: move noise reduction arrays to Quant, simplify its upkeep
+
+ This cleans up a number of layering violations and makes the array
+ management more robust
+ [ce304756a6e4]
+
+ * source/CMakeLists.txt, source/Lib/COPYING.HM, source/Lib/README.txt,
+ source/Lib/TLibCommon/ContextTables.h, source/common/CMakeLists.txt,
+ source/common/contexts.h, source/common/quant.cpp,
+ source/common/quant.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ cleanup enough of the context tables to bring them into common/
+
+ This was the last file under Lib/ so the whole folder is now
+ removed.
+ [fd03d43c1a97]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TypeDef.h, source/common/CMakeLists.txt,
+ source/common/common.cpp, source/common/common.h,
+ source/common/constants.cpp, source/common/constants.h,
+ source/common/cudata.cpp, source/common/cudata.h,
+ source/common/dct.cpp, source/common/deblock.h,
+ source/common/intrapred.cpp, source/common/ipfilter.cpp,
+ source/common/loopfilter.cpp, source/common/param.cpp,
+ source/common/picyuv.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/quant.h,
+ source/common/scalinglist.cpp, source/common/shortyuv.h,
+ source/common/slice.h, source/common/vec/dct-sse3.cpp,
+ source/common/vec/dct-sse41.cpp, source/common/vec/dct-ssse3.cpp,
+ source/common/x86/asm-primitives.cpp, source/common/yuv.h,
+ source/encoder/bitcost.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/motion.cpp,
+ source/encoder/search.cpp, source/encoder/slicetype.cpp,
+ source/test/ipfilterharness.cpp, source/test/mbdstharness.cpp:
+ pull TComRom into common/constants. bring CommonDef and TypeDefs
+ into various
+
+ A number of enums were pulled into cudata.h, one went to slice.h.
+ All the defines went into common.h
+ [bddf8ccf4c94]
+
+ * source/common/cudata.cpp:
+ cudata: nits, use m_encData directly
+ [63cb0c68d0c0]
+
+ * source/encoder/search.h:
+ search: use proper allocation size for m_rqt, fix --preset placebo
+
+ The entropy contexts need to be addressed from 0..4 (full depth)
+ even if the buffers are only allocated to CU depth 0..3
+ [a09b45ead8e0]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix --rd 1,2 behavior (broken by 84933c3136ec)
+
+ Also includes some fixes for --rd 0
+ [372a8230110a]
+
+ * source/common/cudata.cpp:
+ cudata: avoid 'char subscript' warnings from GCC
+ [6716ce0bb043]
+
+ * source/common/framedata.cpp, source/common/framedata.h,
+ source/encoder/encoder.cpp:
+ framedata: param is now unused
+ [01e865efd595]
+
+ * source/common/frame.cpp, source/common/framedata.cpp,
+ source/common/framedata.h, source/common/slice.h,
+ source/encoder/encoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/ratecontrol.cpp:
+ slice: move numCUsInFrame from FrameData to SPS
+ [9b55f47f2043]
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ framefilter: optimize row-height operations
+ [a485e3377861]
+
+ * source/common/cudata.cpp, source/common/frame.cpp,
+ source/common/frame.h, source/common/picyuv.cpp,
+ source/common/picyuv.h, source/common/slice.cpp,
+ source/common/slice.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h,
+ source/encoder/ratecontrol.cpp, source/encoder/reference.cpp,
+ source/encoder/sao.cpp, source/encoder/search.cpp,
+ source/encoder/slicetype.cpp, source/encoder/weightPrediction.cpp:
+ slice: move numCuInWidth, numCuInHeight to SPS, remove Frame pointer
+
+ Since the SPS defines the picture size and CTU size, it makes sense
+ to keep these values there. It's a bit annoying removing m_frame
+ from Slice, but all of its users didn't really want the frame
+ itself, except in a couple instances (most already had the frame
+ pointer)
+ [fe8200af773f]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/common/deblock.cpp, source/common/predict.cpp,
+ source/encoder/framefilter.cpp:
+ cudata: keep a FrameData pointer instead of a Frame pointer
+
+ 90% of the dereferences of m_frame were to access
+ m_frame->m_encData. For good reason, all of the encode data needed
+ by the CU is in m_encData. A few places need to get to the orig pic.
+ [57f9b1f41b0c]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/frameencoder.cpp:
+ cudata: pass picWidth and picHeight to calcCTUGeoms()
+
+ this was the only method which used m_frame for anything other than
+ accessing m_encData
+ [5d4828d1b706]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp:
+ cudata: simplify setQPSubCUs()
+ [7b87661b8fef]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ cudata: consistent names for consistent functionality
+ [19f79fa18526]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ cudata: no need to pass part size to setAll*, it can look it up
+ itself
+
+ It only needed the part size in the past when these were
+ TComCUMvField methods and they had no access to the part size array
+ [c55083482d74]
+
+ * source/encoder/search.cpp:
+ search: use helper function to set transform depth
+ [583484b4a5e7]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/search.cpp:
+ cudata: simplify clearCbf()
+ [59a39ac95108]
+
+ * source/common/cudata.cpp, source/common/cudata.h:
+ cudata: hoist a number of trivial functions to cudata.h for inlining
+ [3a4708b0116c]
+
+ * source/common/common.h, source/common/cudata.h,
+ source/common/frame.h:
+ cudata: clean up a couple defines
+ [fa10e7328429]
+
+ * source/encoder/search.cpp:
+ search: remove unnecessary parens
+ [2c42168b58b8]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ cudata: remove depth argument to setInterDirSubParts()
+
+ Inter dir is coded at the PU level, so it is always at the current
+ depth
+ [9430c148eb87]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/common/CMakeLists.txt, source/common/cudata.cpp,
+ source/common/cudata.h, source/common/deblock.cpp,
+ source/common/framedata.cpp, source/common/framedata.h,
+ source/common/predict.cpp, source/common/predict.h,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/entropy.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ cudata: merge motion field data directly into the CUData
+
+ TComCUMvField didn't add anything except overhead
+ [dbfa9c03d8a3]
+
+ * source/Lib/TLibCommon/TComMotionInfo.h, source/common/cudata.cpp,
+ source/common/cudata.h, source/encoder/analysis.cpp,
+ source/encoder/search.h:
+ mvfield: move TComMvField into cudata as MVField
+
+ The structure is only used for collecting merge candidates now, and
+ does not need any constructor
+ [b7ca971f2a57]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h:
+ mvfield: combine mv buffers into a single allocation
+ [bbe34d78a627]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/encoder/analysis.cpp,
+ source/encoder/search.cpp:
+ mvfield: remove unnecessary depth arguments to set functions
+
+ mv and refidx are CU level data, not TU level, so there is never any
+ need to set the values for a depth other than 0. Remove support for
+ NxN parts from the switch statement, made the template function
+ protected
+ [62f736e7ca47]
+
+ * source/encoder/search.cpp:
+ search: nits
+ [6da134a66e0f]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/encoder/analysis.cpp,
+ source/encoder/search.cpp:
+ mvfield: remove setAllMvField wrapper
+
+ When you see how the code unwound, certain optimizations may become
+ possible
+ [cdbb818ed024]
+
+ * source/Lib/TLibCommon/TComMotionInfo.h, source/common/cudata.cpp:
+ mvfield: remove setMvField() method
+ [c1453d40d1cf]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/common/cudata.cpp,
+ source/common/cudata.h, source/common/framedata.cpp,
+ source/encoder/analysis.cpp:
+ mvfield: pass objects by reference, const when possible
+ [d5d7033e1a04]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/common/cudata.cpp:
+ cudata: replace clearMvField() with m_partSet calls
+ [4831aa891f00]
+
+ * source/common/cudata.cpp:
+ cudata: copy mvfield data from CTU in copyFromPic (more --rd 0
+ fixes)
+ [b0c6b3a9ccf4]
+
+ * source/encoder/entropy.cpp:
+ entropy: remove only reference to TComCUMvField outside of cudata.h
+ [564f07d41a6e]
+
+ * source/encoder/search.cpp:
+ search: avoid unnecessary memcopies in inter prediction
+
+ Calling setAllMvField() twice is wasteful. At least one, perhaps
+ both, of them will be overwritten by the final prediction. Better to
+ set the REF_NOT_VALID manually for uni-predition on the 'other'
+ list.
+ [f3bd6e5a880a]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/common/cudata.cpp,
+ source/encoder/search.cpp:
+ defs: remove last traces of REF_PIC_LIST enums, NOT_VALID ->
+ REF_NOT_VALID
+ [ed57e2e5c2b6]
+
+ * source/Lib/TLibCommon/TComMotionInfo.h, source/common/cudata.cpp:
+ mvfield: remove getRefIdx and getMvd access methods
+ [7b94b7de0af5]
+
+ * source/Lib/TLibCommon/TComMotionInfo.h, source/common/cudata.cpp,
+ source/common/deblock.cpp, source/common/predict.cpp:
+ mvfield: remove getMv access method
+ [eec157891d46]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/encoder/analysis.cpp:
+ mvfield: remove default arguments, use consistent variable names,
+ cleanup
+ [a453285d756d]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/encoder/entropy.cpp,
+ source/encoder/search.cpp:
+ mvfield: class to struct, remove setMvd method
+ [7b17ecc90937]
+
+ * doc/reST/cli.rst:
+ docs: improve documentation for tskip options
+ [8aa71d43db99]
+
+ * source/encoder/search.cpp:
+ search: fix --rdpenalty 2, make logic explicit (closes #71)
+ [ca0090c8fc69]
+
+2014-10-21 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: avx2 asm code for 8bpp and 16bpp vesion of scale1D_128to64
+ module
+ [47095aafe91a]
+
+2014-10-21 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/pixel-util8.asm:
+ weight_sp: sse version of asm code optimization
+ [2cb8cdaa7df5]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ weight_pp: avx2 asm code as per new interface
+ [b6bd42615b37]
+
+2014-10-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp:
+ fix checked build errors
+ [61ce6f790f25]
+
+ * source/common/picyuv.cpp, source/common/picyuv.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h:
+ picyuv: cache offset arrays in the top-level encoder
+
+ All PicYuv generated for a given encoder would generate the same
+ offset arrays, so they might as well all point to the same memory
+ [3465ef1eb7fc]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp:
+ cudata: add a helper function for not-present CUs
+ [f8c3748eb24d]
+
+ * source/common/cudata.h:
+ cudata: comment nits
+ [7a2b895d7577]
+
+ * source/encoder/search.cpp:
+ search: move auto var initialization to avoid goto warning
+ [884bb04709a4]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/common/deblock.cpp, source/common/quant.cpp,
+ source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/search.cpp:
+ cudata: consistent naming rules for part data (singular, no b prefix
+ for flags)
+ [943ebf4f2cf4]
+
+ * source/common/cudata.cpp:
+ cudata: cleanup copy methods, fill in missing copies in
+ copyFromPic()
+ [70cb93a0fc26]
+
+ * source/common/cudata.h:
+ cudata: reorder and white-space nits
+ [ea81e3999545]
+
+ * source/common/cudata.cpp, source/common/cudata.h:
+ cudata: inline single caller of getPartPosition
+ [2e5df75752c4]
+
+ * source/common/cudata.h:
+ cudata: consistent use of absPartIdx
+ [bdffb50ff2fd]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp:
+ cudata: remove unused setCUTransquantBypassSubParts
+ [708b65ea888d]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/framefilter.cpp:
+ cudata: m_cuTransquantBypass will not be set without lossless being
+ enabled
+ [19baf4ddfe2f]
+
+ * source/common/cudata.cpp:
+ cudata: nits
+ [e4fcdc4f802a]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ cudata: define copy and broadcast set methods
+
+ Pruned a couple of functions which were only called once and were
+ redundant or could have been done more simply.
+ [196c2544685b]
+
+ * source/common/cudata.cpp, source/common/cudata.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ cudata: simplify setPartSizeSubParts and friends
+
+ These fields are always broadast-set to all sub-parts of the CU
+ [668dbdd70654]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/CMakeLists.txt,
+ source/common/cudata.cpp, source/common/cudata.h,
+ source/common/deblock.cpp, source/common/deblock.h,
+ source/common/framedata.cpp, source/common/framedata.h,
+ source/common/predict.cpp, source/common/predict.h,
+ source/common/quant.cpp, source/common/quant.h,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/sao.cpp,
+ source/encoder/search.cpp, source/encoder/search.h:
+ bring TComDataCU into common/ as CUData
+ [a560d44d2cbd]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/predict.cpp,
+ source/common/predict.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/search.cpp, source/encoder/search.h:
+ rebrand CU/cuData as CUGeom/cuGeom
+ [b7503f180eb4]
+
+ * source/encoder/encoder.cpp:
+ encoder: improve comment, frame encoders to not use the worker pool
+ [34c830359f33]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: pre-calculate the set of unique geoms for the picture
+ size
+
+ Now the geom sets only need to be calculated once, and they occupy a
+ minimum amount of memory.
+ [fe480c4b66be]
+
+ * source/encoder/frameencoder.h:
+ frameencoder: group pointer members together for better alignment
+ [ca1be14a7d81]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: nits
+ [d76b2094d5e6]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: use memset in setQPSubParts()
+ [0f452547704c]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ cu: inline single use of setSubPart into setInterDirSubParts
+ [50d30aaa9823]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: remove unused enum NDBFBlockBorderTag
+ [902fdb066b70]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: repair original intent of getLastCodedQP(), fix 73c6c9086577
+ [8ea4c8a389cd]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp:
+ cu: remove m_cuLocalData from CU, use child offsets instead of
+ absolute indices
+
+ This commit also removes a redundant
+ 'tld.analysis.m_quant.setQPforQuant()' from frameencoder.cpp. This
+ belonged in compressCTU() and was actually one of the first things
+ it does.
+ [411149951603]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/frameencoder.cpp:
+ cu: pass m_cuLocalData to loadCTUData()
+
+ This is prep-work for removing m_cuLocalData from TComDataCU and
+ having only a few instances of the array.
+ [13d410a45434]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: style nits, no behavior change
+ [8ab3817fcf97]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: m_qtTempCoeff[ttype][qtLayer] ->
+ m_rqt[qtLayer].tmpCoeff[ttype]
+ [f7f4d9b59430]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: m_qtTempShortYuv[qtlayer] -> m_rqt[layer].tmpShortYuv
+
+ one less malloc to fail
+ [5a3e8a4a51de]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: move inter search temp Yuv buffers into RQTData
+
+ This makes their allocation (and stride) per depth, which is
+ hopefully a little more cache friendly
+ [062c06517722]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: rename m_rdContexts to m_rqt since its purpose has expanded
+ [1d3b861ff5bb]
+
+2014-10-21 gopi jayaraman <gopi@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: --pme bug fixes with slave threads tie up case
+ [f5fc662b07cb]
+
+2014-10-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: move the destroy() method to after initSearch()
+ [60633acf5a3a]
+
+ * source/common/frame.cpp:
+ frame: initialize m_reconPicYuv pointer
+ [4cff05a46557]
+
+2014-10-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: make split choice logic cleaner
+ [e66f78a6df4f]
+
+ * source/encoder/search.cpp:
+ search: rename variables to mightSplit and mightNotSplit
+ [b507a636f7e6]
+
+2014-10-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: use small struct to accumulate costs
+ [535b9ca17dd3]
+
+ * source/encoder/search.cpp:
+ search: remove shadow variable
+ [06f5d1594eca]
+
+ * source/encoder/search.cpp:
+ search: improve comments
+ [dad2c503c21e]
+
+ * source/encoder/search.cpp:
+ search: avoid redundant work in typical path
+ [0dd4b62f7331]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single caller of xGetIntraBitsLuma, avoid extra
+ copies
+ [ce76838b769f]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single call of calcIntraLumaRecon
+
+ This allows some much needed clarity and to avoid some redundant
+ work
+ [791d9a3ad651]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: rename xRecurIntraCodingQT to codeIntraLumaQT, save a bit of
+ work
+ [2cb88ddefc43]
+
+ * source/encoder/search.cpp:
+ search: combine xRecurIntraCodingQT() bCheckFull sections
+ [8eae86316959]
+
+ * source/encoder/search.cpp:
+ search: add tmpBits to xRecurIntraCodingQT
+ [4a0498664e3f]
+
+ * source/encoder/search.cpp:
+ search: remove remnants of tqbypass from xRecurIntraCodingQT,
+ improve var names
+ [f81c1e3a8788]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: create a per-depth temp buffer for temporary recon blocks
+ [9642b0dc0798]
+
+ * source/encoder/search.cpp:
+ search: fix --rdpenalty=2 at --rd 0,1
+
+ It needed the same fix for not skipping 32x32 if TU recursion is too
+ restricted
+ [0995d74b9b9c]
+
+ * source/encoder/search.cpp:
+ search: use member variable access to current slice and frame, not
+ the cu's
+ [8d170703b186]
+
+ * doc/reST/cli.rst, source/encoder/search.cpp:
+ search: clarify --rdpenalty
+ [d0725a830b8d]
+
+ * source/encoder/search.cpp:
+ search: simplify checkTransformSkip logic
+
+ drop !!qp condition, this doesn't appear necessary. we already check
+ for TQ bypass
+ [6df8c27c184a]
+
+ * source/encoder/encoder.cpp:
+ encoder: make assignments to Frame::m_intraData and m_interData
+ unconditional
+
+ The check doesn't help anyone. If pic_in->analysisData.intraData was
+ NULL, the Frame fields are entirely uninitialized.
+ [b874ac8f5427]
+
+ * source/encoder/search.cpp:
+ search: remove redundant clearCbf call
+
+ The logic would not get here if cu->getQtRootCbf(0) didn't return
+ zero, which implies all three CBF flags are already zero
+ [5f15e0a7ce9a]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ search: move checkIntra from Analysis to Search
+
+ This function didn't belong in Analysis
+ [42bc2e852217]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: rename xSetResidualQTData to saveResidualQTData and simplify
+ [7c5713ba1712]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: do not return CBF=0 distortion from xEstimateResidualQT()
+
+ it can be calculated easily if needed
+ [1882fb0d0d53]
+
+ * source/encoder/analysis.cpp:
+ analysis: nit
+ [3fad706c702e]
+
+ * doc/reST/cli.rst:
+ doc: update description of --cu-lossless
+ [e16426ff0679]
+
+ * source/encoder/analysis.cpp:
+ analysis: do not try lossless if best mode had no distortion
+ [eb284bc32580]
+
+ * source/encoder/analysis.cpp:
+ analysis: copy inter prediction when evaluating lossless
+ [60bf2a917454]
+
+2014-10-20 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix error in vbv due to access of unreferenced refFrame data
+ [6d1b8b8c0d7a]
+
+2014-10-20 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm,
+ source/encoder/reference.cpp, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp, source/test/pixelharness.cpp:
+ weighted prediction pixel, interface simplification
+ [b2f534e54325]
+
+2014-10-20 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: share the depth, best modes and partitions based on cuAddr
+ - bug fix
+ [87515a42e79c]
+
+2014-10-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: clear transform skip flags in lossless CU copy
+ [18d9c6d2f212]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: re-order part data defines to match allocation order (nit)
+ [562f844b8f5a]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/search.cpp:
+ analysis: try lossless encode of only the best mode for each CU
+
+ This involved some subtle changes in behavior. TComDataCU::initCTU
+ and initSubCU now initialize m_cuTransquantBypass to the global
+ --lossless flag, so in the first pass of analysis it will always be
+ all non-lossless (typical) or all lossless (when --lossless is
+ enabled).
+
+ Before this change, when "--cu-lossless and !--lossless" the encoder
+ would try both lossless and non-losseless coding of every option
+ evaluated for RDO. This roughly doubled the work performed by the
+ encoder, and because the same TComDataCU instance was being used for
+ both, it was fragile
+
+ After this change, the encoder will only try lossless once per CU
+ using the best mode found during non-lossless RDO, using a seperate
+ TComDataCU instance.
+ [cf127f22ef3b]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: --pme needs master instance to be passed to slave function
+
+ The slave was read its own m_listSelBits instead of those pre-
+ computed by the master, and then even worse it was updating its own
+ m_bestME (holding its own output lock) instead of the master's.
+ [5179bb833cea]
+
+ * source/encoder/analysis.cpp:
+ analysis: nits
+ [c02dda2693b9]
+
+ * source/encoder/analysis.cpp:
+ analysis: only call checkDQP once per CU, use a consistent reconPic
+ write policy
+ [089e256fb32a]
+
+2014-10-20 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: cleanup
+ [7eab67ffff81]
+
+2014-10-20 Steve Borho <steve@borho.org>
+
+ * source/common/framedata.cpp, source/common/framedata.h:
+ framedata: add pointer to active param structure for that picture
+
+ today, this is always the single global param. in the future it may
+ be different
+ [c15bb6a0d01f]
+
+2014-10-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/framedata.h,
+ source/encoder/analysis.cpp, source/encoder/frameencoder.cpp:
+ cu: move more statistics into FrameData
+ [32b5ab08cb51]
+
+ * source/encoder/search.cpp:
+ search: nit
+ [1e09d0395826]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix for --rd 0, always generate chroma prediction for best
+ merge
+ [75e42b9db526]
+
+2014-10-20 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.h, source/common/pixel.cpp:
+ pixel: add signed accumulators, these were causing errors in new
+ primitives
+ [d24d7c1a43f5]
+
+ * source/encoder/analysis.cpp:
+ analysis: split flag cost is added only if the depth is less than
+ max depth
+
+ removes (some) CHECKED_BUILD errors.
+ [d1cd4a753d9e]
+
+2014-10-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: add emergency intra check for --pmode
+
+ if all other choices somehow fail, we should always be able to code
+ intra
+ [9da983792c7d]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: handle non-present CUs correctly when collecting stats
+ [b575d5bf01e8]
+
+ * source/encoder/analysis.cpp:
+ analysis: handle no-valid-merge more cleanly, simplify
+ compressInterCU_rd0_4
+
+ checkMerge2Nx2N_rd0_4() will set md.bestMode if any of them were
+ valid, else it will be left NULL. Fixes some rare decoder asserts
+ when no valid modes is coded
+ [84933c3136ec]
+
+2014-10-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix error message
+ [a480618a85a3]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: use curEncData.m_numCUsInFrame
+
+ Note that the CU count was wrongly calculated before as height *
+ height, broken by me a couple days ago in 14d5345e257a
+ [426a279be2b8]
+
+ * source/common/framedata.cpp, source/common/framedata.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp:
+ framedata: change 'structure of arrays' to 'array of structures' for
+ RC stats
+
+ This uses fewer mallocs, fewer memsets, and generally better data
+ locality. It doesn't hurt that the code is more readable.
+ [6a5d1543b769]
+
+ * source/common/frame.cpp, source/common/frame.h,
+ source/common/framedata.cpp, source/common/framedata.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp:
+ frame: move rate control data to FrameData, cleanup variable names
+ [16cf099c8a78]
+
+ * source/common/framedata.cpp:
+ framedata: fix license header
+ [3810e534830c]
+
+ * source/encoder/framefilter.cpp, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: move lossless sample restoration functions to framefilter.cpp
+
+ These are only called by the framefilter code, and are not directly
+ related to SAO itself.
+ [99fccc2a5063]
+
+2014-10-15 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/common.h, source/encoder/frameencoder.cpp,
+ source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: refine sao merge mode
+ [f38d218c62d4]
+
+2014-10-17 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: removed redundant context store
+ [0a94dccf7c9a]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/search.cpp:
+ search: removed redundant getAllowedChromaDir function call
+ [15a7b8d0698e]
+
+2014-10-18 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/common/param.cpp,
+ source/encoder/analysis.cpp:
+ analysis: allow --b-intra to work with RD levels < 5 (no behavior
+ change)
+
+ This changes no existing presets. This flag used to default to be
+ on, but it was ignored at RD levels 0..4. Now it defaults to off,
+ but is enabled by all the presets that use RD 5 and 6. This commit
+ re-orders the tools log line to place similar options near each
+ other
+ [b9e3cec471c7]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: use -Wno-uninitialized, to avoid confusing clang or older GCC
+ [66687fc129ff]
+
+2014-10-17 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: do not enable fast CBF at faster presets (no behavior change)
+
+ This flag has never had any effect at the RD levels these presets
+ use, so this never had any effect, except showing 'cfm' in the
+ logged tools list.
+ [6e7567637dcb]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix --pmode crash, do not look at intra results if not
+ P_SLICE
+ [0123cf455f17]
+
+ * doc/reST/cli.rst, source/encoder/analysis.cpp,
+ source/encoder/analysis.h:
+ analysis: allow --amp to actually work with RD levels < 5
+
+ This changes none of the presets or defaults, it just allows
+ --preset medium --rect --amp to perform as the user would expect
+ [ff8fb2e06847]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/encoder.cpp:
+ analysis: don't pass global variables to create methods
+ [03f5fcca39be]
+
+ * source/encoder/analysis.cpp:
+ analysis: nits
+ [8bc599ad83ea]
+
+ * source/encoder/analysis.cpp:
+ analysis: consistent use of subPartIdx
+ [e089d34046d5]
+
+ * source/encoder/analysis.cpp:
+ analysis: streamline parallelModeAnalysis
+ [807ef6c02d64]
+
+ * source/common/predict.cpp, source/common/predict.h:
+ predict: keep ref indices, rather than mvField pointers
+ [3f100d527ab3]
+
+ * source/common/CMakeLists.txt:
+ cmake: remove source group for TLibCommon/ in MSVC
+
+ Allow the remaining files to be grouped with the rest of common/ for
+ now
+ [73ed4c1d2387]
+
+ * source/test/CMakeLists.txt, source/test/testharness.h:
+ cmake: newer GCC/MinGW define __rdtsc and do not like our
+ redefinition
+ [b6eb92d35ccb]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: quiet -Wmaybe-uninitialized warnings in encoder/
+
+ gcc >= 4.8 is catching false positives from Clip3
+ (std::min<>(std::max<>)) when the arguments are all known at compile
+ time. Just shut-up, please.
+ [c818548cf7c1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h, source/common/CMakeLists.txt,
+ source/common/deblock.cpp, source/common/frame.cpp,
+ source/common/frame.h, source/common/framedata.cpp,
+ source/common/framedata.h, source/common/piclist.cpp,
+ source/common/predict.cpp, source/common/slice.cpp,
+ source/encoder/analysis.cpp, source/encoder/dpb.cpp,
+ source/encoder/dpb.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/sao.cpp, source/encoder/search.cpp,
+ source/encoder/slicetype.cpp, source/encoder/weightPrediction.cpp:
+ pull TComPicSym into common/ as FrameData
+
+ Document the nature in how these are reused by multiple pictures.
+ Frame::m_picSym was renamed to Frame::m_encData to make the
+ relationship more clear.
+ [f3ede27baeee]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h, source/common/deblock.cpp,
+ source/common/lowres.h, source/common/picyuv.cpp,
+ source/common/picyuv.h, source/common/pixel.cpp,
+ source/common/predict.cpp, source/common/predict.h,
+ source/common/primitives.h, source/common/slice.cpp,
+ source/encoder/analysis.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/sao.cpp, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp:
+ picsym: remove trivial access methods, cleanup
+
+ Remove redundant data, use intptr_t more consistently for picture
+ strides. Yuv stride can stay as int, the strides are never more than
+ 64 bytes. Use uint32_t for block counters
+
+ Rename getCU() as getPicCTU() for clarity
+ [14d5345e257a]
+
+ * source/common/picyuv.cpp:
+ picyuv: fix 16bpp warning
+ [7cccfdf67502]
+
+2014-10-17 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: avx2 assembly code for 16bpp version of transpose(8, 16, 32 and
+ 64)
+ [f590933a138a]
+
+2014-10-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: actually count numRefs, combine depth counters
+ [53f8765fadbd]
+
+ * source/encoder/analysis.cpp:
+ analysis: further simplify top-skip math
+
+ By multiplying both sides by (cuData.numPartitions >> 2) the dynamic
+ range of the algorithm is increased by up to 8 bits. Removing the
+ intermediate value allow the combination of the two conditional
+ expressions
+ [0829d64dd762]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix msvc warnings
+ [5eb2916cc8ed]
+
+ * source/encoder/analysis.cpp:
+ analysis: prevent redundant recon work for --rd 3 and 4
+ [daf4e836f261]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: cleanup getPartIndexAndSize()
+ [56fe32e3b7eb]
+
+2014-10-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: fix for --rd 0, it does not generate recon (just
+ prediction)
+ [6b0b2b6cd3b5]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: split --pmode into its own recursive analysis function
+
+ This simplifies compressInterCU_rd0_4() and allows us to limit
+ --pmode to sane rd levels 2, 3, and 4.
+ [90fffd9a337f]
+
+ * source/encoder/analysis.cpp:
+ analysis: it should only be necessary to copy recon when not split
+ [bad798574b22]
+
+ * source/encoder/analysis.cpp:
+ analysis: combine stat collections at the end of CU analysis
+ [c53f9f7df61e]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: move recursion early-out logic to a helper function
+ [6e772638b9e3]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: move topSkip into a helper function
+
+ This will allow us to break up compressInterCU_rd0_4
+ [774ab320f9c9]
+
+ * source/encoder/analysis.cpp:
+ analysis: simplify addSplitFlagCost slightly
+ [35c589d92f51]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix typo in addSplitFlagCost
+ [d5777c2b4179]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/encoder/entropy.cpp:
+ cu: remove trivial getCtxInterDir()
+ [f33aad115fa1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ cu: cleanup more copy and init methods
+ [79a8b694ae25]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/frameencoder.cpp:
+ cu: streamline initCTU and initSubCU
+ [cb5875b1e89f]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/frameencoder.cpp:
+ cu: rename initCU() to initCTU()
+ [d7496c92aa33]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/frameencoder.cpp:
+ cu: pass initial QP to initCU
+ [cfe4c070c59d]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/search.cpp:
+ cu: remove merge index wrappers, document how mvp idx is reused
+ [2febbee05401]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ cu: remove unused isFirstAbsZorderIdxInDepth
+ [b0c8b1ab5603]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/entropy.cpp,
+ source/encoder/search.cpp:
+ cu: remove m_mvpIdx access methods
+ [d790ac5a2ed9]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ cu: store each CU's data sequentially in memory
+
+ This should be more cache friendly
+ [9d489eb535d3]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: use consistent absPartIdx for PU offset
+ [44d321c78d21]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/search.cpp:
+ cu: remove m_lumaIntraDir access methods
+ [776da39f9999]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/entropy.cpp,
+ source/encoder/search.cpp:
+ cu: remove m_chromaIntraDir access methods
+ [71d6ff5b0e09]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/entropy.cpp:
+ cu: remove interDir access methods
+ [c46d2e9e43ef]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: white-space cleanups
+ [c9978e9f94dd]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: make setSubPart protected, group getSCUAddr() with encode helper
+ functions
+ [ff8a34e35d8d]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/search.cpp:
+ cu: remove m_bMergeFlags access methods
+ [72b5cc8ea5f7]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/search.cpp:
+ cu: remove m_cbf access methods
+ [2cd6eec80775]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/common/quant.cpp, source/encoder/entropy.cpp,
+ source/encoder/search.cpp:
+ cu: remove m_trIdx access methods
+ [404a8abfbad5]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/common/predict.cpp, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/search.cpp:
+ cu: remove m_log2CUSize access methods
+ [fc42e88982af]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/quant.cpp,
+ source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/search.cpp:
+ cu: remove m_predModes access methods
+ [9f51ef2afdc6]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp:
+ cu: remove m_skipFlag access methods
+ [99315bb8142c]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/entropy.cpp,
+ source/encoder/search.cpp:
+ cu: remove m_transformSkip access methods
+ [cdeaea376021]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/common/quant.cpp, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/search.cpp:
+ cu: remove m_cuTransquantBypass access methods
+ [b8938daa0e69]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/search.cpp:
+ cu: remove m_partSizes access methods, rename copyCodedToPic() to
+ updatePic()
+ [263c8b73b7aa]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: remove wrong or useless comments
+ [e44ce1d54da3]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ cu: remove x prefixes
+ [c16837999997]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/common/quant.cpp, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/search.cpp:
+ cu: remove m_qp access methods
+ [f1064a18fd1d]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/sao.cpp,
+ source/encoder/search.cpp:
+ cu: remove m_depth access methods
+ [ba3862977dfc]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/search.cpp:
+ cu: remove getCUMvField
+ [6c7bee958e2a]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/search.cpp:
+ cu: remove trivial access methods for m_trCoeff
+ [47ea715be755]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/encoder/search.cpp:
+ cu: unify array data types to uint8_t, group like methods together
+ [a17e618c20cc]
+
+ * source/encoder/search.cpp:
+ search: use pre-calculated partSize
+ [bedbad51e3de]
+
+ * source/encoder/rdcost.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ Merge
+ [59096255eafe]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: add sa8dBits field to avoid conflict with RDO's totalBits
+ [7db432da4269]
+
+ * source/encoder/frameencoder.cpp:
+ frameEncoder: fix eoln
+ [15fd6c844410]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: getBlkBits uses no data members, could be a static method
+ [323876f98fbf]
+
+ * source/encoder/search.cpp:
+ analysis: rename variables for consistency
+ [78a112dc65fd]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix cut-paste bug in early-out code
+ [71173ff67162]
+
+ * source/common/frame.cpp:
+ frame: m_totalBitsPerCTU must be allocated even if AQ is disabled
+ [9d4b9867a685]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix for --rd 0 check failure
+ [643c6dc10f99]
+
+2014-10-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ Merge
+ [96c144bf9b3f]
+
+ * source/encoder/analysis.cpp:
+ analysis: minimal documentation for RD levels
+ [8fe07f3a2311]
+
+ * source/encoder/analysis.cpp:
+ analysis: --rd 1 needs reconYuv to be copied from sub-cu
+ [abc464814a26]
+
+ * source/encoder/analysis.cpp:
+ analysis: --rd 1 needs reconYuv to be copied to reconPic
+ [9e623a96246a]
+
+ * source/encoder/analysis.cpp:
+ analysis: move temp array out of conditional
+
+ Keeping a pointer to a stack array is not well defined behavior.
+ Renamed buf_trans to bufTrans, also
+ [3930ee35b182]
+
+ * source/encoder/analysis.cpp:
+ analysis: only --rd 0 should use encodeResidue()
+ [ea7d008b9457]
+
+ * source/encoder/analysis.cpp:
+ analysis: at --rd 1, split and best modes only have sa8d cost
+ [6861366e673f]
+
+ * source/encoder/analysis.cpp:
+ analysis: do not call checkDQP() for --rd 0, the CU is not encoded
+ [ec1595bc8a76]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix hash mistakes at --rd 2
+
+ Do not re-encode merge blocks, as we learned with --rd 6 this does
+ not work without re-initializing skip flags. But since the CU was
+ already coded once there is no need to repeat the work.
+ [6d8bb90381fd]
+
+ * source/common/shortyuv.h, source/common/yuv.h:
+ yuv: short descriptions
+ [3d8d0dcd1ef9]
+
+ * source/common/yuv.cpp, source/common/yuv.h:
+ yuv: consistent variable naming for clarity
+
+ absPartIdx is always the part index (in zorder) of a CU/PU/TU within
+ a CTU
+ [e6892e7c73bc]
+
+ * source/common/yuv.cpp, source/common/yuv.h:
+ yuv: inline addClip sub-functions
+ [632305ea202e]
+
+ * source/common/yuv.h:
+ yuv: nit
+ [2f1d633afec4]
+
+ * source/common/shortyuv.h:
+ shortyuv: remove width argument to getChromaAddrOffset
+ [a66f34e6bcd7]
+
+ * source/common/predict.cpp, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/common/yuv.cpp,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ shortyuv: take only a single size (width == height)
+ [bfd27a43b034]
+
+ * source/common/shortyuv.cpp, source/common/shortyuv.h:
+ shortyuv: remove m_height and m_cheight
+ [d60c862b9ae1]
+
+ * source/common/yuv.h:
+ yuv: nits
+ [84c610604cc0]
+
+ * source/common/yuv.cpp, source/common/yuv.h:
+ yuv: remove width argument to getChromaAddrOffset
+ [469c92ffccd3]
+
+ * source/common/predict.cpp, source/common/shortyuv.cpp,
+ source/common/yuv.cpp, source/common/yuv.h,
+ source/encoder/analysis.cpp, source/encoder/search.cpp:
+ yuv: take only single size (width == height)
+ [171267587546]
+
+ * source/encoder/encoder.cpp:
+ encoder: ensure TLD.nr is initialized
+ [829ebca8ff0c]
+
+ * source/common/yuv.cpp, source/common/yuv.h:
+ yuv: remove m_height and m_cheight
+ [058fb0238cb5]
+
+ * source/common/yuv.cpp, source/common/yuv.h:
+ yuv: remove unused clear() method
+ [8a1563987a01]
+
+ * source/common/frame.cpp, source/common/frame.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ rc: fix for ABR behavior - we need frame->m_totalBitsPerCTU to
+ replace CU stats
+
+ m_totalBitsPerCTU always needs to be allocated and filled in with
+ the total bit size of each CU, for VBV and non-VBV modes to function
+ correctly
+ [ff1123105f64]
+
+ * source/common/common.h, source/common/frame.cpp,
+ source/common/frame.h, source/common/quant.cpp,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ Merge
+ [999815f31962]
+
+2014-10-13 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: avx2 assembly code for 8bpp version of transpose(8, 16, 32 and
+ 64)
+ [51416472d14c]
+
+2014-10-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: add a couple TODO comments
+ [0161608f481a]
+
+ * source/encoder/search.cpp:
+ search: make encodeResAndCalcRdInterCU() a bit more readable
+ [7bb09720f59c]
+
+ * source/encoder/search.cpp:
+ search: fix one obviously wrong psy-rd check
+
+ If measuring psy cost of CBF=0, you measure fenc against pred, not
+ against zero
+ [ae8bbb881b9e]
+
+ * source/encoder/search.cpp:
+ search: remove I slice checks from encodeResAndCalcRdInterCU
+
+ We do not call this function for I slices, and it already checks for
+ it
+ [b78070d1eb47]
+
+ * source/encoder/search.cpp:
+ search: fix initial value of bCodeDQP in encodeResAndCalcRdInterCU
+ [6c9b28899c8f]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single caller of getInterSymbolBits()
+
+ the code now uses temp vars instead of modifying the mode costs
+ directly, since the final mode costs are set at the end of this
+ function
+ [9d435b9a76ad]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single caller of xLoadIntraResultChromaQT
+ [47761a49a3cf]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single caller of xLoadIntraResultQT
+ [1c9566ae8dae]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single caller of xEncIntraHeaderLuma
+ [27b996ccb80b]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single caller of xEncIntraHeaderChroma
+ [532a9a6f4713]
+
+ * source/encoder/search.cpp:
+ search: reorder xRecurIntraChromaCodingQT() for clarity
+ [bcc8b4f42f53]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: inline single callers of xGetIntraBitsChroma and
+ xGetIntraBitsQTChroma
+ [983e96789f5e]
+
+ * source/encoder/sao.cpp:
+ sao: fix eoln
+ [d27721f55ea5]
+
+ * source/common/common.h:
+ common: fix eoln, fix merge bug
+ [a30d82d4d2e7]
+
+ * Merge
+ [badc6dec6b34]
+
+2014-10-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRom.h, source/common/common.h,
+ source/encoder/frameencoder.cpp:
+ noiseReduction: replace magic values with readable names
+ [961240f1ac16]
+
+2014-10-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicSym.cpp, source/encoder/analysis.cpp,
+ source/encoder/sao.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ cu-lossless: remove redundant lossless buffer
+
+ The pixel values in lossless mode can be obtained from the original
+ yuv buffer itself.
+ [207d1e432240]
+
+2014-10-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: match old merge analysis behavior at --rd 5,6
+ [8ecb949326f9]
+
+ * source/encoder/analysis.h:
+ analysis: reorder prediction modes for easier initialization at RD
+ <= 4
+ [2542439de2e6]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/frameencoder.cpp:
+ cu: make CU's frame pointer const, so it's clearly read-only to CU
+ logic
+
+ Required passing a non-const Frame pointer to compressCTU, which is
+ fine since the frame encoder by definition owns the non-const
+ object.
+ [82f22df1bb64]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/common/predict.cpp, source/common/predict.h,
+ source/encoder/entropy.cpp, source/encoder/search.cpp:
+ cu: make CU's slice pointer const, so its clearly read-only to CU
+ logic
+ [fb8b65d7812f]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/search.cpp:
+ cu: return merge candidate count from getInterMergeCandidates()
+
+ do not set by reference
+ [18dbef3d92ea]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix --rd 6 hash mistakes, clear skip flags between merge
+ candidates
+ [12a5dfb5bfb9]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: inline deriveTestModeAMP
+ [b0df34295958]
+
+ * source/encoder/analysis.cpp:
+ analysis: uhm, try that again
+ [f5c3121f88b4]
+
+ * source/encoder/analysis.cpp:
+ analysis: checkIntra() is used by all slice types now
+ [6ed24d5e4a64]
+
+ * source/encoder/search.cpp:
+ search: minor cleanups
+ [842c664c64ad]
+
+2014-10-13 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: simplify addSplitFlagCost(), encode split flag with mode's
+ context
+ [c025b698a2d5]
+
+ * source/encoder/analysis.cpp:
+ analsys: add split flag cost to the split prediction (--rd 5/6)
+ [4ec03ab5a463]
+
+ * source/encoder/search.cpp:
+ search: nits, remove debug memsets
+ [609cbaffdd9b]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp:
+ nits
+ [2e6bccf560f5]
+
+ * source/encoder/analysis.cpp:
+ analysis: split out more logic for rdlevel 0 & 1
+
+ Eventually rdlevels 0 and 1 would have a different compress function
+ from rdlevels 2, 3 and 4 since they have much different logic around
+ split and cost decisions. But the first step should be to pull the
+ topSkip and avgCost into helper functions that could be used by both
+ functions (to avoid duplicating those features, which I expect will
+ get lots of attention in the comming weeks)
+ [898b47f1082f]
+
+ * source/encoder/analysis.cpp:
+ analysis: re-introduce RD level 0 intra hack
+
+ It didn't have a comment before, so I didn't understand its purpose.
+ Placing up a level and adding a comment makes it more clear
+ [64e516e6d865]
+
+2014-10-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: add a helper function to deal with split flag bits
+
+ we can reasonably do something smart based on RD level in a
+ consistent manner.
+ * for high RD levels, we can account for split flag context states
+ * For low RD levels, we just increment bit counters
+
+ this fixes the fact that the skip flag must be considered in the
+ mvBits stat since all other bits are considered coeff bits. This
+ should help 2-pass slightly
+ [ff2142620928]
+
+ * source/encoder/analysis.h:
+ analysis: remove unused m_initialContexts
+ [9d2b67812d19]
+
+ * source/encoder/analysis.h, source/encoder/frameencoder.h:
+ analysis: move StatisticLog to frameencoder.h
+ [817192eda811]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: add attributions for myself
+ [0024124be46a]
+
+ * source/encoder/analysis.cpp:
+ analysis: remove redundant pointer check
+ [5461beda34e4]
+
+ * source/encoder/search.cpp:
+ search: fix variable name shadow warnings
+ [4be77cb8bbea]
+
+ * source/common/slice.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/sao.cpp,
+ source/encoder/sao.h, source/encoder/search.h:
+ Merge
+ [20644db535dd]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ analysis: clarify and fix CTU stats logging, move to frame encoders
+ [60bf1877612d]
+
+ * source/encoder/analysis.cpp:
+ analysis: if avoiding skip analysis for lossless encodes, set max
+ rdcost
+ [825cd3ca0495]
+
+ * source/encoder/analysis.cpp:
+ analysis: consistent naming of MC PU part index, try not to use temp
+ CU pointers
+
+ Pointers to 'bestCU' tend to cause bugs; best to dereference
+ md.bestMode->cu directly in case the pointer moves. The compiler is
+ good about caching derefs
+ [c12b3abd8d92]
+
+ * source/encoder/analysis.cpp:
+ analysis: merge only ever has one part, within checkMerge2Nx2N_rd0_4
+ [b3fdd6dcf8b6]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h:
+ cu: fix sub-cu pel positioning
+
+ The cuData.encodeIdx already included the sub-part offset during
+ splits (there is one cuData instance per sub-part, not per depth).
+ So it was wrong to pass the partUnitIdx to the next recursion depth.
+
+ It was only being used at the next depth to pass to initSubCU()
+ which used it to calculate the relative pixel offsets from the
+ parent CU. But in the new code the parent CU is now the parent CTU,
+ and so the pel offsets must be calculated relative from the CTU pel
+ positions. This is what the g_zscanToPel? tables are for.
+ [c50ae2a64cd9]
+
+ * source/encoder/analysis.cpp:
+ analysis: remove a temp variables used in only one place
+ [1192a7e45953]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: remove useless numPartition variable from copyPartFrom()
+ [75e389fd9b3e]
+
+ * source/encoder/analysis.cpp:
+ analysis: simplify handling of not-present sub-cus
+ [f8c0d8f0cc71]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: m_bEncodeDQP should never have been a member variable
+
+ The value should always be initialized to m_slice->m_pps->bUseDQP
+ prior to calling m_entropyCoder.codeCoeff(), and then allow that
+ function to modify it as it recurses.
+ [d08c691b11ad]
+
+ * source/common/frame.cpp:
+ frame: fix uninitialized pointer
+ [06235f8119ca]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp:
+ cu: make TComDataCU::copyPartFrom() take a const ref, cleanup
+
+ this function did not need to copy m_cuAbove and friends
+ [69ae969b5d04]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/sao.cpp:
+ cu: remove getLumaOrigYuv() access methods
+ [88cec6cb806f]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ analysis: more ref religion
+ [44dacb1a44de]
+
+ * source/encoder/analysis.cpp:
+ analysis: use m_slice consistently, not the pointer in the CU
+ [5b15e657ace9]
+
+ * source/encoder/analysis.cpp:
+ analysis: simplify encodeIntraInInter
+ [ee7eb64c1c9c]
+
+ * source/encoder/search.cpp:
+ search: minor cleanups and comment improvements
+ [2e3c07bd52db]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: white space and comment nits, initSubCU() no longer inits CTU
+ costs
+ [e2eea276e6b5]
+
+ * source/encoder/analysis.cpp:
+ analysis: give the splitCU the correct partition index (0..3)
+
+ this doesn't currently affect outputs, but it is definitely more
+ correct
+ [c7561cbb7b0f]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/frame.cpp,
+ source/common/frame.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ cu: move cost variables from TComDataCU to Mode
+
+ we use md.bestMode != NULL to determine if no best mode has been
+ found yet, so we do not have to initialize costs to MAX_INT64 to
+ simulate that condition. Hopefully this is more robust.
+
+ this changes outputs, in a very good way, so I think this fixed a
+ hidden bug or two
+ [6bf0d3f1c93d]
+
+ * source/common/yuv.h:
+ yuv: nit
+ [7b2c95729183]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ analysis: settle on fencYuv for 'frame being encoded' or 'original
+ pixels'
+
+ there was no point in analysis and search having different names for
+ the same pixels. this patch moves responsibility of filling fencYuv
+ to the caller in a consistent basis
+ [6f7f54438424]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp:
+ cu: remove access methods for neighbor CTUs
+ [37c229d6f8cc]
+
+ * source/encoder/analysis.cpp:
+ analysis: fixes for --pmode and --rect with --rd 0..4
+ [c8b4c9be2559]
+
+ * source/encoder/analysis.cpp:
+ analysis: initCU() is only necessary for picSym CTUs, not analysis
+ CUs
+ [c218dd4a4c71]
+
+2014-10-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ analysis: move fillOrigYUVBuffer to Search
+
+ it is not really an analysis functions, it is a coding function
+ [d1f8ae7710d4]
+
+ * source/encoder/analysis.cpp:
+ analysis: fixes for merge/skip behavior at --rd 6, improve clarity
+ [f44a21cae332]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix precendence problem in split logic
+ [8778bf23678b]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix a couple of obvious --rd 6 bugs
+ [4728d78c0f4d]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix --rd 2 crash, only check intra for P slices
+ [633056237fb2]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: greatly simplify checkMerge2Nx2N_rd5_6
+ [aef32e8b25c1]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: fix comments
+ [d82691c50f7a]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: pass merge and skip modes to merge analysis functions
+
+ It was a layering violation for these functions to access md.pred[]
+ themselves
+ [e573d484cd33]
+
+ * source/encoder/analysis.h:
+ analysis: PRED_NxN is no more
+ [f4aba985d261]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: nit rename
+ [083138d1dce1]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: most merge shared intra path into the main path
+
+ The overhead for the nominal I frame path is one NULL pointer check
+ per CU
+ [8f77003f3f33]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: remove checkIntraInInter_rd5_6(), it is the same as
+ checkIntra now
+ [e5d3c1eba674]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ analysis: move parallel ME from Analysis to Search
+ [489614317ca8]
+
+2014-10-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: pass mode to xIntraCodingLumaBlk
+ [f397acd9d822]
+
+ * source/common/CMakeLists.txt, source/common/predict.cpp,
+ source/common/predict.h, source/encoder/CMakeLists.txt,
+ source/encoder/predict.cpp, source/encoder/predict.h:
+ move predict.cpp and predict.h to common/
+
+ they don't need any encoder structures
+ [49c3dd1cad1e]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: reorder arguments to xIntraCodingChromaBlk for clarity
+ [4698e9d56cc4]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: pass mode to getBestIntraModeChroma
+ [d178113b3111]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: do not pass fencYuv to residualTransformQuantIntra
+ [6abf5ed381d7]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: do not pass fencYuv to xIntraCodingChromaBlk
+ [dc3be2051459]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: do not pass fencYuv to xRecurIntraChromaCodingQT
+ [2b49010309c5]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: do not pass fencYuv to xEstimateResidualQT()
+ [2f0020df9464]
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComRom.h, source/common/CMakeLists.txt,
+ source/encoder/analysis.cpp, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/search.cpp,
+ source/encoder/search.h, source/test/intrapredharness.cpp:
+ predict: merge intra prediction helper routines into Predict
+ [7505862f3220]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: do not pass fencYuv to xRecurIntraCodingQT()
+ [031eeb5ab33f]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: return distortion from main intra coding functions
+
+ This is much cleaner than magically incrementing the CU variables
+ within these functions. Leave some comments for future work
+ [2c9b47e8f5ba]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: fix a comment
+ [bbd23323e465]
+
+ * source/encoder/search.cpp:
+ search: use absPartIndex for sub-CU indexing
+ [c57651640ca8]
+
+ * source/encoder/analysis.cpp:
+ analysis: nits
+ [8419f83fe8e2]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: merge sharedEstIntraPredQT with estIntraPredQT
+ [e90faaac6e4a]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: do not pass fencYuv to sharedEstIntraPredQT() and
+ estIntraPredChromaQT()
+ [d9e76daff312]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: do not pass fencYuv to estIntraPredQT()
+ [4adb8b6c440b]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: do not pass fencYuv to encodeResAndCalcRdSkipCU()
+ [7cc8d78543e2]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: do not pass fencYuv to encodeResAndCalcRdInterCU()
+ [615a8dc3d8db]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: do not pass fencYuv to generateCoeffRecon()
+ [875b4c959919]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: do not pass fencYuv to residualTransformQuantInter
+ [be855ecfb805]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: make fencYuv pointers const
+
+ in preparation of using mode.origYuv directly. this requires using
+ const_cast when getting pixel pointers since our performance
+ primitives do not have const declarations for pointers which are
+ unharmed.
+ [c7616e988752]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ analysis: move temp residual buffer into Search structure
+
+ It is only used by Search methods; the analysis functions do not
+ need to be aware of it
+ [d0d3188303b8]
+
+ * source/encoder/analysis.cpp, source/encoder/search.h:
+ analysis: give each Mode a const pointer to its origYuv
+
+ This is for convenience, and to save in function parameter overhead
+ [d1b3de579557]
+
+ * source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/ratecontrol.cpp:
+ Merge
+ [7d67da2fc327]
+
+2014-10-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/entropy.cpp:
+ analysis: remove Inter Part_NxN analysis and encode. This condition
+ will never be hit.
+
+ Also remove check for intra slice in compressInterCUrd5_6
+ [67aefaf69a6b]
+
+2014-10-08 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: vbv fix for scene changes
+
+ Also, some spacing nits
+ [d3ee2f362116]
+
+2014-10-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: parentCTU is now always a reference to the output picSym
+ CTU
+ [9b66c54258c2]
+
+2014-10-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/quant.cpp,
+ source/common/quant.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/frameencoder.cpp,
+ source/encoder/rdcost.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ analysis: pass parentCTU as const reference
+ [a12edeca1cb8]
+
+2014-10-07 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp, source/common/deblock.cpp,
+ source/common/frame.cpp, source/common/frame.h,
+ source/common/piclist.cpp, source/common/slice.cpp,
+ source/common/slice.h, source/encoder/analysis.cpp,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/predict.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/sao.cpp,
+ source/encoder/search.cpp, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp:
+ frame: remove trivial access methods, major cleanups
+ [aa90924a8619]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/common/CMakeLists.txt, source/common/deblock.cpp,
+ source/common/frame.cpp, source/common/frame.h,
+ source/common/lowres.cpp, source/common/lowres.h,
+ source/common/picyuv.cpp, source/common/picyuv.h,
+ source/common/quant.cpp, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/common/yuv.cpp,
+ source/common/yuv.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/reference.cpp,
+ source/encoder/reference.h, source/encoder/sao.cpp,
+ source/encoder/sao.h, source/encoder/search.cpp,
+ source/encoder/search.h, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp:
+ yuv: bring Yuv, PicYuv classes into common/
+
+ Standardized variable naming scheme
+
+ pixel *foo Yuv *fooYuv PicYuv *fooPic Frame *fooFrame
+ [89c388e280e4]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComYuv.h, source/common/scalinglist.cpp,
+ source/common/scalinglist.h, source/common/slice.cpp,
+ source/common/slice.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/sao.cpp,
+ source/encoder/search.cpp, source/encoder/search.h:
+ encoder: pass cu and cudata by const reference when they are not
+ modified
+
+ This is the beginning round of a sweeping refactor to enforce some
+ const discipline. The goal is to always pass objects as const
+ references when a NULL pointer is never allowed and when the object
+ is unharmed. un-const refs should be used when NULL is not allowed
+ but the object is modified by the function.
+
+ As we add more and more parallelism, we need to enlist the
+ compiler's help in figuring out which functions are safe to call
+ without side-effects
+ [639abb765708]
+
+2014-10-06 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: pass mode to more methods, write directly to mode.contexts
+
+ rename RDContexts.temp to rqtTemp; only used RQT analysis now
+
+ There were a number of cut-paste bugs fixed by removing this extra
+ step after calling encodeResAndCalcRdInterCU. Nearly half of them
+ were wrong.
+ [fc22f7534def]
+
+2014-10-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: use memset to initialize
+ [82ee45403840]
+
+2014-10-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h:
+ cu: break pool objects out of TComDataCU
+ [90c59faddf95]
+
+2014-10-08 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: revisit the minDepth logic, outputs much closer to
+ original now
+
+ Bitrates are actually a bit lower than the old version, with
+ slightly lower SSIM
+ [be17e2daf0aa]
+
+2014-10-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ cu: remove m_ prefix from tqBypassYuvMemBlock
+ [36270e784afa]
+
+ * source/encoder/analysis.cpp:
+ analysis: use md auto-var in parallelAnalysisJob()
+ [561fd92417f0]
+
+2014-10-08 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: use correct 'nextContext' from split iterations for split
+ prediction
+ [affb40a174da]
+
+ * source/encoder/analysis.cpp:
+ analysis: fixes for recursion from Min Chen
+
+ When a part is not present, we must call
+ splitCU->copyPartFrom(splitCU, ... just to setup the appropriate
+ depth fields in splitCU, which is horrid but it works for now. This
+ hack fixes DQP behavior.
+
+ The rest of the changes ensure we always pass a valid CABAC context
+ to the next coded CU (important in the presence of uncoded blocks on
+ the edges)
+
+ With these fixes, I slices match the behavior of the previous
+ design.
+ [ce64a6330c5f]
+
+ * source/encoder/predict.cpp, source/encoder/predict.h:
+ pred: rename Prediction::m_slice to Prediction::m_predSlice
+
+ to avoid conflict with Analysis::m_slice
+ [b26d0774e682]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: pass partUnitIdx to intra functions for initSubCU
+ [4b888ab917a3]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/frameencoder.cpp:
+ analysis: remove m_log member variable; an auto-var is sufficient
+ [400fa7c74b6b]
+
+ * source/encoder/analysis.cpp:
+ analysis: implement bidir MVP refine for --pme
+
+ This was the last deliberate difference in output between --pme and
+ --no-pme
+ [2876b18af448]
+
+ * source/encoder/analysis.cpp:
+ analysis: handle situation in compressInterCU_rd0_4() where only
+ split is tried
+ [9b0eda20ac43]
+
+ * source/encoder/analysis.cpp:
+ analysis: bring compressInterCU_rd5_6() up to date
+ [5fffec35339e]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: update split logic in compressInterCU_rd0_4(), simplify
+ [c2d4a2a72ae1]
+
+2014-10-07 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: continue to optimize split logic
+ [677cdc979e6d]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h:
+ analysis: pass depth via cuData, add support for split CU in
+ checkDQP
+ [7657c461a1b1]
+
+ * source/encoder/entropy.cpp:
+ nit
+ [cdab6a9393b1]
+
+2014-10-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp:
+ cu: don't pass cuData to copyPartFrom(), it only needs numPartitions
+
+ This change came from Min
+ [46c7f7f15226]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: nits
+ [7eb3ef2e19bc]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: add obviously missing logic
+ [790d3127dd85]
+
+ * source/encoder/analysis.cpp:
+ analysis: remove best mode logic from checkMerge2Nx2N_rd0_4()
+
+ It is always done by the caller based on rd level
+ [ef3e21a93f3b]
+
+2014-10-06 gopi jayaraman <gopi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: bring mode structure from analysis for intra functions
+ [47edb2892258]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ search: bring mode structure from analysis
+ [96fcb12ba04f]
+
+2014-10-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ analysis: major refactor of analysis data structures; prep for
+ --pmode --rd 5
+ [2d0d40208a59]
+
+2014-10-16 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/pixel.cpp, source/encoder/rdcost.h:
+ pixel: resolve build errors at high bit depth
+ [b7eeae24aae6]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ psy-rd: modify psy-rd cost decisions in search::xEstimateResidualQT
+
+ This function looks to minimizing rate/distortion in the "residual".
+ Rate is bits taken to encode residual, and distortion is
+ ssd(original residual, reconstructed residual). It is wrong to
+ calculate psyCost with psy-energy = E(src, recon) here. psyCost is
+ now modified as E(orig residual, recon residual).
+ [d8f1f982eeb7]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/encoder/rdcost.h:
+ primitives: add support for 16-bit psyCost calculations
+ [20946a10c348]
+
+2014-10-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: ensure nr pointer is initialized
+ [79702581ec82]
+
+ * source/encoder/analysis.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ nr nits
+ [7127239d9404]
+
+2014-10-15 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: rename intra functions that generate recon
+
+ Remove wrong comments
+ [56a04b7c1af0]
+
+2014-10-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.h, source/common/frame.cpp,
+ source/common/frame.h, source/common/quant.cpp,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ noiseReduction: make noiseReduction deterministic for a given number
+ of frameEncoders.
+ [f8e0aae88dc8]
+
+2014-10-13 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: avx2 assembly code for 8bpp version of transpose(8, 16, 32 and
+ 64)
+ [02ff8eaad632]
+
+2014-10-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRom.h, source/common/common.h,
+ source/encoder/frameencoder.cpp:
+ noiseReduction: replace magic values with readable names
+ [38b5733cc629]
+
+2014-10-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicSym.cpp, source/encoder/analysis.cpp:
+ TComDataCU: remove redundant arguments
+ [f26e81eb555a]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/sao.cpp:
+ cu-lossless: remove redundant lossless buffer
+
+ The pixel values in lossless mode can be obtained from the original
+ yuv buffer itself.
+ [e7682fc6e2aa]
+
+2014-10-10 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * doc/reST/cli.rst, source/common/slice.h, source/encoder/entropy.cpp,
+ source/encoder/level.cpp:
+ ptl: RExt profiles
+ [57a30b1c13ea]
+
+2014-10-09 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/common.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: refine, fix sao-non-deblock [CHANGES OUTPUT (RExt, sao-non-
+ deblock)]
+ [1e8ba81a5ee3]
+
+2014-10-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ Backed out changeset: f231820645fe
+ [4495af3b30bb]
+
+ * source/encoder/analysis.cpp, source/encoder/entropy.cpp:
+ analysis: remove Inter Part_NxN analysis and encode. This condition
+ will never be hit.
+
+ Also remove check for intra slice in compressInterCUrd5_6
+ [c880eced4a30]
+
+2014-10-08 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: vbv fix for scene changes
+
+ Also, some spacing nits
+ [96609efaa877]
+
+2014-10-08 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, doc/reST/threading.rst:
+ docs: try to explain behavior of related thread pool options
+ [4b6a71d53f83]
+
+2014-10-08 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: fix for csp:444 decoder crash - CABAC context state
+ handling
+ [f231820645fe]
+
+2014-10-08 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: combine CTU size and RQT depth log lines (just saves space)
+ [0a18adcecd7d]
+
+ * source/common/param.cpp, source/common/threadpool.cpp,
+ source/encoder/api.cpp, source/encoder/encoder.cpp:
+ encoder: move thread pool initialization to create(), handle pool
+ options better
+
+ Previously WPP essentially owned the thread pool and the two
+ configurations were tied together (disabling WPP disabled the thread
+ pool and vice-versa). Now we have three features which use the
+ thread pool and they can be enabled or disabled independently of
+ WPP.
+
+ After this commit, if all the pool features (WPP, PMODE, PME) are
+ disabled then the thread pool is not created. If --threads 1 is
+ specified, then no pool is created. When no pool is present, all
+ pool options are disabled.
+
+ Reporting for all the pool options has been moved into the one log
+ line: x265 [info]: WPP streams / frame threads / pool : 8 / 2 / 4 /
+ pme / pmode
+
+ They didn't really belong on the 'tools' log line since they are not
+ coding tools like SAO or AMP.
+
+ This commit also fixes CTU stats logging in the absence of WPP
+ [0a0f686606c9]
+
+ * source/common/wavefront.cpp, source/encoder/frameencoder.cpp:
+ frameencoder: fix handling of no thread pool being present
+
+ The encoder should run properly without a thread pool instance
+ [35f422e7e1a1]
+
+2014-10-08 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: allocate memory for SEIPictureTiming when
+ interlaceMode is enabled
+ [52677ba0c694]
+
+2014-10-06 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ analysis: make CU object used in --pme a const object
+ [46c4b98d92ec]
+
+2014-10-07 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp:
+ encoder: fix handling of --no-wpp and either --pmode or --pme
+
+ in --no-wpp mode, we need to allocate TLD for workers and frame
+ encoders
+ [f40aff61e42c]
+
+2014-10-06 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ doc: make it clear fast cbf only affects rdlevel 5 and 6
+ [2c65d39c989e]
+
+2014-10-05 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: use a sliding window to calculate moving avg SatdCost for ABR
+ Reset logic
+
+ contains improvements for detection of scene changes within Rate
+ Control to stabilize qp and prevent extreme spikes in bitrate.
+ Removes the blockiness or distortions in the frames that a streak of
+ low-detailed frames and prevents vbv from overreacting at the points
+ of scene cuts.
+ [4b7c473c3ef4]
+
+2014-10-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: nits
+ [dad10cdb3573]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/search.cpp:
+ cu: drop m_totalPsyCost, just use m_totalRDCost whether or not psy
+ is enabled
+ [d33bc21e3bae]
+
+ * source/encoder/analysis.cpp:
+ analysis: fix CABAC context state handling after splits [CHANGES
+ OUTPUTS]
+
+ In RDlevel<=4, if split is chosen then copy depth+1 next to depth
+ next
+
+ This fixes a long standing bug in presets slow and above, and
+ improves compression efficiency.
+ [d07fbd3bdecc]
+
+ * source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ entropy: add a mechanism to detect reads without writes in checked
+ builds
+ [ead3d26c7747]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/sao.cpp, source/encoder/sao.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ entropy: give each Search instance its own set of RD contexts
+
+ This gives each ThreadLocalData a complete set of working contexts
+ so each thread can measure RD cost (for the same row) independent of
+ one other. There were content problems with the 'temp' and 'rqtRoot'
+ and 'rqtTest' contexts.
+
+ For this to work we have to sync the 'cur' context to the slave
+ prior to it performing any RD measurements.
+
+ This commit finally removes the CI_IDX enums and uses a simple
+ struct to hold the contexts per depth; and the member variables were
+ renamed from "m_rdEntropyCoders" to "m_rdContexts" since these
+ coders are only ever used to save and restore CABAC state (never to
+ code with)
+
+ This change exposed a bug. The next patch adds some tools to catch
+ this class of bug and the patch after that fixes it.
+ [5420f2a29522]
+
+ * source/common/threadpool.cpp:
+ threadpool: nit
+ [ed5b9320afca]
+
+ * source/common/threading.cpp:
+ threading: nits
+ [1867fb89298c]
+
+ * source/CMakeLists.txt:
+ cmake: nit
+ [fc856c00d49b]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: make copy methods properly const
+ [997b210ab94a]
+
+ * source/CMakeLists.txt:
+ cmake: bump X265_BUILD for new parallelism params
+ [3c0b9a637349]
+
+2014-10-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: prevent broken combinations of options
+
+ with --no-wpp; something in the slave state is not being initialized
+ correctly causing crashes in motion estimation
+ [f312deb51d55]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: encodeIntraInInter() must write directly to given cabac
+ context
+
+ writing to m_rdEntropyCoders[depth][CI_TEMP_BEST] was not thread
+ save since the slave thread is using the same m_rdEntropyCoders
+ objects as the master thread
+ [45ef431c1490]
+
+2014-10-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: use enums to enumerate prediction buffers
+
+ value 4 was never used, so this reduces the buffer count by one
+ [c61dca79ea0f]
+
+ * source/encoder/analysis.cpp:
+ analysis: add a hack to try and match --pmode with --no-pmode
+ [39e5b26733b8]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: cleanups
+ [9872cc99362e]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: measure best pmode intra RD cost in worker thread
+
+ it required adding storage for the best intra recon and entropy
+ state includes prep work for supporting --pmode with --rdlevel > 4
+ [51f689bede6a]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: do not pass member vars to checkMerge2Nx2N_rd0_4 as
+ pointer references
+ [5e4aa3b6d136]
+
+ * source/common/param.cpp:
+ param: show when pmode and pme are enabled
+ [5849804cd0c3]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: remove default argument for compressInterCU_rd5_6
+ [2351a963a676]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComYuv.h, source/common/deblock.cpp,
+ source/common/quant.cpp, source/common/quant.h,
+ source/common/shortyuv.h, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/predict.cpp,
+ source/encoder/sao.cpp, source/encoder/search.cpp:
+ TComDataCU: make most get methods const, remove some trivial access
+ methods
+ [2e6163426c95]
+
+ * source/encoder/analysis.cpp:
+ analysis: use slave instance for MVP eval for --pme
+
+ this avoids a race hazard with Predict::m_immedVals
+ [15dff1469408]
+
+ * source/encoder/analysis.cpp:
+ analysis: replace prepMotionCompensation() calls in
+ parallelInterSearch()
+ [71de0b881801]
+
+ * source/encoder/analysis.cpp:
+ analysis: --pme workers do not need m_origYuv in slave instance
+ [a6b9e8e235d7]
+
+ * source/encoder/analysis.cpp:
+ analysis: cleanup variable names
+ [ec0cb8779f84]
+
+2014-10-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: prevent race hazard in parallel ME state variables
+
+ the inserted comment should explain the risk, which manifested in a
+ deadlock
+ [70c5681f56b9]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: parallel ME can get partsize and depth from ME CU
+ [cf722336b836]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: support --pme for all rd levels
+ [dd2acbbd545c]
+
+ * source/common/param.cpp, source/encoder/analysis.cpp,
+ source/x265.cpp, source/x265.h:
+ api: add --pme to enable parallel motion estimation
+ [bc99dfbed4b7]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: further parallelME progress
+ [4cdc0528e0aa]
+
+2014-10-01 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp, source/encoder/analysis.cpp,
+ source/x265.cpp, source/x265.h:
+ api: add --pmode to enable parallel mode decision
+ [57f93ba0df23]
+
+2014-10-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: correct logging of number of WPP streams
+ [b6d49505b179]
+
+ * source/encoder/search.cpp:
+ search: remove redundant calls to prepMotionCompensation()
+ [50490cd35e57]
+
+ * source/encoder/search.cpp:
+ search: use sad cost directly to pick MVP
+
+ there's no point in use SAD RD cost if all the candidates have the
+ same estimated bit cost.
+ [bd6e2cdd5938]
+
+ * source/encoder/rdcost.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: make some helper methods const
+ [b17293bb0f19]
+
+2014-10-01 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: remove unused variables, fixes warnings
+ [898a2546aff1]
+
+2014-10-02 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: correct the threshold for resetABR function
+ [0212e9832ce7]
+
+ * source/encoder/ratecontrol.cpp:
+ rc : correct max AU size for first frame
+ [4579fc590099]
+
+2014-10-02 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ fix bug in 73c6c9086577 for rdLevel=0
+ [b57c63127527]
+
+2014-10-01 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: further work on parallel ME
+ [c0bbd8d01257]
+
+ * source/encoder/analysis.cpp:
+ analysis: nit, remove obviously wrong comment
+ [bd3046c4bb36]
+
+ * source/encoder/analysis.cpp:
+ analysis: use source buffer for source stride
+
+ it was always a coincidence that the output stride matched
+ [61e028b5a04e]
+
+ * source/encoder/analysis.cpp:
+ analysis: initialize job counters
+ [7daea9e6c5ae]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: remove bMergeOnly argument to checkInter_rd0_4, always
+ false
+ [589d4d7e5a72]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: remove PartSize argument to checkIntraInInter_rd0_4
+ [0c6fe4a39a32]
+
+2014-10-01 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: fix float absolute check
+ [2a55baeb89cf]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: replace an imprecise comparison with a more precise
+ check to ensure consistency.
+ [f9922ce58a20]
+
+ * source/common/slice.h:
+ slice: better structure packing
+ [d0fa09e9cca5]
+
+2014-09-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: fixup
+ [3bd852b225b5]
+
+ * source/encoder/analysis.cpp:
+ analysis: move non-distributed path into else clause
+
+ this is done in a second patch since it touches a lot of code
+ trivially so it
+ [b17ddb5d71f4]
+
+2014-09-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.h:
+ stub in framework for parallel mode analysis and parallel ME
+ [5c1a4804c42d]
+
+2014-09-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: remove default arguments to checkInter_rd5_6 and
+ checkInter_rd0_4
+ [4d9ff684c80f]
+
+ * source/x265.cpp:
+ cli: display param->bSaoNonDeblocked as bool in CLI help
+ [1af64c8c2d28]
+
+ * source/encoder/analysis.cpp:
+ analysis: nit
+ [a4859c266a59]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/deblock.cpp,
+ source/common/loopfilter.cpp, source/common/primitives.h,
+ source/encoder/analysis.h, source/encoder/sao.cpp:
+ replace lcu with ctu in variable names
+ [ab92196f8b7b]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComRom.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/sao.h:
+ replace LCU with CTU globally in comments
+ [382384729d60]
+
+ * source/encoder/sao.h:
+ sao: nits
+ [8b89e74d848d]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: rename resetLcuPart to resetCtuPart
+ [f2b5e4d8da59]
+
+ * source/common/common.h, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/sao.cpp:
+ sao: rename saoLcuParam to ctuParam
+ [ca1e3afddc4f]
+
+ * source/common/common.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: rename SaoLcuParam to SaoCtuParam
+ [7692ab2a28d3]
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/common.h,
+ source/common/param.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/sao.cpp, source/x265.cpp, source/x265.h:
+ api: rename --sao-lcu-bounds to --sao-non-deblock
+
+ The acronym LCU doesn't appear anywhere else in our param interface
+ [5a06c0462363]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: make bidir temp YUVs Search members
+
+ I can't believe we've been allocing them every predInterSearch()
+ call for the last 2 months.
+ [2486149ff9de]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp:
+ datacu: coding style rename of m_DataCUMemPool and m_CULocalData
+ [832ad99093a0]
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h:
+ motioninfo: coding style rename of m_MVFieldMemPool
+ [ec91821451f3]
+
+ * source/common/common.h:
+ common: break into debugger when check fails in debug build
+ [a5103ad3df8b]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComData: do not leave m_tqBypassOrigYuv uninitialized
+ [a360de22f48b]
+
+2014-09-30 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 assembly code for idct4x4
+ [49aaafeb707a]
+
+2014-09-30 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ blockfill_s_32x32 avx2 asm code: performance improved from 1354.05
+ cycles to 705.81 cycles, over sse version of asm code
+ [154aa8bfe042]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ blockfill_s_16x16 avx2 asm code: performance improved from 389.21
+ cycles to 204.38 cycles, over sse version of asm code
+ [8be59e140210]
+
+2014-09-29 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/slice.h, source/encoder/level.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: apply maxAU size restrictions while encoding each frame
+ [8740d938dbb7]
+
+2014-09-30 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/analysis.cpp,
+ source/encoder/search.cpp, source/encoder/search.h:
+ TComDataCU: replace getTotalNumPart() with CU structure details
+ [1706e30042ef]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ TComDataCU: replace getZorderIdxInCU() with encodeIdx of CU
+ structure
+ [73c6c9086577]
+
+2014-09-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/rdcost.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ rd: move lambda and analysis qp init to rdcost.h
+
+ This will make it possible for Search instances to copy QP data
+ between each other
+ [a40ff330a525]
+
+2014-09-30 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * doc/reST/cli.rst, doc/reST/threading.rst, source/common/common.h,
+ source/common/param.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/sao.cpp, source/encoder/sao.h, source/x265.cpp,
+ source/x265.h:
+ sao: remove frame-based SAO
+ [28db2410d5de]
+
+2014-09-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComMotionInfo.h:
+ TComMvField: class to struct, white-space cleanups
+ [5a6845566d14]
+
+2014-09-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: reorder nits, no effect
+
+ do allocations after simple configurations
+ [0c4e39a2965b]
+
+ * source/common/quant.cpp, source/common/quant.h,
+ source/encoder/search.cpp:
+ quant: pass entropy instance through init function
+ [a8fca9f05102]
+
+ * source/encoder/search.cpp:
+ search: white-space nits
+ [991527f1a9c6]
+
+ * source/encoder/analysis.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: give each Search instance an Entropy encoder (no output
+ changes)
+
+ This essentially relocates the "active" entropy coder used during
+ all analysis from CTURow to ThreadLocalData. This actually reduces
+ the number of Entropy instances in the encoder, and solves the
+ problem of sharing the entropy coder between worker threads
+ cooperating on the same CTU.
+ [a4d27e19ed09]
+
+2014-09-26 David T Yuen <dtyx265@gmail.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/frameencoder.cpp:
+ Changes for loadCTUData
+
+ Replaced getDepthScanIdx() with table g_depthScanIdx Moved
+ Analysis::loadCTUData to TComDataCU::loadCTUData since it only works
+ with TComDataCU fields Replaced CU.offsets[2] with local variables
+ in loadCTUData since that is the only place it was set and used
+ minor changes to reduce the number of local variables in loadCTUData
+ [0d0558b82a9c]
+
+2014-09-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp, source/encoder/encoder.cpp:
+ nits
+ [32f50df7fa76]
+
+2014-09-26 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 assembly code for idct32x32
+ [4b18a27b52ac]
+
+2014-09-25 David T Yuen <dtyx265@gmail.com>
+
+ * source/encoder/frameencoder.cpp:
+ Removed unnecessary call to loadCTUData
+ [8119b3d8d260]
+
+2014-09-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: more style nits, code simplifications. no behavior change
+ [bd0e23d7d394]
+
+ * source/encoder/analysis.cpp:
+ analysis: remove #define conditionals for control flow
+
+ The non-default paths are not being tested (or even compiled) and
+ are thus assumed broken. The defines simply make the code harder to
+ read.
+ [f5f7c23fedd6]
+
+ * source/encoder/analysis.cpp:
+ analysis: coding style and comment nits
+ [e6cc918fb18e]
+
+ * source/encoder/analysis.cpp:
+ analysis: remove unused LAMBDA_PARTITION_SELECT
+ [391282b02731]
+
+ * source/encoder/analysis.cpp:
+ analysis: hoist local function into anonymous namespace (file local)
+ [d26780e43a87]
+
+2014-09-25 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 assembly code for idct8x8
+ [8492a3250fef]
+
+2014-09-25 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp, source/common/deblock.cpp,
+ source/common/frame.h, source/common/slice.cpp,
+ source/encoder/analysis.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/sao.cpp, source/encoder/search.cpp:
+ remove getNumPartInCU() and replace it with macro
+ [37f33ab176fa]
+
+2014-09-26 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/deblock.cpp, source/common/deblock.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ refine deblocking filter
+ [b47d794a0372]
+
+2014-09-24 Steve Borho <steve@borho.org>
+
+ * source/common/slice.h, source/encoder/predict.cpp,
+ source/encoder/predict.h:
+ predict: split weighted prediction values from WeightParam
+
+ The arguments passed to addWeightBi() and addWeightUni() are just
+ the "w, o, offset, shift, round" integers. They don't need the
+ fields which were signaled in the slice header or vice-versa.
+ [7dccbbed0349]
+
+ * source/encoder/predict.cpp, source/encoder/predict.h,
+ source/encoder/search.cpp:
+ predict: combine and check allocations and return failures
+ [982040e91112]
+
+ * source/encoder/predict.cpp, source/encoder/predict.h,
+ source/encoder/search.cpp:
+ predict: remove check for reallocations, comment nits
+
+ we don't do this anywhere else; there would be huge leaks if the
+ Search object were initialized multiple times. there's no reason to
+ check here.
+ [7c88fb6128cf]
+
+ * source/encoder/analysis.cpp, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/search.cpp:
+ predict: inline predInterUni(), getWpScaling() and simplify
+ motionCompensation()
+
+ After this refactor, motionCompensation no longer needs the cu
+ parameter. It was only used to pass to another member function to
+ gain access to cu->m_slice which is now a member variable.
+
+ This refactor removed a number of arguments to addWeightBi and
+ addWeightUni which were always member variables.
+ [a961728f906c]
+
+ * source/encoder/predict.cpp, source/encoder/predict.h:
+ predict: inline single call of predInterBi()
+ [b6c9a51d9201]
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ encoder: rename cuCoder to analysis for better clarity
+
+ the data type of cuCoder changed from TEncCu to Analysis weeks ago
+ [a3f952bcada5]
+
+2014-09-25 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.h, source/common/deblock.cpp,
+ source/common/deblock.h:
+ Backed out changeset: 940cec3bf0b4
+
+ This commit causes hash mismatches in vc11 x86_64 Release mode
+ consistently, when lft is enabled. Stack/heap corruption likely.
+ [0d330611fa97]
+
+2014-09-24 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-sse3.cpp:
+ Backed out changeset: eb011fa1d2d8
+ [e47e127da779]
+
+2014-09-24 David T Yuen <dtyx265@gmail.com>
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ Changed FrameEncoder::m_tld to a pointer and set it to one of
+ Encoder's ThreadLocalData instances.
+
+ This uses less memory since m_tld isn't used in --wpp and Encoder's
+ ThreadLocalData instances are not used in --no-wpp Also there was a
+ small performance increase on my system
+ [3e1bfb2e4592]
+
+2014-09-24 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-sse3.cpp, source/common/vec/dct-ssse3.cpp:
+ vec: make a note for why we keep some of the remaining vector
+ routines
+ [f6a0b0a97a5b]
+
+ * source/common/vec/dct-sse3.cpp:
+ vec: remove idct8, we have SSSE3 assembly for it
+ [eb011fa1d2d8]
+
+ * source/common/CMakeLists.txt, source/common/vec/blockcopy-sse3.cpp,
+ source/common/vec/vec-primitives.cpp:
+ cmake: remove blockcopy-sse3.cpp
+ [c79590d89389]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ primitives: remove unused block copy primitives
+ [63b7cb39e9f1]
+
+2014-09-24 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ bloccopy_pp avx asm code: 32x32, 32x48, 32x64 improved by 803.69 ->
+ 514.90, 1126.36 -> 655.24, 1454.09 -> 835.76 cycles
+ [3fe7e7975eae]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ blockcopy_pp_32x24: avx asm code, improved 621.84 cycles -> 371.94
+ [fe901487b7cc]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ blockcopy_pp_32x16: avx asm code, improved 477.74 cycles -> 309.99
+ [b51e34a4b828]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ blockcopy_pp_32x8: avx asm code, improved 281.20 cycles -> 165.47
+ [2d8adf9a4ab0]
+
+2014-09-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.h, source/common/deblock.cpp,
+ source/common/deblock.h:
+ refine deblocking filter
+ [940cec3bf0b4]
+
+2014-09-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/predict.cpp, source/encoder/predict.h:
+ predict: remove checkIdenticalMotion()
+
+ We will not insert the same reference picture into L1 and L0 at the
+ same time, so this check is utterly redundant.
+ [532d0266e333]
+
+ * source/encoder/analysis.cpp, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/search.cpp:
+ predict: remove list argument from motionCompensation(), always
+ REF_PIC_LIST_X
+ [cf90338bbc87]
+
+ * source/encoder/predict.cpp:
+ predict: streamline getWpScaling()
+ [e26ce61cd2e3]
+
+ * source/encoder/predict.cpp:
+ predict: use faster unidir prediction for B frames when weighting
+ not enabled
+ [30dd73bb8a93]
+
+ * source/encoder/predict.cpp, source/encoder/predict.h:
+ predict: combine redundant logic paths in predInterBi()
+
+ removes weightedPredictionBi(), which is no longer called
+ [3f1681901fb4]
+
+2014-09-24 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/test/testbench.cpp:
+ Backed out changeset: fa2f1aa1456e
+
+ This commit allocated the harness instances on the heap, thus no
+ longer respecting __declspec(align) directives for the member
+ fields. We could probably circumvent this by overloading operator
+ new with aligned_malloc, but I'm not sure this is good practice.
+ [b2b7072ddbf7]
+
+2014-09-23 Sagar Kotecha <Sagar Kotecha>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ blockcopy_ss: 64x16, 64x32, 64x48, 64x64 AVX version of asm code,
+ approx double speedup comapre to SSE
+ [e2b577330c9b]
+
+2014-09-23 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 code for dct8x8
+ [271e5eb1e396]
+
+2014-09-23 Min Chen <chenm003@163.com>
+
+ * source/common/x86/dct8.asm:
+ asm: replace mova by movu to avoid AVX2 testbench crash in dct16,
+ dct32, denoise_dct, its same speed on Haswell
+ [02253e0800ea]
+
+2014-09-23 Sagar Kotecha <Sagar Kotecha>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ add avx version for chroma_copy_ss 16x4, 16x8, 16x12, 16x16, 16x24,
+ 16x32, 16x64 based on csp, approx 1.5x-2x speedup over SSE
+ [1f5ffdc453ee]
+
+2014-09-22 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h, source/encoder/predict.cpp:
+ simplify intra filter (with fix for da61cf406f16)
+ [ee76b64fd051]
+
+2014-09-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ Backed out changeset: 25dde1ffab66
+
+ This commit needs more investigation, with specific VBV use cases
+ like 1-sec GOPs.
+ [82bab5587bf1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/common/deblock.h,
+ source/common/quant.cpp, source/encoder/api.cpp,
+ source/encoder/entropy.cpp, source/encoder/sao.cpp,
+ source/encoder/search.cpp:
+ nits: use parantheses to improve readability in shifts
+ [fd435504f15e]
+
+2014-09-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/predict.cpp:
+ predict: don't bother keeping refidx as an array
+
+ it is always indexed explicitly
+ [1c172c1822e4]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/common/CMakeLists.txt, source/encoder/predict.cpp,
+ source/encoder/predict.h:
+ predict: merge TComWeightPrediction functions into Predict
+
+ * TComWeightPrediction had no member vars, the constructor was
+ useless
+ * half of the functions were not used, they were dropped
+ * default arguments were removed, none were actually required
+ * x prefixes removed from method names
+ * comments were cleaned up
+ [0be03e280b3d]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ TComWeightPrediction: combine duplicate inline functions (refs #80)
+ [c7cc07fd21a7]
+
+ * source/encoder/encoder.cpp:
+ encoder: use %u to sprintf unsigned ints (refs #80)
+ [a58aea624122]
+
+ * source/encoder/entropy.cpp:
+ entropy: fix SAO enable detection (refs #80)
+
+ Apparently our analysis never toggles luma separately from chroma
+ because this bug has not resulted in any bad bitstreams, that I know
+ of. This bug was found via static analysis
+ [c39538f0c59b]
+
+ * source/common/bitstream.cpp:
+ bitstream: add paren to avoid ambiguous precedence in X265_CHECK
+ [2599fd87b72e]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp, source/common/frame.cpp,
+ source/encoder/api.cpp, source/encoder/encoder.cpp:
+ nits: do not check for NULL from new operations
+
+ By the C++ spec, new is incapable of returning NULL. If an
+ allocation failure actually occurs, an exception is issued (which we
+ do not catch) Long term, all of these new operations need to be
+ replaced by malloc and explicit initialization and destruction. In
+ the short term, these return value checks are redundant.
+ [6e450860475a]
+
+ * source/encoder/bitcost.h:
+ bitcost: use enums for special constants rather than static const
+ ints
+
+ enums require no storage
+ [3fd2d7acb6bb]
+
+ * source/encoder/motion.cpp:
+ motion: avoid extra iterations when no subpel motion found
+
+ subsequent iterations would have also returned zero, which would be
+ pointless. this is an adaption of a patch by Sheva Xu.
+ [2c1d4c7d85ba]
+
+2014-09-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: clean xRecurIntraCodingQT
+ [d1ffc125f0a3]
+
+ * source/encoder/analysis.cpp:
+ analysis: nits
+ [39d0ba6012d5]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ psy-rd: fix bug in chroma psyEnergy for intra 4x4
+
+ Also add TODO, for all psyCost calculations
+ [d1c2b82de4db]
+
+2014-09-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: remove CheckBestMode from CheckIntra
+ [817abe294c8b]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: remove redundant variables, cleanup variable names
+ [6334cc645407]
+
+2014-09-20 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: do not allow VBV without WPP
+
+ VBV row restarts cannot function correctly without WPP (per-row
+ CABAC starts)
+ [c8f53398f8ce]
+
+2014-09-18 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: simplify and remove redundant variables in
+ getBestIntraModeChroma
+ [9b9986cc084b]
+
+ * source/encoder/search.cpp:
+ search: remove redundant loacal variables in
+ encodeResAndCalcRdSkipCU
+ [5c067b643591]
+
+ * source/encoder/search.cpp:
+ search: cleanup and remove redundant variable in checkintra
+ [7c1e793722f9]
+
+2014-09-19 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/intrapred.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/encoder/analysis.cpp, source/encoder/predict.cpp,
+ source/encoder/search.cpp, source/encoder/slicetype.cpp,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ primitives: intra_pred[4][35] => intra_pred[35][4] (avoid *35)
+ [da61cf406f16]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/deblock.cpp,
+ source/common/frame.cpp, source/common/frame.h,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/motion.h, source/encoder/predict.cpp,
+ source/encoder/predict.h, source/encoder/search.cpp:
+ inline simple functions
+ [c07038ca0e07]
+
+2014-09-17 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: allocate test harnesses on heap, for better valgrind
+ coverage
+ [fa2f1aa1456e]
+
+2014-09-18 Praveen Tiwari <Praveen Tiwari>
+
+ * source/test/mbdstharness.cpp:
+ denoiseDct: align performance data while reporting speedup
+ [4680ab4f92b8]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ copy_cnt_32: avx2 asm code, improved 1521.17 cycles -> 934.46 cycles
+ [6908388bf26f]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/const-a.asm:
+ copy_cnt_16: avx2 asm code, improved 514.32 cycles -> 313.66 cycles
+ [9b672a7b3ea9]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm:
+ denoise_dct: avx2 asm code
+ [e83cc4a15dc9]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ denoise_dct asm code: SSE version
+ [d6759701fdd7]
+
+2014-09-18 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 assembly code for idct16x16
+ [7e82d0abf6fb]
+
+2014-09-18 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: improvements for cbr
+ [25dde1ffab66]
+
+2014-09-17 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/dct8.h:
+ denoiseDct: nit unused asm function declarations
+ [54ad38a84a69]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm:
+ denoiseDct asm code: nit faulty code, need a new SSE version
+ [55a50a362def]
+
+ * source/test/mbdstharness.cpp:
+ denoiseDct unit test code: fixed bound value problem
+ [b162185198fe]
+
+2014-09-11 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ copy_cnt_4 avx2 asm code: nit, same speedup by sse version
+ [123db3a255a7]
+
+2014-09-17 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/analysis.cpp:
+ rc: fix bugs in using boundary condition for cu while encoding each
+ frame.
+
+ fixes the binary mismatch in 2 pass completely.
+ [4e17a5c3ed64]
+
+2014-09-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix VBV row resets when SAO is disabled
+
+ When SAO is disabled, the row bitstream is generated as CTU analysis
+ progresses. We must reset the row bitstream after a restart to avoid
+ coding errors. The CAABAC state is already reset correctly when CTU
+ col 0 is re-coded.
+ [86686bd153db]
+
+2014-09-16 Sagar Kotecha <sagar@multicorewareinc.com>
+
+ * source/common/param.cpp, source/common/param.h, source/x265.cpp:
+ add fanout validation module to check param compatibility
+ [199e8f2e0d54]
+
+2014-09-16 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/api.cpp:
+ api: do not reuse the analysisData buffer for more then one picture,
+ set it NULL
+ [d71d363c0dbb]
+
+2014-09-16 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp:
+ analysis: add CU specific details to encodeCU()
+ [06bac60ee4cf]
+
+2014-09-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: nits
+ [b276d567d771]
+
+2014-09-16 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/search.cpp, source/encoder/search.h:
+ analysis: intra picture estimation (mode and split
+ decision)information sharing
+
+ when --analysis-mode=save - the encoder runs a full encode and dump
+ the best split and mode decisions into x265_analysis.dat(default
+ file name if file name is not provided) file when --analysis-
+ mode=load - the encoder reads the best split and mode decisions from
+ x265_analysis.dat and bypass the actual split and mode decisions,
+ and therefore perform a much faster encode
+ [7784ad03d6d4]
+
+2014-09-16 Praveen Tiwari <Praveen Tiwari>
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h,
+ source/test/testharness.h:
+ denoiseDct: test bench code
+ [63a78516630c]
+
+2014-09-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: save a few cycles
+ [a1fc4e9bba51]
+
+2014-09-15 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp:
+ rc: fixes for 2 pass + vbv to calculate frameSizePlanned accurately.
+ [7c1aba99f40d]
+
+2014-09-15 Steve Borho <steve@borho.org>
+
+ * doc/reST/presets.rst, source/common/param.cpp:
+ param: preset tuning changes
+
+ 1. disable SAO in superfast
+
+ Recent changes have made --no-sao substantially faster than SAO,
+ which has made ultrafast preset much much faster than superfast. By
+ disabling SAO in superfast, it is now roughly half-way between
+ ultrafast and veryfast again.
+
+ 2. Enable weighted prediction for B slices in slower, veryslow, and
+ placebo
+
+ Weighted prediction for B can sometimes be beneficial, so turn it on
+ for slower encodes.
+ [1de67321275e]
+
+ * doc/reST/threading.rst:
+ doc: describe performance impact of SAO
+ [dff0cd55b520]
+
+ * doc/reST/threading.rst:
+ doc: fix typo and nit in threading page
+ [76240da72c38]
+
+2014-09-12 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/common.h, source/common/x86/loopfilter.asm,
+ source/encoder/entropy.cpp, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: some cleanups
+ [098a00de4a72]
+
+2014-09-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/CommonDef.h, source/encoder/search.h:
+ search: header cleanups, no functional change
+ [db063839c8fe]
+
+2014-09-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: measure RDO of intra modes within 12% of least cost [CHANGES
+ OUTPUTS]
+
+ This version adaps the number of RD measured modes by param.rdLevel
+ (aka preset) and by depth. This gives a non-trivial speedup to the
+ very fast presets which use frequent keyframes and helps improve
+ compression in slower presets.
+
+ all presets use this function to encode I slices, so every encode is
+ affected.
+
+ Previous behavior: RD measure top N least sa8d cost intra modes and
+ all most probable modes where N was depth-based: intraModeNumFast[]
+ = { 8, 8, 3, 3, 3 }; // 4x4, 8x8, etc
+
+ New behavior: RD measure up to N modes that are within 12% of best
+ sa8d cost or are most probable. where N if a function of rd-level
+ and depth
+
+ The new behavior may measure fewer modes than before may skip some
+ most-probable modes if there are plenty of other modes which are
+ near the best cost. Since mode signal cost is included already, this
+ seems ok.
+
+ The general idea is that if 1-2 modes have much better sa8d cost
+ than all the others, then we are likely wasting our time RD
+ measuring 8-11 modes. We're betting that sa8d cost is a somewhat
+ decent predictor of RD cost.
+
+ Note that I initially tried without a limit (measure all within 12%
+ or MPM) but for some clips this was a horrible perf trade-off. In
+ some situations all the intra modes might measure close together
+ (flat source block) and we would end up measuring most or all of the
+ intra modes for very little gain. So this version re-introduces a
+ "top N candidate list" but does not bother trying to keep the list
+ sorted since it is small
+ [02353d20f051]
+
+2014-09-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: comment nits
+ [017ceb9d2b06]
+
+ * source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [70c836fef6d9]
+
+2014-09-15 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: bug fix for 2 pass when bframes = 0. fixes Issue #77
+ [e6a80fb007e8] <stable>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: check for changes in scenecut input between multiple passes.
+
+ wpp/no-wpp doesn't affect slice type decisions. they can differ
+ between the passes in multipass encode.
+ [67ee212bbf78]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: bug fix for 2 pass when bframes = 0. fixes Issue #77
+ [9107dc4a2632]
+
+2014-09-10 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ Search: remove redundant encode coefficients in intra for
+ performance
+ [8972169f252d]
+
+2014-09-15 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/dct8.asm:
+ asm: fix mismatch due to dct32 avx2 assembly code
+ [b5fb734517c0]
+
+2014-09-12 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 assembly code for dct32x32
+ [184e56afa951]
+
+2014-09-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/x265.h:
+ x265: add missing typedefs
+ [2fb61cc75152]
+
+2014-09-11 David T Yuen <dtyx265@gmail.com>
+
+ * source/x265.cpp:
+ Resolved gcc compiler error of mismatched type
+ [cd8fd0afd4e8]
+
+2014-09-12 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ Merge with stable
+ [fda32ff40246]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable buggy denoise primitives until the bugs are fixed
+ [d522e7662111] <stable>
+
+2014-09-11 Sagar Kotecha <sagar@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/common/common.h, source/common/param.cpp,
+ source/x265.cpp:
+ cli: add cli options analysis-mode and analysis-file
+
+ analysis-mode: save|1 - Dump analysis buffers into file, load|2 -
+ read analysis buffers from the file analysis-file: Specify file name
+ used for either dumping or reading analysis data
+ [7e29b10982d2]
+
+ * source/common/frame.cpp, source/common/frame.h,
+ source/encoder/analysis.cpp, source/encoder/encoder.cpp:
+ store analysis information in buffers
+ [b0d006337801]
+
+ * doc/reST/api.rst, source/CMakeLists.txt, source/encoder/api.cpp,
+ source/x265.def.in, source/x265.h:
+ api: introduce methods to allocate and free analysis buffers
+ [baf07b965909]
+
+ * source/x265.h:
+ api: add analysis data structures and param options
+ [e5a24e5ba46e]
+
+2014-09-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: minor comment and code cleanups, no behavior change
+ [3d6cc40ebbf7]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: remove x prefixes from ME helper functions
+ [e9e71ece1344]
+
+ * source/encoder/dpb.cpp:
+ dpb: does not need to include frameencoder.h
+ [6bb0d3a25b08]
+
+2014-09-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.h:
+ analysis: nit
+ [012f315d3eda]
+
+ * source/encoder/analysis.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: don't pass top-level encoder to initSearch()
+
+ removes three Encoder members that were only used to communicate
+ data to initSearch()
+ [0bc83ba57dad]
+
+ * source/encoder/search.cpp:
+ search: store rd costs in first pass through intra modes
+
+ no behavior change, this is prep work for further refactors
+ [ff2fd6923f1a]
+
+ * source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/framefilter.h:
+ cleanup header dependencies; dpb should not need encoder.h
+ [7eddb265f512]
+
+2014-09-11 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: enable copy_cnt8
+ [a522a2549cac]
+
+2014-09-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 assembly code for dct16
+ [18d0461eb4d0]
+
+2014-09-10 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt_8, AVX2 asm code as per new interface, performance improved
+ from 5.13x to 7.59x on HASWELL-I5
+ [0d27befcc874]
+
+2014-09-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: nits
+ [81c9f704ae38]
+
+2014-09-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: re-enable chroma tskip
+
+ this passed regression testing
+ [bdd477050097]
+
+2014-09-09 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp:
+ rc: use m_frameDuration instead of rce->frameDuration to derive
+ complexity for each frame in 2nd pass.
+
+ don't store and use frameDuration from stats file per frame - losing
+ precision.
+ [139b41632c64]
+
+2014-09-10 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/param.cpp, source/x265.h:
+ param: apply missing default values to param, mostly zero and
+ reorder
+ [3fc141aa74b5]
+
+2014-09-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: reverse meaning of bCheckFirst to bAllowRQTSplit
+
+ I find this much more readable
+ [408e2e6f0f70]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp:
+ search: !a ? b : c; -> a ? c : b;
+ [f45f3ed38951]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: rename some helper functions without x prefixes
+ [719284d910b6]
+
+ * source/common/x86/blockcopy8.asm:
+ backout 0dc2cbc36ee5 to 331ef5121676
+ [491e74c58e51]
+
+2014-09-09 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: modified compressInterCU_rd0_4() with CU-specific
+ information
+ [2d9eb8cebb71]
+
+2014-09-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: fix camel case of residualQTIntraChroma
+ [d85792b9f373]
+
+ * source/encoder/search.cpp:
+ search: don't pass a zeroDistortion pointer if you don't want the
+ answer
+ [84b1d287333f]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: return distortion from xEstimateResidualQT
+ [7d8e4935c1ca]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: pass depthRange uniformly as uint32_t depthRange[2]
+
+ effectively the same as uint32_t but compilers and debuggers can
+ often do more with the length info. plus it just makes the code more
+ readable
+ [cead9fe7ff30]
+
+ * source/encoder/analysis.cpp, source/encoder/search.cpp,
+ source/encoder/search.h:
+ search: return distortion from xRecurIntraCodingQT
+ [68ac5ca5d676]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: return distortion from xIntraCodingChromaBlk, do not pass by
+ ref
+ [62f6924be843]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: return distortion from xRecurIntraChromaCodingQT, do not
+ pass by ref
+ [b0a018562d29]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: return distortion from xIntraCodingLumaBlk, do not pass by
+ reference
+ [a7f4f750e9d4]
+
+2014-09-09 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt_8 AVX2 asm code, as per new interface
+ [331ef5121676]
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt_4: faster AVX2 code
+ [f7f8206a70bd]
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt_4: combine mova and paddb to reduce code size, same speedup
+ [5edcbcbb338f]
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt_4: enable fast non zero coefficient count path
+ [0dc2cbc36ee5]
+
+2014-09-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use simple shifts to scale 2-pass CU type counters
+
+ the cu type counters are summed at the end and turned into
+ percentages, so it doesn't matter what base unit is used, only that
+ each depth has 4x the value as depth+1
+ [ebd5a0cac758]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use x265_emms() prior to double QP clipping for VBV
+ [a414ca1c9067]
+
+2014-09-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/search.cpp:
+ search: remove warning from MS compiler
+ [44cb33846e0e]
+
+2014-09-08 Min Chen <chenm003@163.com>
+
+ * source/common/dct.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/const-a.asm, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm:
+ asm: avx2 version of quant, improve 16.6k cycles -> 8.4k cycles
+ [c4fb044c901b]
+
+ * source/common/x86/pixel-util8.asm:
+ asm: improve quant by replace variant shift to fixed shift, 19k
+ cycles -> 16.6k cycles
+ [277c1e05c247]
+
+ * source/common/dct.cpp, source/test/mbdstharness.cpp:
+ testbench(quant): the qBits value must be more than or equal to 8
+ [5dbf9e8f4028]
+
+ * source/test/mbdstharness.cpp:
+ testbench(quant): the Round value must be less than (2 ^ qbits)
+ [53e0969c605f]
+
+2014-09-08 Steve Borho <steve@borho.org>
+
+ * source/encoder/search.cpp:
+ search: prune more unnecessary work from estIntraPredQT()
+ [b5f81a839403]
+
+ * source/encoder/search.cpp:
+ search: remove some redundant work from estIntraPredQT
+ [033299d2bd00]
+
+ * source/encoder/search.cpp, source/encoder/search.h:
+ search: remove m_qtTempTrIdx
+ [00b86119f0ad]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/CMakeLists.txt,
+ source/encoder/analysis.h, source/encoder/search.cpp,
+ source/encoder/search.h:
+ pull search class into encoder/ (TLibEncoder is no more)
+
+ TEncSearch -> Search use consistent comment style and argument lists
+ make destructor no longer virtual (no more vtable) moving
+ StatisticLog into x265 namespace came for free
+ [f2688d840261]
+
+ * source/encoder/api.cpp:
+ api: remove include of frameencoder
+ [796cc966e2fe]
+
+ * source/Lib/TLibCommon/TComMotionInfo.h, source/encoder/analysis.h:
+ nits
+ [f2da9f3db824]
+
+2014-09-08 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: modified compressInterCU_rd5_6() with CU-specific
+ information
+ [27581134f442]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h:
+ Analysis: compressIntraCU clean up
+ [5b377a411463]
+
+2014-09-08 Steve Borho <steve@borho.org>
+
+ * source/encoder/framefilter.cpp, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: move frame/slice initialization into SAO::startSlice
+ [80b2e91156d3]
+
+ * source/encoder/sao.cpp:
+ sao: minor cleanups, no behavior change
+ [b9ed1dcacf9e]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: avoid another call to resetEntropy(), they are
+ expensive
+ [cfe197e3044d]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: combine some conditional expressions
+ [cb67f6f65577]
+
+ * source/encoder/frameencoder.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: move FrameStats to ratecontrol.h
+
+ rate control shouldn't need to include frameencoder.h
+ [89e682182a7a]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/ratecontrol.cpp:
+ frameencoder: rename percent fields for clarity
+ [9581a45d4344]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: do more CU stat math as integer
+ [406d92c860d5]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: merge more of encodeSlice() into processCU
+
+ this commit fixes no-WPP after the previous change. the per-row or
+ per-frame (+- WPP) bistreams are flushed as they are finished (and
+ cache hot) and the per CU stats are summed per row and then
+ summarized all in one place.
+ [60289c638600]
+
+2014-09-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove second encodeCU() pass over CTUs when SAO is
+ disabled
+
+ This is a performance optimization, it allows the encoder to
+ generate the final bitstream of each CTU as it is compressed and
+ cache hot.
+
+ When SAO is enabled, SAO analysis must be performed and coded at the
+ start of the CTU but SAO analysis currently requires surrounding
+ CTUs to be encoded making the second pass unavoidable.
+
+ Note that this commit changes the way non-WPP encodes are performed,
+ for the better. Now it always uses row 0's CI_CURR_BEST entropy
+ coder instance to communicate entropy state between all CTUs and
+ between rows. This better models how encodeSlice() works and makes
+ RDO work better
+ [a117564df3ef]
+
+2014-09-08 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove redundant clear of frame stats
+
+ they were being zero'd in the constructor, init(), and in
+ compressCTURows. techincally only the last is truly necessary, but
+ I'm leaving the memset in the contructor.
+ [a7465d789c64]
+
+ * source/encoder/entropy.h, source/encoder/frameencoder.cpp:
+ nits
+ [a29aa966336e]
+
+ * source/common/x86/x86inc.asm:
+ Merge with correct x86inc.asm patch
+ [c55d69561948]
+
+2014-09-05 Min Chen <chenm003@163.com>
+
+ * source/common/x86/x86inc.asm:
+ x86inc.asm: fix vpbroadcastd bug on Mac platform
+ [51930084e148]
+
+2014-09-08 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp:
+ entropy: change top-level encode to encodeCTU
+ [de5614144bce]
+
+2014-09-07 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/sao.cpp:
+ fix sao
+ [8cbfec8d6b4d]
+
+ * source/common/dct.cpp, source/encoder/analysis.cpp:
+ fix CHECKED_BUILD
+ [845e82c5d607]
+
+2014-09-05 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm:
+ asm: AVX2 version of dequant_normal, improve 9.3k Cycles -> 4.2k
+ Cycles
+ [ed4c9acafc11]
+
+ * source/common/dct.cpp, source/common/x86/pixel-util8.asm:
+ asm: reduce number of movd in dequant_normal
+ [bc9025648270]
+
+ * source/common/x86/x86inc.asm:
+ x86inc.asm: fix vpbroadcastd bug on Mac platform
+ [27364e9f97e4]
+
+2014-09-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove unnecessary call to resetBits(), improve
+ comment
+ [795878af3973]
+
+ * source/encoder/frameencoder.h:
+ frameencoder: cleanup CTURow::init
+
+ According to my understanding, only rdEntropyCoders[0][CI_CURR_BEST}
+ really needs to be initialized, but this changes outputs if I do
+ this. It tells me there is likely a bug in the entropy state
+ management
+ [b05e3141c766]
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ frameencoder: CTURow class -> struct, remove m_ prefixes
+
+ Still no output changes in this patch series
+ [5d9433930735]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp:
+ tld: remove m_ prefixes from struct members
+ [85b93c9b6f0d]
+
+ * source/encoder/CMakeLists.txt, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ cturow: merge CTURow and TLD objects into frameencoder.h
+ [1b69af135b48]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove unused variable, nit
+ [6d84a175723a]
+
+ * source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/frameencoder.cpp:
+ cturow: inline processCU()
+
+ The function is no longer complicated enough to justify having a
+ separate function, given that the arguments mainly dealt with the
+ wavefront cabac propogation. The CTU class is about to be further
+ simplified.
+ [0c97aad4038e]
+
+ * source/CMakeLists.txt:
+ cmake: enable MACOSX_RPATH on Mac shared libraries
+
+ http://www.cmake.org/cmake/help/v3.0/prop_tgt/MACOSX_RPATH.html
+
+ Setting the policy CMP0042 to NEW makes MACOSX_RPATH=1 the default,
+ but we go ahead and set it manually anyway so cmake versions older
+ than 3.1 behave the same way
+ [01ba626b850d]
+
+2014-09-05 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt 4x4 AVX2 asm code, as per new interface
+ [f30c13d8143a]
+
+2014-09-04 Min Chen <chenm003@163.com>
+
+ * source/common/x86/x86util.asm:
+ asm: reenable IACA support, it remove by 'inappropriate
+ instruction...' patch
+ [d5034e68aa40]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: avx2 version of nquant(), improve 9.8k cycles -> 5.3k cycles
+ [0f1f5f8a4981]
+
+ * source/common/dct.cpp, source/common/x86/pixel-util8.asm:
+ asm: optimize nquant by PSIGND, improve 11k cycles -> 9.8k cycles
+ [dd04a9ec73a8]
+
+2014-09-05 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/pixel-util8.asm:
+ count_nonzero asm code, reduceded code size by combining mova and
+ packsswb
+ [fdfe5c83a2d7]
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt: nits
+ [7bb07b6e1b0f]
+
+ * source/common/x86/blockcopy8.asm:
+ copy_cnt 4x4, eliminated move instructions, +1x improvement
+ [d5efb8daf975]
+
+2014-09-05 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ fix getQuadtreeTULog2MinSizeInCU()
+ [efd6178a07f5]
+
+2014-09-04 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: enable SSE2 version of pixel_ssd_ss[]
+ [fd1e285675eb]
+
+ * source/common/x86/ssd-a.asm:
+ asm: fix output mistake in pixel_ssd_ss_4xN
+ [7909696bf148]
+
+2014-09-05 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/ContextTables.h:
+ fix cbf context
+ [5cd9f797d6f4]
+
+2014-09-04 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ssd-a.asm:
+ asm: replace ssse3 instruction in pixel_ssd_ss_*_sse2
+ [93db2f53fe57]
+
+2014-09-04 Steve Borho <steve@borho.org>
+
+ * source/common/x86/pixel-a.asm:
+ asm: fix SSSE3 in SSE2 build warning in unused primitive
+
+ Bug fix back-ported from x264. The function was not connected to any
+ primitive pointer in x264 or x265, so this is really just quieting
+ the warning
+ [1833be32ff21]
+
+ * source/common/quant.cpp:
+ quant: fix check macro
+ [1f07a2a99eef]
+
+ * source/common/quant.cpp:
+ quant: nits
+ [7ae1ffa141c1]
+
+2014-09-02 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/common.h, source/common/dct.cpp,
+ source/common/primitives.h, source/common/quant.cpp,
+ source/common/quant.h, source/encoder/entropy.cpp:
+ quant path cleanup
+ [735ba376211e]
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/test/mbdstharness.cpp:
+ quant_c optimization, downscaling qCoef from int32_t* to int16_t*
+ [43e127b048da]
+
+ * source/common/quant.cpp:
+ optimize cvt32to16_shl by replacing copy_shl
+ [7a5073a95658]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ added copy_shl primitive
+ [811d242433eb]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ added copy_shr primitive
+ [ec631987a40d]
+
+ * source/common/x86/asm-primitives.cpp:
+ temporarily disable avx2 version of copy_cnt primitive, need to
+ update as per new interface
+ [6d2a546f52ce]
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ conv16to32_count renamed to copy_count as per new interface
+ [75da68b8a8f1]
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/blockcopy8.h,
+ source/test/pixelharness.cpp:
+ conv16to32_count C interface modification, downscaling coeff from
+ int32_t* to int16_t*
+ [91e5a6476b1b]
+
+2014-09-01 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/dct.cpp, source/common/x86/blockcopy8.asm,
+ source/common/x86/const-a.asm, source/test/pixelharness.cpp:
+ cvt16to32_cnt optimization
+ [55039043fa39]
+
+2014-08-25 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/quant.cpp, source/common/quant.h:
+ signBitHidingHDQ optimization, downscaling coeff from int32_t* to
+ int16_t*
+ [aea5cf3ff1b2]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ rdoQuant optimization, downscaling dstCoeff fron int32_t* to
+ int16_t*
+ [dc9652f407f9]
+
+2014-09-02 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/test/mbdstharness.cpp:
+ nquant optimization, downscaling qCoef from int32_t* to int16_t*
+ [422184fd72a7]
+
+2014-08-25 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/quant.cpp:
+ quant.cpp, cleaned redundant code
+ [edc1675f4414]
+
+2014-09-02 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/vec/dct-sse41.cpp,
+ source/test/mbdstharness.cpp:
+ dequant_scaling optimization, downscaling quantCoef from int32_t* to
+ int16_t*
+ [e85f4a9235e3]
+
+ * source/common/x86/pixel-util8.asm:
+ dequant_normal asm code optimization as per new interface
+ [ac73ca63b9f3]
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/pixel-util.h,
+ source/test/mbdstharness.cpp:
+ dequant_normal optimization, downscaling quantCoef from int32_t* to
+ int16_t*
+ [ebfd59fb6351]
+
+2014-08-25 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/encoder/entropy.cpp,
+ source/test/mbdstharness.cpp:
+ count_nonzero primitive optimization, downscaling quantCoef from
+ int32_t* to int16_t*
+ [dc7c61a01000]
+
+2014-09-04 Anton Mitrofanov <BugMaster@narod.ru>
+
+ * source/common/x86/x86inc.asm:
+ x86asm: warn when inappropriate instruction used in function with
+ specified cpuflags
+ [cff4428396ac]
+
+2014-09-02 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/entropy.h:
+ TComDataCU: Reduced repeated function call to calculate depth range
+ [73450cfe71bd]
+
+2014-09-03 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ change index of m_buOffsetY[] from raster to zscan
+ [95eaa1854b78]
+
+2014-09-03 David T Yuen <dtyx265@gmail.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ Cleaned up TComDataCU::getQuadtreeTULog2MinSizeInCU for clarity and
+ a bit of performance
+ [e1c4b45b9749]
+
+2014-09-01 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm: avx2 asm code for dct4
+ [1e4dfa1b1a04]
+
+2014-09-04 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [b686cb0abd71]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: cleanup codeQtRootCbf
+ [7d81a06a1281]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/common/quant.cpp:
+ quant: use table for ctxCbf
+ [99754bc87944]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: cleanup codePredMode
+ [0c50af24fdeb]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: cleanup codeCUTransQuantBypassFlag
+ [7b364065ee45]
+
+2014-09-01 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ Entropy: Replaced getCtxQtCbf() with table
+ [8e4a0aeed2ca]
+
+2014-09-04 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [a184fed3e30c]
+
+ * source/common/version.cpp:
+ version: detect OpenBSD for version string (closes #76)
+
+ Fix from Brad Smith
+ [821c2eef4d52] <stable>
+
+ * source/CMakeLists.txt:
+ cmake: fix BSD link, only link with librt if it exists (closes #75)
+ [139d6b2a1b19] <stable>
+
+2014-09-03 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: enable 16bpp primitives of cvt32to16 and cvt16to32 for all
+ block sizes
+ [d122845b9cc8]
+
+2014-09-03 Min Chen <chenm003@163.com>
+
+ * source/test/mbdstharness.cpp:
+ testbench(nquant): the Round value must be less than (2 ^ qbits)
+ [cf9245ee6a72]
+
+2014-09-03 David T Yuen <dtyx265@gmail.com>
+
+ * source/common/common.h, source/encoder/analysis.cpp:
+ Resolve gcc warnings
+
+ * more parenthesis for macro
+ * changed signed to unsigned int
+ [0b13c852f029]
+
+2014-09-03 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ fix: hash/binary mismatch for new CU structure holds CU-specific
+ info
+ [00c381bf6158]
+
+2014-08-28 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/common/common.h,
+ source/encoder/analysis.cpp, source/encoder/analysis.h:
+ analysis: CU structure now holds CU-specific information,
+
+ Member fields include location inside CTU, boundary flags, offsets
+ from CTU origin. This will help replace the soon-to-be-gone initCU
+ and initSubCU functions.
+ [62c4779fb0bb]
+
+2014-09-01 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [c5624effb73c]
+
+ * source/encoder/ratecontrol.cpp:
+ Backed out changeset: 35b2d9e774c8
+
+ This patch disrupted CBR runs where we were unable to hit the target
+ bitrate. It is logically correct, but likely incomplete.
+ [dde992b96623] <stable>
+
+2014-08-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/x86/pixel-
+ util8.asm, source/encoder/encoder.cpp:
+ Merge with stable
+ [44b95661db56]
+
+2014-08-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: re-enable --cu-lossless
+ [269ba0a6ce8c] <stable>
+
+2014-08-25 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: fix decoder intra crash with --cu-lossless
+ [572988a922a1] <stable>
+
+2014-08-26 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ cu-lossless: fix inter hash mistake
+
+ The CU needs to be re-encoded if lossless is chosen as the best
+ mode.
+ [5a9e01a195a0] <stable>
+
+2014-08-30 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/dct.cpp, source/common/x86/pixel-util8.asm:
+ asm: fix dequant_normal
+ [3c309e5d9c8f] <stable>
+
+2014-08-29 Steve Borho <steve@borho.org>
+
+ * source/encoder/sao.cpp:
+ sao: fix signed loop bounds bug
+ [4e2d9ac6d489]
+
+2014-08-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: re-enable --cu-lossless
+ [c21ddfe6a6d9]
+
+2014-08-26 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ cu-lossless: fix inter hash mistake
+
+ The CU needs to be re-encoded if lossless is chosen as the best
+ mode.
+ [07291dff4048]
+
+2014-08-27 Steve Borho <steve@borho.org>
+
+ * source/test/mbdstharness.cpp:
+ mbdst: cleanup dequant test
+ [b18ae1fe86b8]
+
+ * source/test/mbdstharness.h:
+ mbdst: make buffers nice even size
+ [2c70fa36659e]
+
+ * source/test/ipfilterharness.cpp, source/test/testharness.h:
+ test: fix MSVC warnings
+ [dd540cb2c6b6]
+
+ * source/test/mbdstharness.h:
+ mbdst: align buffers to 32byte boundary
+ [6f620106312e]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ mbdst: fix memset lengths, change MEM_CMP_SIZE to MAX_TU_SIZE
+ [bebafa8cf718]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ mbdst: reshuffle varnames
+ [58323bef4ae1]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ mbdst: remove redundant mintbuf buffers
+ [1d3ba60370be]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ mbdst: remove unused mbuf4, rename other short output buffers
+ [e807dcd89eae]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ mbdstharness: remove completely unused arrays
+ [8a20115abc04]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ pixel: use fixed buffer allocations
+ [cc0887e5a958]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ ipfilter: use fixed buffer allocations
+ [d626070bc8c6]
+
+ * source/test/testbench.cpp:
+ testbench: move test benches from stack allocations to global
+ [8a247934f2d1]
+
+ * source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ intra: use fixed buffer allocations
+ [01f3a8e5fcc2]
+
+ * source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [5426270aee62]
+
+ * doc/reST/cli.rst:
+ docs: fix a typo
+ [ce614aebb395] <stable>
+
+ * source/test/mbdstharness.cpp:
+ mbdst: add missing test of dequant_scaling
+ [d471b6de26c9]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ mbdst: use fixed buffer allocations, cleanup some tests
+ [b5642a14c51f]
+
+2014-08-27 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove redundant function call
+ [5d246ebff000]
+
+2014-08-27 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix bug in predicting B frame bits in vbv
+ [35b2d9e774c8] <stable>
+
+2014-08-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [77fe0cc583e8]
+
+2014-08-27 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix bitrate accuracy for vbv in fast presets.
+ [a6c318bd69ce] <stable>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: rename m_bframes to m_leadingBframes
+ [c34b059dff1c] <stable>
+
+2014-08-26 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/common.h, source/common/deblock.cpp,
+ source/common/param.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/ratecontrol.cpp:
+ common: rename QP range macros to be consistent with x264
+
+ I find QP_MAX_SPEC to be a lot more self-explanatory than MAX_QP
+ [32891b95f669]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ types: remove generic TEXT_CHROMA enum, no longer used
+ [14fae9208078]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ pattern: use isLuma instead of restricted TextType range
+ [45359413afe6]
+
+2014-08-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: don't pass member variables to functions
+ [2d386372d543]
+
+2014-08-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ framefilter: move SAO init logic into the frame filter
+ [78804e5e360c]
+
+2014-08-26 Min Chen <chenm003@163.com>
+
+ * source/common/x86/x86inc.asm:
+ x86inc: Make INIT_CPUFLAGS support an arbitrary number of cpuflags
+
+ Ported from Henrik Gramner's recent commit to x264
+ [090480360cb9]
+
+ * source/common/x86/pixel-util8.asm:
+ asm: Minor pixel_ssim_end4 improvements
+
+ Reduce the number of vector registers used from 7 to 5. Eliminate
+ some moves in the AVX implementation. Avoid bypass delays for
+ transitioning between int and float domains.
+
+ Ported from Henrik Gramner's recent commit to x264
+ [391e1fbb92cf]
+
+2014-08-26 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/frameencoder.cpp:
+ fix m_initSliceContext (uninitialised m_sliceQp)
+ [863faab1a004]
+
+2014-08-25 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: fix decoder intra crash with --cu-lossless
+ [a0028e5b6177]
+
+2014-08-25 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComYuv.h, source/common/deblock.cpp,
+ source/common/param.cpp, source/common/shortyuv.h,
+ source/common/slice.cpp, source/common/slice.h,
+ source/encoder/analysis.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/sao.cpp:
+ replace g_rasterToPelX[g_zscanToRaster[idx]] by g_zscanToPelX[idx]
+ [5acfb12ec5d1]
+
+2014-08-25 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp:
+ Merge with stable
+ [44433a2d65dd]
+
+2014-08-25 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/x265.cpp:
+ rc: don't read slicetypes from qpfile in 2nd pass.
+
+ slicetype has to be taken from the stats file from prev pass.
+ [5fe473327183] <stable>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: write I/i slice in stats file based on whether openGop is
+ enabled or not.
+ [f0de8275ed4d] <stable>
+
+2014-08-23 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/quant.cpp:
+ fix lossless
+ [ad31cbb8c754] <stable>
+
+2014-08-23 Steve Borho <steve@borho.org>
+
+ * source/encoder/sao.cpp:
+ sao: nits
+ [e1f1e836e833]
+
+2014-08-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/sao.h:
+ sao: remove unused m_qp member
+ [e95c628b90ab]
+
+ * source/encoder/sao.cpp:
+ sao: nit
+ [a683fffa5245]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h,
+ source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: simplify entropy coder initialization [CHANGES OUTPUTS]
+
+ Remove the hack from the HM that preserves fract_bits from the first
+ row to all rows; it never made any sense and we don't pretend to be
+ anywhere near close to bit accurate with the HM anymore.
+
+ This commit removes the Entrppy coder in FrameFilter since it was
+ only used by SAO and moves it into the SAO class. The startSaoEnc()
+ method is removed entirely and another call to resetEntropy() (an
+ expensive method) is replaced with a load of the frame encoder's
+ m_initSliceContext
+ [f2fc8b1e1c3f]
+
+ * source/encoder/sao.cpp:
+ sao: fix inf loop bounds
+ [6e6756f94b27]
+
+ * source/encoder/framefilter.cpp, source/encoder/sao.cpp:
+ sao: fix MSVC warnings
+ [c9cf8ae5f7a0]
+
+2014-08-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/sao.cpp:
+ sao: minor logic simplifications and cleanups
+ [bad70432b1d3]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: use typedefs to simplify multi-dimensional mallocs
+ [3881d3af896f]
+
+ * source/encoder/sao.cpp:
+ sao: sChroma should have been isChroma
+ [ff799bffbaef]
+
+ * source/encoder/sao.cpp:
+ sao: handle malloc failures more cleanly
+ [e95ae26c6afa]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: rename shared table to m_tableBo
+ [e02ad51211b6]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: share m_lumaTableBo with chroma
+ [47ab66abd2f2]
+
+ * source/encoder/framefilter.cpp, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: use checked mallocs, disable SAO if any mallocs fail
+ [e93cf3c94bc4]
+
+ * source/common/common.h:
+ common: define a CHECKED_MALLOC_ZERO method to auto-reset allocated
+ memory
+
+ This is mostly useful when allocating buffers containing pointers,
+ to ensure the pointers are safe to free regardless of later malloc
+ failures
+ [36079a3dce67]
+
+ * source/Lib/TLibCommon/TComPicYuv.h, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: move getPicYuvAddr() to TComPicYuv and simplify
+ [eaf5eb7ae2d6]
+
+ * source/encoder/sao.h:
+ sao: remove unused m_tmpYuv and an obsolete comment
+ [87c08d2aaf56]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: luma and chroma can share a clip table
+ [50542271caba]
+
+ * source/encoder/sao.cpp:
+ sao: unify signOf
+ [d70e2bac56b5]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: use more compile-time values
+ [7fc8855656e2]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: we don't support different bit depths between luma and chroma
+ [d36617a8512d]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: remove vars which are dups of params
+ [5d67f4e4a351]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: fix warnings
+ [02ec546246ad]
+
+ * source/encoder/encoder.cpp:
+ Merge with stable
+ [2e17cb106b17]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: nit
+ [282c2c6f5ed1]
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ nits
+ [9cb0dfeac129]
+
+ * source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: convertLevelRowCol2Idx did not need to be a member function
+ [577e65afdb8d]
+
+ * source/encoder/framefilter.cpp, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ sao: merge create/destroy methods
+ [ed9d78aa312a]
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h,
+ source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: use m_param directly for user-configurables
+ [11d427f9ef26]
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/sao.cpp, source/encoder/sao.h:
+ sao: cleanup member prefixes, remove createPicSaoInfo and endSaoEnc
+ [a2e74591f674]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/common/CMakeLists.txt, source/common/common.h,
+ source/encoder/CMakeLists.txt, source/encoder/dpb.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h, source/encoder/sao.cpp,
+ source/encoder/sao.h:
+ pull SAO code into encoder/ and begin cleanup
+ [6a8df5dcb412]
+
+ * .hgtags:
+ Added tag 1.3 for changeset c1e4fc0162c1
+ [2e7d1569845e] <stable>
+
+ * source/encoder/encoder.cpp:
+ encoder: disable --cu-lossless until coding errors can be fixed
+ (refs #73)
+ [c1e4fc0162c1] [1.3] <stable>
+
+2014-08-21 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/bitcost.h:
+ simplify AMVPInfo to MV[2]
+ [97ea21754381]
+
+2014-08-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: nit, remove obsolete comment
+ [9461fc801cd2]
+
+ * source/encoder/encoder.cpp:
+ Merge with stable
+ [2585ce839546]
+
+ * source/encoder/encoder.cpp:
+ encoder: do not allow scaling lists to be used with 4:4:4 color
+ space (refs #72)
+
+ It causes hash mistakes
+ [3badda1ceda6] <stable>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: nit
+ [ed7509b29be2]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge with stable
+ [b4f833d41667]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: do not skip intra tu 32x32 unless TU intra depth is deep
+ (refs #71)
+
+ This may not be the best workaround for the bug, and needs a proper
+ long term fix.
+ [203c87c55bb3] <stable>
+
+2014-08-19 David T Yuen <dtyx265@gmail.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Removed code that will never be executed.
+ [4f2556521155]
+
+2014-08-19 Min Chen <chenm003@163.com>
+
+ * source/encoder/frameencoder.cpp:
+ fix single thread encode issue
+ [80129b1b6260]
+
+ * source/encoder/entropy.cpp:
+ cleanup: remove reduce condition check
+ [5a174ca360f3]
+
+2014-08-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ Merge with stable
+ [63cd8539e7d4]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: do not allocate noise reduction struct unless NR is
+ enabled
+
+ This fixes output mismatch between asm / no-asm for 4:4:4 encodes.
+ Why? I am not entirely sure yet, but this is an obvious bug fix.
+ [c97a9a62bce8] <stable>
+
+2014-08-19 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: nit
+ [b137f5c97c46]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: cleanup variable names and lossless comments
+ [c2fc2a087d4a]
+
+ * source/encoder/encoder.cpp:
+ Merge with stable
+ [75d01da6df07]
+
+ * source/encoder/encoder.cpp:
+ psy-rdoq: eliminate dependency between psy-rd, psy-rdoq and rdoq.
+
+ RDOQ is turned on by default in rdLevels 4 and above. Psy-rdoq can
+ be turned on if rdoq is enabled at that preset. Psy-rd can be turned
+ on with or without rdoq/ psy-rdoq.
+ [549c61d0436f] <stable>
+
+2014-08-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ param: correctly detect adaptive quant usage when checking --psnr
+ [dca792ce9786] <stable>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp:
+ Merge with stable
+ [d15367360097]
+
+2014-08-18 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ sao: move m_upBuff* to stack, fixes (#69)
+ [c979b32c8b51] <stable>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h:
+ cleanup: remove unused m_upBuff2
+ [8320283a7fe0] <stable>
+
+2014-08-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp:
+ encoder: fix deadlocks/crashes when picture is a single CTU row
+
+ 1. if only one row per frame, disable WPP it is pointless 2. if only
+ one row per frame, frame parallelism is (mostly) impossible 3. clamp
+ rateControlUpdateStats() to be within row count range
+ [eb2b3e34ea0d] <stable>
+
+ * source/common/param.cpp:
+ Merge with stable
+ [529ccfbed281]
+
+ * source/common/param.cpp:
+ param: typo
+ [b8356365135e] <stable>
+
+2014-08-17 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp:
+ quant: combine psy-rdoq scale and lambda into one variable
+
+ Reduces the number of 64bit multiplies required per psy-value
+ evaluation
+ [21506c40f704]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: pass bIsLuma to estBit() instead of limited TextType range
+
+ if the only options were TEXT_LUMA or TEXT_CHROMA, it is better to
+ use a bool argument and avoid ambiguity about TEXT_CHROMA_U or
+ TEXT_CHROMA_V
+ [92d07932c93c]
+
+ * source/common/quant.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: simplify EstBitsSbac
+
+ There was no reason for significantBits to be a different type than
+ all the other fix15 bit costs. And NUM_QT_ROOT_CBF_CTX is 1
+ [b37e0a8471ca]
+
+2014-08-18 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ Merge with stable
+ [13651e65b820]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: remove m_maxCuDQPDepth, simplify dqp logic
+ [9f038f7a2eb6]
+
+2014-08-18 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/deblock.cpp,
+ source/common/deblock.h, source/common/frame.cpp,
+ source/common/frame.h, source/common/param.cpp,
+ source/common/slice.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp:
+ refine depth related.
+
+ maxCUDepth: CU depth maxFullDepth: CU+TU or CU+PU depth unitSize:
+ always 4
+ [0eab29da63d3]
+
+2014-08-18 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: fix help syntax
+ [6a1b41049f71] <stable>
+
+ * source/common/param.cpp:
+ param: add psy-rd and psy-rdoq to param2string (for info SEI and
+ stats file)
+ [0e4558e42ccc] <stable>
+
+ * source/x265.cpp:
+ cli: update psy-rdoq rangw in CLI help
+ [cda8e5c21a9b] <stable>
+
+2014-08-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/cturow.h, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ ctu: optimize away per-row bitstream coders, no output changes
+
+ They were really only being used to hold the proper initial state
+ for each row. This avoids an entropy load/save per CU in
+ encodeSlice() and while I was in the area I removed another pile of
+ resetEntropy() calls. The initial slice entropy state is calculated
+ once and then kept in the frame encoder for all future uses.
+ [dd594e7362e2]
+
+ * source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/cturow.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp:
+ analysis: move encodeCU() methods and friends to Entropy
+
+ This function only encodes a fully finished CTU; it is performing no
+ analysis and it needs none of the features or members of the
+ Analysis class. It is much more clear as a member of the Entropy
+ class.
+
+ Note: the way bEncodeDQP is communicated is a huge mess and needs to
+ be cleaned up soon. And finishCU() can also likely be hugely
+ simplified
+ [bb6ea1337d82]
+
+2014-08-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge with stable
+ [2c68dc7e3827]
+
+ * source/encoder/analysis.cpp:
+ analysis: missing braces caused a bug in CABAC context save for rd=2
+ [5d5a4c09182d] <stable>
+
+2014-08-18 Tom Vaughan <tom.vaughan@multicorewareinc.com>
+
+ * doc/reST/introduction.rst:
+ introduction.rst edited online with Bitbucket
+ [9a0d24274357]
+
+ * doc/reST/introduction.rst:
+ introduction.rst edited online with Bitbucket - added link to MPEG-
+ LA
+ [bff42bfd0652]
+
+2014-08-16 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: fix typo, document default psy-rdoq value
+ [87400d5c90aa] <stable>
+
+ * build/regression/01build-and-smoke-test.bat,
+ build/regression/02perftest.bat, build/regression/commandlines-
+ example.txt, build/regression/config-example.txt, build/regression
+ /email-csv.py, build/regression/run.bat,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/encoder/compress.cpp:
+ merge with default, feature freeze for 1.3
+ [24a79f4d6f72] <stable>
+
+ * doc/reST/cli.rst, doc/reST/presets.rst, source/common/param.cpp,
+ source/x265.cpp:
+ param: enable --fast-intra for all fast modes and turbo first-pass,
+ document
+ [866f21378d94]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: use fast intra scan unconditionally in lookahead
+
+ We don't want the lookahead output to be variable depending on
+ --fast-intra since this would make two-pass turbo mode more
+ difficult.
+ [c01a334a1043]
+
+2014-08-15 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: improve documentation for psycho-visual options
+ [184748d40276]
+
+2014-08-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: nits
+ [6b14a488d586]
+
+ * source/common/quant.cpp, source/common/quant.h,
+ source/encoder/cturow.cpp, source/encoder/frameencoder.cpp:
+ quant: set lambdas at the same time quant QP is configured
+ [eb23702aacd8]
+
+2014-08-15 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: re-enable psy-rdoq range check for [0..10], print with two
+ digits
+ [1710b46949f2]
+
+ * source/encoder/rdcost.h:
+ rdcost: add arbitray scale to make --psy-rd 0..2 range give
+ acceptable quality
+ [8d48e5e726cd]
+
+ * source/common/quant.cpp, source/common/quant.h,
+ source/encoder/frameencoder.cpp:
+ quant: scale psy-rdoq by lambda
+
+ Using L1 lambda in RDO is unorthodox, but we already do the same
+ thing with psy-rd energy and it seems to work decently well here
+ weighting the reconstructed DCT coeff against the RD cost in psy-
+ rdoq.
+
+ The goal is for psy-rdoq 1 to be a safe and sane default
+ [810151a75aed]
+
+2014-08-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: avoid MSVC uninitialized variable warning
+ [4c09d2ef5f1b]
+
+ * source/common/quant.cpp:
+ quant: use optimized primitive for transquant bypass in
+ invTransformNxN
+ [ef25a0e7de3b]
+
+ * doc/reST/cli.rst, source/common/param.cpp:
+ param: don't allow turbo mode to increase rd-level, improve docs
+ [c4f0bbad98cf]
+
+ * source/encoder/analysis.cpp:
+ analysis: use macro and for-loop to simplify fast-intra
+
+ this changes behavior a bit; it's trying both +/-1 offsets instead
+ of just one. and it has to do one extra check at the end since mode
+ 34 isn't reached by the other previous loops
+ [07138e6ac952]
+
+2014-08-14 David T Yuen <dtyx265@gmail.com>
+
+ * source/encoder/analysis.cpp:
+ Added fast intra search option to Analysis::checkIntraInInter_rd0_4
+ [213f17c1492c]
+
+2014-08-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ nit
+ [08e9d25e2c72]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: fix HIGH_BIT_DEPTH build again
+ [7da2b731de30]
+
+ * source/encoder/analysis.cpp:
+ analysis: white-space nits, possibly exposing a logic bug
+ [e5083cf64df0]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp:
+ remove predict.h includes from TLibCommon/
+ [e66dbb50403b]
+
+ * source/common/quant.cpp:
+ quant: + has higher precedence than ?; use parens to fix
+ unquantShift logic
+ [e62f74712a16]
+
+2014-08-14 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/common.h, source/common/intrapred.cpp,
+ source/common/x86/asm-primitives.cpp, source/encoder/predict.cpp:
+ replace IntraFilterType[][] to IntraFilterFlags[] (aboid *35)
+ [5ccdcc853810]
+
+2014-08-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: initialise lowmode to 4.
+ [6b741cce14ac]
+
+2014-08-13 Steve Borho <steve@borho.org>
+
+ * source/common/common.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-util.h, source/encoder/predict.h:
+ fix HIGH_BIT_DEPTH compile on Windows
+
+ something included by predict.h breaks pixel-util.h for MSVC; so
+ move the filter table to common.h. It wasn't quite proper for asm-
+ primitives.cpp to include a header from encoder/ anyway.
+ [3d3bc732b9e7]
+
+ * source/common/quant.cpp:
+ quant: typo
+ [889f69d56b7e]
+
+ * source/common/quant.cpp:
+ quant: update comment for UNQUANT macro
+ [7c7d35fe1a14]
+
+ * source/common/quant.cpp:
+ quant: simplify UNQUANT() variables
+ [9ad7668756f7]
+
+2014-08-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/quant.cpp, source/common/scalinglist.cpp:
+ quant: remove extra upshift by 4 in s_invQuantScales
+
+ Adding 4 to unQuantPer was a bug, since unQuantScale was already
+ upshifted by 4.
+ [1921583cf797]
+
+2014-08-13 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/quant.cpp,
+ source/common/quant.h, source/encoder/cturow.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp:
+ move m_estBitsSbac from Quant to Entropy
+ [d66e257ace32]
+
+ * source/common/common.h, source/common/dct.cpp,
+ source/common/primitives.h, source/common/quant.cpp,
+ source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ asm: integrate denoise_dct, malloc NoiseReduction for alignment
+ [da6077b713c9]
+
+2014-08-13 Steve Borho <steve@borho.org>
+
+ * source/common/scalinglist.cpp, source/common/scalinglist.h:
+ scaling: remove array of rarely used trivially calculated values
+ [ebf2d550938c]
+
+ * source/common/scalinglist.cpp, source/common/scalinglist.h,
+ source/encoder/entropy.cpp:
+ scaling: remove s_numListsAtSize[], it is 6 at every size
+ [a2368a224ab3]
+
+ * source/encoder/predict.cpp, source/encoder/predict.h:
+ predict: nits
+ [0a9d6594872d]
+
+ * source/encoder/predict.cpp:
+ predict: prevent MSVC warning about int to bool conversion
+ [c87f14ecb186]
+
+2014-08-13 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/encoder/frameencoder.cpp:
+ refactor: cleanup setting up of lambda
+
+ move initialising qp and lambda manipulations in one place. remove
+ TEncSearch::setQP - misleading function name.
+ [0f9e8b2c0ece]
+
+ * doc/reST/cli.rst, source/x265.cpp:
+ cli: nits. fix typo
+ [740b794a19fe]
+
+ * source/encoder/frameencoder.cpp:
+ rc: bug fix - m_avgQpAq can be from 0-69.
+
+ It is already set within RateControl
+ [1dc741719013]
+
+2014-08-13 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: free param structures on early-outs
+ [03ea314a6e9d]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: fix HIGH_BIT_DEPTH link problems
+ [4ac29f78756c]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: adjust variable scoping to avoid GCC warnings
+ [12c265f0e413]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: nit
+ [d43e9a6a7cce]
+
+ * source/CMakeLists.txt:
+ cmake: bump build number
+ [44b784c61455]
+
+2014-08-12 David T Yuen <dtyx265@gmail.com>
+
+ * source/common/param.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h, source/x265.cpp, source/x265.h:
+ Added fast intra search option
+
+ This version calls intra_pred_allangs to create the predictions then
+ the faster search with satd
+ [d22dfb9df30f]
+
+ * source/Lib/TLibCommon/TComPattern.cpp, source/common/intrapred.cpp,
+ source/encoder/predict.cpp, source/encoder/predict.h:
+ Moved IntraFilterType from intrapred.cpp to predict.h to make it
+ available
+
+ and replace Predict::filteringIntraReferenceSamples
+ [f47c3e4be76c]
+
+2014-08-12 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: check for proper cost
+
+ Throws error when psyrd is enabled since cost is stored in
+ m_totalPsyCost and m_totalRDCost has MAX_INT64
+ [91ccff0ca74b]
+
+2014-08-12 Steve Borho <steve@borho.org>
+
+ * source/common/quant.h:
+ quant: initialize qp to impossible value so first set always works
+
+ A bug spotted by valgrind
+ [8a7f4bb1d1be]
+
+2014-08-12 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/param.cpp, source/encoder/encoder.cpp:
+ replace g_convertToBit[] to g_log2Size[] const table
+ [945e071f491f]
+
+2014-08-11 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm: AVX2 version cvt32to16_shl
+ [23d58a1819c7]
+
+2014-08-10 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/test/mbdstharness.cpp:
+ quant: remove scaledCoeff from nquant()
+ [2bdcfcc1bb33]
+
+2014-08-10 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: nits; add LF in frame stats of 2 pass
+ [94d9a0d50837]
+
+2014-08-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/level.cpp:
+ level: signal profile/level NONE if non-compliant configuration is
+ found
+
+ Once you get above a certain resolution, the CTU size must be at
+ least 32. There is no level that supports a smaller CTU, so signal
+ level NONE. It's my understanding that you cannot signal a profile
+ if the level is NONE, so we reset profile to NONE as well.
+
+ The same is true if NumPocTotalCurr is greater than 8; there are no
+ levels which support values that high. Instead of signaling the
+ closest level, we should signal profile/level NONE
+ [7965aacd35ae]
+
+2014-08-09 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp:
+ quant: improve flow and comments for last non-zero refinement
+ [6e4eb8542203]
+
+ * source/common/quant.cpp:
+ quant: comment improvements
+ [c9dd47a21b48]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: remove floating point operations from RDOQ [CHANGES OUTPUTS]
+
+ The output changes are minor. On modern CPUs the performance benefit
+ of this change is negligable since SSE double operations are similar
+ in performance to int64 operations. As a future optimization, we
+ need to figure out how to multiply lambda2 (FIX8 24bits) by signal
+ cost (FIX15 24bits) using 32-bit integers since 32bit multiply is
+ significantly cheaper than 64bit integer multiply.
+
+ Similarly, unquantAbsLevel can be larger than 16bits so multiplation
+ is done with int64. Note that we use signed int64 because with psy-
+ rdoq the costs could go negative.
+ [4f1ce079b4a4]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: cleanup chroma QP function
+
+ With a unique function name, protected access, and only called from
+ one location, the ttype check could be removed.
+ [5132c37cdb38]
+
+ * source/common/quant.h:
+ quant: header cleanups, no functional change
+ [33c6c661905c]
+
+ * source/common/quant.cpp:
+ quant: use standard rd cost formula for sign-hiding [CHANGES
+ OUTPUTS]
+
+ The previous RD formula was simply inexplicable, though it did work
+ fairly well.
+
+ Old approach: deltaU[blkPos] = (scaledCoeff[blkPos] - ((int)level <<
+ qbits)) >> (qbits - 8); int64_t invQuant =
+ ScalingList::s_invQuantScales[rem] << per; int64_t rdFactor =
+ (int64_t)((invQuant * invQuant) / (lambda2 * 16) + 0.5); costUp =
+ rdFactor * (-deltaU[blkPos]) + rateIncUp[blkPos];
+ - wat? -
+
+ New approach: int d = abs(signCoef) - UNQUANT(absLevel + 1); costUp
+ = (((uint64_t)(d * d)) << scaleBits) + lambda2 * rateIncUp[blkPos];
+
+ Using this approach the results are nearly the same (they appear to
+ be slightly better) but now we can probably add psycho-visual
+ tunings to the sign hiding feature
+ [e18b85eeb6c5]
+
+ * source/common/quant.cpp:
+ quant: do not check CG bitmap for implied-present coeff groups
+ [220e217152cf]
+
+ * source/common/quant.cpp:
+ quant: reduce conditional expression depths (mostly for readability)
+ [95b1d7535af8]
+
+2014-08-08 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp:
+ quant: avoid an extra shift by adjusting the unquant coeff shift
+ [4003cbf60782]
+
+ * source/common/quant.cpp:
+ quant: improve variable names and comments (no behavior change)
+ [d6723db1e8ec]
+
+ * source/encoder/entropy.cpp:
+ entropy: simplify sign hide flag
+ [84acc8eb8d9c]
+
+2014-08-07 Min Chen <chenm003@163.com>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ asm: cvt32to16_shl[*] for TSkip
+ [091a63164c41]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ asm: cvt16to32_shr[*] for TSkip
+ [8cd2e8c9a3ba]
+
+2014-08-08 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/quant.cpp:
+ denoise: fix numCoeff (bug from 42b1d7c17510)
+ [ef2602935c59]
+
+2014-08-07 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp, source/test/testbench.cpp:
+ main10: create a hybrid all-angs primitve for 16bpp compiles
+
+ The all-angs primitive is highly optimized assembly code that avoids
+ a lot of redundant work. The all-angs C ref is horribly slow, doing
+ redundant work to mimic the output of the all-angs assembly code.
+ Since we have no high bit depth assembly for these functions, we'll
+ use a shim C function that works very similar to the C ref but it at
+ least uses optimized primitives.
+
+ intra_allangs4x4 3.64x 6619.54 24097.30 intra_allangs8x8 5.66x
+ 13722.49 77694.97 intra_allangs32x32 4.57x 246943.81 1129159.50
+
+ before: encoded 1253 frames in 104.37s (12.01 fps), 366.08 kb/s,
+ SSIM Mean Y: 0.9889624 (19.571 dB)
+
+ after: encoded 1253 frames in 95.62s (13.10 fps), 366.08 kb/s, SSIM
+ Mean Y: 0.9889624 (19.571 dB)
+ [33702c567e50]
+
+ * source/encoder/entropy.cpp:
+ entropy: remove implicit memset from constructor
+
+ Before we do further refactors, we want Entropy instances allocated
+ on the stack to not perform any needless initialization work
+ [49b593197330]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: pad size of context array to 32 * 5 bytes
+ [f6e38749049c]
+
+ * source/Lib/TLibCommon/ContextTables.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: remove ContextModel structure, use uint8_t directly
+ [04567c40dae5]
+
+ * source/Lib/TLibCommon/ContextTables.h, source/encoder/entropy.cpp:
+ entropy: remove bBinsCoded from ContextModel (no more users)
+ [4297617da24c]
+
+ * source/common/slice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp:
+ entropy: disable signaling of CABAC init state
+
+ This flag, which was already disabled when frame parallelism is in
+ use (which is nearly always) was of limited utility. It did not
+ improve compression efficiency by any measurable amount, and it was
+ expensive to compute. But the quality which made it expendable was
+ that it was the only user of the bBinsCoded flag in the
+ ContextModel; forcing us to copy twice as much data every time we
+ copy a context.
+
+ With this feature removed, the context model can be reduced to a
+ single uint8_t state variable.
+ [3fdb78507aea]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nit
+ [b89417dfa782]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: avoid redundant calls to resetEntropy()
+
+ All of the entropy coders need to be reset to the same state at the
+ start of the frame's analysis. There is no point in re-calculating
+ this initial state repeatedly for each row
+ [83880abea807]
+
+ * source/common/quant.cpp:
+ quant: avoid runtime check of transform shift size
+ [8e68a1db7c04]
+
+2014-08-07 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: cleanup
+ [8e45fc7c5521]
+
+2014-08-07 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/param.cpp:
+ rc: set rdlevel to 2 in fast first pass for multipass encode.
+
+ increases speed of the first pass by over 70% in the slower presets
+ with almost the same quality in the final pass.
+ [5a0e2a7f9ad3]
+
+2014-08-07 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/shortyuv.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter16.asm, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/common/x86/pixeladd8.asm,
+ source/common/x86/x86util.asm, source/encoder/analysis.cpp,
+ source/test/pixelharness.cpp:
+ asm: cleanup unused sub_ps and add_ps
+
+ sub_ps and add_ps are used by CU or TU level, not PU level.
+ [c29e37317d46]
+
+2014-08-07 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/ContextTables.h, source/encoder/entropy.cpp:
+ entropy: remove m_ prefix from ContextModel.state, other nits
+ [029563495b6e]
+
+2014-08-06 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: log noise reduction use/strength
+ [619633a933f6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/slice.h,
+ source/encoder/frameencoder.cpp:
+ refactor: move motion reference pointers from TEncSearch to Slice
+
+ The actual storage for the MotionReference instances lives in the
+ FrameEncoder, to save memory, but we don't want the analysis code to
+ be aware of the FE so we give it a pointer to this array. Having
+ that pointer live in TEncSearch forces us to update this pointer
+ each time a worker thread starts a new job.
+
+ Having the pointer in Slice means we only have to set it once, when
+ the slice first starts to be encoded. And having this pointer next
+ to the RPS data in the slice header makes this more coherent.
+ [03de9eef4244]
+
+ * source/common/common.h, source/common/quant.cpp,
+ source/encoder/frameencoder.cpp:
+ denoise: further cleanups
+
+ x264 used buffer pointers so that they could swap between normal
+ denoise and "emergency denoise" when the QP became very high. We do
+ not have an emergency denoise and thus we don't need these pointers
+ at this time. This simplifies initialization and update logic.
+ [94cefc095d2f]
+
+2014-08-06 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/common.h, source/encoder/frameencoder.cpp:
+ noise reduction, cleaned unused buffer space
+ [ba6729e34f77]
+
+ * source/common/quant.cpp, source/encoder/frameencoder.cpp:
+ noise reduction, use all eight categories of transform for inter
+ blocks
+ [e0d08da20e7f]
+
+2014-08-06 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc : nit
+ [02d805ee3d38]
+
+2014-08-05 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/const-a.asm:
+ asm: cvt16to32_cnt[32x32] for TSkip
+ [ca70276334d2]
+
+2014-08-05 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/common/x86/ipfilter16.asm, source/common/x86/ipfilter8.asm,
+ source/common/x86/ipfilter8.h, source/common/x86/mc-a.asm,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm,
+ source/common/x86/pixel.h, source/common/x86/pixeladd8.asm,
+ source/test/ipfilterharness.cpp, source/test/pixelharness.cpp,
+ source/test/testbench.cpp, source/test/testharness.h:
+ primitives for RExt
+ [c473f49e2818]
+
+2014-08-05 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ TComPattern: remove redundant functions used for CIP
+ [56eaac5d6410]
+
+2014-08-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ me: clip motion search area to signaled motion vector length limits
+ [0d4723a0080c]
+
+2014-08-04 Steve Borho <steve@borho.org>
+
+ * source/common/cpu.cpp, source/common/x86/const-a.asm,
+ source/common/x86/cpu-a.asm, source/common/x86/mc-a.asm,
+ source/common/x86/mc-a2.asm, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h, source/common/x86/sad-a.asm,
+ source/common/x86/ssd-a.asm, source/common/x86/x86inc.asm:
+ asm: asm header updates
+ [22b1b01b95aa]
+
+2014-08-04 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/const-a.asm:
+ asm: cvt16to32_cnt[16x16] for TSkip
+ [1760c267c1e9]
+
+2014-08-04 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp, source/common/scalinglist.cpp,
+ source/common/scalinglist.h:
+ quant: change how RDOQ measures distortion [CHANGES OUTPUTS]
+
+ RDOQ, as it was written in the HM, expects scaled level values to be
+ output by quant; these are the output levels multiplied by the
+ quantizing coeffificient but without the rounding factor and without
+ the downshift. It would then measure distortion as the difference
+ between this scaled level and level << qbits (a rough unquant). To
+ make this math work, it was pre-calculating an error scale factor
+ (per block position, since the quantization coefficients can vary)
+ which divided the result by the squared scale factor and upshifting
+ to simultaneously account for the FIX15 nature of the signaling
+ costs and the uniform scaling of the forward transform. To roughly
+ summarize:
+
+ errScale = (1 << (15 - 2 * transformShift)) / (quantCoeff[i] *
+ quantCoeff[i]) levelScaled = level * quantCoeff[i] distortion =
+ levelScaled - (level << qbits); cost = distortion * distortion *
+ errScale + lambda2 * bitsFix15
+
+ It was forced to use floating point math for the errScale and
+ distortion calculations, and thus did not bother with fixed point
+ math for lambda2.
+
+ This commit changes the distortion measurement to be the difference
+ between the original (pre-quantization) DCT coefficient and the
+ unquantized level.
+
+ unquantAbsLevel = (level * quantCoeff[i] + pad) >> shift;
+ distortion = unquantAbsLevel - abs(signCoef); distScale = 1 << (15 -
+ 2 * transformShift); cost = distortion * distortion << distScale +
+ lambda2 * bitsFix15
+
+ Note that the same scale factor is still required to account for the
+ FIX15 bit cost and the forward DCT scale but now it is a simple
+ shift operation.
+
+ This commit does not change the data types; that will be a later
+ commit once the dynamic ranges have been properly evaluated. And
+ deltaU[], used by sign hiding, is left using the scaled level cost
+ basis for now.
+ [da57b1e8ac58]
+
+ * source/common/quant.cpp:
+ psy-rdoq: fix unquant shift factors
+
+ dequant coefficients are made with s_invQuantScales[rem] << 4, so to
+ perform an unquant we must remove those four bits from dequantCoeff
+ [08304a298065]
+
+ * source/common/quant.cpp:
+ quant: remove TODO comment
+
+ Yes, there is a reason to check maxAbsLevel < 3 here, diffLevel
+ below can only be 0, 1, or 2.
+ [ae7c5f4a842d]
+
+2014-08-01 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/param.cpp,
+ source/common/param.h, source/encoder/api.cpp, source/x265.cpp,
+ source/x265.h:
+ rc: add slow first pass as option. set turbo first pass as default
+ in 2 pass
+ [c5f2a20e6f4c]
+
+2014-08-04 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ bugfix: disable aq only when both aq-strength and cu-tree is off
+
+ AQ can be on when cutree is on even if aq-strength is 0.Do not force
+ aq to be off whenever aq strength is 0.
+ [44eb5e05423a]
+
+2014-08-04 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp:
+ psy-rdoq: include psy-cost in uncoded coefficient distortion
+
+ Without this adjustment, uncoded coefficients were possibly being
+ penalized over coded ones with less psy value.
+ [8edb2a5f3379]
+
+2014-08-03 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix MSVC warning about intptr_t conversion to int
+ [a2095baa3cbd]
+
+ * source/common/quant.cpp:
+ quant: nit
+ [774dc8b6a535]
+
+ * source/encoder/entropy.cpp:
+ entropy: cleanup calcCost, add EMMS for float safety
+ [b2ee9de29995]
+
+ * source/common/quant.cpp:
+ quant: assign a signal cost of zero to zero coeff after lastNZ
+
+ This stack variable was uninitialized otherwised, and could have
+ been used during the optimization of lastNZ
+ [7f550011c40f]
+
+ * source/common/quant.cpp:
+ quant: rdStats -> cgRdStats
+ [4addf282bf76]
+
+ * source/common/quant.cpp:
+ quant: cleanup coeff group zero-check code
+ [545d1ae4375b]
+
+ * source/common/quant.cpp:
+ quant: sign hide nits
+ [59398cdff016]
+
+ * source/common/quant.cpp:
+ quant: denoise nits
+ [42b1d7c17510]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: don't pass member variable to class method
+ [7d727cd9bc63]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: inline the quant method, only called from transformNxN
+ [f55d750331aa]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: disallow psy-rdoq if transformSkip was used
+
+ psy-rdoq is not possible without a transform. Or said another way,
+ we would need a different psy-rdoq approach for transform skip
+ [ede3a4679d98]
+
+ * source/common/quant.cpp:
+ quant: comment nits
+ [c97672cee4c3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/quant.cpp,
+ source/common/quant.h:
+ quant: remove curUseRDOQ argument from transformNxN, always true
+ [c01f8fd0985f]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp:
+ search: remove curUseRDOQ arguments from two more methods
+
+ residualTransformQuantInter and xEstimateResidualQT were always
+ called with curUseRDOQ = true, and the flag was never changed
+ [02ac2e9324b5]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: hard-code curUseRDOQ
+ [2ea423991b4a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp:
+ search: remove curUseRDOQ argument from encodeResAndCalcRdInterCU,
+ always true
+ [dcf8948beac2]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: hoist IEP_RATE out of getICRateCost
+ [01116c890510]
+
+2014-08-01 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/common/x86/const-a.asm:
+ asm: cvt16to32_cnt[8x8] for TSkip
+ [49bab9bdf2a3]
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/quant.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ asm: cvt16to32_cnt[4x4] for TSkip
+ [6f502ab94357]
+
+ * source/common/x86/x86inc.asm:
+ update header and support Intel IACA marker
+ [e6184896aa7b]
+
+2014-08-02 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp:
+ quant: change lastCG into a bool, use isOne flag to avoid abs()
+ calls
+ [69beab744475]
+
+ * source/common/quant.cpp:
+ quant: consistent comment style, improve comments
+ [b12ac8919761]
+
+ * source/common/quant.cpp:
+ quant: levelDouble -> levelScaled
+
+ This always confused the heck out of me. The level was not doubled,
+ it was not a double, and it wasn't squared. It was just the level
+ scaled by the quant scale factor
+ [28c35f8e4f43]
+
+ * source/common/quant.cpp:
+ quant: rename sigCost to codedSigBits, comment nit
+ [a28d5ae1b52a]
+
+ * source/common/quant.cpp:
+ quant: RDO_CODED_LEVEL macro can now be inlined for easier debugging
+ [9bb93a267300]
+
+ * source/common/quant.cpp:
+ quant: re-order rdoq logic so only one RDO_CODED_LEVEL() call is
+ required
+ [30f1f1d739db]
+
+2014-08-01 Steve Borho <steve@borho.org>
+
+ * source/common/quant.cpp:
+ quant: more readability nits - no output changes
+ [ed49f875ab20]
+
+ * source/common/quant.cpp:
+ quant: improve comments for trailing zero coeff
+ [f14d233107d4]
+
+ * source/common/quant.cpp:
+ quant: remove redundant level intialization
+ [d341acd13af2]
+
+ * source/common/quant.cpp:
+ quant: blockUncodedCost -> totalUncodedCost, improve comments
+ [3b8853b12d9c]
+
+ * source/common/quant.cpp:
+ quant: correct rounding factor for unquant
+ [253ad3eafaa2]
+
+ * source/common/quant.cpp:
+ quant: clarify last-nz optimization loop
+ [11a3a69d3e29]
+
+ * source/common/quant.cpp:
+ quant: rename costCoeff0 to costUncoded, add docs
+ [1c9a6a976e5d]
+
+ * source/common/quant.cpp:
+ quant: support scaling lists in psy-rdoq
+ [8767ddb686af]
+
+ * source/common/quant.h:
+ quant: make IEP_RATE an anonymous enum, it doesn't need storage
+ [be69e059808a]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: m_lambda2 no longer needs to be a member variable
+
+ it is only used in rdoQuant() and can be declared on the stack
+ [287d37822825]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: convert getCodedLevel() into a macro, remove m_transformShift
+ hack
+ [ae8c153ee91d]
+
+ * source/common/quant.cpp:
+ quant: simplify minAbsLevel
+ [db62272d284c]
+
+ * source/common/quant.cpp:
+ quant: hoist some calculations out of the loop
+ [32b4aa0eb4fb]
+
+ * source/common/quant.cpp:
+ quant: delay err3, err4 calculation until/if necessary
+ [244ba5fa80d4]
+
+ * source/common/quant.cpp:
+ quant: apply scale factor in just one place
+ [2a7315a37d67]
+
+ * source/encoder/dpb.cpp:
+ dpb: cleanup decodingRefreshMarking()
+ [6b1753638790]
+
+ * source/common/slice.h, source/encoder/dpb.cpp:
+ dpb: remove checks for slice types we do not emit
+ [963b8e7b1dff]
+
+ * source/encoder/dpb.cpp:
+ dpb: style nits
+ [5d1bd6097113]
+
+ * source/encoder/dpb.cpp:
+ dpb: getNalUnitType() cannot return NAL_UNIT_CODED_SLICE_IDR_N_LP
+ [b911b02737c8]
+
+ * source/encoder/dpb.cpp:
+ dpb: remove redundant call to getNalUnitType(), output will not
+ change
+ [fb24f965eade]
+
+2014-08-01 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: enable abr reset in the first pass of two pass encode.
+
+ observe this improves second pass results in ultrafast presets for
+ some videos.
+ [a9a7f0933ecc]
+
+2014-08-01 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/predict.cpp,
+ source/encoder/predict.h:
+ cleanup: move m_predYuv and m_predTempYuv from predict to TEncSearch
+ [a74b24444ae8]
+
+2014-08-01 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/predict.h:
+ predict: whitespace nits
+ [3db5fda6abf0]
+
+2014-07-31 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp:
+ rc: update vbv for all b frames
+
+ HEVC is complex (and slow) enough that we can afford to update/plan
+ the VBV buffer states for all frames, not just I and P. The leads to
+ smoother rate control, particularly when there are large stretches
+ of B frames, and less (over) compensation is necessary for P frames.
+ [e85b0aaa64e4]
+
+2014-07-31 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/predict.h:
+ predict: nits, cleanup, add TODO comments
+ [88a18a365d56]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/predict.cpp,
+ source/encoder/predict.h:
+ predict: save clipped MVs
+ [323e8e87f903]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/predict.cpp, source/encoder/predict.h:
+ predict: prepare motionCompensation sets base class fields
+ [8f30d3659f82]
+
+2014-07-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/dpb.cpp:
+ dpb: fix picture re-use bug introduced in bc53f6dcda7f
+ [29ca05751777]
+
+2014-07-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: remove unused flush function
+ [674fb6e4d24c]
+
+ * source/encoder/entropy.cpp:
+ entropy: remove redundant !isIntra() check
+ [b21a9eeec1f8]
+
+ * source/common/quant.cpp:
+ quant: use bisLuma
+ [8587668cf279]
+
+ * source/common/quant.cpp, source/common/quant.h:
+ quant: use x264 style lambda naming scheme
+ [77655ea856fe]
+
+2014-07-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/dpb.cpp, source/encoder/dpb.h:
+ dpb: cleanup prepareEncode()
+ [565603cfe031]
+
+2014-07-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/rdcost.h:
+ rdcost: settle on x264 style lambda naming scheme
+ [639bef366e3e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/rdcost.h:
+ rdcost: change input type of setC*DistortionWeight to uint16_t
+
+ the inputs were shorts, converted to doubles, passed to the
+ function, then floor() and casted to uint64_t
+ [5e7a5c1c3446]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/rdcost.h:
+ rdcost: move zeroPel buffer to TEncSearch, its only user
+ [79d976fdc263]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/rdcost.h:
+ rdcost: keep psy-rd scale factor as an int (0..512), remove
+ psyRdEnabled()
+ [fdb6bb3b2763]
+
+2014-07-31 Steve Borho <steve@borho.org>
+
+ * source/common/common.h:
+ common: remove unused SCALING_LIST_PARAMETER enum
+ [5d6c2ddd5620]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ TComRom: nits
+ [cbf7a9c4be88]
+
+2014-07-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [667a38aaccff]
+
+ * source/encoder/entropy.cpp:
+ entropy: use bIsLuma in codeCoeffNxN()
+ [a800a5ca5db7]
+
+ * source/common/slice.h, source/encoder/entropy.cpp:
+ slice: allow loop filter boundary flag to be analyzed
+ [89316a3d04b6]
+
+ * source/common/quant.cpp, source/common/quant.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h:
+ quant: use bIsLuma args instead of using a subset of TextType
+ [32bc57acf918]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/CMakeLists.txt,
+ source/common/quant.cpp, source/common/quant.h,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/predict.h:
+ TComTrQuant to Quant
+ [3c659845e4dc]
+
+ * source/common/scalinglist.h, source/encoder/entropy.cpp:
+ scaling: use anonymous enums for class constants
+
+ these didn't need to be integers, they didn't need storage. They're
+ only used to declare arrays and enforce loop bounds. This fixes a
+ link error in debug compiles on Linux. While I was at it I improved
+ the comments and moved one definition to entropy.cpp since that was
+ the only place it was used.
+ [0b0d398f35ca]
+
+2014-07-30 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/CMakeLists.txt,
+ source/common/intrapred.cpp, source/encoder/CMakeLists.txt,
+ source/encoder/analysis.h, source/encoder/predict.cpp,
+ source/encoder/predict.h:
+ predict: predict.cpp/.h defined, hungarian function names cleaned
+ up, warnings removed
+ [c32a86702b68]
+
+2014-07-30 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: disable range checks for psy-rdoq while we tune it
+ [3d814fd1268b]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/common/scalinglist.cpp:
+ defs: remove DISTORTION_PRECISION_ADJUSTMENT, fix bug in
+ 2e22ea6ec4bc
+
+ FULL_NBIT was disabling this macro for even 16bpp builds, but I
+ accidentally enabled it. Since it was previously disabled for every
+ build, and is only even present in SAO and quant, it is best to just
+ remove it completely.
+ [38349967645f]
+
+2014-07-25 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp,
+ source/encoder/encoder.cpp:
+ psy-rdoq: implementation of psy-rdoq (highly experimental)
+
+ This initial version is storing a temp variable in TComTrQuant to
+ avoid adding even more parameters to getCodedLevel() and it is
+ ignoring scaling lists in the unquant operation. Currently, you may
+ need large psy-rdoq scale values to have any real effect. It needs
+ lots of testing.
+ [06dcd7c5df6e]
+
+2014-07-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: minor cleanups
+ [df8314a1d3cb]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: rename absLevel to level, remove diffLevel
+ [09ae268bb0ce]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: readability nit
+ [ddef8e2d88fd]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: pass curCostSig to getCodedLevel as an integer
+ [4cb71a283ae3]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: return signal cost from getRateLast(), do not include lambda
+ [e0320502f9ea]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: don't bother with extra temp variables
+ [5210fca67553]
+
+2014-07-29 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix output non-determination bug
+
+ When temporal candidates end up as MVP candidates, they can reach
+ beyond the available region of valid pixels in the reference
+ picture. In that case, we should not try to measure distortion
+ there, it only introduces non-determinism. Just take the other MVP
+ without contest. If both MVP were out of range, we default to mvpIdx
+ = 0.
+
+ Note that there was never any risk of a decode error since when ME
+ runs it clamps all motion vectors to the range of available pixels.
+ The setting of this mvmin/mvmax range is assigned just after picking
+ the best of the two MVP candidates.
+ [05132ebe8413]
+
+2014-07-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: getICRate() and getICRateCost() do not need to be class
+ methods
+ [bb9b2fcf75ef]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: hoist lambda multiplication out of getICRateCost()
+ [e9e5f177a698]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: inline getRateSigCoef(), getRateSigCoeffGroup() and
+ getICost()
+ [f174808a7df4]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: improve documentation and code clarity, no logic change
+ [4012d5a6ff93]
+
+ * source/common/scalinglist.cpp:
+ scaling: factor prec into scalingBits
+
+ This makes errScale clearly function to remove quantCoeff^2, and add
+ this cost scale factor (which is just a bit shift). By factoring it
+ this way, we can probably remove the need for doubles in the near
+ future by not using the scaled coefficients in the stupid first
+ place.
+ [664eff34ef25]
+
+ * source/common/scalinglist.cpp:
+ scaling: cleanup
+ [71bce9ae1072]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/Lib/TLibCommon/TComRom.h:
+ move quant defines from TComRom.h to CommonDef.h; they are not table
+ sizes
+ [eeeb96ecf0c7]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/deblock.cpp,
+ source/encoder/entropy.cpp:
+ typedef: remove redundant ChromaFormat enums
+ [57a8320024ed]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/Lib/TLibCommon/TypeDef.h,
+ source/encoder/entropy.cpp:
+ defs: cleanup CommonDef.h and TypeDef.h again
+
+ TypeDef.h only defines enums, CommonDef.h only defines constants
+ (grouped together logically). Remove doxygenness
+ [b5339cbf1764]
+
+ * source/common/scalinglist.cpp:
+ scaling: further simplify scaling list calculation
+
+ It does more operations with ints, but mainly I just find this more
+ readable
+ [7c8fc08dfbd6]
+
+ * source/Lib/TLibCommon/CommonDef.h:
+ defs: remove FULL_NBIT, no change to logic
+ [2e22ea6ec4bc]
+
+ * source/common/scalinglist.cpp:
+ scaling: replace pow(2.0, -2.0 * transformShift) with shift
+ adjustment
+
+ Result is the same
+ [e51017789090]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h, source/encoder/entropy.cpp:
+ quant: use ScanType enum as type for scanType, other cleanups
+ [8d1b7dc5b832]
+
+ * source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h, source/encoder/entropy.cpp:
+ quant: move enums for scan order to TComRom together with the tables
+ [fecc01d4c27f]
+
+2014-07-29 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp:
+ rc: fix crash in 2 pass for faster preset (ultrafast - faster)
+ [a9678988dda2]
+
+2014-07-29 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/sei.h:
+ hrd: add a comment about when an APS is required, update SEI
+ [2263fe1c05f1]
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp:
+ sei: fix byte alignment following HRD SEI
+ [dbec825c30ad]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/CMakeLists.txt, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ cmake: enable full warnings for remaining TLibEncoder files
+ [3a1245fb52a4]
+
+2014-07-28 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: delay getTUEntropyCodingParameters() until known necessary
+ [2834687bcb51]
+
+2014-07-29 Albert Wang <Albert Wang>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix for crash in frameencoder when AccessUnitDelimiter
+ is on
+
+ The m_entropyCoder need to set the bitstream first before calling
+ codeAUD, otherwise a crash will happen.
+ [47e6a51b943f]
+
+2014-07-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/CMakeLists.txt:
+ remove sign compare warnings from TLibEncoder, cleanup SAO
+ [a021b541a2ef]
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp, source/encoder/weightPrediction.cpp:
+ rc,weight: nits
+ [0308c9e187be]
+
+2014-07-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ rc: call getEstimatedPictureCost() from API thread, prevent race
+ hazards
+ [2bc34d32e6cc]
+
+ * source/encoder/dpb.cpp:
+ dpb: cleanup
+ [bc53f6dcda7f]
+
+ * source/Lib/TLibCommon/TComPicSym.h, source/common/slice.h,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/ratecontrol.cpp:
+ slice: move m_bReferenced to picsym and rename for clarity
+
+ This flag was being used for two purposes and introducing race
+ hazards:
+
+ 1. determining if a picture in the DPB must be signaled in an RPS 2.
+ determining if the slice type is referenced (non-b)
+
+ The m_bHasReferences variable on the picsym is used for the first
+ purpose. The macro IS_REFERENCED(slice) is used for the second
+ purpose.
+
+ The m_isReferenced member variable on the frame encoder was removed
+ and it just checks the slice type directly.
+ [3c50a7e516ed]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nits
+ [e84b28132be1]
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ frameencoder: re-order compressFrame() to avoid dependency problem
+ with HRD
+
+ 1. if --hrd is enabled, the buffer period SEI needs data set by
+ rateControlStart 2. rateControlStart may block, so get compute heavy
+ tasks done first, like weighted prediction analysis 3. hoist
+ rateControlStart and QP setup back out of compressCTURows() and move
+ other code into it that belonged there in the first place 4. move
+ framefilter setup logic together 5. don't measure rateControlEnd()
+ in frame wall time
+ [71c023799f3d]
+
+2014-07-28 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp:
+ search: separate bSkipRes == true path
+ [7eab256b60f0]
+
+2014-07-28 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: compute frame satd cost for zero latency
+ [eba786bbe4b5]
+
+2014-07-28 Steve Borho <steve@borho.org>
+
+ * source/common/scalinglist.cpp, source/common/scalinglist.h,
+ source/encoder/entropy.cpp:
+ scaling: remove m_refMatrixId; it was only used to return an int
+
+ Only one value of the matrix was ever used at a time, so we can
+ return thtat index directly from checkPredMode
+ [236df356402d]
+
+ * source/common/scalinglist.cpp, source/common/scalinglist.h,
+ source/encoder/entropy.cpp:
+ scaling: use simple ints for small counters and int32_t for scales
+ and coeffs
+
+ This fixes a gcc warning and mostly makes the code more readable and
+ avoids some (int) casts
+ [d66a3bd865e3]
+
+ * source/common/CMakeLists.txt:
+ cmake: ignore msvc warnings about forcing value to bool 'true' or
+ 'false'
+ [8bab5275baed]
+
+2014-07-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: fix for tskip
+ [6b286f66cfab]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: nits
+ [ea63a67164e5]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: inline transformSkip
+ [67e62a4d520f]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: inline invTransformSkip
+ [ec8f8d6e59d9]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: simplify dequant, remove redundant invQuantScales array
+ [28c7868814de]
+
+ * source/encoder/level.cpp:
+ level: signal level None if lossless coding - we have no bitrate
+ control
+ [74a5481eceb5]
+
+ * source/common/scalinglist.cpp, source/common/scalinglist.h,
+ source/encoder/entropy.cpp:
+ scaling: remove duplicate square-block size enums
+ [0d2eb9d6d7e0]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/common/scalinglist.cpp, source/common/scalinglist.h,
+ source/encoder/entropy.cpp:
+ scaling: move global arrays into class statics, rename
+ [9ad7abfab9d1]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/common/scalinglist.cpp, source/common/scalinglist.h,
+ source/encoder/encoder.cpp:
+ quant: move quant/dequant/errScale buffer maintenance to scaling
+ list class
+
+ This was a wasteful duplication of compute and memory. It was always
+ strange that TComTrQuant had so many internal references to the
+ ScalingList class, just to build these arrays itself.
+
+ As part of this refactor, ScalingList now has checked mallocs.
+ [57b57ec43838]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: remove x prefixes from remaining methods; no logic change
+ [82bd32283dd1]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: replace xGetIEPRate() with a constant
+ [96925cfd342d]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: remove x prefixes from scaling list methods
+ [991d931d9db4]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: use rem consistently for variables holding qp % 6
+ [1b39a252efac]
+
+ * source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ quant: remove default curUseRDOQ argument value
+ [250deb63f2ea]
+
+ * source/Lib/TLibCommon/TComTrQuant.h:
+ quant: remove default useTransformSkip argument value
+ [2f52f5c4a913]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: more coding style cleanup, update argument list in
+ xGetCodedLevel comment
+ [262af2694656]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: QpParam class to struct
+ [e4008f081c33]
+
+ * source/Lib/TLibCommon/TComTrQuant.h:
+ quant: re-order header and improve comments
+ [5758998128e1]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ quant: remove get/set methods for scaling list enable flag
+ [7435c0f166f6]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: remove access methods for the class's own members
+ [0625f303cd49]
+
+ * doc/reST/cli.rst, source/CMakeLists.txt,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/param.cpp, source/common/scalinglist.cpp,
+ source/common/scalinglist.h, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ api: expose scaling lists and psy-rdoq as a CLI/API options
+
+ psy-rdoq is not yet functional - option is ignored move scaling list
+ related globals to scalinglist.cpp from TComRom
+ [93a434014f5a]
+
+2014-07-26 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: don't pass m_resiDctCoeff to member methods
+ [00c127bd42e7]
+
+2014-07-25 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp, source/encoder/encoder.cpp:
+ param: move all consistency param tweaks into Encoder::configure()
+
+ x265_check_params() shouldn't be modifying the param structure; it's
+ role is to spot invalid configurations and prevent crashes in
+ encoder creation.
+ [a86d9aaaa7d7]
+
+2014-07-26 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ quant: cleanup initialization; catch malloc failures. rename
+ m_tmpCoeff
+ [db5642f2e4b7]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: nits
+ [a28a01820e30]
+
+2014-07-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: cleanups
+ [b60d35a06d3a]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: cleanup signBitHidingHDQ()
+ [50db97f20e61]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ quant: simplify setQPforQuant
+ [3f205a75877b]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: remove dead comment
+ [08de42d0b4a0]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ quant: do not malloc the EstBitsSbac structure, pass by reference
+ [82279c006a70]
+
+ * source/Lib/TLibEncoder/TEncSearch.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ white-space and brace nits
+ [fef8314f730b]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: simplify verbage, fix white-space, no logic change
+ [7a8e7a87c9a2]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/cturow.cpp:
+ search: move all init code into TEncSearch::initSearch()
+
+ TEncSearch owns all the objects being initialized
+ [915397565c05]
+
+ * source/encoder/framefilter.cpp:
+ framefilter: initialize saoRowDelay just once
+ [6ca9f09455ca]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp:
+ frameencoder: remove getSAO() access method; delay allocation of
+ SAOParam
+ [606b6ebed3b8]
+
+ * source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ move slice setup together into one function, reorder functions for
+ clarity
+ [509fe705ed8d]
+
+ * source/common/slice.h, source/encoder/frameencoder.cpp:
+ slice: remove redundant initSlice(), m_numRefIdx[] is set by DPB
+ unconditionally
+ [b573c299fb31]
+
+ * source/common/slice.h, source/encoder/dpb.cpp:
+ slice: move coloc/tmvp flag setting all to one place
+ [d65c665f15f8]
+
+ * source/x265.h:
+ api: improve documentation of x265_encoder_encode
+ [f73c0902079f]
+
+2014-07-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/analysis.cpp:
+ analysis: cleanup early-skip
+ [dc595d2bfa36]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cudata: nits
+ [50e015720392]
+
+ * source/encoder/entropy.cpp:
+ entropy: nit
+ [a581b22e70e4]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/framefilter.cpp:
+ encoder: remove unused m_maxRefPicNum and m_maxNumOffsetsPerPic
+ [e6ff719bd703]
+
+2014-07-25 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: better document configuration options of --vbv-init
+ [66ed81577483]
+
+2014-07-25 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix crashes in vbv with 2 pass
+ [d3e2e487a488]
+
+2014-07-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/framefilter.cpp:
+ encoder: remove redundant m_pad array
+ [8aa4132d3097]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: fix uninitialized variable use reported by valgrind
+
+ m_conformanceWindow was not initialized at all; and this was causing
+ uninitialized values to be written to the SPS if padding was
+ necessary.
+
+ Remove unnecessary m_defaultDisplayWindow in the process
+ [c5aa92fff04a]
+
+ * source/encoder/encoder.cpp, source/encoder/entropy.cpp:
+ nits
+ [d8a2892b8044]
+
+ * source/common/param.cpp, source/common/slice.h,
+ source/encoder/encoder.cpp, source/encoder/level.cpp:
+ level: move all profile set/determine logic into one file, fixes for
+ MSP
+ [239cb2ba252e]
+
+2014-07-24 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: call x265_param_apply_profile() after applying file-reader
+ params
+
+ the Y4M headers could change param->internalCsp, so applying the
+ profile before the reader makes changes allows bugs. The CLI was
+ allowing an encode of:
+
+ x265 foo_422.y4m o.bin --profile main
+
+ Even though --profile main was trying to enforce 4:2:0; the color
+ space change happened afterward the profile was enforced and thus
+ invalidated the specified profile. After this fix the encode
+ properly fails with:
+
+ x265 [error]: Unsupported color space (2) on input aborted at input
+ frame 1, output frame 0
+ [cb6f58ca056e]
+
+ * source/x265.cpp:
+ cli: nit
+ [88afb4a4bcee]
+
+2014-07-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp:
+ qtLayer in reverse order
+ [11f8f6e4be20]
+
+2014-07-22 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/shortyuv.cpp, source/common/shortyuv.h,
+ source/encoder/analysis.cpp, source/test/testbench.cpp:
+ refine partition size related
+
+ - reorder LumaPartitions to simplify partitionFromLog2Size()
+ - remove unused
+ [64a3b661b79a]
+
+2014-07-24 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: log multi-pass state
+ [670e330e4120]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: nits
+ [f54d5368590a]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: instrument all error conditions in initPass2()
+
+ it's not helpful to abort the encode with no hint as to why
+ [650c2d3c5194]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: nits
+ [74630a9af6c9]
+
+ * doc/reST/cli.rst:
+ rest: better document that -I N -i N does not disable scenecut
+ detection
+ [63a4b5c790ca]
+
+ * Merge with stable
+ [8b59410a70be]
+
+ * source/encoder/bitcost.cpp, source/encoder/bitcost.h:
+ bitcost: increase size of cost arrays, for pessimal situations
+
+ MVD is MV minus MVP. MV could be BC_MAX_MV and MVP could be
+ -BC_MAX_MV
+ [a12920e08700] <stable>
+
+ * source/encoder/bitcost.h:
+ bitcost: fix bitcost() function, broken 13 months ago by
+ 07015bbe306b
+
+ when bitcost() was first introduced, we had two competing table
+ formats for the s_bitsizes[] array. Eventually the x264 style array
+ won out, but this function was not updated.
+
+ This bug was almost harmless, bitcost() could still evaluate
+ differences in bit costs correctly, but the upshift caused read
+ bound exceptions when the motion vectors became close to the HEVC
+ max of 4k.
+ [49ea5391828c] <stable>
+
+ * source/x265.cpp:
+ cli: reorder argument help for clarity, add more sections
+ [b78d4dc01e2c]
+
+2014-07-24 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/param.cpp, source/x265.cpp:
+ rc: add cli options for multi-pass rate control
+ [5955c949ef8c]
+
+2014-07-24 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/common/CMakeLists.txt, source/common/deblock.cpp,
+ source/common/deblock.h, source/common/loopfilter.cpp,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ port TComLoopFilter Functions into /common/deblock
+
+ 1. Rename TComLoopFilter to Deblock 2. Remove hungarian notation
+ function names and variables 3. Remove unused or empty functions
+ [6c7a31f1b029]
+
+2014-07-23 Steve Borho <steve@borho.org>
+
+ * source/encoder/entropy.cpp:
+ entropy: reorder methods in general encode order for clarity, no
+ logic change
+ [47407360120a]
+
+ * source/common/slice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp:
+ entropy: remove ambiguity about timing info signaling
+ [5b22512f13d1]
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [2debe3d86181]
+
+ * source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: do not code a scaling list in PPS
+
+ The scaling list in PPS is only necessary to override the scaling
+ list in the SPS. We will only ever have at most one scaling list (at
+ this time)
+ [ab0c9b6cc30f]
+
+2014-07-24 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ rc: calculate mvBits, coefBits per Cu for 2 pass in skip mode as
+ well
+ [6c0929567805]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: compute average of qpaRc, qpAq per frame even in 2 pass
+ [7dd13d919265]
+
+2014-07-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.h, source/encoder/analysis.cpp:
+ pred: remove default motionCompensation argument values
+
+ bugs waiting to happen; they've bit us multiple times in the past
+ [342d72f0b613]
+
+ * source/encoder/analysis.cpp:
+ analysis: eoln fixup
+ [4f9ff4eeb7e3]
+
+2014-07-23 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ TComPrediction: fix MC error caused by previous patch
+ [db6b7046d4f0]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp:
+ TComPrediction: remove unused parameter warning
+ [6919c9f2432a]
+
+ * source/encoder/analysis.cpp:
+ analysis: whitespace nit
+ [379c44100fff]
+
+2014-07-23 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: tpyo
+ [9a1c64cc7f28]
+
+ * doc/reST/cli.rst:
+ rest: move profile, level, and tier into their own section
+
+ They really didn't belong combined with the slice-decision options
+ [8a8495c750ad]
+
+2014-07-23 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: add in extra X265_CHECK
+ [2ee1444e8a00]
+
+2014-07-23 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp:
+ analysis: setQPforQuant in checkIntraInter to fix the hash mismatch
+ at rd=5&6
+ [c1823bb20eed]
+
+2014-07-23 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: white space nits, remove isPSlice (next series)
+ [5fdc394bc5e0]
+
+2014-07-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComPrediction: remove redundant colorspace information
+
+ m_csp is sufficient inside the TEncSearch, TComPrediction structures
+ [30f41c3ef7d3]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp:
+ TComPrediction: save CU data (partAddr, width, height) as member
+ fields
+
+ Before motion compensation, save CU related data inside the
+ TComPrediction structure
+ [a5422a41c85a]
+
+2014-07-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComPrediction: remove TComDataCU as pointer to private functions
+ [d8d26a695cf6]
+
+2014-07-22 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: re-order code to avoid unreachable code warnings in 10bit
+ builds
+ [e3ad03b7c485]
+
+ * build/regression/01build-and-smoke-test.bat,
+ build/regression/02perftest.bat, build/regression/commandlines-
+ example.txt, build/regression/config-example.txt, build/regression
+ /email-csv.py, build/regression/run.bat:
+ remove very obsolete regression batch files
+ [fe3f3ec46306]
+
+ * source/encoder/level.cpp:
+ level: fix GCC signed/unsigned comparison
+ [345bc6231fa3]
+
+2014-07-21 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: update --profile, --level, --high-tier docs
+ [08da00a7e719]
+
+ * source/CMakeLists.txt, source/common/param.cpp,
+ source/encoder/api.cpp, source/encoder/level.cpp,
+ source/encoder/level.h, source/x265.cpp, source/x265.h:
+ level: add --high-tier and auto-configure VBV if --crf N --level M
+ (refs #61)
+
+ This patch is a major overhaul of the level enforcement logic. The
+ first obvious difference is that the user may specify the tier. The
+ second difference is that x265 will no longer run any configuration
+ that might generate non-compliant bitstreams.
+
+ Any of these conditions will cause the encode to abort if a minimum
+ decoder level was specified:
+
+ * picture size is too large
+ * frame rate is too high
+ * constant QP rate control is configured
+ * the specified level does not exist
+
+ Further, if CRF was specified, we now configure VBV using the
+ maximum CPB size and bitrate for their level/tier (and issue a
+ warning that the output may now be non-deterministic).
+
+ Note that the encoder will still encode the minimum decoder level
+ which covers the encode parameters. So even if you specify --level
+ 5.1, we may signal the stream as level 4.0-High if the stream should
+ be decodable at that level.
+
+ This further fixes the CLI to allow --level-idc or the shortened
+ --level, just as it now also supports --high-tier or the shortened
+ --high.
+ [5510d559c2bd]
+
+2014-07-22 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: bug fixes in 2 pass ABR
+
+ ratecontrol - fix duplication of bits in calculating m_totalBits
+ frameencoder - don't amortize totalBits in 2 pass ABR
+ [b85dbec30cc5]
+
+2014-07-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: prevent gcc shadow warning about int terminate and terminate()
+ [d303b4d860e9]
+
+ * source/encoder/analysis.cpp:
+ analysis: don't initialize members of base class in constructor
+ [eeea411e197a]
+
+ * source/common/param.cpp:
+ param: fix profile warnings in x265_param_apply_profile()
+
+ This function was likely never used since it was not supported by
+ the CLI till now. When the user specifies --profile Main10, they
+ intend that the output stream is decodable by a Main10 decoder. This
+ is true of any Main encode.
+
+ The reverse is not true for --profile Main and a Main10 encode. We
+ must return an error and abort the encode if --profile Main is
+ specified and the encoder was compiled for Main10 (HIGH_BIT_DEPTH).
+ [5835fa3a8281]
+
+ * source/x265.cpp:
+ cli: expose x265_param_apply_profile() via --profile
+
+ This is repairing an egregious oversight
+ [56e9d8a66527]
+
+ * source/encoder/level.cpp:
+ level: nit
+ [a2506d62d4af]
+
+ * source/encoder/api.cpp, source/encoder/encoder.cpp,
+ source/encoder/level.cpp, source/encoder/level.h:
+ level: move m_vps.maxDecPicBuffering logic into one function
+
+ This prevents duplicate logic from existing in two separate files
+ [72641fecf86a]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/common/slice.h:
+ ptl: move enums from TypeDef.h to slice.h
+ [5f64abf3a20a]
+
+ * source/common/slice.h, source/encoder/api.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/level.cpp, source/encoder/level.h:
+ slice: add ProfileTierLevel instance to VPS
+
+ The PTL data is coded in the VPS (first) and thus belongs with that
+ data structure, as it allows us to simplify arguments to the level
+ set and determination functions.
+ [7621ec03e9c6]
+
+ * source/encoder/level.cpp:
+ level: fix typo
+ [eed3099a90ea]
+
+2014-07-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/level.cpp:
+ fix for GCC warning about loop bounds
+ [bf78ebd06ed0]
+
+2014-07-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/analysis.cpp,
+ source/encoder/analysis.h, source/encoder/api.cpp,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ entropy: settle on Entropy class name and member names
+
+ Through all these various refactors the SBAC/CABAC/entropy classes
+ have all merged together and the member variables were a scattered
+ mix
+ [ca02fa285ac0]
+
+ * source/CMakeLists.txt:
+ cmake: tabs to spaces
+ [26458b8dcba4]
+
+ * source/CMakeLists.txt:
+ cmake: only create SONAME shared lib on POSIX systems (closes #62)
+ [80c1d35e5517]
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: prevent deadlock on encoder flush or close
+
+ 1. add a terminate() function to unblock any blocked rate control
+ methods 2. never block if the order ordinal is already above the
+ required ordinal 3. simulate start events when encoder is flushing
+
+ Without these changes, closing the encoder without flushing (CTRL+C
+ in the CLI) or encoding fewer frames than frame encoders (-F8 -f4)
+ could cause deadlocks
+ [a2fd8a71de61]
+
+2014-07-21 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: fix warnings in ratecontrol
+ [3801142d080d]
+
+2014-07-18 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: generate cutree offsets for 2nd pass from stats
+ [2f87f3c24b4a]
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ rc: fix sliceType of 2nd pass from prev pass stats
+
+ avoid doing sliceAnalyse in lookahead for 2nd pass
+ [1b2fbf3208ca]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: add 2 pass logic in rateEstimateQscale
+ [0461e091a7b5]
+
+2014-07-21 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp:
+ trquant: store QpParam for each component
+ [4d2c3d09e836]
+
+2014-07-19 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h, source/encoder/entropy.cpp:
+ scan order tables
+ [88310701f857]
+
+2014-07-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ TComWeightPrediction: initialising pointers to NULL
+
+ getWPScaling will assign appropriate weight pred tables to these.
+ [aa651ea5673c]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ TComWeightPrediction: add braces to prevent errors for an optional
+ else statement
+ [a30e3bd53959]
+
+2014-07-17 Michel Zou <xantares09@hotmail.com>
+
+ * source/CMakeLists.txt:
+ cmake: fix dll installation directory on Windows
+
+ On Windows the shared library (.dll) is considered RUNTIME and the
+ import library (.dll.a on MinGW or .lib on MSVC) as LIBRARY.
+ [eb983d29c11a]
+
+2014-07-17 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ssd-a.asm:
+ use macro HADDD to improve AMD performance
+ [7e9de0923541]
+
+2014-07-18 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: replaced functions with tables
+ [477a0a6bf89b]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: remove redundant functions
+ [6df47cdd3f47]
+
+2014-07-18 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/analysis.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: update ratecontrol stats in every frame, avoid frame parallelism
+ lag in abr
+
+ RateControl statistics are updated for every frame when refLagRows
+ number of rows are completed in processRowEncoder. With this updated
+ data rateControl predicts more accurate QP
+
+ This removes the previous hack which disabled frame parallelism for
+ the first half-second of video and replaces it with a more fine-
+ grained rate control call timing to achieve a similar ABR
+ improvement with less effect to frame parallelism.
+ [0a8ecd8a6cf9]
+
+2014-07-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.h, source/common/CMakeLists.txt,
+ source/common/scalinglist.cpp, source/common/scalinglist.h,
+ source/common/slice.cpp, source/common/slice.h,
+ source/encoder/encoder.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ split ScalingList class into its own header and source file
+
+ The PPS and SPS headers no longer have scaling list pointers, so
+ there is no need for it to be declared in the same header
+ [eef6867b9c53]
+
+ * source/encoder/dpb.cpp, source/encoder/ratecontrol.cpp:
+ a copy of POC is cached in the Frame struct
+ [e4199c04d78d]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/frame.h,
+ source/encoder/analysis.cpp, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp:
+ frame,cu: remove getSlice()
+ [ea61fd838115]
+
+ * source/Lib/TLibCommon/TComPicSym.h, source/common/frame.h,
+ source/encoder/dpb.cpp:
+ picsym: remove getSlice()
+ [821c875b2d39]
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/common/CMakeLists.txt, source/common/common.cpp,
+ source/common/frame.h, source/common/param.cpp,
+ source/common/slice.cpp, source/common/slice.h,
+ source/encoder/analysis.cpp, source/encoder/cturow.h,
+ source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/reference.cpp,
+ source/encoder/sei.cpp, source/encoder/sei.h,
+ source/encoder/weightPrediction.cpp:
+ move PPS, SPS, Slice and ScalingList to common/
+ [f04c98f33ca5]
+
+2014-07-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ slice: remove unused initWpScaling()
+ [9cbd9fc1710a]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/encoder/entropy.cpp:
+ slice: remove getWpScaling()
+ [601e61fb185f]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/common/piclist.cpp,
+ source/common/piclist.h:
+ slice: make xGetRefPic a PicList method
+ [b4643bc7ac7d]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: do not initialize fields that are always written
+ unconditionally
+ [eb6178f8449e]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ encoder: do some slice initializations only once
+ [37ea4eb500cf]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ entropy: slice->m_colFromL0Flag is a bool
+ [1bf5e0390f7d]
+
+ * source/encoder/dpb.cpp:
+ dpb: simplify check for m_bCheckLDC; make note for future
+ optimization
+ [f7624977ec9a]
+
+ * source/encoder/dpb.cpp:
+ dpb: remove check for B frame without L1
+
+ our lookahead won't emit B frames without a leading P frame
+ [fb9681ba75ac]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/entropy.cpp:
+ slice: remove m_bLMvdL1Zero
+
+ This feature, which signals L1 MVD is zero for an entire slice, was
+ never enabled because we never use the same frame list in L0 and L1.
+ [82c1fec5da66]
+
+ * source/encoder/entropy.cpp:
+ entropy: fix warning reported by llvm
+
+ /Users/steve/repos/x265/source/encoder/entropy.cpp:321:44: warning:
+ equality comparison with extraneous parentheses[-Wparentheses-
+ equality] if ((cu->getSlice()->m_numRefIdx[list] == 1))
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
+ [8eed1fac9ccb]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/nal.cpp,
+ source/encoder/nal.h:
+ wpp: generate stream size array as coded (in bytes) and pre-
+ calculate max offset
+
+ removes another per-frame alloc/free and redundant work
+ [93ab6ed75b01]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ slice: remove substream array, move to frame encoder
+
+ \0/ the slice structure no longer allocates memory
+ [5cbdfc4532d9]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ nit
+ [57f8e7264e9e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp, source/encoder/dpb.cpp:
+ replace slice->m_refPicList[][]->getPOC() with
+ slice->m_refPOCList[][]
+ [4c14b90fad83]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp:
+ slice: merge setRefPOCList() into setRefPicList()
+
+ Now both lists are always aligned so it is always safe to use the
+ POC table
+ [51caccd3b359]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/slicetype.cpp:
+ slice: remove getRefPOC
+ [eb2278d72afa]
+
+ * source/encoder/dpb.cpp:
+ dpb: perform setRefPOCList() directly after setRefPicList()
+
+ A precursor to combining the two functions
+ [c1acfb981082]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/dpb.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp:
+ slice: remove getRefPic(l,r)
+ [e2f90ba1de4a]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/entropy.cpp:
+ slice: remove setNumRefIdx
+ [ce65e2bd2f12]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/analysis.cpp,
+ source/encoder/dpb.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp:
+ slice: remove set/get for m_colRefIdx and m_sliceCurEndCUAddr
+ [4701e921b33d]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/entropy.cpp:
+ slice: remove getMvdL1ZeroFlag/setMvdL1ZeroFlag
+ [b2ac589c522e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/entropy.cpp:
+ slice: remove getColFromL0Flag()
+ [1268011090f0]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/weightPrediction.cpp:
+ slice: remove getNumRefIdx() access method
+ [785217b5ed5c]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: removed unused setRefPic() and setRefPOC() methods
+ [c7846351fc9f]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ slice: remove unused getNumRpsCurrTempList() method
+ [0f5cfda6a764]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ slice: remove get/set methods for slice QP and lastIDR
+ [3f024a5a40f0]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp:
+ slice: remove get/set methods for m_bReferenced
+ [aa785acc0d5f]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp:
+ slice: remove get/set methods for m_sliceType
+ [880285f10294]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ nit
+ [95a35fd1c0b7]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ slice: remove m_cabacInitFlag, it was write-only
+ [39f9cb10090a]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ slice: remove m_numEntryPointOffsets, it was write-only
+ [3a6a0307f6c6]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/analysis.cpp,
+ source/encoder/cturow.cpp, source/encoder/frameencoder.cpp:
+ slice: remove slice bit counter
+ [79c839303e2a]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp, source/encoder/weightPrediction.cpp:
+ slice: remove get/set methods for m_poc
+ [98b7f7a776b1]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ nits
+ [67c9a0c5ec56]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp:
+ slice: remove m_sliceSegmentBits and get/set methods for max-merge
+ [bf060c902d24]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp:
+ slice: remove m_saoEnabledFlag, m_saoEnabledFlagChroma - use
+ saoParams
+
+ SBac::encodeSliceHeader() was already using saoParams for chroma but
+ not for luma (inexplicably)
+ [fd4297676f76]
+
+ * source/encoder/frameencoder.cpp:
+ sao: combine if(){} expressions
+ [a5d5d329daf1]
+
+ * source/encoder/frameencoder.cpp:
+ sao: (bool == 1? ? true : false -> wat?
+ [0233b8965906]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix vbvBufferSize calculation
+ [930003de2009]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: nits
+ [901252fe8a16]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/frameencoder.cpp:
+ slice: cleanup m_nalUnitType and helper methods
+ [4c49302d8b19]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/weightPrediction.cpp:
+ slice: remove get/set methods for m_pic
+
+ This cleaned up TComDataCU::getPic() as a side-effect.
+ [72e3bd69cb70]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/entropy.cpp:
+ slice: temporal MVP was never disabled
+ [6e45eff6d2b3]
+
+ * source/encoder/encoder.cpp:
+ rc: HRD must be initialized prior to calling init()
+ [c06b0b9d3501]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ slice: remove unused deblock data, directly use status/offsets from
+ PPS
+
+ nits: reorder TComSlice for better clarity and remove initializer
+ list from constructor
+ [ba028e8d4115]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/frameencoder.cpp:
+ slice: remove unused slice QP deltas
+ [b5abd96ccc90]
+
+ * source/encoder/dpb.cpp, source/encoder/entropy.cpp:
+ nits
+ [134406df4863]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/entropy.cpp:
+ slice: we only use a slice-local RPS (none signaled in SPS)
+ [f5352780ad35]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/dpb.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ slice: TComReferencePictureSet -> RPS
+ [e6a8280a3c1a]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ slice: hoist constructor to header (it will be removed in later
+ commits)
+ [08232a102124]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/sei.cpp, source/encoder/sei.h:
+ slice: remove get/set methods for SPS and PPS, make pointers const
+
+ Nearly everywhere, SPS and PPS are used read-only, so making the
+ pointers const enforces this at compile time and allows the compiler
+ to make some optimizations. The few places that initialize or change
+ the headers are passed the original objects belonging to the top-
+ level encoder.
+ [419d1a1b0d39]
+
+ * source/encoder/frameencoder.cpp:
+ nit
+ [675a22d901af]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/reference.cpp, source/encoder/reference.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h,
+ source/encoder/weightPrediction.cpp:
+ slice: rename wpScalingParam -> WeightParam
+ [575d4a0d849b]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp:
+ pps: simplify deblocking signaling, disable slice override
+
+ Disable slice override of deblock-enable state and offsets - we do
+ no such thing and attempts at using these in the past have not been
+ effective.
+ [3e4616cffc90]
+
+ * source/encoder/encoder.h:
+ nits
+ [6d0c8efbe3ed]
+
+ * source/encoder/api.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ encoder: make SPS and PPS top-level encoder singletons
+
+ This fixes a subtle bug. If level requirements forced the max
+ references to be lowered, VPS and SPS maxDecPicBuffering was never
+ adjusted. Now, they are not configured until after level enforcement
+ has set them to final values.
+ [f0d157944c55]
+
+2014-07-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp:
+ pps: we never very chroma QP per picture, so remove
+ bSliceChromaQpFlag
+ [b59d09ca6c1b]
+
+ * source/encoder/encoder.cpp, source/encoder/entropy.cpp:
+ pps: move deblocking logic together, fix a couple signaling bugs
+ [bb5e9a11868c]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ pps: class to struct, remove m_ prefix, unify naming scheme
+ [677547b73129]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ pps: remove set/get methods and hard-coded members
+ [31d11036bf9c]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: white-space nits
+ [febec529cc80]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ vps: remove constructor, those values are always initialized
+ [c64bca550377]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ sps: fix check statement
+ [8193ac4172fe]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/sei.h:
+ sps: class to struct, remove m_ prefixes
+ [59782b2bc59c]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.h,
+ source/encoder/analysis.cpp, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/sei.h:
+ sps: remove set/get methods, remove members with hard-coded values
+
+ Note all the SPS members that could be replaced by direct access to
+ param. Removes m_vps pointer from slice, it was never set or
+ referenced
+ [e288df705bf3]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp:
+ vps: class to struct and other nits
+ [9f906f877ba8]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/analysis.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp:
+ pps: remove hard-coded getLog2ParallelMergeLevelMinus2(0)
+
+ and snuck in some other nits
+ [b9bb54fd5478]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ remove hard-coded pps->getSliceHeaderExtensionPresentFlag()
+ [ba3146812b42]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp:
+ nits
+ [92f32f4492f0]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp:
+ slice: remove redundant/unused scaling lists from SPS, PPS, and
+ Slice
+
+ The SPS and PPS were allocating their own scaling list instances and
+ never using them; with the recent refactors only their status flags
+ were coded. TComSlice had a pointer to the top-level scaling list,
+ but never used it.
+
+ "There can be only one!"
+ [8969598e1d91]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ slice: nits
+ [891f975f1ba5]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp, source/common/common.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp:
+ slice: remove trivial set/get methods, move all relavent functions
+ to the class
+ [164b43bfdf7a]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp:
+ slice: remove unsignaled m_temporalLayerNonReferenceFlag
+ [b3db2d76500b]
+
+ * doc/reST/cli.rst:
+ rest: fix crf min/max option names
+ [9213f5dea023]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: start to clean up scaling list struct
+ [04601befb930]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp:
+ slice: convert Window to struct, simplify names
+ [26f94fc58d5a]
+
+ * doc/reST/cli.rst:
+ rest: fix documented default AQ mode
+
+ As noted by Alex Ramsey
+ [c45eda4d780f]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/common/bitstream.h,
+ source/encoder/entropy.cpp, source/encoder/sei.h:
+ bitstream: change writeFlag() to take a bool to avoid int
+ conversions
+ [2737d0b05b72]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/sei.h:
+ vui: prune set/get methods and unsignaled fields
+ [cb5f30c19ccc]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ slice: finish cleanup of TComReferencePictureSet
+ [ab3e3c2b806f]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ slice: remove unused PPS ID
+ [06ceed0047c1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp, source/encoder/dpb.cpp:
+ brace nits
+ [f28129d63336]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/common/frame.cpp,
+ source/common/frame.h, source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp:
+ slice: Cleanup TComReferencePictureSet, prune the notion of long-
+ term-pictures
+ [afcfff7f654c]
+
+2014-07-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [d850cbf81e0f]
+
+2014-07-15 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/CMakeLists.txt,
+ source/encoder/analysis.cpp, source/encoder/analysis.h,
+ source/encoder/compress.cpp, source/encoder/cturow.h,
+ source/encoder/frameencoder.h:
+ port TEncCU functions into analysis structure
+
+ 1. Rename TEncCU to Analysis 2. Remove warnings (/wd4244 /wd4389
+ /wd4018) from TEncCU 3. Roll over compress.cpp into analysis.cpp 4.
+ Rename TEncCU to Analysis 5. Remove hungarian notation function
+ names
+ [76eb82b31c37]
+
+2014-07-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: assert to X265_CHECK
+ [6cf3a2414461]
+
+2014-07-15 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel.h, source/common/x86/ssd-a.asm,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ replace sse_sp(residual, ZERO) by ssd_s(residual)
+ [7e6ac3a85073]
+
+2014-07-15 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: define function for updating rate control statistics in
+ processRowEncoder
+
+ Rate control updates its statistics like bits in RateControlEnd.
+ With frame parallelsim enabled and N parallel frames running, the
+ feedback given to rate control is delayed until rateControlStart of
+ N frames are called. To avoid this delay, update rate control
+ statistics for every frame after encode of few frames are done in
+ processRowEncoder. By updating statistics for every frame we make
+ ABR to function more accurately (predicts more accurate QP) making
+ use of latest data rather than stale values.
+
+ Frame parallelism lag (the wait for reconstructed pixels) already
+ forces this delay between frames, this change will simply take
+ advantage of the progress made by referenced frames before each
+ frame is allowed to begin coding by having more accurate rate
+ control data.
+ [27a27d733e1e]
+
+2014-07-15 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h:
+ fix for crash when scalingList feature is enabled
+ [919fd9de54dc]
+
+2014-07-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/entropy.cpp:
+ entropy: remove obsolete check macro
+ [3499aa4fa20c]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: fix warning
+ [32aeb47c2d36]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: remove unused m_useDF
+ [6e0def026364]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp:
+ slice: remove more hard-coded fields
+ [3b0e141c3a2f]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComMotionInfo.h, source/encoder/encoder.cpp:
+ defs: remove more dead definitions
+ [105778f37879]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/sei.h:
+ hrd: remove *Minus1 from member names and semantics, remove m_
+ prefixes
+
+ Note that hrd->cpbSizeValue stored a "minus 1" value but was not
+ named as such
+
+ This commit also fixed a math bug (late up-conversion) in cpbSize
+ calculation in ratecontrol.cpp
+ [3bc86d0fbdc7]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/sei.h:
+ hrd: remove set/get methods of TComHRD, remove unused members
+ [d9921a247139]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ hrd: remove four unused fields
+ [e2003ed17684]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/sei.h:
+ hrd: CPB count is always 1
+ [00b91817e3e4]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/ratecontrol.cpp:
+ hrd: inline HrdLayerInfo, remove second array dimension (was for
+ nal/vcl)
+ [b9c3a067f89e]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/sei.h:
+ hrd: we always signal NAL HRD but not VCL and not sub-pic
+
+ Remove redundant fields and methods
+ [27c28450e098]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/entropy.cpp,
+ source/encoder/ratecontrol.cpp:
+ slice: simplify TimingInfo to a struct
+ [9b807ca6313a]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: nits
+ [b0bc72c359d1]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp:
+ change ProfileTierLevel to a struct, no m_ prefixes
+ [758cb5de97b6]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ ptl: remove hard-coded m_profileSpace
+ [bc9bbe6bfdb1]
+
+ * source/encoder/entropy.cpp:
+ entropy: de-hungarian codePredWeightTable(), fix comments (remove
+ redundants)
+ [84478006fe0f]
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [dfd2bd5c7cfa]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ vps: remove m_maxLatencyIncrease, it was always 0
+ [969a6a5de916]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp:
+ vps: remove remaining set/get methods
+ [d7b673cdbc78]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ vps: remove now unused m_layerIdIncludedFlag
+ [bf28c2e0a8ce]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp:
+ vps: remove unused m_maxNuhReservedZeroLayerId, m_numOpSets
+
+ The values were all hard-coded
+ [00fafd0b078c]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp:
+ sps: hard-code an SPS ID of 0, we only ever use one SPS
+ [fe9aee4225a1]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/frameencoder.cpp:
+ vps: remove m_VPSId, signal hard-coded 0
+ [f7c168558bf0]
+
+ * source/encoder/entropy.cpp:
+ entropy: remove broken X265_CHECK
+ [1dd0b14a8e9c]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nits
+ [e68eedbd6795]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ remove unused multiple HRD parameter sets from VPS class
+ [27307f7547c0]
+
+ * source/Lib/TLibCommon/CommonDef.h:
+ defs: remove some dead definitions, cleanup a comment
+ [ddb6dc16a64a]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp:
+ slice: remove unused m_interRPSPrediction from
+ TComReferencePictureSet
+ [6ac88ce5d670]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp:
+ slice: simplify max AMP level determination
+ [20ca3447ed96]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: remove redundant member variables
+ [12de88f4e110]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/sei.h:
+ Remove MAX_TLAYER and stop pretending we can code multiple temporal
+ layers
+
+ This simplifies a great many things; enabling further simplications
+ to come. This commit leaves a sprinkling of TODOs for further
+ cleanups
+ [e07686925819]
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [7fac1eb8252f]
+
+2014-07-14 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: fix for sa8dcost storage in rdlevel 1, 0
+ [c923f4a94946]
+
+2014-07-15 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ TEncCU: remove useless field
+
+ There's a global variable for this.
+ [863d969e3ab9]
+
+2014-07-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: hoist a couple of trivial functions, brace nits
+ [5c5183eeacb5]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp:
+ encoder: keep ProfileTierLevel singleton in the top-level encoder
+
+ Remove the copies in the SPS and VPS and remove the TComPTL object
+ entirely, there is only one level.
+ [83b498cd9aef]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: simplify PTL coding, there is only one layer
+ [8542b057d33e]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: remove profilePresentFlag argument from codePTL, always 1
+ [5995d7bbfa1a]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp:
+ slice: Remove get/set methods from TComPTL
+ [c52a6321b845]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/entropy.cpp:
+ slice: remove set/get methods from ProfileTierLevel, and dead
+ encoder vars
+ [fa4fc98233e0]
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/param.cpp,
+ source/encoder/frameencoder.cpp, source/x265.cpp, source/x265.h:
+ api: add an option to disable the informational SEI message
+
+ For regression testing, or comparing outputs between compilers or
+ platforms, this header is quite unhelpful, so make it optional.
+ [6f51bf4ba665]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ slice: remove RPS list class and relevant SPS encoding logic
+
+ x265 only codes a reference picture set in the slice header, none in
+ the SPS and never an "inter-RPS"
+ [59855812b4ef]
+
+ * source/common/param.cpp:
+ param: fix cut-paste bug
+ [836c08981029]
+
+2014-07-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h, source/common/param.cpp,
+ source/encoder/entropy.cpp:
+ slice: white-space cleanups, remove dead funcdefs and forward defs
+ [2454ef2a083e]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: remove virtual destructors for slice classes
+
+ we do not want or need vtables for any of these classes
+ [e3efe14f4e6a]
+
+ * source/common/param.cpp, source/x265.cpp:
+ param: move --input-res parsing to x265_param_parse (closes #63)
+ [67c7bfda7c28]
+
+ * source/CMakeLists.txt:
+ cmake: set SONAME even if no revision number or tag is found (closes
+ #58)
+ [51b3ff5e88e2]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp:
+ picsym: check m_cuData before trying to destroy array instances
+ [539e94e7aa34]
+
+2014-07-14 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/frame.cpp,
+ source/common/intrapred.cpp, source/common/param.cpp,
+ source/common/primitives.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/encoder/compress.cpp,
+ source/encoder/cturow.h, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/slicetype.cpp:
+ refine block size related, use more log2 domain.
+ [0af3c5a1782d]
+
+2014-07-14 Praveen Tiwari <Praveen Tiwari>
+
+ * source/encoder/encoder.cpp:
+ encoder.cpp, clean-up
+ [f2195700e1e4]
+
+2014-07-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ cu: white-space cleanups
+ [e7037f5914bc]
+
+ * doc/reST/cli.rst:
+ rest: fix lossless white-space, improve --sign-hide
+ [baa6b00f7491]
+
+2014-07-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: fix sa8dCost comparisons.
+
+ After this patch, all sa8d costs are stored in m_sa8dCost, and RD
+ costs in m_totalRDCost
+ [6fdae4c60b1f]
+
+ * source/encoder/encoder.cpp:
+ encoder: insert missing comma
+ [7a41bc257044]
+
+2014-07-13 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, doc/reST/index.rst, doc/reST/lossless.rst,
+ doc/reST/presets.rst:
+ rest: document lossless coding theory and behavior
+ [d9e1f9c77ceb]
+
+2014-07-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: save intra costs in rd <= 2 also in m_sa8dCost.
+
+ Basically, all sa8d costs are always saved in m_sa8dCost.
+ [6601a3d01974]
+
+ * source/encoder/compress.cpp:
+ compress: save inter sa8d costs also in m_sa8dCost
+ [5bb9ccedb0de]
+
+ * source/encoder/compress.cpp:
+ compress: Fixes fudging in merge costs, stores sa8d costs for
+ bestMergeCU in m_sa8dCost
+ [5051f1566664]
+
+2014-07-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ Merge, discard accidental push
+ [6055baa75085]
+
+ * source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ Backed out changeset: cff4f6482385
+
+ This head was accidentally created.
+ [406879d25112]
+
+2014-07-13 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: explicit size conversion to avoid MSVC warning
+ [454a2fc37fee]
+
+2014-07-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ entropy: rename combined CABAC/SBac class to Entropy
+ [cff4f6482385]
+
+2014-07-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: nits
+ [9d3683ab096b]
+
+ * source/encoder/encoder.h:
+ encoder: remove unused variables
+ [7a9933d5df9e]
+
+2014-07-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/sei.cpp,
+ source/encoder/sei.h:
+ sei: emit SEI describing the encoder and encode options
+
+ example: % x265 ../sintel_trailer_2k_480p24.y4m o.bin % strings
+ o.bin | head x265 (build 26) - 1.2+74-a5024bfc0b50:[Mac OS X][clang
+ 5.1.0][64 bit] 8bpp - H.265/HEVC codec - Copyright 2013-2014 (c)
+ Multicoreware Inc - http://x265.org
+ - options: 856x480 fps=24/1 bitdepth=8 wpp ctu=64 tu-intra-depth=1 tu-
+ inter-depth=1 me=1 subme=2 merange=57 no-rect no-amp max-merge=2 no-
+ early-skip no-fast-cbf rdpenalty=0 no-tskip no-tskip-fast strong-
+ intra-smoothing no-lossless no-cu-lossless no-constrained-intra
+ open-gop interlace=0 keyint=250 min-keyint=24 scenecut=40 rc-
+ lookahead=20 bframes=4 bframe-bias=0 b-adapt=2 ref=3 weightp no-
+ weightb aq-mode=2 aq-strength=1.00 cbqpoffs=0 crqpoffs=0 rd=3
+ signhide lft sao sao-lcu-bounds=0 sao-lcu-opt=1 b-pyramid cutree
+ rc=crf crf=28.0 qcomp=0.60 qpmin=0 qpmax=51 qpstep=4 ipratio=1.40
+ pbratio=1.30
+ [6af56f7c8703]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nit
+ [7e3c96e01ca9]
+
+ * source/common/param.cpp:
+ param: fix typo in d1d5b377294e
+ [6e116afd68e7]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: nits
+ [fd87a7e5b1e3]
+
+ * source/CMakeLists.txt:
+ cmake: nit - about target arch strings
+ [a5024bfc0b50]
+
+2014-07-11 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: store reflagrows as a member variable
+ [a1c553d36746]
+
+2014-07-11 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: init RC data for second pass in a multi pass encode
+ [03164c7ddcbb]
+
+ * source/CMakeLists.txt, source/x265.cpp, source/x265.h:
+ param: keep the total frame count of the input video in param.
+
+ to be used in 2 pass. In case this is not available, the value can
+ remain as 0.
+ [aed58d050ff9]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ rc: store final cu counts in frameStats as a percentage of total #
+ cus
+
+ there exists a mismatch in the total no. of 16x16 blocks calculated
+ between encoder and RC. rate control counts no. of 16x16 blocks
+ without considering the border extension of source pic. keeping cu
+ stats as percentage avoid this problem when used later in RC's 2nd
+ pass.
+ [07654693159b]
+
+2014-07-11 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: use dashes consistently in param2string
+ [d1d5b377294e]
+
+2014-07-11 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/param.cpp:
+ param: add more param options to print as string
+ [f3223737009e]
+
+ * source/common/common.cpp, source/common/common.h:
+ common: introduce x265_slurp_file, reads data from file to string
+ buffer.
+ [b4ee6251307e]
+
+2014-07-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/level.cpp:
+ level: in CRF/CQP encodes, allow user specifed level to increase
+ stream level
+
+ See the comment
+ [474c45db6a2c]
+
+2014-07-11 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ cu: fixing int-to-bool compile warnings
+ [29ae3f84c3ea]
+
+2014-07-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h:
+ cu: directly use param fields for lossless coding options
+
+ Remove m_CUTransquantBypass, m_TransquantBypassEnableFlag
+ [e171ad8bc8a3]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ cu: nits
+ [2d0fd0241025]
+
+ * source/x265.cpp:
+ cli: retrieve params from the encoder, in case logging flags have
+ changed
+
+ For instance, if the user asked for --lossless --ssim, the encoder
+ will disable SSIM for lossless encodes and we don't want the CLI to
+ report SSIM stats that were never measured.
+ [c9a7be09cdc0]
+
+2014-07-11 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/rdcost.h:
+ zero stride for zeroPel[]
+ [a96d3ed11aaf]
+
+2014-07-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/common.h,
+ source/encoder/compress.cpp, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ search: make RDCost and TComTrQuant member instances of TEncSearch
+
+ Both of these structs are required by TEncSearch, it cannot operate
+ without them There is always a 1::1 correlation with each. There is
+ no reason at all to allocated them separately in TLD and then link
+ them all together. Much simpler for them to be members of the
+ TEncSearch class.
+ [77aeba71695e]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/frameencoder.cpp:
+ derive TEncCu from TEncSearch
+
+ TEncSearch methods are only callable from TEncCu methods. and there
+ is much duplication in their data members. This removes a lot of
+ redundancy and removes a lot of pointer dereferences
+ [25e9c85aea1f]
+
+2014-07-11 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: save CABAC context for rd = 2 after inter/intra encodes
+ [1c8573c886b1]
+
+ * source/encoder/compress.cpp:
+ compress: save CABAC context after intra decision.
+
+ Since CABAC encode happens only for rd > 2
+ [65d4f5b4fd3a]
+
+ * source/encoder/compress.cpp:
+ compress: save CABAC context after inter/merge decision
+ [b728ca41433f]
+
+ * source/encoder/compress.cpp:
+ compress: save CABAC context in merge modes for lower RD levels.
+ [52cda492abf5]
+
+2014-07-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ entropy: clarify the SBac's bit counting mode
+
+ The SBac class has always had the ability to be a bit counter
+ without any other external data structures. With this change, the
+ SBac defaults to being a bit counting SBac until it is given a
+ Bitstream object to write into. The class no longer accepts a
+ BitCounter object, since it would only add more overhead to the bit
+ counting.
+
+ TEncCu no longer needs o be told whether it is writing into a bit
+ counting SBac or not, it can ask the SBac to find out.
+
+ The BitCounting class is only used for SEI writing, and may
+ disappear in order to remove the vtable from the critical path of
+ entropy coding.
+ [e3e077965c39]
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ framefilter: rename row0 coder
+ [e658be3fe5a3]
+
+ * source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/frameencoder.cpp:
+ cturow: rename m_rdGoOnSbacCoder to m_sbacCoder; there is only one
+ [9e50b8b7503b]
+
+ * source/encoder/frameencoder.h:
+ frameencoder: remove unnecessary include of TEncSearch.h
+ [7649ffe940e1]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/PPA/ppaCPUEvents.h,
+ source/output/y4m.cpp, source/output/yuv.cpp:
+ ppa: cleanup event names and remove uninteresting events
+ [0a0fe4d52711]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp:
+ cu, search: remove redundant m_rdGoOnSbacCoder pointer
+
+ m_rdGoOnSbacCoder was always either pointing to the same SBac as
+ m_sbacCoder (for calls to compressCU()) or it was supposed to be
+ unused (for calls to encodeCU)
+ [d6c423c66e4d]
+
+ * source/common/bitstream.cpp, source/common/bitstream.h:
+ bitstream: hoist trivial methods to the header so they may be easier
+ inlined
+ [57a4c1c2274e]
+
+ * source/common/bitstream.h:
+ bitstream: convert macros into inline members for better compile-
+ time checking
+ [b96714bdda85]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/common/bitstream.cpp, source/common/bitstream.h,
+ source/encoder/CMakeLists.txt, source/encoder/encoder.cpp,
+ source/encoder/entropy.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/sei.cpp, source/encoder/sei.h:
+ bring SyntaxElementWriter into common/, remove trace file macros
+
+ File tracing has been essentially broken since frame parallelism was
+ introduced (not to mention multiple encoder instances in a process)
+ and is going to be soon even more impossible when the second
+ encodeCU() pass is removed. It's best to remove this old HM feature
+ so people don't get stuck trying to use it.
+
+ Stream analyzers like Parabola and Elecard are now mature enough
+ that these trace files are not very helpful. If you *really* want
+ the old style trace file, enable tracing in the HM decoder and
+ decode your bitstream with it.
+
+ I left the strings in the WRITE_* macros in place because they make
+ those calls reasonably self-documenting. The compiler will throw
+ them away harmlessly.
+ [64dc40d52519]
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [cbfe2ac89d41]
+
+ * source/encoder/entropy.h:
+ entropy: re-order methods again for better clarity, make many
+ private
+ [dd179bdba7fd]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/encoder/entropy.h:
+ entropy: remove include of TComSampleAdaptiveOffset.h
+ [6c95abc53d26]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ TComTrQuant: rename estBitsSbacStruct to EstBitsSbac
+ [4fcd24d23994]
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [8084d123f14d]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: hoist trivial functions for later optimizations
+ [898fc94ae9e9]
+
+ * source/encoder/cturow.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/framefilter.cpp:
+ merge CABAC into SBac class
+ [ef1b1da7264c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: convert initSection into a constructor, since it was used
+ as such
+ [ac568c7796b8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nits
+ [9914e8d8e2e4]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: replace SBac and TEncSearch methods with TURecurse methods
+
+ Both classes had nearly the exact same methods for managing this
+ external structure. how wierd?
+ [657bfd3423a5]
+
+2014-07-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/entropy.cpp,
+ source/encoder/entropy.h:
+ entropy: remove m_ prefix from struct TURecurse members
+ [e776ead24445]
+
+2014-07-09 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/encoder/compress.cpp, source/encoder/framefilter.cpp:
+ use std::swap() for readability
+ [194432db28b9]
+
+2014-07-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: remove braces around single line expressions, improve code
+ flow
+ [30e20a7b6fdd]
+
+ * Merge with stable
+ [56c4719ae735]
+
+ * .hgtags:
+ Added tag 1.2 for changeset d6257335c537
+ [7ea0ba364367] <stable>
+
+2014-07-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ csv: add slice-type stats to encode summary, avoid dup copies of
+ summary string
+ [5c7da1e88682]
+
+2014-07-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/entropy.h:
+ entropy: remove temporary helper function
+ [b7934e58ea40]
+
+ * source/encoder/entropy.cpp:
+ entropy: nits
+ [a86cd034e254]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ cu: remove get/set methods for its own member variable
+ [b1d077221c25]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/cturow.cpp:
+ cu: remove more set methods
+ [cd93637ce951]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/cturow.cpp:
+ cu: nit
+ [c78b7cca188a]
+
+ * source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/cturow.cpp:
+ cu: assign m_rdGoOnSbacCoder without helper methods
+ [a44b2c12fe04]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/cturow.cpp, source/encoder/frameencoder.cpp:
+ cu: pass bit counting flag as argument to encodeCU
+ [4c98884a7729]
+
+ * source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/frameencoder.cpp:
+ ctu: inline setThreadLocalData() for better clarity
+ [6c3a4a5498f1]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: remove rarely used getRowCoder() and getBufferSBac()
+ [22ac140e0da8]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: remove barely use helper function getRDGoOnSbacCoder
+ [ddf49ea5073c]
+
+ * source/encoder/cturow.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ ctu: rename m_sbacCoder to m_rowEntropyCoder
+ [6a1370596ede]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp:
+ entropy: allocate RDO coders as dual-dimensioned array
+
+ In order to make this change even less intrusive as it was going to
+ be, I simultaneously changed the load/store functions to take
+ references instead of pointers (since NULL pointers are not
+ supported).
+
+ This further simplified setup/tear-down code and should improve data
+ locality
+ [c49b61c5e6bb]
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ framefilter: rename m_rdGoOnSbacCoder to m_sbacCoder - there is only
+ one
+ [878e6f228fe6]
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/CMakeLists.txt, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ entropy: make m_cabac member of SBac class a non-pointer instance
+
+ This forces a 1::1 correspondence between SBac and CABAC instances,
+ which cleans up a mess of confusing allocations and assignments.
+
+ This moves the CABAC class into entropy.h and it is no longer
+ referenced outside of this header and entropy.cpp, allowing us to
+ further combine them.
+ [f60a2f9a88ad]
+
+ * source/encoder/entropy.h:
+ entropy: remove now unused Entropy class
+ [461e3e940b0c]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/frameencoder.cpp:
+ remove Entropy from TEncCu, TEncSearch, and CTURow
+
+ Instead, give each an SBac pointer that they are supposed to use to
+ code the bitstream.
+ [ff987b44de91]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: remove most traces of the Encoder class
+ [02f8c0af20f2]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: do not pass member variable to its own function
+
+ We were still passing an array of Bitstream objects to encodeSlice()
+ even though the array was made a member of the class so it was
+ available via m_outStreams. Within the function is was using both
+ pointers, unhelfpully.
+ [6589396373de]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/entropy.cpp, source/encoder/entropy.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ entropy: remove m_slice member from SBac class
+
+ The slice object was only needed in resetEntropy() and
+ determineCabacInitIdx() and could be passed to those two methods
+ easily.
+
+ It was also being used in two functions to gain access to the
+ scaling list, but this was actually a problem for us because headers
+ can be queuried before any slice objects are initialized so it was
+ better to pass in the scaling lists directly from the top Encoder.
+ Note this fixes a bug in scaling list support - we were previously
+ incapable of signaling them properly in our stream headers.
+
+ Removing this member variable lets us clean up a lot of redundant
+ setSlice() calls and other cruft
+ [576bb702f286]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: do not use Entropy object to code stream headers
+ [919c77a86b29]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ sao: remove redundant braces and other nits
+ [1429920a7420]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ remove m_entropyCoder from FrameFilter and SAO code
+
+ Lo and Behold! the SAO code suddenly makes a tad more sense when
+ this useless redirection is removed
+ [767a10ce1a64]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: remove unnecessary API differences between Entropy and SBac
+
+ These would only trip us up as we try to remove Entropy entirely
+ [ca2b4259c44f]
+
+2014-07-08 Steve Borho <steve@borho.org>
+
+ * source/encoder/entropy.h:
+ entropy: reorder SBac methods for more clarity
+ [01e20a16e890]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/entropy.h:
+ entropy: remove default argument to encodeIntraDirModeLuma()
+ [436bd8207469]
+
+ * source/encoder/entropy.cpp:
+ entropy: fix msvc warnings about signed/unsigned operations
+ [a25a3782e51c]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: hoist all non-trivial Entropy methods into SBac
+
+ Now Entropy only exists in entropy.h, making further cleanups
+ possible
+ [e4a21cfa8206]
+
+ * source/encoder/entropy.cpp, source/encoder/entropy.h:
+ entropy: remove all data members except m_entropyCoder
+
+ The three variables were only used to maintain state through
+ recursive calls to encodeTransform() and could be just as easily
+ kept on the stack.
+
+ The class is now a pure reflector to the SBac class and can be merge
+ into it piece-wise.
+ [5321d02d9703]
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/primitives.cpp,
+ source/encoder/CMakeLists.txt, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/entropy.cpp,
+ source/encoder/entropy.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ port TEncEntropy and TEncSbac into internal Entropy and SBac classes
+
+ The Entropy class will be short-lived
+ [53fcddea0959]
+
+2014-07-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge with stable
+ [644773b85329]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: bug fix introduced in commit 8a5b02464813
+
+ Remove the xCheckBestMode call, add in a ccontext save.
+ [d6257335c537] [1.2] <stable>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge with stable
+ [a1e46d813642]
+
+2014-07-09 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncCU: save CABAC context missing after merge
+
+ Also removed an extra context save
+ [8a5b02464813] <stable>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncCU: save CABAC context missing after merge
+
+ Also removed an extra context save
+ [c269f73b94c9]
+
+2014-07-07 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/encoder/encoder.cpp,
+ source/test/mbdstharness.cpp:
+ quant: returns numSig instead of absSum and lastPos
+ [65ac66dc89b6]
+
+2014-07-07 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h:
+ Merge with default (prepare for 1.2)
+ [6623f1195baa] <stable>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nits
+ [6325261d393d]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: do not copy a QP buffer into itself - prevents valgrind warning
+ [6aa084ad45a0]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cu: cleanup and simplify initCU
+ [c60560dcae1c]
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/sei.h:
+ rc: allocate HRD SEI structures on demand, fix RCE vtable/memset bug
+ [82963e72231b]
+
+2014-07-03 Min Chen <chenm003@163.com>
+
+ * source/encoder/frameencoder.cpp:
+ avoid VS2008 and MinGW ambiguous pow() build warning
+ [11c808e562b8]
+
+2014-07-03 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove warning about ambiguous pow function
+ [e3f9acd4ff88]
+
+ * source/common/param.cpp:
+ lambda-file: file close before return
+ [8620deb17a19]
+
+2014-07-03 Steve Borho <steve@borho.org>
+
+ * source/input/y4m.cpp:
+ y4m: avoid implicit size_t to int conversion, avoid more MSVC
+ warnings
+ [1dc27824bde1]
+
+ * source/encoder/encoder.h, source/encoder/frameencoder.cpp:
+ encoder: avoid int64_t to int conversions, avoid more MSVC warnings
+ [50291ad2cfe8]
+
+ * source/common/param.cpp:
+ param: avoid spurious MSVC warning about buf being possibly
+ uninitialized
+ [e8ebfa3cf395]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: fix cast of cutree offset, avoids MSVC warning
+ [85dce645d0fc]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: match up integer argument types to avoid MSVC warning
+
+ The prototype in the WaveFront base class was: virtual void
+ processRow(int row, int threadId) = 0;
+
+ Some versions of MSVC flag this as a warning
+ [c41c7a78e46a]
+
+ * source/common/param.cpp:
+ param: avoid spurious gcc warning about toksave possibly being
+ uninitialized
+ [eaee58b6515b]
+
+2014-07-02 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp, source/common/param.h,
+ source/encoder/encoder.cpp:
+ lamba-file: make improper number of constants a fatal error
+
+ Having an invalid set of lambdas is likelty to be completely useless
+ [1e94a2b12d15]
+
+ * source/common/param.cpp:
+ lambda-file: detect and report if lamda file containts too many
+ values
+
+ It seems likely that this is an unintended error the user would want
+ to be made aware of.
+ [0013dbcac349]
+
+2014-07-02 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ simplify: getLumaIntraDir()[x] -> getLumaIntraDir(x)
+ [959ff37cdd31]
+
+2014-07-02 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/param.cpp, source/common/param.h,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ api: allow lambda tables to be user-specified via a text file
+
+ This change allows easy experimentation with the lambda tables. One
+ can cut-paste the existing tables from TComRom.cpp into a text file
+ and hash(#) comment the C constructs (variable names and braces) and
+ arrive at a functional lambda file, then edit to taste.
+ [44dc246b7835]
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: fix gcc warnings
+ [b90fdc3ffb96]
+
+2014-06-30 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: write frame stats and cu stats to file in first pass
+ [887081b5f694]
+
+2014-06-26 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/cturow.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ rc: compute inter, intra and skip cus per frame for the first pass
+ [5bee122bc183]
+
+2014-07-01 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/frame.cpp, source/common/frame.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ rc: move structure FrameStats to FrameEncoder class
+
+ Stats are not needed post encode, moving it to FrameEncoder.
+ [8f76f88c7dbf]
+
+2014-07-02 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ add primitives.nquant for RDOQ
+ [5bfd621a58b9]
+
+2014-07-02 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/common/frame.cpp:
+ frame: initialize recon to avoid SAO read of uninitialized pixels
+ beyond picture end
+ [cbe0999934b7]
+
+2014-07-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ encoder: fix --no-wpp behavior, keep TLD selection logic in one
+ place
+
+ do not use static m_threadLocalData, this would break if multiple
+ encoders were allocated in a single process
+
+ pass the selected TLD to row processes, so they do not need to be
+ aware of the WPP/NO-WPP details.
+
+ Cleanup frameencoder.h, move non-trivial processRow() to the cpp
+ file
+ [0743791a8245]
+
+2014-07-01 Steve Borho <steve@borho.org>
+
+ * source/input/y4m.cpp, source/input/y4m.h, source/input/yuv.cpp,
+ source/input/yuv.h:
+ input: streamline control logic of threaded file readers
+
+ These files were written before ThreadSafeInteger and this caused
+ the control logic to be over-complicated. Now they can be greatly
+ simplified and their control flows can be re-unified to be more like
+ each other.
+
+ Also, drop PPA events. File reading is pretty uninteresting when
+ profiling.
+ [99b8e4d69e0f]
+
+2014-07-02 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h:
+ TEncEntropy: inline the only one caller of encodeInterDirPU
+ [f483344d276f]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ TEncEntropy: hoist encodePredMode() after moving I-slice check to
+ callers
+ [ca17915c0176]
+
+ * source/Lib/TLibEncoder/TEncEntropy.h:
+ TEncEntropy: reorder nit
+ [a4cf2c474fb8]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ TEncEntropy: hoist encodeSkipFlag() after moving I-slice check to
+ callers
+ [8208c49e9aa4]
+
+2014-07-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/encoder/frameencoder.cpp:
+ TEncEntropy: hoist encodeSliceHeader() to header after simplifying
+ [719ec54347ab]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp:
+ TEncEntropy: nit
+ [166b7ddace37]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h:
+ TEncEntropy: hoist trivial functions to header for possible inlining
+
+ And remove useless comments
+ [a15e58e38501]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nit
+ [a18972fd05b1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: remove redundant refIdx check from fillMvpCand
+
+ fillMvpCand is only called from one place and the refIdx will always
+ be positive
+ [7006c14a6149]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge with stable
+ [976dc15ea5ea]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: limit AMVP loop bounds in xCheckBestMVP
+
+ entries in the table beyond m_num were not initialized
+ [4f7be97ebb9d] <stable>
+
+2014-07-01 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ remove redundant memset
+ [28a17ce0bf5c]
+
+2014-07-01 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ split rate calculation functions to luma and chroma to simplify luma
+ path
+ [fb54c0d470ed]
+
+2014-06-27 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix emms: move selectLambda() into xRateDistOptQuant() and issue
+ emms before it
+ [b3ff3f436bc9]
+
+2014-06-25 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: rename texBits to coeffBits in RateControlEntry structure to
+ maintain uniformity.
+ [f18febf8cd3a]
+
+2014-06-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: RDOQ is only applicable at rd levels 4, 5, and 6
+ [38da32f28481]
+
+2014-06-27 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp,
+ source/encoder/frameencoder.cpp:
+ rc: accumulate mv bits, coeff bits per frame
+ [3d4b66c1bc88]
+
+2014-06-30 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: remove warnings for shadowed declaration
+ [5a37c8198035]
+
+2014-06-30 Albert Wang <Albert Wang>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix for error in VPS when AccessUnitDelimeter is
+ turned on
+
+ The bitstream needs to be reset before start encode VPS, since if
+ AU_Delimeter is turned on, there is one byte of data left in the
+ bitstream that will be written wrongly into the VPS.
+ [8eb8200a3449]
+
+2014-06-30 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: document ipratio and pbratio parameters
+ [4e565eb62d0a]
+
+2014-06-25 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/param.cpp, source/x265.cpp:
+ cli: add --ipratio and --pbratio
+ [c80f9f3fba25]
+
+2014-06-21 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: use consistent bool naming convention
+ [8b6b3e05946f]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp:
+ entropy: nit
+ [3a71cbcaee1f]
+
+2014-06-21 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: fix race condition
+ [8253fe375772]
+
+2014-06-26 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ reduce condition jmp in codeCoeffNxN
+ [32aa6cc3cf4d]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ improve count_nonzero by SSSE3
+ [e5d8a2fa6bca]
+
+2014-06-27 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ psyrd: fix for inconsistent output
+
+ maximum buffer size for zeropel is MAX_CU_SIZExMAX_CU_SIZE. since
+ stride was wrong, it was accessing out of boundary memory which was
+ different for each run, so inconsistent output
+ [a765a34425f0]
+
+2014-06-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/framefilter.cpp:
+ framefilter: disable warning
+ [98a2bfed9ed4]
+
+2014-06-23 Min Chen <chenm003@163.com>
+
+ * source/encoder/cturow.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ pass TLD into class FrameFilter
+ [66c701cb5500]
+
+2014-06-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h:
+ refine intra tskip related.
+ [b9bc64443ee4]
+
+2014-06-25 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/frame.cpp,
+ source/common/frame.h:
+ rc: initalize states to hold frame statistics used in two pass
+
+ frame stats includes mv bits,DC coeff bits and number of Intra,
+ Inter and Skip Cus per frame.
+ [1b669c33ff3a]
+
+2014-06-25 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/encoder/compress.cpp, source/encoder/encoder.cpp:
+ psy-rd: implement psy-rd in rdlevel=4,3 and 2
+ [e2ed009d296a]
+
+2014-06-25 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/frame.cpp,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp:
+ remove PCM mode support
+ [5797d6a8197c]
+
+2014-06-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix xGetIntraBitsQTChroma() for 4:2:2 [CHANGES OUTPUT 4:2:2 with
+ tskip]
+ [09450ac6dc7d]
+
+2014-06-24 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/rdcost.h:
+ psy-rd chroma: Adjust chroma lambda based on QP offsets.
+
+ This hurts PSNR but improves visual quality
+ [613bfe5cd169]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/common.h:
+ psy-rd chroma: add chroma offset tables for lambda calculations
+ [20611feb4a45]
+
+ * source/encoder/encoder.cpp:
+ Chroma QP Offset: increase chroma QP when psy-rd is enabled.
+ [812dc9f61549]
+
+2014-06-23 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ move calcSaoStatsRowCus_BeforeDblk into encode loop
+ [18f936182df5]
+
+2014-06-23 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ TEncCU:fix for memory leak
+ [25a1b89a8efb]
+
+2014-06-20 Praveen Tiwari <Praveen Tiwari>
+
+ * source/encoder/compress.cpp:
+ TEncCu: [CHANGES OUTPUT] xComputeCostIntraInInter, fix bug
+ [b5fbe9e2a10a]
+
+2014-06-21 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ TEncCU:fix for large memory consumption
+ [da4aa721bf2f]
+
+2014-06-20 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h:
+ alloc concatenation memory for m_cuData
+ [fe370292c232]
+
+2014-06-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp:
+ entropy: remove TEncEntropyIf abstract class
+
+ Only one class implemented the interface, so it served no purpose
+ (except adding a vtable where we didn't need one). Renamed some
+ member variables to make it all more explicit: m_entropyCoderIf ->
+ m_entropyCoder, m_binIf -> m_cabac
+ [960ea9018a7b]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp:
+ TEncEntropy: nit
+ [bf4fd0756cbb]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove more redundant checks
+
+ slice->getSaoEnabledFlag() is the same as saoParam->bSaoFlag[0]
+ slice->getSaoEnabledFlagChroma() is the same as
+ saoParam->bSaoFlag[1]
+ [6111f474ef99]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: simplify cabac context save
+ [d0b71172d7da]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/encoder/frameencoder.cpp:
+ frameencoder: simplify SAO reset when not enabled on slice
+ [06b03c4647d6]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: further simplify SAO coding
+ [8e37416993db]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: simplify SAO coding logic
+ [f24ac9e50e4d]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: simplify loop bounds
+ [ce47fb939f69]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: further simplify the logic which sync's CABAC with
+ upper-right LCU
+ [613f9a60a5d3]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove redundant widthInCU variable
+ [4857a503d709]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: simplify logic slightly, numSubstreams can be > 1 only
+ with WPP
+ [0e6200c402cf]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nits
+ [4455746792b0]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: move trace code for clarity, remove dead
+ bWaveFrontsynchro
+ [bb6c9f097ba2]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use m_param->bEnableWavefront directly
+ [8911196c3bf1]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: simplify setup for encodeSlice()
+ [847cb38b409e]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: rename m_pic to m_frame
+ [0aab15ebff0d]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove unread bitsOriginallyInSubstreams
+ [5fde40742246]
+
+2014-06-20 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/common/param.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/x265.cpp, source/x265.h:
+ make cu level stats logging run time configurable
+
+ two-pass encodes will need these statistics, so they need to always
+ be compiled into libx265.
+ [c9f36b715b3f]
+
+2014-06-20 Steve Borho <steve@borho.org>
+
+ * source/x265.h:
+ api: comment nits
+ [868e35687ac7]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/common/CMakeLists.txt, source/common/frame.cpp,
+ source/common/frame.h, source/common/lowres.cpp,
+ source/common/param.cpp, source/common/piclist.cpp,
+ source/common/piclist.h, source/encoder/compress.cpp,
+ source/encoder/cturow.h, source/encoder/dpb.cpp,
+ source/encoder/dpb.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h, source/encoder/weightPrediction.cpp:
+ replace TComPic with Frame class in common/frame.h
+
+ The new class name clashes with old variables like pic or m_pic, but
+ I would like to pull in TComPicYuv in the future as a Picture class,
+ and TComYUV as Yuv class.
+ [6a11b4e683e1]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix --no-wpp, broken since 854f5e3072a0
+ [2317cb9af53e]
+
+2014-06-20 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/common/param.cpp, source/encoder/encoder.cpp:
+ encoder: move psy-rd logic together
+ [c2ebebb66bf4]
+
+2014-06-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: use free() to release strdup'd string
+ [36f6a06df2d5]
+
+2014-06-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/encoder/frameencoder.cpp:
+ TEncSearch: change pointer type of m_mref, to avoid repeated pointer
+ setup
+ [e89fb21a4e06]
+
+ * source/Lib/TLibEncoder/TEncSearch.h, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ cturow: use thread local storage for TEncCU and TEncSearch
+
+ This saves about 10% of memory by reducing redundancy, and lays the
+ ground work for more fine grained work distribution.
+ [854f5e3072a0]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/framefilter.cpp:
+ cu: remove m_loopFilterAcrossTilesEnabledFlag and getPU* default
+ arguements
+ [f3ad033af809]
+
+2014-06-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: comment nits
+ [d68c638e1469]
+
+2014-06-20 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ encoder:[CHANGES OUTPUT] disable rdoq when psyrd is enabled
+ [3780de35ba2a]
+
+2014-06-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/nal.cpp:
+ nal: include the start code bytes in the bounds check
+ [cc0beb898def]
+
+ * source/encoder/nal.cpp:
+ nal: nits
+ [57f26a8b7ecb]
+
+ * source/encoder/frameencoder.cpp, source/encoder/nal.cpp,
+ source/encoder/nal.h:
+ nal: allow the concatenated substream buffer to be re-used from
+ frame-to-frame
+
+ this removes another malloc/free from the processing of every frame.
+ This commit also moves the NALList constructor to nal.cpp since it
+ is no longer quite so trivial. Lastly, it adds a check to prevent
+ crashes in case one or more of the WPP substreams had a malloc
+ failure.
+ [51dd3c429cdb]
+
+ * source/encoder/nal.cpp:
+ fix checked build warning
+ [91fef2cf2e08]
+
+ * source/common/bitstream.cpp, source/encoder/cturow.cpp:
+ fix msvc build warnings
+ [73ece35100df]
+
+2014-06-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/common/CMakeLists.txt,
+ source/common/bitstream.cpp, source/common/bitstream.h,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.h,
+ source/encoder/nal.cpp, source/encoder/nal.h,
+ source/encoder/sei.cpp, source/encoder/sei.h:
+ move bitstream implementations into common
+ [5091ffc86a42]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/encoder/frameencoder.cpp:
+ bitstream: unify resetBits() and clear() methods
+
+ There's no point in having a virtual resetBits() method in the
+ abstract class and then not implemeent in the derived class but make
+ a second method with identical semantics. What the heck?
+ [0d77026a11ac]
+
+ * source/encoder/api.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h:
+ encoder: remove redundant flush argument
+ [0b4a50730f21]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: cleanup obsolete NAL data fields
+ [aecb3b2a98c1]
+
+2014-06-20 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/api.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/slicetype.cpp:
+ x265_encoder_encode: don't return 0 while flushing.
+ [ced3a726d515]
+
+2014-06-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/encoder/frameencoder.cpp:
+ lambda: [CHANGES OUTPUT] Change the distortion weights applied to
+ chroma.
+
+ Inside R-D, a single lambda is applied for both luma and chroma. To
+ account for the different QPs, (as defined by the standard) the
+ chroma distortion was weighted by a factor proportional to the
+ difference in QPs. This patch eliminates the extra weighting given
+ to the chroma distortion (since it is visually less perceptible).
+ [25d2c596dd28]
+
+2014-06-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: disable MSVC warnings about using POSIX function names like
+ unlink()
+ [dfaf67c21c32]
+
+2014-06-16 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ TComDataCU: refactor structure for better data locality
+ [62d1d9dd760c]
+
+2014-06-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cu: nits
+ [c72093672ad1]
+
+2014-06-19 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/encoder/framefilter.cpp:
+ move m_blockingStrength to local
+ [8c875d7341b7]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h:
+ static m_bLFCrossTileBoundary since all of LCU use same value
+ [565818adf640]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h:
+ remove reduce code since trHeight always equal to trWidth
+ [c91e624c4502]
+
+2014-06-17 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: initialize the 2 pass states in rc
+ [60178ece9879]
+
+ * source/common/param.cpp:
+ param: log rc states of m_param in x265_param2string
+ [ff6e2349cff3]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: add 2 pass states in RateControl
+ [ed85651a2840]
+
+ * source/common/param.cpp, source/encoder/slicetype.cpp:
+ rc: define default setting and validations for 2 pass states
+ [c50f3d2aeb4d]
+
+ * source/CMakeLists.txt, source/x265.h:
+ api: introduce param variables for two-pass encodes
+ [5063065d7037]
+
+2014-06-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.h:
+ encoder: remove useless comment
+ [82ca012854ea]
+
+ * source/common/common.h, source/encoder/api.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/nal.cpp, source/encoder/nal.h:
+ nal: refactor nal code, marshall packets directly into output buffer
+
+ This removes two malloc/free for every NAL unit and removes yet
+ another set of memcopies at the end of the each frame encode. We're
+ now writing the escaped NAL packets directly into the buffer handed
+ back to the user.
+
+ We preserve the max size of this output buffer to prevent having to
+ do any reallocations once the encoder is running.
+ [ba9c58a4bee0]
+
+2014-06-19 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ keep TComPic until next call if recpic is exported as pic_out
+
+ We must prevent the recon YUV from being recycled until the next
+ picture is encoded.
+ [ecccd5401d27]
+
+2014-06-19 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/encoder.h:
+ encoder: remove m_freeList from encoder class, the m_freeList moved
+ into dpb
+ [d2a13e8541f4]
+
+ * source/encoder/dpb.cpp:
+ dpb: destroy and delete m_reconPicYuv from picSymFreeList
+ [d86fea3cea9c]
+
+2014-06-19 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: correct QP range clipping for 10-bit input depths.
+
+ Fixes a bad hash error and artifacts introduced by commit
+ c8973aec5e70
+ [59a6891dff51]
+
+2014-06-18 Steve Borho <steve@borho.org>
+
+ * source/common/pixel.cpp:
+ pixel: fixup zeroBug stride for satd_4x4 in psyCost (spotted by
+ MinGW)
+
+ This fixes a bug introduced in f3fb2d2b0ba6
+ [f5be40ace2cc]
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ pic: reorder initializations after moving m_reconPicYuv in
+ e3418f7497e9
+
+ Fixes a gcc warning
+ [5db614f31b85]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp:
+ pic: keep the recon TComPicYuv in the pool with the TComPicSym -
+ another 10%
+ [e3418f7497e9]
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp:
+ frameencoder: make m_ssimCnt an unsigned int
+ [cd63ddf0e935]
+
+ * source/encoder/encoder.h:
+ encoder: move EncStats into x265 namespace
+ [a43a223a1294]
+
+2014-06-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h, source/encoder/dpb.cpp,
+ source/encoder/dpb.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/slicetype.cpp:
+ pic: keep a pool of TComPicSym, allocate only for encode process
+
+ This commit moves the picture freelist to the DPB, it seemed to
+ belong there. This change reduced memory in a medium encode by more
+ than 40%.
+ [cbed0913df50]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ pic: nit
+ [da81f3741282]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/encoder.cpp:
+ pic: split picsym allocation from main create function, rename
+ reinit()
+ [526d79dabf1a]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ pic: destroy() no longer needs to be virtual, compress white-space
+ [0e9a74223938]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ pic: improve comments
+ [7a5bec950123]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSlice.cpp:
+ pic: remove unread m_bCheckLTMSB
+ [8fb41a7f4301]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/dpb.cpp:
+ pic: remove unread m_bUsedByCurr
+ [3a458e3f674e]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ TEncSearch: keep param pointer instead of top encoder pointer
+
+ This required cacheing some top encoder fields in TEncSearch
+ [5a0f8d5377da]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: nits
+ [9a0dde9e5fa6]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ framefilter: replace top pointer with param pointer
+ [7259c8a2d1b1]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: replace m_cfg with m_param pointer, use m_top for
+ leftovers
+ [c53f4e4669c2]
+
+ * source/encoder/frameencoder.h:
+ frameencoder: remove unused bitcounter
+ [785e2b88c134]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp:
+ TComDataCU: remove hungarian prefixes from CU vars
+ [ca032ae0fd67]
+
+ * source/Lib/TLibCommon/TComPicSym.h:
+ sym: do not return pointer reference from getCU()
+ [bf0aa61ceaab]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ pic: move m_elapsedCompressTime and m_frameTime to frame encoder
+
+ This data only needs to exist when the picture is being encoded
+ [f73c1d866741]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ pic: move SSIM, PSNR and hash to frame encoder
+
+ This data only needs to exist when the picture is being encoded.
+ This changes the SSIM scores slightly, even though the bitstream and
+ recon does not change, because it is resetting the SSIM sum and
+ counter each frame. When these fields were on the TComPic, they were
+ never cleared.
+ [bf112abf087c]
+
+ * source/Lib/TLibCommon/TComPic.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ pic: move timing structures to RateControlEntry
+
+ This saves a bit of memory, since this data only needs to exist when
+ the picture is being encoded.
+ [cb4d408c048e]
+
+ * source/encoder/sei.h:
+ sei: remove unused RESERVED hash method, avoid compiler warnings
+ [51aa9d1542ef]
+
+ * source/Lib/TLibCommon/TComPic.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp:
+ pic: better name for picture timing SEI member
+ [d3ac1cbdc9c3]
+
+ * source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h:
+ writer: xConvertToUInt did not need to be a class member
+ [a2d63126b37c]
+
+ * source/encoder/sei.h:
+ sei: allow SEI classes to implement write() directly to avoid two-
+ pass encode
+ [778385cde253]
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/sei.h:
+ sei: add m_ prefix to members of SEIDecodedPictureHash for
+ consistency
+ [bb872c51a453]
+
+ * source/encoder/frameencoder.cpp:
+ sei: repair decoded picture hash SEI
+ [2be51b34e033]
+
+ * source/common/pixel.cpp:
+ psyrd: use zero stride in psyCost C reference, minor optimization
+ [f3fb2d2b0ba6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: simplify square block dim logic
+
+ this works around a bizarre MSVC warning on those lines. '<<' :
+ result of 32-bit shift implicitly converted to 64 bits (was 64-bit
+ shift intended?)
+
+ I have no idea why it was implicitly making the result 64bits.
+ [0c3d33212ebd]
+
+2014-06-16 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ fix: TOPSKIP refers outside of picture [OUTPUT CHANGE]
+ [7c6654c332c5]
+
+2014-06-17 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ quant: Enforce QP range after adding bit-depth offsets
+ [c8973aec5e70]
+
+2014-06-17 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ sei: disable HRD with warning when vbv is off
+ [b6f8e0ce8c81]
+
+2014-06-17 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ psyrd: use psyrdcost for PU/TU decision for inter and intra
+ [2b514f3f6e1f]
+
+2014-06-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/common/CMakeLists.txt,
+ source/encoder/CMakeLists.txt, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/ratecontrol.cpp,
+ source/encoder/sei.cpp, source/encoder/sei.h:
+ sei: first step towards simplifying SEI writing
+ [9d43b41eb529]
+
+ * source/Lib/TLibCommon/TComBitStream.h:
+ bitstream: give bit counter a useful constructor
+ [f9fef6da4da6]
+
+2014-06-17 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: [CHANGES OUTPUT for 10-bit CRF] Remove QP_BD_OFFSET
+ from Ratecontrol
+
+ This offset is added inside Quant (setQPforQuant)
+ [3a19a9fdb103]
+
+ * source/common/param.cpp, source/encoder/ratecontrol.cpp:
+ ratecontrol: move validate of CRF params to x265_check_param
+ [53fab23c6e5b]
+
+2014-06-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/SyntaxElementWriter.h:
+ writer: nits
+ [ab8124028030]
+
+2014-06-17 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h:
+ cleanup unused TComLoopFilter::loopFilterPic
+ [55ba291c2c5b]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/encoder/framefilter.cpp:
+ move m_bEdgeFilter to local
+ [a99fb0ffe53a]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h:
+ move lfcuParam to local
+ [4c204b14ad0e]
+
+2014-06-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/encoder/frameencoder.cpp, source/encoder/nal.cpp,
+ source/encoder/nal.h:
+ nal: concatenate and escape row data while building row-start array
+ for header
+
+ This way we only need to do a single pass over each slice NAL
+ looking for start code emulations; and there is one less memcopy.
+ countStartCodeEmulations() and appendSubstream() methods could be
+ removed.
+ [9198ff2e0125]
+
+ * source/common/pixel.cpp:
+ pixel: prevent msvc warning
+ [f25ed8618509]
+
+2014-06-15 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ refine tskip related
+ [6d8d8c18ba28]
+
+2014-06-14 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/cturow.cpp,
+ source/encoder/frameencoder.cpp:
+ TComTrQuant: lambda for each Cb and Cr
+ [0957164296c1]
+
+2014-06-16 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/common/pixel.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/encoder/rdcost.h:
+ psyRd: Change psy-rd energy measurement
+
+ psy-rd energy is measured by summing up the absolute differences of
+ the AC energy in each 8x8 block in series
+ [cf8b4506e94e]
+
+2014-06-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ bitstream: simplify appendSubstream
+
+ This function is only called from one place, and we can clearly see
+ that both the source and dest bitstreams are byte-aligned.
+ [e69a427e461f]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ sbac: simplify codeSliceHeader, x265 never codes dependent slices
+ [a15044282290]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/encoder/frameencoder.cpp:
+ slice: remove unused m_nextSlice and m_dependentSliceSegmentFlag
+ [b3070d28b792]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: inline resetEntropy(), which was only called once
+ [54d6bb746c04]
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ framefilter: remove empty end method
+ [e254c0d81b5d]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use numSubstreams directly
+ [2fdc26545855]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove useless setBitstream call
+ [33853b3f694d]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove redundant function calls and obsolete comments
+ [5b42f824f19c]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: explain why SAO is being called after compression
+ [35bfd27a3c82]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp:
+ slice: remove unused m_tileOffstForMultES
+ [df0ee2403067]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove need for intermediate bitstreamRedirect
+ [602b2c2506a9]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove sliceSegment, it was always false
+ [067b68fd94cc]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove unnecessary set of nextSlice()
+
+ This flag is only read in one place, when encoding the slice header.
+ We do not support multiple slices, so there's no point in setting
+ this multiple times.
+ [51618487cb7d]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: remove unused m_bPCMInputBitDepthFlag
+ [635f159b4d0f]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp:
+ remove unused display orientation SEI
+ [4f87da44e4db]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: make per-row output streams member variables
+
+ Avoid repeated malloc/free and subsequent reallocs and frees each
+ frame
+ [97be21ff81bb]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nit, unify comment style in this function
+ [8644321a206e]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove redundant sets of SAO lambdas, reorder for
+ clarity
+ [8e51b0bfdd30]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nit
+ [edbb60c0ac0c]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: move QP/lambda initialization together
+ [9afd674721a8]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: inline slice bounds determination, do not perform
+ twice
+ [4ac8602fb0af]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp:
+ slice: remove unused finalized flag
+ [e8aee2613bf6]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp:
+ sao: remove unnecessary shim function
+ [957a5e3d0d7b]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove obsolete comment
+ [d55abb8e9106]
+
+ * source/encoder/dpb.cpp:
+ dpb: no need to reset next slice in init function
+ [1c2ee741e5b1]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: declare bitstreamRedirect on stack, do not malloc.
+ cleanups
+ [2b866266f884]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp:
+ remove unused gradual decoding refresh info SEI
+ [9283279c721c]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: move prefix SEI generation all together, before
+ compressCTURows
+ [ff47e8fd3751]
+
+ * source/encoder/frameencoder.h:
+ frameencoder: fix header case
+
+ Reported by Elyonta
+ [01a0982d2e4b]
+
+2014-06-12 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: set isCbr flag to true only in vbv mode and maxrate equals
+ bitrate
+ [a302daa9abd0]
+
+2014-06-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: add EMMS at return of xCompressInterCu
+
+ Removed the EMMS from xComputeCostMerge2Nx2N since it is only called
+ from the CU compress function and it is not using floats
+ [5b975609dc0a]
+
+2014-06-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: re-use a single bitstream object for all NAL and SEI
+
+ This saves on malloc/free/realloc/memcpy calls.
+ [c5015669b6dc]
+
+2014-06-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: nit comment spacing
+ [e8df9b57eb09]
+
+ * source/encoder/weightPrediction.cpp:
+ weight: ensure weight table is initialized on failure, simplify
+ weightAnalyse()
+ [10a4c2d42d3f]
+
+ * source/encoder/compress.cpp:
+ compress: remove floating point math to avoid needing to use EMMS
+ [8da75c4dbbc0]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: nits
+ [ebe26cc5fdd8]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove obsolete check
+ [ea6f7da090ef]
+
+ * source/encoder/nal.cpp:
+ nal: msvc and its integer conversion warnings
+ [b76c4e415cdd]
+
+ * source/encoder/nal.cpp:
+ nal: greatly simplify NAL header generation, do not use
+ TComOutputBitstream
+
+ This saves a malloc/free and a great deal of needless overhead
+ [7868d22e535d]
+
+2014-06-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: set m_totalFrameThreads at the same time as
+ param->frameNumThreads
+ [20d74192e097]
+
+ * doc/reST/cli.rst, source/common/param.cpp,
+ source/encoder/encoder.cpp:
+ param: clip bframe bias range as x264 does
+ [d0bacf50eb95]
+
+2014-06-10 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRom.cpp:
+ TComRom: fix fraction part variation in x265_lambda2_tab for higher
+ QPs
+ [a89e0703e724]
+
+2014-06-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/param.cpp:
+ preset: improve the speed settings for fast preset.
+ [0cbc7320c9f2]
+
+2014-06-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [e5656f1e1904]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix potential build warning
+ [7a3214c9622f] <stable>
+
+ * source/common/common.h:
+ common: include cctype for isdigit
+ [25b8aa22e4c8]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ bitstream: fast-path for appending bitstreams
+ [47fdb8041e9d]
+
+ * source/encoder/nal.cpp:
+ nal: add back comments now that member variables are gone
+ [420122606888]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h, source/common/common.h,
+ source/encoder/frameencoder.cpp, source/encoder/nal.cpp:
+ bitstream: simplify TComBitStream interface and code
+ [467d0e89a52f]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: remove layer violation include
+
+ files in common/ shouldn't include encoder/ headers
+ [9f6dca97e01f]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncCu.h, source/common/common.cpp,
+ source/common/common.h, source/encoder/level.cpp,
+ source/encoder/level.h, source/test/testharness.h:
+ always include CommonDef.h via common.h, avoid include loops
+
+ Remove some spurious stdlib includes not in common.h
+ [0cdfd02d6b1a]
+
+ * source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/common/CMakeLists.txt, source/encoder/cturow.h,
+ source/encoder/frameencoder.h:
+ merge TComBitCounter into TComBitStream.h
+ [ac044bf2f850]
+
+ * source/encoder/nal.cpp:
+ nal: add more padding for corner cases
+ [ecbe8796febc]
+
+2014-06-05 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ weightb: reinitialize weight table when weightb is off
+ [9dddc48aecc7]
+
+2014-06-05 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.h:
+ ratecontrol: change type of m_bframeBits to int64_t
+ [495874699b0d]
+
+2014-06-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [c11920cb6f04]
+
+2014-06-04 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ rc: fixes to improve quality in vbv
+ [93921c0afac5] <stable>
+
+2014-06-05 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: use actual bits to update vbv buffer
+ [4df4e48d24a0] <stable>
+
+2014-06-04 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: set pbFactor to default with cutree
+ [a076f4fc8d36] <stable>
+
+2014-06-04 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h, source/common/CMakeLists.txt,
+ source/encoder/CMakeLists.txt, source/encoder/api.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/nal.cpp, source/encoder/nal.h:
+ combine NAL output semantics into one clean(er) interface
+ [4a146c01fcab]
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ nal: fix checked build
+ [7186f76fe62c]
+
+ * source/encoder/encoder.cpp:
+ encoder: no longer needs NALwrite.h
+ [e4b3061770b9]
+
+ * source/Lib/TLibCommon/TComBitStream.h:
+ TComBitstream: nits
+ [d94a29bb9ce7]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/cturow.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h:
+ remove Encoder::bEnableRDOQTS, we did not allow separate config for
+ it
+
+ Either RDOQ and RDOQTS were enabled at once, or both were disabled,
+ or TSKIP was disabled and it didn't matter how RDOQTS was set.
+
+ Removed RDOQ_CHROMA as well, which allowed the removal of a warning
+ disable
+ [eca52aac2ec5]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/cturow.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: bEnableRDOQ->m_bEnableRDOQ for consistency
+ [2a228a28395c]
+
+ * source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/api.cpp,
+ source/encoder/cturow.cpp, source/encoder/dpb.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/slicetype.cpp:
+ encoder: param->m_param for consistency
+ [c02dacf1a13b]
+
+ * source/encoder/encoder.h:
+ encoder: remove m_useLossless
+ [65b385fa9989]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ slicetype: convert lookahead "structs with methods" to classes
+ [72a00c40366a]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: nit
+ [969811ce69da]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: convert RateControl to a class
+
+ The "struct with methods" metaphore was too stretched here. The
+ methods are too complicated to keep track of which variables were
+ members; variable shadowing was very common.
+ [d3b1d2d3f104]
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ nal: check padded buffer size
+ [522e419ed55d]
+
+ * source/encoder/api.cpp:
+ api: must match X265_ALLOC with X265_FREE for m_nalUnitData
+
+ This was only an issue on Windows
+ [e3a5aa8afeae]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: fix type of actualBits
+ [30e6d62afa3d]
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ nalwrite: simplify write method; single allocation with no reallocs
+ [c3a4e0ab37c2]
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: only pass param to rc constructor
+ [5c9a0aa10472]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: further improvements to code clarity
+ [794b1c67c829]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: nit
+ [9f44990be4d4]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: use member isCbr rather than making a shadow variable
+ [cca69754c32e]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: move isCbr initialization to constructor, to avoid init() race
+ [4cdc53eb185b]
+
+ * source/encoder/encoder.cpp:
+ Merge with stable
+ [8d9ea2d89fbf]
+
+2014-06-04 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ rc: fixes to improve quality in vbv
+ [cb025d96fac3]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: use actual bits to update vbv buffer
+ [5eca4ea111f7]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: set pbFactor to default with cutree
+ [0f68adb0e190]
+
+2014-06-04 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp:
+ SEI: fix bus error, cleanup m_decodingUnitInfoSEIEnabled
+
+ Remove setHrdPaarameters function as all the necessary HRD
+ parameters are already computed and set in the initHrd function.
+ [fe25d256f0e1]
+
+2014-06-04 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/SEI.h:
+ sei: white-space nits
+ [00f286a1f5e3]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/encoder/frameencoder.cpp:
+ sei: remove SEIPictureTiming fields we do not signal, cleanup
+
+ Completely remove constructor and destructor
+ [1b93336d68d4]
+
+2014-06-04 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/NALwrite.cpp, source/encoder/encoder.cpp:
+ fix: uninitialized read m_totalFrameThreads
+ [63ac1a0aa81d] <stable>
+
+2014-06-04 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: reorganize analysis options into their own section
+ [d40f60dae2ce]
+
+2014-06-04 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ fix crash in hrd when init function is called with null pointer
+ [61a02a9c78eb]
+
+2014-06-04 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge with stable
+ [9b81591718d5]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: fix bug in no-intra, intra-analysis should still happen for
+ P-frames
+ [5cc4502256a7] <stable>
+
+ * source/common/param.cpp:
+ Merge with stable
+ [1fe42453d2e3]
+
+ * source/common/param.cpp:
+ preset: correct ultrafast settings (in line with doc) by disabling
+ loop-filter.
+ [9f59dad6eea6] <stable>
+
+2014-06-03 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/x265.cpp:
+ Merge with stable
+ [f2479eb454b0]
+
+ * .hgtags:
+ Added tag 1.1 for changeset ae9609aeebdc
+ [2650fdd1a7f6] <stable>
+
+ * source/common/param.cpp:
+ param: only log psy-rd if it is enabled
+ [ae9609aeebdc] [1.1] <stable>
+
+ * source/encoder/ratecontrol.cpp:
+ lossless: do not allow CQP to adjust QP for I/B when encoding
+ lossless
+ [07e7a54ae1cb] <stable>
+
+ * source/encoder/encoder.cpp:
+ lossless: report compression ratio, disable distortion metrics
+ [d9facf9895f7] <stable>
+
+ * doc/reST/cli.rst, source/encoder/encoder.cpp:
+ lossless: disable rate control, force QP=4
+
+ strangely enough, using QP=4 gives better lambda for lossless ME and
+ RD decisions
+ [12d35ab8148d] <stable>
+
+2014-06-03 Praveen Tiwari <Praveen Tiwari>
+
+ * source/x265.h:
+ x265.h, data declaration alignment
+ [6f3149d95bd9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/x265.h:
+ whitespace clean-up
+ [8c66560a3e23]
+
+2014-06-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: nit - use bools to initialize bools
+ [8b5dadb1454e]
+
+ * source/encoder/frameencoder.cpp:
+ SEI: only setup SEIPictureTiming fields which will be coded
+ [3356ce23cad2]
+
+2014-06-03 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt,
+ source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSlice.h, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/x265.cpp, source/x265.h:
+ SEI: Insert buffering period and picture timing SEI messages
+
+ The buffering period SEI message is inserted for every key frame and
+ the picture timing SEI is inserted for every frame. The commit also
+ computes the HRD parameters as well as HRD Timing parameters that
+ are calculated using the delay components(cpb removal delay and dpb
+ output delay) carried in these SEI messages. HRD parameters can be
+ signalled by enabling --hrd.
+ [f9f553c8bd6a]
+
+2014-06-03 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/encoder.cpp:
+ qp: remove Encoder::m_useLossless.
+
+ This patch removes confusion between Encoder::m_useLossless and
+ x265_param::bUseLossless. m_useLossless was set whenever qp = 0, and
+ used in TComSPS. qp = 0 is still a valid encoder option.
+ [b4e87638e5cc] <stable>
+
+2014-06-03 Steve Borho <steve@borho.org>
+
+ * source/common/winxp.cpp:
+ xp: avoid compiler warning from GCC-MinGW
+
+ MSVC gives a warning at link time if this file is empty, so I added
+ a useless variable to the file. GCC-MinGW issues a compile time
+ warning about this unused variable.
+ [d315d1430f5c] <stable>
+
+ * source/x265.cpp:
+ cli: seperate new lossless options, make --lossless description more
+ concise
+
+ try to avoid having the --lossless line wrap
+ [cfab9513e27c] <stable>
+
+2014-06-03 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge with stable
+ [d78f38b707ba]
+
+ * doc/reST/presets.rst, source/x265.h:
+ rest: correct documentation on AQ
+ [f66ad1400874] <stable>
+
+ * Merge with stable
+ [d3f55d391314]
+
+ * source/common/param.cpp:
+ param: initialise lossless/cu-lossless fields to zero
+ [7153905d56e6] <stable>
+
+2014-06-02 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: rename variable to avoid shadowing an earlier 'part'
+ [92ef2e02f653]
+
+ * source/common/primitives.cpp, source/common/x86/asm-primitives.cpp:
+ primitives: move more aliasing to Setup_Alias_Primitives
+ [31f93f0d024f]
+
+2014-06-02 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp:
+ refine cbf==0 path: remove clearing coeff and resi
+ [b46dd1095ed8]
+
+2014-06-02 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove unnecessary pragma
+ [bc38a1637220]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ Merge with default (prepare for 1.1)
+ [108996798e78] <stable>
+
+ * source/encoder/rdcost.h:
+ psy: use m_lambdaSAD multiplier for psy cost, m_lambdaSSE for bits
+
+ in x264, m_lambdaSSE = lambda2, m_lambdaSAD = lambda
+ [5b6c9cda191b]
+
+ * COPYING, source/PPA/ppa.cpp, source/PPA/ppa.h, source/PPA/ppaApi.h,
+ source/common/bitstream.h, source/common/common.cpp,
+ source/common/common.h, source/common/cpu.cpp, source/common/cpu.h,
+ source/common/dct.cpp, source/common/intrapred.cpp,
+ source/common/ipfilter.cpp, source/common/loopfilter.cpp,
+ source/common/lowres.cpp, source/common/lowres.h,
+ source/common/mv.h, source/common/param.cpp, source/common/param.h,
+ source/common/piclist.cpp, source/common/piclist.h,
+ source/common/pixel.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/common/threading.cpp,
+ source/common/threading.h, source/common/threadpool.cpp,
+ source/common/threadpool.h, source/common/vec/blockcopy-sse3.cpp,
+ source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp,
+ source/common/vec/dct-ssse3.cpp, source/common/vec/vec-
+ primitives.cpp, source/common/version.cpp,
+ source/common/wavefront.cpp, source/common/wavefront.h,
+ source/common/winxp.cpp, source/common/winxp.h, source/common/x86
+ /asm-primitives.cpp, source/common/x86/blockcopy8.asm,
+ source/common/x86/blockcopy8.h, source/common/x86/const-a.asm,
+ source/common/x86/cpu-a.asm, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h, source/common/x86/intrapred.h,
+ source/common/x86/intrapred16.asm, source/common/x86/intrapred8.asm,
+ source/common/x86/ipfilter16.asm, source/common/x86/ipfilter8.asm,
+ source/common/x86/ipfilter8.h, source/common/x86/loopfilter.asm,
+ source/common/x86/loopfilter.h, source/common/x86/mc-a.asm,
+ source/common/x86/mc-a2.asm, source/common/x86/mc.h,
+ source/common/x86/pixel-32.asm, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm,
+ source/common/x86/pixel.h, source/common/x86/pixeladd8.asm,
+ source/common/x86/sad-a.asm, source/common/x86/sad16-a.asm,
+ source/common/x86/ssd-a.asm, source/common/x86/x86util.asm,
+ source/encoder/api.cpp, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h,
+ source/encoder/level.cpp, source/encoder/level.h,
+ source/encoder/motion.cpp, source/encoder/motion.h,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/rdcost.h, source/encoder/reference.cpp,
+ source/encoder/reference.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h, source/encoder/weightPrediction.cpp,
+ source/filters/filters.cpp, source/filters/filters.h,
+ source/input/input.cpp, source/input/input.h, source/input/y4m.cpp,
+ source/input/y4m.h, source/input/yuv.cpp, source/input/yuv.h,
+ source/output/output.cpp, source/output/output.h,
+ source/output/y4m.cpp, source/output/y4m.h, source/output/yuv.cpp,
+ source/output/yuv.h, source/test/checkasm-a.asm,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h,
+ source/test/testbench.cpp, source/test/testharness.h,
+ source/test/testpool.cpp, source/x265.cpp, source/x265.h,
+ source/x265_config.h.in:
+ change license email globally
+ [9c21227bb5bf]
+
+2014-05-30 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/param.cpp,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ add support for lossless encode
+
+ --lossless forces full lossless coding of every frame and every CU.
+
+ --cu-lossless forces the encoder to perform RD cost analysis between
+ lossy and lossless modes and choose the least cost mode for each CU.
+ [bebc88f64d99]
+
+2014-06-02 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: nits
+ [ac763df220b6]
+
+2014-05-30 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp:
+ fix to support multiple color space format in
+ TComSampleAdaptiveOffset and TEncCu structure
+ [dbd7cabc5ee6]
+
+2014-06-02 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: improve visual quality in high bit depth encodes.
+ [1c65cf8f068e]
+
+2014-06-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt:
+ cmake: nit
+ [39ddc8c12309]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: encoder.cpp no longer needs -Wno-unused-parameter
+ [d3a89fd010dd]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: move all "GCC-like" logic together, use consistent var names
+ [734956446ac1]
+
+2014-05-30 Den Scherbin <dncodr at gmail.com> <dncodr at gmail.com>
+
+ * source/CMakeLists.txt:
+ Disable exceptions for all compilers which support fno-exceptions
+ [f21ce9406d4d]
+
+2014-05-30 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h:
+ TEncSearch: use actual frame thread count to decide motion search
+ limits
+ [223a9bbf52f4]
+
+2014-06-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * doc/reST/presets.rst, source/common/param.cpp:
+ preset: set superfast, veryfast, faster and fast presets to rd 2.
+ [a5998df9b12e]
+
+ * doc/reST/presets.rst, source/common/param.cpp:
+ preset: For ultrafast preset, turn off lft, change rdLevel from 3 to
+ 2.
+
+ This adds about 20-25% more performance for ultrafast presets at
+ little efficiency cost.
+ [d957ff8312d3]
+
+2014-05-29 Den Scherbin <dncodr at gmail.com> <dncodr at gmail.com>
+
+ * source/CMakeLists.txt:
+ Disable exceptions. Fixes Clang linker errors.
+ [592ef184549e]
+
+2014-05-29 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: cleanups for clarity
+ [58420e834424]
+
+2014-05-29 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: improve visual quality and bitrate savings in ABR.
+
+ Try to prevent ABR over-compensation after I frames by amortizing
+ the cost over the next few frames;
+
+ Improve ABR quality with frame parallelism - enable frame
+ parallelism only after first few P frames to prevent excessive qp
+ fluctuations.
+
+ Fix initial I frame qp. when cu tree is enabled, the qp decided
+ arbitrarily is too low. This causes a huge qp spike in immediate P
+ frames.Tuned cplxrSum for intial I frame so that a more appropriate
+ qp is chosen.
+ [7cbe7e7a75c4]
+
+2014-05-29 Steve Borho <steve@borho.org>
+
+ * source/cmake/CMakeASM_YASMInformation.cmake:
+ cmake: 32-bit macho compiles need _ prefixes on exported functions
+ [d4932f6e964b]
+
+2014-05-28 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, doc/reST/presets.rst, source/common/param.cpp:
+ preset: disable rectangular and AMP partitions at medium preset
+
+ This gives a considerable speed-up (50-70%) at the default preset
+ for not much loss in compression efficiency (2-3%). AMP is rarely
+ useful, at non-RDO presets we were only considering AMP merge
+ anyway, and rect can be approximated by a split and two merges.
+ [b42827682323]
+
+2014-05-28 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/encoder/reference.cpp:
+ refine YUV and coeff buffer
+ [260752f39b27]
+
+2014-05-28 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ nits
+ [e9776dfd1471]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/frameencoder.cpp:
+ nits
+ [eb236aec3757]
+
+ * source/common/threadpool.cpp, source/common/threadpool.h,
+ source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h,
+ source/test/testpool.cpp:
+ pool: allow thread private data structures
+
+ Pass worker's threadId to JobProvider::findJob() and allow job
+ providers to use this ID as they see fit to keep thread local data.
+ No behavior changes, this is just laying the plumbing for future
+ optimizations.
+ [77f788046989]
+
+ * doc/reST/cli.rst:
+ rest: add missing --no-repeat-headers option
+ [6df1a5bb11fc]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: nit
+ [e6ba953dcb1a]
+
+2014-05-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ psy-rd: bug fix in merge mode, use psyCosts for all decisions
+ whenever psy-rd is enabled
+ [306d3e6b5185]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: inserting runtime checking for m_totalPsyCost
+ [503a359e874c]
+
+2014-05-27 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ SEI: fix bug in picture timing SEI when interlace encoding is
+ enabled
+
+ When the interlace mode is 1(top field first), the picstruct is
+ 2(bottom field) for all frames. But the picStruct for frames in
+ display order should be 1(top field), 2(bottom field), 1, 2,..etc
+ [807ee7f1597b]
+
+2014-05-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ psyRD: psyRD costs are saved into m_totalPsyCost.
+ [acd166cf9836]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComDataCU: introduce new variable m_psyEnergy
+ [1bd3da64eab9]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: introduce new variable m_totalPsyCost
+ [d84f5d1fbb10]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: whitespace nits
+ [08766d706869]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ TComDataCU: renaming m_totalCost to m_totalRDCost
+ [812615048da0]
+
+2014-05-25 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/CMakeLists.txt:
+ add -D__STDC_LIMIT_MACROS=1
+ [af78d190e57b]
+
+2014-05-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ nits
+ [80e6a349a9fb]
+
+2014-05-23 Steve Borho <steve@borho.org>
+
+ * source/common/shortyuv.cpp:
+ assert to optional runtime check
+ [5e8cce428457]
+
+2014-05-23 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/shortyuv.cpp, source/common/vec/blockcopy-sse3.cpp,
+ source/encoder/compress.cpp, source/encoder/slicetype.cpp:
+ refine block size related
+ [74f8aa42020f]
+
+2014-05-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/rdcost.h:
+ rdcost: overflow check by integer
+ [91330e7dddd7]
+
+2014-05-23 Steve Borho <steve@borho.org>
+
+ * source/compat/msvc/stdint.h:
+ vc9: define UINT64_MAX in our hacked stdint.h
+ [a3f5a7b9f0fb]
+
+ * source/common/CMakeLists.txt:
+ cmake: re-split TLibCommon headers to fix VC9 builds
+ [ade75817d892]
+
+2014-05-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/rdcost.h:
+ rdcost: fix energy cost check, dc is already subtracted from the
+ energy
+ [5134e76aa729]
+
+ * source/encoder/rdcost.h:
+ rdcost: use floating point math to calculate psy rd cost
+ [0c05e3b298a5]
+
+ * source/encoder/rdcost.h:
+ rdcost: fix dc portion of psy energy calculation
+
+ now flat blocks have energy of 0, as expected
+ [8a8b04982694]
+
+2014-05-15 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/param.cpp,
+ source/encoder/api.cpp, source/encoder/level.cpp,
+ source/encoder/level.h, source/x265.cpp, source/x265.h:
+ api: allow minimum decoder level to be specified
+ [29cc8b928868]
+
+2014-05-22 Steve Borho <steve@borho.org>
+
+ * doc/reST/presets.rst, source/common/param.cpp:
+ param: introduce warnings about measurements with psy-opts enabled
+
+ Disable psy-rd when tuning for psnr or ssim, and validate various
+ combinations
+ [d66773c5f275]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: readability nits
+ [73e8188a48ca]
+
+2014-05-19 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ cleanup bReusePred, unify absTUPartIdx to absPartIdx
+ [b7e6b21a5906]
+
+2014-05-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ rc: simplify updateVbvPlan()
+ [34187fb932d3]
+
+2014-05-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * doc/reST/cli.rst:
+ rest: refine rdLevels description.
+ [5548d3e6915d]
+
+ * doc/reST/cli.rst, source/encoder/cturow.cpp:
+ psyrd: is enabled only at rdLevels 5 and 6.
+
+ Only rdLevels 5 and 6 use full-RDO based decisions. These are used
+ in presets slower, veryslow and placebo.
+ [ceb4ff55f0e8]
+
+2014-05-22 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ rc: always use frameSizeEstimted for bits in updateVbvPlan
+ [9cf0134982f8]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: rename variable vbvMinRate to isCbr
+ [8f097477d74c]
+
+2014-05-22 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/slicetype.cpp:
+ fix: segmentation fault --tune zerolatency
+ [6a3a53543a89]
+
+2014-05-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/CMakeLists.txt:
+ cmake: re-enable wd4800 for TLibEncoder
+ [dadb646a7266]
+
+ * source/common/CMakeLists.txt:
+ cmake: further cleanups
+ [bc26992efaff]
+
+ * source/common/CMakeLists.txt:
+ cmake: re-enable wd4244 and wd4127 in common/vec
+ [8a26aa7f81e3]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h, source/common/CMakeLists.txt,
+ source/encoder/cturow.cpp, source/encoder/encoder.h:
+ cmake: re-enable wd4800 for TLibCommon, fix remaining warnings
+ [5bfeba9f7ae2]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fixup comment following variable rename
+ [2ed0de7f2ea7]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp:
+ lowres: use a better name for cuTree offset buffer
+ [7e92e9718b37]
+
+ * source/common/CMakeLists.txt:
+ cmake: merge TLibCommon source groups
+ [163ea3a0388b]
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/CMakeLists.txt,
+ source/encoder/CMakeLists.txt, source/encoder/compress.cpp,
+ source/encoder/cturow.h, source/encoder/rdcost.h:
+ move TComRdCost.h to encoder/rdcost.h, cleanup refactor
+
+ The RDCost class has no resemblance to the original TComRdCost
+ class.
+ [0c9e5ebbb636]
+
+2014-05-21 Praveen Tiwari <Praveen Tiwari>
+
+ * source/Lib/TLibCommon/TComRom.h:
+ TComRom.h, removed unused tables
+ [5d0658f9c539]
+
+ * doc/reST/cli.rst, doc/reST/threading.rst, source/CMakeLists.txt,
+ source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h, source/common/common.h,
+ source/common/param.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/x265.cpp, source/x265.h:
+ noise reduction ported from x264
+ [9ba6575aaac1]
+
+2014-05-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.h:
+ TComTrQuant: nits
+ [479e34a05002]
+
+2014-05-21 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ aq: fine tune aq logic to distribute bits even better
+ [9812db027903]
+
+2014-05-21 Den Scherbin <dncodr at gmail.com> <dncodr at gmail.com>
+
+ * source/cmake/version.cmake:
+ cmake: detect mercurial source installs on Windows, fixes #56
+ [a1c87ac44989]
+
+2014-05-20 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/x265.cpp:
+ psy: mention the fact that psy-rd requires rdo
+ [f39484bb3eec]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: nits
+ [a13534aa7c6b]
+
+ * source/common/param.cpp:
+ param: fix check of minimum picture dimensions
+ [66bb56dac4f7]
+
+ * source/common/winxp.cpp:
+ xp: hack to avoid linker warnings
+ [a4ddd39763f2]
+
+ * doc/reST/presets.rst:
+ rest: update fastdecode to mention no intra in B
+ [10d5af0889aa]
+
+2014-05-20 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: fix bug for invalid read in sa8d
+
+ fix invalid read when different stride value given for two input
+ buffer and enabled 16x16 and 8x8 sa8d primitives.
+ [0d2ec86fa28b]
+
+2014-05-20 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: tabs to spaces
+ [a815df2b313f]
+
+2014-05-20 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/param.cpp, source/x265.cpp:
+ param: initialise crf-max and crf-min values in the param structure.
+ [279f72586069]
+
+ * source/x265.cpp:
+ help: removing the default QP value in the help message
+
+ Since CQP is not the default rate control mode, a default QP
+ confuses readers.
+ [2c722169215c]
+
+2014-05-19 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix : square chroma transform expected error message
+ [d050fe5f8f28]
+
+2014-05-18 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ refine merge related
+ [b35a5d8f012b]
+
+2014-05-16 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ encodeCoeffNxN(): call only if non-zero coeff exists
+ [ba2a9f61ea06]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ cleanup unused arg
+ [f9f132b3e36e]
+
+2014-05-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ psyrd: use EMMS before checking calcPsyRdCost
+ [c78bed701db4]
+
+2014-05-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ psyrd: use actual recon pixels for intra predictions (bug spotted by
+ valgrind)
+ [f3f3eecd28f1]
+
+ * doc/reST/cli.rst:
+ rest: improve --rd docs
+ [4739c02a62c0]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: initialize singleFrameVbv (bug spotted by valgrind)
+ [2d5dc4e63fb9]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: initialize bReady (bug spotted by valgrind)
+ [8b6c5d7ff4c0]
+
+2014-05-16 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/common/param.cpp, source/x265.cpp, source/x265.h:
+ cli: introduce --[no]-b-intra which enables/disables intra modes in
+ B frames
+ [7d11f60c5dba]
+
+2014-05-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ nits
+ [0bd90aaaa3a7]
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/TComRdCost.h,
+ source/common/common.h, source/encoder/CMakeLists.txt,
+ source/encoder/encoder.cpp:
+ common: make a global X265_LL macro for printing uint64_t
+ [5167067ed452]
+
+ * source/Lib/TLibCommon/TComRdCost.h, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp:
+ psy-rd: add sad_square primitive array to optimize psy-rd
+
+ This fixes the DC component calculation at the same time making the
+ calculation more efficient.
+ [48af10fff12b]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix unintended assignment
+ [7533425d5060]
+
+2014-05-08 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/param.cpp,
+ source/encoder/cturow.cpp, source/x265.cpp, source/x265.h:
+ adapt psy-rd from x264
+
+ In this initial implementation, we only use sa8d to estimate the
+ energy of the source and reconstructed blocks. psy-rd is disabled by
+ default, to evaluate use
+ --preset veryslow --psy-rd 1.0
+ [d95ad61c8abc]
+
+2014-05-15 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/slicetype.cpp:
+ cutree: removed logLevel check from if loop
+ [63f4a60cb268]
+
+ * source/encoder/slicetype.cpp:
+ cutree: adjust the rowSatd with qpoffset only for reference frames
+ [3212839ec987]
+
+2014-05-15 Steve Borho <steve@borho.org>
+
+ * doc/reST/api.rst, source/encoder/api.cpp,
+ source/encoder/encoder.cpp, source/x265.def.in, source/x265.h:
+ api: introduce x265_encoder_parameters(), copy param earlier to
+ avoid mods
+
+ in x265_encoder_open(), make a copy of the provided param structure
+ much earlier to avoid making any changes to the param strucutre
+ provided by the user, in case they want to use that same param again
+ to allocate another encoder.
+ [4da6be0eca52]
+
+ * source/common/param.cpp, source/x265.cpp:
+ cli: remove default strings for preset and tune, modify default AQ
+ mode to match
+
+ The cli has used --tune ssim as the default since we've had an ssim
+ tune, but API users were getting the default aq-mode of 1 instead.
+ This commit removes the default tune (and preset) strings and fixes
+ the default param structure to match the previous CLI default
+ behavior (aq-mode 2)
+ [b03ef02dc2a2]
+
+ * source/common/common.h:
+ checked: enable check macros in debug builds
+ [a9c403e19928]
+
+ * source/common/common.h:
+ check: disable MSVC warnings about constant conditionals with
+ checked builds
+ [bbc026370c52]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ check: fix MSVC warnings and check behavior
+ [4fe655fb3f24]
+
+2014-05-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ check: another pile of assert->X265_CHECK conversions
+ [d5b42a9fe43b]
+
+2014-05-14 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup clear()
+ [890b34705c95]
+
+2014-05-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove unused (and shadowed) variable
+ [8ae4d97f3913]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/cpu.cpp,
+ source/common/dct.cpp, source/common/piclist.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/threadpool.cpp, source/common/vec/dct-sse41.cpp,
+ source/common/wavefront.cpp, source/encoder/compress.cpp,
+ source/encoder/dpb.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/motion.cpp,
+ source/output/y4m.cpp, source/output/yuv.cpp:
+ checked: convert a pile of asserts() into optional runtime checks
+ [190a21bd77a3]
+
+2014-05-11 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix 4:2:2 coeff rate calc
+ [a4d0d5679c28]
+
+2014-05-10 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ refine intra reference samples
+ [e0a3b7e79d4d]
+
+2014-05-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: do not low-clip first I frame with ABR
+ [4fe2705adb5b]
+
+2014-05-09 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ reduce xModeBitsIntra() call
+ [dd1635326993]
+
+2014-05-12 Steve Borho <steve@borho.org>
+
+ * doc/reST/api.rst:
+ rest: fix typo
+ [8b75aa2cc06d]
+
+2014-05-11 Steve Borho <steve@borho.org>
+
+ * doc/reST/api.rst, doc/reST/cli.rst, doc/reST/index.rst,
+ doc/reST/presets.rst:
+ rest: add API docs with links to appropriate sections
+ [e7f11c87d7db]
+
+2014-05-10 Steve Borho <steve@borho.org>
+
+ * doc/reST/presets.rst:
+ rest: add a note to the tune documentation about using --tune
+ ssim/psnr
+ [7985392f3e55]
+
+ * source/x265.h:
+ api: even moar
+ [deb01d38340c]
+
+ * source/x265.h:
+ api: moar tpyo
+ [bac6ad6472b6]
+
+ * source/x265.h:
+ api: tpyo
+ [c52aa51c82c7]
+
+ * source/x265.h:
+ api: remove mention of x265_encoder_reconfig(), which doesn't yet
+ exist
+ [32e587a601db]
+
+ * source/x265.h:
+ api: remove _t suffix from x265_param in comments
+ [d70f0afba883]
+
+2014-05-08 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ reduce malloc call to avoid fragment and overhead
+ [d0acf82a77f9]
+
+2014-05-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ rdcost: fix comments for lambda fix8 variables, refs b77ca886ef3b
+ [129bfec3144f]
+
+2014-05-09 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred8.asm:
+ reduce code size on intra_pred_ang8_*
+ [f7827ea458e9]
+
+2014-05-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.h:
+ TComPic: nits
+ [c665b4904e1f]
+
+ * doc/reST/cli.rst:
+ rest: fix indent of min-crf
+ [4a36a281e77c]
+
+ * doc/reST/cli.rst, source/x265.cpp:
+ cli: expose param.bRepeatHeaders to the CLI, reorder help for more
+ clarity
+ [e50bd438514f]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: avoid implicit integer conversions, fix MSVC warning
+
+ intraCost is an int array, so there was no purpose to downcasting to
+ uint16_t
+ [c8ffacb54563]
+
+2014-05-08 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: add minor changes in flow when singleFrameVbv, rateFactorMax
+ values are set.
+ [87524d63e543]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: update logic in clipQScale for vbv, when vbv lookahead is done,
+ [96290a38459f]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: clamp qp for first I frame only in rateEstimateQscale (changes
+ output)
+ [5546cc82e1ce]
+
+2014-05-08 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: qpvbv is between qpMin and prevRowQp when specifies the
+ rfConstantMin
+ [0a53062845be]
+
+2014-05-08 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: update the lowresCosts and intraCosts when aq/cutree is
+ enabled
+ [59a43a5cc704]
+
+2014-05-08 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp:
+ SEI: enable generation of recovery point SEI message for keyframes
+
+ SEI recovery points are inserted for every keyframe which tells the
+ decoder an identifier of the recovery point from which perfectly
+ valid pictures can be displayed no matter what the starting point of
+ decoding is. The SEI specifies recovery_poc_cnt that counts the
+ number of frames after which perfect video can be displayed to the
+ user. Pictures encoded after the CRA but precede it in display
+ order(leading) are ignored by the decoder and pictures following CRA
+ in POC order(trailing) do not reference pictures prior to the recent
+ CRA and are guaranteed to be displayable. Hence recovery_poc_cnt is
+ zero.
+ [8e64aa56d635]
+
+2014-05-08 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: bump X265_BUILD for qpfile and crf-min
+ [fdce542171cb]
+
+2014-05-08 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * doc/reST/cli.rst, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/x265.cpp, source/x265.h:
+ x265: implemented crf-min that specifies a minimum rate factor value
+ for encode
+ [6871636e99cb]
+
+2014-05-07 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: document --qpfile
+ [6494bb2e6425]
+
+2014-05-07 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/TComPic.h, source/encoder/api.cpp,
+ source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/x265.cpp, source/x265.h:
+ cli: added qpfile feature to force frame qp and slicetype using file
+ [7773ee321539]
+
+2014-05-06 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [8963bc3aa2e1]
+
+2014-05-07 Tom Vaughan <tom.vaughan@multicorewareinc.com>
+
+ * doc/reST/presets.rst:
+ presets.rst edited online with Bitbucket - Correct spelling
+ [607384b3312e] <stable>
+
+2014-05-05 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ fix: residualQTIntrachroma() for 4:2:2
+ [0e22bd1dfe6c]
+
+2014-05-03 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ refine picture boundary check
+
+ - cleanup slice end check
+ - fix split bits for TOPSKIP
+ [8c07f39ef5c5]
+
+2014-05-06 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ log: remove hyphen from signhide, so it matches param name
+
+ This is just to avoid confusion
+ [608267a4f634]
+
+ * Merge with stable
+ [ec4917459326]
+
+ * doc/reST/index.rst, doc/reST/presets.rst:
+ rest: add a page describing presets
+ [110993a5ef10] <stable>
+
+2014-05-06 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: remove repeat initialisations.
+ [3974eafe528d]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: remove RateControl->qpNoVbv.
+
+ Less confusion, and we have whatever info we need in rce->qpNoVbv
+ anyway
+ [5d9220ec8c81]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: avoid clipping QP multiple times when VBV is not
+ enabled.
+ [7d557d8819e9]
+
+2014-05-06 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: avoid redundant call. intraSatd costs are updated in
+ frameEncoder already
+ [532c961b16f1]
+
+2014-05-06 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/TComPic.h, source/encoder/encoder.cpp,
+ source/encoder/ratecontrol.cpp:
+ log: add the RateFactor for each frame to the csv file when using
+ --crf mode
+ [94803b73ba8a]
+
+2014-05-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ check: add checks for integer overflow in rdcost functions
+ [2577eb2cbd20]
+
+2014-05-05 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/common.h,
+ source/common/version.cpp:
+ cmake: add CHECKED_BUILD option so we can add optional runtime
+ checking
+ [5c590a31734b]
+
+ * .hgignore:
+ ignore .DS_Store files (Mac pocket lint)
+ [075705aa41a9]
+
+ * source/input/y4m.cpp, source/input/y4m.h:
+ y4m: support variable bit depth via CXXXpDD Y4MPEG header; ie:
+ C420p10
+
+ ffmpeg's support for this is non-standard, so you must use -strict
+ -1, aka:
+
+ ffmpeg -i vid.avi -pix_fmt yuv420p10le -strict -1 -f yuv4mpegpipe -
+ | ./x265 - --y4m o.hevc
+
+ closes issue #53
+ [c4adcaef8d1d]
+
+2014-05-04 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: report input bit depth
+ [5ca8717a3ec2]
+
+2014-05-05 Steve Borho <steve@borho.org>
+
+ * doc/reST/introduction.rst:
+ rest: update introduction page, add more detail about software
+ patents
+ [d0b17e3ef9db]
+
+2014-05-03 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [dcf74ea39e31]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ rdcost: explicit cast of return value, to prevent MSVC warnings
+ [04e91f38854f] <stable>
+
+2014-05-01 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/cmake/clean-generated.cmake:
+ cmake: add a clean-generated Makefile rule
+
+ 'make clean-generated' will remove all the machine generated files
+ in the build folder so that they will be re-generated with more up-
+ to-date version info the next time you run 'make'
+
+ The "easy" workaround for this problem is to just nuke the build
+ folder and start a new one.
+ [d72770a77ff8]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ use fseekg() to skip frames for 64bit builds
+
+ This is orders of magnitude faster, at least on Windows, than
+ repeated calls to ignore(framesize)
+ [61ad93af167c]
+
+2014-05-02 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [81aad858a830]
+
+ * .hgtags:
+ Added tag 1.0 for changeset cea97c4d7945
+ [d3d47e3ef9c2] <stable>
+
+2014-05-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ interlace: set sourceScanType to 0 to indicate interlaced video
+ [cea97c4d7945] [1.0] <stable>
+
+2014-05-02 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibCommon/TComRom.cpp:
+ fix g_chromaScale for 420 videos accordingly to the HEVC spec.
+ [9b66012c93bb] <stable>
+
+2014-05-02 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ rdcost: use less fractional bits for lambda scale, and larger ints
+ for chroma
+
+ This fixes really bad mode decisions made with some Main10 encodes
+ that were apparently caused by integer overflow
+ [b77ca886ef3b] <stable>
+
+2014-05-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ interlace: set sourceScanType to 0 to indicate interlaced video
+ [f3585fd81c3b]
+
+2014-05-01 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [22eda589d8ca]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: pre-calculate cost estimates for B slices, simplify
+ callback
+
+ rate control was always calling back for B slice estimates but since
+ we were only pre-calculating them if VBV was enabled we were forced
+ to make the estimates at that time (withing the context of the API
+ thread).
+
+ With this patch, we estimate B costs unless CQP is in use, and this
+ allows us to simplify getEstimatedPictureCost()
+ [1ed0bd2dbfd1]
+
+2014-04-30 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.h, source/common/shortyuv.h,
+ source/encoder/encoder.cpp:
+ fix WP issue for 422 and 444 format
+ [20551ab7ff00] <stable>
+
+2014-04-29 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, doc/reST/index.rst, doc/reST/threading.rst:
+ rest: initial documentation for threading details and considerations
+ [6d83eaf6cf24] <stable>
+
+ * source/encoder/encoder.cpp:
+ csv: always write summary info if file handle is open
+
+ fixes behavior of --csv FILE --log full
+ [148c3b9c11fd] <stable>
+
+ * Merge with default (code freeze for 1.0)
+ [c6ca14a4f2fa] <stable>
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/bitstream.h,
+ source/common/common.cpp, source/common/common.h,
+ source/common/loopfilter.cpp, source/common/param.cpp,
+ source/common/param.h, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/common/threading.h,
+ source/common/wavefront.cpp, source/common/winxp.cpp,
+ source/common/winxp.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.h, source/common/x86/ipfilter8.h,
+ source/encoder/compress.cpp, source/encoder/cturow.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/level.cpp,
+ source/encoder/level.h, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h,
+ source/encoder/weightPrediction.cpp, source/filters/filters.cpp,
+ source/input/y4m.cpp, source/input/yuv.cpp,
+ source/test/ipfilterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/test/pixelharness.h,
+ source/test/testharness.h, source/x265.cpp, source/x265.h:
+ uncrustify - enforce coding style mechanically
+ [a25fb61a7326]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: nit
+ [e6ba3c2320e8]
+
+2014-04-28 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ TComRom: hard-code the lambda tables
+ [4f7658b3c78a]
+
+2014-04-28 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ remove list data from lowres costs prior to use
+ [84d31cb2aeab]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ fix g_chromaScale to be full length
+ [6e233b6777c0]
+
+2014-04-25 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ fix: 4:2:2 rdLevel <= 1
+ [f799f8079b87]
+
+2014-04-28 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp:
+ fix hash mismatch for 422 format with HM 14.0_RExt decoder
+ [56b1d4a44798]
+
+2014-04-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove unused auto var
+ [36e53135da57]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: rename rowsCompleted to bFrameCompleted
+
+ one would expect rowsCompleted to be a counter, when in fact it is a
+ bool value signaling completion of the whole frame.
+ [563273f5772f]
+
+2014-04-27 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix incorrect initialization of fenc->rowSatds when wpp
+ is enabled.
+ [c8bff937eee0]
+
+2014-04-27 Steve Borho <steve@borho.org>
+
+ * source/common/x86/mc-a.asm, source/encoder/slicetype.cpp,
+ source/test/checkasm-a.asm, source/test/testharness.h:
+ asm: adjust x264_ prefixes
+ [e519b32b70d0]
+
+2014-04-25 Min Chen <chenm003@163.com>
+
+ * source/test/checkasm-a.asm, source/test/pixelharness.cpp,
+ source/test/testharness.h:
+ testbench: support float ret value
+ [7baf8b8ecfdc]
+
+ * source/common/x86/intrapred8.asm:
+ correct register num in intrapred8.asm
+ [52d812d0fc48]
+
+ * source/common/x86/pixel-util8.asm:
+ fix pixel_ssim_end4, the 3rd is dword
+ [2900e858e30a]
+
+2014-04-24 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: stack-check ssim_end4_t, this seems to expose an
+ argument read bug
+ [c630b0b393ee]
+
+ * source/common/x86/ipfilter8.asm:
+ ipfilter: fix register stack allocation in luma horizontal filter
+ [4a91c42d2a72]
+
+ * source/test/mbdstharness.cpp:
+ dct: fix MSVC warnings
+ [10de7b0a228c]
+
+ * source/common/intrapred.cpp, source/common/primitives.h,
+ source/common/x86/intrapred.h:
+ primitives: pass bool value as int to assembly
+
+ bool type is too ambiguous
+ [cdbcd835b849]
+
+ * doc/reST/cli.rst:
+ rest: move quality metrics section up higher
+ [fcad3bb9943d]
+
+ * doc/reST/cli.rst:
+ rest: move --repeat-headers to bitstream options section
+ [afec492ea679]
+
+ * doc/reST/cli.rst:
+ rest: loop filters, plural
+ [6f259296bfe1]
+
+ * doc/reST/cli.rst:
+ rest: move --hash into bitream options section, document error-
+ recovery aspects
+ [1662240073e2]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ dct: stack-check asm transform/quant primitives
+ [06be236c9ece]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilter: remove utterly useless comments
+ [17dd496b46ee]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilter: stack-check asm filter primitives
+ [a61ceb6f80c2]
+
+ * source/test/intrapredharness.cpp:
+ intrapred: stack-check asm intra primitives
+
+ prune some extra memsets that were used during development
+ [a332c6667dc9]
+
+2014-04-24 Min Chen <chenm003@163.com>
+
+ * source/common/x86/pixel-a.asm:
+ correct register number in pixel-a.asm
+ [791790391fb6]
+
+2014-04-24 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComMotionInfo.h:
+ TComMotionInfo: nit
+ [e9f64036fbee]
+
+ * source/test/CMakeLists.txt, source/test/pixelharness.cpp:
+ fixups for testbench build on Windows
+ [904b96e1c436]
+
+2014-04-17 Steve Borho <steve@borho.org>
+
+ * source/cmake/CMakeASM_YASMInformation.cmake, source/common/common.h,
+ source/common/threading.cpp:
+ align the stack for GCC x86_32 builds
+
+ For all threads x265 creates, align the stack immediately in the
+ call to threadMain().
+
+ The API calls do not appear to require an aligned stack; all
+ primitives that require stack aligned buffers are called from frame
+ encoder or worker pool threads
+ [4c341edb4cf8]
+
+2014-04-24 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/x86/checkasm-a.asm,
+ source/test/CMakeLists.txt, source/test/checkasm-a.asm:
+ move checkasm-a.asm to the test/ folder (fixes linux link)
+ [6dca7a1de7f7]
+
+2014-04-23 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/cmake/CMakeASM_YASMInformation.cmake,
+ source/common/CMakeLists.txt:
+ cmake: export YASM_FLAGS from CMakeASM_YASMInformation.cmake
+
+ This avoids duplicate logic in other cmake scripts
+ [c24c7b2d0eff]
+
+2014-04-23 Min Chen <chenm003@163.com>
+
+ * source/common/x86/blockcopy8.asm:
+ improve by LEA to ADD in cvt32to16_shr
+ [f8b68aa1877d]
+
+2014-04-23 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h:
+ primitives: nit
+ [1c9b3a48ea13]
+
+2014-04-23 Min Chen <chenm003@163.com>
+
+ * source/common/x86/x86inc.asm:
+ update x86inc.asm
+ [cdd79be8cff9]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: stack-check all asm pixel primitives
+ [56a1c114d3be]
+
+ * source/common/CMakeLists.txt, source/common/x86/checkasm-a.asm,
+ source/test/testharness.h:
+ testbench: port x264 stack & register check code
+ [91685d4e6c1a]
+
+2014-04-23 Steve Borho <steve@borho.org>
+
+ * source/common/threadpool.cpp:
+ threadpool: increase reference count if pool was allocated while
+ blocked
+ [ea597d46f30e]
+
+2014-04-23 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter16.asm, source/common/x86/ipfilter8.h:
+ fix wrong cpu type on interp_4tap_vert_x_4x2
+ [aa8442a28aa4]
+
+2014-04-22 Steve Borho <steve@borho.org>
+
+ * source/common/x86/x86inc.asm:
+ Backed out changeset: ce11d3617899
+ [53712f218a1a]
+
+ * source/CMakeLists.txt:
+ cmake: do not prefix absolute library paths with -l in pc file
+
+ fixes static linking on Mac OS X in particular
+ [d11c90310c8a]
+
+2014-04-22 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ pixel: Added C Primitives for estimateCUPropagateCost and removed
+ from lookahead
+ [4ed2953f358e]
+
+2014-04-22 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp:
+ testbench: ensure randomly generated width and height are >= 16
+
+ Fixes a crash in testbench caused by upshift and downshift when
+ height equal to 1
+ [d916025046f7]
+
+2014-04-22 Min Chen <chenm003@163.com>
+
+ * source/common/x86/x86inc.asm:
+ update x86inc.asm
+ [ce11d3617899]
+
+2014-04-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ me: backout previous patch; add 1 to account for temporal MV
+ candidate
+ [7ff92e09900e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ me: stack allocated pointer moved to heap
+ [54e73d05a5b1]
+
+2014-04-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.h:
+ slicetype: rowsCompleted variable should be volatile
+
+ Don't allow a compiler to optimize out the reads, it would cause a
+ deadlock
+ [84315557c97f]
+
+ * source/common/param.cpp:
+ log: do not report weightb twice
+ [5f49217b2489]
+
+2014-04-22 Den Scherbin <dncodr at gmail.com> <dncodr at gmail.com>
+
+ * source/x265.cpp:
+ cli: fix bitrate output when encoding
+ [3acc99098339]
+
+2014-04-21 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: improve VUI docs
+ [8c1e721209f4]
+
+ * doc/reST/cli.rst:
+ rest: remove redundant `in`
+ [f625e0cba6d6]
+
+ * doc/reST/cli.rst:
+ rest: improve description of constrained intra
+ [c1b4a55fbb10]
+
+ * doc/reST/cli.rst:
+ rest: update --qp docs to mention behavior of --qp 0
+ [cbdce05c6959]
+
+2014-04-21 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix preset placebo option crash for 444 color format
+ [a30c81796c22]
+
+2014-04-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ slicetype: use a worker thread for slicetypeDecide when it may help
+ (closes #17)
+
+ If slicetype/scenecut analysis is enabled and the user has a thread
+ pool of at least 4 threads, use a worker thread to run
+ slicetypeDecide.
+
+ Improves performance in presets that were bottlenecked by b-adapt 2
+ style lookahead complexity.
+ [c7f3b7487f60]
+
+2014-03-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/bitcost.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/slicetype.h,
+ source/encoder/weightPrediction.cpp:
+ adapt x264 style lambda tables [CHANGES OUTPUTS]
+
+ initLambda() in TComRom.cpp is passed the scale factor that is used
+ to adjust lambda2 values. It uses 0.85 right now, which is similar
+ to x264's value (0.9), and seems to be optimal for HEVC based on our
+ tests.
+
+ These lambda tables seem to help most at low QPs, allowing the
+ encoder to get nearly lossless quality at high bitrates.
+ [a4ae35d04777]
+
+2014-04-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: nits, assume sizeof(char) == sizeof(uint8_t)
+
+ cleanup white-space and hungarian prefixes
+ [e45e5ca4608e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ me: build a larger list of motion candidates for ME (closes #14)
+ [fdccd5524ff7]
+
+2014-04-21 Min Chen <chenm003@163.com>
+
+ * source/common/x86/blockcopy8.asm:
+ fix asm cvt32to16_s wrong XMM register number
+ [ccfd0819b5c3]
+
+2014-04-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: initCU was missing this initialisation, possible causing
+ errors in row restarts.
+ [e6e78f2fb192]
+
+2014-04-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.h:
+ rc: remove unused keyFrameInterval
+ [78c1f43f12f5]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: if --qp 0 is specified, use zero quant for all slice types
+
+ This is not the same as lossless. For true lossless we must enable
+ transform skip in the PPS and force all blocks to be coded with
+ transform skip enabled.
+ [07156a0e74e5]
+
+2014-04-16 Steve Borho <steve@borho.org>
+
+ * source/common/threadpool.cpp:
+ threadpool: use a mutex to protect pool allocation
+
+ We only want to allow one thread to create the singleton thread
+ pool. Rename the static instance variable to s_instance as per our
+ coding style
+ [85c95672ccf0]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ Merge with stable
+ [2fc309678785]
+
+2014-04-03 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/dpb.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ frameencoder: store the reference state of the picture in
+ FrameEncoder
+
+ We find that reference state of the reference frame changed during
+ the encode when we use frame-thread > 1 this cause the CU level QP
+ for the frame is non-deterministic, this is leading the non-
+ deterministic encoded output for the frame, to avoid this store the
+ reference state of the frame to FrameEncoder->m_isReferenced and
+ when the QP is calculate for CU, refer the reference state of the
+ frame from FrameEncoder->m_isReferenced this stat will never change
+ during the encode
+
+ Moved slice reference state initialization from dpb to FrameEncoder
+ initSlice()
+ [aacd6919d173] <stable>
+
+2014-04-16 Min Chen <chenm003@163.com>
+
+ * source/common/x86/dct8.asm:
+ align DCT8's stack to 64-bytes to avoid crash and improve cache
+ performance
+ [024ca523052f]
+
+2014-04-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: initialize m_vps pointer
+ [818a591c3a6e]
+
+ * source/encoder/frameencoder.cpp:
+ encoder: singleton m_vps nits
+ [7fd1df6f4db8]
+
+ * source/cmake/CMakeASM_YASMInformation.cmake:
+ cmake: nit
+ [41ef5053e04c]
+
+ * source/encoder/frameencoder.cpp:
+ Merge with stable
+ [436c63dd2d24]
+
+2014-04-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use m_isReferenced when configuring SAO in
+ compressFrame()
+
+ In some pessimal situations, the slice's reference state could even
+ be changed by the time compressFrame() starts. This prevents any
+ race hazard.
+ [5746582ff4a6] <stable>
+
+2014-04-15 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp:
+ vbv: clear row diagonal and cu SATD costs after vbv row reset was
+ triggered
+
+ refs #45
+ [03525a77d640] <stable>
+
+2014-04-16 Steve Borho <steve@borho.org>
+
+ * source/cmake/CMakeASM_YASMInformation.cmake:
+ cmake: use HAVE_ALIGNED_STACK=0 for x86_32 builds, even for GCC
+
+ In order to enable HAVE_ALIGNED_STACK for 32bit builds, we would
+ need to align our stack internally at all thread entry points and
+ all API entry points that might use primitives. 32bit performance is
+ not a high priority for us at the moment.
+
+ This fixes a number of reported crashes on 32bit builds
+ [cfb1bb58d4fe] <stable>
+
+ * source/encoder/motion.cpp:
+ motion: always include the mvcost returned by motionEstimate
+ [CHANGES OUTPUTS]
+
+ This was a rather subtle bug that has been in the code base for some
+ time. The caller of motionEstimate() will often want to remove the
+ mvcost from the returned cost value, and in this circumstance it
+ would go negative, and since the returned value is unsigned it
+ became very large, causing the encoder to actually discard a zero-
+ residual match.
+
+ If the stars were perfectly aligned and all of the reference ME
+ costs became exactly -1, *all* possible ME candidates were discarded
+ which could lead to crashes.
+ [bf40ab3af59a] <stable>
+
+2014-04-16 Ashok Kumar Mishra <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/shortyuv.cpp:
+ fix compile warning in pixel.cpp for 422 primitive setup
+ [24e8bac645a3]
+
+2014-04-15 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: help nits (closes #47)
+ [0b696c7f46f2]
+
+2014-04-15 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp:
+ vbv: clear row diagonal and cu SATD costs after vbv row reset was
+ triggered
+
+ refs #45
+ [166e4d6e819e]
+
+2014-04-15 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix: rdLevel <= 1
+ [9735b037b461]
+
+2014-04-14 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ vui: emit VUI w/ timing info unconditionally, remove timing info
+ from VPS
+
+ Since many tools seem to only look in the VUI for timing info, it
+ seems to be best to output that info there, and remove it from the
+ VPS (to avoid sending redundant data in our headers)
+ [8ebadea05bfe]
+
+2014-04-15 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp:
+ fix: constrained intra
+ [0a95a6bb0f8e]
+
+2014-04-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: fix indentations
+ [1cf67a7b362d]
+
+ * source/common/pixel.cpp:
+ pixel: remove out-of-range chroma copy function assignments
+ [08d64a70594e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: white-space nits
+ [488b81a7f1c6]
+
+ * source/common/param.cpp:
+ param: reintroduce range checks of internalCsp
+ [e62e96cf506d]
+
+ * doc/reST/cli.rst:
+ rest: update colorspace docs
+ [b89d85f10bc4]
+
+2014-04-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ encoder: nits
+ [9f0f011294bd]
+
+ * source/encoder/encoder.cpp:
+ encoder: weightP not supported yet for 444 and 422.
+ [6d4f0673c386]
+
+ * source/x265.cpp:
+ x265: adding support for i422 in the help command
+ [ae8f99512774]
+
+2014-04-12 ashok <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/common/ipfilter.cpp,
+ source/common/param.cpp, source/common/pixel.cpp,
+ source/encoder/ratecontrol.cpp, source/x265.cpp:
+ Modify TComDataCU structure to support 422 color space format
+ [3a9c1fc2b742]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ Modify TComLoopFilter structure to support 422 color space format
+ [74ab24517d0e]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ Modify TComRom and TComPattern structure to support 422 color space
+ format
+ [abf05dab1844]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h:
+ Modify TComYuv and TShortYuv structure to support 422 color space
+ format
+ [ff3892c00318]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ Modify TEncSbac and TEncEntropy structure to support 422 color space
+ format
+ [aa0c458ede27]
+
+ * source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Modify TEncSearch structure to support 422 color space format
+ [0454675dbaf7]
+
+2014-04-12 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: Fix initial I-slice QP for 10-bit CRF mode.
+ [a622c4bfc688]
+
+2014-04-11 Steve Borho <steve@borho.org>
+
+ * source/common/winxp.cpp, source/common/winxp.h:
+ xp: fix build with XP headers
+ [483e5077a6b7]
+
+ * source/CMakeLists.txt:
+ cmake: allow icpc to use vectorization if it likes
+ [850ebca2f7c8]
+
+2014-04-09 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ cip: add is*AvailableCIP()
+
+ simplify no CIP case.
+ [13fa6d4d4fe4]
+
+2014-04-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: nits
+ [a5aa9e730323]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: comparing >=0 of unsigned variable is always true
+ [85f977830d9d]
+
+2014-04-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm-primitives: Enable missing XOP primitives in HIGH_BIT_DEPTH
+ [bd5e59fc917d]
+
+ * source/common/x86/x86util.asm:
+ asm: HADDD optimization for XOP
+ [78ab76f203a9]
+
+2014-04-08 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ vbv: log frame-average QPs for VBV; even when AQ is disabled.
+ [55981f89b398]
+
+2014-04-10 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: prevent one layer of non-zero I-slice qp clipping
+ [CHANGES OUTPUT].
+
+ This seems to have been an error importing RC code from x264. It
+ could be responsible for error reports on I-slices (after POC 0)
+ having much higher QP/low visual quality. Needs review.
+ [1c0f1a4ce209]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: rename reInit to init. This method is called in the
+ constructor and when ABR history is reset.
+ [83ccf2f1453f]
+
+2014-04-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/level.cpp:
+ level: fix MinGW warning
+ [51c627e235bc]
+
+2014-04-10 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/CommonDef.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ ratecontrol: cleanup, replace (unnecessary) constant arrays with
+ constants.
+ [db15b6bee7f4]
+
+2014-04-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: more dead code removed
+ [e2df2309e6f1]
+
+2014-04-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/level.cpp:
+ level: fix MSVC compile error, give sqrt() argument unambiguous data
+ type
+ [bd987db26d5d]
+
+2014-04-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: partial backout of 6284b30a0fdd, get rid of debugging
+ notes.
+ [bdca492dc1d7]
+
+ * source/encoder/level.cpp:
+ level: remove conditional expression warning
+ [7f62dfabe319]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: remove dead code
+
+ Imported from x264; likely a part of 2-pass. In any case, not
+ relevant here.
+ [6284b30a0fdd]
+
+2014-04-07 Steve Borho <steve@borho.org>
+
+ * source/x265.rc.in:
+ rc: update the default build output filename for our DLL
+ [15471ecb08d8]
+
+ * source/common/common.cpp, source/common/common.h,
+ source/encoder/CMakeLists.txt, source/encoder/api.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/level.cpp, source/encoder/level.h:
+ level: move decoder level logic to level.cpp, make table based
+
+ the new function enforces more limits defined in Annex A - widths
+ and heights are capped to avoid extreme rectangular dimensions DPB
+ size is limited based on resolution at higher resolutions, the min
+ CTU size is 32
+
+ this commit also lays the groundwork for adding --level 5.1 --tier
+ HIGH params
+ [23b509a26449]
+
+2014-04-08 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ TComPic: change pointer initial values to NULL (instead of 0).
+ [b5caca9954f3]
+
+2014-04-07 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ TEncEntropy: cleanup bRD arg, fix 4:4:4 intra chroma rate [OUTPUT
+ CHANGE 4:4:4]
+ [aec57ffb18de]
+
+2014-04-06 Rafaël Carré <Rafaël Carré>
+
+ * source/common/CMakeLists.txt, source/common/param.cpp:
+ strtok_r: fix detection on Windows
+
+ * Make sure HAVE_STRTOK_R is always defined, to 0 if absent
+ * Fix typo in #if
+ * mingw-w64's pthread.h #defines strtok_r, make sure to undef it
+ before we use our own definition.
+ [a4cb624267f3]
+
+2014-04-05 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ api: drop param.vui.bEnableVuiParametersPresentFlag and
+ bEnableAspectRatioIdc
+
+ These two params can be implied from other parameters, and having
+ them present only makes the VUI configuration more complicated than
+ it needs to be.
+
+ This commit also drops the debugging --vui CLI option
+ [c1300ae4e7ba]
+
+2014-04-04 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: we don't abbreviate integer anywhere else
+ [ac1bcf04c144]
+
+ * doc/reST/cli.rst:
+ rest: fix the straw-man
+
+ The two-argument command line doesn't work for YUV since you need to
+ provide the resolution and frame rate
+ [aa1a86a1bd35]
+
+ * source/common/param.cpp:
+ param: force bRepeatHeaders for the still picture profile
+ [4bb0073e3d15]
+
+ * source/encoder/api.cpp, source/x265.cpp:
+ log: move logging of version and build info into libx265
+
+ Now this data will be reported in the logs even when x265 is used as
+ a shared or static library
+ [9f77f0228735]
+
+2014-04-03 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ testbench: prevent 0 height in plane copy tests
+
+ The ASM functions handle the last row specially and cannot handle
+ height of 0, it causes testbench crashes when rand() rolls the wrong
+ dice.
+ [ac9e57296fa8]
+
+ * doc/reST/cli.rst, source/CMakeLists.txt,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/common/param.cpp,
+ source/encoder/frameencoder.cpp, source/x265.cpp, source/x265.h:
+ api: add support for access unit delimiters (--aud)
+ [6327400944ee]
+
+ * source/x265.cpp:
+ cli: add missing --no-dither option to getopt list
+ [8273932bc5b7]
+
+ * source/Lib/TLibEncoder/TEncEntropy.h:
+ TEncEntropy: nit
+ [1d2ab46f13d2]
+
+ * doc/reST/cli.rst:
+ rest: nit
+ [d73898ae3e47]
+
+ * source/common/param.cpp:
+ param: nit reorder of RC mode checks to avoid uncrustify problems
+
+ uncrustify was seeing FOO(bar < x || bar > y) and assuming this was
+ a template instantiation and changing it to FOO(bar<x || bar> y).
+ Reordering the two comparisons avoids this problem
+ [2e376af3a467]
+
+ * source/common/param.cpp:
+ param: enforce a minimum picture size
+
+ Do not allow the user to configure a picture smaller than at least
+ one CTU
+ [343414c96b01]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use m_isReferenced when configuring SAO in
+ compressFrame()
+
+ In some pessimal situations, the slice's reference state could even
+ be changed by the time compressFrame() starts. This prevents any
+ race hazard.
+ [8c946aca5824]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: comment nit
+ [9c1cc2aa053a]
+
+ * Merge with stable
+ [eef9a0050728]
+
+2014-04-03 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/dpb.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ frameencoder: store the reference state of the picture in
+ FrameEncoder
+
+ We find that reference state of the reference frame changed during
+ the encode when we use frame-thread > 1 this cause the CU level QP
+ for the frame is non-deterministic, this is leading the non-
+ deterministic encoded output for the frame, to avoid this store the
+ reference state of the frame to FrameEncoder->m_isReferenced and
+ when the QP is calculate for CU, refer the reference state of the
+ frame from FrameEncoder->m_isReferenced this stat will never change
+ during the encode
+
+ Moved slice reference state initialization from dpb to FrameEncoder
+ initSlice()
+ [36a66ea7a27e]
+
+2014-04-03 Steve Borho <steve@borho.org>
+
+ * .hgtags:
+ Added tag 0.9 for changeset 82bbd2bf3b49
+ [640f9177eeb0] <stable>
+
+2014-04-03 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/pixel-a.asm:
+ asm: fix invalid read in upShift routine
+ [82bbd2bf3b49] [0.9] <stable>
+
+2014-04-02 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [c0362b478e23]
+
+2014-04-02 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/dpb.h:
+ dpb: Allow two L1 refs when b-pyramid is enabled [CHANGES OUTPUTS]
+
+ Consider this common case: if we have 5 consecutive (display order
+ frames) that are determined to be P1-B1-B2-B3-P2 by the lookahead.
+ When b-pyramid is enabled, the middle B will be encoded first and
+ used as a reference by the two following B frames (in encode order);
+ P1-P2-B2ref-B1-B3
+
+ frame L0 L1 P1 P2 P1 B2ref P1 P2 B1 P1 P2 B2ref B3 B2ref P1 P2
+
+ When B1 is encoded, both B2ref and P2 should be available as L1
+ references, this will improve the encode compression efficiency when
+ b-pyramid is enabled (closes #12)
+ [d815c4a8fa74]
+
+2014-04-02 Min Chen <chenm003@163.com>
+
+ * source/test/pixelharness.cpp:
+ testbench: use different stride on calcrecon
+ [89af57686794]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/test/pixelharness.cpp:
+ remove unused parameter *recon from assembly code
+ [fdfad9734231]
+
+2014-04-02 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/compress.cpp:
+ cleanup m_cuColocated[]
+ [ccb2b7c26bb6]
+
+2014-04-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/weightPrediction.cpp:
+ weight: properly reset weights when no-residual early-out is taken
+
+ This fixes a hash mismatch seen with a Main10 encode of sintel-480p
+ [e03388e98ecc] <stable>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix white-space nit, add comment
+ [67c0aa70a125]
+
+2014-04-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ param: fix typo in if-check.
+ [261b3c2e788e]
+
+2014-04-02 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp:
+ param: set aq strength to 0 in CQP
+ [dc887415f6df]
+
+2014-04-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ Merge from stable
+ [3f27daf35506]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: removing assign qp inconsistencies which were
+ triggered for unreferenced P frames
+ [606da0b6bc58] <stable>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/test/pixelharness.cpp:
+ Backed out changeset: a6930bfbd908
+
+ This changeset causes crashes. Needs to be re-examined.
+ [d0b5ea32525b]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ calcQpForCU: remove m_pic input parameter.
+ [03bad90e94ad]
+
+2014-04-01 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/test/pixelharness.cpp:
+ remove unused recon[] from assembly code
+ [a6930bfbd908]
+
+2014-04-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/dllmain.cpp:
+ Merge with default (feature freeze for 0.9)
+ [1fc0fda2b08b] <stable>
+
+2014-04-01 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/common/param.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp, source/x265.cpp, source/x265.h:
+ weightb: add CLI options for explicit weightb [CHANGES OUTPUTS]
+
+ weightB will be disabled by default for this release. This patch
+ fixes the hash mistakes and other fetaure bugs (the reasons it had
+ been disabled)
+
+ HEVC only signals a single denom for all references so the L1
+ reference must use the same denom as the L0 reference or no weight
+ at all. A more exhaustive search might be added later for slower
+ presets. Also, the lookahead will need to be modified to model
+ weightB behavior so it can be more effective.
+
+ This patch changes how the unweighted references are coded, so even
+ weightP outputs change slightly.
+ [0206822d9fea]
+
+2014-04-01 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: lower log level of restart indicators
+ [f8aa296d60c3]
+
+2014-03-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: nits
+ [6edc3ed24643]
+
+2014-04-01 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/pixel-a.asm:
+ asm: fix build error caused by usage of 64-bit dependent register in
+ Win32 versions
+ [dd189fd26f47]
+
+2014-03-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: do not assume frames[] array has been initialized
+
+ slicetypeAnalyse() may not have been called, so use picture list[]
+ instead
+ [7ce180ca05b3]
+
+2014-03-31 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/pixel-util8.asm,
+ source/test/pixelharness.cpp:
+ remove macro NEW_CALCRECON
+ [5d607fd4531f]
+
+2014-03-31 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ testbench: code for testing input pixel upShift/downShift primitives
+ [dc9a6a87db56]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for input pixel upShift/downShift
+ [c4ea6cffe2b3]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/common/pixel.cpp,
+ source/common/primitives.h:
+ primitives: added C primitives for upShift/downShift of input pixels
+ [a30786caa6c3]
+
+2014-03-31 Selvakumar Nithiyaruban <selvakumar@multicorewareinc.com>
+
+ * doc/reST/cli.rst, source/x265.cpp:
+ cli: add cli option for dither
+ [b521f535442a]
+
+ * source/CMakeLists.txt, source/common/common.cpp,
+ source/common/common.h, source/filters/filters.cpp,
+ source/filters/filters.h:
+ dither: port dither related functions from x264
+ [106fc00d4eab]
+
+2014-03-31 Steve Borho <steve@borho.org>
+
+ * source/common/winxp.cpp, source/common/winxp.h:
+ xp: fix header guards for XP support, fixes MinGW build
+
+ If no _WIN32_WINNT version is specified, MinGW defaults to XP SP3.
+ Our include guards were checking for <= XP instead of checking for
+ any version before Vista which was the version that introduced
+ native CONDITION_VARIABLE support
+ [ae07405973b7]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: prevent deadlock in non-wpp mode
+ [f3c97e82ab04]
+
+ * source/CMakeLists.txt:
+ cmake: pick the old policy for MACOSX_RPATH (only applicable for
+ cmake 3.0)
+ [4564298c30f6]
+
+2014-03-29 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: allow MinGW to target XP by default
+
+ This makes MinGW to use our workaround CONDITION_VARIABLE
+ implementation but it seems to be on average better than asking
+ MinGW to compile for Vista.
+ [6f7b323061dc]
+
+2014-03-11 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/cturow.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ vbv: enable row restarts when mid-frame qp adjustemets are
+ inadequate
+ [1410caf09a39]
+
+2014-03-29 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/threading.h, source/common/winxp.cpp,
+ source/common/winxp.h:
+ restore WINXP_SUPPORT build option, workaround for
+ CONDITION_VARIABLE on XP
+
+ This adapts x264's code for an XP-safe pthread_cond_t to make an XP-
+ safe CONDITION_VARIABLE (which was introduced in Windows Vista)
+
+ x265 will use native CONDITION_VARIABLE unless the WINXP_SUPPORT
+ cmake option is enabled. It forces _WIN32_WINNT=_WIN32_WINNT_VISTA
+ for MinGW for this purpose.
+ [3f78e639d9ce]
+
+2014-03-27 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/param.cpp:
+ refine CUSize related
+
+ rename to clarify. division to shift.
+ [5fb4400d76c2]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ sbh: early continue for all zero coeff group
+ [0705bb47bfcc]
+
+2014-03-27 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ move buffer outside parenthesis
+ [9b378e860ddb]
+
+2014-03-28 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/common/common.h,
+ source/common/pixel.cpp:
+ common: combine duplicate ClipY and ClipC templates, return pixel
+ type
+
+ and fix some hungarian prefixes I encountered
+ [b9a62f4491a7]
+
+2014-03-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRom.h, source/common/common.h:
+ common: move clip templates to common.h
+ [c2fdc391d226]
+
+ * doc/reST/cli.rst:
+ rest: fix tpyo
+ [5ec673a3e635]
+
+ * source/x265.cpp:
+ cli: add link to documentation to end of `x265 --help` output
+ [e3b1fb25c1d5]
+
+ * doc/reST/cli.rst:
+ rest: consistent capitalization of page name
+ [49528dce611c]
+
+ * doc/reST/cli.rst:
+ rest: improve --ssim, --psnr, recon, and VUI descriptions
+ [ec97d22b021c]
+
+ * source/Lib/TLibCommon/TComTrQuant.h:
+ TComTrQuant: fix compiler warning in debug builds
+ [0692d586def7]
+
+ * doc/reST/cli.rst:
+ rest: improve rate control documentation
+ [6a139bbaddb8]
+
+ * doc/reST/cli.rst:
+ rest: cleanup --input description
+ [3c366c8973e0]
+
+2014-03-26 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/encoder/api.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/x265.cpp, source/x265.h:
+ api: change x265_encoder_headers() to return byte count on success
+ [8ce32bd20ec7]
+
+2014-03-27 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: improve docs for --me and --early-skip
+ [6e25dfa0cc9e]
+
+2014-03-26 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ nits
+ [8e0c2d24fc45]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/common.h,
+ source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp:
+ replace TCoeff with coeff_t
+ [ca35d9b58b55]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/common/common.h:
+ common: move X265_DEPTH definition to common.h
+ [9fd80b32a24e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ replace Pel with pixel
+ [9c0419c1781b]
+
+ * source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp:
+ replace UChar with uint8_t
+ [bf2075b6e879]
+
+2014-03-24 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: move assembly source into ASM source group in VS
+ [29efd2537b56]
+
+2014-03-26 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: this sentence was perhaps redundant
+ [7d37c06c80f4]
+
+ * doc/reST/introduction.rst:
+ rest: make life slightly more difficult for spambots
+ [2d41a9d48e3b]
+
+2014-03-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/frameencoder.cpp:
+ fix chroma lambda weighting
+ [d38335a9375a]
+
+2014-03-26 Steve Borho <steve@borho.org>
+
+ * doc/reST/cli.rst:
+ rest: nits
+ [e6862130b35b]
+
+2014-03-25 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: ignore leading double-slash in names passed to
+ x265_param_parse
+
+ It might be ambiguous to API users whether these are required,
+ looking at our documentation, so ignore them if they do.
+ [2cda667fd786]
+
+ * doc/reST/cli.rst:
+ rest: improve --output, add documentation for --repeat-headers
+ [c82b0f98e3fb]
+
+ * doc/reST/cli.rst:
+ rest: improve --tu-*-depth, --ref, and --tskip descriptions
+ [2404a23fb957]
+
+ * doc/reST/cli.rst:
+ rest: improve the description of --rect --amp
+ [0de64941eec8]
+
+ * doc/reST/cli.rst:
+ rest: document the behavior of --subme
+ [939de245ea5f]
+
+ * doc/reST/introduction.rst:
+ rest: update licene email address
+ [82e2254874b1]
+
+ * source/x265.cpp:
+ cli: remove dead options from getopt long-options list
+ [9f5870075f72]
+
+ * source/x265.h:
+ api: fix documented defaults for cuTree and AQ
+ [f482d57a6ab5]
+
+ * doc/reST/cli.rst:
+ rest: CRF options are doubles
+ [455e4c8a5b3d]
+
+ * doc/reST/cli.rst, source/CMakeLists.txt, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ api: drop VUI options which are not fully implemented
+
+ It is better to not have to document that these are unfinished
+ [8f770a36875d]
+
+ * doc/reST/cli.rst:
+ rest: add a couple of missing options, improve descriptions of
+ others
+ [02a2a5bd4330]
+
+ * doc/reST/cli.rst:
+ rest: improve CLI docs, fix some wrong descriptions, moar better
+
+ I've moved --weightp and --refs to the ME section since they have no
+ bearing on slice decision and lots of impact on motion search. Some
+ new options are still missing, will add those in a later commit
+ [11d301883894]
+
+ * doc/reST/cli.rst:
+ rest: large cleanup of CLI opt docs
+ [8181f224ec27]
+
+ * doc/reST/cli.rst:
+ rest: fix csv logging descripion, move debug options to the end
+ [6ece6e038ca8]
+
+ * doc/reST/cli.rst:
+ rest: use comma to separate short and long options
+
+ This looks better, and fixes cross referencing
+ [9ee05bffbc68]
+
+ * doc/reST/Makefile, doc/reST/conf.py, doc/reST/index.rst:
+ rest: add Makefile for generating HTML from reST, cleanup some nits
+ [c52c2f8c3e32]
+
+ * Merge with stable
+ [fd5e313eca45]
+
+2014-03-25 Sagar Kotecha <sagar@multicorewareinc.com>
+
+ * doc/reST/cli.rst, doc/reST/conf.py, doc/reST/index.rst,
+ doc/reST/introduction.rst:
+ Add reST script to generate x265 user manual
+ [a1d9b54e57d2] <stable>
+
+2014-03-25 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/common.h,
+ source/common/param.cpp, source/encoder/api.cpp,
+ source/encoder/frameencoder.cpp, source/x265.cpp, source/x265.h:
+ api: add param.bRepeatHeaders - insert stream headers in each
+ keyframe NAL
+
+ This is apparently useful for raw stream formats
+ [e739e579609a]
+
+2014-03-24 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ cleanup on TComTrQuant::getTUEntropyCodingParameters
+ [4318d47d9348]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ faster sign(X) and N^2 on TComTrQuant::xRateDistOptQuant
+ [10e614dca6d4]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ improvement by replace SHIFT to MASK_AND
+ [33617683915d]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ optimize: replace g_groupIdx[] by getGroupIdx()
+ [b39d26118f09]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ reduce g_minInGroup from uint32_t to uint8_t
+ [f09130afa3dd]
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ improvement TEncBinCABAC::writeOut by mask operator and local
+ variant
+ [88c66aece128]
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ improvement TEncBinCABAC::encodeBin by temporary variant and reduce
+ AND operator
+ [5c5cb411263e]
+
+2014-03-24 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: fix missing reference to superfast preset
+ [aa08b7f2d420]
+
+2014-03-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: nits (no change)
+ [fdd7c6168cf4]
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [07670cfdc215]
+
+2014-03-21 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ vbv: fix race condition in processRowEncoder, store row qp directly
+ in m_pic->m_rowDiagQp.
+ [21eb4a43e02f] <stable>
+
+2014-03-18 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp:
+ use mask operator to avoid branch
+ [79b76dcaacd8]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ replace parameters (oneCtx, absCtx) by pointer m_estBitsSbac->..
+ [da5f379974c0]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ optimize: rewrite TComTrQuant::xGetCodedLevel
+ [190f1b500219]
+
+2014-03-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: auto-disable weightp with 4:4:4 inputs, until it is fixed
+ [fe3fcd9838c0]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: validate unidirectional MVPs prior to trying MV0 bidir
+ (closes #34)
+
+ This should fix some rare non-determinism as well as prevent the
+ crash seen in issue #34. [CHANGES OUTPUTS]
+ [e06f2a068622]
+
+ * source/x265.pc.in:
+ pkgconfig: allow user-supplied lib folder (closes #40)
+ [8830c8bf15cb]
+
+2014-03-19 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/common.h,
+ source/common/param.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/x265.cpp, source/x265.h:
+ add experimental support for interlaced content (field encoding)
+ (refs #15)
+
+ * adds param.interlaceMode
+ * removes VUI params that are now handled automatically
+ * adds --no-interlace --interlace=tff|bff|prog|false CLI options
+ * signals interlace source flag, clears progressive source flag
+
+ This initial implementation requires the user to provide fields
+ (half-height) in the correct temporal order; so not very useful for
+ exisitng Y4M or YUV interlaced input files.
+
+ When interlacing is enabled, the encoder emits PictureTiming SEI
+ messages that indicate top or bottom field for the decoder.
+ [e35c8c03ee9f]
+
+2014-03-20 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ vbv: fix race condition in processRowEncoder, store row qp directly
+ in m_pic->m_rowDiagQp.
+ [5638c2311653]
+
+2014-03-19 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: more QP cleanup for subCUs, inter modes.
+ [27e0620327e5]
+
+2014-03-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: add missing parens in COST_MV() macro (fixes #41)
+ [221d8aee9aa1]
+
+ * source/encoder/motion.cpp:
+ motion: UMH fix to match x264 behavior
+ [fcb916ec982f]
+
+ * source/input/yuv.cpp, source/input/yuv.h:
+ yuv: use ThreadSafeInteger to manage ring buffer
+ [96d1d690d2ab]
+
+ * source/encoder/api.cpp, source/encoder/encoder.cpp:
+ encoder: keep copy of input parameters (refs #43)
+
+ We do not want to allow the user to change the param used by the
+ encoder during the encode, nor do we want to suffer from cleanup
+ ordering issues. We can't crash if the user released the param
+ struct they allocated prior to closing the encoder
+ [56a382eb1b72]
+
+ * source/input/y4m.cpp, source/input/y4m.h:
+ y4m: use ThreadSafeInteger to manage ring buffer
+ [bbf6010764be]
+
+2014-03-19 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ TEncBinCoderCABAC: fix MingGW build "declaration of 'byte' shadows a
+ global declaration"
+ [7bb421429129]
+
+2014-03-19 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: tabs to spaces
+ [459c96998a62]
+
+ * source/CMakeLists.txt:
+ cmake: pkgconfig file must be installed in user-specified lib folder
+ (refs #40)
+ [ab9c23ebb527]
+
+ * source/common/threading.h, source/encoder/framefilter.cpp:
+ thread: add an incr() method to ThreadSafeInteger to avoid redundant
+ locks
+ [1b57d57ff2d9]
+
+2014-03-19 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TEncCU: further refine qp offsets
+ [148553629f2a]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: all SUbCUs will now copy QP array directly from parent CU,
+ instead of resetting to qp(0).
+ [648db5e86622]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: add QP-independent initSubCU
+ [de4eb4d4bd01]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: add QP-independent initEstData
+ [d566947b5493]
+
+2014-03-18 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: icpc is unable to link cli to shared lib
+ [f58d9c3840a3]
+
+ * source/CMakeLists.txt:
+ cmake: fix MinGW build by forcing Vista as minimum target O/S (fixes
+ #44)
+
+ This removes the WINXP_SUPPORT option; XP cannot be supported until
+ someone contributes a version of ThreadSafeInteger that is
+ functional on XP
+ [45af76338c8e]
+
+2014-03-19 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/encoder/frameencoder.cpp:
+ TComDataCU: QP for a CU always stored in TComDataCU::m_qp.
+ [591bceb1b87a]
+
+2014-03-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ intraPred: remove qp resets
+ [d8d41f4cf354]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: clean up slice qp clipping
+ [9167d2441670]
+
+2014-03-18 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: remove /Oi build flag for Visual C++ builds
+
+ This flag was actually never necessary for use of SIMD intrinsics,
+ but it was forcing VC to use intrinsic versions of math functions,
+ and for some versions of VC this caused odd stack corruption in
+ Win32 debug builds.
+
+ https://connect.microsoft.com/VisualStudio/feedback/details/776885
+ /possible-bug-in-visual-studio-2012-c-compiler-related-to-intrinsic-
+ math-functions
+ [2a63de6cbb11]
+
+ * source/CMakeLists.txt:
+ cmake: make lib and bin install folders user configurable (closes
+ #40)
+ [a02a4ba9629e]
+
+ * source/cmake/cmake_uninstall.cmake.in:
+ cmake: fix uninstall target warnings from shell quote escaping
+ issues
+ [6a77b52eddcb]
+
+ * source/CMakeLists.txt:
+ cmake: link cli app to shared library on POSIX systems (closes #37)
+
+ If you want the CLI to link against the static library on POSIX,
+ just disable the generation of the shared library.
+ [f91b930aea7e]
+
+ * source/x265.h:
+ api: declare x265_cli_csps as static const (closes #39)
+
+ Fixes link errors when x265.h is included by multiple C files.
+ [dc700298419d]
+
+2014-03-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/encoder.cpp:
+ encoder, sbac, quant: use only macro QP_BD_OFFSET, remove
+ unnecessary get methods
+ [4c8ea265d55e]
+
+ * source/encoder/encoder.cpp:
+ sps: reuse encoder macro QP_BD_OFFSET
+ [551956198184]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/frameencoder.cpp:
+ frameencoder: clean up qp clipping
+ [2952312a52e5]
+
+2014-03-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: fix for VERBOSE_RATE (leftover HM feature) (closes #42)
+ [0ac7e8729d90]
+
+2014-03-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ encodeResandCalcInterCU: cleanup, no logic change
+ [32c9e30aee7a]
+
+2014-03-16 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ DC only for HIGH_BIT_DEPTH
+ [7b86d42683be]
+
+2014-03-17 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ optimize: rewrite TEncBinCABAC::encodeBin
+ [3bbcf9f8a701]
+
+2014-03-17 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ cleanup m_pattern
+ [d600c8f8f036]
+
+2014-03-16 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ cleanup unused m_mvField{A,B,C}
+ [7dbae9022757]
+
+2014-03-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.h:
+ encoder: cleanup nits
+ [6627c821ca1f]
+
+ * source/input/y4m.cpp:
+ y4m: fix copy-paste bug in range checks
+ [c688c11a0f12]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/threading.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp:
+ threading: introduce ThreadSafeInteger class
+
+ This class uses a condition variable to implement a
+ producer/consumer access protocol with a single writer and multiple
+ readers for safe multi-core synchronization
+ [c0155c7bb6ca]
+
+2014-03-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: fix previous bad patch import
+ [8dbcfae4dffc]
+
+2014-03-17 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.h:
+ TEncCU: cleanup
+ [cf92f28e5f93]
+
+2014-03-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp:
+ Merge with stable
+ [8d5deb7cafd8]
+
+2014-03-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: nits
+ [e7e150e4166d]
+
+2014-03-14 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ optimize: rewrite TEncSbac::xWriteCoefRemainExGolomb
+ [b2617cb09a1a]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ optimize: improvement TComTrQuant::getSigCtxInc, avoid shift by mask
+ [9e9bdc0dd2c5]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ optimize: rewrite TComTrQuant::xGetICRateCost
+ [b8460fba2783]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h, source/common/threading.h:
+ optimize: rewrite TComTrQuant::xGetICRate
+ [b6954c4f480f]
+
+2014-03-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ encode: avoid repetitive statements; no logic change
+ [c1ecc3eb288d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ compress/TEncCU: no reason why mode decision should reset the dqp
+ flags.
+ [6c64fbd96968]
+
+ * source/encoder/encoder.cpp:
+ encoder: Adding a TODO comment on the final goal.
+ [b7e392e2b720]
+
+ * source/encoder/encoder.cpp:
+ vbv: set DQP as true if VBV is enabled (and AQ disabled).
+
+ Unless this is set, the different QP's for each CU wont be encoded.
+ This worked thankfully until now, since VBV was always used at high
+ quality (AQ on) settings.
+ [b82c87d0a896]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: set dqpflag as true in the CU encoder if aqmode enabled
+ [d72b7a5c8176]
+
+2014-03-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp:
+ prevent deadlocks from frame dependencies on Linux
+ [eba8844609f2] <stable>
+
+2014-03-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: mvpIdx shares storage with mergeIdx, do not set for
+ merge CUs
+ [ba3ddc1848ff]
+
+2014-03-14 Wenju He <wenju@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: initialize variables, handle malloc failures more cleanly
+ [93ea767e7df0]
+
+2014-03-14 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h, source/test/mbdstharness.cpp:
+ asm: 8bpp and 10bpp code for idct8x8 module
+ [a4cb4fbff864]
+
+2014-03-14 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad16-a.asm:
+ added asm primitives for 10bpp sad functions
+ [f36c9130de66]
+
+2014-03-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ Merge with stable
+ [d5a4296dbfe7]
+
+2014-03-14 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ vbv: bugfix-calculate intraCuCostPerRow for vbv
+ [394481c40cf9] <stable>
+
+2014-03-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: init best AMVP candidate to zero.
+ [ed48f84e541b]
+
+2014-03-13 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: remove unused file static array
+ [7b5699e6bb75]
+
+ * source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove redundant temp buffer
+
+ TComPrediction (which TEncSearch derives from) already has
+ m_predTempYuv
+ [bb1ecd4f154d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: keep merge data together in a struct
+
+ This is for clarity, convenience, and to avoid some redundant work
+ [ebf86c054d05]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: combine motion candidate search into AMVP search loop
+ [32eaed85f7c0]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: inline MVP selection from AMVP candidates
+ [81911e5df59c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xGetBlkBits
+ [dc4af8a48dc8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: inline xRestrictBipredMergeCand
+ [80952375aff1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: inline xGetTemplateCost()
+ [387471b8ec63]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: be pedantic about setting cu fields [CHANGES OUTPUTS]
+
+ It is somewhat unfortunate that this changes outputs, it means I had
+ introduced a bug in an earlier commit
+ [ebb3a25a7ad8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: recombine merge-only path, now it can be accomplished
+ with continue
+ [879151f65962]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove redundant EMMS instrutions
+
+ predInterSearch uses no float operations, so a single EMMS at the
+ end is sufficient
+ [675837ac633f]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: merge xGetInterPredictionError into xMergeEstimation
+ [3a2f801dd535]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: refactor predInterSearch to avoid redundant work
+ [a166b8d0a43e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: switch xGetInterPredictionError() to use SATD [CHANGES
+ OUTPUTS]
+
+ predInterSearch() was having to remeasure the unidir/bidir
+ prediction just because it wanted to measure merge with sa8d. By
+ switching to satd, a number of further simplifications can be made.
+ [ea5f4ab96610]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Backed out changeset: 524fdbaed8d0
+
+ bits0 and bits1 include list[N].bits and thus they did include the
+ list selection bit costs.
+ [716dc1c8391a]
+
+2014-03-13 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/encoder/compress.cpp:
+ remove unused trUnitIdx from subtract() and addClip()
+ [deb3d531790f]
+
+2014-03-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: set QP to all parts of CU. No logic change.
+ [665355c7e4d9]
+
+2014-03-12 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ cleanup: remove c++ ref parameter on xWriteCoefRemainExGolomb
+ [47edf909f518]
+
+2014-03-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: disambiguate variable names
+
+ Now with 75% less insanity!
+ [5328eec59554]
+
+2014-03-12 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ optimize: reduce memory and improvement performance by replace
+ sigCoeffGroupFlag[] to sigCoeffGroupFlag64
+ [68601cdea577]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ optimize: simplify operators on loop sigCoeffGroupFlag
+ [d3e218ecc33f]
+
+2014-03-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ TypeDef: explicit 32bit type for TCoeff
+ [892b8325ed6c]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ TypeDef: UChar to uint8_t
+ [661f6a49b956]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ TComRom: UChar to uint8_t
+ [f88f6543ca26]
+
+2014-03-12 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ optimize: use UChar on g_convertToBit to avoid signed extend
+ [41ea3d34f224]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ optimize: reduce scan table size by uint32_t -> uint16_t
+ [aedad0264282]
+
+2014-03-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: replace UChar with uint8_t
+ [999e3120deda]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: nit
+ [9e554cec74ab]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: use HEVC MVP candidates as motion candidates [CHANGES
+ OUTPUTS]
+ [99441b4af293]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp:
+ TEncSearch: remove unused adaptive search range array
+ [87ad1232188f]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: MV0 bidir bitcost not based on list costs, so no need to
+ remove them
+ [524fdbaed8d0]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: refactor predInterSearch to use simple structure
+
+ This removes the need for keep every possible MVP and MVP idx
+ around, and it hopefully makes the code a lot more readable.
+ [7c8b9445bec6]
+
+2014-03-12 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [4fdcea7426f1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp:
+ TComDataCU: cleanup
+ [cc3d77015d1e]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h:
+ encodeQP: cleanup
+ [94d3dfe14558]
+
+2014-03-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: initialize MotionEstimate function pointers before merge
+ estimation
+ [8a69cfea0304]
+
+2014-03-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.h,
+ source/encoder/api.cpp:
+ common: remove mostly unused cycle count macros
+ [e4cf59adfb84]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: break ties in favor of uni-directional MC [CHANGES
+ OUTPUTS]
+
+ If bidir has the same cost as unidir, pick the unidir prediction.
+ Bidir will average the two directional prediction and thus tends to
+ generate blurred predictions. Uni-directional prediction is better
+ when costs are the equal.
+ [c24eda418b5c]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/common.cpp, source/common/common.h,
+ source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ Merge with stable
+ [bbd35c26c4e4]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: dehungarians and other nits
+ [83d649aaf7ce]
+
+2014-03-10 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ revert getSigCtxInc() to 0.7, this version was faster
+ [87638be9bc6b]
+
+2014-03-11 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ vbv: bug fix - down shifting of satdcost for 10 bit depth.
+ [c06ee069df5e] <stable>
+
+ * source/common/common.cpp, source/common/common.h:
+ rc: move qp2qscale and qscale2qp function to common
+ [561adb9b21f6] <stable>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ vbv: bug fixes - move row Predictors, frameSizeEstimated to Frame
+ Encoder scope.
+
+ Improves quality and controls buffer underflow when Frame
+ parallelism is enabled.
+ [1b84d0748a08] <stable>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/ratecontrol.cpp:
+ vbv: use row wise IntraSatdCost to predict vbv intra frame bits.
+
+ If P/B slice is predominatly intra coded, use intra SatdCost to
+ predict the row bits in vbv.
+ [380c4bf5ff75] <stable>
+
+ * source/encoder/ratecontrol.cpp:
+ vbv: bug fix - down shifting of satdcost for 10 bit depth.
+ [7832cb8323dd]
+
+2014-03-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix some comments
+ [e40524d079b4]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: reorder code for more clarity
+ [504c81462e30]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: host bMergeOnly logic to the top of predInterSearch
+
+ This makes merge-only easier to follow and more efficient, and makes
+ the full search code easier to read and easier to maintain. This
+ should have no change in outputs
+ [c3156f2b7c97]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: localize scope of bidir MV and ref idx arrays
+ [1f1aa83d20ed]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: hoist bMergeOnly check to only be performed once
+ [0574550353e6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove list1 hacks
+ [0d4182301313]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: localize scope, rename, and remove defaults for
+ listSelBits array
+ [85e8a21a261b]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove mvTemp[][] array, just use outmv stack var
+ [d546b400d156]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: localize scope and rename listMv
+ [f91dc85070fe]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: localize scope of mvzero
+ [de73109c06d5]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: localize scope and rename listRefIdx
+ [dc977fbf3ed1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: localize scope of costTemp
+ [132393836a2e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: simplify and localize scope of bitstemp
+ [c095646a2ef0]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: rename bits to listbits[] for clarity
+ [7495c029daf6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: replace costbi with listCost[2]
+ [12841ab3ce3f]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove useless distBiP argument from xEstimateMvPredAMVP
+ [621f9c82eb14]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanups in predInterSearch(), no logic change
+ [275edc95de11]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/weightPrediction.cpp:
+ weight: match x264 weight analysis and logging [OUTPUT CHANGE]
+
+ This only weights the first reference, and will only weight chroma
+ if luma was weighted. Further work remains, we must add an
+ unweighted dup of the weighted reference into the P slice's L0
+ reference list.
+ [f3988b70f4aa]
+
+2014-03-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/shortyuv.cpp,
+ source/common/shortyuv.h:
+ shortyuv: integrated asm primitives for blockcopy
+ [1417ba917211]
+
+2014-03-11 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/common.cpp, source/common/common.h,
+ source/encoder/ratecontrol.cpp:
+ rc: move qp2qscale and qscale2qp function to common
+ [5fb584576fc9]
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ vbv: bug fixes - move row Predictors, frameSizeEstimated to Frame
+ Encoder scope.
+
+ Improves quality and controls buffer underflow when Frame
+ parallelism is enabled.
+ [925b4b3a01c0]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/ratecontrol.cpp:
+ vbv: use row wise IntraSatdCost to predict vbv intra frame bits.
+
+ If P/B slice is predominatly intra coded, use intra SatdCost to
+ predict the row bits in vbv.
+ [092bc3753097]
+
+2014-03-10 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/TComMotionInfo.h:
+ tcommotion: cleanup removed unused methods
+ [37a33cbf5b57]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h:
+ tcommotion: use Checked malloc to allocate memory
+ [728df17d1e5f]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ tencsbac: remove unused SCALING_LIST_OUTPUT_RESULT macro
+ [9c57962437b6]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ tencsbac: subLayerOrderingInfoPresentFlag always true, the if() loop
+ will never executed
+
+ vps_sub_layer_ordering_info_present_flag is always set to true, not
+ required to have extra storage for this, removed
+ subLayerOrderingInfoPresentFlag
+ [752bdc470b06]
+
+2014-03-10 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ cleanup unused intra !bLumaOnly path
+ [ee6e6fd867eb]
+
+2014-03-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix bMergeOnly override check, did not intend to change
+ behavior
+ [505d4a83704a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix gcc warning, remove redundant assignemnt
+ [f76a92a2b00b]
+
+2014-03-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: rename bUseMRG to bMergeOnly for clarity
+ [50d7910ddd61]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: disable TMVP range check if frame threading disabled, code
+ style nits
+ [82a66870fc8b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ TEncSearch: remove default argument from encodeResAndCalcRdInterCU()
+ [74d4709422f6]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ TEncSearch: remove confusing default arguments from
+ predInterSearch()
+
+ And completely remove bLuma which was always true
+ [f8926fb14c42]
+
+2014-03-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ me: skip TMVP merge candidates that are beyond vertical search range
+
+ Because of frame parallelism, pixels more than search range below
+ coincident may not be available in references. Sometimes these merge
+ candidates happened to be the best cost, resulting in hash
+ mismatches.
+
+ Because xMergeEstimation() can now return with no valid merge modes,
+ the caller must deal with the potential of no merge mode.
+ predInterSearch() is sometimes called to only measure merge modes
+ (skipping ME for AMP partitions for some presets), so now
+ predInterSearch() can also possibly exit without generating a valid
+ prediction.
+ [f29f0ba91dfa]
+
+2014-03-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ TEncCu: nits, no logic change
+ [1ff43004128f]
+
+2014-03-07 David T Yuen <dtyx265@gmail.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ Replaced Encoder* with x265_param* as member of several classes
+
+ Replaced Encoder* with x265_param* as member of TEncCu, framefilter,
+ ratecontrol, CostEstimate and Lookahead Added
+ m_CUTransquantBypassFlagValue to TEncCu since it's part of Encoder
+ and not x265_param framefilter's processRow and processRowPost
+ needed Encoder* to run Encoder::signalReconRowCompleted
+ [0bd2465e3d4a]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/encoder.cpp, source/encoder/slicetype.cpp:
+ Removed Encoder* as member of DPB and replaced it with field
+ m_bOpenGOP
+
+ Also added int bframes to Lowres since only param->bframes is passed
+ to its methods thus eliminating one of DPB's uses of Encoder*
+ [13e2c2fe091d]
+
+2014-03-08 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/pixel-util8.asm,
+ source/test/pixelharness.cpp:
+ cleanup m_sharedPredTransformSkip[]
+
+ NEW_CALCRECON macro is TODO mark for asm experts, to optimize
+ register assignment.
+ [d3bfe4152e67]
+
+2014-03-07 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ Merge with stable
+ [93861c42b879]
+
+ * source/encoder/encoder.cpp:
+ encoder: back-port VUI content fixes from default branch
+
+ Take values from param structure, which is where these fields are
+ actually configured.
+ [b7e2854cf1c4] <stable>
+
+2014-03-07 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm: added code for blockcopy_ss and cleaned up asm primitives of
+ blockcopy
+ [2bf727dca27d]
+
+2014-03-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ TEncSBac: remove unused define
+ [33b67a53b6de]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: nits
+ [d049b579ff18]
+
+2014-03-06 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ share m_mvpIdx[0] as m_mergeIdx
+ [51f8673f8b35]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/param.cpp,
+ source/encoder/compress.cpp, source/encoder/cturow.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/reference.cpp:
+ CU is square
+
+ unify TComDataCU::m_width and m_height to m_cuSize
+ [5c502cce2a1f]
+
+2014-03-06 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ param: print vbv-init as a float
+ [7209562f4cc8]
+
+2014-03-06 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ Testbench code for blockcopy_ss
+ [d46917d3ac2d]
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ C primitive for blockcopy_ss
+ [c078ccf260b2]
+
+2014-03-06 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/intrapred16.asm, source/common/x86/intrapred8.asm,
+ source/common/x86/ipfilter16.asm, source/common/x86/ipfilter8.asm,
+ source/common/x86/mc-a.asm, source/common/x86/pixel-util8.asm,
+ source/common/x86/pixeladd8.asm, source/common/x86/sad-a.asm,
+ source/common/x86/ssd-a.asm:
+ cleanup the labels in assembly code with trailing colon
+ [c97fc1244d0b]
+
+2014-03-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/ContextTables.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.cpp,
+ source/common/common.h, source/common/cpu.cpp, source/common/cpu.h,
+ source/common/dct.cpp, source/common/intrapred.cpp,
+ source/common/ipfilter.cpp, source/common/md5.cpp,
+ source/common/md5.h, source/common/mv.h, source/common/param.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/shortyuv.cpp, source/common/threading.h,
+ source/common/threadpool.cpp, source/common/threadpool.h,
+ source/common/vec/blockcopy-sse3.cpp, source/common/vec/dct-
+ sse3.cpp, source/common/vec/dct-sse41.cpp, source/common/vec/dct-
+ ssse3.cpp, source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/bitcost.cpp, source/encoder/bitcost.h,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/motion.cpp,
+ source/encoder/ratecontrol.cpp, source/input/input.cpp,
+ source/input/y4m.cpp, source/input/yuv.cpp,
+ source/output/output.cpp, source/output/y4m.cpp,
+ source/output/yuv.cpp, source/output/yuv.h,
+ source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/mbdstharness.cpp, source/test/pixelharness.cpp,
+ source/test/testbench.cpp, source/test/testharness.h,
+ source/test/testpool.cpp, source/x265.cpp:
+ common: consolidate system header includes into common.h
+
+ Hopefully this will prevent random compile failures in the future
+ from missed cmath, climits, or memory.h includes.
+ [ef83ccb3d34d]
+
+ * source/common/param.cpp:
+ param: spelling nit
+ [102ad4518b1c]
+
+ * source/common/param.cpp, source/x265.cpp:
+ clarify valid values for --vbv-init
+ [889edfd2c4c3]
+
+2014-03-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: replace magic numbers with appropriate macro
+ [a1d82df4d45e]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unused checkNumPocTotalCurr argument to
+ setRefPicList()
+ [a35934b41412]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unused checkCRA function
+ [f1f5303613fc]
+
+ * source/encoder/dpb.cpp:
+ dpb: remove commented code
+ [1b8ebfd190a4]
+
+ * source/common/param.cpp, source/x265.cpp, source/x265.h:
+ cli: add --crf-max option for param.rc.rfConstantMax
+ [ba92d0695116]
+
+ * source/x265.cpp:
+ cli: show compiled assembly status and detected SIMD arches on x265
+ --version
+ [37309f09aaa1]
+
+ * source/x265.cpp:
+ cli: invalid preset or tune is a non-recoverabe error
+ [228c0004d401]
+
+ * source/x265.cpp:
+ cli: show condensed error message if no arguments are given
+ [105fe9b2d189]
+
+ * source/x265.cpp:
+ cli: reorder help for better clarity
+ [64e76dcaf172]
+
+ * source/x265.cpp:
+ cli: add --no- options to some VUI fields
+
+ This is a little pedantic since they default to false and likely
+ won't change at any time.
+ [3ffbee76c1f2]
+
+ * source/x265.cpp:
+ cli: fix AQ CLI help. 0, 1, and 2 are valid options
+ [bbaab3feef92]
+
+ * source/x265.cpp:
+ cli: improve help text by describing command argument data types
+ [f1dd1c83f3c6]
+
+ * source/x265.cpp:
+ cli: improve CLI help for --overscan
+ [f38f72976bcd]
+
+ * source/common/param.cpp, source/common/param.h, source/x265.cpp:
+ cli: change --log option to --log-level, allow strings or ints
+
+ getopt allows partial matches, so --log N will still work like it
+ always has. x265_parse_param() will accept "log" or "log-level"
+
+ Since the first entry in the name list corresponds to -1, the string
+ list is not placed in x265.h, where all indices are 0 based.
+ [50a04c4cf0ff]
+
+ * source/x265.cpp:
+ cli: move "fps" between resolution and frame rate, same as input
+ file line
+ [01547efd182d]
+
+ * source/common/param.cpp:
+ param: add VBV info to log data
+ [081efde65d54]
+
+ * source/CMakeLists.txt:
+ cmake: use x86 alias list rather than repeated string compares (nit)
+ [e7d3835fe752]
+
+2014-03-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ primitives: cleaned up asm_primitives of intra_pred_ang
+ [3272416ac9b0]
+
+2014-03-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/output/y4m.cpp,
+ source/output/yuv.cpp:
+ encoder: assign internal colorspce to output pic.colorSpace
+ [992b1b9e5cff]
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/encoder/encoder.cpp, source/input/y4m.cpp,
+ source/input/yuv.cpp, source/output/y4m.cpp, source/output/yuv.cpp,
+ source/x265.h:
+ api: change meaning of pic.stride to be in bytes rather than pixels
+ (fixes #35)
+
+ x264's pic.plane pointer is a uint8_t* so their input strides are
+ byte based, ffmpeg is currently assuming our input strides are byte
+ based. This commit will make that assumption correct.
+
+ This fixes non-4:2:0 YUV file read at the same time, and bumps
+ X265_BUIDLD
+ [eadec14402d6]
+
+ * source/CMakeLists.txt:
+ cmake: add i686 to x86 alias list (closes #33)
+ [6d55869ed5e2]
+
+2014-03-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: enable 10bit chroma_vpp and chroma_vps interpolation filters
+ [c40c379f283c]
+
+2014-03-04 David T Yuen <dtyx265@gmail.com>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/framefilter.cpp:
+ Removed Encoder::m_csp and replaced it with x265_param::internalCsp
+ [91936aab5ae9]
+
+2014-03-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/weightPrediction.cpp:
+ weight: ensure chroma weights are initialized when skipped
+ [5cad3652bee8]
+
+ * source/common/primitives.cpp:
+ primitives: prevent multiple setup calls from reiniting primitive
+ table
+
+ We don't want the function table to change in the middle of an
+ encode. Improve logging so that --asm <SMALLINT> which does not
+ result in any bitmap matches still reports "none!"
+ [1a3d37f0a072]
+
+ * source/encoder/weightPrediction.cpp:
+ weight: simplify and remove redundant logic
+ [92c2f95b230b]
+
+ * source/encoder/weightPrediction.cpp:
+ weight: do not attempt chroma weights if luma was not weighted
+ [CHANGES OUTPUT]
+
+ This heuristic seems to improve a number of clips, particularly when
+ chroma distortion is not considered in mode decision. This could
+ cause some odd colors to be encoded, particularly noticable with
+ large blocks.
+ [864ed3e0d82e]
+
+ * source/encoder/reference.cpp, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp:
+ weight: use correct round value for denom 0 [CHANGES OUTPUT]
+
+ The denom -without the intermediate bit-depth factor applied- must
+ be compared with zero, else the output of weight_pp will not match
+ the real output of pixel weighting. This was done wrong in two
+ different ways in three different places
+ [cc64612d8e5e]
+
+ * source/CMakeLists.txt:
+ cmake: bump X265_BUILD to 8, many API changes
+
+ These changes should be mostly harmless, I don't expect many API
+ users have used the VUI fields yet, so a recompile against the new
+ x265.h should be sufficient.
+ [1bd1e6dbce28]
+
+ * source/CMakeLists.txt, source/dllmain.cpp:
+ cmake: dllmain is no longer necessary since use of object libraries
+ [6a6bf84ad146]
+
+ * source/x265.cpp:
+ cli: do not call x265_setup_primitives() from printVersion()
+
+ It now leads to redundant console output and it was interfering with
+ --asm command line arguent functionality
+ [5fd56621f2fe]
+
+ * source/common/param.cpp, source/encoder/api.cpp, source/x265.cpp,
+ source/x265.h:
+ api: move cpuid to x265_param, same as x264
+ [e0bdcfc9e20b]
+
+ * source/common/common.cpp, source/common/common.h,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ api: move x265_ssim() to be an internal function, give a more
+ descriptive name
+
+ This function really shouldn't have been a public function, and it
+ was never added to the exports list.
+ [8e1c69c0d4f1]
+
+ * source/common/param.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ api: move VUI settings into vui sub-struct of x265_param
+ [3825b0059d6c]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: TEncCfg.h is caput
+ [58bbbdd0a699]
+
+2014-03-03 David T Yuen <dtyx265@gmail.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/param.cpp,
+ source/encoder/api.cpp, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/dpb.cpp,
+ source/encoder/dpb.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h, source/x265.cpp, source/x265.h:
+ Merged TEncCfg into Encoder. A few VUI tweaks and fixes.
+ [1020e2ac9890]
+
+2014-03-04 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [31731a78d994]
+
+ * .hgtags:
+ Added tag 0.8 for changeset 527d03c56d68
+ [91ada5e78ee1] <stable>
+
+2014-03-03 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/param.cpp:
+ cmake: detect strtok_r, use workaround when not present
+ [3cbde0b893e3]
+
+ * source/encoder/frameencoder.cpp, source/encoder/slicetype.cpp:
+ Merge with stable
+ [7fbecd22a0cd]
+
+2014-03-03 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/encoder/framefilter.cpp:
+ tcomsao: only get method is unused, set lcuboundary is required
+
+ references 742641e0f796
+ [62fe3f905981]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h:
+ tcomsao: replaced All Pel type into pixel type
+ [f3125b431ee5]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h:
+ tcomsao: use X265_MALLOC and X265_FREE in create() and Pel replaced
+ with pixel
+ [459b108299e0]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/encoder/framefilter.cpp:
+ tcomsaq: remove unused get and set saolcuboundary methods
+ [776983eda6ba]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ tencsao: Pel replaced with pixel type
+ [0a2fcf8690b8]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ tencsao: new and delete replaced with X265_MALLOC and X265_FREE
+ [02f953896795]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h:
+ tencsao: remove unused calcSaoStatsBlock
+ [2de527d2826d]
+
+2014-03-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp:
+ TEncEntropy: fix gcc warnings
+ [e34503ff6627]
+
+2014-03-03 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ residual coding unit is always square
+ [684781cad358]
+
+2014-03-03 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ test bench : Modify chroma_p2s test function to handle csp.
+ [eb7eb10568fb]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h:
+ asm : remove chroma_p2s_i444, can be replaced by luma_p2s
+ [e686e589f3ca]
+
+2014-03-04 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/slicetype.cpp:
+ vbv: bug fixes in --no-cutree flow. Ignore intracosts in calculating
+ satdcost per cu.
+ [527d03c56d68] [0.8] <stable>
+
+2014-03-03 Nabajit Deka <Nabajit Deka>
+
+ * source/test/mbdstharness.cpp:
+ test bench : fix for test bench failure, caused by redundant malloc.
+ [6662df480e39]
+
+2014-03-02 Steve Borho <steve@borho.org>
+
+ * source/common/shortyuv.cpp:
+ shortyuv: use optimized primitives where available
+ [288a83d7e289]
+
+ * source/common/shortyuv.cpp, source/common/shortyuv.h:
+ shortyuv: combine add/subtract methods together
+ [ab05e3d951e1]
+
+ * source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h, source/encoder/compress.cpp:
+ rename TShortYuv to ShortYuv
+ [0352ee7f3c5a]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/common/shortyuv.cpp, source/common/shortyuv.h,
+ source/encoder/cturow.cpp:
+ use checked malloc in TShortYuv::create and TEncCu::create
+
+ And replace unsigned int with uint32_t in TShortYuv.cpp
+ [a9bbdfaf2a59]
+
+ * source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/common/CMakeLists.txt, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/shortyuv.cpp,
+ source/common/shortyuv.h:
+ rename TShortYUV.* to shortyuv.*
+ [5f2d25407800]
+
+ * source/common/param.cpp:
+ param: ignore assignments within conditionals in param.cpp
+ [54e2dcf770c4]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ TComPattern: remove hungarian prefixes
+ [5a7c6e8536ac]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: switch from Pel to pixel type
+ [47a0575aad04]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ used checked malloc in TComYuv and TEncSearch, cleanly catch malloc
+ failure
+ [f6ae34250453]
+
+ * source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/mbdstharness.cpp, source/test/pixelharness.cpp:
+ testbench: use CHECKED_MALLOC to cleanup init functions
+ [d5269597c860]
+
+ * source/common/param.cpp:
+ param: MSVC build fixes
+ [fad6fba7cf2c]
+
+2014-03-01 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp, source/x265.cpp, source/x265.h:
+ api: add a fastdecode tune option, improve tune and preset CLI help
+
+ To match x264's tune names, removed "-" from zerolatency in x265.h
+ but allowed either string to match internally. Same with fast-
+ decode.
+ [dc82d1805136]
+
+ * source/test/testbench.cpp:
+ testbench: improve CLI help and error handling, use parseCpuName
+ [46a799d747ae]
+
+ * source/common/primitives.cpp:
+ primitves: update CPU name print logic from x264
+ [93ba16e4f140]
+
+ * source/common/param.cpp, source/x265.cpp:
+ param: fix handling of --no-scenecut within x265_param_parse(), add
+ --no-b-adapt
+ [fcbe9a361b5a]
+
+ * source/common/common.h, source/common/param.cpp,
+ source/common/param.h, source/common/primitives.cpp,
+ source/x265.cpp:
+ cli: replace --cpuid with --[no-]asm arguments
+
+ The vector class library is long gone, so it is past-due to adopt
+ x264's logic for specifying CPU architectures, or disabling ASM
+ altogether.
+ [26bd96a193d4]
+
+2014-02-28 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ copy m_origYuv[depth] from m_origYuv[0]
+ [ac6edd2ffb65]
+
+2014-03-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: implicit cast warning on vc10-x86.
+
+ Is lambda intended to be int?
+ [4f2cbc5a981a]
+
+2014-02-28 Praveen Tiwari <Praveen Tiwari>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/common/CMakeLists.txt, source/common/loopfilter.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/loopfilter.asm, source/common/x86/loopfilter.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ asm: split SAO_EO_0 into separate primitive func
+
+ added assembly code and testbench support added loopfilter.cpp,
+ loopfilter.h, loopfilter.asm files
+ [000f86d72337]
+
+2014-02-28 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/common/CMakeLists.txt, source/common/bitstream.h,
+ source/encoder/weightPrediction.cpp:
+ weightp: use struct to cache data for reuse, refactor MC of
+ reference planes
+
+ * do not consider intra/mv cost during MC phase
+ * unconditionally motion-compensate luma and chroma blocks
+ * include slice header cost estimate in weight analysis
+ * weightCost() needed different paths for luma, chroma, and chroma444
+ * pass a single stride to weightCost()
+ [518313140b03]
+
+2014-02-28 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp, source/encoder/encoder.cpp, source/x265.h:
+ Merge with stable
+ [5e9559d366b3]
+
+2014-02-28 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ tcompicyuv: initialize NULL to cu and bu offset buffers.
+ [f6d079ad85bc] <stable>
+
+2014-02-27 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/common/param.cpp,
+ source/encoder/encoder.cpp, source/encoder/weightPrediction.cpp,
+ source/x265.h:
+ api: make log-level 4 semi-official and expose in public API
+ [994f046a8111] <stable>
+
+2014-02-28 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ square transform only
+ [9b43c262124e]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: enable count_nonzero for HIGH_BIT_DEPTH
+ [df831b319c08]
+
+2014-02-27 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp:
+ tune: ensure lookahead is disabled for zero-latency
+ [61c752e11424]
+
+ * source/common/primitives.cpp, source/common/x86/asm-primitives.cpp:
+ asm: cleanup 444 chroma primitive setup, and other primitve reuse
+ [8189f9e9a39f]
+
+ * source/encoder/encoder.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ log: report consecutive B-frame histogram, as x264 does
+ [b70a88e210f1]
+
+ * source/common/common.h, source/x265.h:
+ api: expose X265_BFRAME_MAX to the user
+ [83859780b174]
+
+ * Merge with stable
+ [a892e66d5738]
+
+2014-02-27 Sagar Kotecha <sagar@multicorewareinc.com>
+
+ * source/common/common.h, source/common/param.cpp, source/x265.cpp:
+ param: add more validation checks to prevent encoder crashes
+ [013589124615] <stable>
+
+2014-02-27 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter16.asm, source/common/x86/ipfilter8.h:
+ asm: 10bpp code for vertical luma interpolation filters.
+ [89a2d8780835]
+
+2014-02-27 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ vbv: bug fixes to stop mid frame qp adjustments to increase
+ erratically.
+
+ maintain bufferFill for each FrameEncoder context and use that in
+ rowWise qp adjustments for vbv. also fixes bugs in predicting row
+ wise bits from satd costs.
+ [875566aed8b1] <stable>
+
+2014-02-27 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [8a84c10e5116]
+
+ * source/common/threading.h:
+ threading: on linux gettimeofday() requires <sys/time.h>, UINT32_MAX
+ is C only
+ [bbe3f479c41f] <stable>
+
+2014-02-27 Min Chen <chenm003@163.com>
+
+ * source/CMakeLists.txt:
+ fix Issue #30, disable stack execute on gcc
+ [8e8328cad1be] <stable>
+
+ * source/common/x86/ipfilter16.asm:
+ fix typo problem on HIGH_BIT_DEPTH with non-PIC mode
+ [52a47362c5c3] <stable>
+
+2014-02-27 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/intrapred8.asm:
+ all_angs_pred_32x32, asm code improvement
+ [63aadc802f18]
+
+2014-02-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge from stable
+ [b92f341688c4]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: fix bitrate issue in 10-bit CRF mode
+ [2fb85daef8af] <stable>
+
+2014-02-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h, source/common/vec
+ /intra-sse41.cpp, source/common/vec/intra-ssse3.cpp,
+ source/common/vec/ipfilter-sse41.cpp,
+ source/encoder/weightPrediction.h:
+ Merge with default (prep for 0.8)
+ [0a6dd816d2e2] <stable>
+
+2014-02-26 Steve Borho <steve@borho.org>
+
+ * source/common/threading.h:
+ threading: add a timedWait() method to Event class
+ [c9a0802b64ac]
+
+ * source/common/threading.cpp, source/common/threading.h:
+ threading: use a pthread conditional variable instead of semaphore
+
+ This allows more control over the exact behavior, removes the global
+ nature of the semaphore on some systems, and will allow the addition
+ of a timed wait to the Event class. It appears to resolve the
+ deadlocks reproduced in the pool test on Mac OS X; hopefully on
+ Linux as well.
+ [8ac1e112f3ea]
+
+2014-02-26 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter16.asm, source/common/x86/ipfilter8.h,
+ source/test/ipfilterharness.cpp:
+ asm: 10bpp code for chroma interpolation filters
+ [d317026aa0ad]
+
+2014-02-26 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp assembly code for intra_pred_ang16 - all modes
+ [41bc98a92b49]
+
+2014-02-07 Steve Borho <steve@borho.org>
+
+ * source/test/CMakeLists.txt, source/test/testpool.cpp:
+ reintroduce thread pool unit test
+
+ It is reproducing a deadlock on POSIX roughly once per 1M runs
+ [d36764800215]
+
+2014-02-26 Sagar Kotecha <sagar@multicorewareinc.com>
+
+ * source/common/param.cpp:
+ param: add some more validation checks
+ [fa23612e2850]
+
+2014-02-26 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ rc:bug fix-store average Qp as decided by AQ only if aq is enabled
+ [9b0c9b76d902]
+
+2014-02-26 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/intrapred8.asm:
+ all_angs_pred_32x32, asm code improvement
+ [0b9c77b41599]
+
+2014-02-26 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/slicetype.cpp:
+ fix: uninitialized variable
+ [483e699a9527]
+
+2014-02-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: tweak slice stats to more closely match x264 outputs
+ [46207f6f5c8c]
+
+2014-02-25 Steve Borho <steve@borho.org>
+
+ * source/common/threading.cpp, source/common/threading.h:
+ threading: use atomic increment when building semaphore object
+
+ Required moving atomic defines to the top of threading.h, removing
+ the need for potentially redundant includes of unistd.h
+ [948626475a46]
+
+2014-02-26 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp:
+ encoder: log avg Qp decided by AQ for each slice type
+ [b47fc23c75df]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ TComPic: store average Qp (as decided by AQ) used per frame.
+ [298133a7bd53]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/ratecontrol.cpp:
+ remove redundant state m_avgQpRc from TComSlice.
+
+ This has been moved to TComPic already.
+ [3bfd7b2a54ed]
+
+ * source/encoder/slicetype.cpp:
+ lookahead: bug fix for b-adapt 0 cost estimates (closes #26)
+
+ don't overwrite lastNonB reference with current frame, 'lastNonB'
+ state was already replaced with current frame's lowres at this
+ point.
+
+ it mostly affected b-adapt=0 but could have affected any of the
+ modes if they had not already estimated this particular P frame cost
+ before this point.
+ [9eea995a2347]
+
+2014-02-23 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ reduce unnecessary CU data set/clear (no neighbor access)
+
+ mvd, mvpIdx, mergeIndex
+ [f37c84ffe293]
+
+2014-02-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ refine MC - cleanup unnecessary code paths, reduce copies for non-WP
+ uni-pred
+ [5241a8efb684]
+
+2014-02-25 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/test/ipfilterharness.cpp:
+ asm: enable 10bit asm filter functions, fix test harness
+ [0b63fa220e19]
+
+ * source/common/CMakeLists.txt, source/common/x86/const-a.asm,
+ source/common/x86/ipfilter16.asm:
+ asm: add new file for 10bpp asm filter functions
+ [a8e822a95fad]
+
+2014-02-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/api.cpp:
+ api: check for NULL param pointer in x265_encoder_open
+ [b7a1a636b77b]
+
+2014-02-25 Sagar Kotecha <sagar@multicorewareinc.com>
+
+ * source/common/common.cpp, source/encoder/CMakeLists.txt,
+ source/encoder/api.cpp, source/encoder/encoder.cpp:
+ move public encoder and picture functions to api.cpp
+ [5fde224bab34]
+
+2014-02-25 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/vec/intra-sse41.cpp,
+ source/common/vec/vec-primitives.cpp:
+ vec: remove intra-sse41.cpp, full asm coverage for intra prediction
+ [b456566376ad]
+
+2014-02-25 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ all_angs_pred_32x32, asm code
+ [ea1c03303b16]
+
+2014-02-25 Steve Borho <steve@borho.org>
+
+ * source/input/y4m.cpp, source/input/y4m.h, source/input/yuv.cpp,
+ source/x265.cpp:
+ input: workaround MSVC runtime bugs in older compilers (fixes #27)
+
+ Prior to VC11, ifstream::pos_type could not handle 64bit sizes
+ correctly
+ [a4c676d671d6]
+
+ * source/encoder/weightPrediction.cpp:
+ weight: bump weight analysis logging to --log 4, reduce spew
+ [1c467346ece8]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: log the average QP used per frame, per I slices, P, and B
+ slices
+ [a41b6a5491ed]
+
+ * source/encoder/encoder.cpp:
+ encoder: rename _param parameter to p for readability
+ [cfc5647635e0]
+
+ * source/test/mbdstharness.cpp:
+ mbdstharness: nits
+ [9b48a2847d97]
+
+ * source/test/mbdstharness.cpp, source/test/pixelharness.cpp:
+ testbench: remove redundant casts of X265_MALLOC() output
+ [62da491b8b22]
+
+2014-02-25 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: store qp in TComPic::avgQpRc in CQP.
+ [b86a5ccd3474]
+
+2014-02-24 Steve Borho <steve@borho.org>
+
+ * source/common/param.cpp, source/common/param.h,
+ source/input/input.cpp, source/input/input.h, source/input/y4m.cpp,
+ source/input/y4m.h, source/input/yuv.cpp, source/input/yuv.h,
+ source/x265.cpp:
+ cli: refactor handling of input file parameters
+
+ * allow y4m header to provide aspect ratio
+ * allow user to override Y4M aspect ratio or frame rate
+ * allow user to provide data possibly missing from Y4M header
+ * do not clamp framesToBeEncoded to predicted file size (stop at EOF)
+ [651c0bc9e280]
+
+ * source/encoder/encoder.cpp:
+ encoder: enable timing info in VPS
+ [5e375c097de4]
+
+2014-02-25 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/const-a.asm, source/common/x86/mc-a.asm,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ asm: fixed invalid testbench input for addAvg primitive, fixed
+ addition overflow for some block sizes.
+ [7d009bc2953b]
+
+2014-02-24 David T Yuen <dtyx265@gmail.com>
+
+ * source/common/param.cpp, source/x265.cpp, source/x265.h:
+ Updated x265_param_parse to use parseName & a few nit fixes
+ [1f6311b0b2a7]
+
+2014-02-25 Steve Borho <steve@borho.org>
+
+ * source/common/threading.h:
+ threading: recover include of unistd.h within #if __GNUC__ section
+
+ Fixes MinGW build
+ [a36a669d09e8]
+
+2014-02-24 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: nits
+ [6214d2609ea8]
+
+ * source/common/param.cpp:
+ param: simplify checks of max ctu size, improve abort message
+ [b8dab8ef744c]
+
+ * source/common/threading.h:
+ threading: include process id in name passed to sem_open() and
+ sem_unlink()
+
+ This should prevent race conditions between x265 processes spinning
+ up on the same CPUs, and generally make name conflicts very rare.
+ [1a93191f0c23]
+
+ * source/x265.cpp:
+ cli: remove undocumented and unimplemented --depth CLI option
+ [18894c99e1a7]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TypeDef.h, source/common/param.cpp,
+ source/test/intrapredharness.cpp, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/test/testbench.cpp:
+ Remove g_bitDepth; internal bit depth is always known at compile
+ time
+
+ Simplify param->internalBitDepth checks, remove test bench hacks
+ [e0af601defb0]
+
+2014-02-24 Sagar Kotecha <sagar@multicorewareinc.com>
+
+ * source/common/CMakeLists.txt, source/common/common.cpp,
+ source/common/common.h, source/common/param.cpp,
+ source/common/param.h, source/encoder/encoder.cpp, source/x265.cpp:
+ consolidate param functionality into param.cpp
+ [6d584320108c]
+
+2014-02-24 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: implement abr reset for single pass ABR + VBV
+ [ebaa34c8f651]
+
+ * source/encoder/frameencoder.cpp:
+ vbv: refactor, implement row wise qp updates only if vbv is enabled.
+ [d0aea0cfd263]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: bug fix - clip qp before setting into TComPic:m_avgQpRc.
+
+ This fix resolves Encoder crash caused due to invalid qp being used
+ in each CU.
+ [acaed9dbaae2]
+
+2014-02-20 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ tcomrom: remove unused g_sigLastScan8x8 and g_sigLastScanCG32x32
+ variables
+ [57ce7f0f4f4c]
+
+2014-02-23 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ vbv: bug fix in clipQScale
+ [80caa9f00d7c]
+
+2014-02-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: use more frame threads when WPP is disabled
+
+ Use up to one frame thread per CPU, but cap the frame threads at
+ half the number of CTU rows. Any more frame threads than that is
+ generally counter- productive.
+ [d1cd52bb3461]
+
+2014-02-23 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: c is a char pointer
+ [07537439599b]
+
+2014-02-24 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/NAL.h:
+ NAL: Define a default constructor for base class to prevent warning
+ [6e7c2f5b7b22]
+
+ * source/common/common.cpp:
+ common: assignment inside conditional expression
+ [39e2c8bda975]
+
+2014-02-22 Steve Borho <steve@borho.org>
+
+ * source/common/threadpool.cpp, source/common/threadpool.h,
+ source/encoder/encoder.cpp:
+ encoder: use cpu count, rather than pool size, to auto-detect frame
+ threads
+
+ Normally the pool size is the same as the detected cpu count, but
+ when WPP is disabled, the thread count is 1, and this was breaking
+ auto-detection of frame threads. Now it will properly use -F4 on
+ desktops when WPP is disabled.
+ [734f106295df]
+
+ * source/output/output.h, source/output/y4m.h, source/output/yuv.h,
+ source/x265.cpp:
+ cli: add a line of logging describing reconstructed image file
+ [8ec8aba042cc]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ TEncSbac: nits
+ [a640cde93d87]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ TEncSbac: cleanup header
+ [c61a1bf68c57]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ TComBitstream: nits
+ [7fb5a8e1465a]
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibEncoder/NALwrite.h:
+ NAL: further simplifications
+ [d8d61736f2fc]
+
+ * source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h:
+ NAL: cleanup write method
+
+ This whole class hierarchy is way over-engineered
+ [44a42cd7f186]
+
+ * source/Lib/TLibEncoder/NALwrite.h, source/encoder/frameencoder.cpp:
+ NAL: use explicit reset method instead of copy constructor
+ [155fdcd113fb]
+
+ * source/common/common.cpp:
+ common: avoid calling atobool() on non-boolean strings
+ [f641d88f95dd]
+
+ * source/CMakeLists.txt:
+ cmake: make /WX optional for MSVC
+ [050273a10519]
+
+ * source/common/common.cpp:
+ common: refactor logic to avoid compiler warnings
+ [a6cf678f7981]
+
+2014-02-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: warn about the incomplete nature of the range extensions
+ [82b05314cc4c]
+
+ * source/common/common.cpp, source/x265.h:
+ api: add an enum for extended SAR
+ [9d550a10215b]
+
+ * source/common/common.cpp:
+ common: only validate sarWidth and sarHeight when aspectRatioIdx ==
+ 255
+ [06d3b23ef3b6]
+
+ * source/common/common.cpp:
+ common: fix --extended-sar CLI option atobool() was setting
+ bError=true
+ [58ba28e0c9a5]
+
+ * source/common/common.cpp:
+ common: disallow SAR numerator or denominator of 0
+ [f4bbbae743de]
+
+ * source/common/common.cpp:
+ common: improve error detection and handling in x265_param_parse
+
+ * check return code of sscanf
+ * check int parameters are ints, bools are bools, etc
+
+ API users (not using the CLI and getopt)
+ * allow no-foo and nofoo
+ * allow foo-bar or foo_bar
+ * no-wpp=1 works as expected
+ [0c3cb8fadb6f]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/common/lowres.cpp,
+ source/common/lowres.h:
+ lowres: no need to disable AQ on malloc failure, encoder will abort
+
+ And thus there's no need to pass aqMode as an int pointer
+ [ff3306fae207]
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp, source/common/common.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/test/ipfilterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/x265.cpp:
+ coding style - hand cleanup sections better than uncrustify wanted
+ to
+ [66c56fc5dfb9]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.cpp,
+ source/common/primitives.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.h, source/encoder/compress.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/weightPrediction.cpp, source/test/mbdstharness.h,
+ source/test/pixelharness.cpp, source/x265.cpp, source/x265.h:
+ mechanically enforce coding style (uncrustify)
+ [e118b38a5ef8]
+
+ * source/common/common.cpp:
+ common: g_convertToBit cannot be indexed with UINT_MAX either
+ [047cdb785e84]
+
+2014-02-21 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/common/common.cpp:
+ common: validate maximum ctusize
+ [ee58b2bb6f3c]
+
+ * source/common/common.cpp:
+ common: validate "bframe" and "maxCUSize" for positive values
+ [b8346a9f7020]
+
+2014-02-21 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ m_tempPel as static const
+ [b4d6162139f5]
+
+2014-02-20 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ vbv: integrate row level vbv ratecontrol at each major row diagonal.
+ [2115a7771ce1]
+
+2014-02-21 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ vbv: implement row wise vbvRateControl at each row diagonal
+ [fea3b6fa376b]
+
+2014-02-20 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ vbv: fix bugs in vbv flow with single pass ABR
+ [dd1bca7091d5]
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ vbv: Add row predictors, rc states for vbv.
+ [b89687d958f8]
+
+ * source/encoder/slicetype.cpp:
+ vbv: enable vbvLookahead for Keyframes; accumulate frame rowSatds
+ from lowres rowSatds.
+ [34774abb8677]
+
+2014-02-21 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/lowres.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/x265.h:
+ vbv: Introduce states to hold row data for row level VBV
+ ratecontrol.
+ [00de531690c9]
+
+2014-02-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Backed out changeset: cb3a2795a60e
+
+ This was found to change output bitstreams, so the vectors must not
+ have beeen always zero
+ [5e2043f89aa1]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComYuv: combine copyPartToPartLuma and copyPartToPartChroma
+
+ The new function tries to ensure the proper chroma block is copied,
+ when necessary.
+ [13f73b241382]
+
+2014-02-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove redundant m_hChromaShift, m_vChromaShift
+
+ TComPrediction has these members, and TEncSearch derives from
+ TComPrediction
+ [406abea93732]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: use X265_MALLOC for UChar buffers, and uint8_t type
+ [6b476469c212]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: use X265_MALLOC to allocate pixel buffers, and pixel
+ type
+ [fc3db1cfef2a]
+
+2014-02-21 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/x86/pixel-util8.asm, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h:
+ asm: update count_nonzero, add testbench
+ [0c19c44af2d3]
+
+2014-02-20 David T Yuen <dtyx265@gmail.com>
+
+ * source/common/common.cpp:
+ Added vui parameter checking
+ [6ade3939ef2d]
+
+2014-02-20 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ temp fix for out-of-range tmvp (prevents hash mismatch with slower
+ presets)
+
+ we're not sure why this is necessary, so it must be investigated
+ further.
+ [a78935e92bf9]
+
+2014-02-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: rename m_qtTempTransformSkipTComYuv to
+ m_qtTempTransformSkipYuv
+ [894bde574bc1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nits
+ [f32bbe3ab4f8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: rename m_qtTempTComYuv to m_qtTempShortYuv
+
+ It was always stupid to have the member variable include the full
+ type name, and it has been the wrong type name for more than 10
+ months.
+ [6107faa8f8a6]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: merge copyPartToPartLuma
+ [5b08cf274fd7]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: merge copyPartToPartChroma() with copyPartToPartYuv
+ [1ed4cd65af19]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: remove unused m_predAllAngsBuf, properly init
+ pointers
+ [125459e883c3]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h, source/encoder/compress.cpp:
+ TComPrediction: remove trivial access methods, use pixel types
+ [3bb5337cc665]
+
+ * source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: remove default argument values for internal
+ functions
+ [744553cfdaca]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: do not pass output pointer as deference
+
+ The function cannot change the pointer
+ [a090acec64cd]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ TComPrediction: add missing m_ prefixes to member variables
+ [8a79a2a0433c]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: remove unnecessary dup pointer checks
+ [034b21f14834]
+
+ * source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: remove more default argument values
+ [01dfbf18f791]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: merge methods together for clarity
+ [873a5a72d85e]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/encoder/compress.cpp:
+ TComYuv: remove default argument values
+ [9c79a713e9af]
+
+ * source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: make some methods private, for future optimizations
+ [7afb7b6815c0]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: remove hungarian prefixes
+ [3d89b437f7f7]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: remove unused copyPartToPartChroma() method
+ [549f5bf10211]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComYuv: fix size of chroma partition copy (resolves placebo heap
+ corruption)
+ [a6eee111fd6f]
+
+2014-02-20 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ tcomrom: move ADI intraModeNumFast table to estIntraPredQT(), no
+ need for global variable
+ [3993d404361b]
+
+2014-02-20 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: fix bug in acEnergyVar with multiple color spaces
+ [fec3cab87043]
+
+2014-02-20 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ tcomrom: scaning order table g_sigLastScan replaced with g_scanOrder
+
+ Scaning order table initialization moved into initRom() and same
+ scaning order table can be used for both 444 and 420
+ [d4669065e692]
+
+2014-02-20 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup useless getMvPred*(): always zero mv
+ [cb3a2795a60e]
+
+2014-02-20 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/dct8.asm:
+ asm: correct improper macro
+ [ce20bff2027e]
+
+2014-02-20 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ remove unused code
+ [2cede5a7c1bf]
+
+2014-02-20 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/pixel-util8.asm:
+ asm: modified the range of scale value in dequant
+ [613fbb0687c9]
+
+2014-02-20 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ reduce addClip
+ [fe90b71dc775]
+
+2014-02-20 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/CMakeLists.txt:
+ api: bump up X265_BUILD to 7 (refer previous commit)
+ [6cb88b30deef]
+
+2014-02-19 David T Yuen <dtyx265@gmail.com>
+
+ * source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ Added command line options to generate a VUI and add it to the coded
+ bitstream
+ [04a72988d48f]
+
+2014-02-19 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/intrapred16.asm, source/common/x86/mc-a.asm,
+ source/test/pixelharness.cpp:
+ asm-16bpp: code for addAvg luma and chroma all sizes
+ [4670fed41ec7]
+
+2014-02-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: recover CRF behavior following fps changeset
+ a6c9a476b205
+ [3389061b75a4]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: do not log weights if none are enabled
+ [d2ebbbbdbe75]
+
+ * source/encoder/frameencoder.cpp,
+ source/encoder/weightPrediction.cpp:
+ weightp: don't allow the PPS weightp flag to be changed by weight
+ analysis
+ [16602968225f]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: white-space nits
+ [e465b8c259f7]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ TEncSbac: white-space nits
+ [f60c76257811]
+
+2014-02-19 David T Yuen <dtyx265@gmail.com>
+
+ * source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ Fixed ENC_DEC_TRACE warnings and errors
+ [1c78bd13a14f]
+
+2014-02-19 ashok <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ fix for 420 binary mismatch for --preset=slower option
+ [591ca91f0501]
+
+2014-02-19 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/dct8.asm, source/test/mbdstharness.cpp:
+ asm: added 16bpp support for dct[4x4, 8x8], idct4x4, dst4x4 and
+ idst4x4 primitives
+ [96e94ea91f58]
+
+2014-02-19 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp:
+ prevent implicit type conversion warnings from MSVC
+ [9ddc919f678a]
+
+2014-02-18 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.cpp, source/input/input.h,
+ source/input/y4m.h, source/input/yuv.h, source/output/output.cpp,
+ source/output/output.h, source/output/y4m.cpp, source/output/y4m.h,
+ source/x265.cpp, source/x265.h:
+ api: add support for float or rational FPS [API CHANGE]
+
+ Since x265_param was changing anyway, I went ahead and changed
+ inputBitDepth to internalBitDepth, which has always been its real
+ function.
+
+ X265_BUILD is bumped to 6
+ [a6c9a476b205]
+
+ * source/x265.cpp:
+ cli: add x264's 'seek', leave HM's 'frame-skip' as undocumented
+ alias
+
+ We want to support x264's CLI options as much as possible, but don't
+ want to break any existing scripts
+ [1a0d5b456b19]
+
+2014-02-17 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ compress: improve rd 1 performance
+
+ a. Always allow intra mode for mode decision b. increase more skips
+ at each depth(do encode of best merge candidates initially and if
+ the merge is skipped, dont do inter modes)
+ [9f4d3ef34e5a]
+
+2014-02-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: change RateControl::lastSatd to currentSatd, add
+ comments
+ [757d3e3db046]
+
+2014-02-18 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/common/primitives.cpp:
+ nextState table
+ [f1951bb4c2ae]
+
+2014-02-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: remove unused alloc and stride
+ [8571d160aedb]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ backout unintended commit
+ [1be6b8c8b9ed]
+
+ * source/encoder/encoder.cpp:
+ encoder: show per-slice type SSIM as dB
+ [720768692efe]
+
+2014-02-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRom.cpp:
+ TComRom: use x265_malloc/free for globals
+ [7b5b3a5475a7]
+
+ * source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ TComRom: prevent multiple allocations or frees of globals
+ [d2a61d579c30]
+
+2014-02-17 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp:
+ testbench : test bench correction for chroma_p2s
+ [3505b249397d]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h:
+ asm : asm routine for chroma_p2s for 4:4:4 color space format
+ [df79cdee5d46]
+
+2014-02-17 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 16bpp code for quant and dequant_normal
+ [765d6225b252]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ testbench: adding seperate input buffer for idct and updated qp
+ value for quant
+ [797e8bb43887]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h:
+ asm: fix for illegal instruction usage in ipfilter
+ [46a9e97caaba]
+
+2014-02-17 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ cleanup unused variables
+ [a3dc5ba8cc95]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm:
+ primitives: add count_nonzero
+ [12d752ac7c4f]
+
+2014-02-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: fix V plane debug output
+ [5bf042e30d30]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: nit
+ [4a06d2485b45]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: remove dup line
+ [4ba139f9df57]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/common/lowres.h,
+ source/encoder/reference.h:
+ weight: remove odd struct renaming, remove unused wpACDCParam
+ [30edc6f7475e]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unused m_weightACDCParam and methods
+ [d2312e05014a]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: add debug logging for weight analysis
+ [a1047dfeebb6]
+
+ * source/encoder/encoder.cpp:
+ encoder: include the hash output into the debug output string
+ [393f6ef8b7bd]
+
+2014-02-16 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ api: change name back to inputBitDepth, to avoid breaking ffmpeg
+ [ce96cdb390fe]
+
+2014-02-15 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/cpu.cpp,
+ source/common/primitives.cpp:
+ non-x86 build fixes
+ [291b3a358a22]
+
+2014-02-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComYuv.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.cpp,
+ source/common/cpu.cpp, source/common/lowres.cpp,
+ source/common/lowres.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/threading.h,
+ source/common/threadpool.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel.h, source/encoder/compress.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp, source/encoder/weightPrediction.cpp,
+ source/test/ipfilterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/x265.h:
+ uncrustify all source - mechanically apply coding style
+ [39ecb3aa82ee]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/common/common.cpp,
+ source/x265.cpp, source/x265.h:
+ enforce new color space requirements, improve help
+ [76f13355e520]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ decouple input depth from internal depth; allow input depth !=
+ internal depth
+
+ Shift and mask input samples as necessary to reach internal depth.
+ The input depth is no longer in x265_param, where it never really
+ belonged since pic.bitDepth was the only number that mattered.
+
+ Add validations for input color space and bit depths. No CLI option
+ was added for internal bit depth since it is not currently runtime
+ configurable.
+ [b1f5fd61883a]
+
+ * build/msys/make-x86_64-w64-mingw32-Makefiles.sh, build/msys
+ /toolchain-x86_64-w64-mingw32.cmake:
+ build: add example cross-compile script for Win64 on MinGW32
+ [0911885e0f28]
+
+2014-02-15 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/test/ipfilterharness.cpp:
+ testbench: disable chroma_p2s.
+ [289b4ef4ecee]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness: resolve compile errors with CSP
+ [482aa2e636f9]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ Merge with 444 changes.
+ [8662459da60b]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Backed out changeset: a3a9e0fb1a87
+
+ Conflicts with the 444 patches. Will resolve merge and import it in
+ a seperate patch.
+ [98f5088cff19]
+
+2014-02-14 ashok <ashok@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp:
+ Modify TComLoopFilter structure to support multiple color space
+ formats
+ [c731d494e9ca]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/common/TShortYUV.h,
+ source/common/common.cpp, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/encoder/encoder.cpp:
+ Modify asm primitives functions to support multiple color space
+ formats
+ [deb0cffa87fa]
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp:
+ Modify TEncEntropy structure to support multiple color space formats
+ [a65cb22fcf10]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ Modify FrameFilter structure to support multiple color space formats
+ [6abd54cbff84]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ Modify TComDataCU structure to support multiple color space formats
+ [1e8fbc073d4b]
+
+ * source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ Modify TEncSbac structure to support multiple color space formats
+ [19532171622a]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ Modify TComPrediction structure to support multiple color space
+ formats
+ [ad8a991d626e]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Modify TComPattern structure to support multiple color space formats
+ [503e3794098a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Modify TEncSearch structure to support multiple color space formats
+ [fb14a98a97e4]
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/frameencoder.cpp:
+ Modify ChromaScale table to support multiple color space formats
+ [57156005d32f]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TypeDef.h:
+ Modify TComRom structure to support multiple color space formats
+ [3572d9d04ff7]
+
+2014-02-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: use pixel type instead of Pel type
+ [d77a549b8061]
+
+ * source/common/version.cpp:
+ version: today, our max supported input bit depth is 10
+ [6b197e8561ec]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: always set depth and colorspace fields
+ [d329e698d420]
+
+ * source/encoder/encoder.cpp:
+ encoder: use x265_log for per-frame debug log, use dB for SSIM
+ [da7f6bebdd30]
+
+ * source/encoder/encoder.cpp:
+ encoder: now only one QP per row in CSV output
+ [a661d9eef931]
+
+2014-02-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: cleanup, repetitive code
+ [5d76e8a19fed]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ ratecontrol: cleanup, remove sliceQPBase.
+
+ Always a duplicate of sliceQp.
+ [303634977dc4]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: cleanup
+ [4906f1fe7d06]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: clean up struct; remove baseQp
+ [8d4fd1d98337]
+
+2014-02-14 Steve Borho <steve@borho.org>
+
+ * build/msys/make-Makefiles.sh:
+ build: change eoln of msys bash script to unix
+ [ad21da9b607c]
+
+2014-02-14 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ square transform only
+ [a3a9e0fb1a87]
+
+2014-02-14 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/pixeladd8.asm:
+ asm: Clean up and minor modifications in pixel_add_ps 16bpp asm
+ functions(4xN)
+ [248b665970e8]
+
+2014-02-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/encoder/CMakeLists.txt, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ remove unused HM WeightPredAnalysis files
+ [ed310b17ff66]
+
+ * source/encoder/encoder.cpp:
+ encoder: do not generate digest string if we are not going to print
+ it
+ [d43e8e0c950d]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: report the hash digest from the correct frame encoder
+ [d6559298428a]
+
+2014-02-14 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ compress: Bug fix in rd2
+
+ the sa8d cost in rd2 for inter and intra are different for inter,
+ totalbits = 0, for intra, totalbits = cabac bits for now, making the
+ totalbits = 0 for both inter and intra
+ [d90a4adcb492]
+
+ * source/encoder/compress.cpp:
+ compress: missed few lines of code while applying previous patch
+
+ 1. Increase the eraly skips in rd2 2. Sa8d cost is not calculated,
+ but used in the code
+ [11ffc3cfe0d8]
+
+2014-02-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/reference.cpp:
+ reference: remove unnecessary duplicate variable
+ [0d033b5677da]
+
+ * source/CMakeLists.txt:
+ cmake: on MSVC, CMAKE_CXX_IMPLICIT_LINK_LIBRARIES and PLATFORM_LIBS
+ may be empty
+ [f46c3f816fe7]
+
+2014-02-13 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: add a blacklist of libs to keep from x265.pc Libs.private
+ [757b127f8ede]
+
+2014-02-13 Tom Vaughan (tom vaughan <Tom Vaughan (tom.vaughan@multicorewareinc.com)>
+
+ * source/common/common.cpp:
+ Remove redundant settings from performance presets
+ [0265344d0727]
+
+2014-02-13 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/intrapred.cpp,
+ source/encoder/compress.cpp:
+ const tables
+ [2ce38565571e]
+
+2014-02-13 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/ipfilter8.asm:
+ asm: cleanups for ipfilter functions to reduce register counts
+ [fcfe87ee36b7]
+
+2014-02-13 Tom Vaughan (tom vaughan <Tom Vaughan (tom.vaughan@multicorewareinc.com)>
+
+ * source/common/common.cpp:
+ Remove redundant settings from performance presets
+ [8093e808bfee]
+
+2014-02-13 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix bug on TSKIP
+ [402b11d9df80]
+
+2014-02-13 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: fix gcc warning, make array const
+
+ c:/mcw/x265/source/encoder/compress.cpp:414:22: warning: variable
+ 'bestMergePred' set but not used [-Wunused-but-set-variable]
+ TComYuv* bestMergePred;
+ [d9e6f16baa29]
+
+ * source/CMakeLists.txt:
+ cmake: more general fix for CFLAGS breaking resource compiles
+
+ There are some versions of rc.exe that also balk at being given
+ cl.exe flags
+ [8fdcf1ba38f3]
+
+ * source/common/common.cpp, source/x265.h:
+ api: improve documentation of x265_picture, properly initialize
+ pic.colorSpace
+ [1420cb397447]
+
+2014-02-13 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/ipfilterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h:
+ testbench: added stress test cases for all functions in
+ mbdstharness.cpp
+ [5e4e4bda0e7e]
+
+2014-02-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [5e104ed219c3]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/compress.cpp:
+ compress: improve rd 2 performance (Patch from Sumalatha)
+
+ a. Always allow intra mode for mode decision b. increase more skips
+ at each depth(do encode of best merge candidates initially and if
+ the merge is skipped, dont do inter modes)
+
+ Bitrate increase compared to rd 3 (4-6%) on most HD clips, quality
+ maintained. Performance impact to be measured in regression tests.
+
+ Sintel 720p clip needs to be investigated further. Poor show here.
+ [313e42bdd4ea]
+
+2014-02-13 Steve Borho <steve@borho.org>
+
+ * source/common/pixel.cpp:
+ weightp: add assert to protect assembly limitiation
+ [df4531a24c4d]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: pad width passed to weight_pp(), it requires 16byte
+ alignment
+ [9dffa4473096]
+
+ * source/common/threading.h:
+ threading: fix compile when XP support is enabled
+ [7c24e5a920b2]
+
+ * source/CMakeLists.txt, source/cmake/version.cmake:
+ cmake: be quiet about missing optional packages
+ [f0d82bf20584]
+
+ * source/CMakeLists.txt, source/cmake/version.cmake:
+ cmake: simplify version detection, use single set of variables
+ [e1088cae157c]
+
+ * source/cmake/version.cmake:
+ cmake: use findGit.cmake, which was available in cmake 2.8.8, our
+ min version
+ [726323914cd2]
+
+ * source/CMakeLists.txt:
+ cmake: workaround for MinGW windres
+ [0fcc87d05d10]
+
+2014-02-12 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: change name of MSVC built shared library to avoid filename
+ conflicts
+
+ the shared library and CLI exe were both trying to write x265.pdb
+ and x265.ilk with unhelpful results.
+ [21832083908f]
+
+ * source/CMakeLists.txt, source/x265.rc.in:
+ cmake: add resource file for Windows version info on DLL and EXE
+
+ This sadly doesn't work when compiling under MinGW; cmake has an
+ unresolved bug that passes all CFLAGS to windres, which pukes on
+ them.
+ [54189fefdc51]
+
+ * source/x265.cpp:
+ cli: use real log commands
+ [218f8304978e]
+
+2014-02-12 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix bug on TSKIP
+ [d6774d83f39c]
+
+2014-02-12 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ cleanup TEncSbac
+ [d22564466556]
+
+2014-02-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: remove two completed TODOs
+ [21c2724dfcd1]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: remember abort condition and stop accepting input frames
+ [f894b457aca8]
+
+2014-02-12 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/common/lowres.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ vbv: lookahead
+ [adee518df8ab]
+
+2014-02-12 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm-16bpp: assembly code for IntraAng32x32 all modes
+ [cca149489a6f]
+
+2014-02-12 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/pixel-util8.asm:
+ asm : Clean up and minor modifications in pixel_sub_ps asm
+ functions(2x4, 2x8, 6x8)
+ [d83f25c4ae1d]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Test bench : Stress test cases for remaining filter functions.
+ [3eb456f69e34]
+
+2014-02-12 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang8 - all modes
+ [5457f23edb5d]
+
+2014-02-13 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: to set B-ref frame QP as Lower then B-Frame QP for RC
+ with CQP mode
+ [1894c1c35bac]
+
+2014-02-12 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: fix hash mismatch
+
+ all references should have same luma and chroma denominator
+ [51c86499d3bd]
+
+2014-02-12 Steve Borho <steve@borho.org>
+
+ * source/x265.h:
+ api: we don't need stuttering header guards
+ [817f5bf391d2]
+
+ * source/x265.h:
+ api: mark externed variables for import from Windows shared library
+ [c9fc8dab7b9a]
+
+ * source/CMakeLists.txt, source/common/cpu.cpp:
+ cmake: a few fixes for building on ARM (Rapsbery Pi in particular)
+
+ Next step will be bringing over ARM cpu detect assembly functions:
+ x265_cpu_neon_test() x265_cpu_fast_neon_mrc_test()
+ [5ddbdaefb783]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: clip lowres MV before using for motion compensation
+
+ Even the lowres MVs with very restricted merange can go beyond the
+ available pixels. This was causing memory access exceptions on some
+ clips.
+ [19d7752a4f9c]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: cast mvmin/mvmax indices to signed 16bit values
+ [a3df372438a4]
+
+2014-02-12 Min Chen <chenm003@163.com>
+
+ * source/common/x86/blockcopy8.asm:
+ asm: fix bug in cvt16to32_shl
+ [eedfa574e07e]
+
+2014-02-11 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ vbv: set vbvminrate
+ [a8b2456aabef]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: Don't do resetABR in CRF.
+ [c11f0459464c]
+
+2014-02-11 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/blockcopy8.asm:
+ asm : Optimisations in blockcopy_sp asm routines(2x4, 2x8, 6x8)
+ [bf2f60a2d425]
+
+2014-02-03 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp:
+ testbench: Added stress test cases for
+ check_IPFilterLuma_ps_primitive, check_IPFilterLuma_hps_primitive
+ and check_IPFilterLumaHV_primitive filter functions
+ [eb19b59558c0]
+
+2014-02-11 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/ipfilter8.asm, source/test/ipfilterharness.cpp:
+ asm: Optimizations and cleaups on ipfilter functions
+ [4e5ab7003f23]
+
+2014-02-03 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp:
+ testbench: Added stress test cases for chroma_pp, chroma_ps and
+ chroma_hps filter functions
+ [43d6027b977b]
+
+2014-02-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: protect public APIs against NULL pointer arguments
+ [3dd1f72225e6]
+
+ * source/cmake/version.cmake:
+ cmake: set X265_LATEST_TAG from latesttag: line of .hg_archival.txt
+
+ The net effect of this is that non-tagged release bundles will be
+ capable of installing shared libraries with effective sonames.
+ [d6fdfa9f4938]
+
+ * source/x265.h:
+ api: improve documentation of x265_picture dts, pts
+ [973ad4575a27]
+
+2014-02-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: pass bools as bool literals
+ [07b5d6b82f5f]
+
+2014-02-11 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ cleanup AMVP related
+ [2316e8e33512]
+
+2014-02-10 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup unused
+ [b449d4d4f02d]
+
+2014-02-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ pic: use C style comments
+ [01d0f7758171]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ pic: mask impossible input bits
+ [8538c3383ade]
+
+ * source/common/lowres.cpp:
+ lowres: nits
+ [96d16486e317]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/lowres.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/encoder/weightPrediction.cpp:
+ TComPicYuv: replace xExtendPicCompBorder with an optimized function
+
+ We've had a primitive for the side borders for some time, it just
+ wasn't hooked up. This function never should have been a method of
+ that class.
+ [47592ed6aa2c]
+
+ * source/x265.cpp:
+ help: --cutree is a boolean flag
+ [d002f45eee16]
+
+ * source/x265.cpp:
+ help: move --cutree just after aq options
+ [75f724dd6d4c]
+
+ * source/CMakeLists.txt:
+ cmake: prevent extra errors when system has no C++ compiler
+ [6b3defda16c1]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: avoid redundant chroma extensions
+ [ce7191f49948]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/dpb.cpp:
+ TComPic: add m_chromaPlanesExtended member var
+ [8d98425e0a0a]
+
+2014-02-10 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: extend chroma borders before mcChroma, remove redundant
+ checks
+ [62c760413522]
+
+2014-02-07 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ weightp rewrite without a class
+
+ weightp analysis for the main encoder is performed with motion
+ compensation (using lowres motion vectors from lookahead) when
+ available. The lowres luma plane is used for luma analysis and the
+ chroma planes are analysed as-is.
+ [4ec4065fc392]
+
+2014-02-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.h:
+ TComPic: clean up data member ordering, add comments
+ [17847935873a]
+
+2014-02-08 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ improve getInterMergeCandidates()
+ [2fc9c0a08534]
+
+2014-02-09 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup MPM related
+ [0b44c6c07582]
+
+2014-02-09 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ api: repair `--keyint -1` behavior; single keyframe at beginning of
+ stream
+
+ Also, disable scene cut detection to save a few cycles in lookahead.
+ Fix and/or improve documentation for the keyint parameters
+ [60e6a7339027]
+
+2014-02-07 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/ipfilter8.asm:
+ asm: cleanup unused registers interp_4tap_horiz_pp_2xN and 4xN
+ [fa9f7b56d4d8]
+
+2014-02-07 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/vec/intra-ssse3.cpp,
+ source/common/vec/vec-primitives.cpp:
+ vec: remove intra-ssse3.cpp, full assembly coverage
+ [7da1a8d3bbbe]
+
+2014-02-07 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: intra_pred_ang16 code for all remaing modes
+ [990dbb374285]
+
+2014-02-07 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h,
+ source/common/x86/mc-a.asm, source/common/x86/pixel.h:
+ asm: correction of function declaration to sse4
+ [95fc15598e3e]
+
+2014-02-07 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/sad-a.asm:
+ asm: fix sad_x4 stress case failure on AVX2
+ [cfbe679e73dc]
+
+2014-02-07 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp, source/x265.h:
+ x265: remove X265_TYPE_KEYFRAME.
+
+ Not used, and not required. IDR/I-slice can be chosen at the outset
+ based on openGOP.
+ [c1cea0534e6b]
+
+2014-02-07 Steve Borho <steve@borho.org>
+
+ * source/common/dct.cpp:
+ dct: disable assertion for 10bit builds
+
+ The assertion is there to protect 8bpp assembly
+ [d2d181f1881a]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: avoid MSVC warnings about implicit bool to int casts
+ [da1dda5e762a]
+
+2014-02-06 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-ssse3.cpp:
+ Backed out changeset: 5634d0322161
+ [53c6acae9b0a]
+
+ * source/common/vec/intra-ssse3.cpp:
+ vec: remove unused angAP array
+ [5634d0322161]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h:
+ TComBitstream: simplify push_back(), fix clear(), give buffsize an
+ 'm_' prefix
+
+ The size of the allocated buffer is not reset on clear. Issue an
+ error message if any mallocs fail, to at least indicate an encoder
+ in serious trouble.
+ [f0e14af85843]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ TComBitstream: fix check for NULL m_fifo member
+
+ There was no point in checking for NULL in the if() expression
+ because m_fifo was used in the else. (identified by clang)
+ [436cf988b016]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ TComBitstream: remove hungarianness from parameters and auto-vars
+ [ddbbb1f92ce3]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/primitives.cpp,
+ source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp, source/encoder/weightPrediction.cpp,
+ source/x265.cpp:
+ Fix problems found by clang static analyzser in Xcode
+
+ These were mainly stores that were never read
+ [1a68f0dd9acb]
+
+ * source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ weightp: remove useless m_dstStride variable
+ [c54271b906da]
+
+ * Merge
+ [21d808d834c4]
+
+ * source/Lib/TLibCommon/TComPicYuv.h:
+ nit
+ [1776b9a58585]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: don't use m_ prefix for non member variable
+ [8f025ee0a506]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: do not blindly assume 4:2:0 chroma dimensions
+ [9bc4b7b1454e]
+
+ * source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ weightp: non-trivial constructors and destructors should not be in
+ headers
+ [d87b6e92c996]
+
+ * source/common/vec/intra-ssse3.cpp:
+ vec: remove intraPredAng32x32, full asm coverage
+ [40bec5582eca]
+
+2014-02-06 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/intrapred8.asm:
+ asm: fix Intrapred_ang[32x32] mode 10 and 26 failure on Mac
+ [a079afc4e6c7]
+
+2014-02-06 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: bug fix for cuTree, use int32_t for listamount and
+ propagate_amount to calculate valid propagate_cost
+ [6d5207b8b2ef]
+
+2014-02-06 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/sad16-a.asm:
+ asm: modified satd and sad asm functions in 16bpp to avoid overflow
+ [ffe13a5eccb9]
+
+2014-02-06 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ testbench: stress test support for all pixelharness functions
+ [b86a25eb7968]
+
+2014-02-06 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraAng32x32 all modes
+ [76fa0811c4e7]
+
+2014-02-06 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ remove unnecessary copyToPicLuma() call
+ [db0c1dfc3a11]
+
+2014-02-05 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: use ATOMIC_CAS32 to update an int
+ [634bc0b1c246]
+
+ * source/common/threadpool.cpp:
+ threadpool: use aligned malloc to allocate sleep bitmap
+
+ This kills three birds with one stone - it removes a source of
+ possible un- alignment, it removes the restriction of max 64
+ threads, and it further simplifies pool start and stop
+ [53b8daed7df5]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix 10bpp intra pixel preparations - found by valgrind
+ [fc90c9b265fd]
+
+ * source/common/vec/intra-ssse3.cpp:
+ vec: remove 4x4 and 8x8 intra mode prediction functions, asm
+ coverage
+ [8c9e1b3564e8]
+
+ * source/common/vec/intra-sse41.cpp:
+ vec: remove 4x4, 8x8, and 16x16 allangs functions; covered by
+ assembly
+ [bf4dbea1e4f5]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: remove redundant macro definition
+ [ea99e4d138cd]
+
+2014-02-05 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ all_angs_pred_16x16, asm code
+ [906d972bb4b7]
+
+2014-02-04 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred8.asm:
+ asm: intra_pred_ang8 asm code for all modes
+ [669000ad4a0d]
+
+2014-02-04 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/intrapred8.asm:
+ asm: Modifications to intrapred16 modes 3, 4, 32 and 33 such that it
+ uses TRANSPOSE_STORE macro of intrapred32
+ [cd73618857c5]
+
+2014-02-05 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: only officially support 16bpp builds on x64 architectures
+ [2f54c7616ef8]
+
+2014-02-05 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ abr: reset ABR to prevent high bitrate peaks in single pass ABR
+
+ Long series of blank frames in video followed by detailed content
+ causes heavy ABR underflow and overall bitrates surges high for a
+ long while. This patch detects this condition in Single pass ABR
+ mode and resets ABR - to not consider history from blank frames and
+ continue from following scene-cut.
+ [fc86625df0d9]
+
+2014-02-05 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/common/lowres.cpp:
+ lowres: initialize weightedCostDelta to avoid Valgrind reporting
+ uninitialized memory
+ [8d9abc152370]
+
+ * source/encoder/slicetype.cpp:
+ cuTree: bug fix for frameCostRecalculate
+ [0776a6722375]
+
+2014-02-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: try not to leak memory after malloc failures
+ [def14c0234f5]
+
+ * source/common/lowres.cpp:
+ lowres: fix gcc/clang compile errors
+
+ gcc doesn't like to jump to labels that bypass variable
+ initializations, even if they are not used passed the jump
+ [e05898ee63c0]
+
+2014-02-05 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ Backed out changeset: a88c7bbfba61
+
+ The addAvg x86 versions have now been fixed
+ [1374f1168c5c]
+
+2014-02-05 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/common/x86/mc-a.asm:
+ fix addAvg
+ [d20c11f2775f]
+
+2014-02-04 Steve Borho <steve@borho.org>
+
+ * source/common/lowres.cpp, source/common/lowres.h:
+ lowres: there was no need to pass an int* as an int32_t*
+ [76be476dfed5]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/lowres.cpp,
+ source/common/lowres.h, source/encoder/encoder.cpp, source/x265.cpp:
+ use checked mallocs in TComPic::create() and in functions it calls
+
+ This is the most obvious place memory allocation failures will
+ occur, at encoder startup. So it is best to catch them cleanly.
+ [6d0b6602e730]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: actually report chroma addAvg as addAvg, not add_ps
+ [bed6e485d6c1]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix luma_addAvg tests
+ [43966a9a13ba]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable x86 versions of addAvg - they are broken
+ [a88c7bbfba61]
+
+ * source/common/common.cpp:
+ log: move lookahead options all together, rate-control at the end
+ (nit)
+ [51011b224a7c]
+
+ * source/common/lowres.cpp:
+ lowres: initialize downscale planes immediately after alloc
+
+ Valgrind was reporting potential uninitialized memory being used by
+ the lowres weightp cost estimate function. It is weighting the
+ entire padded luma plane instead of weighting just the real pixels
+ and then extending them. The problem is that the buffer stride is
+ wider than (width + padw*2). We round up the stride to the nearest
+ multiple of 32 so the row starts are well aligned, and those pixels
+ at the very right edge of the buffer were never written to. They
+ should never be used by the encoder, but the weight_pp primitive
+ does try to weight them; and the last step of the weight function is
+ a clip, and that conditional move is what triggered the valgrind
+ warning.
+ [8d2b20447b8a]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness: fix loop bounds, caused crashes in 16bpp
+ [c16c7b8416ee]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: weight the extended lowres frame prior to MC cost
+ estimate
+
+ valgrind spotted this problem where the top and bottom padded areas
+ of the lowres reference frame were not weighted into the weightedRef
+ buffer, so any lowres MVs used for MC that referenced past the top
+ or bottom picture boundary would access uninitialized pixels.
+ [592675e50c29]
+
+ * source/common/wavefront.cpp, source/common/wavefront.h:
+ wavefront: rename bitmaps for clarity, add more comments
+ [23d30a6d4db1]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/common/common.h:
+ common: move malloc/free macros to our header
+ [0bd4e7603ea1]
+
+ * source/common/common.cpp, source/x265.cpp:
+ cli: change --keyint short option to capital I, add min-keyint,
+ [no-]shortcut
+
+ All these options now match x264's command line features
+ [2beb0bfb9503]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: avoid bogus warning from VC9/VC10
+ [4be0ca7b4448]
+
+2014-02-04 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ cleanup unused variables
+ [b54aa2713111]
+
+2014-02-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ NALWrite: simplify emulation detection
+ [ff430d39d428]
+
+ * source/input/y4m.cpp:
+ Merge with stable
+ [f121e16811be]
+
+ * source/input/y4m.cpp:
+ y4m: better handling of eof during frame header reads
+
+ It wasn't checking the stream state properly (a bug introduced when
+ ifs was made into a pointer for stdin) and doing a memcmp against
+ possibly uninitialized stack memory, which just happened to usually
+ have a proper frame header in it since the reader thread stack use
+ is very predictable.
+
+ This was the last warning reported by valgrind on the stable branch
+ [4b8901ae94ec] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: use x265 naming scheme for auto vars and parameters
+ [930b251ac6b7]
+
+ * source/input/y4m.cpp:
+ y4m: reorder functions for clarity
+ [8de9b432ba15]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: replace ints and long ints with bools where appropriate
+ [b0a594fe1867]
+
+ * source/input/y4m.cpp:
+ y4m: simplify guessFrameCount
+ [c111f1efc9c2]
+
+2014-02-03 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ reduce context
+ [d5326d9bf1b2]
+
+2014-02-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: backout c4e99fde0b and fix indentation
+ [6aa952372175]
+
+2014-01-21 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred8.asm:
+ assembly code for intra_pred_ang8_5
+ [2297a3777658]
+
+2014-02-03 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [169a7d7c51ef]
+
+2014-01-20 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: code for intra_Pred_Ang16x16 mode 32
+ [3131a2ac8ec6]
+
+2014-01-21 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred8.asm:
+ assembly code for intra_pred_ang8_4.
+ [dc2de7c4f6c1]
+
+2014-01-20 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred8.asm:
+ asm: code for intra_Pred_Ang16x16 mode 4
+ [c50f78691043]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: code for Intra_pred_Ang16x16 mode 3 and 33
+ [e9867f0a16a2]
+
+2014-02-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/NALwrite.cpp, source/common/TShortYUV.cpp,
+ source/common/common.cpp, source/common/lowres.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/motion.cpp,
+ source/encoder/reference.cpp, source/encoder/slicetype.h,
+ source/encoder/weightPrediction.cpp,
+ source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/mbdstharness.cpp, source/test/pixelharness.cpp:
+ common: change X265_MALLOC macro to return typed pointer
+
+ One less opportunity for a stupid mistake
+ [a260f55429e3]
+
+ * source/CMakeLists.txt:
+ cmake: treat empty CMAKE_SYSTEM_PROCESSOR as x86 (fixes #25)
+ [900a13b0b50a]
+
+ * source/encoder/encoder.cpp:
+ follow x264's keyframe-min logic [CHANGES OUTPUTS] (closes #24)
+
+ If no --keyint-min is specified, default to max/10, and clamp the
+ value to between [1, max / 2 + 1]. This allows x265 to insert I
+ frames when scene cuts are detected between keyframe-min and
+ keyframe-max
+ [898ccce491e9]
+
+2014-02-03 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/const-a.asm, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h, source/test/pixelharness.cpp:
+ asm: code for addAvg luma and chroma all sizes
+ [71841b07b8ee]
+
+2014-02-03 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use macro MAX_MAX_QP
+ [55b4d5135e06]
+
+2014-02-03 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/frameencoder.cpp:
+ fix
+ [c89f04114391]
+
+2014-02-02 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp, source/encoder/CMakeLists.txt:
+ cmake: remove two MSVC warnings overrides, HM code has been somewhat
+ sanitized
+ [aab88ed13364]
+
+ * source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/common/CMakeLists.txt:
+ cmake: remove two MSVC warnings overrides, HM code has been somewhat
+ sanitized
+ [8150374cb0d2]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/encoder/CMakeLists.txt:
+ cmake: when x86 arch is detected, set gcc -march=i686 globally
+
+ This enables a number of cleanups in the internal cmake scripts
+ [eff52bc89e94]
+
+2014-02-01 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: prevent warnings from recent builds of cmake
+
+ cmake really should ignore cmake_policy(SET foo) if foo is not yet
+ supported, so every cmake user doesn't have to check the exact
+ version which introduced that backward compatibility option.. but...
+ [bb33ab0f4ef9]
+
+ * source/common/x86/x86inc.asm:
+ x86inc: Make ym# behave the same way as xm#
+
+ x264 commit 0997c288be10
+ [81f2c587a0a7]
+
+ * source/common/x86/x86inc.asm:
+ x86inc.asm: allow x64 output format
+
+ x264 commit 3361d59a0a83d
+ [683361fd76c2]
+
+ * source/common/x86/x86inc.asm:
+ asm: pull in pengvado's header patch to speed up yasm compiles
+ [15f1f927bcfe]
+
+2014-01-29 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ reduce unused context models
+ [33929c36a646]
+
+2014-02-01 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: fix warning
+ [737ceb148a27]
+
+ * source/CMakeLists.txt:
+ cmake: use strlower on CMAKE_SYSTEM_PROCESSOR
+ [9e2b076968e1]
+
+ * source/CMakeLists.txt:
+ cmake: only allow assembly to be enabled for X86, our only asm
+ platform
+ [2a7ff626383d]
+
+ * source/CMakeLists.txt:
+ cmake: reorg main file for readability, no behavior changes
+ [2812a45ace5c]
+
+ * source/CMakeLists.txt, source/common/cpu.cpp, source/x265.h:
+ cpu: port ARM cpu detection code from x264
+ [0e734b111b1e]
+
+ * source/CMakeLists.txt:
+ cmake: add two more system processor names that are synonyms of x86
+ [68f2d08654b9]
+
+ * source/CMakeLists.txt, source/common/cpu.cpp,
+ source/common/primitives.cpp:
+ cmake: improve handling of unknown system processor
+ [7f1d29a897c1]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: add math include for POSIX systems
+ [389328343ccd]
+
+2014-01-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: use X265_DEPTH instead of g_bitDepth
+
+ On 8 bit builds, bit depth is known at compile time, allowing the
+ compiler to optimize away a few of these operations.
+ [413ad959a5c6]
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/common.cpp,
+ source/common/cpu.cpp, source/common/intrapred.cpp,
+ source/common/ipfilter.cpp, source/common/lowres.h,
+ source/common/pixel.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/threadpool.cpp,
+ source/common/vec/intra-sse41.cpp, source/common/vec/intra-
+ ssse3.cpp, source/common/vec/vec-primitives.cpp, source/common/x86
+ /asm-primitives.cpp, source/encoder/compress.cpp,
+ source/encoder/cturow.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h, source/encoder/weightPrediction.cpp,
+ source/input/y4m.cpp, source/input/yuv.cpp,
+ source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/pixelharness.cpp, source/x265.h:
+ uncrustify source (mechanical coding style enforcement)
+
+ A few changes that uncrustify wanted to make have been left out of
+ the commit for style reasons.
+ [9d0abf80eeb1]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: cleanups
+ [fb048ad78e78]
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: vc11-win32-debug workarounds
+ [461316bc1dd5]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: add missing braces
+ [c4e99fde0b0b]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: white-space nits
+ [4aed055bd1ed]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ Merge with stable
+ [65003e385629]
+
+2014-01-30 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/cpu.cpp, source/common/primitives.cpp,
+ source/common/vec/vec-primitives.cpp, source/encoder/CMakeLists.txt:
+ cmake: attempt to support non-x86 compile targets
+ [8769cd7b97ac]
+
+2014-01-31 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: white-space nits
+ [58cff481d6ed]
+
+ * source/test/ipfilterharness.cpp:
+ testbench: fix signed/unsigned comparison warning
+ [24e448ed4341]
+
+2014-01-30 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h,
+ source/test/testharness.h:
+ testbench: add stress test case for luma_pp filter function
+ [897067ac23ac]
+
+ * source/test/pixelharness.cpp:
+ testbench: fix for random test bench failure caused by pixeladd_ss
+ [8f066e4e48e9]
+
+2014-01-31 Steve Borho <steve@borho.org>
+
+ * .hgtags:
+ Added tag 0.7 for changeset d24e2a8c4326
+ [edf64ac976ea] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: comment nits
+
+ Remove a comment copied from x264 that has no bearing in x265, and
+ fix the alignment of another comment.
+ [d24e2a8c4326] [0.7] <stable>
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: alloc wpScalingParam instance as a struct member
+
+ This is a workaround for VC11. When x265 was compiled for debug
+ targeting Win32 the stack was being reported as corrupted by
+ weightCostLuma(). No other compiler or build option would report any
+ problems (not even valgrind). In the VisualStudio debugger the stack
+ would be obviously garbaged once the function was entered. Moving
+ `w` off of the stack makes the VC11 debugger happy again.
+ [86081bfcacf9] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: use explicit float type constant
+ [e04f2b3dea39] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: prevent divide-by-zero and sqrtf(0)
+ [3bc0651c0f40] <stable>
+
+2014-01-31 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/pixel-a.asm:
+ asm: fix for potential mismach between ASM and no-ASM outputs
+ [539d1b0561b1] <stable>
+
+2014-01-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.h, source/common/common.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ Merge with stable
+ [eb3713ab0641]
+
+2014-01-28 Steve Borho <steve@borho.org>
+
+ * source/common/threadpool.cpp:
+ threadpool: use a wait event per worker thread
+
+ For simplicity, this patch caps the number of worker threads to 64.
+ The bitmap could be trivially extended if necessary.
+
+ This removes the common wake event, which complicated startup and
+ shutdown and flush events.
+ [6fe8d1d519f7]
+
+2014-01-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/cturow.h, source/encoder/frameencoder.cpp:
+ cturow: detect and prevent simultaneous row access
+
+ Temporary workaround until we are certain the findJob() race hazards
+ are indeed resolved completely.
+ [564eefbb3812] <stable>
+
+2014-01-28 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ encoder: refactor frame encoder recon row synchronization
+
+ The previous approach depended on a common event (owned by TComPic)
+ being triggered multiple times for each row, one trigger per
+ referencing frame, but I believe this was fragile as one frame
+ encoder could steal notifications from another.
+
+ In the new scheme, each frame encoder waits on its own sync event
+ when it blocks for recon pixels. When a frame encoder finishes
+ reconstructing a CU row, it calls a top-level encoder function which
+ determines if any frame encoders are blocked on that POC and wakes
+ them up.
+
+ This should prevent deadlocks from frame encoder synchronization
+ [4a4c4cbe9c67] <stable>
+
+2014-01-30 Steve Borho <steve@borho.org>
+
+ * source/common/wavefront.cpp:
+ wavefront: eliminate redundant reads of m_queuedBitmap
+ [6d5f2f61341a] <stable>
+
+ * source/common/wavefront.cpp:
+ wavefront: use x265_malloc for bitmaps, to ensure alignment
+ [adf571b1bb94] <stable>
+
+ * source/Lib/TLibCommon/CommonDef.h, source/common/common.h:
+ common: consolodate malloc/free funcdefs to common.h
+ [71f6479dc354] <stable>
+
+2014-01-30 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/encoder/encoder.cpp:
+ Merge bug fixes from stable.
+ [fffdf3dce410]
+
+2014-01-30 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/sad-a.asm:
+ asm: modified pixel_sad asm function to avoid overflow
+ [b852f74bdd8c] <stable>
+
+ * source/common/x86/intrapred16.asm, source/test/intrapredharness.cpp:
+ asm: fixed hash mismatch on 16bpp due to intra_pred_ang
+ [c0ec570c0105] <stable>
+
+2014-01-29 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/pixel-a.asm:
+ asm: fix for 32-bit build satd overflow issue.
+ [86743912a5b0] <stable>
+
+2014-01-30 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ log: print Summary for per-frame logging
+ [e879873ce926]
+
+ * source/encoder/encoder.cpp:
+ log: print ssim(dB) in per-frame csv logging
+ [46aa0de4a8da]
+
+2014-01-29 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: fix overflow due to pixel_satd asm function for 64-bit build
+ [d6091cb46ae1] <stable>
+
+2014-01-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ nit: line up WPP log info with other config items
+ [4ec459e04f9e] <stable>
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: fix lowresMvCosts[] indexing, add comment for future work
+ [8552e8cc1a3c]
+
+ * source/encoder/compress.cpp:
+ Merge with stable
+ [923edbb08a59]
+
+2014-01-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: insert check for merge MV candidates.
+ [7f4537c4db7a] <stable>
+
+2014-01-28 Aarthi Thirumalai (aarthi <Aarthi Thirumalai (aarthi@multicorewareinc.com)>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: bug fix in crf mode ;correct qscale set for all the frames.
+ [854ff1616d38] <stable>
+
+2014-01-28 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ weightP: fix crash due to access of lowres array
+
+ fix crash due to access of lowres array of references with invalid
+ mvs in weightCost
+ [728f31cc6eee]
+
+2014-01-28 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/slicetype.cpp,
+ source/x265.cpp:
+ Merge with stable
+ [3568c1b19947]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix initial threshold passed to slicetypePathCost
+ [ddd4e4e328d2] <stable>
+
+2014-01-27 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup g_convertTxtTypeToIdx[]
+ [633421b8faf6]
+
+2014-01-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/weightPrediction.cpp:
+ weightP: when difPoc is large, prepare to avoid MC - part 2. Patch
+ from Kavitha
+ [cb4b0033c7fc]
+
+ * source/encoder/weightPrediction.cpp:
+ weightP: when difPoc is large, prepare to avoid MC. Patch from
+ Kavitha broken up.
+ [3be5ca58d9d2]
+
+ * source/encoder/frameencoder.cpp:
+ weightP: build error fix
+
+ Inconsistency due to import from stable branch
+ [4ead340677bf]
+
+ * source/x265.cpp:
+ x265: allow only 10-bit input depths in HIGH_BIT_DEPTh builds
+ [dd0ef09680fe] <stable>
+
+2014-01-27 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: prevent 8bit encodes with HIGH_BIT_DEPTH builds
+
+ Some of the interpolation 16bpp assembly routines make assumptions
+ that the encode depth is 10bits, so HIGH_BIT_DEPTH builds will
+ generally cause decoder hash mismatches if they encode 8bpp streams.
+ Prevent this until we have a proper long term solution.
+ [773b87c2855c] <stable>
+
+ * source/common/common.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/weightPrediction.cpp:
+ Merge with stable
+ [3c2441447f2a]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove commented function which no longer exists
+
+ compressMotion() was removed 4 months ago
+ [26a5e720f290] <stable>
+
+ * source/common/common.cpp, source/encoder/frameencoder.cpp:
+ me: add one more pixel lag for DIA search's relaxed search bounds
+ [dc4e57833aae] <stable>
+
+ * source/common/common.cpp:
+ common: do not allow encodes other than 4:2:0 to start
+ [10fc60881bbf] <stable>
+
+2014-01-24 Kavitha Sampath <kavitha at multicorewareinc.com> <kavitha at multicorewareinc.com>
+
+ * source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ WeightPrediction: check difPoc <= bframes+1 to allow weight analysis
+ for valid references
+ [a02a028afea9] <stable>
+
+2014-01-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/wavefront.h:
+ wavefront: add missing initializer
+ [4fcfa56420fb] <stable>
+
+2014-01-24 Min Chen <chenm003@163.com>
+
+ * source/common/x86/pixel-a.asm:
+ fix SATD32x32 16bits cumulate sum overflow (x86 version only)
+ [83767892376d] <stable>
+
+2014-01-27 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/frameencoder.cpp:
+ Merge with stable
+ [b59b1e579f78]
+
+2014-01-25 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ HM: context table
+ [1ea8a52b4f54]
+
+ * source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ cleanup TComCUMvField::m_cAMVPInfo
+ [2fc36d0fd1b2]
+
+2014-01-27 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ magic number
+ [ed2e9fe1a732]
+
+2014-01-26 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ reduce unused context models
+ [e0c81b78e529]
+
+2014-01-27 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/frameencoder.cpp:
+ me: add a two pixel pad to the max ME range when calculating
+ reference lag
+
+ We must account for subpel refine search range when calculating how
+ many rows of reference frames must be encoded ahead of the current
+ frame. Without this we saw non-deterministic decoder hash mismatches
+ with some videos.
+ [b173809575c6] <stable>
+
+2014-01-24 Steve Borho <steve@borho.org>
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: add build flag to disable read thread for debug purposes
+ [1ac9148a3661] <stable>
+
+ * Merge with stable
+ [237bf6667405]
+
+ * source/input/yuv.cpp, source/input/yuv.h:
+ yuv: support colorspaces in YUV input files (closes #13)
+ [13dac38f54ac] <stable>
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: use ifstream::good() instead of !ifstream::fail()
+
+ good() implies bad, fail, and eof flags are all false. The fail()
+ flag does not include eof status or the bad bit for I/O errors.
+ [dba087c3613b] <stable>
+
+ * source/input/y4m.cpp:
+ y4m: prevent infinite loop on malformed y4m frame headers
+ [9867ebc4b164] <stable>
+
+2014-01-24 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp:
+ asm : Fix for luma_vss test bench failure
+ [7f09cfcf176c]
+
+2014-01-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ Merge with stable
+ [7cd3a3195598]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: prevent compiler warnings about uninitialized variables
+ [2a2e5711f63b] <stable>
+
+ * source/common/lowres.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ Merge with stable
+ [047fd4670cbe]
+
+2014-01-24 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/slicetype.cpp:
+ fix b-pyramid for fixed GOP
+ [ffee1032eaed] <stable>
+
+2014-01-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/reference.cpp:
+ reference: pad width of weighted region to multiple of 16
+ [2ab2bb459d1a] <stable>
+
+ * source/common/lowres.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ nits
+ [c02e59ab4ee9] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix bcost behavior with signed ints
+ [0431eb3404e7] <stable>
+
+2014-01-24 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ slicetype: change all costs to int64_t
+ [8dd9b7ac5b61] <stable>
+
+ * source/common/common.h:
+ Merge with stable
+ [807495b7a9fc]
+
+ * source/common/common.h:
+ lowres: fix msys compile error
+ [f45d9772cc40] <stable>
+
+2014-01-23 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ nit
+ [23c65133c555]
+
+ * source/common/lowres.cpp, source/encoder/slicetype.cpp:
+ white-space and other nits
+ [438a2258504d]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: repair I frame placement with lookahead disabled
+
+ if ((true || foo) && bar) properly degrades to if (bar)
+ [f0ae3d8d2b03]
+
+ * source/common/common.cpp:
+ preset: re-disable lookahead at ultrafast preset
+ [c2af7808ef8d]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ Merge with stable
+ [099a71435329]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: upgrade frame cost variables to uint64_t
+ [629d0a685dcb] <stable>
+
+2014-01-24 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp:
+ testbench: added the chroma_addAvg primitives.
+ [5460e85ae178]
+
+2014-01-23 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: remove unused numDecided member variable
+ [f2766083c252]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ Merge with stable
+ [416713ab5821]
+
+2014-01-21 Steve Borho <steve@borho.org>
+
+ * source/common/lowres.h, source/encoder/reference.cpp,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: reorg to make frame cost estimates re-entrant (for RC and
+ WP)
+
+ * moves frame cost calculations into a separate class deriving from
+ WaveFront
+ * frames[] array now always declared on stack for better re-entrant
+ behavior
+ * re-orders functions in slicetype.cpp for clarity
+ * internal methods were made protected, for documentation purposes
+ only
+ * fixes a few minor problems discovered during the reorg
+ * removes deprecated ReferencePlanes.unweightedFPelPlane
+ [e9ec7787cf5e] <stable>
+
+2014-01-22 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ cleanup initPattern()
+ [8732434ea913]
+
+2014-01-20 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ reduce CI_NUM
+ [6a12fc6e6fdc]
+
+2014-01-23 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ Merge with stable
+ [cbd2ea65f87d]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: issue EMMS before returning a thread to the work pool
+ [a42dd0dfe90d] <stable>
+
+ * source/common/primitives.h:
+ primitives: move luma_addAvg close to other weight/avg functions
+ [7aa3ea411568]
+
+ * source/common/primitives.h:
+ primitves: fix a comment
+ [5bf76ded5209]
+
+ * source/common/primitives.h:
+ primitive: remove two dead funcdefs
+ [a4c0b6e35dd1]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ primitive: remove dead ipfilter_sp and ipfilter_ss
+ [ee36ffef7648]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ primitive: remove dead ipfilter_ps
+ [688f3951c90c]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: remove dead primitive test
+ [177421068f53]
+
+2014-01-23 Nabajit Deka <Nabajit Deka>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ asm : Hook up chroma_vps and chroma_vss with the encoder.
+ [356ec7ff8a68]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ asm : Hook up luma_vps and luma_vss with the encoder.
+ [f5ab67ba11b7]
+
+2014-01-23 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/common/pixel.cpp,
+ source/common/primitives.h:
+ asm-primitives: addAvg, fix bug pointed out by Ashok.
+ [f1bd676fd90f]
+
+2014-01-22 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/ipfilter.cpp,
+ source/common/primitives.h, source/common/vec/ipfilter-sse41.cpp,
+ source/common/vec/vec-primitives.cpp,
+ source/test/ipfilterharness.cpp:
+ vec: drop unused vectorized chroma_vsp primitive, ipfilter-sse41.cpp
+ [29c1940c8acb]
+
+2014-01-22 Nabajit Deka <Nabajit Deka>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/weightPrediction.cpp:
+ asm : Hook up chroma_vsp with the encoder.
+ [d2bfe01c0f29]
+
+2014-01-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge from stable
+ [d8a1e3bebdf8]
+
+2014-01-22 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/weightPrediction.cpp:
+ WeightPrediction: Do not use lowres MV/MVcost for invalid
+ MVs/MVcosts
+ [9497c55d7be2] <stable>
+
+ * source/encoder/weightPrediction.cpp:
+ weightp: fix hash mismatch when --ref > 3
+ [d56dd4d8e08b] <stable>
+
+2014-01-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ Merge with stable
+ [0f0ad4c094bd]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix cuTree mv indexing (bug found by herman.chen@rock-
+ chips.com)
+
+ This drops the bitrate almost 20% and the SSIM from 0.4-0.9 dB. I
+ believe this needs rebalancing.
+ [3cf5a75a8002] <stable>
+
+ * source/input/yuv.cpp:
+ yuv: skip frames one at a time to prevent offset overflow
+ [e12bb1346bef] <stable>
+
+2014-01-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [ce41ee0f5c8c]
+
+2014-01-17 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred8.asm:
+ assembly code for intra_pred_ang8_3
+ [b51c1866363d]
+
+2014-01-20 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: tweak aq-strength CLI help
+ [950c9a864cb6]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: white-space fixes
+ [925e612b0591]
+
+ * source/encoder/encoder.cpp:
+ encoder: fix the slicetype char table
+ [7bfd1b01953c]
+
+ * Merge with stable
+ [b5b7d8e64024]
+
+2014-01-20 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ Nalwrite: removed EMULATION_SIZE macro and calculate the
+ emulationSize from Encoded bitstream size
+ [21a5fb7ab965] <stable>
+
+2014-01-17 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ rc: avoid issues from zero-residual lookahead blocks, introduce a
+ small bias
+ [ffb53cd1f953]
+
+ * source/encoder/encoder.cpp, source/encoder/slicetype.cpp:
+ lookahead: call sliceTypeAnalyse when necessary
+
+ call sliceTypeAnalyse even when cutree is on or lookaheadDepth or
+ scenecutThreashold > 0
+
+ performs lookahead when lookaheadDepth > 0, activates lookahead for
+ cutree when b-adapt/bframes =0 and cutree is set , also enables
+ scenecut for bframes = 0 cases. improves psnr/ssim by .5 dB.
+ [bca352c8689e]
+
+2014-01-20 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.h:
+ NALwrite: remove unused macro
+ [cf79f89c783c]
+
+2014-01-20 Gopu Govindaswamy <Gopu Govindaswamy>
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ Nalwrite: removed EMULATION_SIZE macro and calculate the
+ emulationSize from Encoded bitstream size
+ [356d91e22b25]
+
+2014-01-17 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred8.asm:
+ asm: IntraAng32x32 Mode[17]
+ [9f7fca027b41]
+
+2014-01-18 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ testbench support for addAvg primitive
+ [56ce4f7669c6]
+
+2014-01-17 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/common/pixel.cpp,
+ source/common/primitives.h:
+ primitive function for luma and chroma for loops in addAvg().
+ [c88314c4a1a1]
+
+2014-01-09 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ Re-enabling new weightp
+ [e90e39c3a035]
+
+2014-01-17 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: do not report ssim costs by default
+
+ It costs CPU cycles to measure SSIM, do not do this unless the user
+ asks for them with --ssim
+ [385560ac328d]
+
+ * source/common/common.cpp:
+ common: remove trailing white-space
+ [299bbf5f06c2]
+
+ * source/encoder/encoder.cpp:
+ white-space fixes, reorder for clarity
+ [838e485c6365]
+
+ * source/encoder/encoder.cpp:
+ update/fix comments
+ [c8c8a0273eff]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp:
+ move param fixups to Encoder::configure()
+ [7855cee45b8c]
+
+2014-01-15 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: code for intra_pred[BLOCK_32x32] mode 2 and 34
+ [1d7ea03e1a38]
+
+2014-01-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ stats: simplify slice type lookup
+ [3d747041271f]
+
+2014-01-16 Xun Xu, PPLive Corporation <xunxu@pptv.com>
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/slicetype.cpp, source/x265.h:
+ add dts to x265_picture, handle same as x264
+ [57b3238680c5]
+
+2014-01-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ TEncSbac: remove hungarian prefixes from loop vars
+ [243b01e81109]
+
+2014-01-12 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/encoder/compress.cpp:
+ remove duplicate code
+ [188617e76d60]
+
+2014-01-15 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ fix blockCbpBits[]
+ [04aae8fd88a0]
+
+2014-01-15 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cleanup initCU()
+ [37b4ca796088]
+
+2014-01-15 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ x265: help nit
+ [e5d28e2c5a82]
+
+2013-12-17 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/common/common.cpp, source/encoder/dpb.cpp,
+ source/encoder/slicetype.cpp, source/x265.cpp, source/x265.h:
+ slicetype: remove --refresh and use --open-gop(default: enable)
+ [27c2dac98a3c]
+
+2014-01-14 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [7af141be0e7a]
+
+2014-01-09 Satoshi Nakagawa <nakagawa424@oki.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup MVPNum
+ [e7624ab39cff]
+
+2014-01-14 Steve Borho <steve@borho.org>
+
+ * source/common/wavefront.cpp:
+ wavefront: bug fix
+ [9e923f539d89] <stable>
+
+2014-01-13 Steve Borho <steve@borho.org>
+
+ * source/common/wavefront.cpp:
+ wavefront: consider enabled bitmap status in
+ checkHigherPriorityRow()
+ [8e0fa5fcbf15] <stable>
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv: pad chroma allocations, fix valgrind warnings
+ [aae31685d8c7] <stable>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: add a row and col of padding for lowres interpolation
+ [8d3cdf1a846e] <stable>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: tweak order of compiles to improve parallel build times
+
+ Move assembly and intrinsic files to front of the build
+ [3bc604fdd380]
+
+ * Merge with stable
+ [5a607dd446ea]
+
+2014-01-13 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/ContextTables.h:
+ HM: Fix for #576: Context table for CBF
+ [c9cefa67691c] <stable>
+
+ * source/Lib/TLibCommon/ContextTables.h:
+ HM: Fix for #501: Decoding part_mode with inter_4x4 can use CNU
+ context
+ [de98453fa608] <stable>
+
+2014-01-09 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.h,
+ source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ fix for hash mismatch in new weightp
+ [cd6c34bb4172] <stable>
+
+2014-01-10 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [b2e7d8da2838]
+
+2014-01-09 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: code for intra_pred[BLOCK_16x16] mode 2 and 34
+ [c5aa7ae59fc7]
+
+2014-01-09 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: intra_pred_ang8_2 asm code
+ [acbe568e7366]
+
+2014-01-07 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm:
+ improvement interpolate_H_pp
+ [b2a0cfe4837b]
+
+2013-12-28 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncEntropy.cpp:
+ cleanup reduce condition check for getUseDQP()
+ [a03cc8c4d739] <stable>
+
+2014-01-08 Steve Borho <steve@borho.org>
+
+ * source/VectorClass/README.txt, source/VectorClass/instrset.h,
+ source/VectorClass/vectorclass.h, source/VectorClass/vectori128.h,
+ source/VectorClass/vectori256.h, source/VectorClass/vectori256e.h,
+ source/common/vec/ipfilter-ssse3.cpp, source/common/vec/pixel-
+ sse41.cpp, source/common/vec/pixel-ssse3.cpp,
+ source/common/vec/pixel16-sse41.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/pixel-util.asm,
+ source/test/testpool.cpp:
+ Merge with default, prepare for 0.7 tag
+ [0d70188e80bc] <stable>
+
+2014-01-07 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: fix memory access violation due to scale2D_64to32
+ [c4edab8dab65]
+
+2014-01-07 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm:
+ correct number of xmm register on interp_8tap_horiz*
+ [ca7bde495318]
+
+2014-01-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: simplify luma intra prediction function
+ [4811da38078c]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ wtf? a useless comment and if()/else() with two identical
+ statements?
+ [c1cf926c20e0]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ TComBitStream: fix loop bounds so we do not check past end of buffer
+ [bd9b395c80c7]
+
+ * .hgignore:
+ ignore vim swap files
+ [6d40ab7be379]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ TComBitstream: simplify and streamline start code checks
+ [e1ee0fc31e79]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ TComBitStream: rename variables for clarity
+
+ There was no point making cnt an unsigned variable when the return
+ value is signed, this just adds more compiler warnings
+ [324d99e3d6ac]
+
+ * source/encoder/motion.cpp:
+ motion: add early out for subpel refine if bcost is already zero
+ [63d6b04fe201]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: better prevention for compiler warnings and misbehaviors
+ [54835bf61c11]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable x265_scale2D_64to32_ssse3, DUMA finds access violations
+
+ I tried simple buffer padding workarounds, adding 16 bytes at the
+ start and end of bufScale, but it was still causing the access
+ violation.
+ [d4bef967ae10]
+
+2014-01-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ slice: nits
+ [abd4da45823c]
+
+ * source/encoder/weightPrediction.cpp:
+ weight: clarify max denom adjustments
+ [75f7a9434289]
+
+ * source/encoder/weightPrediction.cpp:
+ weight: nits
+ [89e57c446a81]
+
+ * source/encoder/weightPrediction.cpp:
+ weight: alloc intermediate weight buffer once per plane
+ [c35d653ab515]
+
+ * source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ weight: use m_ prefix consistently for all member variables
+ [d809090f70ad]
+
+ * source/encoder/weightPrediction.h:
+ weightPrediction: remove unused member variables, fix shadow warning
+ [0715d03808f3]
+
+2014-01-06 Min Chen <chenm003@163.com>
+
+ * source/encoder/frameencoder.cpp:
+ fix every execute output different bitstream when SAO enabled
+ [99f28c405b5c]
+
+2014-01-03 Steve Borho <steve@borho.org>
+
+ * source/input/y4m.cpp:
+ y4m: use loop to skip frames, avoid 32bit size wrap problems
+ [f96c85f03b77]
+
+2014-01-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ Backed out changeset: revert to HM-based weightP
+ [8137881d4cad]
+
+2013-12-30 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ Integrating new weight analysis in encoder
+ [dcae0b69d9b3]
+
+ * source/encoder/CMakeLists.txt, source/encoder/weightPrediction.cpp,
+ source/encoder/weightPrediction.h:
+ Importing x264 weight analysis to encoder
+ [affdfa4b5537]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ Moving macro to header
+ [f5427379b40d]
+
+2013-12-30 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: bug fix to improve quality for the first I frame.
+ [c86f18d7eb2a]
+
+2013-12-30 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ common: tune-ssim sets aqmode as AUTO_VARIANCE (2). Gives higher
+ ssim.
+ [c561cd778ef5]
+
+2013-12-27 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp:
+ cutree: bug fixes. correct the timescale used in getQScale()
+ [964e5bc90ad2]
+
+2013-12-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ aq, cutree: completely turn of AQ, at fastest presets
+
+ Prevent AQ from running unnecessarily with strength 0.
+ [8b5c5fe7fbc9]
+
+ * source/common/common.cpp:
+ aq, cutree: preset changes
+
+ 1. Disable AQ at ultrafast/superfast presets 2. Disable CUTree at
+ ultrafast/superfast/veryfast/faster presets (requires b-adapt to be
+ non-zero). 3. tune-psnr disables only AQ, CUtree stays enabled (at
+ appropriate presets).
+ [cb2a18cc1d14]
+
+2013-12-26 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/blockcopy8.asm:
+ asm: fix for mismatch in 10bpp block copy
+ [0210e9c4a6f9]
+
+2013-12-24 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/common.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/x265.h:
+ aq: Add AQ_AUTO_VARIANCE feature for performing adaptive
+ quantization.
+ [2f83ed50ed9a]
+
+2013-12-25 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp, source/x265.cpp:
+ encoder: nits
+ [08bad990fd66]
+
+2013-12-24 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ csv: formatting ssim output
+ [d74f2e0856b4]
+
+ * source/common/common.cpp, source/x265.cpp:
+ common: change tune-ssim to default. When tune-psnr is enabled, AQ
+ and CUTree are turned off.
+ [cb48e00e1fd8]
+
+2013-12-23 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ encoder: increase precision, add ssim db info to csv output.
+ [bb7057e7ed6d]
+
+ * source/common/common.cpp:
+ common: [OUTPUT CHANGES]: change default ratecontrol mode to CRF-28.
+ AQ on (strength 1.0), CUTree ON. SSIM reporting On, PSNR off.
+ [aa2856a374a1]
+
+2013-12-18 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ rd: optimize rd 0
+ [3e98f0e66e0b]
+
+ * source/encoder/compress.cpp:
+ rd: fix incorrect check for rdlevel
+
+ Merge-skip check should be only for rdlevel 2
+ [c69ef62da2b6]
+
+ * source/encoder/compress.cpp:
+ rd: modify recon generation in rd 0 to have lesser mem copies
+ [edeccf4c6cdd]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ rd: remove unnecessary mem copies
+ [f766e7c3b165]
+
+2013-12-17 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: clean up
+ [c1802fef73b4]
+
+ * source/encoder/compress.cpp:
+ rd: move merge-skip check before other modes are checked
+
+ in rd 1,0 merge-skip is chosen only based on sa8d threshols.
+ Checking other Inter/inter modes is unnecessary overhead.
+ [06ea3901bf35]
+
+ * source/encoder/compress.cpp:
+ rd: fix error in merge-skip identfication in rd 1,0
+
+ Cost was not calculated if the best mode is merge-skip in rd 1,0
+ [526c10b6a808]
+
+ * source/encoder/compress.cpp:
+ compress: remove unused sbaccoder load
+ [ee272784fa6e]
+
+ * source/encoder/compress.cpp:
+ compress: remove redundant initializations
+
+ depth is already initialized in initsubcu
+ [3aa3ed0fefe8]
+
+ * source/encoder/compress.cpp:
+ compress: remove unnecessary code
+
+ reco and resi buffers is not used in this function
+ [8c90ad61a306]
+
+ * source/encoder/compress.cpp:
+ compress: remove redundant initializations
+
+ skipFlags are set to false during initialization.
+ [e476d497f3cd]
+
+ * source/encoder/compress.cpp:
+ rd: check DQP before best cu is copied to the pic in rd 0
+ [f9c427b44459]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp, source/encoder/compress.cpp:
+ rd: remove redundant checkDQP and add checkDQP for rd 0
+
+ checkDQP is called on bestCU, so no need to call it after each
+ encode. For rd0, call checkDQP after residual encode at depth 0.
+ [5828f199d745]
+
+2013-12-19 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ Consider rounded width, height for ssd calculation
+ [8133378e2250]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Fix typo in extending height to round to multiple of 16
+ [146051557e0d]
+
+2013-12-18 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ encoder: print global ssim in db
+ [60c2a49909f2]
+
+2013-12-18 Rafaël Carré <funman@videolan.org>
+
+ * source/CMakeLists.txt:
+ cmake: .pc file is useful as well when using static libs
+ [1c37c4401ea4]
+
+ * source/cmake/version.cmake:
+ cmake: take revision from git if within a git repo
+ [54445c440ea0]
+
+ * source/cmake/version.cmake:
+ cmake: verify existance of hg repo
+ [387cd1635278]
+
+2013-12-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ common: tune-ssim turns on aq strength
+ [09d93b8d5994]
+
+ * source/common/common.cpp:
+ common: adjust tabs
+ [7f1da6982201]
+
+ * source/common/common.cpp:
+ common: update print params and defaults.
+
+ By default, tune-psnr is turned on, which means CUTree is enabled
+ but AQ strength is zero.
+ [3055eacc88ae]
+
+ * source/common/common.cpp:
+ common: this check taken care of in encoder::configure()
+ [7db25026df8e]
+
+ * source/common/common.cpp:
+ common: enable CUtree by default. tune=psnr is the default setting
+ [06052d963404]
+
+ * source/common/common.cpp:
+ common: remove meaningless warning
+
+ aq=1 is required for cutree. Therefore, aq=1, aqstrength=0 is a
+ valid case for all configs that want cutree but do not want aq (eg,
+ tune-psnr).
+ [b9b1533b52d5]
+
+ * source/encoder/encoder.cpp:
+ encoder: increase precision for SSIM printf
+ [381ff6bcade6]
+
+2013-12-18 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/common.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp, source/x265.cpp:
+ cutree: Enable CUTree for ratecontrol when tune=ssim and bug fix for
+ cutree
+
+ 1. added cutree into cli option, default cutree is disabled 2.
+ --tune=ssim then aq and cutree is enabled 3. Fixed bug in slicetype-
+ frameCostRecalculate() the qp offset for B and B-REF from lowres
+ qpAqOffset, for non-B from lowres qpoffset 4. Fixed bug in
+ Ratecontrol-getQScale - the clip duration should (frameduration *
+ timescale) when cutree is enabled
+ [6edecf959a30]
+
+2013-12-17 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ rd: remove unnecessary sbaccoder loads
+ [37e0b00adeec]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ rd: fix wrong chroma mode used for mode decision
+ [119d09b54b95]
+
+2013-12-16 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ rd level: use cu coeff array while computing Intra coefficients
+ instead of temp buffer
+ [37c57d47a9d4]
+
+2013-12-17 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred8.asm:
+ fix yasm warning 'trailing garbage after expression'
+ [e1465ef2659c]
+
+ * source/common/x86/pixel-util8.asm:
+ fix crash in pixel_var_16x16_internal, because
+ RateControl::acEnergyCu() call it with unalignment pointer
+ [c944aa8fbf2f]
+
+2013-12-17 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: bug fix for variance data calculation for weighted prediction
+ when aq-mode is disable
+ [517eadc29cf6]
+
+2013-12-17 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/vec/vec-primitives.cpp:
+ vec-primitives: avoid warnings
+ [9ffeea38b119]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: correct initialization list order (warnings on non-VS
+ compilers).
+ [7474532db9ec]
+
+2013-12-16 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: Calculate the variance data for weighted prediction if aq-mode
+ is disable
+ [baf811614a7a]
+
+2013-12-16 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ compress: remove unused variables
+ [91b9cd801cbb]
+
+2013-12-16 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ rd level: use cu coeff array while computing coefficients instead of
+ temp buffer
+ [34137673f778]
+
+2013-12-16 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ rd level: fix for output mismatch
+
+ For boundary conditions, cost calculation was wrong.
+ [3dae450a06a4]
+
+2013-12-16 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ rd level: remove unnecessary calculations in intra residual encoding
+
+ calcrecon calculates recon,reconQT and reconIpred which is
+ redundant. Use add and block copy instead of calcrecon.
+ [9bb16a023918]
+
+2013-12-16 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: fix gcc warning
+ [57efb99765cc]
+
+ * source/Lib/TLibEncoder/TEncCu.h:
+ TEncCu: reintroduce a macro which was removed while merging
+ [9171e78ee412]
+
+2013-12-11 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ all_angs_pred_8x8, asm code
+ [43656ecbe66b]
+
+2013-12-16 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix gcc warning
+
+ remove unused variables and shadowed declarations
+ [238d7f272d1e]
+
+2013-12-13 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ white space nits
+ [f157836c3713]
+
+ * source/encoder/compress.cpp:
+ rd level: modify mode-decision logic for rd level 0
+
+ In rd level 0, sa8d cost used for mode decision across depths.
+ dct,quant is not done during mode-decision and no recon is
+ generated. Hence Intra has to use original pixels as reference.
+ Residual encoding is done at depth 0 and Intra prediction for the
+ best mode will be done again with recon as reference.
+ [d2a1b3409656]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ rd level: add functions to do residual encoding at depth 0 for best
+ modes.
+
+ This function will be used for rd level 0.
+ [e05b990cfb93]
+
+2013-12-13 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/common.cpp, source/common/lowres.cpp,
+ source/encoder/ratecontrol.cpp:
+ rc: Initialized qp and aq offsets and QscaleFactor if aqmode is
+ disabled these variables need for cutree analyse
+ [c6ff3ede1f29]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ Slicetype: recalculate the frame cost without re-running lookahead
+ for cutree
+ [582e96661432]
+
+2013-12-14 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/output/yuv.cpp:
+ Merge with stable
+ [4b0163d06ba1]
+
+ * source/output/yuv.cpp:
+ yuv: fix more 32-bit compile warnings
+ [bca251133e70] <stable>
+
+2013-12-13 Steve Borho <steve@borho.org>
+
+ * source/output/yuv.cpp:
+ Merge with stable
+ [5cbea1cd3d3a]
+
+ * source/output/yuv.cpp:
+ yuv: prevent 32bit compiler warnings
+ [14e9dbedab9d] <stable>
+
+2013-12-12 Steve Borho <steve@borho.org>
+
+ * source/output/y4m.cpp:
+ y4m: perform file offset math in uint64_t
+ [292a91f3427e]
+
+2013-12-13 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp:
+ rc: implement ratecontrol upto MAX_MAX_QP.
+
+ For RateControl .virtual qps are used from 0 till 69. Howevr,Before
+ encoding the frame, the qps are clipped back to 51
+ [926f7034b2f0]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h:
+ rc: Initialize virtual qps till 69
+ [07d83bc1cfad]
+
+2013-12-12 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/WeightPredAnalysis.cpp:
+ Fix for deltaWeight assert failure in Decoder
+ [ba2f8f5d3b07]
+
+2013-12-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ Merge: changes outputs
+ [d0cf79d76057]
+
+2013-12-12 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ rd level: fix the incorrect cost calculation for sa8d
+
+ In rd level 1, the distortion is sa8d, so cost calculation should be
+ calrdsadcost() instead of calcrdcost()
+ [ba3cc2f01138]
+
+ * source/encoder/compress.cpp:
+ rd level: remove the redundant splitflag bit calculation with EARLY
+ EXIT ON
+ [fdfecd9f4c9e]
+
+ * source/encoder/compress.cpp:
+ rd level: change the indexing for sa8d threshold array
+
+ The index in threshold array won't be same as depth when the max cu
+ size is less than 64.
+ [bf541ca76b3a]
+
+2013-12-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: review/clean up top_skip
+ [20f9187af731]
+
+ * source/encoder/compress.cpp:
+ compress: review/clean up merge
+ [1012911d1895]
+
+2013-12-12 Steve Borho <steve@borho.org>
+
+ * source/output/yuv.cpp:
+ Merge with stable
+ [033a65692b6a]
+
+2013-12-12 David Bachelart <david.bachelart@bbright.com>
+
+ * source/output/yuv.cpp:
+ yuv: Support 4GB+ YUV files for output
+ [06e88ad6d922] <stable>
+
+2013-12-11 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/ipfilter.cpp,
+ source/common/primitives.h, source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/vec-primitives.cpp:
+ primitives: drop ipfilter[FILTER_H_P_S_[4|8], including ipfilter-
+ ssse3.cpp
+ [a87f12ebb55b]
+
+ * source/common/x86/pixel-a.asm:
+ merge with stable
+ [25f412ecaba2]
+
+ * source/common/x86/pixel-a.asm:
+ ssd: backport EMMS fix for SSD_4xN
+ [d2385a789c8a] <stable>
+
+2013-12-11 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ asm : Hook up chroma_hps with encoder.
+ [93a92dafb667]
+
+2013-12-11 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: 10bpp code for calcrecon_16x16 and 32x32
+ [350b0757d1a0]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for calcrecon_4x4 and 8x8
+ [59c09449211d]
+
+2013-12-11 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/test/intrapredharness.cpp:
+ testbench: fix invalid memory compare for 16bpp primitives
+ [da972cf802fb]
+
+2013-12-11 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp:
+ asm: 10bpp test bench code for calcrecon
+ [99f3527f9b7b]
+
+2013-12-11 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred16.asm:
+ asm: remove reduce operators in intra_pred_planar32
+ [5d21f5c91495]
+
+2013-12-11 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/intrapred16.asm:
+ asm: fix hash mismatch in intra_pred_planar_32x32 16bpp
+ [0d2771085aec]
+
+2013-12-11 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ssd-a.asm:
+ asm: fix miss EMMS in pixel_ssd_ss_4xN
+ [3e6b5f65f47c]
+
+2013-12-11 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/intrapred16.asm:
+ asm: fix hash miss match due to intra_pred_ang4_17
+ [8f634eac2ca0]
+
+2013-12-10 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_planar_32x32
+ [771e657a11fa]
+
+ * source/common/x86/intrapred16.asm:
+ assembly code for intra_pred_planar_16x16 for 10 and 12-bit
+ [2b618395a586]
+
+2013-12-11 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/lowres.cpp:
+ tcomtrquant: when useRDOQ is disabled, it recomputes qpScaled, the
+ qpScaled for trQuant is already set
+ [c5f84164ef36]
+
+2013-12-10 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ rdlevel: implement rdlevel 1
+
+ At each depth, dct, quant, iquant, idct is done on best mode. No RD
+ done during TU selection. Recon is generated for intra prediction in
+ neighbouring quadtree is not broken
+ [298470fa2d19]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ add functions for Intra residual transform and quantization without
+ rd
+ [14ddc3ed548a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ add function for Inter residual tranform and quantization without RD
+ [9b7f7303cdb9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove unused functions
+ [b938ac5cef81]
+
+2013-12-11 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ log: fix memory overread issue
+ [40895c94da21]
+
+2013-12-11 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/CMakeLists.txt, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ cmake: Add LOG_CU_STATISTICS macro to enable/disable CU mode
+ decision statistics.
+ [a1e7aac486a7]
+
+2013-12-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: nit
+ [3bf6be9d766b]
+
+ * source/common/x86/intrapred16.asm:
+ intra: fix 64bit build of intrapred16.asm - Min please review
+ [dcef9f3bca1e]
+
+2013-12-10 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [c4fdea3fd659]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: 10bpp code for calcresidual_16x16 and 32x32
+ [1169201b50c4]
+
+2013-12-10 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp, source/encoder/motion.cpp:
+ asm : Hook up luma_hps with the encoder.
+ [af1f46818bed]
+
+ * source/test/ipfilterharness.cpp:
+ Add comment for luma_hps and chroma_hps test bench code.
+ [1cc5b2d87d8b]
+
+2013-12-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4 - mode 17,18
+ [384d99887688]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for calcresidual_4x4 and 8x8
+ [e4c13676c4b5]
+
+2013-12-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4 - mode 14,15,16
+ [573a8cfac514]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: 10bpp support for blockcopy_ps and blockcopy_sp
+ [8f8d4811352a]
+
+2013-12-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4 - mode 11,12,13
+ [b29166445321]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: 10bpp blockcopy_ps integration for Luma and chroma partitions
+ [887206700a13]
+
+2013-12-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp code for intra_pred_ang4_26
+ [1eb855251cc5]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm: 10bpp code for blockcopy_ps_64xN
+ [72e7899bef55]
+
+ * source/common/x86/blockcopy8.asm:
+ asm: 10bpp blockcopy_ps bug fix
+ [8e34f135fd9e]
+
+2013-12-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4_10
+ [d604f25e6eab]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm: 10bpp code for blockcopy_ps_48x64
+ [1679ad2da2a1]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm: 10bpp code for blockcopy_ps_32xN
+ [64c8f43aa7ce]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm: 10bpp code for blockcopy_ps_24x32
+ [e7fff01a464b]
+
+2013-12-10 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ 16bpp: enabled blockfill_s primitive
+ [2cf9944afa92]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm: 10bpp code for blockcopy_ps_16xN
+ [2e56e8e76f72]
+
+2013-12-10 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/ipfilter.cpp:
+ Bug fix in luma_hps C primitive.
+ [1863cdede774]
+
+2013-12-10 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/blockcopy8.asm:
+ asm: 10bpp code for bolckcopy_ps_12x16
+ [54e8c012597c]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: pixel_add_ps integration code for Luma and chroma partitions
+ [0c46964557c8]
+
+2013-12-10 Min Chen <chenm003@163.com>
+
+ * source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ testbench: fix wrong width parameter in check_planar_primitive()
+ [5a7f116e3aae]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: Intra Planar 16x16
+ [5604254f779e]
+
+ * rename IntraPred.cpp to intrapred.cpp to avoid name conflict
+ [7810ce2bdb53]
+
+ * source/common/x86/intrapred16.asm:
+ asm: improvement IntraPredDC_32x32 by replace macro extend by loop
+ [9a8b0e81330f]
+
+2013-12-09 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm: 10bpp code of blockcopy_pp for 2xN, 4xN, 6x8 and 8xN blocks
+ [285a4d8c42a0]
+
+2013-12-09 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4_8 and intra_pred_ang4_9
+ [66d8405320d2]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4_7
+ [f33ca21fe0c2]
+
+2013-12-10 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred16.asm:
+ asm: alignment branch to 16 bytes
+ [89fea75bbc1b]
+
+2013-12-10 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ log: fix crash caused by logging after CU analysis
+ [ef26367cd10c]
+
+2013-12-09 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [a88c5723d266]
+
+2013-12-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ sbac: move global tables into x265 namespace
+ [7d4f5cbc68e7] <stable>
+
+2013-12-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [c6c73ef24c97]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: avoid reads past the end of chroma buffers
+ [67e711fde921] <stable>
+
+ * source/common/vec/dct-ssse3.cpp:
+ dct: drop intrinsic DCT 8x8 primitive, we have asm coverage
+ [eacdbae47e47]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: make weightp analysis aware of colorspaces
+ [f25e60a2b62c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nit
+ [644d27bb26e9]
+
+2013-12-09 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ Use correct width/height for chroma in ssd calculation
+ [7bd7937e762b]
+
+2013-12-09 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4_6
+ [40e204fcf5d4]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4_5
+ [0587de3aeb9b]
+
+2013-12-09 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_planar8
+ [4c5a86ff2c99]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_planar4
+ [39b7cf1f3a89]
+
+2013-12-09 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4_4
+ [6f2660e5a857]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp support for intra_pred_ang4_3
+ [9116410f11b4]
+
+2013-12-09 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_6x8
+ [cbd96bfe5732]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_64xN
+ [6385549fefa3]
+
+2013-12-09 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/intrapred16.asm:
+ asm: 16bpp asm code for intra_pred_ang4_2
+ [36ffa3ba6039]
+
+2013-12-09 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred8.asm:
+ asm: little improvement(pextrd -> movd, jmp to alignlemt address)
+ [e16a67613973]
+
+2013-12-09 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_48x64
+ [69766745fb6d]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_32xN
+ [ef3bfef112c1]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_24x32
+ [46a23a64eb1e]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_16xN
+ [fdb1ed6efd5b]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_12x16
+ [ced72100d067]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_8xN
+ [1c4d5a2538d5]
+
+2013-12-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/x265.h:
+ x265: fix bad merge
+ [55d99b6651f2]
+
+ * source/x265.h:
+ Merge
+ [c7e7003df711]
+
+2013-12-09 Min Chen <chenm003@163.com>
+
+ * source/test/pixelharness.cpp:
+ fix bug: avg_pp use weight 32
+ [5bb46ef28bc5]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/dct8.asm, source/common/x86/dct8.h:
+ asm: assembly code for DCT8x8
+ [8ffd72844276]
+
+2013-12-07 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_4xN
+ [4f9dc5dc44e0]
+
+2013-12-07 Min Chen <chenm003@163.com>
+
+ * source/test/testpool.cpp:
+ Merge branch 'X'
+ [2353322df540]
+
+2013-12-06 Steve Borho <steve@borho.org>
+
+ * Merge
+ [f655add8bcc2]
+
+2013-12-06 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/IntraPred.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.h, source/common/x86/intrapred8.asm,
+ source/encoder/compress.cpp, source/encoder/slicetype.cpp,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ cleanup: merge Intra Pred PLANAR mode into intra_pred[]
+ [8773f7f028c2]
+
+2013-12-06 Min Chen <chenm003@163.com>
+
+ * rename IntraPred.cpp to intrapred.cpp
+ [a5984c686c55]
+
+2013-12-06 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_2xN
+ [8eba4667a5e3]
+
+ * source/test/pixelharness.cpp:
+ 10bpp: testbench code for pixel_add_ps
+ [41bfe2b249f8]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: 10bpp code of pixel_sub for 16xN, 24x32, 32xN,48x64 and 64xN
+ [4bb40809a372]
+
+2013-12-06 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc32
+ [3933b4a1380d]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc16
+ [056a712852c9]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc8
+ [ef6f2bdbaf7d]
+
+ * source/common/CMakeLists.txt, source/common/x86/asm-primitives.cpp,
+ source/common/x86/const-a.asm, source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc4
+ [059af4b49f8e]
+
+2013-12-06 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred8.asm:
+ asm: cleanup garbage after fucntion declare
+ [fef16dcf106f]
+
+2013-12-06 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/x265.h:
+ x265: remove obsolete R-D enums
+ [dadb3ae865cb]
+
+ * source/x265.h:
+ rc params: documentation on i/p/bfactor, qpstep, crf
+ [3c0a1652611e]
+
+ * source/x265.h:
+ ratecontrol params: documentation for rateTolerance
+ [08cf1b4ba081]
+
+ * source/x265.h:
+ ratecontrol parameters: add documentation for qcomp
+ [c889005baa5f]
+
+2013-12-05 Steve Borho <steve@borho.org>
+
+ * source/test/CMakeLists.txt, source/test/testpool.cpp:
+ cmake: drop pool test; not seriously used since May
+ [ebd32ea1f84e]
+
+ * source/CMakeLists.txt:
+ cmake: add ENABLE_SHARED cmake option, default to ON
+
+ Allow MSVC users to opt-out; to roughly halve the compile time.
+ Clean up a few nits in the process.
+ [707901470d11]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/encoder.cpp:
+ TEncCu: coding style, lower case initial letter for totalCu
+ [458173c60685]
+
+ * source/CMakeLists.txt:
+ cmake: bump X265_BUILD post 0.6, since x265_param has changed
+ [9442edac08b7]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/cpu.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/vec/vec-primitives.cpp,
+ source/test/TestBench.cpp:
+ cmake: rename ENABLE_PRIMITIVES_ASM to ENABLE_ASSEMBLY
+
+ And use the same name for the build define. Also, rename
+ Setup_Vector_Primitives() to Setup_Instrinsic_Primitives()
+ [a3a4689496e8]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/primitives.cpp, source/test/TestBench.cpp:
+ cmake: remove ENABLE_PRIMITIVES_VEC build option
+
+ The use of the few remaining compiler intrinsic functions is now
+ unconditional. Compiler detection will remove them cleanly in case
+ they cannot be compiled, so there is no reason to make them a top
+ level build option
+ [46cbb9f96850]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/common/IntraPred.cpp,
+ source/common/primitives.h, source/common/vec/intra-ssse3.cpp,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ primitives: cleanup intra prediction table dimensions
+ [435c68acd2a1]
+
+ * source/common/CMakeLists.txt:
+ cmake: move asm-primitives.cpp and asm headers into VS source group
+
+ A cosmetic change only
+ [89b4d233b57f]
+
+ * source/encoder/compress.cpp:
+ Merge
+ [6fd83a8d944c]
+
+2013-12-05 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm, source/test/intrapredharness.cpp:
+ all_angs_pred_4x4, asm code for all modes
+ [be8b52e8f903]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_12x16
+ [f2ce16c8d65a]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_8xN
+ [a30515de4c2d]
+
+2013-12-05 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad16-a.asm:
+ asm: 16bpp support for sad_x4 - all block sizes
+ [ca7d0e04c324]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_6x8
+ [9e0b2aa531a9]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_4xN
+ [952d606c08ed]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: 10bpp code for pixel_sub_2xN
+ [376c68701fb7]
+
+2013-12-05 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad16-a.asm:
+ asm: 16bpp support for sad_x3 - all block sizes
+ [057581245e2f]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: primitives of sse_ss for 12x16, 24x32, 48x64 and 64xN blocks
+ [6570bef3bc2b]
+
+2013-12-05 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred8.asm:
+ improvement by remove reduce ADD instruction in intra_pred_dc16
+ [229ec0d4164f]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/IntraPred.cpp,
+ source/common/primitives.h, source/common/vec/intra-ssse3.cpp,
+ source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm, source/encoder/compress.cpp,
+ source/encoder/slicetype.cpp, source/test/intrapredharness.cpp,
+ source/test/intrapredharness.h:
+ cleanup:merge Intra Pred DC mode into intra_pred[]
+ [e1cf58c22166]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 18
+ [f4b8486659ad]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 17 & 19
+ [06cb5289dfcf]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 16 & 20
+ [56506c2913d8]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 15 & 21
+ [112dabd56faf]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 14 & 22
+ [2c2f9294e033]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 13 & 23
+ [d77cf817b11e]
+
+ * source/test/intrapredharness.cpp:
+ testbench: swap order to call asm code
+
+ Our old intra_pred_ang algorithm will fill buffer before input pLeft
+ and pabove, in this time, the offset [-1] pixel equal to [4], it
+ affect detect asm code error, so I swap the order
+ [3aa3d68f1552]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 12 & 24
+ [666ad0f9f68e]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 11 & 25
+ [36da30382f5f]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm, source/test/intrapredharness.cpp:
+ asm: improvement intra_pred_ang by SSE4(pextrd,pextrb)
+ [ca7d44856001]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for scale2D_64to32 routine
+ [4d6b8c30f15e]
+
+2013-12-05 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/primitives.cpp:
+ integrating asm code for sa8d in primitives.cpp
+
+ there was no separate functions for sa8d in assembly, we are just
+ re-using sa8d_inter functions for sa8d.
+ [1f96b2234977]
+
+2013-12-05 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intra-ssse3.cpp:
+ cleanup unused array intra_ang4[]
+ [f16f9f0ea93c]
+
+ * Merge branch 'X'
+ [d11dbd953d6d]
+
+2013-12-04 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/x86/ipfilter8.h:
+ Function declarations for modified luma_hps and chroma_hps
+ functions.
+ [fc7883c471e4]
+
+ * source/common/primitives.h, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h:
+ Test bench code for luma_hps and chroma_hps
+ [f29d063bf40d]
+
+ * source/common/ipfilter.cpp:
+ C primitive changes for luma_hps and chroma_hps.
+ [d19d6ac4bc4b]
+
+ * source/common/x86/ipfilter8.asm:
+ asm : Modifications for luma_hps and chroma_hps(extra rows)
+ [3e8632ea6c95]
+
+2013-12-05 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/IntraPred.cpp, source/common/primitives.h,
+ source/common/vec/intra-ssse3.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/intrapred.h,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ asm: simplify code by use intra_pred_ang[][], and avoid build error
+ when disable yasm
+ [660a23104096]
+
+ * rename IntraPred.cpp to intrapred.cpp to avoid team's hg merge
+ conflict
+ [d7bdf9a5b2c6]
+
+2013-12-07 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: remove long-since idiotic comment
+ [b29f2f31ec46]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/cpu.cpp, source/common/primitives.cpp,
+ source/test/testbench.cpp:
+ cmake: simplify use of ENABLE_ASSEMBLY build define
+
+ The define is only needed in primitives.cpp. Move all of the CPU
+ detect fallback code together in primitives.cpp making cpu.cpp more
+ standalone. Make the testbench only build if the assembly code is
+ enabled.
+ [e1fbbf947b60]
+
+2013-12-07 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/x265.h:
+ rc params: complete documentation for rc params in x265.h
+ [d8d844b36c6c]
+
+2013-12-06 Steve Borho <steve@borho.org>
+
+ * Merge
+ [a482cf5de173]
+
+2013-12-06 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.h, source/common/x86/intrapred8.asm,
+ source/encoder/compress.cpp, source/encoder/slicetype.cpp,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ cleanup: merge Intra Pred PLANAR mode into intra_pred[]
+ [c093e7847025]
+
+2013-12-06 Min Chen <chenm003@163.com>
+
+ * rename IntraPred.cpp to intrapred.cpp
+ [f4166f824c2b]
+
+2013-12-06 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: 10bpp code for pixel_add_ps_2xN
+ [967297338b27]
+
+ * source/test/pixelharness.cpp:
+ 10bpp: testbench code for pixel_add_ps
+ [13314db77cf8]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: 10bpp code of pixel_sub for 16xN, 24x32, 32xN,48x64 and 64xN
+ [f27fb7c2676a]
+
+2013-12-06 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc32
+ [d36fb6852698]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc16
+ [6d2d7c2a5d79]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc8
+ [110d716e67a7]
+
+ * source/common/CMakeLists.txt, source/common/x86/asm-primitives.cpp,
+ source/common/x86/const-a.asm, source/common/x86/intrapred16.asm:
+ 16bpp: assembly code for intra_pred_dc4
+ [9e24dcae2ebf]
+
+2013-12-06 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred8.asm:
+ asm: cleanup garbage after fucntion declare
+ [ad08db06a7c6]
+
+2013-12-06 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/x265.h:
+ x265: remove obsolete R-D enums
+ [56a17500909e]
+
+ * source/x265.h:
+ rc params: documentation on i/p/bfactor, qpstep, crf
+ [c5e91abfeb05]
+
+ * source/x265.h:
+ ratecontrol params: documentation for rateTolerance
+ [49288da0ee3e]
+
+ * source/x265.h:
+ ratecontrol parameters: add documentation for qcomp
+ [608874dc84ab]
+
+2013-12-05 Steve Borho <steve@borho.org>
+
+ * source/test/CMakeLists.txt, source/test/testpool.cpp:
+ cmake: drop pool test; not seriously used since May
+ [d5dc48e6cd16]
+
+ * source/CMakeLists.txt:
+ cmake: add ENABLE_SHARED cmake option, default to ON
+
+ Allow MSVC users to opt-out; to roughly halve the compile time.
+ Clean up a few nits in the process.
+ [3e6be1e11720]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/encoder.cpp:
+ TEncCu: coding style, lower case initial letter for totalCu
+ [97e917c4a923]
+
+ * source/CMakeLists.txt:
+ cmake: bump X265_BUILD post 0.6, since x265_param has changed
+ [6ed44381cb6c]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/cpu.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/vec/vec-primitives.cpp,
+ source/test/testbench.cpp:
+ cmake: rename ENABLE_PRIMITIVES_ASM to ENABLE_ASSEMBLY
+
+ And use the same name for the build define. Also, rename
+ Setup_Vector_Primitives() to Setup_Instrinsic_Primitives()
+ [f321d4a467fb]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/primitives.cpp, source/test/testbench.cpp:
+ cmake: remove ENABLE_PRIMITIVES_VEC build option
+
+ The use of the few remaining compiler intrinsic functions is now
+ unconditional. Compiler detection will remove them cleanly in case
+ they cannot be compiled, so there is no reason to make them a top
+ level build option
+ [a458b8d6b476]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/vec/intra-ssse3.cpp,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ primitives: cleanup intra prediction table dimensions
+ [49c0408febfd]
+
+ * source/common/CMakeLists.txt:
+ cmake: move asm-primitives.cpp and asm headers into VS source group
+
+ A cosmetic change only
+ [41e80c591116]
+
+ * source/encoder/compress.cpp:
+ Merge
+ [67d755e2a30c]
+
+2013-12-05 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm, source/test/intrapredharness.cpp:
+ all_angs_pred_4x4, asm code for all modes
+ [6d1b07d41cdd]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_12x16
+ [9d974915023f]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_8xN
+ [832d1d134449]
+
+2013-12-05 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad16-a.asm:
+ asm: 16bpp support for sad_x4 - all block sizes
+ [f864064737bc]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_6x8
+ [c83d6906f665]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for pixel_sub_4xN
+ [31b3bf1246c7]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.h, source/common/x86/pixel-util8.asm:
+ asm: 10bpp code for pixel_sub_2xN
+ [c36134873a8d]
+
+2013-12-05 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad16-a.asm:
+ asm: 16bpp support for sad_x3 - all block sizes
+ [8f3af42f7f44]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: primitives of sse_ss for 12x16, 24x32, 48x64 and 64xN blocks
+ [4c9b7eb235a9]
+
+2013-12-05 Min Chen <chenm003@163.com>
+
+ * source/common/x86/intrapred8.asm:
+ improvement by remove reduce ADD instruction in intra_pred_dc16
+ [c9a67d02ad1c]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/vec/intra-ssse3.cpp,
+ source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm, source/encoder/compress.cpp,
+ source/encoder/slicetype.cpp, source/test/intrapredharness.cpp,
+ source/test/intrapredharness.h:
+ cleanup:merge Intra Pred DC mode into intra_pred[]
+ [7febdbc37965]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 18
+ [91fe66f971d2]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 17 & 19
+ [59f0433ffca0]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 16 & 20
+ [d551487023ba]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 15 & 21
+ [2ae36352e08c]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 14 & 22
+ [88e38d7f926b]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 13 & 23
+ [7995a50e0fc2]
+
+ * source/test/intrapredharness.cpp:
+ testbench: swap order to call asm code
+
+ Our old intra_pred_ang algorithm will fill buffer before input pLeft
+ and pabove, in this time, the offset [-1] pixel equal to [4], it
+ affect detect asm code error, so I swap the order
+ [b9e0bfacfb8e]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 12 & 24
+ [e39c11970ca0]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 11 & 25
+ [c8641f015e5b]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm, source/test/intrapredharness.cpp:
+ asm: improvement intra_pred_ang by SSE4(pextrd,pextrb)
+ [c3d07f251bd8]
+
+2013-12-05 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for scale2D_64to32 routine
+ [1845917cb66d]
+
+2013-12-05 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/primitives.cpp:
+ integrating asm code for sa8d in primitives.cpp
+
+ there was no separate functions for sa8d in assembly, we are just
+ re-using sa8d_inter functions for sa8d.
+ [b7656aa5f346]
+
+2013-12-05 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intra-ssse3.cpp:
+ cleanup unused array intra_ang4[]
+ [70a042f36c2c]
+
+ * Merge branch 'X'
+ [78165334eed6]
+
+2013-12-04 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/x86/ipfilter8.h:
+ Function declarations for modified luma_hps and chroma_hps
+ functions.
+ [79d649d551f0]
+
+ * source/common/primitives.h, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h:
+ Test bench code for luma_hps and chroma_hps
+ [06f89ffdba43]
+
+ * source/common/ipfilter.cpp:
+ C primitive changes for luma_hps and chroma_hps.
+ [835ee97789af]
+
+ * source/common/x86/ipfilter8.asm:
+ asm : Modifications for luma_hps and chroma_hps(extra rows)
+ [6a0f7924321e]
+
+2013-12-05 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/intrapred.cpp, source/common/primitives.h,
+ source/common/vec/intra-ssse3.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/intrapred.h,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ asm: simplify code by use intra_pred_ang[][], and avoid build error
+ when disable yasm
+ [dcc2e11e5643]
+
+ * rename IntraPred.cpp to intrapred.cpp to avoid team's hg merge
+ conflict
+ [b04134971883]
+
+2013-12-04 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ rdlevel: skip Intra if inter/merge sa8d less than a threshold
+
+ In higher rdlevels Intra is skipped if inter/merge cu cbf is 0. A
+ threshold of sa8d expects that cu cbf will be 0. Thresholds have to
+ be refined further.
+ [e7424e0cb60f]
+
+ * source/encoder/compress.cpp:
+ rdlevel: compare Merge-skip(merge2Nx2N with no residue) to best
+ among inter/intra/merge in rdlevel 2
+ [4668ede3a332]
+
+ * source/encoder/compress.cpp:
+ rdlevel: Add code for rdlevel 2
+
+ Use signalling bits + sa8d cost to choose best among
+ inter/merge/intra. Encode only best mode at each depth.
+ [6694ef611b41]
+
+ * source/encoder/compress.cpp:
+ Enable topskip and earlyexit for all rd levels <= 4 (output changes
+ for presets faster than "slow")
+
+ Also use the encodeResandCalcRDInter instead of the refactored
+ estimate function.
+ [e44315ab36b9]
+
+2013-12-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: fix warning of potentially unused locals
+ [c8ca8c93083b]
+
+ * source/x265.cpp:
+ cli: fix final stat line handling of optional PSNR and SSIM stats
+ [ee8f2fa7d82a]
+
+2013-12-05 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp:
+ log: collect statistics after CU analysis
+
+ Report percentage of CU blocks encoded at each depth of P/B slice as
+ EncCU
+ [ed7c32d83490]
+
+2013-12-05 Steve Borho <steve@borho.org>
+
+ * source/common/x86/pixel-a.asm:
+ pixel-a: fix x64 calling convention for several HEVC satd functions
+
+ Bug fix from Min Chen
+ [64096a4dcdc1]
+
+2013-12-04 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: use -DHAVE_ALIGNED_STACK=1 when building asm for Xcode
+
+ This matches the command line we use in the Makefile, and prevents
+ stack corruption when debugging within Xcode
+ [f9d3154732d9]
+
+ * source/CMakeLists.txt:
+ cmake: workaround to allow Xcode 5 to link x265 CLI app
+ [d35b42382331]
+
+ * source/encoder/encoder.cpp:
+ encoder: remove trailing white-space
+ [e4a7885f377e]
+
+ * source/test/ipfilterharness.cpp:
+ oops
+ [834d6f7608c1]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness: do not test chroma for i400 color space
+
+ Because, umh, it doesn't have any chroma channels
+ [716ec3505f43]
+
+ * source/CMakeLists.txt, source/VectorClass/README.txt,
+ source/VectorClass/instrset.h, source/VectorClass/vectorclass.h,
+ source/VectorClass/vectori128.h, source/VectorClass/vectori256.h,
+ source/VectorClass/vectori256e.h, source/common/CMakeLists.txt,
+ source/common/vec/intra-ssse3.cpp, source/common/vec/ipfilter-
+ sse41.cpp, source/common/vec/pixel16-sse41.cpp, source/common/vec
+ /vec-primitives.cpp:
+ remove Agner Fog's vector classes and their last few users
+
+ We'll take a step back for HIGH_BIT_DEPTH perf for a few days, but
+ these functions are all expected to have assembly coverage soon.
+ This allows us to remove a few hacks from our cmake scripts as well.
+ [421a37d0924d]
+
+ * source/common/vec/pixel16-sse41.cpp:
+ vec: drop 16bpp sad vector intrinsics, we have ASM coverage
+ [304354e736dc]
+
+ * Merge
+ [2f41fae4a776]
+
+2013-12-04 Min Chen <chenm003@163.com>
+
+ * source/test/pixelharness.cpp:
+ fix crash in ssim_end testbench, the x264 support 10bpp only, but
+ testbench use 12bpp
+ [0716a8ca46b4]
+
+2013-12-04 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for scale1D_128to64 module
+ [58674cdab926]
+
+2013-12-04 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: 16bpp support for sa8d_64xN
+ [6aaea628af95]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: 16bpp support for sa8d_32xN
+ [2b6d31ae96e1]
+
+2013-12-04 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/pixel.cpp, source/common/x86/asm-primitives.cpp:
+ asm: 10bpp code for enabling ssim_end_4
+ [d73d32097efc]
+
+2013-12-04 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: 16bpp support for sa8d - 24x32 and 48x64
+ [61c46e787877]
+
+2013-12-04 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/const-a.asm, source/common/x86/intrapred8.asm:
+ asm: move constant to const-a.asm
+ [9b062eb8124e]
+
+2013-12-04 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for transpose 64x64
+ [f697c98cb63f]
+
+2013-12-04 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: 16bpp asm code for pixel_sa8d_16xN
+ [4547d3d03d1e]
+
+2013-12-04 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for transpose 32x32
+ [146aae425df2]
+
+2013-12-04 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ 16bpp: enabled avt32to16_shr and cvt16to32_shl assembly code
+ [c38d2f74432f]
+
+2013-12-04 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for transpose 16x16
+ [32bac98d3605]
+
+2013-12-04 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/CMakeLists.txt, source/common/x86/asm-primitives.cpp,
+ source/common/x86/sad16-a.asm:
+ 16bpp: assembly code for sad_NxN functions
+ [3602d193676d]
+
+2013-12-04 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 26
+ [346830caf664]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 10
+ [d142d2ba7168]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 9 & 27
+ [f8d0c7b5b502]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 8 & 28
+ [e37b4badaaa4]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 7 & 29
+ [2f49dab61e52]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 6 & 30
+ [2275a3803a80]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 5 & 31
+ [f6dbd8dcec6c]
+
+ * source/common/x86/intrapred8.asm:
+ asm: ALIGN branch target to improvement performance
+ [f35737d6abfe]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 4 & 32
+ [d4fe3e90aebf]
+
+2013-12-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ sbac: move global tables into x265 namespace
+ [1d2d60f4eb81]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: remove obsolete argument comment
+ [55c0bf9d9966]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/x86/asm-
+ primitives.cpp, source/encoder/compress.cpp:
+ Merge with stable
+ [4b455bb3caf6]
+
+ * .hgtags:
+ Added tag 0.6 for changeset b970ffbdd696
+ [6b7550eed359] <stable>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: fix for icpc build
+ [b970ffbdd696] [0.6] <stable>
+
+ * source/common/vec/intra-sse41.cpp, source/common/vec/intra-
+ ssse3.cpp:
+ vec: use square block size enums
+ [70dba94f6012]
+
+ * source/common/CMakeLists.txt, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/vec-primitives.cpp:
+ vec: remove pixel-sse41.cpp, we have full 8bpp pixelcmp coverage in
+ asm
+ [8c32edd92522]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ tskip: temporary workaround for heap corruption
+
+ When tskip is enabled and tu-intra-depth is > 1 and --ctu is 64, we
+ often see heap corruption when the encoder is destroyed. Disabling
+ transform-skip on chroma seems to be an effective workaround until
+ we can find a proper fix.
+ [8e107ce14b43] <stable>
+
+2013-12-03 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/compress.cpp:
+ aq: bug fix for hash mismatch between recon with decoded output
+ [c541804106c7] <stable>
+
+2013-12-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ partial backout of 9cfe20b782da
+
+ Aarthi was correct, getSliceType() returns an HM SliceType enum.
+ Five lines above this it was testing whether getSliceType() ==
+ I_SLICE.
+
+ It is far less than optimal that we have two sets of slice type
+ definitions, but we have to be careful not to mix them up.
+ [432a87f546cd]
+
+2013-12-03 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/intra-sse41.cpp:
+ fix 16bpp build fail due to intra-sse41.cpp
+ [6cc25bb700fc]
+
+2013-12-03 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse41.cpp:
+ Backed out changeset: 8a3bb3ecf8f6
+ [552d46bc20a9]
+
+ * Merge
+ [80938e33bb04]
+
+2013-12-03 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util8.asm:
+ asm: 10bpp code for transpose 4x4 and 8x8
+ [c9fe21f4676e]
+
+2013-12-03 Min Chen <chenm003@163.com>
+
+ * Merge branch 'X'
+ [04350bfb3147]
+
+2013-12-03 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/ssd-a.asm:
+ asm: 10bpp code for pixel_sse_pp for 12x16, 24x32 and 64xN
+ [78aa21f66013]
+
+2013-12-03 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: pixel_satd_32xN for 16bpp
+ [f8b0946edc8f]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: pixel_satd_64xN for 16bpp
+ [b4740dcd1621]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: pixel_satd - 12x16, 24x32, 48x64 for 16bpp
+ [69c110c3751b]
+
+2013-12-03 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/sad-a.asm:
+ asm: pixel_sad_64xN reduce large code size
+ [ca60c165ba4b]
+
+2013-12-03 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/ssd-a.asm:
+ asm: 10bpp fix for alignment in sse_ss routine
+ [cd018d294e96]
+
+2013-12-03 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/const-a.asm,
+ source/common/x86/intrapred.h, source/common/x86/intrapred8.asm,
+ source/test/intrapredharness.cpp:
+ asm: assembly code for IntraPredAng4x4 Mode 3 & 33
+ [9f7dad70e6a9]
+
+ * source/common/x86/const-a.asm, source/common/x86/dct8.asm:
+ asm: support IDCT4-10bpp
+ [6f284a447088]
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred8.asm,
+ source/test/intrapredharness.cpp:
+ asm: intra_pred_ang Mode 34
+ [21adddaee460]
+
+ * source/common/x86/blockcopy8.asm:
+ asm: fix xmm register error in cvt16to32_shl
+ [7fa921f5845d]
+
+2013-12-02 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: 10bpp support to sse_ss for 8xN, 16xN and 32xN blocks
+ [102b5042e596]
+
+2013-12-02 Min Chen <chenm003@163.com>
+
+ * source/common/x86/mc-a.asm, source/common/x86/mc.h:
+ asm: fix miss avg_64x32
+ [b2c7a7310e9f]
+
+2013-12-02 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm:
+ 16bpp: assembly code for pixelavg_pp
+ [3fea1dd70211]
+
+2013-12-02 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/vec/intra-sse41.cpp:
+ fix: bug in inra-sse41.cpp
+ [8a3bb3ecf8f6]
+
+2013-12-02 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intra-ssse3.cpp, source/common/x86/intrapred.h,
+ source/common/x86/intrapred8.asm:
+ asm: assembly code for IntraPredAng4x4 Mode 2
+ [f1ccd8eab389]
+
+ * source/common/primitives.h:
+ fixup proto of intra_pred_ang_t
+ [5457fd3a26a7]
+
+2013-12-03 Min Chen <chenm003@163.com>
+
+ * source/test/pixelharness.cpp:
+ testbench: increment buffer size to avoid crash in check_pixeladd_ss
+ [21fe86adaa9a]
+
+2013-12-03 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/compress.cpp:
+ aq: bug fix for hash mismatch between recon with decoded output
+ [660ec2c02798]
+
+2013-12-03 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.cpp,
+ source/encoder/cturow.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ define new rdlevels, default presets changed accordingly.
+
+ levels 6,5 equivalent to current rd 2, 4 equivalent to current rd 1,
+ and rest equivalent to rd 0. More parameters will be added to
+ distinguish each levels.
+ [86d23688b017]
+
+ * source/encoder/encoder.cpp:
+ Move rdoQTS initialization after rdoQ is set.
+ [9f96817c8894]
+
+2013-12-02 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/common.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp:
+ cuTree: integrated CuTree into RateControl and Added b-references
+ into RC
+ [9cfe20b782da]
+
+2013-12-03 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ heap corruption: temporarily disable tskip in chroma.
+
+ Temporary fix for the crash caused by enabling tskip in chroma.
+ [f539fa01f20c]
+
+2013-12-02 Steve Borho <steve@borho.org>
+
+ * source/common/TShortYUV.cpp, source/common/TShortYUV.h,
+ source/common/vec/intra-sse41.cpp, source/input/y4m.cpp:
+ Merge with stable
+ [ca7bd538e052]
+
+ * source/input/y4m.cpp:
+ y4m: initialize colorSpace to avoid crashes after failing to parse
+ y4m header
+ [40f9842972da] <stable>
+
+ * source/common/vec/intra-sse41.cpp:
+ vec: disable allangs 32x32 intrinsic primitive for clang
+
+ clang seems to compile it ok, and the testbench passes, but it
+ causes runtime exceptions when used within the encoder.
+ [353a34a5d35f] <stable>
+
+ * source/common/TShortYUV.cpp, source/common/TShortYUV.h:
+ Backed out changeset: 5df643257054
+
+ This was causing memory corruption when --tskip and --rd=2 were used
+ together. It needs to be further investigated and fixed on the
+ default branch.
+ [c2911115b79a] <stable>
+
+ * source/common/x86/pixel-a.asm, source/common/x86/pixel.h:
+ asm: make it more clear that pixel-a.asm has only satd and sa8d now
+ [70e127d735a5]
+
+ * source/common/CMakeLists.txt, source/common/x86/pixel-a.asm,
+ source/common/x86/ssd-a.asm:
+ asm: move ssd functions into their own ssd-a.asm file, similar to
+ sad-a.asm
+ [a9f629fac91e]
+
+ * source/common/x86/pixel-a.asm, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/common/x86/pixel.h:
+ asm: move variance functions to pixel-util8.asm
+ [eea094a84b9c]
+
+ * source/common/x86/mc.h, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm,
+ source/common/x86/pixel.h:
+ asm: move pixel_sub to pixel-util8.asm, move pixel_avg funcdef to
+ mc.h
+ [2de04bb5da1d]
+
+ * source/common/x86/pixel-a.asm:
+ pixel: remove an unused macro
+ [2ed3b664c370]
+
+ * source/common/x86/pixel-a.asm, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/common/x86/pixel.h:
+ asm: move scale functions to pixel-util
+ [a439c19ee304]
+
+ * source/common/x86/pixel-a.asm, source/common/x86/pixel-util.h,
+ source/common/x86/pixel-util8.asm, source/common/x86/pixel.h:
+ asm: move SSIM functions to pixel-util
+ [b091438d1446]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel-util.h, source/common/x86/pixel-util8.asm,
+ source/common/x86/pixel.h:
+ asm: move transpose from pixel-a.asm to pixel-util8.asm, add pixel-
+ util.h
+ [a182faf23ead]
+
+ * source/common/x86/pixel.h:
+ asm: remove more unused funcdefs from pixel.h
+ [41c6dc5b35e8]
+
+ * source/common/x86/blockcopy8.asm, source/common/x86/pixel-util8.asm:
+ asm: move cvt* functions to blockcopy8.asm
+ [b6766dc86e2a]
+
+ * source/encoder/frameencoder.cpp, source/encoder/ratecontrol.cpp:
+ rc: fixups for cutree changes
+ [dab34fa63c0c]
+
+2013-12-02 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/pixel.h:
+ asm: removed unused function defnitions from pixel.h
+ [47ddbf9b5866]
+
+2013-12-02 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/pixel.h, source/common/x86/sad-a.asm:
+ cleanup: removed unused code from sad-a.asm
+ [a615a46d4631]
+
+2013-12-02 Steve Borho <steve@borho.org>
+
+ * source/common/pixel.cpp:
+ picel: fix compile error from older gcc
+ [4508b8c923e6]
+
+ * source/common/CMakeLists.txt:
+ cmake: fix Win64 vector primitive compile flags
+ [ccf65888fc2c]
+
+ * Merge with stable
+ [d8d716eb11b8]
+
+2013-12-02 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/WeightPredAnalysis.cpp:
+ fix for the number of weighted references exceeding 8 in HM weight
+ analysis
+ [bf778de26451] <stable>
+
+2013-12-02 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: fix for gcc warnings
+ [0a8023666206]
+
+2013-12-02 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/pixel-a.asm:
+ asm: removed unused code from pixel-a.asm
+ [df0b4f81609e]
+
+2013-12-02 Steve Borho <steve@borho.org>
+
+ * source/common/pixel.cpp:
+ pixel: fix 16bpp warnings that were previously hidden by cmake rules
+ [0a85121531fc]
+
+2013-12-02 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/common.cpp, source/common/lowres.cpp,
+ source/common/lowres.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h, source/x265.h:
+ slicetype: CuTree Implementation for AQ RateControl
+
+ Added Following methods into slicetype for CuTree Implementation
+ 1.cuTree - Entry Point for CuTree 2.estimateCUPropagate and
+ estimateCUPropagateCost - Calculate the CU Propagate cost for CU's
+ 3.cuTreeFinish - update the qpOffset using Precomputed
+ PropagateCost, weightedCostDelta and lookahead costs
+
+ Added cuTree option into param->rc and make it as a Disable, still
+ the cuTree is an Under Construction
+ [c75c3431b108]
+
+2013-12-02 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt:
+ cmake: nits
+ [189ac76266a9]
+
+ * source/common/CMakeLists.txt:
+ cmake: ignore gcc warnings in vector intrinsic files
+ [bb65f4686d68]
+
+2013-12-01 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/vec/pixel-ssse3.cpp,
+ source/common/vec/vec-primitives.cpp:
+ vec: remove pixel-ssse3.cpp, its last function has asm coverage
+ [bd3fad7cffec]
+
+ * source/common/CMakeLists.txt, source/common/vec/dct-sse3.cpp,
+ source/common/vec/dct-ssse3.cpp, source/common/vec/intra-sse41.cpp,
+ source/common/vec/ipfilter-ssse3.cpp, source/common/vec/pixel-
+ sse41.cpp, source/common/vec/pixel16-sse41.cpp:
+ cmake: ignore unreferenced formal paramter warnings in common/vec
+
+ And remove all the hacks that were in place to avoid those warnings
+ [b4eef7d41af1]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: nits
+ [e83550d5f10d]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: 16bpp fixup
+ [5db9eba4b2df]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/common.cpp,
+ source/common/cpu.cpp, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy-sse3.cpp, source/common/vec/dct-
+ sse3.cpp, source/common/vec/dct-ssse3.cpp, source/common/vec/intra-
+ sse41.cpp, source/common/vec/intra-ssse3.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/blockcopy8.h,
+ source/common/x86/ipfilter8.h, source/common/x86/pixel.h,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/motion.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h,
+ source/input/y4m.cpp, source/input/yuv.cpp, source/output/y4m.cpp,
+ source/output/yuv.cpp, source/test/intrapredharness.cpp,
+ source/test/ipfilterharness.cpp, source/test/pixelharness.cpp,
+ source/test/testbench.cpp, source/x265.h:
+ uncrustify all source
+ [5bf05c39e566]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ Merge with stable
+ [7f2bc20e9ff1]
+
+ * source/encoder/encoder.cpp, source/x265.def.in, source/x265.h:
+ api: add alloc/free methods for x265_picture for future safety
+ [32942ebd5793] <stable>
+
+ * source/encoder/encoder.cpp, source/x265.cpp, source/x265.def.in,
+ source/x265.h:
+ api: add alloc/free methods for x265_param
+
+ This allows apps to use x265_param as pure abstract structures, just
+ like x265_encoder, in order to make their app future-safe against
+ changes to x265_param (without requiring recompiles or code
+ changes).
+ [aabaf5382ac5] <stable>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/encoder/slicetype.cpp, source/x265.cpp, source/x265.h:
+ api: change x265_param.bpyramid to bBPyramid (bool)
+
+ x264's strict bpyramid mode seems to be H.264/blue-ray specific and
+ thus we are left with only on or off.
+ [53b1eeb6333b] <stable>
+
+ * source/encoder/encoder.cpp:
+ csv: improve CSV headers to use title caps
+ [418e55eefbb8] <stable>
+
+ * source/test/intrapredharness.cpp:
+ test: intrapred harness fixup
+ [0547f1672f13]
+
+ * source/encoder/encoder.cpp:
+ encoder: nits
+ [d17843e942b5]
+
+2013-11-08 Xun Xu, PPLive Corporation <xunxu@pptv.com>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/x265.cpp, source/x265.h:
+ rc: initial work towards VBV rate control
+
+ 1. add parameter "vbv-maxrate" "vbv-bufsize" "vbv-init" into cmd
+ line 2. implement vbv methods, this patch doesn't use lookahead data
+
+ future work, 1. vbv-lookahead 2. CU level ratecontrol
+ [8a90153de720]
+
+2013-12-01 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse41.cpp:
+ vec: drop intra planar intrinsic primitives, we have asm coverage
+ [343d9ba487b2]
+
+ * source/test/intrapredharness.cpp:
+ intra: testbench fixups after dropping 64x64 C refs
+ [81c09b55acf1]
+
+ * source/common/vec/dct-sse3.cpp, source/common/vec/dct-ssse3.cpp:
+ vec: remove two DCT intrinsic primitives with asm coverage
+ [9facac4f81f7]
+
+ * source/common/intrapred.cpp:
+ intrapred: fix func decl of intra-ang C ref
+ [50261fa292ad]
+
+ * source/common/intrapred.cpp:
+ intrapred: use square block defines, do not instantiate intra 64x64
+ [3409078021ac]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: plumb out more 16bpp asm setup infrastructure
+ [776fc3575e2d]
+
+2013-11-29 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ 10bpp: asm code for pixel_var_32x32 and 64x64
+ [803048f62317]
+
+2013-11-29 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/vec/dct-sse41.cpp, source/common/x86/asm-
+ primitives.cpp:
+ Enable idst4 asm
+ [d8c523bd9f90]
+
+ * source/common/x86/dct8.asm, source/common/x86/dct8.h:
+ asm : Adding asm routine for idst4
+ [3e8c280b16a6]
+
+2013-11-29 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/vec/intra-ssse3.cpp,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ size based array for intra_pred_ang[]
+ [cc7bb2f18d01]
+
+2013-11-28 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: enabled asm routines for HIGH_BIT_DEPTH, which has the support
+ for 16bpp
+ [bb776ea49cba]
+
+2013-11-28 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/vec/dct-ssse3.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/dct8.asm,
+ source/common/x86/dct8.h:
+ asm : Adding asm routine for dst4.
+ [2ab09fab2826]
+
+2013-11-28 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.h, source/common/x86/pixel-util8.asm:
+ asm: assembly code for cvt16to32_shl
+ [9bda4cecf6c0]
+
+2013-11-28 Min Chen <chenm003@163.com>
+
+ * source/common/primitives.h:
+ cleanup: remove unused cvt16to16_shl_t
+ [8f1a72797abb]
+
+2013-11-28 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ testbench: added cvt16to32_shl primitive function
+ [f9935384fa2a]
+
+2013-12-01 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove sse_sp intrinsic primitives, we have asm coverage
+ [5857fdc3c3ff]
+
+2013-11-28 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h:
+ asm: cleanups for pixel_sse_sp
+ [8a9a0ef760e8]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_4xN
+ [052a1b094def]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_12x16
+ [8683adc61bec]
+
+2013-11-28 Min Chen <chenm003@163.com>
+
+ * source/common/CMakeLists.txt, source/common/x86/intrapred.asm,
+ source/common/x86/intrapred8.asm, source/common/x86/pixel-util.asm,
+ source/common/x86/pixel-util8.asm:
+ rename to avoid 10bpp conflict
+ [016709ae6264]
+
+2013-11-28 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/intrapred.h:
+ asm: assembly code for intra_pred_planar[32x32]
+ [e6a32d404e18]
+
+2013-11-30 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge from stable
+ [2786f9e92560]
+
+ * source/common/common.cpp:
+ presets: bpyramid default value reset to 1
+
+ No support for strict b-pyramid yet.
+ [87dc694fc016] <stable>
+
+ * source/encoder/encoder.cpp:
+ ssim: increase precision in ssim reporting
+ [b08f3853adb9] <stable>
+
+2013-11-29 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge from stable
+ [833d78aaf71e]
+
+ * source/common/common.cpp:
+ presets: correct bframes in "slow" to 4
+ [fb93582b5f3f] <stable>
+
+ * source/encoder/compress.cpp:
+ compress: cleanup
+ [ac01f12310ed]
+
+ * source/encoder/compress.cpp:
+ compress: save distortion info in xComputeCostInter.
+ [2559b4c52148]
+
+ * source/encoder/compress.cpp:
+ compress: save best bits, sad in xcomputeCostIntrainInter
+ [a7d2fb189311]
+
+ * source/encoder/compress.cpp:
+ compress: disable EARLY_EXIT and TOP_SKIP (temporarily)
+ [e0036ec4a61b]
+
+2013-11-28 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [e7a5780843de]
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: tab to spaces
+ [2456d360a4ce] <stable>
+
+2013-11-29 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ presets: modifications to smoothen the performance-efficiency plot.
+ [bcc0941f67b3] <stable>
+
+2013-11-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ RD merge: refine merge costs with estimated merge mode bits.
+ [42892f4f4cc2]
+
+2013-11-28 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/vec/vec-primitives.cpp:
+ cmake: gcc flag introspection to fix Mac OS X 10.6 build
+ [38719294293f] <stable>
+
+2013-11-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ RD merge: add in early-skip param.
+ [2ba6c26c9feb]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ RD merge: remove earlyDetectionSkip, output is unchanged.
+ [ca8c57f0c532]
+
+ * source/encoder/compress.cpp:
+ RD merge: remove more redundant set-fields
+ [54379de63b85]
+
+2013-11-27 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ merge2nx2n: move initializations out of the loop
+
+ Only mergeIndex and MVs will be changed in each loop.
+ [f516ff5d6af3]
+
+2013-11-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ RD: use sa8d in inter/merge cost measurements instead of satd
+ [0c2a9f913c0b]
+
+ * source/encoder/compress.cpp:
+ RD: change cost measurements for inter
+
+ The cost calculation for inter modes now use cost = satd(orig, pred)
+ + lambda*mebits. This is an estimation to the actual RD-cost.
+ [0ab1c01bf952]
+
+2013-11-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: change default frameNumThreads for 4-core HT CPUs to 3
+ [f92e0c49a9f0] <stable>
+
+2013-11-27 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp:
+ Fix to eliminate unwanted application of weight in some (ref, enc)
+ pairs
+ [bfd5204ef226] <stable>
+
+2013-11-27 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ aq: Bug Fixes in aq , ssim when ctu size is not set as 64.
+
+ 1.Calculate qp offset for CU based maxCuSize set in
+ FrameEncoder::calcQpForCu 2.Fix height for ssim computation based on
+ maxCuHeight in FrameFilter::processRowPost
+ [6eb45b5bf181] <stable>
+
+2013-11-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: use more portable %PRIu64, define __STDC_FORMAT_MACROS
+
+ Older GCC versions and clang require __STDC_FORMAT_MACROS to be
+ defined prior to including stdint.h when compiling for C++, in order
+ for PRIu64 and friends to be defined
+ [13f60881bf01] <stable>
+
+ * Merge with stable
+ [949f85337789]
+
+ * source/encoder/CMakeLists.txt, source/encoder/encoder.cpp:
+ cmake: detect inttypes.h and use for uint64_t printfs
+ [e4baf53cefe8] <stable>
+
+ * source/common/vec/intra-sse41.cpp:
+ vec: remove intra_pred_planar16_sse4, we have asm coverage
+ [892addcb1c94]
+
+ * source/common/vec/pixel-ssse3.cpp:
+ vec: remove scale2D_64to32, we have asm coverage
+ [c5efe0603b61]
+
+ * source/common/x86/intrapred.asm:
+ intra: fix yasm warning about redefined macro
+ [04811b42aa6b]
+
+ * Merge
+ [ec904fab863a]
+
+2013-11-27 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_24x32
+ [cf5c2f982353]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_8xN
+ [54ba57708276]
+
+2013-11-27 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/vec/dct-sse3.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/dct8.h:
+ Enable the idct4 asm routine.
+ [7dbe6495ebb8]
+
+ * source/common/x86/dct8.asm:
+ asm: Adding asm routine for idct4
+ [e463501f8a20]
+
+ * source/common/x86/const-a.asm:
+ Adding constant tables used for idct4 asm routine
+ [a49c0228e06e]
+
+2013-11-27 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: pixel_sse_ss_64xN assembly routine
+ [bf7cf2555571]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: pixel_sse_ss_48x64 assembly routine
+ [45ce09834506]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: pixel_sse_ss_24x32 assembly routine
+ [8edf6fa32a74]
+
+2013-11-27 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_64xN
+ [248a56faff0a]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_48x64
+ [6051967b60cd]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_32xN
+ [aeb1c93c69d2]
+
+ * source/common/pixel.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-a.asm, source/common/x86/pixel.h:
+ asm: code for pixel_var_32x32 and 64x64 blocks
+ [8846d37b3d9c]
+
+2013-11-27 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/intrapred.h:
+ asm : assembly code for intra_pred_planar[16x16]
+ [09b5e8f592ac]
+
+2013-11-27 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: fix the alignment issues occured in sse_ss
+ [9c60abb71cf6]
+
+2013-11-18 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for scale2D_64to32 routine
+ [78c171e33865]
+
+2013-11-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h, source/common/reference.cpp,
+ source/common/reference.h, source/common/vec/blockcopy-avx2.cpp,
+ source/common/vec/intra-sse3.cpp, source/common/vec/pixel-avx2.cpp,
+ source/common/vec/pixel-sse3.cpp, source/compat/msvc/LGPL.txt,
+ source/compat/msvc/getopt.c, source/compat/msvc/getopt.h:
+ Merge with default (feature freeze for 0.6)
+
+ Bug fixes and tunings only on the stable branch, until the next tag
+ is issued.
+ [417f794274e5] <stable>
+
+ * source/encoder/encoder.cpp:
+ encoder: do not print weightp stats if no P frames were generated
+
+ (prevents NAN or worse errors)
+ [ece323e1b603]
+
+ * source/encoder/encoder.cpp:
+ log: replace "Skip" with more accurate "Merge"
+ [eadcdeb661bc]
+
+2013-11-26 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse41.cpp:
+ vec: drop intra_pred_planar 4x4 and 8x8 intrinsic primitives, we
+ have asm
+ [b09b6fa7e89a]
+
+ * source/encoder/encoder.cpp:
+ encoder: return pic.sliceType = X265_TYPE_IDR if keyframe
+ [39286dff86ea]
+
+ * source/common/vec/dct-sse41.cpp:
+ vec: drop dequant_normal intrinsic primitive, we have asm
+ [5b5d37ef369a]
+
+ * source/common/vec/dct-sse3.cpp:
+ vec: remove dct4 intrinsic primitive
+ [543390a8644c]
+
+ * Merge
+ [ba8e95798860]
+
+2013-11-26 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/vec/dct-sse3.cpp, source/common/x86/asm-
+ primitives.cpp:
+ Enable the new dct4 asm routine.
+ [5e3b1d59d8dd]
+
+ * source/common/CMakeLists.txt:
+ Adding dct8.asm and dct8.h to CMakeLists
+ [51b6d0c6ecf5]
+
+ * source/common/x86/const-a.asm:
+ Adding constant table used for dct4
+ [78431cd16bb5]
+
+ * source/common/x86/dct8.asm, source/common/x86/dct8.h:
+ asm: assembly code for dct4x4
+ [e9ac715f16cf]
+
+ * source/common/x86/pixel-util.asm:
+ asm: Correct number of xmm registers for weight_sp routine.
+ [8bc370263676]
+
+2013-11-26 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/intrapred.h:
+ asm: assembly code for intra_pred_planar[8x8]
+ [13fe158374e7]
+
+2013-11-26 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for pixel_sse_sp_16xN
+ [3791482e68f5]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h, source/encoder/ratecontrol.cpp,
+ source/test/pixelharness.cpp:
+ asm: removed unused code in pixel_var module
+ [a903be46b40d]
+
+2013-11-26 Min Chen <chenm003@163.com>
+
+ * source/common/dct.cpp:
+ fix: in 14bpp mode, maximum shift is 10
+ [7b48cda38797]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/encoder/framefilter.cpp, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ asm: active x264 ssim code
+
+ Side effect: Remove ssim_t to avoid conflict with x264 asm code we
+ use int64_t when HIGH_BIT_DEPTH enable, but x264 always 'int'
+ [63a87d839bed]
+
+2013-11-25 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove intrinsic pixel weight functions, we have asm coverage
+ [491fd3ee6fd1]
+
+2013-11-26 Steve Borho <steve@borho.org>
+
+ * source/x265.h:
+ api: document a few rate control settings
+ [5accd2ae5ceb]
+
+2013-11-26 Min Chen <chenm003@163.com>
+
+ * source/common/x86/pixel-a.asm, source/common/x86/pixel-util.asm,
+ source/common/x86/pixel.h:
+ asm: fix build error on x64
+ [116d91f08fcb]
+
+2013-11-26 chenm003 <chenm003@163.com>
+
+ * source/common/dct.cpp, source/common/x86/asm-primitives.cpp:
+ 合并 multicoreware/x265 到 default
+ [06d509e2e687]
+
+2013-11-25 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/pixel.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-a.asm, source/common/x86/pixel.h:
+ asm: code for pixel_var_16xN
+ [672ae35d4e5f]
+
+2013-11-25 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sse_ss_32xN
+ [8075b13cee00]
+
+2013-11-25 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/intrapred.h:
+ asm: assembly code for intra_pred_planar[4x4]
+ [6a8fbb091722]
+
+2013-11-25 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/pixel.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-a.asm, source/common/x86/pixel.h:
+ asm: code for pixel_var_8xN
+ [da18434af735]
+
+2013-11-25 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sse_ss_12x16
+ [71262c718dfa]
+
+2013-11-25 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ Test bench: code for pixel_var
+ [529bd0084265]
+
+2013-11-25 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: assembly code for sse_ss - 4xN, 8xN, 16xN
+ [7cab79758dd7]
+
+2013-11-25 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp:
+ Test bench modifications for weight_sp() asm routine
+ [3e688d424f05]
+
+ * source/common/vec/pixel-sse41.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/pixel.h:
+ Adding asm function declaration and initialization for weight_sp asm
+ routine
+ [47ef19a1734c]
+
+ * source/common/x86/pixel-util.asm:
+ asm : routine for weight_sp().
+ [d9d6b8b4e4f1]
+
+2013-11-25 Min Chen <chenm003@163.com>
+
+ * source/common/x86/const-a.asm, source/common/x86/ipfilter8.asm:
+ asm: move constant 8192 to const-a.asm for share
+ [a5c7cd496583]
+
+2013-11-25 Nabajit Deka <nabajit@multicorewareinc.com>
+
+ * source/common/vec/pixel-sse41.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/pixel.h:
+ Adding asm function declaration and initialization for weight_pp asm
+ routine.
+ [be74f1731279]
+
+ * source/test/pixelharness.cpp:
+ Test bench modifications for weight_pp() asm routine.
+ [13126513fe61]
+
+ * source/common/x86/pixel-util.asm:
+ asm : routine for weight_pp(), for input width in multiples of 16
+ [3e4c257d88ab]
+
+2013-11-25 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ cleanup the temporary function pointer initialization
+ [b54870f0cdd3]
+
+2013-11-25 Min Chen <chenm003@163.com>
+
+ * source/common/dct.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-util.asm, source/common/x86/pixel.h:
+ asm: assembly code for dequant_normal
+ [67e8ecb2b0e5]
+
+ * source/common/x86/mc-a.asm:
+ cleanup: remove unused code in mc-a.asm
+ [9c7142ced7c4]
+
+2013-11-24 Min Chen <chenm003@163.com>
+
+ * source/common/x86/pixel-a.asm:
+ cleanup: remove unused constant in pixel-a.asm
+ [c0c862dc71fb]
+
+ * source/common/x86/pixel-a.asm:
+ cleanup: remove unused code in pixel-a.asm
+ [513f564ba360]
+
+ * source/common/x86/mc-a2.asm:
+ cleanup: remove unused code in mc-a2.asm
+ [464af047f7b1]
+
+2013-11-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: do not warn of b-pyramid and small bframe value
+
+ Many default presets can do this, it is harmless
+ [fdaa754dfbd4]
+
+ * source/encoder/encoder.cpp:
+ log: shorten Planar to P
+ [e607520863c0]
+
+ * source/encoder/encoder.cpp:
+ log: do not output statistics for disabled features
+ [484ac0c345a2]
+
+ * source/common/dct.cpp:
+ dct: remove unused static array
+ [81f4e226c5a3]
+
+ * source/encoder/encoder.cpp:
+ encoder: compilers can't agree on how to print long longs
+ [319881b4ebf3]
+
+2013-11-25 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp,
+ source/encoder/encoder.cpp:
+ log: improve statistics display
+
+ represent 4x4 statistics for I frame, combine I frame log in single
+ line, preserve space in log
+ [c7b97ebc1c9b]
+
+2013-11-24 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: repair ICL compile on Windows
+ [864f4664c775]
+
+2013-11-22 Steve Borho <steve@borho.org>
+
+ * source/common/vec/vec-primitives.cpp:
+ clang: remove compilation guards around
+ Setup_Vec_IPredPrimitives_sse41()
+
+ Now that a number of primitives have been replace by assembly, the
+ functions are safe.
+ [10f605bd0530]
+
+ * source/common/CMakeLists.txt, source/common/vec/pixel-sse3.cpp,
+ source/common/vec/pixel-ssse3.cpp, source/common/vec/vec-
+ primitives.cpp:
+ cmake: merge pixel-sse3.cpp into pixel-ssse3.cpp
+
+ Both files only had one primitive each, and they will both probably
+ be replaced soon
+ [e5db4a4859ee]
+
+ * source/common/vec/pixel-ssse3.cpp:
+ pixel-ssse3: remove scale1D_128to64, we have ASM
+ [7e2694f9a226]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel-sse41: cleanup intrinsic weight function names
+ [a6da40d0584f]
+
+ * source/common/vec/intra-sse41.cpp:
+ vec: remove intrinsic predDCFiltering() and intra_pred_dc(), we have
+ ASM
+ [285fe7a59cf5]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: remove assignements to square block sa8d[] methods
+
+ These are handled specially in x265_setup_primitives()
+ [e28d9b6b5d65]
+
+2013-11-22 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ crf: bug fix. regulate qp of first frame based on ABR_INIT_QP.
+ [e6ec06cf5d3d]
+
+2013-11-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [cc075ae1098f]
+
+2013-11-20 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ no-rdo: implemented topskip algorithm
+
+ It is basically setting the starting depth from which the
+ partitioning should happen for particular CU. The starting depth for
+ particular CU in present frame is selected form the previous frame's
+ colocated CU minimum depth.
+
+ the performance, bitrate increase and psnr comparison are given
+ below CLI: x265.exe input.y4m -o abc.hevc -r recon.y4m --rd 1 --ref
+ 1 a. Early exit OFF and Top Skip OFF b. Early exit OFF and Top Skip
+ ON
+
+ BasketballDrive_1920x1080_50 Timetaken to encode: 681/639s bitrate:
+ 3650/3657 kb/s PSNR: 36.7/36.703 perf improvement: 6.16% (compared
+ to TopSkip OFF and ON) Bitrate increase: 0.19% (compared to TopSkip
+ OFF and ON)
+
+ Cactus_1920x1080_50 Timetaken to encode: 530/492s bitrate: 2787/2795
+ kb/s PSNR: 35.527/35.529 perf improvement: 7.16% (compared to
+ TopSkip OFF and ON) Bitrate increase: 0.28% (compared to TopSkip OFF
+ and ON)
+
+ Kimono1_1920x1080_24 Timetaken to encode: 278/264s bitrate:
+ 1243/1246 kb/s PSNR: 38.16/38.16 perf improvement: 5.03% (compared
+ to TopSkip OFF and ON) Bitrate increase: 0.24% (compared to TopSkip
+ OFF and ON)
+
+ FourPeople_1280x720_60 Timetaken to encode: 173/163s bitrate:
+ 486/492 kb/s PSNR: 39.097/39.094 perf improvement: 5.78% (compared
+ to TopSkip OFF and ON) Bitrate increase: 1.2% (compared to TopSkip
+ OFF and ON)
+
+ PartyScene_832x480_50 Timetaken to encode: 134/119s bitrate:
+ 1652/1661 kb/s PSNR: 31.374/31.377 perf improvement: 11.16%
+ (compared to TopSkip OFF and ON) Bitrate increase: 0.544% (compared
+ to TopSkip OFF and ON)
+
+ big_buck_bunny_360p24 Timetaken to encode: 1772/1477s bitrate:
+ 174/175 kb/s PSNR: 37.798/37.797 perf improvement: 16.6% (compared
+ to TopSkip OFF and ON) Bitrate increase: 0.5% (compared to TopSkip
+ OFF and ON)
+ [b6323f2be057]
+
+2013-11-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ lookahead primitives: fix bug that caused wrong cost estimates in
+ ducks_take_off.
+ [28f42f1be951]
+
+2013-11-22 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: drop intrinsic sse_pp functions, we have ASM coverage
+ [1c74d7bfd007]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix the other header buffer
+ [3c827bba6cd6]
+
+2013-11-22 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv::addClipChroma, integrated pixel_add_ps function
+ [cc123a1ec253]
+
+2013-11-22 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code of sse_pp routine for 64x32, 64x48 and 64x64 blocks
+ [f082c556f337]
+
+2013-11-22 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ added blockcopy_sp function pointers
+ [4b437f76280d]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv::addClip, integrated luma_add_ps
+ [fd90bd911169]
+
+2013-11-22 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code of sse_pp routine for 48x64 and 64x16 blocks
+ [2e0a0a5eb0c7]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for sse_pp_24x32 routine
+ [0b9bccb2ef7f]
+
+2013-11-22 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm-primitives.cpp, removed temporary function pointer
+ initialization, generated through macro calls
+ [76e2c787aadb]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_64xN, asm code
+ [e7eeb6443303]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_48x64, asm code
+ [3847098e9553]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_12x16, asm code
+ [9f34d1d82296]
+
+2013-11-22 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for sse_pp_12x16 routine
+ [f09ca4290a55]
+
+2013-11-22 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/vec/dct-sse41.cpp,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ split dequant to normal and scaling path
+ [4ec80bd40603]
+
+ * source/test/pixelharness.cpp:
+ fix bug for testbench string buffer overflow
+ [ab94f6effb71]
+
+2013-11-22 Steve Borho <steve@borho.org>
+
+ * source/common/cpu.cpp:
+ cpu: fix non-Windows build with ASM disabled
+ [5009254d3d3a]
+
+ * source/CMakeLists.txt:
+ cmake: backout cmake_policy(); cmake is idiotic
+
+ Why would you issue an error if your version of cmake doesn't know
+ about the given policy? Especially if the selected policy is OLD?
+ Hello??
+ [830deb5fb3d3]
+
+2013-11-21 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/common/CMakeLists.txt:
+ cmake: almost revive Xcode support
+
+ # macbrew based instructions brew install cmake --HEAD cmake -G
+ Xcode ../source open x265.xcodeproj
+
+ > cmake --version cmake version 2.8.12.20131121
+
+ The static library is still not linking properly, so the cli does
+ not link as well; but it does build the shared library
+ [f4e10e4d3f0d]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: use fast weighted subpel refine
+
+ Don't do the full-blown weighted motion compensation for ME. Just
+ interpolate the weighted full pel pixels. It is not 100% accurate to
+ the pixels that will be used to encode the final prediction; but
+ close enough for ME.
+
+ Testing with sintel_trailer_2k_720p24.y4m at medium preset and all
+ defaults x265 [info]: 651 of 1124 (57.92%) P frames weighted
+
+ before: 1253 frames in 512.74s (2.44 fps), 223.51 kb/s, Global PSNR:
+ 50.552 after: 1253 frames in 410.25s (3.05 fps), 223.59 kb/s, Global
+ PSNR: 50.589
+ [8f156b97360b]
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: fix 16bpp builds
+ [b172259c07f1]
+
+2013-11-21 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/pixeladd8.asm:
+ pixel_add_ps, 32xN corrected xmm register count
+ [76b0d2a278fb]
+
+2013-11-21 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ pixelharness: cleanup check function names
+ [8dfe7282ce81]
+
+ * source/test/intrapredharness.cpp, source/test/pixelharness.cpp,
+ source/test/testharness.h:
+ testbench: re-line up test results to improve readability
+ [1643c78be418]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/pixel-sse41.cpp, source/encoder/motion.cpp,
+ source/encoder/reference.cpp, source/encoder/slicetype.cpp,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ primitive: rename weight primitives to match our naming convention
+
+ weight_pp -> weight pixels to pixels weight_sp -> weight shorts to
+ pixels
+ [49f8b71ae89b]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: prevent gcc 4.8.1 compiler error
+ [8dc9e5e4a0e6]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: fixup planar size index
+ [e733415996a1]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove hungarian pointer prefixes and unnecessary pixel
+ casts
+ [d7cf0dd2133e]
+
+ * source/common/intrapred.cpp:
+ intrapred: cleanup intra C references
+ [bcef0e896234]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: remove cmp templated wrapper function
+ [46e4175eeb88]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: nits
+ [562eea581dcf]
+
+2013-11-21 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/vec/intra-sse41.cpp,
+ source/encoder/compress.cpp, source/encoder/slicetype.cpp,
+ source/test/intrapredharness.cpp:
+ remove width arg from intra_pred_planar
+ [bdff2c785860]
+
+2013-11-21 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ bug fix: print Mean psnr Y,U,V properly
+ [012b3d1da19b]
+
+2013-11-21 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: added sa8d-4x4,4x8,8x4,4x16,16x4,12x16,16x12 to asm-
+ primitives.cpp
+ [fbb0dab55009]
+
+2013-11-21 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_32x64, asm code
+ [3b27df9d0a54]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_16x64, asm code
+ [4f53bb000c70]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps, asm code
+ [2683153044c8]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm: pixel_add_ps,32xN
+ [23626c3cac6b]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps, 16x8, 16x12, 16x16, 16x32 asm code
+ [583152af6f66]
+
+2013-11-21 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for transpose_64x64 routine
+ [b305aa607e0b]
+
+ * source/common/x86/pixel-a.asm:
+ asm: Improvement by replace macro extend by function call
+ [0caa6518420e]
+
+2013-11-21 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_2x8 asm code
+ [98fac41f309c]
+
+2013-11-21 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ [asm]: pixel_add_ps_2x4
+ [f290ec5a0532]
+
+2013-11-21 Praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_6x8, asm code
+ [3f227acdb082]
+
+ * source/common/x86/pixeladd8.asm:
+ pixeladd8.asm, removed unsed header 'x86util.asm'
+ [0e9ae87861ba]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_16x4, asm code
+ [5077332c5bcc]
+
+2013-11-21 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_8x32
+ [16b15235cd76]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_32x8
+ [0b4b4143ceea]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_24x32
+ [a71839b646b9]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_32x24
+ [47c04fd98b80]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_8x16 and pixel_sa8d_16x8
+ [977220137f22]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_16x64
+ [2b8e89b5b836]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_64x16
+ [d43255da9bd6]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_48x64
+ [2d6721016c9a]
+
+2013-11-21 Min Chen <chenm003@163.com>
+
+ * source/test/ipfilterharness.cpp:
+ testbench: initialize output buffer to solve lumz_sp[] mistake
+ problem
+ [7e4656d4fd33]
+
+2013-11-21 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_64x48
+ [6a82e5177eb3]
+
+2013-11-21 Dnyaneshwar G <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/intrapred.h,
+ source/test/intrapredharness.cpp:
+ asm: assembly code for IntraPred_DC[32x32]
+ [286984ebb6c7]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/intrapred.h:
+ asm: assembly code for IntraPred_DC[16x16]
+ [4eb59e47be20]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/intrapred.asm, source/common/x86/intrapred.h:
+ asm: assembly code for IntraPred_DC[8x8]
+ [40a060130b62]
+
+2013-11-20 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h:
+ primitive: nits
+ [db1151bb4974]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy-sse3.cpp, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ primitive: remove dead blockcpy_sp
+ [b3749e1d64c0]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy-sse3.cpp, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ primitive: remove dead pixelsub_ps
+ [0d54ec898e79]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter-sse41.cpp, source/common/vec/ipfilter-
+ ssse3.cpp, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h:
+ primitive: remove dead ipfilter_s2p
+ [f3962b7a971c]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter-sse41.cpp, source/common/vec/ipfilter-
+ ssse3.cpp, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h:
+ primitive: remove dead ipfilter_p2s
+ [f3d4f3ac215e]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: nits
+ [4b53b32ea6d8]
+
+ * source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/common.cpp, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/vec/ipfilter-sse41.cpp,
+ source/common/x86/asm-primitives.cpp, source/encoder/encoder.cpp,
+ source/input/y4m.cpp, source/test/ipfilterharness.cpp,
+ source/test/pixelharness.cpp, source/x265.cpp, source/x265.h:
+ TComSlice: nits
+ [cdfb587319f8]
+
+ * source/cmake/CMakeASM_YASMInformation.cmake:
+ cmake: fix cygwin builds - yasm must output windows object files
+ [871f3367fd45]
+
+ * source/test/testbench.cpp:
+ test: bump pixel depth to 12 for HIGH_BIT_DEPTH builds
+ [1561d1f1d1da]
+
+ * source/common/vec/blockcopy-sse3.cpp, source/common/vec/dct-
+ sse3.cpp, source/common/vec/dct-sse41.cpp, source/common/vec/dct-
+ ssse3.cpp, source/common/vec/intra-sse41.cpp, source/common/vec
+ /intra-ssse3.cpp:
+ vec: fix compile warnings with clang at 16bpp - remove dead
+ functions
+ [f7590776c5b2]
+
+2013-11-20 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps, 8x8, 8x16, 8x32 asm code
+ [c75b72fcd284]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_8x6, asm code
+ [e2f8b18cd253]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_8x4, asm code
+ [079864d97afc]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ pixel_add_ps_8x2, asm code
+ [f65fbb5d2d44]
+
+ * source/common/primitives.h, source/common/x86/pixel.h:
+ pixel.h and primitives.h, int replaced with intptr_t
+ [f07d8d18212b]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm code for pixel_add_ps_4x2
+ [28e57d696b36]
+
+ * source/common/x86/pixeladd8.asm:
+ pixel_add_pp_4x4, merged movd and pmovzxbw
+ [bee92606b540]
+
+ * source/common/x86/pixeladd8.asm:
+ pixel_add_pp: 4x8, 4x16, merged movd and pmovzxbw instructions
+ [5fb3eae8a29d]
+
+ * source/common/x86/pixel.h:
+ added pixel_add_ps chroma function definitions
+ [406c500c0b0d]
+
+ * source/common/x86/pixeladd8.asm:
+ pixeladd8.asm, int replaced with intptr_t for strides data type
+ [0532a37e6a7e]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixeladd8.asm:
+ asm code for pixel_add_ps, 4x8 and 4x16
+ [2fe88d075204]
+
+ * source/common/CMakeLists.txt, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel.h, source/common/x86/pixeladd8.asm:
+ asm code for pixeladd_ps_4x4 and testbench integration
+ [a3e4cbbc63e1]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ unit test code for pixel_add_ps
+ [59964c99aa17]
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ added pixel_add_ps_c as a primitve
+ [ec0758b3ecfa]
+
+2013-11-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h:
+ TEncBinCABAC: fix naming prefix convention of bIsCounter
+ [0607aef383b7]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp,
+ source/encoder/encoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/ratecontrol.cpp:
+ TypeDef: replace UInt64 with uint64_t
+ [58dfac0ab062]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h:
+ TypeDef: replace Int64 with int64_t
+ [93f03580b998]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: white-space nits
+ [e3f82c9daafb]
+
+2013-11-20 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_32x64
+ [915bb51b6489]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_64x32
+ [aa44b552bdd4]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_16x32
+ [cbf8720197fb]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_32x16
+ [bd44cdfcbba8]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_64x64
+ [ef1a9a583c4a]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_sa8d_32x32
+ [357c693f8888]
+
+2013-11-20 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/CMakeLists.txt,
+ source/common/intrapred.cpp, source/common/primitives.h,
+ source/common/vec/intra-sse41.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/intrapred.asm,
+ source/common/x86/intrapred.h, source/encoder/compress.cpp,
+ source/encoder/slicetype.cpp, source/test/intrapredharness.cpp,
+ source/test/intrapredharness.h:
+ asm: assembly code for IntraPred_DC[4x4]
+ [172b66a79401]
+
+2013-11-20 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h, source/common/vec/pixel-sse3.cpp:
+ primitive: remove unused cvt16to16_shl
+ [174bd2b5e652]
+
+ * source/common/vec/dct-sse41.cpp:
+ vec: drop intrinsic quant primitive, we have assembly code
+ [5e18a1158c5f]
+
+ * source/common/vec/pixel-sse3.cpp:
+ vec: drop intrinsic transpose primitives, we have assembly code
+ [7a154e9fccbd]
+
+2013-11-20 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.asm, source/common/x86/pixel.h, source/test/mbdstharness.cpp:
+ asm: assembly code for quant
+ [63b9ba51bac0]
+
+2013-11-20 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for transpose_32x32 routine
+ [6c9d7641bdca]
+
+ * source/common/x86/pixel-a.asm:
+ asm: cleanup routines of transpose module for 4x4, 8x8 and 16x16
+ [fe81ba733564]
+
+2013-11-20 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ bpyramid: Support for b-pyramid with b-adapt 0
+
+ Test results for reference when enable and disable the b-pyramid
+ with b-adapt=0
+
+ Cli option : --bframes=10 --b-adapt=0 --b-pyramid=1 -f 100 Enable
+ B-references : --b-pyramid=1 Disable B-references : --b-pyramid=0
+
+ Results: Enable / Disable
+
+ clip - BasketballDrive_1920x1080_50 Total time taken - 57.84s (1.73
+ fps) / 51.74s (1.93 fps) Bitrates - 4725.37 / 5660.68 PSNR - 37.178
+ / 37.178
+
+ Clip - Cactus_1920x1080_50 Total time taken - 41.90s (2.39 fps) /
+ 47.08s (2.12 fps) Bitrates - 3800.62 / 4838.73 PSNR - 35.640 /
+ 35.615
+
+ Clip - Johnny_1280x720_60 Total time taken - 10.41s (9.61 fps) /
+ 10.34s (9.67 fps) Bitrates - 327.21 / 383.25 PSNR - 40.674 / 40.631
+
+ Clip - FourPeople_1280x720_60 Total time taken - 10.72s (9.33 fps) /
+ 10.18s (9.82 fps) Bitrates - 547.18 / 640.88 PSNR - 39.808 / 39.789
+ [8e9c965648f6]
+
+2013-11-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/common/TShortYUV.cpp:
+ clang: fix build warnings
+ [108ddc9e5c6b]
+
+2013-11-19 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/TShortYUV.cpp, source/common/TShortYUV.h:
+ blockcpy_sp asm integration
+ [5df643257054]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/test/pixelharness.cpp:
+ csp support for blockcopy_sp
+ [fd382d7bfeea]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ blockcopy_ps, asm integration
+ [cc88ae755af4]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComYuv::copyPartToPartChroma, blockcopy_ps asm integration
+ [036a65157263]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/test/pixelharness.cpp:
+ csp support for blockcopy_ps
+ [32bd40623496]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv::copyPartToPartChroma, blockcopy_pp asm integration
+ [10617a4ef7a5]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv::copyToPicLuma, blockcopy_pp asm integration
+ [e77e7c4465f1]
+
+2013-11-19 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for transpose_16x16 routine
+ [d8d9f36d0a44]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for transpose_8x8 routine
+ [1e1ecddee271]
+
+2013-11-18 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for transpose4x4 routine
+ [d484c28c63f5]
+
+2013-11-19 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/x265.h:
+ api: enable weightp by default, disable for ultrafast
+ [f68e0b9cae2e]
+
+ * source/x265.h:
+ api: fix typos and improve chroma qp offset descriptions
+ [59dcbb0be7ca]
+
+ * source/common/common.cpp, source/x265.h:
+ api: enable b-pyramid by default
+
+ The only reason for it to be disabled is if the decoder/use case
+ prevented it
+ [de92149b3c9b]
+
+ * source/x265.cpp:
+ cli: fix warning in CLI help
+ [e63916b50ac1]
+
+ * source/common/common.cpp:
+ common: nit
+ [a901089e8218]
+
+ * source/common/common.cpp:
+ common: validate --subme value
+ [371f83f5c9cd]
+
+ * source/x265.h:
+ api: cleanup x265_param orderings, add full comments
+ [7dea1450b7fa]
+
+2013-11-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: simplify size variables
+ [8abf4200186a]
+
+ * source/x265.h:
+ api: nit
+ [ca30b6c351c2]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/x265.cpp, source/x265.h:
+ api: make x265_encoder_get_stats() somewhat future proof
+
+ By passing in the size of x265_stats as the user application knows
+ about the encoder can know not to try to set new fields that were
+ added to the end of x265_stats. This requires some discipline on our
+ part to only append to the structure and to always check the size
+ for any new fields we might add.
+ [5ae9bb8daaec]
+
+ * source/x265.h:
+ api: remove old suffix and prefix from C symbols in comment, reflow
+ [afde9f11046a]
+
+ * source/encoder/encoder.cpp, source/x265.cpp, source/x265.h:
+ api: remove hungarian prefixes from x265_nal members
+
+ These particular prefixes came from x264 originally
+ [75328ddf6ef1]
+
+ * source/x265.h:
+ api: remove reserved NAL enums and C++ style comments from public
+ header
+ [6bf2bdc1dd1c]
+
+2013-11-19 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp, source/x265.h:
+ api: cleanup bpyramid
+ [f38139868da6]
+
+2013-11-19 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/common.cpp, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/slicetype.cpp,
+ source/x265.cpp, source/x265.h:
+ b-pyramid implementation: Allow the use of B-frames as references
+ for non B and B frames
+
+ when we enable the b-pyramid the bitrates efficienctly reduced and
+ there is not much diff in the performance and the PSNR 00. increased
+ some of the clips and decreased some of clips
+
+ Test results for reference when enable and disable the b-pyramid:
+ cli option : -b 10 --hash=1 -f 100 --b-pyramid=1 --b-adapt=2 Enable
+ B-reference : --b-pyramid=1 Disable B-reference : --b-pyramid=0
+
+ Results: Enable / Disable
+
+ Clips - Johnny_1280x720_60.y4m Total time taken - 11.19s (8.94 fps)
+ / 13.44s (7.44 fps) Bitrates - 303.52 kb/s / 326.79 kb/s PSNR -
+ 40.679 / 40.612
+
+ Clips - Cactus_1920x1080_50.y4m Total Time taken - 44.61s (2.24 fps)
+ / 48.23s (2.07 fps) Bitrates - 3420.80 kb/s / 3575.20 kb/s PSNR -
+ 35.709 / 35.726
+
+ Clips - BasketballDrive_1920x1080_50.y4m Total time taken - 54.15s
+ (1.85 fps) / 53.72s (1.86 fps) Bitrates - 4114.07 kb/s / 4310.45
+ kb/s PSNR - 37.283 / 37.290
+
+ Clips - FourPeople_1280x720_60 Total time taken - 11.79s (8.48 fps)
+ / 12.16s (8.23 fps) Bitrates - 514.90 kb/s / 539.08 kb/s PSNR -
+ 39.782 / 39.757
+ [1449a1a2041f]
+
+2013-11-18 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ log: do not show aq-strength if AQ is disabled
+ [2f5f538d2cbc]
+
+ * source/common/common.cpp:
+ preset: return superfast/ultrafast lookahead depths to 10
+ [628be479be44]
+
+2013-11-18 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/common/common.cpp, source/x265.cpp:
+ cli: add aq-strength to cli input options, add validations for aq
+ mode
+ [6a068b264c84]
+
+2013-11-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix initialization order to prevent warnings
+ [cfd834ba8e4f]
+
+2013-11-18 Praveen Tiwari <Praveen Tiwari>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv::copyPartToPartYuv, blockcopy_pp asm integration
+ [ad5dff9a2374]
+
+2013-11-18 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ Test bench code for transpose routine
+ [301f9f86ae23]
+
+ * source/common/TShortYUV.cpp, source/common/TShortYUV.h,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/test/pixelharness.cpp:
+ TShortYUV: asm code integration for pixelsub_ps
+ [58646537ce29]
+
+2013-11-18 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/pixel-a.asm:
+ asm: fix the bug caused on 32-bit linux due to satd routines.
+ [690f6534d310]
+
+2013-11-18 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.h,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/x265.cpp:
+ Encoder statistics: Inter[% (2Nx2N %2NxN %Nx2N %AMP)] Intra[% (%DC
+ %PLANAR %ANG)] Split[%] Skip[%]
+ [2321ebe0bf64]
+
+2013-11-18 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h:
+ Adding asm function declarations and initializations for chroma hps
+ filter functions.
+ [ac9e64d8a80b]
+
+2013-11-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: cleanup, remove unused buffers
+ [58f4e30dbe8f]
+
+2013-11-17 Steve Borho <steve@borho.org>
+
+ * source/test/ipfilterharness.cpp:
+ testbench: quit zeroing buffers before every test
+ [e2895ce7bbeb]
+
+ * source/common/vec/ipfilter-sse41.cpp:
+ vec: disable 16bpp ipfilter_ps[] functions, not 10bit pixel safe
+ [b32dc442ca83]
+
+ * source/common/vec/intra-ssse3.cpp:
+ clang: fix ambiguous * operator in intra-ssse3.cpp
+ [7cae5e2e17ed]
+
+2013-11-16 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: remove thread counts from param2string
+ [e276322c6288]
+
+ * source/common/common.cpp, source/common/common.h, source/x265.cpp,
+ source/x265.h:
+ cli: allow string argument names for --me, generalize
+ [14cd6a901cc4]
+
+ * source/common/vec/pixel-sse3.cpp:
+ vec: drop blockfill intrinsic primitives, we have ASM
+ [1544cf94837d]
+
+ * source/common/pixel.cpp, source/common/vec/pixel-sse3.cpp:
+ vec: drop residual and recon intrinsic primitives, we have ASM
+ [3052fca7e7d1]
+
+ * source/common/x86/pixel-util.asm:
+ fix eoln of pixel-util.asm
+ [119c01293aa5]
+
+2013-11-16 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.asm, source/common/x86/pixel.h:
+ asm: assembly code for calcresidual[]
+ [24bcae464492]
+
+ * source/common/pixel.cpp, source/common/vec/pixel-sse3.cpp,
+ source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.asm, source/common/x86/pixel.h:
+ cleanup: remove unused 64x64 functions
+ [64ece76a2152]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/x86/pixel-
+ util.asm:
+ asm: residual buffer is alignment to size, so we can use alignment
+ load instruction
+ [e43b1e005ffa]
+
+2013-11-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/slicetype.cpp:
+ repair -i0 behavior
+ [2552369e3537]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: hoist intra cost estimate out of weightsAnalyze
+ [da5b10cf5ee5]
+
+2013-11-15 Praveen Tiwari <Praveen Tiwari>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv::copyPartToYuv, asm code integration for blockcopy_pp
+ [7e7397e823c9]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv::copyToPartYuv, asm integration for blockcopy_pp
+ [08cb5a0bff32]
+
+ * source/common/primitives.cpp, source/common/primitives.h,
+ source/test/pixelharness.cpp:
+ checking for all supported csp values
+ [a4b880b9114d]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/test/pixelharness.cpp:
+ TComYuv::copyFromPicLuma, asm integration for chroma blockcopy_pp
+ [0aa7be2c038a]
+
+2013-11-15 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h:
+ Adding asm function declarations and initializations for luma vss
+ filter functions.
+ [ec9295e39fe6]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h:
+ Adding asm function declarations and initializations for chroma vss
+ filter functions
+ [726f302ca952]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for luma vss filter functions for all block sizes.
+ [4ee15557ea11]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vss filter functions for all block sizes
+ [83c9a7a473c4]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Adding test bench code for luma vss filter functions.
+ [7fd467ca4f3e]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Adding function pointer array and C primitive initializations for
+ luma vss filter functions
+ [544c4712cd45]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Adding test bench code for chroma vss filter functions
+ [47de8ca8952c]
+
+ * source/common/ipfilter.cpp:
+ Adding C primitive for chroma vss filter functions
+ [fdaef69fbf19]
+
+ * source/common/primitives.h:
+ Adding function pointer type & array declaration for chroma vss
+ filter functions
+ [f6efa96cfbd4]
+
+2013-11-16 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: disable some flags for clang, old versions balk at them
+ [60a66cbd8b47]
+
+2013-11-15 Praveen Tiwari <Praveen Tiwari>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ reverted chroma_copy_pp asm integration to avoid csp break
+ [2cb5461ccd45]
+
+2013-11-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/common/lowres.cpp,
+ source/common/lowres.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ slicetype: hoist weightp analysis above dosearch checks
+ [3e9bb2ca458b]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: cleanup hugarian notations and redundant vars
+ [959cabcc9ece]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ fix variable shadow warning
+ [95f292369c06]
+
+2013-11-15 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [c45770e5a2ae]
+
+ * source/common/common.cpp:
+ presets: fix bugs, better spread out the efficiency/speed data
+ points.
+ [a85c5f418794]
+
+ * source/x265.h:
+ x265: whitespace nit
+ [a5689bb5808e]
+
+2013-11-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: correct non-denom round, improve some comments
+ [ee42f57411ae]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove unnecessary lines, simplify a few things
+ [31bbe5e1142e]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: use x265 style camelCase auto vars
+ [82b9f30398ae]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: since w is an auto-var there is no need to zero at early-
+ outs
+ [02fd5b099fa3]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: optimize away mcWeight helper function
+ [ba00da135945]
+
+2013-11-14 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ Using weighted lowres ref frames in cost estimation in lookahead
+ [899731955c6d]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ Pulling x264 weight decision into x265 lookahead
+ [61f9fc2e91d2]
+
+2013-11-14 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.asm, source/common/x86/pixel.h, source/test/pixelharness.cpp:
+ asm: assembly code for calcrecon[]
+ [1b9545e23e36]
+
+2013-11-14 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ no-rdo early exit: giving weightage to the cost of that CU and
+ neighbour CU's for early exit
+
+ Early exit is done when CU cost at depth "n" is lessthan sum of 60%
+ of avgcost of that CU at same depth and 40% of avgcost of neighbour
+ CU's at same depth.
+
+ the performance, bitrate increase and psnr comparison are given
+ below CLI: x265.exe input.y4m -o abc.hevc -r recon.y4m --rd 1 --ref
+ 1
+
+ BasketballDrive_1920x1080_50 Timetaken to encode: 704/585/564s
+ bitrate: 3650/3696/3696 PSNR: 36.7/36.67/36.67 perf improvement:
+ 16.9% (compared to early exit OFF and already existing early exit)
+ perf improvement: 19.8% (compared to early exit OFF and new early
+ exit)
+
+ Cactus_1920x1080_50 Timetaken to encode: 526/443/436s bitrate:
+ 2787/2831/2833 PSNR: 35.527/35.48/35.48 perf improvement: 15.7%
+ (compared to early exit OFF and already existing early exit) perf
+ improvement: 17.1% (compared to early exit OFF and new early exit)
+
+ Kimono1_1920x1080_24 Timetaken to encode: 279/235/238s bitrate:
+ 1243/1252/1252 PSNR: 38.16/38.158/38.159 perf improvement: 15.7%
+ (compared to early exit OFF and already existing early exit) perf
+ improvement: 14.6% (compared to early exit OFF and new early exit)
+
+ FourPeople_1280x720_60 Timetaken to encode: 169/157/157s 16.9%/19.8%
+ bitrate: 486/489/489 PSNR: 39.09/39.052/39.042 perf improvement:
+ 7.1% (compared to early exit OFF and already existing early exit)
+ perf improvement: 7.1% (compared to early exit OFF and new early
+ exit)
+
+ big_buck_bunny_360p24 Timetaken to encode: 1739/1511/1505s
+ 16.9%/19.8% bitrate: 174.9/175.38/175.5 PSNR: 37.798/37.746/37.752
+ perf improvement: 13.1% (compared to early exit OFF and already
+ existing early exit) perf improvement: 13.4% (compared to early exit
+ OFF and new early exit)
+
+ PartyScene_832x480_50 Timetaken to encode: 123/120/120s 16.9%/19.8%
+ bitrate: 208/208/208 PSNR: 40.344/40.33/40.332 perf improvement:
+ 2.4% (compared to early exit OFF and already existing early exit)
+ perf improvement: 2.4% (compared to early exit OFF and new early
+ exit)
+ [1a033fe23a3e]
+
+2013-11-14 Praveen Tiwari <Praveen Tiwari>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ reverted chroma_copy_pp asm integration code, avoiding csp break
+ [b0ce6bd99b15]
+
+2013-11-14 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ asm: code for scale1D_128to64 routine
+ [05484f075744]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ Unit test code for Pixel scaling
+ [38e124ec202c]
+
+2013-11-14 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_32x64 and pixel_satd_48x64
+ [84f9ced21747]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_64x64
+ [99b64d267788]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_64x32 and pixel_satd_64x48
+ [ed1dab579cb1]
+
+2013-11-13 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nit
+ [e871fe75d5ab]
+
+2013-11-13 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vps filter functions for 2x4 and 2x8 block
+ sizes.
+ [c828dd4d9eae]
+
+2013-11-13 Derek Buitenhuis <derek.buitenhuis@gmail.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Reindent after last commit
+ [5683ee5b793c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: Fix parameter type of xEstimateResidualQT
+
+ Fixes compilation with g++.
+ [c89e22d26bcd]
+
+2013-11-13 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h:
+ Change minimum architecture to sse4 as chroma vsp functions for
+ block sizes(2x4,2x8 and 6x8) need faster SSE4 instructions.
+ [a04ca925ad3f]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h:
+ Adding asm function declarations and initializations for chroma vps
+ filter functions.
+ [5fc6ca938864]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vps filter functions for 32xN block sizes.
+ [701b696d0670]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vps filter function for 24x32 block size.
+ [21d27b188e71]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vps filter functions for 16xN block sizes.
+ [52d18d911356]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vps filter functions for 6x8 and 12x16
+ block sizes.
+ [8e6dcabdccd5]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vps filter functions for 8xN block sizes
+ [91cfcd159ff3]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vps filter functions for 4xN block sizes.
+ [23aecd3f9180]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma hps filter functions for 16xN, 24xN and
+ 32xN
+ [d80ab2913b31]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma hps filter functions for 8xN block sizes.
+ [3448252924ad]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: Proper indentation and function prototype updation for chroma
+ hps filter functions for 2xN, 4xN, 6x8 and 12x16 block sizes.
+ [51d3c0782e46]
+
+2013-11-13 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_64x16
+ [32e01ab333a6]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_32x32
+ [4ee655b93b03]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_24x32
+ [2ffe634ebd71]
+
+2013-11-12 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ asm: Unit test code for pixelsub_ps function
+ [c4ca80d19105]
+
+2013-11-13 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/x86/pixel-a.asm:
+ asm: pixelsub_ps routine for all block sizes
+ [2d6dd46dc286]
+
+2013-11-12 sagarkotecha <sagarkotecha>
+
+ * source/common/ipfilter.cpp:
+ Bug fix : In ipfilter for 10 bit yuv support
+ [90c2763ee027]
+
+2013-11-12 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ Adding initialisation for ssd/sum values for lowress frame
+ [a19ba09c1fd7]
+
+2013-11-12 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp:
+ Adding test bench code for chroma vps filter functions.
+ [2185b81ae35b]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Adding function pointer array and C primitive initializations for
+ chroma vps filter functions.
+ [1ddacfd89112]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma hps filter functions for 2xN, 4xN, 6x8 and
+ 12x16 block sizes.
+ [533bca3ec7e9]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Adding test bench code for chroma hps filter functions.
+ [e6d26209c45f]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Adding function pointer array and initializations for chroma hps
+ filter functions.
+ [8a8b967500e5]
+
+ * source/common/x86/asm-primitives.cpp:
+ Adding function pointer initializations for asm chroma vsp
+ functions.
+ [028b911ae623]
+
+ * source/common/x86/ipfilter8.h:
+ Adding asm function declarations for chroma vsp filter functions.
+ [8fe8d8f9f7cb]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for chroma vsp filter functions for all block sizes.
+ [4844849073b7]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Adding test bench code for chroma vsp filter functions.
+ [ed8a6cd4d8ec]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Adding function pointer array and initializations for chroma vsp
+ filter functions.
+ [e676cbd86238]
+
+2013-11-12 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h:
+ asm: assembly code for x265_pixel_avg_12x16
+ [d0f80f375c3b]
+
+2013-11-12 Praveen Tiwari <Praveen Tiwari>
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv.cpp, use new luma_copy_ps asm primitives where feasible
+ [31528c277c64]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv.cpp, use new blockcopy_pp luma primitives where feasible
+ [8708689dcca2]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv::copyFromPicLuma, blockcopy_pp luma asm code integration
+ [c56ea57ce3ab]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv::copyToPicLuma, blockcopy_pp asm code integration
+ [04c28af13c4d]
+
+2013-11-12 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_12x16
+ [c56ce77dc081]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for satd_16x32, satd_16x64, satd_8x32
+ [d636952ed093]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_16x4
+ [7818f5b7cc25]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_16x12
+ [2baf62a8e47d]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for pixel_satd_32x24 and rearranged the functions
+ [085d5c625c53]
+
+2013-11-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: fix shadow warning from GCC
+ [58bdb05da194]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use luma block copy (luma part size) if bChromaSame
+ [ea4f939478ed]
+
+2013-11-12 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/compress.cpp:
+ Backout: Causing non-determinism in rd 0 and 1. Needs to be further
+ investigated.
+ [ab0968b4b65d]
+
+2013-11-12 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp:
+ cleanup: hardcoded m_qtTempTComYuv[qtLayer].m_width to MAX_CU_SIZE
+ [12053d6bf759]
+
+2013-11-12 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h:
+ asm: pixel_avg_48x64, pixel_avg_8x32
+ [4a4fd61e98e6]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h:
+ asm: asm: pixel_avg_24x32
+ [56642525d09e]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h:
+ asm: pixel_avg_64x(64,48,16)
+ [9c92947860e0]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h:
+ asm: pixel_avg_32x(64,32,24,8)
+ [5b0e1731f776]
+
+2013-11-12 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/compress.cpp:
+ no-rdo early exit: giving weightage to the cost of all CU's and
+ neighbour CU's for early exit
+
+ Early exit is done when CU cost at depth "n" is lessthan sum of 60%
+ of avgcost of all CU's and 40% of avgcost of neighbour CU's at same
+ depth.
+ [dc5c51ff542f]
+
+2013-11-11 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ no-rdo: cleanups. Remove unnecessary memsets, rearrange
+ computations.
+ [1ca01c82609f]
+
+2013-11-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: de-hungarian nits
+ [d1d716083aa7]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/encoder/ratecontrol.cpp:
+ asm: use new block copy primitives where feasible
+ [1c95568c7143]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter-sse41.cpp, source/common/x86/asm-
+ primitives.cpp, source/common/x86/ipfilter8.asm,
+ source/common/x86/ipfilter8.h, source/encoder/motion.cpp:
+ asm: hookup luma_vsp primitive, drop asm and intrinsic non-block
+ versions
+ [904b788b09e2]
+
+2013-11-11 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp:
+ Adding function pointer initializations for luma vsp functions.
+ [d11de5be8e25]
+
+ * source/common/x86/ipfilter8.h:
+ Adding asm function declarations for luma vsp filter functions.
+ [937ac0c1bac4]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for luma vsp filter functions for all block sizes.
+ [1eae34eb5995]
+
+2013-11-11 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for x265_pixel_satd_32x16
+ [27b97bc50331]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: assembly code for x265_pixel_satd_32x8
+ [da13148e7c6e]
+
+2013-11-11 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h:
+ asm: enabled pixel_avg_16x(64,32,12,4) assembly functions
+ [1990e66030d1]
+
+2013-11-11 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ use fixed stride/size on m_qtTempTComYuv, to reduce number of
+ calcRecon() parameters
+ [0f9c6391fa19]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/common/x86/pixel.h:
+ asm: pixel_avg[32x16]
+ [79a452bec247]
+
+2013-11-11 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp:
+ added macro call for luma partition blockcopy_ps function
+ [18dd57c38254]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_64xN
+ [ed32ed5a0785]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for luma blockcopy_ps_48x64
+ [c19168acd391]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for luma blockcopy_ps_32x64
+ [15b705145e15]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ added asm function for luma blockcopy_ps_16x64
+ [8e20f3c1dbb4]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ added asm code blockcopy_ps_4x16 and invoked function pointer
+ initialization with macro
+ [67fb80ee548a]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_6x8
+ [b208adfaaba6]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_2x8
+ [c047d5898b59]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_2x4
+ [cf089f73913d]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_24x32
+ [c8e0d150b111]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_4x8
+ [332793211a8d]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_4x4
+ [953fe27840b6]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_4x2
+ [4c45ee313c3c]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_12x16
+ [c09ba17002c0]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_32xN
+ [badcc7920c91]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ blockcopy_ps_16x4, asm code is now sse4
+ [1365b796a75e]
+
+ * source/common/x86/blockcopy8.asm:
+ eliminated register copy from BLOCKCOPY_PS_W16_H4 macro
+ [7a0afcd7c4c9]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for asm code for blockcopy_ps,16x8, 16x12, 16x16, 16x32
+ [e5567a4eeec5]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_16x4
+ [cb378330b31b]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps, 8x6, 8x16 and 8x32
+ [7d74ee88f3fe]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_8x6
+ [1fbaef13feb7]
+
+2013-11-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: white-space nits
+ [c94d51359a5f]
+
+2013-11-11 Mahesh Doijade <maheshdoijade@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ TEncCu: cleanup xComputeCostIntraInInter to use 32x32 logic for
+ 64x64
+ [2e90d81098af]
+
+2013-11-11 Min Chen <chenm003@163.com>
+
+ * source/test/pixelharness.cpp:
+ bugfix: PixelHarness::check_pixelavg_pp() output buffer did not
+ initialize
+ [9642b5b6500b]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm:
+ re-enable asm code for pixel_avg, the problem is miss EMMS
+ [a1577003ee96]
+
+2013-11-11 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_8x4
+ [25300bdf7bbe]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockcopy_ps_8x2
+ [11b09a9fa32f]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ unit test code for block_copy_ps function
+ [eab2cd89e813]
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ added blockcopy_ps c primitive and function pointes
+ [7f3164f16551]
+
+2013-11-11 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Adding test bench code for luma vsp filter functions.
+ [51358e3422b7]
+
+ * source/common/ipfilter.cpp:
+ Adding C primitive for luma vsp filter functions.
+ [d2b3aefb522e]
+
+ * source/common/primitives.h:
+ Adding function pointer type & array definition for luma vsp filter
+ functions.
+ [8d496292dd1d]
+
+2013-11-11 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp:
+ 16bpp primitives: disabling dct/idct/dst/idst primitives
+ [8ca334701a92]
+
+2013-11-09 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: set g_bitDepth to 10 for HIGH_BIT_DEPTH builds
+
+ This more accurately tests our optimized primitives vs the C ref,
+ and several of them now fail validation. The intrinsic primitives
+ need to be updated to the changes made in commit b24d05dd4990 and/or
+ disabled for 16bpp.
+ [9d74638c3640]
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: white-space cleanup
+ [975d0089a37d]
+
+ * source/output/y4m.cpp:
+ y4m: fix 8bpp build
+ [efb26544f8aa]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: add a comment for future optimizations
+ [2be9bd65f418]
+
+ * source/input/yuv.cpp:
+ yuv: pic.stride should be in units of pixels, not bytes
+ [b2b455afd60e]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ csp: fix allocation size calculation of chroma planes
+ [99d934beca75]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ TComPicYuv: remove unused luma-oriented functions, cleanup destroy
+ method
+ [9dece99f7faa]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ TComPicYuv: remove unused copy methods
+ [ad8b9d120f8c]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: cleanup prefixes
+ [c05952a71525]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ TComPicYuv: remove unused dump function
+ [8774e07b9d8a]
+
+ * source/output/output.cpp, source/output/y4m.cpp,
+ source/output/y4m.h, source/output/yuv.cpp, source/x265.cpp:
+ cli: file writers should validate output bitdepth, if any is
+ specified
+ [5c3ecc48bf3b]
+
+ * source/common/CMakeLists.txt, source/common/vec/pixel-avx2.cpp,
+ source/common/vec/vec-primitives.cpp:
+ pixel: remove AVX2 vector class SAD primitives
+
+ These are superceded by assembly - the ASM doesn't use AVX2 yet but
+ it's already faster
+ [af9ec83d864a]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ TComYuv: remove unused removeHighFreq()
+ [cd9b013529ad]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy-sse3.cpp, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ primitive: remove pixeladd_pp and TComYuv::addClip()
+
+ These were used by the old HM bidir search
+ [57caf112acf9]
+
+2013-11-08 Steve Borho <steve@borho.org>
+
+ * source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h:
+ input: drop unthreaded reader paths for simplicity
+ [29ad451b3026]
+
+ * source/input/yuv.cpp:
+ yuv: simplify framesize usage
+ [27486e340eac]
+
+ * source/input/yuv.cpp:
+ yuv: initialize pixelbytes as early as possible
+ [45c5ba1dc340]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: include nits
+ [620c2a377cf6]
+
+ * source/x265.cpp:
+ cli: do not check recon bit depth if no recon file is requested
+
+ For now, just enforce our current requirement that the output
+ bitdepth must match the input bit depth. If the recon file writers
+ ever support depth conversions, these checks can be revisited
+ [4a824497b3f4]
+
+ * source/common/common.cpp:
+ common: set default params to match medium preset, keep star search
+ for medium
+ [5b688170c506]
+
+2013-11-06 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ presets: adjust presets to increase spread and align closer with
+ x264 presets
+ [8487f675effa]
+
+2013-11-08 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ no-rdo: refactor enodeResandCalcRDInterCU function
+
+ Divide estimateBits and modeDecision inside the function.
+ EstimateBits uses a pseudo encode. Bitstream changes with this patch
+ for --rd 1.
+ [66659d4a7b31]
+
+2013-11-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: fixup 16x16 picture padding by using unpadded width as
+ pad base
+ [74bed0a288f5]
+
+2013-11-08 Mahesh Doijade <Mahesh Doijade>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup estIntraPredQT to use 32x32 logic for 64x64
+ blocks
+ [abb7c130ca2f]
+
+2013-11-08 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/sad-a.asm:
+ asm: optimised pixel_sad_xN_24x32 assembly code
+ [cd16d2ed3128]
+
+2013-11-08 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_2x8, optimized asm code
+ [1e7c99e5b511]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_2x4, optimized asm code
+ [7bd27dfad3bf]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_6x8, optimized asm code
+ [073ca727d5de]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_32xN, optimized asm code
+ [b95f9e753039]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_48x64, optimized asm code
+ [fa5544054a1d]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_64xN, optimized asm code
+ [a1c0eb5f5d84]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_24x32, optimized asm code
+ [3cf4edc66844]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_16xN, optimized asm code
+ [a1a9b29cccf9]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_12x16, optimized asm code
+ [970517e2eb4c]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_8x16, optimized asm code
+ [a0b003aac23e]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_8x8, optimized asm code
+ [8cfa90a574f8]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_8x2, optimized asm code
+ [c8d25ce3b965]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_8x6, optimized asm code
+ [2fd3cf3b5edb]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_8x4, optimized asm code
+ [27c70b409c1b]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_4x8, optimized asm code
+ [ceed26f375d5]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_4x16, optimized asm code
+ [b20b89bf5348]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_4x4, optimized asm code according to modified C
+ primitive
+ [d5f67f9cba2c]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp_4x2, optimized asm code according to modified C
+ primitive
+ [85dddb9aa165]
+
+2013-11-08 Steve Borho <steve@borho.org>
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter-sse41.cpp,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ primitives: remove unused ipfilter_pp_t funcdef and C and intrinsic
+ primitives
+
+ These are now completely replaced by block based assembly code
+ [fef74c2e329d]
+
+ * source/common/vec/pixel-sse41.cpp:
+ linux: re-enable sse_12x16 for clang and gcc
+ [94cba84de8dd]
+
+2013-11-08 Min Chen <chenm003@163.com>
+
+ * source/common/vec/pixel-sse41.cpp:
+ fix bug in sse_sp12
+ [f76b591b7aef]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ testbench: update for blockcopy, these function use dynamic range
+ [0,255]
+ [c5e633516217]
+
+2013-11-07 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: add missing --version long option for -V, and -? short option
+ for --help
+ [fd721a5ba063]
+
+ * source/x265.cpp:
+ cli: report a warning on preset or tune string mismatches
+ [08872c3c4735]
+
+ * source/common/vec/pixel-sse41.cpp:
+ linux: disable sse_12x16 for GCC and clang
+ [fd0ebb4b4709]
+
+ * source/test/pixelharness.cpp:
+ linux: fix pixelharness on linux which has full-range rand()
+ [1ea82d16d334]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ vec: remove use of deleted primitive for 16bpp
+ [014e3303ad3d]
+
+ * source/common/lowres.h:
+ lowres: reorder members of Lowres struct for clarity
+ [5563bd58c1e3]
+
+ * source/common/lowres.h, source/common/mv.h,
+ source/encoder/motion.cpp, source/encoder/reference.h:
+ lowres: move ReferencePlanes from mv.h to lowres.h
+ [dac2888cbf4c]
+
+ * source/common/mv.h, source/encoder/motion.cpp,
+ source/encoder/slicetype.cpp:
+ lowres: pull lowres motion compensation and residual costs into
+ lowres struct
+ [9668c5b6373a]
+
+2013-11-07 Min Chen <chenm003@163.com>
+
+ * source/common/TShortYUV.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/blockcopy-sse3.cpp,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ rename: pixelsub_sp to pixelsub_ps, because it sub two Pixel and
+ result is Short
+ [cb24ed71905d]
+
+2013-11-07 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockfil_s, 32x32
+ [b4993b1fef7c]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockfill_s, 16x16
+ [a8df8123e9ab]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockfill_s, 8x8
+ [7d3e461312a5]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/blockcopy8.h:
+ asm code for blockfill_s, 4x4
+ [29d208555299]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ unit test code for blockfill_s_c function
+ [12ec248f7390]
+
+2013-11-07 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp, source/encoder/motion.cpp:
+ asm: enable luma_vpp block MC functions
+ [4d9aac4f0985]
+
+2013-11-07 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/ipfilter8.asm:
+ Bug fix for luma vpp asm routines.Also incorporated review comment
+ changes.
+ [9ba49b482a1e]
+
+2013-11-07 Min Chen <chenm003@163.com>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy-sse3.cpp, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ cleanup: remove unused blockcpy_sc
+ [db7752a46693]
+
+ * source/common/pixel.cpp:
+ asm: the pixel value in blockcopy_ps is saturation by calcRecon, so
+ asm can use packuswb
+ [b572831429ec]
+
+2013-11-07 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ tcompicyuv: add right boundary padding while applying bottom row
+ padding.
+ [397a201b0ea3]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/common/lowres.cpp,
+ source/encoder/frameencoder.cpp:
+ aq: bug fix, extend right and bot of TComPic::m_origPicYuv to a
+ multiple of 16
+ [93a4f88844f1]
+
+2013-11-07 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove last remaining intrinsic SAD primitives
+ [536db32fc253]
+
+2013-11-07 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_x4_64xN
+ [dc31fc1daf42]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_x3_64xN
+ [d6644a32e6bc]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_x4_48x64
+ [96f1bb63b747]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_x3_48x64
+ [74682dfe5342]
+
+2013-11-07 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ tcompicyuv: improvement for Extend the right if width is not
+ multiple of min CU size
+ [85002898f5b4]
+
+2013-11-07 Min Chen <chenm003@163.com>
+
+ * source/common/pixel.cpp:
+ asm: the pixel value in blockcopy_ps is saturation by calcRecon, so
+ asm can use packuswb
+ [0a1b379be359]
+
+2013-11-07 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ tcompicyuv: fix for copyFromPicture() when HIGH_BIT_DEPTH enable,
+ sizeof(Pel)=2 and pic.bitDepth=8
+ [ed1b1a7b0b38]
+
+2013-11-07 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ api: output x265_picture.bitDepth should reflect actual internal
+ bitdepth
+
+ And not sizeof(pixel) * 8.
+ [0ab509a661c7]
+
+2013-11-06 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ api: simplistic auto-determination of frame thread count
+ [90d9c1067f50]
+
+ * source/encoder/motion.cpp:
+ motion: fixup weightp - use unweighted reference pixels as
+ interpolation source
+ [93cccbe49a93]
+
+ * source/x265.cpp:
+ cli: do not lookup a colorspace name if not supplied
+ [60f78cbfacc8]
+
+ * source/common/common.cpp:
+ common: set a default color space of I420
+ [d9ea97e248bc]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp, source/encoder/motion.cpp:
+ asm: use new block based single-pass H-filter motion compensation
+ primitives
+ [dbb86150c919]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ asm: use new block based chroma single-pass MC primitives
+ [8d1bd79d3618]
+
+ * source/common/CMakeLists.txt, source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.h, source/common/x86/pixel.h:
+ asm: move block copy funcdefs into blockcopy8.h
+ [edf77f60b55c]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: move _sse4 block copy function pointer assignments into SSE4
+ section
+ [34d494a8051f]
+
+2013-11-06 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp, corrected number of xmm registers
+ [0c359d82ebc1]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 64xN
+ [f0214135645a]
+
+ * source/common/x86/blockcopy8.asm:
+ blockcopy_sp, 48x64 changed the macro name according to width
+ [d87d627b2161]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 48x64
+ [cde21084ca9d]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ blockcopy_sp, added 16x64 block size
+ [598a03afc62f]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 32x64
+ [1a46771b9f87]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/pixel.h:
+ used sse4 for 2x4, 2x8 and 6x8
+ [ddaa80b9b959]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 6x8
+ [2ae2eb6c8e51]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 2x8
+ [529bf6093782]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 2x4
+ [ea33d0f85b8e]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 12x16 block
+ [99c3b2e4f1cc]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 32xN
+ [6b6d54cc234e]
+
+2013-11-06 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ tcomdatacu: partStartIdx is always negative, no need to have else
+ block in InitCU()
+ [11a4c5a15d79]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ tcomdatacu: remove the for loop in InitCU(), which will never
+ execute
+
+ partStartIdx is always zero or negative, and the numElements is also
+ always zero or negative the for will never executed if numElements
+ is zero or negative, removed the for loop block in initCU()
+ [8bdb65fef0f0]
+
+2013-11-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: nits
+ [eab2d925a0e0]
+
+ * source/common/x86/pixel.h:
+ pixel.h: nit
+ [267b3da1a734]
+
+2013-11-06 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h,
+ source/encoder/motion.cpp, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h:
+ asm: ipfilter_ss[FILTER_V_S_S_8]
+ [de7a50155cba]
+
+2013-11-06 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/output/y4m.cpp, source/output/yuv.cpp:
+ YUV, Y4M Output: bitdepth confusion resolved
+ [846e2c0d8478]
+
+2013-11-06 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 24x32 block
+ [8f71fba52d55]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 16xN blocks
+ [264b1458963a]
+
+2013-11-06 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h:
+ Adding asm function declaration and function pointer initializations
+ for luma hps functions.
+ [450947d76251]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for luma hps filter functions for all block sizes.
+ [01d97a51d37d]
+
+2013-11-06 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [21e08cf159c5]
+
+ * source/output/yuv.cpp:
+ YUV Output: more rext merge bugs
+ [b2068453b55b]
+
+ * source/output/yuv.cpp:
+ YUV output: correct a rext merge issue
+ [dd8510d84b5a]
+
+2013-11-06 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 4xN blocks
+ [bab35592e71c]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm:
+ asm code for blockcopy_sp, 8xN blocks
+ [73b4015984fd]
+
+2013-11-06 Nabajit Deka <Nabajit Deka>
+
+ * source/test/ipfilterharness.cpp:
+ Adding test bench code for luma hps filter functions.
+ [cb323bec7d06]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Adding function pointer array and C primitive for luma hps filter
+ functions.
+ [e31319dfb866]
+
+2013-11-06 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ tcomdatacu: remove memset in initSubCU()
+
+ m_trCoeffY, m_trCoeffCb, m_trCoeffCr, m_iPCMSampleY, m_iPCMSampleCb
+ and m_iPCMSampleCr buffers are getting initialized in initCU(), and
+ its not required to set 0 in initSubCU()
+ [1b913b8f7f19]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ tcomdatacu: remove memset in initEstData()
+
+ m_trCoeffY, m_trCoeffCb, m_trCoeffCr, m_iPCMSampleY, m_iPCMSampleCb
+ and m_iPCMSampleCr buffers are getting initialized in initCU(), and
+ its not required to set 0 in initEstData()
+ [d044314537ad]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ tcomdatacu: remove unused set functions
+ [9368bfd107b8]
+
+2013-11-06 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: simplify subpel refine, drop height+1 interpolation
+
+ This is in preparation of enabling assembly versions of
+ interpolation functions
+ [a1d576fbd0b0]
+
+2013-11-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: simplify lowres subpel refine
+ [72520485725e]
+
+2013-11-06 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: move lastNonB set outside if expression for both I and P
+ clauses
+ [412d2f3a2bd2]
+
+2013-11-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: move StarPatternSearch higher in the file, no behavior
+ change
+ [bc99537483f1]
+
+2013-11-06 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: link platform libraries into the shared library (fixes PPA
+ builds)
+ [0234bd136cb9]
+
+2013-11-05 Steve Borho <steve@borho.org>
+
+ * source/cmake/CMakeDetermineASM_YASMCompiler.cmake:
+ cmake: use detected yasm executable for CMAKE_ASM_YASM_COMPILER
+ variable
+ [ae906d212c5e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/common.cpp,
+ source/common/common.h, source/encoder/cturow.cpp,
+ source/encoder/encoder.cpp, source/input/input.h,
+ source/input/y4m.cpp, source/input/y4m.h, source/input/yuv.cpp,
+ source/input/yuv.h, source/output/output.cpp,
+ source/output/output.h, source/output/y4m.cpp, source/output/y4m.h,
+ source/output/yuv.cpp, source/output/yuv.h, source/x265.cpp,
+ source/x265.h:
+ rext: partial support for 4:2:2 and 4:4:4 color spaces
+
+ reconFileBitDepth did not need to be a member of x265_param, and the
+ comment for inputBitDepth needed to mention that it also determined
+ the internal bit depth of the encoder.
+ [7cdcf1a03d93]
+
+ * source/common/common.cpp, source/common/version.cpp,
+ source/encoder/encoder.cpp, source/input/input.cpp,
+ source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h, source/output/y4m.cpp,
+ source/x265.cpp, source/x265.h:
+ main10: allow pixel sizes of 10 and 12 for HIGH_BIT_DEPTH builds
+
+ Removes param.internalBitDepth and uses inputBitDepth to mean both
+ the size of input pixels and internal pixels (x265 will do no color
+ space conversions)
+ [6a94dca867c8]
+
+ * source/common/dct.cpp, source/common/ipfilter.cpp:
+ main10: fix dct and MC primitives to correctly respect larger pixel
+ sizes
+ [b24d05dd4990]
+
+ * source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/common.cpp,
+ source/common/cpu.cpp, source/common/dct.cpp,
+ source/common/ipfilter.cpp, source/common/lowres.cpp,
+ source/common/lowres.h, source/common/pixel.cpp, source/common/vec
+ /dct-sse41.cpp, source/common/vec/intra-sse41.cpp, source/common/vec
+ /intra-ssse3.cpp, source/common/vec/ipfilter-sse41.cpp,
+ source/common/vec/ipfilter-ssse3.cpp, source/common/vec/pixel-
+ avx2.cpp, source/common/vec/pixel16-sse41.cpp, source/common/x86
+ /asm-primitives.cpp, source/common/x86/ipfilter8.h,
+ source/common/x86/mc.h, source/common/x86/pixel.h,
+ source/encoder/bitcost.cpp, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/ratecontrol.cpp, source/input/y4m.cpp,
+ source/input/y4m.h, source/input/yuv.cpp, source/input/yuv.h,
+ source/output/y4m.cpp, source/output/yuv.cpp,
+ source/test/ipfilterharness.cpp, source/test/pixelharness.h,
+ source/test/testbench.cpp, source/x265.cpp:
+ uncrustify source tree
+ [0c9d8360e1b0]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: better fix for --b-adapt 0
+
+ Don't allow an IDR to be re-ordered
+ [f56a9fc5e999]
+
+ * source/x265.cpp:
+ cli: re-introduce x265_setup_primitives() call prior to
+ printVersion()
+
+ This way --cpuid N is properly respected. This orders the output of
+ the log messages, but the total number is the same.
+ [76d1d1aa3700]
+
+ * source/encoder/encoder.cpp:
+ encoder: nits
+ [9b7ca5a14605]
+
+ * source/encoder/encoder.cpp:
+ log: cleanup Encoder::printSummary()
+ [d8513c114f42]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: do not force P before I with --b-adapt 0
+
+ I don't remember what bug this was covering up, but it's no longer
+ necessary and it was breaking the later code which expected a single
+ non-B per mini-GOP
+ [f7e55b468373]
+
+ * source/common/primitives.cpp:
+ log: only log primitve status if some primitives are missing
+
+ Don't waste a line of log output to report everything is normal
+ [e566ef4d3e95]
+
+2013-11-05 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/common/common.cpp, source/x265.cpp, source/x265.h:
+ cli: add option to turn on AQ
+ [ddf4d33e8c15]
+
+2013-11-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ log: white-space nit
+ [f6cb006b3628]
+
+2013-10-30 Kurtnoise <kurtnoise@free.fr>
+
+ * source/x265.cpp:
+ Display also version info during encoding instead of primitives
+ setup.
+ [5895ca0d36be]
+
+2013-11-05 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ tenccu: remove calling outTempCU->initEstData() multiple time
+ without modifying outTempCU
+ [486f2cff2c3e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ tcomdatacu: Remove memset from create(), these variables are
+ initialized in initCU()
+ [67ec1b965461]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ tcomdatacu: remove unused copySubCU() function
+ [1028756870f7]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ tcomdatacu: remove unused copyInterPredInfoFrom() function
+ [f3f510808287]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ tcomdatacu: remove unused setOutsideCUPart() function
+ [a38c5f57cf7e]
+
+2013-11-05 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/pixel.h:
+ changed the naming convention for blockcopy_sp
+ [e3853b2cbaa8]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ changed naming convention and added unit test code for blockcopy_sp
+ function
+ [9deec9d96ed4]
+
+2013-11-02 Neil Piken <neilpiken@gmail.com>
+
+ * build/README.txt:
+ cmake: document minimum cmake required version for VC12
+ [be7af3216ebd]
+
+2013-11-05 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ Merge with stable
+ [ba8c09070e54]
+
+ * source/x265.cpp:
+ cli: use 64bit byte counter (closes #1)
+ [3c15a9f74091] <stable>
+
+2013-11-05 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input:reset the file pointer before return in guessFrameCount()
+ [ece7af249573]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ tenccu:remove calling outTempCU->initEstData() multiple time without
+ changing outTempCU from xCompressIntraCU
+ [925ed6f7ed34]
+
+2013-11-05 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h:
+ Adding asm function declaration and function pointer initializations
+ for luma vps functions.
+ [df9d7d85a146]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: routines for luma vps filter functions for all block sizes.
+ [29d3861c5370]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Adding test bench code for luma vps filter functions.
+ [f8053c69b732]
+
+ * source/common/ipfilter.cpp:
+ Adding C primitive for luma vps filter functions.
+ [9d29fff93f3a]
+
+ * source/common/primitives.h:
+ Adding function pointer type & array definition for luma vps filter
+ functions.
+ [ed0dd83bb7ca]
+
+2013-11-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h, source/x265.h:
+ api: use uint64_t to accumulate bits
+ [c57ed1fd7bd5]
+
+2013-11-05 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h, source/encoder/CMakeLists.txt,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/framefilter.cpp:
+ collect global stats of psnr and ssim
+ [6f19e6ef9ab5]
+
+2013-11-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: make b-adapt 0 set lastNonB, leadingBframes, and
+ bLastMiniGopBFrame
+ [7aa33c9734f5]
+
+ * source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ white-space fixes following UInt->uint32_t search and replace
+ [686b5b502797]
+
+ * source/input/y4m.cpp:
+ y4m: fix two more while loops
+ [22d51335d4ec]
+
+ * source/input/y4m.cpp:
+ y4m: fix eof detection during header parsing
+
+ Evaluating an istream as a bool returns the file status. When ifs
+ was converted to a stream pointer, these while loops needed to be
+ changed because a bool evaluation of a pointer is always true if the
+ pointer is not NULL
+ [9732c845db44]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: shorten copy primitive names for consistency
+ [f3106abb88b2]
+
+2013-11-04 Praveen Tiwari <Praveen Tiwari>
+
+ * source/test/pixelharness.cpp:
+ corrected buffer name for chroma_copy_pp
+ [35989e4e0b46]
+
+ * source/common/x86/pixel.h:
+ pixel.h, added asm function decleration for blockcopy_ps_c
+ [4cd16b86488c]
+
+ * source/common/pixel.cpp:
+ pixel.cpp, initialization of function pointer table for
+ blockcopy_ps_c partitions
+ [64f25611bcb2]
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ added C primitive for blockcopy_p_s and function pointer creation
+ for new type
+ [e61a0b1c035b]
+
+ * source/common/CMakeLists.txt, source/common/x86/asm-primitives.cpp,
+ source/common/x86/blockcopy8.asm, source/common/x86/pixel.h,
+ source/test/pixelharness.cpp:
+ asm code and test bench integration code for blockcopy_pp_c
+ partitions
+ [7898c58d9cbc]
+
+2013-11-04 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm, source/test/ipfilterharness.cpp:
+ fix bug in chroma_p2s and testbench
+ [c83157a8b616]
+
+ * source/test/ipfilterharness.cpp:
+ update authors header
+ [6e211f980d98]
+
+2013-11-04 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ RDOQ : pass a parameter to temporarily disable RDOQ.
+
+ default value of parameter is true, that means RDOQ is not disabled.
+ Outputs mustnot change in any rd levels.
+ [91d96a6038e2]
+
+2013-11-04 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp, source/common/lowres.cpp,
+ source/common/lowres.h, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp:
+ Dropping the 'm_' prefix from names used for members of struct type
+ Lowres
+ [37903c6fd1f9]
+
+2013-11-04 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: re-enable sad_x3 following alignment workaround
+ [814b4639d6a6]
+
+2013-11-04 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/lowres.h, source/encoder/encoder.cpp,
+ source/encoder/ratecontrol.cpp:
+ Generating sum & ssd values for weightp decision in lookahead
+ [2ab39c2dd50f]
+
+2013-11-02 Wenju He <wenju@multicorewareinc.com>
+
+ * source/encoder/motion.cpp:
+ fix vec/asm crash in COST_MV_X3_DIR: costs+3 is not aligned
+ [8621008756ba]
+
+2013-10-30 idxa <idxa@sina.com>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/x265.cpp, source/x265.h:
+ rc: add CRF ratecontrol
+
+ 1. add a parameter of "--crf" to the command line
+
+ 2. modify the running branches of rateControlStart, using
+ "if(isAbr)" instead of "switch (cfg->param.rc.rateControlMode)", for
+ the logic of classifying the combination of multiple ratecontrol
+ methods is very complex, it is not only based on rateControlMode, so
+ porting x264's way looks feasible.
+
+ 3. add crf method into x265
+ [c51c35880df5]
+
+2013-11-01 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt:
+ cmake: cleanup intrinc primitives
+ [f81af999ef6c]
+
+ * source/common/CMakeLists.txt:
+ cmake: more asm simplifications
+ [ad8222ed1360]
+
+ * source/encoder/ratecontrol.cpp:
+ rc: replace tabs with spaces
+ [0d79e31728a4]
+
+ * source/CMakeLists.txt:
+ cmake: drop STLport support, it is no longer necessary
+ [a3d07bee1316]
+
+2013-10-27 Neil Piken <neilpiken@gmail.com>
+
+ * build/vc12-x86/build-all.bat, build/vc12-x86/make-solutions.bat,
+ build/vc12-x86_64/build-all.bat, build/vc12-x86_64/make-
+ solutions.bat:
+ cmake: add Visual Studio 2013 build folder
+ [d7986ac66bc1]
+
+2013-11-01 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt:
+ cmake: remove obsolete build flags
+ [a1502a1f1fa2]
+
+2013-10-31 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: remove assembly library to fix MSVC static lib
+
+ This fixes the static library built by VisualStudio to include the
+ assembly objects. It has the side effect of causing the assembly
+ objects to be built once for the static lib and once for the shared
+ lib, which can be avoided by unloading the shared lib project while
+ you are working on assembly within VisualStudio
+ [3716c9f588df]
+
+ * source/cmake/CMakeDetermineASM_YASMCompiler.cmake:
+ cmake: fix warning about ASM_YASM compiler being unknown
+ [1c5122851247]
+
+ * source/x265.cpp:
+ cli: tweaks for command line help
+ [bd53cb226710]
+
+ * source/common/common.cpp:
+ common: fix int typecast to operate on results of float expression
+ [ae576a38ca5b]
+
+ * source/common/common.cpp, source/common/primitives.cpp,
+ source/common/vec/vec-primitives.cpp, source/x265.h:
+ Merge with stable
+ [a4e9f242fdf3]
+
+ * source/x265.h:
+ api: give structs the same name as their typedef
+
+ This allows them to be forward-decl'd.
+ [30a0c2c5fcbd] <stable>
+
+ * source/common/cpu.cpp, source/common/vec/vec-primitives.cpp:
+ cpu: move ASM fallback functions out of vec-primitives.cpp
+
+ This fixes link errors when ASM and vector primitives are both
+ disabled
+ [e1dde58cf6e1] <stable>
+
+ * source/common/common.cpp:
+ common: disable MSVC warning that is exposed when compiling without
+ primitives
+ [01e77fde7194] <stable>
+
+ * source/common/primitives.cpp:
+ primitives: fix compile warning exposed when ASM and instrincs are
+ both disabled
+ [ad6d6ddd7037] <stable>
+
+ * source/common/common.cpp, source/x265.h:
+ api: add zero-latency tune target
+
+ This just disables lookahead and B frames at the moment.
+ [8afb161419df]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable more sad_x3 functions which cause crashes on Haswell
+ [885e41fac726]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable sad_x3[LUMA_32xN], they cause crashes on Haswell
+
+ Seen crashes on Windows, Mac, and Linux. The only constant is
+ Haswell.
+ [51660f092aa4]
+
+ * source/common/common.cpp:
+ common: lower search range for higher presets with max CTU size 32
+ [21da3bba6e70]
+
+2013-10-30 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/common.cpp, source/x265.cpp,
+ source/x265.def.in, source/x265.h:
+ api: introduce performance presets
+ [0607132e6b11]
+
+2013-10-31 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ disable two avx2 routines which fail unit tests
+ [2621639c96b5]
+
+ * source/common/vec/pixel-sse41.cpp:
+ clang: re-disable 12x16, sse_pp_12x16 testbench fails
+ [8f4744bdf6fc]
+
+2013-10-31 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm:
+ asm: fix typo bug in chroma_p2s
+ [e842b2a4aeeb]
+
+2013-10-31 Nabajit Deka <Nabajit Deka>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm:
+ asm: routines for vertical luma filter for all block sizes
+ [faf29e19669f]
+
+ * source/test/ipfilterharness.cpp:
+ Ensure that the destination buffer is not overwritten. 64 is added
+ as it is the maximum width supported for luma filter.
+ [935d96d93b70]
+
+2013-10-31 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ remove clang prevention for 12x16 pixel primitives
+ [30c655ec95f7]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove sad_x3_12 and sad_x4_16 intrinsic functions
+ [2d08d77871b0]
+
+ * source/encoder/ratecontrol.cpp:
+ aq: remove unnecessary double->float->double conversions
+ [abedbfdb1e12]
+
+ * source/encoder/ratecontrol.cpp:
+ aq: fixes for loop over 16x16 blocks
+
+ This loop was busted when maxCUSize was not 64. It still has a
+ problem with pictures that are not even multiples of 16. The
+ lookahead will extend out the frame during lowres init to an even
+ multiple of 16 pixels, so it's lowres CU width will be wider than
+ the AQ code will use, so the block_xy offsets will be wrong for
+ lookahead analysis.
+
+ The pixel extension needs to be moved earlier so AQ and the
+ lookahead have a consistent 16x16 CU width
+ [974a6afaddca]
+
+ * source/encoder/ratecontrol.cpp:
+ aq: simplify acEnergyCu
+
+ EMMS was in the wrong place, there were a few white-space issues.
+ [180d95f09057]
+
+ * source/encoder/ratecontrol.cpp:
+ aq: use more explicit chroma variance stride
+ [3e2d69028a3b]
+
+ * source/encoder/slicetype.cpp:
+ aq: fix NULL pointer check
+ [9acea4fbacef]
+
+2013-10-31 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ aq: set qp, lambda for every CU in the row before processing the CU
+
+ enabled bUseDQP flag when AQ is mode is ON.
+ [650e40a62322]
+
+2013-10-31 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ compress: cleanup, remove unused data structs
+ [eed2b51675cf]
+
+2013-10-31 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ no-rdo: Use entropy encoder for bit estimation.
+
+ Instead of me-bit estimation, use entropy encoder.
+ [775519fb9ba1]
+
+2013-10-31 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ assembly code for pixel_sad_x4_12x16
+ [ed884e91d5d5]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ assembly code for pixel_sad_x3_12x16
+ [7ccdf622d081]
+
+2013-10-31 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ asm: chroma_p2s to replace ipfilter_p2s
+ [4a40c4069ad1]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/x86/ipfilter8.asm, source/test/ipfilterharness.cpp:
+ asm: fix bug in luma_p2s and active it in encoder
+ [21dbf988079b]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: less code size by reduce constant offset
+ [a64e813de628]
+
+ * source/common/x86/sad-a.asm:
+ asm: fix stack broken bug
+ [08bc7ccc8aad]
+
+2013-10-31 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/sad-a.asm:
+ asm: reduce large code size in sad_16xN, sad_32xN for better cache
+ performance
+ [9a0da4e6d9e3]
+
+ * source/common/x86/sad-a.asm:
+ asm: reduce large code size in pixel_sad_8x32 for better cache
+ performance
+ [e4a75488c147]
+
+2013-10-31 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/sad-a.asm:
+ asm: fix the bug which occured at win32 compile
+ [4a886c170a51]
+
+2013-10-31 Steve Borho <steve@borho.org>
+
+ * source/test/testpool.cpp:
+ testpool: add missing stdio.h for printf
+ [ec6b4d35f110]
+
+2013-10-30 Steve Borho <steve@borho.org>
+
+ * source/common/vec/ipfilter-sse41.cpp:
+ ipfilter: fix 16bpp build following f0eea23735a6
+ [f06e4a24b388]
+
+ * source/encoder/framefilter.cpp:
+ fix shadowed variable warning
+ [a406f7c1dd3b]
+
+2013-10-30 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/pixel.cpp:
+ added blockcopy_pp_c primitive according to modified argument list
+ [7f68debc632b]
+
+ * source/common/primitives.h, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ added test code for blockcopy_pp function
+ [e8e84b67cf8f]
+
+2013-10-30 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove sad_12, sad_48, and sad_64
+
+ All single sads have asm coverage
+ [645899ddda59]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove 24 and 32 width sad intrinsic functions
+
+ These are now covered by assembly. Only 12, 48, and 64 remain
+ because they still lack x3 and x4 versions.
+ [eccfe236169b]
+
+2013-10-30 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ assembly code for pixel_sad_x4_32xN
+ [c3cf2c42e854]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ assembly code for pixel_sad_x3_32xN
+ [e371719c4c47]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ assembly code for pixel_sad_x4_24x32
+ [f021f06f3b80]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h,
+ source/common/x86/sad-a.asm:
+ assembly code for pixel_sad_x3_24x32
+ [de91fbc95b4a]
+
+2013-10-30 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h,
+ source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_12x16
+ [8ee637b11d17]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h,
+ source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_24x32
+ [ed5d877b8452]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h,
+ source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_48x64
+ [78db76b7abec]
+
+2013-10-30 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ asm: filterConvertPelToShort
+ [1a51e6cb0e0c]
+
+2013-10-30 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_64x48 and pixel_sad_64x64
+ [700b46a1a0cf]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_64x32
+ [42ad273b1d4f]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_64x16
+ [4414f3394a61]
+
+ * source/common/x86/sad-a.asm:
+ asm: modified common macro for pixel_sad_64xN
+ [e9340727231d]
+
+2013-10-30 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ no-rdo: use bit estimates from ME to calculate RDcost.
+
+ bits estimated in ME stored in CU and used for calculating rdcost
+ along with distortion. This results in better bitrate with no-rdo,
+ with small drop in PSNR.
+ [77db80a67f4e]
+
+2013-10-30 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm:
+ chroma interp_4tap_vert_pp all blocks asm code
+ [74bf8634037c]
+
+2013-10-30 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/pixel.h:
+ asm: declare asm function pointers for sad_64xN partitions
+ [9f9b2f8d293a]
+
+2013-10-30 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove sad_x3_4x16 and sad_x4_4x16, no longer HAVE_MMX
+ [65462024832b]
+
+2013-10-30 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ assembly code for pixel_sad_x3_4x16 and pixel_sad_x4_4x16
+ [50c2c41ac0ea]
+
+2013-10-30 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h, source/encoder/frameencoder.cpp:
+ rename variable name m_Bitstream to m_bitstream
+ [e2a1dcca4518]
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ writing hash SEI messages in frameencoder
+ [4c047e5ff69b]
+
+2013-10-30 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_16x12
+ [40e38dfa5cdd]
+
+2013-10-30 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove sad_8, sad_x3_8, sad_x4_8 intrinsic functions
+ [abf8286f3fa9]
+
+2013-10-30 Min Chen <chenm003@163.com>
+
+ * source/test/ipfilterharness.cpp:
+ testbench: upgrade for check_IPFilter_primitive, don't pass wrong
+ (width, height, stride) to asm
+ [20aa88626c52]
+
+2013-10-29 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_8x32
+ [c048ef93ea55]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_32x64
+ [d3e510bb67cf]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_32x16
+ [def3d61bc4b0]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_32x32
+ [77aa24f08e76]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_32x24
+ [840a638609b0]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_32x8
+ [1aec8ddad7a3]
+
+ * source/common/x86/sad-a.asm:
+ asm: created comman asm macro for pixel_sad_32xN functions
+ [f69c0f13c7b0]
+
+2013-10-29 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove sad_16, sad_x3_16 and sad_x4_16
+
+ We have assembly coverage for everything but sad_16x12; which I've
+ put on the top of our TODO list.
+ [42ae4dc90005]
+
+2013-10-29 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/common/ipfilter.cpp, source/encoder/motion.cpp,
+ source/test/intrapredharness.cpp:
+ refactor: Check need for signed/unsigned int16_t
+ [c946d617fd9f]
+
+2013-10-29 Steve Borho <steve@borho.org>
+
+ * Merge
+ [b02df3ebdf39]
+
+2013-10-29 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: Remove initializations in initCU() already initialized
+ in create()
+
+ currently m_partSizes, m_mvpIdx[0] and m_mvpIdx[1] all three
+ variables initialized using memset in TComDataCU::create() and same
+ initialization in done in TComDataCU::initCU(), removed the memset
+ in initCU() to avoid the duplicate initilization
+ [deac0d819c43]
+
+2013-10-29 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComMotionInfo.cpp:
+ cleanups: Remove unnecessary reset.
+
+ If refIdx is set to NOT_VALID, mv will not be used. Hence resetting
+ MVs to 0 can be safely removed.
+ [50cd62d85ead]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Cleanups: Remove call to setALLMVField, and set only required
+ members.
+ [6552629b45c5]
+
+ * source/Lib/TLibCommon/TComMotionInfo.h:
+ Cleanups: MVField - make members public.
+
+ set and clear methods take many cycles, where most of the time only
+ one index need to be set. By giving public access, caller can set
+ required indexes.
+ [f1a1d4f19db4]
+
+2013-10-29 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h, source/encoder/compress.cpp:
+ no_rdo: implementation of new early exit
+
+ early exit is done when the RD cost of best mode at depth "n" is
+ less than the average of RD cost of the CU's at depth "n" of
+ previosuly coded CU's(CUAbove, CUAboveRight, CUAoveLeft, CULeft,
+ CUColocated). For HD videos performance improvement of 20 to 27%
+ bitrate increases by 0.75 to 0.02%
+ [0e0d0d2e1d2b]
+
+2013-10-29 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/pixel.h:
+ asm: declare asm function pointers for sad_32xN partitions
+ [b3208fa4294b]
+
+2013-10-29 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm:
+ asm: improvement on chroma_hpp{2,4} by reduce memory operator
+ [48b75fc2e614]
+
+2013-10-29 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_16x4
+ [fb7b95d11c77]
+
+2013-10-29 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ no-rdo: add no-residue candidate in merge2Nx2N
+ [064f309d4862]
+
+2013-10-29 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/common/primitives.h,
+ source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [8b909d315964]
+
+ * .hgtags:
+ Added tag 0.5 for changeset 69acb3cb777f
+ [9eef2952ea16] <stable>
+
+2013-10-28 idxa <idxa>
+
+ * source/common/common.cpp, source/encoder/ratecontrol.cpp:
+ rc: improvements for ABR
+
+ 1. modify rateTolerance from 0.1 to 1.0, in order to allow the final
+ bitrate to fluctuate more(CBR to ABR)
+
+ 2. ncu in initialization of ratecontrol is set according to 16x16
+ block size which is same to x264, for the empirical formula in x264
+ is for 16x16 size.
+
+ 3. do more modification to make ratecontrol algorithm of x265 more
+ similar to x264 for x264 has been developed for about 10 years and
+ is very mature , it is reasonale to take its method firstly.
+ [69acb3cb777f] [0.5] <stable>
+
+2013-10-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: prevent divide by zero in elapsedVideoTime calculation
+ [6528ab023062] <stable>
+
+2013-10-29 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h:
+ primitives: fix ordering of LUMA_4x16 LUMA_16x4 to match other AMP
+ partitions
+
+ This also fixes the testbench to properly represent 16x4 and 4x16
+ partition primitives
+ [9713ec98fa8a] <stable>
+
+2013-10-29 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ no-rdo: add no-residue candidate in merge2Nx2N
+ [358400cb0c67]
+
+2013-10-29 Murugan Vairavel <murugan@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h:
+ Cleanups: Replacing Ushort with uint16_t
+ [4c618e33c25f]
+
+2013-10-29 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h:
+ primitives: fix ordering of LUMA_4x16 LUMA_16x4 to match other AMP
+ partitions
+
+ This also fixes the testbench to properly represent 16x4 and 4x16
+ partition primitives
+ [4db0aec57138]
+
+2013-10-29 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_16x64
+ [3c0b386fe799]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm: assembly code for pixel_sad_16x32
+ [f44cc9f976cc]
+
+2013-10-29 Steve Borho <steve@borho.org>
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: fix VC9 build with ASM disabled but intrinsics enabled
+ [8846f5cf6d8d]
+
+ * source/common/threadpool.cpp, source/input/y4m.cpp,
+ source/input/yuv.cpp:
+ use correct _WIN32 build guard
+ [560bd09eb4bb]
+
+2013-10-29 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h,
+ source/test/ipfilterharness.cpp:
+ asm: interp_8tap_v_sp for ipfilter_sp[FILTER_V_S_P_8]
+ [44c38df44532]
+
+2013-10-28 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter-sse41.cpp, source/encoder/motion.cpp,
+ source/test/ipfilterharness.cpp:
+ replace pointer to coeff by coeffIdx in ipfilter_sp
+ [f0eea23735a6]
+
+ * source/encoder/motion.cpp:
+ disable interpolate horizontal merge
+
+ we need width is multiple of 4 in asm code, the maskmovq is very
+ expensive
+ [a36a2e39f983]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm, source/common/x86/ipfilter8.h,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ asm: interp_8tap_hv_pp_8x8() for Interpolate_HV_8x8
+ [31dfc1580bf2]
+
+2013-10-28 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/sad-a.asm:
+ asm code for pixel_sad_x3_16x64 and pixel_sad_x4_16x64
+ [0666d56aaa42]
+
+2013-10-28 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.cpp:
+ rc: implement qp with Aq for each Cu before encoding them.
+ [c3a28172894a]
+
+2013-10-28 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp, source/input/input.h,
+ source/input/y4m.cpp, source/input/y4m.h, source/input/yuv.cpp,
+ source/input/yuv.h, source/output/output.cpp,
+ source/output/output.h, source/output/yuv.cpp, source/output/yuv.h,
+ source/x265.cpp, source/x265.h:
+ refactor: (Input/Output files) - Check need of signed/unsigned int
+ [5e1fb266b39f]
+
+2013-10-28 murugan <murugan@multicorewareinc.com Murugan Vairavel>
+
+ * source/output/y4m.cpp, source/output/yuv.cpp:
+ refactor: use unsigned int16 types where applicable
+ [4de8551f1f52]
+
+2013-10-28 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/common/common.cpp, source/common/dct.cpp,
+ source/common/lowres.cpp, source/common/lowres.h,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/threading.h, source/common/vec/dct-sse3.cpp,
+ source/common/vec/dct-sse41.cpp, source/common/vec/dct-ssse3.cpp,
+ source/common/vec/intra-sse41.cpp, source/common/vec/pixel-avx2.cpp,
+ source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel16-sse41.cpp, source/compat/getopt/getopt.c,
+ source/compat/getopt/getopt.h, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp:
+ refactor: replace int pointers with int32_t and UInt with uint32_t
+ [a96b8f225c4a]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/encoder/compress.cpp, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp:
+ refactor: replace ternary operator with loop variable and enum with
+ #define
+ [4176ba91f62d]
+
+2013-10-28 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp, source/encoder/encoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ row wise generation of hash in framefilter
+ [edd33e942d7b]
+
+2013-10-28 Steve Borho <steve@borho.org>
+
+ * source/input/input.cpp, source/input/input.h, source/x265.cpp:
+ cli: add --y4m option to force Y4M stream parser
+ [fa30212a64f8]
+
+2013-10-28 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/input/y4m.cpp, source/input/y4m.h:
+ input: read y4m input from stdin if filename is passed as "-"
+ [f59393a695ee]
+
+ * source/input/y4m.cpp:
+ y4m : bug fix for calculating framesize in skipFrames()
+ [7916afc6c9c4]
+
+2013-10-28 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/primitives.h,
+ source/encoder/compress.cpp, source/encoder/motion.cpp,
+ source/encoder/slicetype.cpp, source/test/pixelharness.cpp:
+ primitives: lower case partitionFromSizes() function to follow
+ coding style
+ [ef2428fd32fe]
+
+2013-10-27 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.cpp, source/common/primitives.h:
+ primitives: micro optimizations of PartitionFromSizes()
+
+ * use int for w, h
+ * change lookup table to uint8_t
+ * make function inlined
+ [1a65c6df7e70]
+
+2013-10-27 Wenju He <wenju@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ need not compute chroma in xGetInterPredictionError
+ [7c2ce4d33f62]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix variable name, msg to mrg
+ [e1453bc3ae1e]
+
+2013-10-25 Steve Borho <steve@borho.org>
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: do not check for inactive read thread until read queue is
+ empty
+ [ccac3a7d3622]
+
+ * source/input/yuv.cpp:
+ yuv: set binary mode on stdin on Windows
+ [34573a44f81d]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: do not use ifstream.good(), use ifstream.ignore() for
+ skipFrames
+ [bc044398a2c1]
+
+ * source/x265.cpp:
+ cli: improve handling of encoder start failures; no pictures encoded
+ [8606211480ea]
+
+ * source/encoder/encoder.cpp:
+ encoder: prevent divide by zero in elapsedVideoTime calculation
+ [824ede6074a6]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: prevent more deadlocks on file read errors
+ [12d6ba61b235]
+
+ * source/input/yuv.cpp:
+ yuv: fix --skip behavior for stdin
+ [565abe18280a]
+
+ * source/cmake/version.cmake:
+ cmake: improve .hg_archive parsing
+
+ Patch submitted by HaaeeD via pull request
+ [7dff7b61898c]
+
+ * Merge
+ [4d024982658d]
+
+ * Merge with stable
+ [4cdd80a730ab]
+
+ * source/x265.cpp:
+ cli: improve handling of unknown input frame count
+ [0c8e2580b410] <stable>
+
+ * source/encoder/encoder.cpp:
+ encoder: calculate encoded video time in floating point
+ [9c26397ec80c] <stable>
+
+ * source/common/ipfilter.cpp:
+ Merged in mcwmurugan/x265 (pull request #5)
+
+ CleanUps: Replacing Short with int16_t
+ [4ced02a9a5b2]
+
+2013-10-25 Murugan <murugan@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/dct.cpp,
+ source/common/intrapred.cpp, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy-sse3.cpp, source/common/vec/dct-
+ sse3.cpp, source/common/vec/dct-sse41.cpp, source/common/vec/dct-
+ ssse3.cpp, source/common/vec/intra-ssse3.cpp, source/common/vec
+ /ipfilter-sse41.cpp, source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/x86/pixel.h, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/output/y4m.cpp,
+ source/output/yuv.cpp, source/test/intrapredharness.cpp,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ CleanUps: Replacing Short with int16_t
+ [2126b735949e]
+
+2013-10-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [f645df2eb5bd]
+
+ * source/input/yuv.cpp:
+ yuv: do not attempt to measure size of stdin
+ [88e0d2dbb8fe]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: increase vertical padding to account for
+ TComDataCU::clipMv() logic
+
+ mvmin is clamped to -(g_maxCUHeight + offset + m_cuPelY) where
+ offset is 8
+ [9a7c5831ebf8] <stable>
+
+2013-10-25 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ rc: Bug fix. use the slice type from the right context in
+ rateControlEnd.
+ [782e2d041d3f] <stable>
+
+2013-10-25 Steve Borho <steve@borho.org>
+
+ * source/input/yuv.cpp:
+ Merge with stable
+ [333c7a8d1f49]
+
+ * source/input/yuv.cpp:
+ yuv: zero ifs pointer if deleted
+ [3d733e4c52c7]
+
+2013-10-25 Nabajit Deka <Nabajit Deka>
+
+ * source/common/ipfilter.cpp, source/common/x86/ipfilter8.h:
+ Function declarations and function pointers set up for the vertical
+ luma filter functions.
+ [2adbf0c4c4c0]
+
+2013-10-25 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ tenccu : remove unused functions
+ [74f7e6d96d2d]
+
+ * source/Lib/TLibCommon/NAL.h:
+ nal: remove unused helper functions
+ [85c064318253]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: initialize the input buffer (buf) pointer
+ [ba7d3d79c5a3] <stable>
+
+ * source/input/yuv.cpp, source/input/yuv.h:
+ input: read yuv input from stdin if filename is passed as "-"
+ [9223c4aff1e0]
+
+2013-10-25 Nabajit Deka <Nabajit Deka>
+
+ * source/common/primitives.h, source/test/ipfilterharness.cpp:
+ Test bench code for vertical luma filter.
+ [4ca4da7bdd36]
+
+2013-10-25 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ testbench: differentiate the two weight functions
+ [159876e25c7a]
+
+2013-10-25 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: modified weightUnidirPixel to match the changes done in c
+ code
+ [298b17e548d4]
+
+2013-10-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/reference.cpp:
+ reference: initialize weight buffer pointer
+ [4125c74ff21d]
+
+2013-10-25 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm:
+ more general on ipfilter macro FILTER_H8_W8
+ [6d6fe9d208d1]
+
+2013-10-25 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/compat/getopt/LGPL.txt,
+ source/compat/getopt/getopt.c, source/compat/getopt/getopt.h,
+ source/compat/msvc/LGPL.txt, source/compat/msvc/getopt.c,
+ source/compat/msvc/getopt.h:
+ cmake: segregate the getopt files into their own compat/ folder
+ [84aea900ea0d]
+
+ * Merge with stable
+ [7145f423fd03]
+
+ * source/CMakeLists.txt:
+ cmake: add compat/msvc to include path if using our getopt.h
+ [7cc9e1566162] <stable>
+
+ * source/input/y4m.cpp, source/input/yuv.cpp, source/x265.cpp:
+ input: improve handling of frame count estimation failures
+ [88f69939bc17] <stable>
+
+2013-10-24 Steve Borho <steve@borho.org>
+
+ * source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h, source/x265.cpp:
+ input: add explicit startReader() method to prevent file handle use
+ collisions
+ [6e4ef45441b7] <stable>
+
+ * source/encoder/encoder.cpp:
+ encoder: fix per-frame logging without CSV file
+ [260bff6100f2] <stable>
+
+ * source/input/y4m.cpp:
+ y4m: directly use member variables while parsing header
+ [0174ac7bc2b1] <stable>
+
+ * source/output/yuv.cpp:
+ yuv: fix VC9 compile warning - possible loss of precision
+ [34c9951b15fa] <stable>
+
+ * source/common/common.cpp:
+ Merge with stable
+ [f886f2ed1fcd]
+
+ * source/CMakeLists.txt:
+ cmake: use system native stdint.h and getopt if they are found
+ [1ab80557656a] <stable>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: sse_sp[LUMA_12x16] fails tests on clang, disable it
+ [17195e65e91b] <stable>
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: add missing carriage returns from error log messages
+ [63ca0173f8cb] <stable>
+
+ * source/input/y4m.cpp:
+ y4m: disable file reader thread on frame header errors
+
+ Prevents deadlocks from malformed Y4M files
+ [776c2ec26a5f] <stable>
+
+ * source/common/common.cpp:
+ common: hoist x265_mdate above using namespace x265
+
+ I do not understand why, but this fixes cli linkage on Mac
+ [4ac43db2d640] <stable>
+
+ * source/encoder/reference.cpp, source/encoder/reference.h:
+ reference: more robust initialization, remove m_startPad member
+ variable
+
+ m_startPad was only used in the init() function so it could be an
+ auto-var
+ [015839081c84]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/encoder/reference.cpp:
+ Merge with stable
+ [201468d75f33]
+
+ * source/Lib/TLibEncoder/WeightPredAnalysis.cpp:
+ weightp: use source reference frames for weight analysis
+
+ This fixes weightp when used in combination with frame parallelism,
+ where the reference's reconstructed picture is most likely not yet
+ avaialable.
+
+ Some measurements using the sintel 480p clip no-weightp -F1: 408.47s
+ (3.07 fps), 144.63 kb/s, Global PSNR: 48.956 no-weightp -F3: 361.14s
+ (3.47 fps), 144.01 kb/s, Global PSNR: 48.746
+
+ Prior to this change (recon refs used for weightp analysis): weightp
+ -F1: 402.84s (3.11 fps), 131.09 kb/s, Global PSNR: 49.908 x265
+ [info]: 278 of 687 (40.47%) P frames weighted weightp -F3: 355.88s
+ (3.52 fps), 132.09 kb/s, Global PSNR: 49.768 x265 [info]: 242 of 687
+ (35.23%) P frames weighted
+
+ After this change (source refs used for weightp analysis): weightp
+ -F1: 404.83s (3.10 fps), 131.82 kb/s, Global PSNR: 49.414 x265
+ [info]: 325 of 687 (47.31%) P frames weighted weightp -F3: 348.32s
+ (3.60 fps), 131.01 kb/s, Global PSNR: 49.957 x265 [info]: 325 of 687
+ (47.31%) P frames weighted
+
+ Because of the lower bitrate, enabling weightp actually makes this
+ clip encode faster. No idea why -F1 has so much less PSNR than -F3;
+ needs investigation.
+ [a44b48b74d6f] <stable>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/common/reference.cpp:
+ TComPicYuv: fix padding of picture buffers
+
+ Ensure row starts are at a multiple of 32, this causes strides to be
+ multiple of 64. Before this patch, strides we capable of being
+ multiples of 8, causing alignment exceptions for some videos.
+ [0315cf14deda] <stable>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: remove unused include
+ [a54a9fa53063] <stable>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp,
+ source/encoder/slicetype.cpp:
+ Merge with stable
+ [a349dec61168]
+
+2013-10-24 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ improvement xGetRateLast by remove reduce double operator
+ [4bb4dbe427ec]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ improvement getSigCoeffGroupCtxInc by merge pointer calculate
+ [c986a9fc7f8f]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ improvement TComTrQuant::calcPatternSigCtx
+
+ 1. replace width/height by size, since there are only NxN 2. use
+ mask operatior to avoid condition and branch
+ [84bf706ace32]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ improvement TComTrQuant::getSigCtxInc by lookup table for 'cnt'
+ [25d372f13fb6]
+
+2013-10-24 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ lookahead: fix reference initialization for intra prediction
+
+ buffer size of pAbove/pLeft is height+1+width = 2*cusize+1
+ [1aaa596bb20b] <stable>
+
+2013-10-24 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/input/y4m.cpp:
+ input: If Any error in reading frame from file, deactivate the
+ thread and exit encoder gracefully
+ [b69e4433cc97] <stable>
+
+ * source/output/y4m.cpp, source/output/yuv.cpp:
+ output: use 64bit file offsets to prevent overflow with 4k video
+ [f94f18950283] <stable>
+
+2013-10-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: fix bitrate statistic (accBits is a bit count, not byte
+ count)
+ [98bf7e4154f5] <stable>
+
+2013-10-24 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/x265.h:
+ Displaying the number of weighted P frames used in console log
+ [e8992549a970] <stable>
+
+2013-10-24 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSbac.h:
+ fix commit typo
+ [eb694f6150b1]
+
+2013-10-24 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h,
+ source/common/x86/sad-a.asm:
+ asm: instantiate some sad_x3 and sad_x4 functions for HEVC
+ partitions
+ [3b8fa23f68ec]
+
+2013-10-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unused copySliceInfo
+ [e8f05b1c543a]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unused m_bEqualRef and helper functions
+ [d31740e6905d]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/encoder/dpb.cpp:
+ TComSlice: remove unused TComRefPicListModification
+ [855151a30078]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/CMakeLists.txt,
+ source/common/lowres.h, source/common/mv.h,
+ source/common/reference.cpp, source/common/reference.h,
+ source/encoder/CMakeLists.txt, source/encoder/dpb.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/reference.cpp, source/encoder/reference.h:
+ reference: cache MotionReference instances in each FrameEncoder
+
+ This prevents these structures from being allocated over and over
+ for each frame The source files were moved into the encoder folder
+ where they've belonged but couldn't live in the past because
+ TComPicYuv needed to know their contents.
+ [95384f8f7c22]
+
+2013-10-24 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/common.cpp, source/common/common.h,
+ source/common/primitives.cpp:
+ Merge with stable
+ [6ea79d6f7e17]
+
+2013-10-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/common/common.cpp,
+ source/common/common.h, source/common/primitives.cpp,
+ source/dllmain.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/input/input.h,
+ source/input/y4m.cpp, source/input/y4m.h, source/input/yuv.cpp,
+ source/input/yuv.h, source/output/output.h, source/output/y4m.cpp,
+ source/output/y4m.h, source/output/yuv.cpp, source/output/yuv.h,
+ source/x265.cpp, source/x265.h:
+ api: drop _t suffix from public data types, for POSIX compatibility
+
+ x265_t was changed to x265_encoder, since x265 is too short and
+ would collide with our namespace.
+ [b07c29e930fe] <stable>
+
+ * source/x265.h:
+ api: white-space cleanups in x265.h
+ [7beeab25a8fb] <stable>
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/CommonDef.h,
+ source/common/common.cpp, source/dllmain.cpp,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/x265.cpp, source/x265.def.in, source/x265.h:
+ api: large reorg of logging and statistics
+
+ * move all CSV logging into the encoder so API users can take
+ advantage of it
+ * remove hacky global PSNR return value from x265_encoder_close
+ * add time and bitrate values to x265_stats_t
+ * remove some dead HM code
+ * use x265_log in the CLI
+ [3e53b004a8f8] <stable>
+
+2013-10-23 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/common.cpp, source/common/common.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/x265.cpp, source/x265.h:
+ CSV log: Enable frame-by-frame CSV logging
+ [0c8dbda94696] <stable>
+
+2013-10-22 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/x265.pc.in:
+ cmake: generate and install pkgconfig file
+
+ This installs the x265.pc into /usr/local/lib/pkgconfig/ with these
+ contents:
+
+ prefix=/usr/local exec_prefix=${prefix} libdir=${exec_prefix}/lib
+ includedir=${prefix}/include
+
+ Name: x265 Description: H.265/HEVC video encoder Version: 0.4.1
+ Libs: -L${libdir} -lx265 Libs.private: -lstdc++ -lm -lc -lpthread
+ -lrt Cflags: -I${includedir}
+
+ The pkg-config file is only generated and installed if CMake finds
+ pkg-config
+
+ Q1: it seems unwise to hard-code "/lib" in a few places, what if
+ lib64 is used or something else? Q2: Should x265.pc have a version
+ number like x265-0.4.1.pc?
+ [b2fcb1bf7b75] <stable>
+
+2013-10-23 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/common/CMakeLists.txt,
+ source/common/primitives.cpp:
+ cabac: cleanup and convert class ContextModel to struct
+ [0cb0692d6c69]
+
+ * source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h:
+ cabac: move static table to global space
+ [11a4ca818c57]
+
+ * source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ cabac: imprvement by merge context status update path
+ [b53d40e1c7cf]
+
+2013-10-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRom.h, source/common/CMakeLists.txt,
+ source/encoder/slicetype.cpp:
+ Merge with stable
+ [8ebddbb7acd3]
+
+ * source/common/CMakeLists.txt, source/common/vec/blockcopy-avx2.cpp,
+ source/common/vec/vec-primitives.cpp:
+ remove blockcopy-avx2.cpp - not worth the trouble to convert and
+ maintain
+ [020eb714b9cc]
+
+2013-10-23 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: bug fix for estimated frame costs
+
+ By the time rate control queries the estimated frame cost, lastNonB
+ might have moved. Use the slice's actual L0 reference.
+ [6a7383b8cbf0] <stable>
+
+2013-10-23 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-ssse3.cpp:
+ intra: move 8x8 and 16x16 into their final order
+
+ None of the 8bpp intra primitives use vector clases any more.
+ blockcopy-avx2 is the last 8bpp vector primitive.
+ [465e48ca0d15]
+
+ * source/common/vec/intra-ssse3.cpp:
+ intra: remove unused macros
+ [d167d149b59e]
+
+2013-10-23 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intra-ssse3.cpp:
+ Fix memory write beyond bound bug in intraPredAng8x8()
+ [30be14fa79d6]
+
+2013-10-23 Jan Ekström <jeebjp@gmail.com>
+
+ * source/Lib/TLibCommon/TComRom.h, source/common/CMakeLists.txt:
+ Fix compilation with Visual Studio 2013
+
+ The <algorithm> header is needed for std::min and friends, and the
+ CMakeLists.txt modification makes the version check match what is
+ used in the source code.
+
+ Unfortunately cmake does not seem to contain a GREATER_OR_EQUAL
+ macro, so NOT(LESS) has to be used.
+ [4922bf148182] <stable>
+
+2013-10-23 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/intra-ssse3.cpp:
+ intra: converted intraPredAng16x16 vector class functin to intrinsic
+ [521ecea592fa]
+
+2013-10-23 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-ssse3.cpp:
+ intra-ssse3: intra angular 8x8 vector to intrinsic
+ [aaee6da4f02c]
+
+2013-10-23 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-avx2.cpp:
+ pixel: remove vector class include from pixel-avx2.cpp
+ [51a48f878f39]
+
+2013-10-23 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel-avx2.cpp:
+ pixel: converted sad_avx2_x4_64 vector class to intrinsic
+ [435665d9233e]
+
+ * source/common/vec/pixel-avx2.cpp:
+ pixel: converted sad_avx2_x4_32 vector class to intrinsic
+ [2d4ee19a40b4]
+
+2013-10-22 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: calculate weighted frame costs for Aq
+ [6d96d64c4e9a]
+
+2013-10-22 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel-avx2.cpp:
+ pixel: converted some sad_avx2 vector class functions to intrinsic
+ [0bb1d7221938]
+
+2013-10-22 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/vec/intra-sse3.cpp,
+ source/common/vec/intra-ssse3.cpp, source/common/vec/vec-
+ primitives.cpp:
+ intra: rename intra-sse3.cpp to intra-ssse3.cpp
+ [20bf892451db]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: move 32x32 angular prediction function into non-vector
+ portion
+ [41aa6dd645ed]
+
+2013-10-22 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: replace intraPredAng32x32 vector class function with
+ intrinsic
+ [9827c0129014]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: replace intraPredAng8x8 vector class function with
+ intrinsic
+ [de32b76c391d]
+
+2013-10-22 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h, source/common/common.cpp,
+ source/encoder/ratecontrol.cpp:
+ Merge with stable
+ [88de242f7530]
+
+2013-10-22 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ cabac: improvement performance by use negative cabac counter
+ [88b3831ab799] <stable>
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/encoder/CMakeLists.txt,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ cleanup: merge header operator from TEncCavlc into class TEncSbac
+ [4ec21109440b] <stable>
+
+ * source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncSbac.h, source/encoder/CMakeLists.txt,
+ source/encoder/frameencoder.cpp:
+ cleanup:remove unused base class TEncBinIf
+ [b6427fa01195] <stable>
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ cleanup: remove unused getNumberOfWrittenBits() from
+ TEncBinCABAC::getNumWrittenBits()
+ [af1695e1808c] <stable>
+
+ * source/common/x86/ipfilter8.asm:
+ remove reduce register copy in FILTER_H4_w2_2 and FILTER_H4_w4_2
+ (update for linux build error)
+ [f1045bead3b5] <stable>
+
+2013-10-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: consistent comment style
+ [27265ca6dd90] <stable>
+
+2013-10-22 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/common.cpp,
+ source/encoder/encoder.cpp:
+ encoder: auto-padding to min CU size and set conformance window
+ [27a149b2062c] <stable>
+
+2013-10-22 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/pixel.cpp:
+ Eliminating decreament in pointer index in weightp primitives
+
+ could have been a source of possible crash
+ [49849de33234] <stable>
+
+2013-10-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: use cfg->param.frameNumThreads directly; nit cleanups
+ [cd65a3311df5] <stable>
+
+2013-10-22 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: Bug fixes for ABR.
+
+ remove uninitialized local variables and use values from
+ cfg.param.rc as required.
+ [e2dc3ec294a8] <stable>
+
+2013-10-22 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: nits
+ [f1bdacac6497]
+
+2013-10-22 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ rc: Bug fixes for ABR.
+
+ remove uninitialized local variables and use values from
+ cfg.param.rc as required.
+ [f8ab02273bdb]
+
+2013-10-21 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ Merge with stable
+ [9245a882ccee]
+
+ * source/common/common.cpp:
+ common: add --ref to the tool list so it is visible in the log
+ [40eb6be35caa] <stable>
+
+ * source/common/lowres.cpp:
+ lowres: initialize satdCost to -1
+ [606cdb8d05ef]
+
+2013-10-21 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ lowres: Add states to store weighted Aq costs per frame.
+ [ee5e9caa0ff9]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/common/common.cpp, source/common/common.h:
+ add methods to convert qpAqoffsets to qscale
+ [afa3a6660764]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/ratecontrol.cpp:
+ lowres: move m_qpAqOffset from TComPic to Lowres
+ [588c8fcc1df6]
+
+2013-10-21 Steve Borho <steve@borho.org>
+
+ * doc/README_data-structure.ppt, doc/astyle/AStyle.exe, doc/astyle
+ /apply-to-all-source.py, doc/astyle/astyle-config.txt, doc/astyle
+ /drag-astyle.bat, doc/intra/T16.TXT, doc/intra/T32.TXT,
+ doc/intra/T4.TXT, doc/intra/T8.TXT, doc/software-manual.pdf,
+ doc/uncrustify/uncrustify.bat, doc/uncrustify/uncrustify.exe,
+ source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/VectorClass/instrset_detect.cpp,
+ source/cmake/mergestaticlibs.cmake,
+ source/common/vec/CMakeLists.txt, source/common/vec/avx.cpp,
+ source/common/vec/avx2.cpp, source/common/vec/blockcopy-avx.cpp,
+ source/common/vec/blockcopy-sse41.cpp, source/common/vec/blockcopy-
+ ssse3.cpp, source/common/vec/blockcopy-xop.cpp,
+ source/common/vec/blockcopy.inc, source/common/vec/dct-avx.cpp,
+ source/common/vec/dct-avx2.cpp, source/common/vec/dct-xop.cpp,
+ source/common/vec/dct.inc, source/common/vec/intra-avx.cpp,
+ source/common/vec/intra-avx2.cpp, source/common/vec/intra-ssse3.cpp,
+ source/common/vec/intra-xop.cpp, source/common/vec/intrapred.inc,
+ source/common/vec/ipfilter-avx.cpp, source/common/vec/ipfilter-
+ avx2.cpp, source/common/vec/ipfilter-sse3.cpp, source/common/vec
+ /ipfilter-xop.cpp, source/common/vec/ipfilter.inc,
+ source/common/vec/ipfilter16.inc, source/common/vec/ipfilter8.inc,
+ source/common/vec/pixel-avx.cpp, source/common/vec/pixel-ssse3.cpp,
+ source/common/vec/pixel-xop.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/vec/sse.inc, source/common/vec/sse3.cpp,
+ source/common/vec/sse41.cpp, source/common/vec/ssse3.cpp,
+ source/common/vec/utils.h, source/common/vec/vecprimitives.inc,
+ source/common/vec/xop.cpp, source/common/x86/CMakeLists.txt,
+ source/test/unittest.cpp, source/test/unittest.h, source/x265opts.h:
+ Merge with default (feature freeze for 0.5)
+ [f2fcda06d76a] <stable>
+
+2013-10-21 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ merge multiple encodeBinEP to encodeBinsEP
+ [6817f34b0572]
+
+2013-10-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: remove a pile of unnecessary intra estimation code
+ [dd26e0a9c3df]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ compress: remove pointer reference from xComputeCostIntraInInter and
+ simplify
+ [c1ee22ece6f5]
+
+ * source/encoder/compress.cpp:
+ compress: replace magic numbers with proper enums
+ [505b1c488b39]
+
+2013-10-21 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: replace predIntraAng8_32 vector class function with
+ intrinsic
+ [e24a4bb6de84]
+
+2013-10-21 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ no-rdo: compute Luma only in MC for cost estimation for mode
+ decision
+
+ luma alone is computed in MC since luma cost alone is used for mode
+ decision. After best mode is selected, before encoding, chroma MC is
+ done
+ [16a5fc504005]
+
+2013-10-21 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/pixel.cpp, source/common/vec/pixel-sse41.cpp:
+ Adapting weightp primitive for pixel input
+
+ By simulating shift & round as in convertPixelToShort primitive. The
+ SSE4.1 intrinsic primitives are disabled because they no longer
+ match
+ [e719f0de8d9c]
+
+2013-10-21 Steve Borho <steve@borho.org>
+
+ * source/common/ipfilter.cpp, source/common/vec/ipfilter-sse41.cpp,
+ source/common/vec/ipfilter-ssse3.cpp:
+ ipfilter: cleanup C and intrinsic functions
+ [90dde3b44ada]
+
+2013-10-21 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/ipfilter.cpp:
+ added C code for chroma filter_vpp function
+ [2e0076f3f694]
+
+ * source/common/x86/ipfilter8.h:
+ created function declerations for chroma_vpp
+ [9477665dd935]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness.cpp, modified chroma filter_hpp unit test code to
+ support filter_vpp
+ [60ade24dbf9b]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness.cpp, added measure speed code for ipfilter_vpp
+ function
+ [091fb24735da]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness.cpp, added test correctness code for ipfilter_vpp
+ function
+ [e42826e06e06]
+
+ * source/common/primitives.h:
+ added array of function pointers for chroma ipfilter_vpp function
+ [e3b4b6b778a5]
+
+2013-10-21 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h, source/encoder/encoder.cpp:
+ tcomslice : removed set and get window*offset() methods
+ [ee5ef0f3fd3d]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/encoder.cpp,
+ source/encoder/framefilter.cpp:
+ tenccfg : removed unused setpad() and getpad() methods
+ [caa8db6b7986]
+
+2013-10-21 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: reintroduce -w short option for weightp
+ [c4cc469e5286]
+
+2013-10-21 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ Lookahead: wavefront bugfix.
+
+ conditionally assign estimated cost to avoid overwriting intra cost.
+ [92d13feba8fe]
+
+2013-10-21 =?utf-8?b?UmFmYcOrbCBDYXJyw6kgPGZ1bm1hbkB2aWRlb2xhbi5vcmc+?= <=?utf-8?b?UmFmYcOrbCBDYXJyw6kgPGZ1bm1hbkB2aWRlb2xhbi5vcmc+?=>
+
+ * source/encoder/ratecontrol.cpp:
+ [x265] ratecontrol: initialize frameThreads Fix a floating point
+ exceptio
+
+ --- source/encoder/ratecontrol.cpp | 1 + 1 file changed, 1
+ insertion(+)
+ [3fe9a9d0a0b6]
+
+2013-10-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/lowres.cpp:
+ lowres: right and bottom margins are being extended twice?
+ [f987c24c7bf2]
+
+2013-10-21 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ bug fix for passing bLuma and bChroma as separate arguments
+
+ if there are default arguments other than bLuma and bChroma, those
+ default values (bRound, refIdx) are not passed during the function
+ call(addWeightBi(), xWeightedPredictionUni())
+ [b2aa2aad2c66]
+
+2013-10-21 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse: Fix for HIGH_BIT_DEPTH build error
+ [8fc308449916]
+
+2013-10-21 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/common/CMakeLists.txt:
+ cabac: cleanup array of cabac context
+ [15588437fc24]
+
+2013-10-19 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm:
+ remove reduce register copy in FILTER_H4_w2_2 and FILTER_H4_w4_2
+ [fabb25ae4db4]
+
+2013-10-20 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse3.cpp, source/common/vec/intra-sse41.cpp:
+ intra: move intra_pred_dc to intra-sse41.cpp; it uses SSSE3
+ instructions
+
+ We don't have an intra-ssse3.cpp and it seems a waste to create one
+ just for this one function.
+ [7ec69cb067fd]
+
+2013-10-18 Steve Borho <steve@borho.org>
+
+ * source/common/wavefront.h, source/encoder/encoder.cpp,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ Lookahead: implement wavefront parallel processing
+ [c96f97cf3914]
+
+2013-10-18 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/common/wavefront.cpp, source/common/wavefront.h:
+ WaveFront: add new function to enable all rows
+ [dd45e55248c8]
+
+2013-10-18 Steve Borho <steve@borho.org>
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness: simplify filter names
+ [4066e6e725ee]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: add x265_emms() after use of pixelavg_pp and satd
+ primitives
+ [1fa93e1f4caa]
+
+2013-10-18 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm:
+ asm code for luma filter functions
+ [0d146f05d561]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm:
+ added 24x32 partion size asm code to chroma function
+ [a301f749b0bc]
+
+ * source/common/x86/asm-primitives.cpp,
+ source/test/ipfilterharness.cpp:
+ asm: corrected luma enum variable, testbench fix
+ [8b507771e6b0]
+
+ * source/common/ipfilter.cpp:
+ ipfilter.cpp, added code to support luma coefficients too
+ [4bcfc0e23935]
+
+2013-10-18 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: isolate last remaining vector class functions (angular intra
+ 8, 16, 32)
+ [8de380c7bd41]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: sane function names and typedefs
+ [1959dbe1b643]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: nits
+ [6a453beeea88]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: remove SSE3 planar intrinsic functions; they are redundant
+ [edf6eb8da4ca]
+
+2013-10-18 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: replace predDCFiltering vector class function with intrinsic
+ [140f90417702]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: replace intra_pred_dc vector class function with intrinsic
+ [d24283fe5e31]
+
+2013-10-18 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ rc : removed warning , moved strength to acEnergyCu
+ [089b29b4da2a]
+
+2013-10-18 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable remaining pixelavg primitives, they fail against our C
+ ref
+ [904ff6d6e5d9]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix iteration through partition enums
+ [7e95be5f70bc]
+
+2013-10-18 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ added pixelavg_pp function to testbench
+ [fdd1262059ad]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy-sse3.cpp: removed unnecessary variable.
+ [9ff06eb3bc4d]
+
+2013-10-18 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt:
+ cmake: msvc yasm dependency fix
+ [357a6d0c305d]
+
+2013-10-18 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ added cvt32to16_shr_sse2 function to testbench.
+
+ Speed up measured is almost 14x.
+ [f3523973eafb]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy-sse3.cpp: removed warning: overflow in implicit constant
+ conversion.
+ [48afd41e0753]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: replace xPredIntraAng4x4 vector class function with
+ intrinsic.
+ [c1e53b796ef4]
+
+2013-10-18 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: remove unused variable
+ [d6d7187c5f4e]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: fix 32bit build following partition enum carnage
+ [27dfc522397e]
+
+2013-10-17 Min Chen <chenm003@163.com>
+
+ * source/common/CMakeLists.txt, source/common/vec/pixel-sse3.cpp,
+ source/common/x86/asm-primitives.cpp, source/common/x86/pixel-
+ util.asm, source/common/x86/pixel.h:
+ asm: add cvt32to16_shr_sse2, remove intrinsic primitive
+ [84857e7ba3e1]
+
+2013-10-17 Steve Borho <steve@borho.org>
+
+ * source/common/common.h:
+ common: force float and double arguments to logf() and log(),
+ respectively
+
+ Fixes warnings on some MSVC versions
+ [d61e2ff59c29]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: fix GCC warning about potentially uninitialized sum variable
+ [61abe115acfc]
+
+ * source/common/vec/intra-sse3.cpp, source/test/intrapredharness.cpp:
+ intra: segregate 8bpp from 16bpp functions, drop 16bpp angular, drop
+ 64x64
+
+ The HIGH_BIT_DEPTH angular function was just a copy of the C
+ reference, we do not need 64x64 blocks any more
+ [5ab2da8320f5]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: remove unused argument to predDCFiltering(), remove static
+
+ There's no need to declare the function static, it is within an
+ anonymous namespace
+ [d05cf1a4d3a5]
+
+ * source/common/vec/pixel-avx2.cpp,
+ source/common/vec/pixel16-sse41.cpp, source/test/testbench.cpp,
+ source/test/testharness.h:
+ pixel: fix avx2, 16bpp, and testbench following luma enum reorg
+ [39ceb9570c5d]
+
+2013-10-17 Praveen Tiwari <Praveen Tiwari>
+
+ * source/test/ipfilterharness.cpp:
+ removed unnecessary calculation from chroma REPORT_SPEEDUP function
+ [b42f1963229b]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h:
+ asm: fundef creation and function pointer table setup for luma asm
+ primitives
+ [165d27a37689]
+
+ * source/common/ipfilter.cpp:
+ ipfilter: setup luma function pointers
+ [2ecc6883d465]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ unit test code for luma filter
+ [2b312edc7d7d]
+
+2013-10-17 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h:
+ primitives: define luma_hpp block interpolation function pointers
+ [8f0f4bb9825e]
+
+ * source/common/CMakeLists.txt, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/vec/pixel-sse41.cpp,
+ source/common/x86/asm-primitives.cpp, source/common/x86/ipfilter8.h,
+ source/common/x86/mc.h, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h, source/encoder/framefilter.cpp,
+ source/encoder/motion.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/slicetype.cpp, source/test/ipfilterharness.cpp,
+ source/test/pixelharness.cpp, source/test/testharness.h:
+ primitives: cleanup luma partition enums and primitive
+ initialization
+
+ Don't define any enums for partitions which are not used by HEVC.
+ Line up chroma enums to match luma enums. Stop instantiating C
+ primitives that are never used. Shorten up the partition enum names.
+ Prune unused SSD assembly routines, move ASM funcdefs into headers
+ [2eb3f19bb34a]
+
+2013-10-17 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel16-sse41.cpp:
+ pixel16: converted sad_4 from vector class to intrinsic
+ [f5cdcb7cdaca]
+
+2013-10-17 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: implement Adaptive Quantization.
+
+ added functions to compute AC Energy per CU for all planes,
+ calculate qpAqOffset for each CU
+ [c49db12611a2]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/encoder.cpp:
+ TComPic: add m_qpAqOffset to store qp offsets per CU when Aq is
+ enabled
+ [e2333fe80c56]
+
+2013-10-17 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt:
+ cmake: fix assembly dependency path
+ [a09583956501]
+
+2013-10-17 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ cli: rename bRDLevel to rdLevel
+ [ffb8df2f3778]
+
+ * source/common/common.cpp, source/common/common.h:
+ common : Added new function x265_param2string
+ [09bb631e4253]
+
+2013-10-17 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel-sse3.cpp:
+ improvement cvt32to16_shr by merge width and height loop
+ [f6226cef13f1]
+
+2013-10-17 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel: fix the hash mismatch due to convert32to16_shr
+ [a31b03ff2cff]
+
+2013-10-17 Min Chen <chenm003@163.com>
+
+ * source/common/x86/pixel-a.asm:
+ x265_pixel_ssd_4x4_ssse3 miss EMMS
+ [2a3af4fe8e5c]
+
+2013-10-17 Praveen Tiwari <Praveen Tiwari>
+
+ * source/test/ipfilterharness.cpp:
+ removed unnecessary calculation form rand_srcStride
+ [dfae391107c3]
+
+ * source/test/ipfilterharness.cpp:
+ added genration of random stride in chroma unit test code
+ [fc9dbd798ac3]
+
+ * source/common/x86/ipfilter8.asm:
+ fixed output mismatch problem with chroma 2xN block
+ [b3852d6908a5]
+
+2013-10-17 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: remove dead tables, fix comment typos, and other white-space
+ issues
+ [2fbeab18f182]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix pre-calculation of slice cost for ABR
+ [ce1116e9def7]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: add parens to macros to fix auto-alignment
+ [d05787e07b21]
+
+2013-10-16 Steve Borho <steve@borho.org>
+
+ * doc/uncrustify/codingstyle.cfg,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp:
+ uncrustify: another brace-style tweak
+ [ebec58e22380]
+
+ * source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/common.cpp, source/common/common.h,
+ source/common/cpu.h, source/common/ipfilter.cpp,
+ source/common/lowres.cpp, source/common/lowres.h,
+ source/common/piclist.cpp, source/common/piclist.h,
+ source/common/pixel.cpp, source/common/primitives.cpp,
+ source/common/reference.cpp, source/common/threading.cpp,
+ source/common/threading.h, source/common/vec/blockcopy-avx2.cpp,
+ source/common/vec/blockcopy-sse3.cpp, source/common/vec/dct-
+ sse3.cpp, source/common/vec/dct-sse41.cpp, source/common/vec/intra-
+ sse3.cpp, source/common/vec/intra-sse41.cpp, source/common/vec
+ /ipfilter-sse41.cpp, source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/pixel-avx2.cpp, source/common/vec/pixel-sse3.cpp,
+ source/common/vec/pixel-sse41.cpp, source/common/vec/pixel-
+ ssse3.cpp, source/common/vec/pixel16-sse41.cpp, source/common/vec
+ /vec-primitives.cpp, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel.h, source/dllmain.cpp,
+ source/encoder/compress.cpp, source/encoder/cturow.h,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/motion.cpp, source/encoder/motion.h,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp,
+ source/input/y4m.cpp, source/input/y4m.h, source/input/yuv.cpp,
+ source/input/yuv.h, source/test/intrapredharness.cpp,
+ source/test/ipfilterharness.cpp, source/test/pixelharness.cpp,
+ source/test/pixelharness.h, source/test/testbench.cpp,
+ source/test/testharness.h, source/x265.cpp, source/x265.h:
+ uncrustify entire source tree
+ [1d6b3626f1b3]
+
+ * doc/uncrustify/apply-to-all-source.py:
+ uncrustify: allow uncrustify to process .cpp and .h in common/x86
+ [03be69eab3db]
+
+ * doc/uncrustify/codingstyle.cfg:
+ uncrustify: do not remove whitespace in an empty brace section {}
+
+ (just ignore it)
+ [6405dca03059]
+
+2013-10-14 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/compat/msvc/LGPL.txt,
+ source/compat/msvc/getopt.c, source/compat/msvc/getopt.h:
+ getopt: grab an unambiguously LGPL version of getopt
+
+ Found at: https://github.com/Tietew/mediawiki-
+ xml2sql/tree/master/getopt
+
+ The only change made was to move getopt_long() into getopt.c from
+ getopt1.c
+
+ # HG changeset patch # User Steve Borho <steve@borho.org> # Date
+ 1381776922 18000 # Mon Oct 14 13:55:22 2013 -0500 # Node ID
+ b6cca1b1a9b700a8ffc316f3186dbf10bc1149cc # Parent
+ abae6903e0af0d9940bb734ba34dff6928d72e61 getopt: grab an
+ unambiguously LGPL version of getopt
+
+ Found at: https://github.com/Tietew/mediawiki-
+ xml2sql/tree/master/getopt
+
+ The only change made was to move getopt_long() into getopt.c from
+ getopt1.c
+ [60a105fed8c8]
+
+2013-10-16 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel: disable intrinsic cvt32to16_shr; it is causing hash
+ mismatches
+ [258394d8ab91]
+
+ * source/common/ipfilter.cpp:
+ ipfilter: gcc preprocessor does not allow ## use for non-symbols
+
+ The ## in this case was totally unnecessary
+ [63a63e668fb7]
+
+ * source/x265.cpp:
+ cli: add missing --cpuid handler
+ [af92ca11aa13]
+
+ * source/test/ipfilterharness.cpp:
+ test: revert accidental change to 64 dims so testbench passes
+ [16ae0ba47935]
+
+ * source/common/vec/dct-sse41.cpp:
+ dct: remove SSE41 dct 8x8, 16x16 and 32x32 intrinsic primitives
+
+ These were adapted from vector class functions but were much slower
+ than the hand-tuned dct SSSE3 functions written by Min.
+ [6c3aa856dc65]
+
+ * source/common/primitives.h, source/common/vec/vec-primitives.cpp,
+ source/common/x86/asm-primitives.cpp:
+ primitives: do not include the public API header in primitives.h
+
+ This was necessary in the past for the CPU level enums but those are
+ now gone. Only vec-primitives.cpp and asm-primitives.cpp need the
+ CPU capability defines and they can include x265.h themselves.
+ [5e269e353bc6]
+
+2013-10-16 Praveen Tiwari <Praveen Tiwari>
+
+ * source/test/ipfilterharness.cpp:
+ check_IPFilterChroma_primitive, stride made equal to min width 2
+
+ short-term workaround for 2XN blocks
+ [89a299c198d0]
+
+2013-10-16 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: tighten up command line help, remove redundancies and save
+ whitespace
+ [f7d1914d1f61]
+
+ * source/x265.cpp:
+ cli: pull CLIOptions methods out of struct definition (cleanup)
+
+ Remove i_ hungarian notation from variables
+ [5c258896b571]
+
+ * build/vc10-x86/make-solutions.bat, build/vc10-x86_64/make-
+ solutions.bat, build/vc11-x86/make-solutions.bat, build/vc11-x86_64
+ /make-solutions.bat, build/vc9-x86/make-solutions.bat,
+ build/vc9-x86_64/make-solutions.bat:
+ build: wtf is a Visual Studion?
+ [798f12a3ca4c]
+
+2013-10-16 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ pass bLuma and bChroma parameters for functions
+
+ Based on the values of two parameters, luma and chroma operations
+ are done. Default value for both is set as true todo both operations
+ [872e98c8bc7b]
+
+2013-10-16 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/CMakeLists.txt, source/x265opts.h:
+ cli: remove unused x265opts.h
+ [9317198e26e2]
+
+ * source/x265.cpp:
+ cli: long_options structure initialization without using x265opts.h
+ [1cf1fe777d14]
+
+ * source/x265.cpp:
+ cli: implemented do_help() without using x265opts.h
+ [9347808f2f9b]
+
+ * source/common/common.cpp, source/x265.cpp, source/x265.def.in,
+ source/x265.h:
+ api: add x265_param_parse() function based on x264_param_parse()
+ [69d8796e57e4]
+
+2013-10-16 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ bidir: fix for hash mismatch with B-frames
+
+ Use seperate variables for mvp and mvpidx used for zero mv
+ candidates. Also copy the corresponding AMVPinfo for each
+ reflist/refIdx.
+ [c415f32219fe]
+
+2013-10-16 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/x86/asm-primitives.cpp,
+ source/common/x86/ipfilter8.asm:
+ asm: update chroma interpolation primitives
+ [bc1399dbc2ed]
+
+ * source/common/ipfilter.cpp, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h:
+ primitive: added C primitive and unit test code for one chroma
+ filter
+ [762ca3c4b6f2]
+
+ * source/common/primitives.h:
+ primitive: chroma partition enums by full dimension and function
+ pointers
+ [08ecee513efc]
+
+2013-10-16 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ no-rdo: remove unused checks
+ [d45ce25752cf]
+
+2013-10-16 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Remove unused vector class macros
+ [ec5a816c4ef3]
+
+2013-10-16 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ cleanup: remove unused updateContextTables()
+ [ad081b5f340f]
+
+2013-10-16 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/input/yuv.cpp, source/input/yuv.h:
+ yuv: make file reading threaded
+ [18c935330e9e]
+
+2013-10-16 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable the use of x264 pixel weighting functions
+
+ These are breaking lowres qpel generation
+ [4b1716b232e5]
+
+2013-10-16 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ move ssim calculation to frameFilters
+ [09c0e0209d84]
+
+2013-10-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove unused static MV arrays
+ [a998daed8459]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nits
+ [9bff70c75d32]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/dpb.cpp:
+ TComSlice: remove unused m_list1IdxToList0Idx and methods
+ [676788df0ab2]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove unused variables
+ [397589048016]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: rename refList -> list, refIdxTmp -> idx (more readable)
+ [53323636b8d3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: simplify unidirectional search logic
+
+ There was a lot of extra code to check if an L0 pic was in the L1
+ list and was already searched. We do not copy our L0 pics into the
+ L1 list so this isn't an issue.
+ [d8665f64a662]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove unnecessary memsets
+ [f2f61a2626ef]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/frameencoder.cpp:
+ TEncSearch: hoist setSourcePlane() to be called just once per frame
+ [1fda6e4da927]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: move variables closer to their use
+ [b6db83cab831]
+
+ * source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h, source/encoder/framefilter.cpp:
+ global search and replace for common hungarian prefixed variables
+ [5ada776190c0]
+
+ * source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h:
+ WeightPredAnalysis: remove hungarian prefixes
+ [e0893637f5ac]
+
+ * source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h:
+ TEncCavlc: remove hungarian prefixes
+ [c5ac154bfb4d]
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h:
+ TEncBinCABAC: remove hungarian prefixes
+ [b7d09f879c51]
+
+ * source/common/CMakeLists.txt:
+ cmake: fix gcc 16bpp build
+ [b04d75ceb182]
+
+ * source/Lib/TLibCommon/TComPic.h, source/encoder/encoder.cpp,
+ source/x265.h:
+ api: pass presentation timestamp through the encoder
+ [7c8c591908ac]
+
+2013-10-15 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ faster grow buffer size to reduce number of memcpy
+ [f66122e4565e]
+
+ * source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp:
+ cabac: writeByte() for faster CABAC output
+ [7bd38dc97fa1]
+
+ * source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ cleanup:reduce ContextModel3DBuffer to 1D
+ [e4f130853d90]
+
+2013-10-15 Praveen Tiwari <Praveen Tiwari>
+
+ * source/common/primitives.h:
+ primitives: add chroma partition widths and interpolation function
+ def
+ [d011ba82c852]
+
+2013-10-15 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel-sse41.cpp: Modified PROCESS_SSE_SS4x1 macro with faster
+ intrinsics
+ [352781943ca8]
+
+2013-10-15 Kavitha Sampath <kavitha@multicorewareinc.com>
+
+ * source/input/input.h, source/input/y4m.cpp, source/input/y4m.h:
+ y4m: make file reading threaded
+ [dd78cc895f2d]
+
+2013-10-15 Santhoshini Sekar <santhoshini@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ PSNR: row-by-row PSNR measurement with SSD accumulators in TComPic
+ [404528f1ed26]
+
+2013-10-15 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/vec/ipfilter-sse41.cpp:
+ ipfilter: Fix for 16bpp build
+ [1a85d8814346]
+
+2013-10-15 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: fix 16bpp build
+ [bbe95ece093f]
+
+2013-10-15 sairam <sairam@multicorewareinc.com>
+
+ * source/encoder/motion.cpp:
+ Fixed the --me 4 cli option error
+ [cb83e2f93592]
+
+2013-10-15 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: cleared the bug in sse_sp8, through sse_sp64
+ [8c8d5700d22b]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: modified weightUnidir to clear the bug.
+ [07f03a3fa2b8]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: cleared the bug in sse_sp4.
+ [cc35cb2f55e8]
+
+2013-10-15 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel16-sse41.cpp, source/common/vec/pixel16.inc:
+ cmake: give 16bpp vector sad primitives their own C++ file
+ [764c0e9984f0]
+
+ * source/CMakeLists.txt:
+ cmake: do not query clang version, it is not used
+ [fa90c915a323]
+
+2013-10-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix comment for TEncSearch::predInterSearch
+ [062c51758069]
+
+ * source/CMakeLists.txt:
+ cmake: move X265_BUILD definition to near top of main CMakeLists.txt
+
+ This is just to make it easier to find
+ [abae6903e0af]
+
+ * source/common/CMakeLists.txt, source/common/common.cpp,
+ source/common/version.cpp:
+ version: move export variables into version.cpp
+ [eeffa630e770]
+
+ * source/CMakeLists.txt:
+ cmake: allow MinGW to rename x265-static to x265
+
+ MinGW uses libx265.dll.a for the shim loader library, which does not
+ collide with libx265.a, so it is ok. Only MSVC wants to use x265.lib
+ for both
+ [28e2a3926c95]
+
+ * source/common/CMakeLists.txt:
+ cmake: fix 32bit GCC compile
+ [b2c148b71db8]
+
+ * source/CMakeLists.txt:
+ cmake: drop x265 folder suffix to archive install path
+ [5af31960c41d]
+
+2013-10-13 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/common/common.h,
+ source/common/lowres.h, source/encoder/slicetype.h:
+ common: sanity check some lookahead settings
+ [eb0aa9c42bba]
+
+2013-09-10 Steve Borho <steve@borho.org>
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: fill in missing detail from slicetypeDecide()
+
+ This moves slicetypeDecide() to make the file more readable. It also
+ adds stubs for features that we do not support yet including
+ weightp, B-pyramid, intra refresh, user-supplied slice types, etc
+ [9bdff3310321]
+
+2013-10-13 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt:
+ cpu: disable -Wnarrowing for cpu.cpp
+
+ This C99 code from x264 causes warnings when compiled for C++
+ [8011064113f7]
+
+2013-10-13 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp:
+ cabac: cleanup unused code
+ [1eeac78dbddb]
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.h, source/encoder/CMakeLists.txt,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ cabac: cleanup TEncBinCoderCABACCounter to reduce C++ feature
+ [6d351ec699e5]
+
+2013-10-12 Steve Borho <steve@borho.org>
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: it seems clang has its own set of intrinsic generation bugs
+
+ If clang is allowed to run the instrinsic functions it builds in
+ these two files it causes SEGVs
+ [db12b4bf3ffd]
+
+ * source/common/primitives.cpp:
+ primitives: show capabilities used even when cpuid is specified
+ [4423fc3fcd08]
+
+ * source/test/testbench.cpp:
+ testbench: repair --cpuid command line argument
+ [c1acbd493213]
+
+ * source/common/vec/ipfilter-sse41.cpp:
+ ipfilter: move 16bpp primitives into a separate area of the file
+
+ This isolates the remaining vector primitives from the intrinsic
+ primitives
+ [7196914eff8f]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/VectorClass/instrset.h,
+ source/VectorClass/instrset_detect.cpp,
+ source/common/CMakeLists.txt, source/common/cpu.cpp,
+ source/common/cpu.h, source/common/primitives.cpp,
+ source/common/primitives.h, source/common/vec/vec-primitives.cpp,
+ source/common/x86/asm-primitives.cpp, source/test/testbench.cpp,
+ source/x265.h:
+ asm: adopt x264 CPU detection and flags
+ [76260e1b472d]
+
+2013-10-12 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/common.cpp, source/common/common.h, source/x265.cpp,
+ source/x265.def.in, source/x265.h:
+ api: add exported strings which describe version and build info
+
+ It seemed more useful for this data to be in the x265 library rather
+ than the CLI app
+ [6d5df4858df6]
+
+ * source/CMakeLists.txt, source/cmake/cmake_uninstall.cmake.in:
+ cmake: add uninstall rule for non-Windows platforms
+
+ CMake on Windows doesn't appear to generate an install manifest file
+ [c18a09b9d2d3]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/encoder/CMakeLists.txt:
+ cmake: enable vim syntax hightlighting
+ [ec98f30c5185]
+
+ * source/cmake/version.cmake:
+ cmake: nit cleanups in version.cmake
+ [c032a0fbc863]
+
+ * source/CMakeLists.txt, source/cmake/version.cmake, source/x265.def,
+ source/x265.def.in, source/x265.h, source/x265_config.h.in:
+ cmake: add install targets, machine generate x265.def and
+ x265_config.h
+
+ Now X265_BUILD is maintained in just a single place,
+ souce/CMakeLists.txt.
+
+ The shared library is only installed if a valid tag is found;
+ meaning the user must be building a Mercurial clone or a release
+ tarball with .hg_archive.txt file in it (otherwise they must install
+ the shared library themselves)
+ [1097e547c441]
+
+ * source/common/common.h:
+ common: properly report clang compiled by version
+ [28690748ab1d]
+
+2013-10-12 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp, source/test/testharness.h:
+ testbench fix: short buffers now have short values
+ [aef52403ed5a]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: use param.rc.rateControlMode, from duplicate RC var
+ [9a02765f182e]
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: remove vector class header include from intra-sse41.cpp
+
+ intra-sse3.cpp is the last file with 8bpp (non-AVX2) vector class
+ primitives
+ [f77efd501767]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy-sse3: consistent naming convention
+ [8518e39a2b74]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy-sse3: remove vector class use from last 16bpp intrinsic
+
+ blockcopy files are now vector class clean
+ [41b7ceea1e32]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy-sse3: consistent naming convention
+ [0be273b5f082]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: prevent variable shadow warnings from GCC
+ [d97cf152f620]
+
+2013-10-11 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ primitves: add c primitives for the following :
+
+ compute AC energy for each block copy pixels of chroma plane
+ [725ac176cd13]
+
+ * source/common/common.cpp, source/x265.h:
+ param: added rc states for setting Aq mode and Aq strength
+ [73d085da8533]
+
+ * source/encoder/encoder.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ rc: added TEncCfg instance to RateControl to reuse all the rc params
+ directly.
+ [ce889cef37be]
+
+2013-10-11 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/reference.cpp, source/encoder/motion.cpp:
+ Some fixes in applyWeight() function
+
+ These wont fix the PSNR drop but are necessary
+ [b70432f7b275]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-ssse3.cpp:
+ dct-ssse3: remove vector class includes; dct files are now clean
+ [1cd3bc5e6881]
+
+ * source/common/vec/dct-sse3.cpp:
+ dct-sse3: don't compile dct4 for 16bpp builds when it is not used
+ [2267068cc7e1]
+
+ * source/common/vec/dct-sse41.cpp:
+ dct-sse41: reorder functions for clarity - no code change
+ [d6dc4ebb5cbe]
+
+ * source/common/vec/dct-sse3.cpp:
+ dct-sse3: remove idst4; it uses SSE4.1 but dct-sse41.cpp already has
+ idst4
+ [839a9ba551e4]
+
+2013-10-11 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: Replaced inversedst vector class function to intrinsic
+ [df024b91ffd6]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel-sse3: move convert32to16_shr to top of file, remove vector
+ class includes
+ [9f37e3d7818c]
+
+2013-10-11 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel-sse3.cpp: Replace convert32to16_shr vector class function with
+ intrinsic.
+ [efb230642757]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp:
+ dct: move dct32 to dct-sse41.cpp, inline convert16to32
+ [def1551c14f0]
+
+2013-10-11 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: Replaced partialButterfly32 vector class function to intrinsic
+ [ca00db64f5bb]
+
+2013-10-11 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_32 vector class function
+ with intrinsic.
+ [4824f15116e6]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_26 vector class function
+ with intrinsic.
+ [267fa83cd7b9]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_21 vector class function
+ with intrinsic.
+ [90b34ae5e8de]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_17 vector class function
+ with intrinsic.
+ [263acbde8ec1]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_13 vector class function
+ with intrinsic.
+ [f1013117efab]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_9 vector class function with
+ intrinsic.
+ [5c6f7106c918]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_5 vector class function with
+ intrinsic.
+ [87a56e0ff6a9]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_m_2 vector class function with
+ intrinsic.
+ [e4efd408f394]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_2 vector class function with
+ intrinsic.
+ [bd335e21744d]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_5 vector class function with
+ intrinsic.
+ [2b9f94e11cc5]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_9 vector class function with
+ intrinsic.
+ [e65e3714bbb9]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_13 vector class function with
+ intrinsic.
+ [f3d0ced4a4f1]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_17 vector class function with
+ intrinsic.
+ [17c772394df3]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp:
+ dct: move dct8 to dct-sse41.cpp, inline convert16to32
+ [f0eebdf90a58]
+
+2013-10-11 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: Replaced partialButterfly16 vector class function to intrinsic
+ [f760de7f5596]
+
+2013-10-11 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_21 vector class function with
+ intrinsic.
+ [e9b401f5c655]
+
+2013-10-11 Min Chen <chenm003@163.com>
+
+ * source/common/x86/ipfilter8.asm:
+ asm: improvement filterHorizontal_p_p_4 by reorder intermedia data
+
+ 1. repleace phaddw to paddw 2. use extra load operator to split data
+ dependency and reduce table size
+ [080a9fdada2c]
+
+ * source/common/x86/ipfilter8.asm:
+ asm: fix bug in filterHorizontal_p_p_4 with width less than 8 (seed
+ 0x52578C72)
+ [953a4e9f3d57]
+
+2013-10-11 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_26 vector class function with
+ intrinsic using intrinsic macros PRED_INTRA_ANGLE_4_START and
+ PRED_INTRA_ANGLE_4_END.
+ [295973cbc020]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Created common macros PRED_INTRA_ANGLE_4_START,
+ PRED_INTRA_ANGLE_4_END for PredIntraAng4_[ANGLE] function.
+ [ee4f9ae07523]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-sse41.cpp:
+ dct: manually inline convert16to32, for 10% improvement
+ [ab9f6ad97d30]
+
+2013-10-11 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/dct-sse41.cpp:
+ dct: modified block copy used in dct8 with convert16to32 inline
+ function
+ [855757691efc]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: fix 16bpp, dct primitives are not 16bpp safe
+ [c6d89dc62e19]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/common/piclist.cpp:
+ piclist: ensure a TComPic is not enqueued in two lists at once
+ [7134a091a71d]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/pixel-sse3.cpp:
+ pixel: remove unreferenced cvt16to32_t and cvt32to16_t primitives
+ [9bbaa60db38b]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove unreferenced sse_pp4 function
+ [fa480d5c2166]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-avx2.cpp:
+ pixel: allow clang to build AVX2 pixel primitives functions
+ [0fabe33e0448]
+
+2013-10-11 Min Chen <chenm003@163.com>
+
+ * source/cmake/version.cmake:
+ cmake: default value for X265_VERSION
+ [b6756c2e6386]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: repair ICL nmake builds - do not use yasm custom rule with
+ nmake
+ [57e6b2cf633d]
+
+2013-10-11 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: make intel C++ compiler detection independent of env vars
+ [e282601b92d6]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt:
+ cmake: cleanup compiler determination
+ [95f8e0c146b8]
+
+ * source/common/CMakeLists.txt:
+ cmake: add parens to fix icpc builds of intrinsic primitives
+ [7320ecd0901c]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: add missing cstring include for memcpy
+ [71fca64942a6]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unreferenced member variable
+ [614a68ab4703]
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ NALwrite: reintroduce include of cstring, required for memcpy on
+ Linux
+ [d6b9cc9c402f]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: merge TLibEncoderH source group into TLibEncoder
+
+ They are both small enough now that they are manageable as a single
+ unit
+ [bfdfeb2fd817]
+
+ * source/CMakeLists.txt:
+ cmake: link PPA and other libs into x265-shared and x265-static
+ [499ef0e4e254]
+
+ * source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp:
+ dct: add comments for future opts/code reuse
+ [7b4a6a5f8efc]
+
+ * source/common/vec/dct-sse41.cpp:
+ dct: remove vector class includes from dct-sse41.cpp, it is clean
+ [3be4451ea3aa]
+
+ * source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp:
+ dct: move functions which require SSE4.1 from dct-sse3.cpp to dct-
+ sse41.cpp
+ [be7c6c42566a]
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: move last vector dct function into its own section
+ [b0b5c22f5a34]
+
+2013-10-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: replaced partialButterfly8 vector class function with intrinsic
+ [6fa763ba9da8]
+
+ * source/common/vec/dct-sse3.cpp:
+ dct: replace dequant vector class function with intrinsic
+ [b77a66b6b93d]
+
+2013-10-10 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra-sse3.cpp: Replace PredIntraAng4_32 vector class function with
+ intrinsic.
+ [8b49d3995f0c]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy: move intrinsic function out of vector-class section
+ [7dbbbb2a42bc]
+
+2013-10-10 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy-sse3.cpp: Replace pixeladd_pp vector class function with
+ intrinsic.
+ [12d098e5d907]
+
+2013-10-10 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ tcomtrquant:remove unused methods
+ [a79ecf3a7875]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/common/dct.cpp,
+ source/common/pixel.cpp, source/common/vec/dct-sse3.cpp,
+ source/common/vec/dct-sse41.cpp, source/x265.cpp:
+ remove unused <algorithm> includes
+ [dce6ced4b4a3]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp:
+ tcomslice:remove unused set methods
+ [c2fb3d12c812]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ tcomslice: removed unused set methods in TComReferencePictureSet
+ class
+ [bb43823efa92]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp, source/common/vec/sse.inc:
+ sse: move last SSE function into vector-class section of pixel-
+ sse41.cpp
+ [7b4685130793]
+
+ * source/common/vec/ipfilter-ssse3.cpp:
+ ipfilter: remove vector class headers from ipfilter-ssse3.cpp
+ [29844e1eb697]
+
+2013-10-10 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/ipfilter-ssse3.cpp:
+ ipfilter-ssse3.cpp: Replace filterConvertPelToShort vector class
+ function with intrinsic.
+ [b7b00d3533b1]
+
+ * source/common/vec/ipfilter-ssse3.cpp:
+ ipfilter-ssse3.cpp: Replace filterConvertShortToPel vector class
+ function with intrinsic.
+ [fc4bc74c095a]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp, source/common/vec/sse.inc:
+ sse: move intrinsic functions to pixel-sse41.cpp
+ [02fd071a875b]
+
+2013-10-10 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp64 vector class with intrinsic
+ [250b1b037e94]
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp48 vector class with intrinsic
+ [1d872b8c6480]
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp32 vector class with intrinsic
+ [92b11584470c]
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp24 vector class with intrinsic
+ [cae449cb7965]
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp16 vector class with intrinsic
+ [087267802b1c]
+
+ * source/common/vec/sse.inc:
+ pixel: modified sse_sp8 with a comman macro SSE_SP8x1
+ [fb043c201cce]
+
+2013-10-10 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSeach: add alignment to bidir output buffer
+
+ fixes crash in x265_pixel_avg_w16_sse2 from aligned writes to the
+ output buffer
+ [6a6f72ea32a3]
+
+2013-10-10 Steve Borho <steve@borho.org>
+
+ * source/x265.def, source/x265.h:
+ api: make notice of how the build number now must be echoed in
+ x265.def
+ [8ae52f2b159c]
+
+ * source/encoder/encoder.cpp:
+ encoder: silence idiotic compiler warning from VC10
+ [4b84c969a079]
+
+2013-10-09 Steve Borho <steve@borho.org>
+
+ * source/x265.h:
+ api: add API version to x265_encoder_open to prevent dynamic library
+ link skew
+
+ Gratefully borrowed from x264
+ [52284d8d4dc1]
+
+ * source/common/CMakeLists.txt, source/common/vec/vec-primitives.cpp:
+ cmake: enable clang to compile intrinsic primitives without version
+ checks
+ [edcc92f2b2ab]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy: isolate vector class routines together (firing squad)
+ [82f20a7cb593]
+
+ * source/VectorClass/vectori128.h, source/VectorClass/vectori256.h,
+ source/VectorClass/vectori256e.h:
+ vector: bypass a number of functions we do not use when compiled by
+ clang
+
+ The sooner these classes go away the better
+ [5cc9abe88e62]
+
+ * source/common/vec/pixel-ssse3.cpp:
+ pixel: remove vector class headers from pixel-ssse3.cpp
+ [a574f4347855]
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: remove an unreferenced function
+ [27a3de7a742c]
+
+ * source/common/vec/ipfilter-sse41.cpp:
+ ipfilter: remove two unreferenced functions
+ [9518070da726]
+
+ * source/common/ipfilter.cpp:
+ ipfilter: remove two unused functions
+ [6a08d0e9178c]
+
+ * source/CMakeLists.txt:
+ cmake: detect clang compiler anf fix some link issues
+ [d7922b02ef3c]
+
+ * source/CMakeLists.txt:
+ cmake: bump minimum required version to 2.8.8
+ [5dceef85c58c]
+
+ * source/CMakeLists.txt:
+ cmake: add -ffast-math to GCC compile flags
+ [4710e2b5e134]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: linux build fix, include <cstring> for memcpy
+ [80af6aaa16e2]
+
+2013-10-09 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ no-rdo(early exit): update the memory with info from m_interCU_NxN
+
+ The encoding and prediction details which are updated in the
+ m_interCU_NxN in NxN calculation are updated in the m_tempCU
+ [bd3f43f06dd4]
+
+2013-10-09 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct-ssse3.cpp, source/encoder/bitcost.cpp:
+ remove more <algorithm> includes
+ [e4369bb24ad7]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: replace <algorithm> with X265_MIN, X265_MAX
+ [50d55737f6b0]
+
+ * source/Lib/TLibCommon/ContextModel.cpp:
+ ContextModel: replace <algorithm> with X265_MIN, X265_MAX
+ [8cd4c7e800ed]
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ NALwrite: remove "using namespace std"
+ [05b6f86ebda6]
+
+ * source/test/unittest.cpp, source/test/unittest.h:
+ remove unused unittest class (is not even compiled today)
+ [882d6a2b329e]
+
+ * source/x265.cpp:
+ cli: remove "using namespace std"
+ [ddb9d884df8d]
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/NALwrite.cpp:
+ remove a pile of unused STL includes, reorder includes for clarity
+ [7c15a193cef9]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ TEncSBac: remove unused #include <map>
+ [64b58c78dd68]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unused ParameterSetMap and #include<map>
+ [5a50663968f5]
+
+2013-10-09 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComList.h, source/Lib/TLibCommon/TComSlice.h,
+ source/common/CMakeLists.txt, source/encoder/encoder.cpp:
+ TLibCommon: Removed unused TComList
+ [fd1d967972d0]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/dpb.h, source/encoder/encoder.h:
+ dpb and TComSlice: replaced TComList with PicList
+ [85c733f8a057]
+
+2013-10-09 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/reference.cpp, source/common/reference.h,
+ source/encoder/frameencoder.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ Enabling weight prediction for half and full pel
+ [b44fccc8e6ea]
+
+2013-10-09 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ pixel: fixup GCC builds, remove pixel8.inc and pixel.inc
+ [271b02645979]
+
+2013-10-09 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel8.inc:
+ pixel: Replace weightUnidir vector class function with intrinsic.
+ [408ca7050bc7]
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp12 vector class with intrinsic
+ [e828f98d388a]
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp8 vector class with intrinsic
+ [d9665d0ad277]
+
+ * source/common/vec/sse.inc:
+ pixel: replace sse_sp4 vector class with intrinsic
+ [dc0bd9d959db]
+
+2013-10-09 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/sse.inc:
+ sse.inc: Modified sse_ss64 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [756de900bae5]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Modified sse_ss48 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [50a2725a989d]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Modified sse_ss32 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [363ff9b66afa]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Modified sse_ss24 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [9f1ec1c9cdb6]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Modified sse_ss16 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [aca490fa02d7]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Modified sse_ss12 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [3f5fe6d9a81d]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Modified sse_ss8 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [1428dcddfa4d]
+
+ * source/common/vec/sse.inc:
+ pixel.inc: Modified sse_ss4 intrinsic function. Removed redundancy
+ using comman macro PROCESS_SSE_SS4x1.
+ [d1ca36034d9f]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Created comman macro PROCESS_SSE_SS4x1 for functions
+ sse_ss4, sse_ss8, sse_ss16, sse_ss24, sse_ss32, sse_ss48, sse_ss64.
+ [95da8fa18a2e]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: Replace weightUnidirPixel vector class function with
+ intrinsic.
+ [9a20693c6ff2]
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel-sse3.cpp: Modified calcRecons function argument names. Removed
+ hungarian prefixes.
+ [9d534f295529]
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel-sse3.cpp: Modified calcRecons8 function argument names.
+ Removed hungarian prefixes.
+ [a1a2233536d5]
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel-sse3.cpp: Modified calcRecons4 function argument names.
+ Removed hungarian prefixes.
+ [87084e0f93f4]
+
+2013-10-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/CMakeLists.txt,
+ source/encoder/cturow.cpp, source/encoder/cturow.h,
+ source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ pull TEncTop code into Encoder class in encoder.cpp, encoder.h
+
+ The TEncTop in our repo bears little resemblance to the original HM
+ class, so I think it is applicable to move this code into one of our
+ files where it makes the most sense. Some methods were renamed to
+ our naming style in the process.
+ [47d92e8a8a41]
+
+2013-10-09 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: removed TComList(std::list) and used PicList to store the
+ TComPics
+ [497ef3556b12]
+
+2013-10-09 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: this time for reals
+ [fc7fbdd18bc0]
+
+2013-10-08 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: fixes for non-assembly builds and windows builds
+ [4737b5423ea4]
+
+ * source/CMakeLists.txt:
+ cmake: tweak static library names to avoid conflict
+
+ MSVC was trying to write both the static library and the DLL shim
+ loader to x265.lib. After this change, the static library is now
+ x265-static.lib and the shim loader is x265.lib (corresponding with
+ x265.dll)
+ [4b354b902b50]
+
+2013-10-07 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/cmake/mergestaticlibs.cmake,
+ source/common/CMakeLists.txt, source/common/common.cpp,
+ source/common/common.h, source/common/primitives.cpp,
+ source/common/vec/CMakeLists.txt, source/common/x86/CMakeLists.txt,
+ source/encoder/CMakeLists.txt, source/encoder/encoder.cpp,
+ source/test/CMakeLists.txt, source/x265.cpp, source/x265.def,
+ source/x265.h:
+ cmake: use cmake 2.8 OBJECT target type to manage static and share
+ libs
+
+ With the OBJECT target type, the common and encoder folders are
+ compiled to object files but not linked until main static or shared
+ library is built. This removes the need for mergestatic.cmake and
+ cleans up a lot of messy problems - at the cost of requiring a
+ somewhat recent cmake.
+
+ For MSVC (and presumably Xcode) we must keep the assembly as a
+ static lib since it uses custom build commands which do not work
+ with OBJECT target types. This static lib is then linked with the
+ main x265.lib or x265.dll
+
+ The X265_EXPORT macro is no longer necessary since we are generating
+ both the static library and shared library from one compile we are
+ forced to use an x265.def file to define DLL exports. x265.exe must
+ link with the static library because on Windows the static lib will
+ be empty if no EXE links with it.
+
+ x265_mdate() was moved into the CLI x265.cpp so the CLI could link
+ with the shared library if necessary (x265_mdate is not exported)
+ [713c2133c77c]
+
+2013-10-08 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel8.inc:
+ pixel: move intrinsic residual and recon functions to pixel-sse3.cpp
+ [3202ca7a44bb]
+
+2013-10-08 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/reference.cpp:
+ Check against numRows in applyweight
+
+ applyWeight() processes rows a 'refLag' number of rows in advance as
+ compared to the current iteration in compressCTURows()
+ [7831bda44186]
+
+ * source/common/reference.cpp:
+ Fix for possible memory access violation in applyWeight()
+ [85cc6aaac7ec]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Use unweighted pixels before interpolation for Luma in Motion
+ Compensation
+ [65f56d5e2ee7]
+
+2013-10-08 Steve Borho <steve@borho.org>
+
+ * source/common/piclist.cpp, source/common/piclist.h:
+ piclist: pass non-optional pictures by reference to avoid NULL
+ checks
+ [71afca6c173b]
+
+2013-10-08 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/common/CMakeLists.txt, source/common/piclist.cpp,
+ source/common/piclist.h:
+ piclist: add class PicList for picture list manipulations
+
+ Created new file piclist.cpp and piclist.h for linked list
+ manipulation, there will be no intermediate storage in piclist,
+ PicList just links TComPic objects together.
+
+ PicList will be used to replace TComList<TComPic> and this will
+ remove std::list dependency in x265
+ [df812d396499]
+
+2013-10-08 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel8.inc:
+ pixel: replace getResidual64 from vector class to intrinsic
+ [bb27ac985cb9]
+
+ * source/common/vec/pixel8.inc:
+ pixel: replace getResidual32 from vector class to intrinsic
+ [1e53142731ab]
+
+ * source/common/vec/pixel8.inc:
+ pixel: replace getResidual16 from vector class to intrinsic
+ [c27e9b8951d0]
+
+2013-10-08 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: replace calcRecons vector class function with intrinsic.
+ [add71d9845a7]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: replace calcRecons8 vector class function with
+ intrinsic.
+ [1d2e192467a8]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: replace calcRecons4 vector class function with
+ intrinsic.
+ [d2c8e7248f4a]
+
+2013-10-08 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ tcomslice: removed un-used sortPicList() function
+ [91aea72a1de9]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ tcomslice: removed un-used checkThatAllRefPicsAreAvailable()
+ function
+ [ed0d3fd544e6]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: Removed un-used
+ createExplicitReferencePictureSetFromReference() Method
+ [268a34d4389f]
+
+2013-10-08 Min Chen <chenm003@163.com>
+
+ * source/test/testpool.cpp:
+ Update testbench for threadpool
+ [57c15726158a]
+
+2013-10-08 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ calculate SSIM for each Row after deblock, sao
+ [349206daad1d]
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ primitives: added C primitives to compute SSIM
+ [279e050947cf]
+
+2013-10-08 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: Bidir cost estimation added to lookahead
+ [0204da76bdb6]
+
+2013-10-08 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp:
+ tcombitstream: bug fix for count StartCodeEmulations to calculate
+ the substream size
+ [9b3a427a1009]
+
+2013-10-07 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/frameencoder.cpp:
+ tcomdatacu: Removed Un-used NDBFBlockInfo - Non-deblocking filter
+ processing block information
+
+ 1.setNDBFilterBlockBorderAvailability() 2.createNonDBFilterInfo()
+ 3.createNonDBFilterInfoLCU() 4.destroyNonDBFilterInfo()
+
+ All the above methods are used to set and destroy the
+ NDBFBlockInformation, but NDBFBlockInfo m_vNDFBlock is not getting
+ used encoding process
+ [d71078917df0]
+
+2013-10-07 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: rename AILIGNBYTES to avoid conflict with apple i386/param.h
+ [41e5e72e2a46]
+
+ * source/CMakeLists.txt:
+ cmake: white-space nit
+ [5ff1a56ba33b]
+
+ * source/CMakeLists.txt, source/test/CMakeLists.txt:
+ cmake: simplify test build structure
+ [d79cbcdcb538]
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel: wrap primitives in anononymous namespace (file static)
+ [e1be6debf9a7]
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel: fix spelling of blockfill functions, add calcresidual
+ functions
+ [c8b2682f8ee3]
+
+ * source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel8.inc:
+ pixel: move intrinsic getResidual4 and getResidual8 to pixel-
+ sse3.cpp
+ [baf9d1d30a9c]
+
+2013-10-07 Yuvaraj Venkatesh <yuvaraj@multicorewareinc.com>
+
+ * source/common/vec/pixel8.inc:
+ pixel: replace getResidual8 vector class with intrinsic
+ [5be3fea0721a]
+
+ * source/common/vec/pixel8.inc:
+ pixel: replace Residual4 vector class with intrinsic
+ [5a0c772fd165]
+
+2013-10-07 Dnyaneshwar Gorade <dnyaneshwar@multicorewareinc.com>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_x4_32 to make it easier to maintain
+ [b6f29369879c]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_x4_24 to make it easier to maintain
+ [9facd6b0a9f8]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_x4_12 to make it easier to maintain
+ [d6dc18f9cead]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_x3_32 to make it easier to maintain
+ [91df941f46bc]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_x3_24 to make it easier to maintain
+ [908f617c8847]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_12 to make easier to maintain
+ [b8756aa16d1a]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_x3_12 to make it easier to maintain
+ [afcfd17e395f]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_32 to make it easier to maintain
+ [b52b52cd0f77]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_24 to make easier to maintain
+ [2556af7a5c0d]
+
+2013-10-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel-sse3.cpp:
+ primitives: rename blockfil_s to blockfill_s_c
+ [bed5c2765dc8]
+
+ * source/common/primitives.h:
+ primitives: remove unused function decl
+ [c433691041a2]
+
+ * source/common/primitives.h:
+ primitives: remove obsolete FilterConf enum
+ [69d2774132c4]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ ipfilter: remove unused filterRow primitives
+ [808210e75c21]
+
+2013-10-07 Steve Borho <steve@borho.org>
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ ipfilterharness: remove test harnesses for removed primitives
+ [6fdea23da2b9]
+
+2013-10-06 Steve Borho <steve@borho.org>
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter-sse41.cpp:
+ ipfilter: remove unused weighted interpolation primitives
+ [15c6e2451b34]
+
+ * source/CMakeLists.txt:
+ cmake: use add_definitions() instead of modifying CMAKE_CXX_FLAGS
+ manually
+ [c010342f7605]
+
+2013-10-02 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/common.cpp,
+ source/common/primitives.cpp, source/dllmain.cpp,
+ source/encoder/encoder.cpp, source/x265.h:
+ cmake: add ENABLE_SHARED build option for creating a shared library
+ (dll/so)
+ [33ea0f317564]
+
+2013-10-06 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-avx2.cpp:
+ pixel: fix eoln damage to pixel-avx2.cpp
+ [2190f2f036a1]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: simplify setup of HEVC partitions for SATD primitives
+ [484d1d98710b]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_x3_16 and sad_x4_16 to make them easier to
+ maintain
+ [d27d01ffa4f0]
+
+2013-10-05 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_16 to make it easier to maintain
+ [bf5852bbf75f]
+
+ * source/common/vec/pixel-sse41.cpp, source/common/x86/asm-
+ primitives.cpp:
+ pixel: fix HIGH_BIT_DEPTH builds
+ [bc3d1a8ebc89]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: add missing sse_pp_12x16, untemplatize others
+ [017aab1983dd]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: don't build wrappers for functions with intrinsic
+ implementations
+ [da37cd44a77c]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: drop SSE primitives that have assembly
+ [08b4bb1e5dbe]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: cleanup the assignment of SSD primitives
+ [dc74d9932a3f]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: simplify generation of sa8d_inter functions from 8x8 and 16x16
+ blocks
+ [276f98fe1c59]
+
+ * source/test/testbench.cpp:
+ testbench: fix off-by one initialization of primitives
+ [e352d1f1a7c6]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: add back intrinsics for sad_x3_4x16 and sad_x4_4x16
+
+ These routines do not yet have assembly code
+ [2e8d7b261880]
+
+ * source/common/primitives.cpp:
+ primitives: fix off-by one initialization of primitives
+ [6e46fabdef40]
+
+ * source/common/primitives.cpp:
+ primitives: fixup 12x16 and 16x2 sa8d_inter pointers
+
+ 32x12 isn't used but 12x16 and 16x12 are (for AMP)
+ [884016c98502]
+
+ * source/common/primitives.cpp, source/common/x86/asm-primitives.cpp:
+ primitives: setup square sa8d_inter function pointers from sa8d
+ block pointers
+ [58bacc9ae3d1]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: use x265_pixel_satd_8x4_xop for p.satd[PARTITION_16x4] for 32
+ bit builds
+
+ On 64bit builds, we have native sse2 functions
+ [4f837e3ebd26]
+
+ * source/common/primitives.cpp, source/common/x86/asm-primitives.cpp:
+ primitives: move small block sa8d_inter setup to primitives.cpp
+
+ This hack didn't belong in the assembly setup function
+ [83ae910874e3]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: report sad, sad_x3, and sad_x4 scores together
+ [4089b17f33ed]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: quit instantiating functions which are not necessary
+
+ Re-order functions for more clarity
+ [5c27d330da43]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: stop building 16x16, 16x8, and 8x16 intrinsic primitives
+ [73f14d5ca8a9]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: limit sad_8 routines to just height 32
+
+ 8x4, 8x8, and 8x16 are handled by x264 assembly, only 8x32 remains
+ for the intrinsic function to cover
+ [19b319c9a6aa]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: eliminate width 48 SAD code for height != 64
+ [8f7091d09c11]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_32 primitives to a single loop
+
+ 32 width blocks will only be height 8, 16, 24, or 32. Having an
+ 8-row loop is just fine
+ [affee51d4f86]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: simplify sad_64 primitives to a single loop
+
+ 64 width blocks will only be height 16, 32, 48, or 64. Having an
+ 8-row loop is just fine
+ [87b5a379a1d8]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: remove sad_*_4<> intrinsic functions, they are covered by
+ assembly
+
+ x264 assembly code covers 4x4, 4x8, and 4x16 and those are the only
+ 4-width partitions used by x265.
+ [1ae7953bceb4]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: eliminate width 24 SAD code for height != 32
+ [fb475b36852c]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: eliminate width 12 SAD code for height != 16
+ [bbc040a8109c]
+
+ * source/common/vec/pixel-avx2.cpp, source/common/vec/pixel-sse3.cpp,
+ source/common/vec/pixel-sse41.cpp, source/common/vec/pixel.inc:
+ pixel: only compile partition sizes that are used by the encoder
+ [e5369adbccba]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ pixelharness: only test partition sizes plausibly used by the
+ encoder
+ [699b843073de]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: use unaligned loads for reference pixels in sad_12
+ [49231db18e60]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: fix typo which was copied and pasted 36 times
+ [fbfa3a5c5ae8]
+
+ * source/common/vec/pixel-sse41.cpp:
+ pixel: use unaligned loads for reference pixels in sad_24
+ [bee7275174f1]
+
+2013-10-05 Min Chen <chenm003@163.com>
+
+ * source/encoder/framefilter.cpp:
+ fix bug on SAO initialize
+ [46a901ac1aff]
+
+2013-10-04 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/CMakeLists.txt,
+ source/common/x86/asm-primitives.cpp, source/common/x86/mc-a.asm,
+ source/encoder/motion.cpp:
+ use x264 pixel average assembly routines for bidir and lowres QPEL
+
+ This required adding a weight parameter and re-ordering arguments.
+ Bidir might eventually use the weighting feature so this didn't seem
+ like a bad trade-off.
+
+ This commit naively pulls in all of mc-a.asm from x264 for just this
+ one set of assembly functions.
+ [84d0f4f907f7]
+
+ * source/encoder/motion.cpp:
+ motion: use new pixelavg_pp primitive for lowres QPEL pixel
+ generation
+ [7976c35f5b76]
+
+ * source/encoder/motion.cpp:
+ motion: remove NULL checks prior to X265_FREE calls
+ [cb6b3038a1e6]
+
+ * source/common/x86/CMakeLists.txt:
+ cmake: add ASM files to MSVC solution so they are easily edited
+
+ this has no effect on the build
+ [4ee217cd64cc]
+
+2013-10-04 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc,
+ source/test/pixelharness.cpp:
+ Fix for Testbench fail in weightpUni for Pixel input
+ [e1404a7a05b0]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/pixel.inc, source/test/pixelharness.cpp:
+ Using int16_t rather than uint16_t in weightpUni primitive; inputs
+ can be signed
+ [491996e415b0]
+
+2013-10-04 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ rc : bug fix for quality drop with larger number of frame threads.
+ [b960d808d0be]
+
+2013-10-04 Dnyaneshwar <Dnyaneshwar>
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ Replace "pixeladd_ss" vector class function with intrinsic.
+ Performance measured is same as that of vector function.
+ [cfc69c57d335]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ replace "pixelsub_sp" vector class function with intrinsic.
+ Performance is same as that of vector function.
+ [1a884afb63bb]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ replace blockcopy_s_p (pixel to short) vector class function with
+ intrinsic. Performance is same as that of vector class function.
+ [5b7226f332be]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ replace block_copy_p_s (short to pixel) vector class function with
+ intrinsic. Performance measured is same as that of vector function.
+ [64325084bd3b]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ replace block_copy_p_p vector class function with intrinsic code.
+ Performance is almost same as that of vector function.
+ [7b93c1cae0c4]
+
+2013-10-04 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-sse41.cpp, source/common/vec/pixel8.inc:
+ pixel: move SSE4.1 functions from pixel8.inc to pixel-sse41.cpp
+ [8829b508822b]
+
+2013-10-04 yuvaraj <yuvaraj>
+
+ * source/common/vec/pixel8.inc:
+ Replace sad_x4_64 vector class function with intrinsic.
+ [d59dcf48b9de]
+
+ * source/common/vec/pixel8.inc:
+ Replace sad_x4_48 vector class function with intrinsic.
+ [d370697071ed]
+
+ * source/common/vec/pixel8.inc:
+ Replace sad_x3_64 vector class function with intrinsic.
+ [6dcae4946fe3]
+
+ * source/common/vec/pixel8.inc:
+ Replace sad_x3_48 vector class function with intrinsic.
+ [c29821f80cd3]
+
+ * source/common/vec/pixel8.inc:
+ Replace sad_64 vector class function with intrinsic.
+ [4f990ec05dc5]
+
+ * source/common/vec/pixel8.inc:
+ Replace sad_48 vector class function with intrinsic.
+ [88378feb4794]
+
+2013-10-04 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove unused code
+ [a201bc951e10]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Bidir ME: store bits required for bidir which will be used for merge
+ estimation
+ [5b987ed0a557]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix for gcc warning
+ [ae9c68edd6b2]
+
+2013-10-04 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel16.inc:
+ pixel: remove 16bpp vector class satd functions
+
+ They were not competitive with assembly and were unlikely to be
+ competitive as intrinsics
+ [bf14f75b8cf9]
+
+ * source/common/vec/pixel-avx2.cpp, source/common/vec/pixel-sse3.cpp,
+ source/common/vec/pixel-sse41.cpp:
+ pixel: comment nits
+ [1dd953bba5ed]
+
+ * source/common/vec/pixel-sse3.cpp:
+ pixel: move vector class include to bottom of the file
+
+ the clearly segregates vector class primitives from intrinsic
+ primitives
+ [cfe01e12b04f]
+
+ * source/common/vec/pixel-sse41.cpp, source/common/vec/pixel8.inc,
+ source/common/vec/sse.inc:
+ pixel: move SSE4.1 intrinsic primitives into pixel-sse41.cpp
+ [9794528eef7b]
+
+ * source/common/vec/pixel-sse3.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel8.inc:
+ pixel: move SSE3 intrinsic primitives into pixel-sse3.cpp
+
+ This improves compile time slightly
+ [4d00380f0da0]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/pixel-ssse3.cpp,
+ source/common/vec/pixel.inc, source/common/vec/pixel8.inc,
+ source/common/vec/vec-primitives.cpp:
+ cmake: move SSSE3 routines into pixel-ssse3.cpp
+ [4018a2281c9c]
+
+2013-10-03 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ pixel: cleanup pixel.inc
+
+ Remove copy of C primitive transpose Move 8bpp-only functions to
+ pixel8.inc cleanup setup function
+ [64886382abe2]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/pixel-xop.cpp,
+ source/common/vec/vec-primitives.cpp:
+ cmake: drop pixel-xop.cpp
+
+ Now that there are very few vector class intrinsics left, there is
+ almost no point to compiling pixel.inc with the XOP flag enabled.
+ This saves compile time. It's setup function wasn't even being
+ called.
+ [9091bdd024b1]
+
+ * source/common/vec/pixel-avx2.cpp, source/common/vec/pixel8.inc:
+ pixel: move avx2 functions into pixel-avx2.cpp
+ [b08fb0b5de8a]
+
+2013-10-03 Dnyaneshwar <Dnyaneshwar>
+
+ * source/common/vec/pixel8.inc:
+ replace sad_x4_32 vector class function with intrinsic.
+ [93c4e5d784d7]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_x4_24 vector class function with intrinsic.
+ [d92ccc92698e]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_x4_12 vector class function with intrinsic.
+ [86e702079865]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_x3_32 vector class function with intrinsic.
+ [489fac4bebfe]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_x3_24 vector class function with intrinsic.
+ [ea4f5cb0799f]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_x3_12 vector class function with intrinsic.
+ [7b8c822b884e]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_32 vector class function with intrinsic.
+ [fbc82a9e97e7]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_24 vector class function with intrinsic.
+ [0b19614fe2bf]
+
+ * source/common/vec/pixel8.inc:
+ replace sad_12 vector class function with intrinsic.
+ [c96520dc9795]
+
+2013-10-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove methods unreachable after bidir replacement
+ [86469b2bc1bd]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/common.cpp,
+ source/x265.h, source/x265opts.h:
+ api: remove dead bipredSearchRange parameter and CLI option
+ [97444bf3e5bd]
+
+2013-10-03 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Bidir ME: add (0,0) candidate
+ [99812ad37453]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ Bidir ME: new logic adapted from x264
+
+ L0 and L1 MVs from unidir ME used for bidir MV. bidir cost is
+ calculated from the average of references.
+ [a6a0e6e90536]
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ primitives: add pixelavg primitive
+ [3a2297992a24]
+
+2013-10-03 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibEncoder/NALwrite.cpp, source/common/common.h:
+ Tcombitstream: Encoded Bit stream storage (fifo) moved from
+ std::vector to Non STL Class
+
+ 1.Removed std::vector Class from Tcombitstream 2.Removed
+ std::search_n algorithm from Tcombitstream 3.Implemented fifo using
+ Pointers to an array - Encoded Bit stream storage
+ [2d04a0bb09c3]
+
+2013-10-03 Sumalatha Polureddy <Sumalatha Polureddy>
+
+ * source/encoder/compress.cpp:
+ no rdo: Turn OFF the early exit code
+
+ Turning off the early exit code since it increases the bitrate by 2%
+ This will be enabled when the hash mismatch issue is solved for the
+ reuse of NxN calculataion in early exit code
+ [3e24e1081c16]
+
+2013-10-01 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: add applyWeight method to MotionReference
+
+ to generate weighted full pel pixels for one or more CTU rows
+ [4f68ed1126b6]
+
+2013-10-02 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/pixel.inc, source/common/vec/pixel8.inc,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ primitives: weightUnidir primitive to support pixel or uint16 inputs
+ [2c73823af522]
+
+2013-10-01 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.cpp:
+ primitives: shorten log message to prevent 80char terminal wrap
+ [0be80d41c551]
+
+ * source/common/common.cpp:
+ common: tighten up tool descriptions; save horizontal space
+ [41aa8e024102]
+
+2013-10-01 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ api: added x265_stats_t structure and x265_encoder_stats() function
+ [c5dc3e37d767]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ added states for storing ssim values per frame and globally at
+ encoder level
+ [572ddbf8428e]
+
+2013-10-01 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/common/reference.cpp,
+ source/common/reference.h:
+ Adding few checks and an init() function in MotionRefrence class
+
+ to properly signal malloc failure for 'fpelPlane'; handling to be
+ added later
+ [b1900856741c]
+
+ * source/x265opts.h:
+ Enable cli parameters for unidirectional weighted prediction
+
+ As part of re-enabling unidirectional weighted prediction after
+ introduction of frame parallelism
+ [c94c053eda36]
+
+2013-09-30 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/cturow.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ get deterministic output when frame threading is enabled (for all
+ -Fn, n > 1)
+
+ Output mistake reasons:
+
+ 1. CABAC Table Initialize The HM have decide best table for CABAC,
+ but in frame parallelism, we can't get this information before
+ thread start, we have to disable it now. Side effect: maybe lost
+ some compress performance
+
+ 2. SAO Global Disable The HM decide SAO global disable flag depend
+ previous same type of slice. but here, we can get right statistics
+ informat before start, so we have to disable it. Side effect: more
+ computer cost since we always try SAO on every LCU
+
+ 3. CABAC status m_frac not reset. This HM bug still alive, we found
+ more here.
+ [af559fe3e565]
+
+2013-09-30 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: always use STRIDE for source buffers
+
+ Because they are allocated based on that dimension and the max
+ iterations
+ [a03659cfa957]
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy: fix missing stride checks
+ [25f8402ad767]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: use named defines rather than hard-coded values
+ [1206434af474]
+
+2013-09-27 Steve Borho <steve@borho.org>
+
+ * source/common/x86/ipfilter8.asm:
+ ipfilter: remove needless width==0 check
+ [3dae8ff2902a]
+
+2013-09-27 praveen Tiwari <praveen Tiwari>
+
+ * source/common/x86/CMakeLists.txt, source/common/x86/asm-
+ primitives.cpp, source/common/x86/ipfilter8.asm:
+ asm code for ipfilterH_pp, 4 tap filter
+ [d65224005524]
+
+2013-09-28 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/common/common.cpp, source/x265.h, source/x265opts.h:
+ cli: add options for toggling PSNR and SSIM metrics (currently
+ inactive)
+
+ By default (for now) PSNR is turned on, SSIM is off.
+ [21307df78bdb]
+
+2013-09-28 Steve Borho <steve@borho.org>
+
+ * source/common/common.h:
+ common: white-space nit
+ [55edc34e253c]
+
+ * source/common/common.h:
+ common: directly call x265_malloc from CHECKED_MALLOC, fix malloc
+ size problem
+ [1ce1e18ee05c]
+
+2013-09-27 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: fix eoln damage
+ [4014edcf2157]
+
+2013-09-26 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.cpp, source/test/testbench.cpp:
+ primitives: build primitive list iteratively
+
+ Rather than collect all intrinsic primitives and then collect all
+ assembly primitives, do the process iteratively for each CPU
+ capability. This plausibly allows an SSE41 intrinsic primitive to
+ have higher priority than an SSE assembly primitive.
+ [93319ce8bb92]
+
+ * source/common/primitives.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/test/testbench.cpp:
+ primitives: convert Setup_Assembly_Primitives to a CPU mask instead
+ of ID
+
+ This allows the testbench to isolate the functions added for a given
+ arch
+ [9cdf05d40249]
+
+ * source/common/primitives.cpp, source/common/primitives.h,
+ source/common/vec/vec-primitives.cpp, source/test/testbench.cpp:
+ primitives: convert Setup_Vector_Primitives to a CPU mask instead of
+ ID
+
+ This allows the testbench to isolate the functions added for a given
+ arch
+ [19e1d1c80268]
+
+2013-09-27 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse3.cpp:
+ intra: re-enable __forceinline for MSVC to recover perf of angular
+ predictions
+ [6f85cb3f7813]
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: remove redundant intra angular prediction functions
+ [cdda742b1e83]
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: remove redundant 16bpp angular prediction code
+ [f8106e88f5e3]
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: prevent link errors on older compilers, do not try to call
+ missing funcs
+ [28febb6e52f0]
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: merge consecutive 8bpp regions and remove dead code
+ [e9fcfa1df742]
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: remove redundant planar primitives
+ [b8fa74815587]
+
+2013-09-26 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: remove redundant copy of intra_pred_dc
+ [dfac2c1c4c64]
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: add missing call to Setup_Vec_IPredPrimitives_sse3()
+ [94c1079648a8]
+
+ * source/common/vec/ipfilter-ssse3.cpp:
+ ipfilter: don't use 8bpp primitives for 16bpp builds
+ [99be942b3855]
+
+ * source/common/vec/blockcopy-avx2.cpp, source/common/vec/dct-
+ ssse3.cpp:
+ vec: prevent unreferenced parameter warnings for 16bpp builds
+ [7f168ba0e444]
+
+ * source/common/vec/intra-sse41.cpp:
+ intra: remove unused extern
+ [0607ecb8adef]
+
+ * source/encoder/motion.cpp:
+ motion: fix shadow warnings
+ [008903846fb1]
+
+2013-09-25 Steve Borho <steve@borho.org>
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/avx2.cpp,
+ source/common/vec/sse3.cpp, source/common/vec/sse41.cpp,
+ source/common/vec/ssse3.cpp, source/common/vec/vec-primitives.cpp,
+ source/common/vec/xop.cpp:
+ combine per-architecture files into vec-primitives.cpp
+ [1058aa043e5e]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/pixel.inc,
+ source/common/vec/utils.h:
+ inline utils.h into the last place it is included
+ [2e2f773dff36]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/avx.cpp,
+ source/common/vec/pixel-avx.cpp, source/common/vec/pixel-ssse3.cpp,
+ source/common/vec/ssse3.cpp, source/common/vec/vec-primitives.cpp:
+ remove ssse3 and avx pixel files, which makes avx.cpp redundant
+ [74efcc344e32]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/avx.cpp,
+ source/common/vec/avx2.cpp, source/common/vec/ipfilter-avx.cpp,
+ source/common/vec/ipfilter-avx2.cpp, source/common/vec/ipfilter-
+ sse3.cpp, source/common/vec/ipfilter-sse41.cpp, source/common/vec
+ /ipfilter-ssse3.cpp, source/common/vec/ipfilter-xop.cpp,
+ source/common/vec/ipfilter.inc, source/common/vec/ipfilter16.inc,
+ source/common/vec/ipfilter8.inc, source/common/vec/sse3.cpp,
+ source/common/vec/xop.cpp:
+ split ipfilter.inc into ssse3 and sse41 CPP files
+ [953172b04f19]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/avx.cpp,
+ source/common/vec/avx2.cpp, source/common/vec/intra-avx.cpp,
+ source/common/vec/intra-avx2.cpp, source/common/vec/intra-sse3.cpp,
+ source/common/vec/intra-sse41.cpp, source/common/vec/intra-
+ ssse3.cpp, source/common/vec/intra-xop.cpp,
+ source/common/vec/intrapred.inc, source/common/vec/ssse3.cpp,
+ source/common/vec/xop.cpp:
+ split intrapred.inc into sse3 and sse41 CPP files
+ [cad4970ef197]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/avx.cpp,
+ source/common/vec/avx2.cpp, source/common/vec/dct-avx.cpp,
+ source/common/vec/dct-avx2.cpp, source/common/vec/dct-sse3.cpp,
+ source/common/vec/dct-sse41.cpp, source/common/vec/dct-ssse3.cpp,
+ source/common/vec/dct-xop.cpp, source/common/vec/dct.inc,
+ source/common/vec/xop.cpp:
+ split dct.inc into sse3, sse41, ssse3 CPP files
+ [6b0a78ffaaa9]
+
+2013-09-26 Steve Borho <steve@borho.org>
+
+ * source/common/vec/blockcopy-sse3.cpp:
+ blockcopy: fix INSTRSET define for SSE3
+ [c47e5c9d89f4]
+
+2013-09-25 Steve Borho <steve@borho.org>
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/avx.cpp,
+ source/common/vec/avx2.cpp, source/common/vec/blockcopy-avx.cpp,
+ source/common/vec/blockcopy-avx2.cpp, source/common/vec/blockcopy-
+ sse3.cpp, source/common/vec/blockcopy-sse41.cpp, source/common/vec
+ /blockcopy-ssse3.cpp, source/common/vec/blockcopy-xop.cpp,
+ source/common/vec/blockcopy.inc, source/common/vec/sse3.cpp,
+ source/common/vec/sse41.cpp, source/common/vec/ssse3.cpp,
+ source/common/vec/vecprimitives.inc, source/common/vec/xop.cpp:
+ merge blockcopy.inc into blockcopy-sse3.cpp and -avx2.cpp
+
+ This is the first step towards four goals:
+
+ 1 - reduce compile time, no more redundant primitive compiles 2 -
+ reduce redirections / templating of intrinsic primitives 3 - move
+ away from vector class library's INSTRSET CPU level define 4 - make
+ the test bench faster, only validate each primitive once
+ [baaefda928fa]
+
+2013-09-26 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/dpb.cpp:
+ Force numPics in RPS <= maxDecPicBuffering - 1
+
+ because maxDecPicBuffering is now set to numReferences+1
+ [7bbdd9cb086f]
+
+2013-09-25 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/common.cpp, source/encoder/dpb.h,
+ source/encoder/encoder.cpp, source/x265.h, source/x265opts.h:
+ Added support for multiple references
+
+ Added a commandline parameter '--ref <max number of references>'.
+ DPB size adjusted to use number of references.
+ [0dbfb0bbca1a]
+
+2013-09-25 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ Merge with stable
+ [a66a677b65b4]
+
+2013-09-25 Min Chen <chenm003@163.com>
+
+ * source/common/vec/ipfilter8.inc:
+ Avoid VS2008 X64 compiler bug
+ [fb4e4dfdb841]
+
+ * source/common/vec/ipfilter8.inc, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ Merge HPEL interpolations with the same HPEL offsets
+
+ In the square1[9], the candidate HPEL offsets are:
+
+ 5 1 7 3 x 4 6 2 8
+
+ The main idea is two HPEL distances makes one FPEL so we can merge
+ 1-2, 3-4, 5-6, and 7-8 into one interpolation each by adding 1 extra
+ row/col to the interpolation
+ [5768db8ac355]
+
+2013-09-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: range check number of NAL units
+ [d514d8685797]
+
+2013-09-25 Min Chen <chenm003@163.com>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ fix hash mistake from --sao-lcu-opt=0 --frame-threads 2
+
+ Delay all deblock and SAO until the entire frame is available. Frame
+ SAO and frame parallelism will now generate correct results, but it
+ will have very poor performance, so the hard check is relaxed to a
+ warning.
+ [2d77d4a2c31b] <stable>
+
+2013-09-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: disable lookahead for all-intra encodes
+
+ This works around a bug in the current Lookahead::slicetypeDecide().
+ I have a patch in the works which fixes this properly, but I think
+ this is a reasonable workaround. Tested with ABR and it works ok.
+ [b8658deb4a77] <stable>
+
+2013-09-25 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h:
+ NAL: Remove unused NALUnitEBSP functions
+
+ Removed the unused NALUnitEBSP(OutputNALUnit& nalu) and
+ copyNaluData() methods from NAL
+ [4d0ced5c64fe]
+
+ * source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibEncoder/TEncTop.h, source/common/CMakeLists.txt,
+ source/encoder/frameencoder.h:
+ Accessunit: Remove unused accessUnit class
+
+ AccessUnit class derived from std template list, Accessunit class
+ replaced with pointers to an array
+ [bb88bbe34c95]
+
+2013-09-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: ensure returned NAL count matches output array size
+
+ On CHECKED_MALLOC failure, m_packetData and/or m_nals will be NULL
+ and thus the returned count must be 0. Also, do not free the packet
+ data from within this utility function. It is cleaner to release
+ that memory in the function which declared the pointers on the
+ stack.
+ [bdd26fd0325a]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: do not cause deadlock on malloc fail
+ [bb5d3e9aadc3]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: prevent divide by zero if no frames were output by stream
+ [ae6d6584b193]
+
+2013-09-24 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ encoder: do not use std::list for the class AccessUnit
+ [d62d31ea1520]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h:
+ bitstream: remove unused std::vector class code
+ [235726d72281]
+
+2013-09-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ Merge with stable
+ [dec0309ec94c]
+
+ * .hgtags:
+ Added tag 0.4.1 for changeset 93707bc4fccd
+ [ddb7abf83f98] <stable>
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: ignore icpc warnings about EMMS from pixelcmp primitives
+ [93707bc4fccd] [0.4.1] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix variable shadow warning
+ [3a77059e1ebf] <stable>
+
+2013-09-24 Min Chen <chenm003@163.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ Reset CABAC status to get same output between single and multi
+ threading
+ [fe00fb449af4]
+
+2013-09-24 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/CMakeLists.txt:
+ Merge with stable
+ [a8f6f62217d5]
+
+ * source/common/CMakeLists.txt:
+ MinGW: build fix for common.cpp
+ [f56cd5c652ef] <stable>
+
+2013-09-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ Merge with stable
+ [c56e392b2c68]
+
+2013-09-24 sumalatha polureddy <sumalatha polureddy>
+
+ * source/encoder/ratecontrol.cpp:
+ RateControl : Bug fix when previous estimated frame cost is zero
+ [2824b8e732e9] <stable>
+
+2013-09-23 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: prevent an API race hazard
+
+ The public API should be thread-safe for a given encoder or param
+ object (they are distinct data structures). However x265 has a small
+ number of global vars that are configured on first use and must be
+ the same for all encoders in the same process (max CTU size and
+ pixel bit-depth). Using an atomic compare-and- swap here prevents
+ simultaneous encoder creations from violating those rules.
+ [3ee2a8a2d852]
+
+ * source/common/common.cpp:
+ common: rename CONFIRM macro to CHECK
+
+ The logic of the macro is: if (expr) fail So CONFIRM is highly
+ misleading
+ [15ab448f1607]
+
+2013-09-20 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibEncoder/NALwrite.h,
+ source/common/common.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ frameencoder: use CHECKED_MALLOC in getStreamHeaders()
+ [886a765eb760]
+
+2013-09-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ lowres intra fixes
+ [46cc93c497c5] <stable>
+
+2013-09-23 Steve Borho <steve@borho.org>
+
+ * doc/intra/T16.TXT, doc/intra/T32.TXT, doc/intra/T4.TXT,
+ doc/intra/T8.TXT, doc/intra/intra-16x16.txt, doc/intra/intra-
+ 32x32.txt, doc/intra/intra-4x4.txt, doc/intra/intra-8x8.txt:
+ rename intra docs, switch to unix eoln
+ [ad7866811610]
+
+ * build/README.txt, build/regression/commandlines-example.txt,
+ build/regression/config-example.txt, build/regression/email-csv.py,
+ doc/uncrustify/apply-to-all-source.py,
+ doc/uncrustify/codingstyle.cfg, source/Lib/README.txt,
+ source/VectorClass/README.txt, source/VectorClass/vectorclass.h,
+ source/VectorClass/vectori128.h, source/VectorClass/vectori256.h,
+ source/VectorClass/vectori256e.h:
+ use unix EOLN for all non-bat files
+ [a194cf5486e7]
+
+ * .hgignore, doc/uncrustify/drag-uncrustify.bat,
+ doc/uncrustify/uncrustify.bat, doc/uncrustify/uncrustify.exe:
+ prune uncrustify.exe; ignore any executable copied into that folder
+
+ uncrustify.bat was unused, so it was also removed
+ [0600e707b254]
+
+ * doc/README_data-structure.ppt, doc/software-manual.pdf:
+ remove binary documentation files leftover from HM source tree
+ [46f25d98c8b2]
+
+ * doc/astyle/AStyle.exe, doc/astyle/apply-to-all-source.py, doc/astyle
+ /astyle-config.txt, doc/astyle/drag-astyle.bat:
+ remove obsolete astyle scripts and tools
+ [fa07f9e00dcb]
+
+ * source/common/lowres.cpp:
+ lowres: fixup bad merge/patch re-import
+ [a2d7412377dd]
+
+ * source/encoder/encoder.cpp:
+ encoder: explicitly disable AMP if rectangular modes are disabled
+
+ In the mode decision logic, asymmetrical motion prediction is
+ implicitly disabled when rectangular modes are disabled. This makes
+ the disabling more explicit, AMP will not appear as enabled in the
+ "encoding tools" log line.
+ [0656b16f0c4a]
+
+2013-09-23 Min Chen <chenm003@163.com>
+
+ * source/common/vec/ipfilter8.inc:
+ Replace (maskmovq) by (blendvb + movq)
+ [98903821e0dc]
+
+ * source/common/vec/ipfilter8.inc:
+ Replace combo padd(32)+psra(6) by pmulhrsw
+ [017743def32e]
+
+2013-09-23 Steve Borho <steve@borho.org>
+
+ * source/common/lowres.cpp:
+ lowres: remove NULL pointer checks, x265_free does this internally
+ [d6082fcfc3dd]
+
+ * source/common/lowres.cpp:
+ lowres: white-space nits and minor cleanup
+ [b877bb01f231]
+
+ * source/common/lowres.cpp:
+ Merge with stable
+ [500686c60c97]
+
+2013-09-23 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/lowres.cpp:
+ Adapting lowress frame dimensions to multiples of lowress CU size.
+
+ The full res frame is required to be extended accordingly to achieve
+ a lowres frame with dimensions in multiples of lowres CU size.
+ [90be63021e7d] <stable>
+
+2013-09-23 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/common/lowres.cpp:
+ lowres: bug fix - move initialization from create() to init()
+
+ lowres objects are reused, hence they should be re-initialized.
+ [bba314600ed0] <stable>
+
+2013-09-23 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/common/lowres.cpp:
+ Adapting lowress frame dimensions to multiples of lowress CU size.
+
+ The full res frame is required to be extended accordingly to achieve
+ a lowres frame with dimensions in multiples of lowres CU size.
+ [4b794e2ffcb4]
+
+2013-09-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: hoist declaration of offset var to fix GCC goto warnings,
+ avoid casts
+ [ff797c5087ae]
+
+ * source/encoder/encoder.cpp:
+ encoder: white-space fixes
+ [7291eaa504d2]
+
+ * source/encoder/encoder.cpp:
+ encoder: remove NULL checks prior to X265_FREE, which does its own
+ [9dce39147a94]
+
+ * source/encoder/encoder.cpp:
+ encoder: fix indentation of extract_naldata
+ [1a1752129829]
+
+ * source/CMakeLists.txt:
+ cmake: force creation of ENABLE_PRIMITIVES_ASM option for all yasm
+ versions
+ [2a00fe5b8a1c]
+
+ * Merge with stable
+ [d6494dd903f6]
+
+2013-09-20 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ Bug Fix - copy last Recq value to thread local rce object
+
+ Missed this out in previous patch.
+ [1311936ef9cf] <stable>
+
+2013-09-19 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: fix auto-link issues with MSVC
+
+ If you tell MSVC to link with the static lib, the dependencies
+ somehow fail and x265.exe is not re-linked properly when the static
+ lib is changed.
+ [d47ef13cb735] <stable>
+
+2013-09-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: style nits, no logic change
+ [e672b5f15e9c]
+
+2013-09-20 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ encoder: Do not use X265_MALLOC use CHECKED_MALLOC
+
+ Currently X265_MALLOC did't validate the returned pointer,
+ CHECKED_MALLOC Always validate the returned pointer and print the
+ Log message and jumps to fail lable if returned pointer is not
+ valid,
+ [af8daa6c720b]
+
+ * source/common/common.cpp, source/common/common.h:
+ common: add CHECKED_MALLOC macro that logs malloc failures and jumps
+ to fail label
+ [678ae6e4f3fd]
+
+2013-09-20 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ Bug Fix - copy last Recq value to thread local rce object
+
+ Missed this out in previous patch.
+ [de084699ba00]
+
+2013-09-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix shadow warning reported by GCC
+ [20d8fa0541d8]
+
+ * source/CMakeLists.txt:
+ cmake: fix auto-link issues with MSVC
+
+ If you tell MSVC to link with the static lib, the dependencies
+ somehow fail and x265.exe is not re-linked properly when the static
+ lib is changed.
+ [73a710b6d1c1]
+
+ * source/common/CMakeLists.txt:
+ cmake: use explicit file list for HM TLibCommon files
+ [6aea8272dcd8]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: use explicit file list for HM TLibEncoder files
+
+ This prevents issues when HM files are deleted; we simply remove
+ them from this list and then CMake automatically regenerates
+ projects or Makefiles. With globs, you have to know to poke CMake to
+ regenerate the files, but most do not know this.
+ [bd1d4bdc996e]
+
+ * source/common/common.cpp:
+ common: white-space logging nit
+ [00429bb81ef7]
+
+ * source/common/common.cpp:
+ common: improve logging string for lookahead configuration - conveys
+ more info
+ [233046035a5f]
+
+ * Merge with stable
+ [5c6c9c095cb8]
+
+ * .hgtags:
+ Added tag 0.4 for changeset 2ba6ec553f21
+ [85219cda3127] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: respect --bframes count when --b-adapt is 0
+
+ --b-adapt 0 --bframes 3 => IPBBBPBBBPBBB
+ --b-adapt 0 --bframes 4 => IPBBBBPBBBBPBBBB
+
+ This is a stop-gap feature until --b-adapt 1 and 2 are fully
+ functional
+ [2ba6ec553f21] [0.4] <stable>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove x265_ prefix from internal functions
+
+ These were adapted from x264 functions, and the prefix was
+ incorrectly preserved
+ [4c97a2025103] <stable>
+
+ * build/linux/batch.py, source/Lib/TLibCommon/SEI.cpp:
+ Merge with default
+ [9d97cddc0fac] <stable>
+
+2013-09-20 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp:
+ tuned up ABR logic to better adapt for frame parallelism
+
+ Rate control needs to be more aggressive based on actual ecoded
+ bits cost rather than estimated costs from concurrent threads .Tuned
+ up some parameters to effect this idea.
+ [395bf0a490c2]
+
+2013-09-19 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ RateControl bug fixes for frame parallelism
+
+ 1. Added lastRceq in ratecotrol structure and copied the value into
+ thread local rate control entry obj so that Bframes can get latest
+ lastRceq value.
+
+ 2. Added framesDone state - to maintain a serial order of frames in
+ RateCotrol to get a correct estimate of wantedBits.
+ [d62c413b3c06]
+
+2013-09-19 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: use strerror to report signal error
+ [82aceba785f0]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ top: fix leak of output NALs on CTRL+C aborts
+ [e50237973977]
+
+2013-09-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h:
+ sei: remove unused SEIMessages type define
+
+ After this, and after AccessUnit is replaced with a simple pointer
+ array, TComList is the only type derived from std::list, so we would
+ no longer need a templated list class. TComList could be replaced
+ with a simple list class that suits our exact needs.
+
+ This also removes another HM file
+ [53c551867006]
+
+ * source/common/common.cpp, source/x265.cpp, source/x265.h:
+ api: introduce an x265_picture_init() function
+ [7f069c6e6b89]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/common/lowres.cpp,
+ source/common/lowres.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ lowres: pass poc and user slice type to lowres::init()
+ [14af4e13ab66]
+
+ * source/common/lowres.h:
+ lowres: group fields by type, remove trailing white-space
+ [f646ebe0b520]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/dpb.cpp, source/encoder/slicetype.cpp:
+ lowres: change int keyframe to bool bKeyframe
+ [f5a6b908037c]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp:
+ lowres: change int scenecut to bool bScenecut
+ [8df58890ff0b]
+
+2013-09-19 Min Chen <chenm003@163.com>
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h,
+ source/x265.cpp:
+ framefilter: allow SAO to be disabled independently of deblock
+ filter
+ [7b26e7c0bf88]
+
+2013-09-19 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ cli: fix memory leaks on early exits
+ [bc1a28d6f187]
+
+ * source/common/common.cpp:
+ sao: prevent picture based SAO to be used in combination with frame
+ threading
+ [12db8e96402b]
+
+2013-09-19 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ lookahead: fix crash for I frame cost estimation
+ [e51ecfcabcaa]
+
+2013-09-19 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/mbdstharness.cpp, source/test/pixelharness.cpp,
+ source/test/testbench.cpp, source/test/testharness.h:
+ testharness cleanup: Testharness uses the same malloc/free wrapper
+ as the rest of the encoder.
+
+ Aligned mallocs in testharness use the wrapper (X265_MALLOC/FREE)
+ defined in CommonDef.h. Remove alignedMalloc/Free definitions in the
+ test class.
+ [eea9154229a0]
+
+2013-09-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix bug in intra estimation in
+ Lookahead::estimateCUCost()
+
+ # HG changeset patch # User Steve Borho <steve@borho.org> # Date
+ 1379538813 18000 # Wed Sep 18 16:13:33 2013 -0500 # Node ID
+ 5bab261d0dd7ac68c4af3837853d48d56017d4d6 # Parent
+ 197dd6d2f54d7193d7dcf28d03a0b3dccb353fad slicetype: fix bug in intra
+ estimation in Lookahead::estimateCUCost()
+ [26d6f155f8df]
+
+ * source/common/common.cpp, source/x265.h:
+ white-space and comment nits
+ [2531c630739e]
+
+ * source/x265.cpp:
+ cli: report errors from registering signal handler
+ [197dd6d2f54d]
+
+ * source/Lib/TLibEncoder/TEncSbac.h:
+ TEncSbac: remove exit() calls from unsupported functions
+ [ded83381f219]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: replace debugging exit() call with abort(), use x265_log
+ [4b3ff29d661d]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/wavefront.cpp,
+ source/encoder/bitcost.cpp, source/input/y4m.cpp,
+ source/input/yuv.cpp, source/output/y4m.cpp, source/output/yuv.cpp,
+ source/test/testpool.cpp:
+ do not check for NULL prior to delete, do not reset pointers in
+ destructors
+
+ A lot of our classes have destroy() methods. In those we try to zero
+ deleted pointers since there is a chance for multiple destroy()
+ calls. But in destructors the pointer storage itself will be
+ released when the function exits
+ [d8d209de87c2]
+
+ * source/x265.cpp:
+ cli: use sig_atomic_t type for variable modified by SIGINT handler
+
+ Other nits:
+ * removed unused b_exit_on_ctrl_c
+ * removed unnecessary static initializer
+ [6b1982cfc05d]
+
+2013-09-18 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ lookahead: fix cost estimation, use previous result when calculation
+ is skipped
+ [f467c4792a28]
+
+2013-09-17 Aarthi Thirumalai <Aarthi Thirumalai>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ABR - Removed unused states, cleaned up the comments.
+
+ Removed states that are not used in ABR or CQP rate contnrol modes.
+ [d05f4310a976]
+
+2013-09-18 Min Chen <chenm003@163.com>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: disable filter/extend lag when SAO and deblocking are
+ off
+
+ This improves frame parallelism when all loop filtering is disabled
+ (aka: benchmark mode)
+ [d694a96b181c]
+
+2013-09-18 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ lookahead: change const bool to const int, so as to use it safely as
+ a loop counter.
+ [9d5d4e4e6d6c]
+
+2013-09-17 Wenju He <wenju@multicorewareinc.com>
+
+ * source/input/y4m.cpp:
+ fix allocation crash if input y4m file is not found
+ [1dc07ca4c4ce]
+
+2013-09-17 Min Chen <chenm003@163.com>
+
+ * source/common/wavefront.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ Resolve some patching issues for previous patch (deadlock).
+ [13531b8f19cc]
+
+2013-09-17 funman <funman@videolan.org Rafaël Carré>
+
+ * source/x265.h:
+ [x265] [PATCH] library header: use #ifdef __cplusplus Remove a
+ warning when using from C
+ [1c66f40da3e9]
+
+2013-09-16 Min Chen <chenm003@163.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ Use mixed bitmap between FrameEncoder and FrameFilter to Fix crash
+ and hash mistake in WPP mode
+
+ I change task schedult bitmap to mixed FrameEncoder and FrameFilter
+ because there catch two bugs, and I want to reduce latency of Frame
+ Parallelism. The new bitmap mapping 2N+0 to FrameEncoder and 2N+1 to
+ FrameFilter.
+
+ Side effect: 1. We can remove the lock from FrameFilter. 2. Mixed
+ bitmap let us do Filter early, so reduce latency of Frame
+ Parallelism
+
+ Solved bugs: 1. CRASH: the reason is sometime two of threads finish
+ in same time, so they will enter Filter in wrong order and sent
+ Finished Event early. when main thread dequeue JobProvider and
+ execute FrameFilter, we will catch a crash!
+
+ 2. HASH MISTAKE: the reason is same as below, but last row is right
+ order, we will got worng reconst image.
+ [0d33ff236f68]
+
+2013-09-16 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ CLI Options: reset x265_param_default to extern "C"
+ [9a727efab9fa]
+
+ * Merge
+ [960dbe714209]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265opts.h:
+ CLI options: Eliminate rdoqts option; cleanup
+
+ 1. Eliminate rdoqts CLI option: enabled when rdoq and ts are both
+ enabled. 2. Rearrange default initialisations in x265_param_ t
+ structure
+ [46b065f7d676]
+
+ * source/encoder/framefilter.cpp:
+ framefilter: Fix memcpy for pel-pixel datatype change
+ [881444f5910b]
+
+ * source/encoder/framefilter.cpp:
+ framefilter: Fix memcpy for pel-pixel datatype change
+ [810ceb9d2b7c]
+
+2013-09-16 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h, source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.h, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/common/TShortYUV.h, source/common/common.h,
+ source/common/lowres.h, source/common/md5.h, source/common/mv.h,
+ source/common/reference.h, source/common/threading.h,
+ source/common/threadpool.h, source/common/wavefront.h,
+ source/compat/msvc/getopt.h, source/encoder/bitcost.h,
+ source/encoder/cturow.h, source/encoder/dpb.h,
+ source/encoder/frameencoder.h, source/encoder/framefilter.h,
+ source/encoder/motion.h, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.h, source/input/input.h,
+ source/input/y4m.h, source/input/yuv.h, source/output/output.h,
+ source/output/y4m.h, source/output/yuv.h, source/x265.h:
+ X265: header guards format Changed to X265_<FILENAME>_H
+
+ Globally all the x265 header files header guards format changed into
+ X265_<FILENAME>_H
+ [d09f36e4dc8b]
+
+2013-09-13 sumalatha polureddy <sumalatha polureddy>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: Tweak to better handle short term compensation
+
+ Increase the coefficient cplxrSum is adjusted by so that short term
+ compensation does not suffer as much.
+
+ Also, clip the QP for the first frame.
+
+ Overall improvement is about 5%.
+ [6bab41a554b3]
+
+2013-09-13 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: move threadMain() into cpp file
+ [d0883c21fc7f]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: increase baseline bframe bias by 10%
+
+ Our estimateFrameCost() function is not yet checking bidir
+ candidates (because bidir search in the main encoder needs to be
+ replaced first) and since B frame estimates cannot use intra modes
+ either this tends to make B frame scores relatively higher than what
+ x264 finds. So our default bias needs to be a bit higher in order
+ for the lookahead to select B paths.
+ [2555acbc9736]
+
+ * source/cmake/mergestaticlibs.cmake:
+ cmake: whitespace cleanups in mergestaticlibs.cmake (should not
+ change behavior)
+
+ this file was borrowed from another project, and wasn't scrubbed for
+ our cmake script style (no tabs, 4 spaces, unix eoln, lower case cmd
+ names)
+ [9c5a74cfacca]
+
+2013-09-13 Derek Buitenhuis <derek.buitenhuis@gmail.com>
+
+ * source/cmake/mergestaticlibs.cmake:
+ cmake: Don't rely on non-POSIX ar functionality
+
+ Fixes build on stricter systems like FreeBSD.
+ [8e7d559df1ac]
+
+ * source/Lib/TLibEncoder/NALwrite.cpp:
+ NALwrite: Include forgotten header
+
+ Fixes build on Linux, where memcpy is not global.
+ [32922922a332]
+
+2013-09-13 Steve Borho <steve@borho.org>
+
+ * source/encoder/framefilter.cpp:
+ ppa: remove redundant PPA event
+
+ The PPAScopeEvent macro causes a bar to appear in our profiler with
+ the given name, associated with the CPU core and start/stop time.
+ The problem with this particular instance is that the function was
+ copy-pasted from another in this file and this profile scope came
+ along for the ride and since they both have the same name and one
+ calls the other it is essentially a NOP
+ [f98bfe09f806]
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ framefilter: comment cleanups, use pixel data type
+ [a1e34874f642]
+
+ * source/test/CMakeLists.txt:
+ cmake: fix test bench builds following static lib reorg
+ [4206091a6278]
+
+2013-09-13 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ Encoder: Remove x265_ prefix from NAL data extract functions.
+ [45786d093571]
+
+ * source/encoder/encoder.cpp:
+ Encoder: Factor out duplicated code in NAL data extraction [Gopu]
+ [fc32e3804b8b]
+
+2013-09-12 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ NAL : std::ostringstream replaced
+ [92b1820c3e42]
+
+2013-09-12 Derek Buitenhuis <derek.buitenhuis@gmail.com>
+
+ * source/common/threading.h:
+ threading: Include fcntl.h on POSIX systems
+
+ This is where O_CREAT and O_EXCL are defined.
+ [17d41a7563aa]
+
+2013-09-11 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: set MACOS build flag on mac builds (fixes CPU count
+ detection)
+ [8fdafe573ef7]
+
+ * source/common/threading.cpp, source/common/threading.h:
+ threading: use named semaphores for POSIX events
+
+ Mac OS X does not support unnamed semaphores. It's not clear what
+ the performance implications of this are on Linux (or Mac). Also,
+ this method is not very robust. If x265 crashes, it leaves named
+ semaphores in the system until the kernel is restarted.
+ [d95d94ee0e1d]
+
+ * build/linux/batch.py:
+ build: remove obsolete test script
+ [7a3699202860]
+
+ * source/common/ipfilter.cpp:
+ ipfilter: remove two unused file-static functions
+
+ Xcode reported these as warnings; Xcode build is now 100% clean
+ [2d59beb5c0f4]
+
+ * source/common/x86/CMakeLists.txt:
+ cmake: add Xcode hacks for YASM integration (is there a better way?)
+ [dfda8ed7bbf4]
+
+ * source/CMakeLists.txt:
+ cmake: detect Xcode generator, avoid static lib failure
+ [74d7078f9afe]
+
+ * build/xcode/make-project.sh:
+ cmake: add xcode build folder
+ [881263c02cc2]
+
+2013-09-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ framefilter: prevent row filter overlap race hazards
+ [463fc13419b9]
+
+2013-09-11 Wenju He <Wenju He>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ check before delete
+ [80c133ffdbef]
+
+2013-09-12 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/common/vec/CMakeLists.txt,
+ source/common/x86/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: mark project libs as static
+ [d4a8f6b92eb2]
+
+2013-09-11 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/encoder/CMakeLists.txt:
+ cmake: link primitive projects into libx264 directly, not through
+ common
+ [d5ffa406e4fb]
+
+ * build/icl32/build-all.bat, build/icl32/make-makefile.bat,
+ build/icl64/build-all.bat, build/icl64/make-makefile.bat:
+ cmake: detect and use ICL version 14
+ [11785c1be804]
+
+2013-09-12 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * Merge
+ [a9ad48de415e]
+
+ * source/x265opts.h:
+ cli: moving rd option description to rate distortion section.
+ [25291305a3b9]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp, source/x265.h,
+ source/x265opts.h:
+ cli: replacing no-rdo and no-rdoq options with rd: 0 means
+ nordo,nordoq. 1 means nordo,rdoq and 2 means rdo, rdoq.
+ [52630a3de867]
+
+2013-09-11 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/x265.h:
+ cli: clarifying enum comment in No-RDO.
+ [989980166bed]
+
+2013-09-11 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: quiet ICL warnings from STLport's use of pragmas
+ [ea0aa1f8abda]
+
+2013-09-11 Min Chen <chenm003@163.com>
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ framefilter: Make code clearer
+
+ We do not need the row delay when the loopfilter is disabled.
+ [ffbe50c2f743]
+
+2013-09-11 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: fast-no-rdo is stable enough to be a part of regular no-
+ rdo
+ [a6bf1f10e820]
+
+ * source/x265.h:
+ cli: Add enum RDOLevel to list of rate distortion modes.
+ [babfab4f36a8]
+
+2013-09-11 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove extra parens (Mac GCC reports this as a warning)
+ [af8cddab103e]
+
+2013-09-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ framefilter: run filters synchronously at end of each row
+ [4ec9253cc3c1]
+
+2013-09-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/lowres.cpp,
+ source/common/lowres.h, source/encoder/dpb.cpp,
+ source/encoder/slicetype.cpp:
+ lowres: don't use bframes member var to store allocation count
+
+ x264 used a bframes variable here to hold the number of leading B
+ frames encoded before an I or a P (I assume for rate control use)
+ [6ca33594fbf3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: clamp mvmin.y to reflag distance as well
+ [e5b5277956a8]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: remove unused bframes (this was probably not the
+ bframes you need)
+ [90a4d668f833]
+
+ * source/x265opts.h:
+ cli: move fast-no-rdo next to the other rdo options
+ [f241eedf1ae1]
+
+ * source/CMakeLists.txt:
+ cmake: generate libx265 unconditionally
+ [21d8b3a825ad]
+
+ * source/CMakeLists.txt:
+ cmake: merge fixup
+ [e27907038796]
+
+ * source/encoder/compress.cpp:
+ compress: remove unnecessary line (GCC warning)
+ [e2123d174c7c]
+
+ * source/CMakeLists.txt, source/input/CMakeLists.txt,
+ source/output/CMakeLists.txt:
+ Merge with stable
+ [b7646217f425]
+
+ * source/CMakeLists.txt:
+ cmake: rename x265 project to cli, force output name to x265. use
+ libx265.a
+ [841aaa5fa2ec]
+
+ * source/encoder/encoder.cpp:
+ encoder: replace long with UInt
+ [616f585fa646]
+
+2013-09-10 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ compress: different lambdas for P and B slices, no efficiency drop.
+ [4cd9216dd366]
+
+ * source/encoder/compress.cpp:
+ compress: replace early exit macro with fast-no-rdo option
+ [5c8ce4a2e9fc]
+
+ * source/common/common.cpp, source/x265.h, source/x265opts.h:
+ compress: Introducing option fast no-rdo, only when no-rdo mode is
+ enabled.
+ [cda8c3d1f83c]
+
+ * source/encoder/compress.cpp:
+ compress: Intra mode checked only in P frames
+ [1c72e3fbd641]
+
+ * source/encoder/compress.cpp:
+ compress: Enabling early exit macro.
+ [ab77d80491d8]
+
+2013-09-09 Steve Borho <steve@borho.org>
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: remove unused maxVal variable
+ [98f0f7dde384] <stable>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/VectorClass/instrset.h, source/common/TShortYUV.cpp,
+ source/common/common.h, source/common/pixel.cpp,
+ source/common/threading.h:
+ convert stdlib.h includes to <cstdlib> to avoid namespace conflicts
+ [cfd76423dbf4] <stable>
+
+ * source/CMakeLists.txt, source/input/CMakeLists.txt,
+ source/output/CMakeLists.txt:
+ cmake: merge InputFiles and OutputFiles projects into cli project
+ (simplicity)
+ [60dec1deb894] <stable>
+
+ * doc/LookaheadGuide.txt, doc/LookaheadPlan.txt,
+ source/Lib/TLibCommon/TComCABACTables.cpp,
+ source/Lib/TLibCommon/TComCABACTables.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/common/vec/blockcopy-
+ sse42.cpp, source/common/vec/dct-sse42.cpp, source/common/vec/intra-
+ sse42.cpp, source/common/vec/ipfilter-sse42.cpp, source/common/vec
+ /pixel-sse42.cpp, source/common/vec/sse42.cpp,
+ source/encoder/encoder.h:
+ merge default into stable; feature freeze
+ [1efd146deeeb] <stable>
+
+ * source/x265.cpp:
+ cli: add version id into CSV output
+ [d11de33521cf]
+
+ * source/x265.cpp:
+ cli: report global PSNR on summary line
+ [0811d6c95e44]
+
+ * source/common/common.cpp:
+ common: fix lookahead check
+ [48ab740e5c7f]
+
+ * source/CMakeLists.txt:
+ cmake: do not use -fPIC on MinGW64
+ [84e49ab6fef1]
+
+ * source/CMakeLists.txt:
+ cmake: fix eoln damage
+ [a24a04441e5e]
+
+ * source/CMakeLists.txt:
+ cmake: add STLport build option
+ [943ffb8b220c]
+
+ * source/input/input.h, source/input/y4m.h, source/input/yuv.h,
+ source/x265.cpp:
+ stl: fix warnings/errors reported by STLport headers
+ [96f8d46f9e13]
+
+ * source/common/common.cpp:
+ common: fix lookahead depth dependency
+ [d8511336efdb]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: disable lookahead for all-P frame runs
+ [8859d7da393c]
+
+ * source/common/common.cpp:
+ common: enable -b3 by default to match x264
+
+ Use -b0 to get the previous all-P frame default behavior
+ [7717f84c5cfa]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: remove rce member variable pointer
+
+ Pass RateControlEntry to functions that need it. It was pretty
+ misleading to pass in an argument named m_rce.
+ [42c2c838d492]
+
+2013-09-09 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ ratecontrol: move lastRceq and qpaRc to RateControlEntry().
+ [22ac6e8ca357]
+
+ * doc/LookaheadGuide.txt, doc/LookaheadPlan.txt:
+ Merge
+ [76f1e04c897e]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.h,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: rateControlEntry is now a member of FrameEncoder.
+ [a5087ca01ab8]
+
+2013-09-09 Steve Borho <steve@borho.org>
+
+ * doc/LookaheadGuide.txt, doc/LookaheadPlan.txt:
+ doc: remove obsolete planning docs
+ [bc4a13c9017c]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: enable lookahead by default. --b-adapt 0 or --rc-
+ lookahead 0 disables
+ [d3c9a535c21d]
+
+ * source/x265opts.h:
+ cli: add --b-adapt CLI option
+ [176055b7fadd]
+
+2013-09-08 Min Chen <chenm003@163.com>
+
+ * source/encoder/framefilter.cpp:
+ support diable both thread and lft/sao
+ [f9150ab39bf9]
+
+ * source/encoder/frameencoder.cpp:
+ support both diable thread and lft/sao
+ [4ace08e490a0]
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ simplify by processRowPost()
+ [6882f7eb6c31]
+
+2013-09-07 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: subpel offsets table needs a 'no-motion' entry
+ [1f8760fdc2d8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove unused m_searchRange
+ [08ed93aebcdc]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove unused m_searchMethod
+ [72f6cfac517d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.cpp,
+ source/encoder/motion.cpp, source/encoder/motion.h,
+ source/encoder/slicetype.cpp, source/x265.cpp, source/x265.h,
+ source/x265opts.h:
+ api: add -m/--subme to adjust level of subpel refine
+
+ This is very similar to x264, but ours has no effect on RD analysis,
+ it only affects the amount of HPEL and QPEL refinement for motion
+ estimation.
+ [0f8c8a921d1b]
+
+ * source/Lib/TLibCommon/TComPic.h, source/Lib/TLibEncoder/TEncTop.cpp,
+ source/x265.cpp, source/x265.h:
+ api: pass through a void* user data pointer through the encoder
+ [dcc5e822fb05]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/cturow.h, source/encoder/frameencoder.cpp:
+ cturow: move completed column counter back into CTURow class (from
+ TComPic)
+ [8e945ca22fd5]
+
+ * source/x265.cpp:
+ cli: initialize input picture slice type
+ [507ad2b9aa37]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: remove dead meathod declaration
+ [836a1b2beb3f]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: prevent deadlocks on CTRL+C aborts
+ [e46a1ae90f30]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ lookahead: do not leak pictures left in lookahead queues on abort
+ [1fd36612d2a9]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp:
+ TComSlice: remove unused lambda variables
+ [090e76ad93c9]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: use a more refined depth for SAO
+ [065ada6a83f7]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/frameencoder.cpp:
+ sao: fix a typo
+ [b7afed5ff5c4]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp:
+ slice: finally remove slice 'depth' parameter, use slice type to
+ approximate
+
+ Instead of relying on a fixed depth cadence, apply all the high-
+ depth hacks to only B slices.
+ [ea196d10f05e]
+
+ * source/encoder/encoder.cpp:
+ log: concise is almost always better
+ [d337394a2f86]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ TEncSampleAdaptiveOffset: remove hungarian prefixes
+ [bc6e986c96cc]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: update a TODO comment
+ [aa958a34d2f5]
+
+ * source/encoder/compress.cpp:
+ compress: enable SSD based merge decisions for --no-rdo path
+ [302f9fd4fb0c]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ compress: cleanups
+ [791da0534bb7]
+
+2013-09-07 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ TEncCu: optimized merge routine xcomputeCostmerge2x2N
+ [3198b82d6709]
+
+2013-09-07 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp:
+ log: combine all threading info into one log line
+ [fd0c4026514b]
+
+2013-09-07 Min Chen <chenm003@163.com>
+
+ * source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp:
+ framepp: Support NO-WPP + FrameParallelism Mode
+ [a376aeeb9638]
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncSbac.h, source/encoder/frameencoder.cpp,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ framepp: let sao use own context
+ [c9fd5009e72a]
+
+2013-09-07 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: remove broadcast methods, inline row initializations
+ [57959ef033e4]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: remove unused accessor methods, inline scaling list
+ sets
+ [19571e08f69e]
+
+ * source/encoder/frameencoder.h:
+ frameencoder: remove unused accessor methods
+ [a7b6d9b86b4a]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: inline resetEncoder
+ [470884b53ec3]
+
+ * source/encoder/frameencoder.h:
+ frameencoder: improve comments
+ [392e8ebaba0b]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: nits
+ [859f9b557938]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ frameencoder: move lambda initialization into the frame worker
+ thread
+ [831882d2f600]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/dpb.cpp,
+ source/encoder/dpb.h:
+ dpb: we don't need to pass the FrameEncoder to DPB::prepareEncode()
+ [5e00016ee73b]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ ratecontrol: avoid lookahead overhead for CQP
+ [a027cdf5a6e6]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: avoid some operations in CQP mode
+ [282d9b666254]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: remove redundant clip and double conversions
+ [61f44f7895c7]
+
+2013-09-07 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: bug fix - qp for ABR cant exceed MAX_QP = 51
+ [fb9aa649c13e]
+
+2013-09-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: lookAheadCost is a somewhat confusing variable name
+ [385c0b29be4f]
+
+ * source/x265.cpp:
+ cli: assign poc on input pictures (ignored by encoder, but good
+ example)
+ [ef0c1d6fbd26]
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: simplify externs, fix MSVC compiler version dependencies
+ [090407717725]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncCfg: use param.decodedPictureHashSEI directly without accessor
+ [84f9983a5de7]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/x265.h, source/x265opts.h:
+ api: rename bEnableDecodedPictureHashSEI (not a bool)
+ [381e8ea239cb]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h:
+ api: add sliceType to output pictures
+ [79ade4825d33]
+
+ * source/common/lowres.h, source/x265.h:
+ api: move slice type macros to public API
+ [1256b9f2678e]
+
+ * source/x265.cpp:
+ x265: nits
+ [850a0ddfb3ae]
+
+ * source/x265.cpp:
+ x265: print unrecognized short options as char instead of hex
+ [883098a93d61]
+
+ * source/x265.cpp:
+ x265: emit a warning message if a short option is invalid
+ [5a14cf8e8a3b]
+
+ * source/x265.cpp:
+ x265: remove -w short option for disabled weightp command
+ [e41fd1a98838]
+
+2013-09-06 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: Handle Bframes immediately preceding an IDR correctly.
+ [aaeeb869133d]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/slicetype.cpp:
+ Set all I frames as keyframes, change nalunittype decision
+ accordingly.
+ [d934cc573e08]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: uncrustified
+ [66b3f3b38e84]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: B-frames analysis integrated
+ [86603fe88df5]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: Remove unnecessary initialization
+ [9c4c2b1c7fe0]
+
+2013-09-06 Min Chen <chenm003@163.com>
+
+ * source/common/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ review: improvement filterVertical_p_p and filterHorizontal_p_p
+ [0f79f2f96170]
+
+2013-09-06 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: MSVC does not understand -fPIC
+ [11e0362a9835]
+
+2013-09-06 Rafaël Carré <funman@videolan.org>
+
+ * source/CMakeLists.txt, source/cmake/CMakeASM_YASMInformation.cmake:
+ Always use -DPIC/-fPIC when targetting x64
+
+ Fix link failure when making a shared object on Linux
+ [ae8499191c12]
+
+2013-09-06 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: nits
+ [63364b91b72a]
+
+2013-09-06 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/common/lowres.cpp, source/encoder/slicetype.cpp:
+ Scenecut detection functional with no bframes
+ [6b4a050476d1]
+
+2013-09-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ TEncSearch: clip mvmax by a fixed ammount for frame parallelism
+
+ When frame parallelism is enabled, we enforce at least merange +
+ interpolation half-length of reconstructed reference pixels to be
+ available in all reference frames before allowing the encoder to
+ begin compressing a given row. So we cannot allow the motion search
+ to extend beyond merange past the colocated ref block (regardless of
+ the MVP search starting location).
+
+ We can't use the actual number of rows available because this
+ results in non- determinism.
+ [f3a583f4d0b1]
+
+ * source/x265.cpp:
+ ppa: use scoped PPA event for writeNALs
+ [1b49fdef200e]
+
+ * source/x265.cpp:
+ x265: remove redundant help output line
+ [8baa04aa131e]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: poke idle thread after enabling a row
+
+ This ensures at least one worker thread sees the state transition
+ [69c280c82c83]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/slicetype.cpp:
+ bitcost: always use non-I lambda table to seed bitcost table
+ [2c525d4b2010]
+
+ * source/encoder/frameencoder.cpp:
+ nit
+ [0a24b5f9c372]
+
+2013-09-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: start encoding CU rows once minimum reference row lag
+ is met
+ [9c5b11c33960]
+
+2013-09-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: declare destructor virtual
+ [54612105847b]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: nits
+ [25bc610d324e]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: statistics lock was no longer necessary, always runs in API
+ thread ctx
+ [5e42cbe10f98]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: cleanup
+ [b0ac25bf249a]
+
+2013-09-06 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ tighten rate control logic for ABR
+ [9266f876f316]
+
+2013-09-05 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/framefilter.cpp:
+ improvement: replace compressMV by index mapping
+ [d6df26c90ee5]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp:
+ framepp: move compressMV into loop
+ [b121e96290e2]
+
+2013-09-05 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/encoder/frameencoder.cpp:
+ SEI: Replaced STL Classes
+ [bce4dbc57e09]
+
+ * source/encoder/encoder.cpp:
+ encoder: Added pad size in Malloc
+ [842e8155f9dc]
+
+2013-09-05 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ common: keyframeMax should always be >=0
+ [c30558100e0d]
+
+ * source/x265opts.h:
+ bOpenGOP: remove option openGOP, we only support closed GOP now;
+ clarify comment
+ [b3fe7c74c8ca]
+
+ * source/encoder/encoder.cpp:
+ bOpenGOP: Open GOP has nothing to do with keyframe interval
+ [0a5662f7e27f]
+
+ * source/x265.h:
+ bOpenGOP: clarify in comment
+ [550ae0ed71a2]
+
+2013-09-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp:
+ TEncTop: hoist compressFrame trigger back into encode() function
+ [3d5c461db4a7]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ frameencoder: set QP and lambda on the correct FrameEncoder
+ [84539616c439]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: hold a reference for frames connected to FrameEncoders
+ [3221580e71d6]
+
+ * source/encoder/encoder.cpp:
+ encoder: uncrustify
+ [135b917429ac]
+
+2013-09-05 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ Encoder: removed STL Container classes
+ [b1e048696138]
+
+2013-09-05 Min Chen <chenm003@163.com>
+
+ * doc/intra/T16.TXT, doc/intra/T32.TXT, doc/intra/T4.TXT,
+ doc/intra/T8.TXT, source/common/vec/intrapred.inc:
+ doc: intra all angles algorithm
+ [c05c9410a379]
+
+2013-09-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: handle odd keyframe intervals better
+ [8d73d4ffd725]
+
+2013-09-05 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/x265.cpp:
+ x265Cli: Removed std::string in log
+ [ce7faa93a060]
+
+2013-09-05 Steve Borho <steve@borho.org>
+
+ * source/PPA/ppaCPUEvents.h, source/encoder/frameencoder.cpp:
+ ppa: measure a different FrameEncoder method
+ [9b9c4b842d10]
+
+2013-09-04 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265opts.h:
+ encoder: make rate control mode implicit from other configs
+ [6fb582a6d95e]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp:
+ TEncCfg: remove fixed GOP structures
+ [8b79137bdd37]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: require --log 4 to dump hash strings
+
+ I don't see them being useful for display except for regression
+ scripts
+ [a871b170dd2d]
+
+ * source/encoder/dpb.cpp:
+ dpb: do not use fixed GOP cadence to select colocated direction
+ [80ba827e2150]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/encoder.cpp:
+ TEncCfg: remove unused dQP table
+ [a8a002ebcde2]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/encoder.cpp:
+ TEncCfg: remove obsolete configurables
+ [60c1adcbc34a]
+
+ * source/encoder/dpb.cpp:
+ dpb: nits
+ [0a211206d496]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/ratecontrol.cpp:
+ do not configure QP and lambda twice
+ [77881138aa1d]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: assign qp correctly
+ [ce4c14ba9b85]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ ratecontrol: move CQP support into our code
+ [7bcd5530d55a]
+
+ * source/encoder/frameencoder.cpp:
+ FrameEncoder: remove min gop size from depth calculation
+ [9ba4683de281]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: hard code setNumRefIdxL0DefaultActive() and L1 default
+
+ This was failing in debug with -i1
+ [6a47835b91e1]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/common/lowres.h,
+ source/encoder/dpb.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/slicetype.cpp:
+ slicetype: remove gopIdx from lookahead output, simplify fake
+ lookahead
+
+ CQP uses a simple offset for non-I slices (temporary hack)
+ [23911d66a504]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/encoder/compress.cpp, source/encoder/frameencoder.cpp:
+ TEncEntropy: remove hungarian prefixes
+ [b48bafd35b68]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: remove hungarian prefixes from function arguments
+ [99a1fb3c4730]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ FrameEncoder: stop passing pic pointer to methods, use m_pic
+ [ead51e579c13]
+
+ * source/encoder/frameencoder.cpp:
+ FrameEncoder: remove extra white-space
+ [493d0dfc608a]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: remove trailing white-space
+ [ce33f819359b]
+
+ * source/Lib/TLibEncoder/SyntaxElementWriter.cpp:
+ SEI: remove hungarian prefixes
+ [a2c84fdf74d7]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: missed deletion
+ [43a27c6d551d]
+
+2013-09-04 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/dpb.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/slicetype.cpp:
+ using slicetypes from lookahead
+ [7df7dab02f10]
+
+2013-09-04 Min Chen <chenm003@163.com>
+
+ * source/encoder/framefilter.cpp:
+ Fix bug in PCM mode
+ [6b2797b588c7]
+
+2013-09-04 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/frameencoder.cpp:
+ TComSlice : Removed Unused std::vector Variable
+ [6ef1bd02dd48]
+
+2013-09-04 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: replace std::string with const char *
+ [70966790b40e]
+
+ * source/CMakeLists.txt:
+ cmake: make -Werror on GCC a build option defaulting to off
+
+ It can be enabled on build-bots, etc, but not block typical
+ development
+ [e694a5fbf527]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp:
+ coding style
+ [209566e9acc5]
+
+2013-09-04 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp:
+ QP- Lambda table -x265_lambda2_tab_I , x265_lambda2_tab_non_ I : for
+ inter and intra blocks
+ [5f0f2466345f]
+
+2013-09-04 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/dpb.cpp:
+ dpb: encode structure limitations
+
+ Min GOP size for IP config is 4, for B frames it is 8. Keyframe
+ interval should be a multiple of min GOP size.
+ [a4cec6558ccc]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/dpb.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/slicetype.cpp:
+ TEncCfg: rename getGopSize to getGopSizeMin()
+ [375d9f3157c1]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/dpb.cpp,
+ source/encoder/encoder.cpp:
+ dpb: rename m_gopsize in TEncCfg.h to gopsizeMin
+ [9c558cf50fde]
+
+ * source/common/common.cpp:
+ framepp: number of frame threads always less than lookahead depth
+ [06862133aecc]
+
+2013-09-04 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ TypeDef: give explicit namespace to X265_DEPTH for 16bpp builds
+ [e7cfb49dc587]
+
+2013-09-03 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: prune default search length to 60, for optimal frame
+ parallelism
+ [3ca96381d4f0]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: clear enabled row bitmask at the start of each frame
+ [1e8a103ef4d5]
+
+ * source/common/wavefront.cpp, source/common/wavefront.h:
+ wavefront: add a method to clear the enabled bitmask
+ [3fd72a7b33b8]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: remove TODO comment, it was already done
+ [e976fe0b62bd]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: use pre-allocated temp buffer for weighted and
+ chroma MC
+ [6dde4a22e763]
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/common/lowres.cpp,
+ source/common/primitives.cpp, source/common/vec/blockcopy.inc,
+ source/common/x86/asm-primitives.cpp, source/encoder/compress.cpp,
+ source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/slicetype.cpp, source/test/intrapredharness.cpp,
+ source/test/intrapredharness.h, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h, source/test/mbdstharness.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h,
+ source/test/testharness.h, source/x265.cpp:
+ remove redundant x265 namespace qualifiers
+ [7f8b72995aee]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ tpyo
+ [ade4ff7e2cb8]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/frameencoder.cpp:
+ use X265_MIN/X265_MAX to avoid GCC warnings
+ [a68aded38e69]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncAnalyze: cleanup hungarian notation and other issues
+ [6044f5d13785]
+
+ * COPYING:
+ COPYING: add a mention to our available commercial license
+ [2fa5d1060ded]
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/encoder/compress.cpp, source/encoder/dpb.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/test/intrapredharness.cpp:
+ reorg: replace HM's Bool typedef globally with C++ bool
+ [4cbd0c51baa9]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TypeDef.h:
+ reorg: replace HM's Float typedef globally with C float
+ [2feaea24b9ff]
+
+ * source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp:
+ reorg: replace HM's Double typedef globally with C double
+ [84e4e7bd4ba8]
+
+ * source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/common/TShortYUV.h, source/common/dct.cpp,
+ source/common/ipfilter.cpp, source/common/lowres.cpp,
+ source/common/vec/dct.inc, source/encoder/compress.cpp,
+ source/encoder/cturow.cpp, source/encoder/dpb.cpp,
+ source/encoder/dpb.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/slicetype.cpp:
+ reorg: replace HM's Int typedef globally with C int
+ [236d8e715ef2]
+
+ * source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/common/TShortYUV.cpp,
+ source/common/dct.cpp, source/common/vec/dct.inc,
+ source/encoder/slicetype.cpp:
+ reorg: replace HM's Short typedef globally with C short
+ [e44a6950d22a]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ reorg: replace HM's Char typedef globally with C char
+ [37b99feefbfd]
+
+ * source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/common/TShortYUV.cpp, source/encoder/compress.cpp,
+ source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ reorg: replace HM's Void typedef globally with C void
+ [1a9780eb8bea]
+
+ * source/Lib/TLibCommon/TComCABACTables.cpp,
+ source/Lib/TLibCommon/TComCABACTables.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h:
+ merge statically defined CABAC constant tables into TComRom
+ [25c5139fe205]
+
+ * source/Lib/TLibEncoder/AnnexBwrite.h:
+ remove unused AnnexBwrite.h
+ [a867152e7071]
+
+ * source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h, source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComCABACTables.cpp,
+ source/Lib/TLibCommon/TComCABACTables.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/common/TShortYUV.cpp, source/common/TShortYUV.h,
+ source/common/common.cpp, source/common/dct.cpp,
+ source/common/intrapred.cpp, source/common/ipfilter.cpp,
+ source/common/lowres.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/reference.h,
+ source/common/vec/dct.inc, source/common/vec/intrapred.inc,
+ source/common/vec/ipfilter8.inc, source/encoder/cturow.h,
+ source/encoder/dpb.h, source/encoder/frameencoder.h,
+ source/encoder/framefilter.h, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.h:
+ reorg: move HM classes and functions under x265 namespace
+
+ This makes it possible to link x265 and HM into a single application
+ [aa94afeb8368]
+
+2013-09-03 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/ipfilter.cpp:
+ ipfilter : extendCURowColBorder() performance tuning
+ [30daf6927e11]
+
+2013-09-03 praveen Tiwari <praveen Tiwari>
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: VC9 fix for SAD_4, 'pextrd' replaced with 'movd'
+ [15c21c4da368]
+
+2013-09-03 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: log nit
+ [b27576343f8c]
+
+ * source/common/common.cpp, source/common/wavefront.cpp,
+ source/encoder/dpb.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h, source/encoder/slicetype.h:
+ uncrustify
+ [71ee73499db4]
+
+ * source/common/vec/pixel8.inc:
+ pixel8: sad_x4_16 improvements
+ [2a2c74c9eb02]
+
+ * source/common/vec/pixel8.inc:
+ pixel8: sad_x4_4 improvements
+ [7caa93beb17f]
+
+ * source/common/vec/pixel8.inc:
+ pixel8: sad_x3_16 improvements
+ [9e5372fe1f6c]
+
+ * source/common/vec/pixel8.inc:
+ pixel8: sad_x3_8 improvements
+ [92256af4cf8b]
+
+ * source/common/vec/pixel8.inc:
+ pixel8: sad_x3_4 improvements
+ [ae93ad833228]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix initialization order
+ [d62d57018d3d]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix unsigned/signed comparison
+ [8e4e2f0c10a9]
+
+ * source/common/lowres.h, source/encoder/slicetype.h:
+ lowres: move slice type defines into common/
+
+ headers in common/ should not include encoder/ headers
+ [07599fd4a497]
+
+2013-09-03 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ framepp: Changing output message
+ [9a2eaa27b174]
+
+2013-09-03 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/common.cpp,
+ source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/dpb.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp:
+ framepp: Active frame parallelism
+ [bc1887f2bbc4]
+
+2013-09-02 Shazeb Nawaz Khan <shazeb@multicorewareinc.com>
+
+ * source/encoder/slicetype.cpp:
+ Used slicetypeAnalyse() in slicetypeDecide()
+
+ # HG changeset patch # User Shazeb Nawaz Khan
+ <shazeb@multicorewareinc.com> # Date 1378118764 -19800 # Mon Sep 02
+ 16:16:04 2013 +0530 # Node ID
+ e4a57ae74dd96ceb31815a44098b81872e494fff # Parent
+ e2d93166e034040d61c897264e1dfe7aeeb3d661 Used slicetypeAnalyse() in
+ slicetypeDecide()
+ [2f9fcf768918]
+
+ * source/encoder/slicetype.cpp:
+ Fixed slicetypeAnalyse() for no-B config
+
+ # HG changeset patch # User Shazeb Nawaz Khan
+ <shazeb@multicorewareinc.com> # Date 1378118617 -19800 # Mon Sep 02
+ 16:13:37 2013 +0530 # Node ID
+ e2d93166e034040d61c897264e1dfe7aeeb3d661 # Parent
+ 3ea029900ab3ee58ed6b16c5c5a0a89975ba8c03 Fixed slicetypeAnalyse()
+ for no-B config
+ [e4142126e8ac]
+
+2013-09-02 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ ipfilter : Removed unused filterHorizontalExtendCol from testbench
+ and primitive
+ [e3e4e2c33331]
+
+2013-09-02 praveen Tiwari <praveen Tiwari>
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: Optimization with sad_x4 4xn
+ [3ea029900ab3]
+
+2013-09-02 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/common.cpp:
+ slicetype: keyframe min and max values inported from x264
+ [10ec000a0902]
+
+ * source/common/common.cpp:
+ slicetype: default value for scenecutThreshold pulled in from x264
+ [e347a519e060]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp:
+ slicetype: Double defined macros replaced.
+
+ Todo: investigate whether its safe to replace the table with just I,
+ P, B (2,1,0) according to Table 7-7
+ [d3a13581ef98]
+
+2013-09-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: pre-allocate intermediates temp buffer
+ [5c27dd5f8542]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: simplify xPredInterLumaBlk
+ [98ea1b8fcfea]
+
+ * source/encoder/motion.cpp:
+ motion: split mvcost from subpelCompare
+ [6948b2b8d1fd]
+
+ * source/encoder/motion.cpp:
+ replace 64s with MAX_CU_SIZE
+ [7ce07886514a]
+
+ * source/CMakeLists.txt, source/cmake/CMakeASM_YASMInformation.cmake,
+ source/common/vec/CMakeLists.txt, source/common/vec/vec-
+ primitives.cpp:
+ cmake: detect and handle Mac OS X 10.8 default compiler
+
+ It can't build any of the vector primitives, but at least now it
+ generates a working x265 exectuable
+ [6410d56ae417]
+
+2013-07-25 Vittorio Giovara <vittorio.giovara@gmail.com>
+
+ * source/x265.cpp, source/x265opts.h:
+ replace --width and --height with --input-res
+ [d41fadfab6de]
+
+ * source/x265opts.h:
+ change 'rate' option to 'fps'
+ [20a4642c6f5b]
+
+2013-09-01 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: lowres qpel
+ [61b2b54bf21b]
+
+ * source/encoder/motion.cpp:
+ motion: simplify subpel logic
+ [dab5d5e5e69c]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: use lowresPlane for lowres subpel, make pixelcmp_t an
+ argument
+ [33900a0ca821]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/lowres.cpp,
+ source/common/reference.cpp, source/common/reference.h,
+ source/encoder/frameencoder.cpp, source/encoder/motion.cpp,
+ source/encoder/slicetype.cpp:
+ reference: remove lumaPlane[][] and prior calculation
+ [90af58daa658]
+
+ * source/common/reference.cpp, source/common/reference.h,
+ source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: cleanup subpel on-demand generation
+ [546d00cfe1fd]
+
+ * source/encoder/motion.cpp:
+ motion: fix include slash
+ [c937dc7f6d8e]
+
+ * source/common/ipfilter.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/ipfilter16.inc,
+ source/common/vec/ipfilter8.inc, source/common/vec/pixel8.inc:
+ primitives: use intptr_t for stride arguments
+ [a2ff0d818bdf]
+
+2013-09-01 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.h:
+ Merge
+ [c31b254a4bfc]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ reference: no pre-generating reference planes
+ [35a513f3263b]
+
+ * source/encoder/motion.cpp:
+ motion: replace intermediate values with a tmp buffer.
+ [0106d1f8d2a2]
+
+ * source/encoder/motion.cpp:
+ motion: COST_QMV redefined
+ [95d92294576d]
+
+ * source/common/reference.cpp, source/common/reference.h,
+ source/encoder/motion.cpp:
+ motion: correct strides in subpel buffer and intermediate values
+ buffer
+ [2cc40cfee287]
+
+2013-08-31 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/common/reference.cpp, source/common/reference.h,
+ source/encoder/motion.cpp, source/encoder/motion.h:
+ Motion :subpel Generation
+ [1032a9893607]
+
+2013-08-31 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: fix init order for GCC
+ [0e0a822fd344]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: add missing include of math.h (sqrt)
+ [86e371cdb75e]
+
+ * source/CMakeLists.txt, source/cmake/mergestaticlibs.cmake,
+ source/common/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: add ENABLE_STATICLIB build option (requires some black magic)
+ [02846fb1a082]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused includes
+ [33efbdbb527c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove buffer copy for full-pel SATD measurement
+ [043b414d4317]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TComRdCost: remove distortion functions and
+ TComRdCostWeightPrediction
+
+ TComRdCost is now just a pure-inline class with no CPP
+ [48e8b5c0fd9b]
+
+2013-08-30 Steve Borho <steve@borho.org>
+
+ * source/x265opts.h:
+ x265: disable weighted unipred CLI option
+
+ The recent changes to TComPrediction::xPredInterLumaBlk() to
+ generate subpel on demand almost certainly busted weighted
+ prediction.
+ [326e3757c130]
+
+ * source/x265opts.h:
+ x265: disable weighted bipred CLI option
+ [dd2e8492b873]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: simplify refPic initialization
+ [9d8b579bf811]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: use optimized satd primitives for bidir fractional
+ search
+ [aa7343de0a87]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix a typo
+ [7866a8b3d925]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove m_bc and inline xPatternSearchFracDIF
+ [5444249106a9]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComRdCost: remove step parameter, always 1, merge setDistParam
+ methods
+ [814c5a4538cf]
+
+ * source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TComPicYuv: remove getLumaFilterBlock() methods, generate on demand
+ in subpel
+
+ TEncSearch::xPatternRefinement() is only used for bidir refinement,
+ and is on the short-list to be removed once bidir is optimized.
+ [29d2a7ce4c68]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: replace getLumaFilterBlock() use with fpel getLumaAddr()
+
+ This returned address is stored in m_distParam but it never actually
+ used. The fref is overwritten before any calls to SATD
+ [f36e35862749]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: hard-code 8x8 CU size for intra predictions output buffer
+ [94d8f58137bc]
+
+2013-08-30 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ Fix decoder crash, Initialize m_numberOfReferencePictureSets to 0
+ [6798c3d229ac]
+
+2013-08-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRom.cpp:
+ TComRom: tabs to spaces
+ [242c4c511c4f]
+
+2013-08-30 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: Slightly lower I frame qp to prevent quality drop.
+ [090de727cc5b]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ ratecontrol: minor edits
+ [ac1f425f844f]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ ratecontrol: fix compile error.
+ [06c30405d308]
+
+2013-08-30 Aarthi Thirumalai <aarthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/common.cpp,
+ source/encoder/ratecontrol.cpp:
+ modified x265_lambda2_tab[] , adjusted some rc factors, modifed
+ chroma weight for chromaLambda
+ [fbf6fedd9818]
+
+2013-08-30 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ interpolate: fix hash error bug introduced by block-ip filter.
+ [87bb45fa2ff3]
+
+2013-08-30 Min Chen <chenm003@163.com>
+
+ * source/common/ipfilter.cpp, source/common/reference.cpp:
+ interpolate: fix bug that generate error interpolate pixel in border
+ area
+ [291cbb41ab47]
+
+2013-08-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: cleanup xPredInterLumaBlk
+ [8b78d8cff9d8]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: rename file static variable
+ [cbf84884c34a]
+
+2013-08-29 Gopu Govindaswamy <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp, source/common/reference.h:
+ TcomPridiction : IP calculation for a Block and modified the src
+ buffer
+ [341049cdcc5c]
+
+2013-08-29 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/common/lowres.cpp:
+ lookahead: Initialise I frame MBs to zero. This parameter gets
+ incremented in CUcost.
+ [4a5fd8756d8c]
+
+2013-08-29 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix eoln
+ [77d92ca1d183]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: do not allow edge CUs to contribute to frame cost totals
+
+ (x264 does this, it seems to result in better cost estimates
+ overall)
+ [0632a39dd630]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: use satd for lowres intra estimate
+ [700603cdeb55]
+
+2013-08-28 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/dpb.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp:
+ add partial framework for frame parallelism
+ [1ce2c5c87b19]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use optimized sad_x4 for bidir full search
+ [b7c3aa334fda]
+
+ * source/encoder/motion.cpp:
+ motion: fix a typo in full-search
+ [12addd543c0c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use optimized sad for bidir full search
+ [e06f1b5c456d]
+
+ * source/common/CMakeLists.txt:
+ cmake: disable signed/unsigned comparisons from Intel C++ in common/
+ [a60d5991e6aa]
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: disable some Intel warnings and errors we know are safe
+ [0a88b5cee672]
+
+ * source/common/threadpool.cpp:
+ threadpool: fix a warning from InteL C++ compiler
+ [eba7f716c515]
+
+ * build/icl/build-all.bat, build/icl/make-makefile.bat, build/icl32
+ /build-all.bat, build/icl32/make-makefile.bat, build/icl64/build-
+ all.bat, build/icl64/make-makefile.bat:
+ cmake: split out 32bit and 64bit ICL nmake configurations
+ [5fded61de5e8]
+
+2013-08-28 Deepthi Devaki <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/dpb.cpp,
+ source/encoder/dpb.h:
+ Remove unused code related to dpb and rps
+ [cb3521c28879]
+
+ * source/encoder/dpb.cpp:
+ dbp.cpp: white-space nits
+ [eab25d12ece9]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/dpb.h:
+ Move dpb related functions from TComSlice to DPB
+ [762bf799dca2]
+
+2013-08-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: we have the param for frame parallelism
+ [476f363c87f9]
+
+ * source/encoder/framefilter.cpp:
+ framefilter: use explicit 0 and 1 in lieu of Windows only FALSE and
+ TRUE
+ [7de6d0cde087]
+
+2013-08-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/encoder/framefilter.cpp:
+ Backout: breaks VC build
+ [bdb54195f558]
+
+2013-08-28 Rafaël Carré <funman@videolan.org>
+
+ * source/encoder/framefilter.cpp:
+ Use C++ true/false rather than Windows TRUE/FALSE
+
+ Fix build on Linux
+ [707c41aa5a63]
+
+2013-08-27 Shazeb Nawaz Khan <Shazeb Nawaz Khan>
+
+ * source/encoder/dpb.cpp:
+ A minor fix to computeRPS integration
+
+ # HG changeset patch # User Shazeb Nawaz Khan # Date 1377595358
+ -19800 # Tue Aug 27 14:52:38 2013 +0530 # Node ID
+ 8d26028f32cc9a2e5f09882368370689e1f317a0 # Parent
+ bf72e539f3d8e25ff7fe1bc176ea1516c60a73d3 A minor fix to computeRPS
+ integration
+ [0de7523f43fc]
+
+ * source/encoder/dpb.cpp, source/encoder/frameencoder.cpp:
+ Integrating computeRPS to encoder
+
+ # HG changeset patch # User Shazeb Nawaz Khan # Date 1377594214
+ -19800 # Tue Aug 27 14:33:34 2013 +0530 # Node ID
+ bf72e539f3d8e25ff7fe1bc176ea1516c60a73d3 # Parent
+ 5245113fa0d66de8933b18ca03fffde4f3fbdef0 Integrating computeRPS to
+ encoder
+ [527e8a0a0f9e]
+
+2013-08-28 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/x265opts.h:
+ ratecontrol: adding bitrate to CLI options
+ [6ec33774f06a]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: adding inits
+ [62ce96dd8080]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: minor edits
+ [5c042746f711]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: fps member var renamed as framerate
+ [159d27a7c7d3]
+
+2013-08-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: white-space nits
+ [ea85b67907ca]
+
+ * source/encoder/dpb.cpp:
+ dpb: fix "statement has no effect" warning
+ [2cf36835f6e1]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: fix initialization order
+ [27d87f071a92]
+
+2013-08-27 Deepthi Nandakumar <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ ratecontrol: Merge
+ [d006294891d0]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ ratecontrol: RateControl methods only when ABR is enabled.
+ [a165b52487ca]
+
+2013-08-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/ratecontrol.cpp:
+ ratecontrol: fix header warning, replace tabs with spaces,
+ uncrustify
+ [f2041d164c74]
+
+2013-08-27 Deepthi <Deepthi>
+
+ * source/x265opts.h:
+ ratecontrol: correcting help message, Abr=0 and constQp=1
+ [20c6a69a2fe1]
+
+ * source/encoder/ratecontrol.cpp, source/x265.h, source/x265opts.h:
+ Adding rc-mode to CLI option list
+ [80baf6900512]
+
+2013-08-27 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ computeLambdaForQP - using the formulae of HM directly to get the
+ lambda values
+ [ff4044130a96]
+
+2013-08-27 Shazeb Nawaz Khan <Shazeb Nawaz Khan>
+
+ * source/Lib/TLibCommon/TComSlice.h, source/encoder/dpb.cpp,
+ source/encoder/dpb.h:
+ Adding support for RPS generation (not integrated yet)
+
+ # HG changeset patch # User Shazeb Nawaz Khan # Date 1377594122
+ -19800 # Tue Aug 27 14:32:02 2013 +0530 # Node ID
+ 5245113fa0d66de8933b18ca03fffde4f3fbdef0 # Parent
+ 273b1face64ce9e0c391713165776c773ec54774 Adding support for RPS
+ generation (not integrated yet)
+ [71dedcc6922b]
+
+2013-08-27 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ Included the computeLambdaqp()-- reset the lambda based on new QP
+ [abd8a7189096]
+
+2013-08-27 Deepthi <Deepthi>
+
+ * source/encoder/frameencoder.cpp:
+ ratecontrol: Remove dqp, not relevant until AQ is implemented. Even
+ then, dqp is an LCU parameter.
+ [76ee630587a9]
+
+2013-08-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: rename member vars for clarity
+ [273b1face64c]
+
+ * source/common/reference.cpp:
+ reference: correctly handle frames not an even multiple of max CTU
+ height
+ [ee3ddeb3414d]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp:
+ lowres: use 8x8 blocks for lookahead analysis
+ [56110b3e965d]
+
+ * source/encoder/dpb.cpp:
+ dpb: add default case for switch, remove trailing white-space
+ [407d8c61698d]
+
+ * source/common/reference.cpp:
+ reference: fix member variable shadowing reported by GCC
+ [5cff93d45be5]
+
+ * source/common/vec/pixel8.inc:
+ pixel: more explicit HAVE_MMX logic, fixes link errors with VC11 x64
+ [8a6859929055]
+
+2013-08-26 praveentiwari <praveentiwari>
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: Avoiding overlap of _MSC_VER macro
+ [00873cc0099b]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_4 further optimization
+ [015f93435ac3]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x4_8 further optimization
+ [ff2a7b2dbfbf]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: Further optimization
+ [22ccca70061e]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_8 further optimization
+ [64d346fc559e]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_4 further optimization
+ [faeb85aedd4a]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x4_16, vector replaced with intrinsic
+ [af46df46431c]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x4_8, vector replaced with intrinsic
+ [1736618230bc]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x4_4, enabled sad_x4_4 code for 32-build except VC
+ [80577235dba0]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_8 enabled MMX code for 32-bit build except vc
+ [47cf292c6619]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc:sad_x3_4 enabled MMX code for 32-build except VC
+ [63af120cd6cc]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_8 enabled MMX code for 32-build except VC
+ [5c38e12afe9a]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_4 cleanup with macro
+ [52e0b9869886]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: Enabled MMX code for 32-bit build except VC [added macro
+ and swap postions of sse and MMX funtions]
+ [6b7000546c20]
+
+2013-08-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/dpb.cpp, source/encoder/dpb.h:
+ dpb: pass free list by reference (fixes memory leaks)
+
+ Passing by copy was resulting in TEncTop::m_freeList never being
+ used. recycleUnreferenced() was adding the free pictures to a list
+ that was destroyed as soon as the function returned.
+ [da8281ec88ac]
+
+2013-08-26 Deepthi <Deepthi>
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Testharness: Removing filterV/HMultiplane from test harness.
+ [a37e03a3f0b6]
+
+2013-08-26 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/ipfilter.cpp,
+ source/common/primitives.h, source/common/reference.cpp,
+ source/common/reference.h, source/common/vec/ipfilter.inc:
+ framepp: row based interpolate
+ [63e0736c1f87]
+
+2013-08-26 Deepthi <Deepthi>
+
+ * source/encoder/dpb.cpp:
+ DPB::prepareEncode - replace code snippet with switch case
+ [055c97bd9b7d]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/dpb.cpp:
+ TEncTop: Move FrameEncoder->initSlice() to TEncTop::encode
+ [3dd7b6da60bb]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: (Redundant) setPOC to max value
+ [2f2acd2fc7ad]
+
+2013-08-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: refIdx typo corrected
+ [797c13ec5d2a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove redundant bestIdx initialization
+ [1f532e886a49]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove bFilled argument from xEstimateMvPredAMVP (always
+ false)
+ [a8b4963087b5]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nit
+ [9e020c0883c6]
+
+ * source/common/vec/pixel8.inc:
+ pixel: use unaligned loads for fref pixels
+ [f05a6d740ede]
+
+2013-08-25 Min Chen <chenm003@163.com>
+
+ * source/common/vec/ipfilter8.inc:
+ Improvement filterHorizontalMultiplaneExtend
+ [1ea25137e5cc]
+
+2013-08-25 praveentiwari <praveentiwari>
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: Uncrustified
+ [5d0c9e08265e]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x4_4 optimized assingment operators
+ [8af27ce24619]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3 64-bit build fail fixed
+ [21981597572b]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x4_4 vector replaced with intrinsic
+ [827cfb10feba]
+
+ * source/common/vec/pixel.inc:
+ uncrustified pixel.inc
+ [1306bdb29227]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: new line cleanup
+ [34db6fb0cfbc]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_8 avoiding extra condition check
+ [86a5d7ceae78]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_16 cleanu some newlines
+ [83af948acce4]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_4 more optimization
+ [43d8ec7a9193]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.cpp: sad_x3_16 vector replaced with intrinsic
+ [aade693715b3]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_8 integrated fast MMX 32-bit build code
+ [22b6b2ad15c1]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: sad_x3_4 integrated faster MMX code for 32-bit build
+ [828ec0701097]
+
+ * source/common/vec/pixel8.inc:
+ pixel8.inc: Uncrustified
+ [8f4e4d104dc0]
+
+2013-08-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt:
+ cmake: force -march=i686 for framefilter.cpp
+ [5281d5789986]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontol: fix case sensitive includes
+ [55d7edaa3e8e]
+
+2013-08-23 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ pixel: new 16xN and x3 intrinsic primitives require SSE4.1
+ [c881d82f9d85]
+
+2013-08-23 praveentiwari <praveentiwari>
+
+ * source/common/vec/pixel8.inc:
+ sad[16xN]:Intrinsic
+ [97d0506cb0db]
+
+ * source/common/vec/pixel8.inc:
+ pixel8inc: sad_x3 8xN, replace vector with intrinsic
+ [9e7e1c772ec3]
+
+ * source/common/vec/pixel8.inc:
+ sad_x3_4[4Xn]:Intrinsic
+ [5805f5a34497]
+
+2013-08-23 Steve Borho <steve@borho.org>
+
+ * source/common/threading.h, source/common/wavefront.cpp:
+ threading: rename CLZ64 to CTZ64 and reverse bit search for GCC
+
+ __builtin_ctzll(x) - Returns the number of trailing 0-bits in x,
+ starting at the least significant bit position. If x is 0, the
+ result is undefined
+ [8cbc34f927b6]
+
+ * source/common/common.h, source/encoder/ratecontrol.cpp:
+ common: make log2 functions safe for GCC, use multiply instead of
+ divide
+ [9da03fb899de]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ pixel: sad primitives now require SSE4.1, properly wrap #pragma
+ [58dcf14afa79]
+
+2013-08-23 Deepthi <Deepthi>
+
+ * source/common/vec/pixel8.inc:
+ pixel8inc: sad 4xN, replace vector with intrinsic [Praveen]
+ [b489dfb2e90a]
+
+ * source/common/vec/pixel8.inc:
+ pixel8inc: sad 8xN, replace vector with intrinsic [Praveen]
+ [eaf94c74774f]
+
+ * source/common/vec/pixel8.inc:
+ pixel8inc: Uncrustify [Praveen]
+ [20bbd0ad6c1b]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ FilterExtendCURow: add primitives for horizontal filtering of each
+ row: Gopu
+ [77b53186d568]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: replacing more log2 calculations with macro
+ [c99cc112fd71]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ ratecontrol: move RCEnd back to TEncTop::encode
+ [e187433abd5e]
+
+ * source/encoder/ratecontrol.cpp:
+ Avoid conversion to float
+ [a7fad933a6c3]
+
+ * source/common/common.h, source/encoder/ratecontrol.cpp:
+ log2 define from x264
+ [e306203049cf]
+
+2013-08-23 Aarthi <aarthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp:
+ fixed bugs in ABR mode - implemeted log2() instead of log() as
+ required.
+ [41f20253a3b8]
+
+2013-08-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: include all enums in switch statement, avoid GCC
+ warning
+ [77418bf4a67b]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h:
+ sao: remove dead rdoSaoUnitAll function
+ [763165c09029]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: stub in partial code for CQP
+ [4fd6bd86ff92]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: initialize rce to NULL, prevent invalid free
+ [12199cf44193]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ sao: fix GCC warnings about autos shadowing member variables
+ [633718701cc9]
+
+2013-08-21 sumalatha <sumalatha>
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: added comments, corrected some errors in code
+ [1d890ba79f64]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ made changes to function call - rateControlEnd
+ [1498b673e95a]
+
+2013-08-22 Min Chen <chenm003 at 163.com> <chenm003 at 163.com>
+
+ * source/CMakeLists.txt:
+ fix bug in WinXP mode
+ [9f38435eee26]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h,
+ source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ framepp: Parallelism of SAO (saoLcuBasedOptimization mode only)
+ [2b321cbfb953]
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h:
+ framepp: replace static class array countPreDblk and
+ offsetOrgPreDblk
+ [d11de19b9d26]
+
+ * source/encoder/framefilter.cpp, source/encoder/framefilter.h:
+ improvement by replace lock to atom operator
+ [0e2c2ab41bd9]
+
+2013-08-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: do not use backwards L1 for slicetype estimates
+
+ The lookahead engine can't really handle it.
+ [6fe2b6e1fd6f]
+
+ * source/encoder/dpb.cpp:
+ dpb: ensure bframe count same as m_gopSize when fixed GOP is in use
+ [4bc719a5e735]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove redundant break statements
+ [5b67acbe7871]
+
+ * source/encoder/slicetype.h:
+ slicetype: re-order member variables by size
+ [9994e722c6bc]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/common/common.cpp,
+ source/encoder/frameencoder.cpp, source/x265.h, source/x265opts.h:
+ x265: move qp parameter within rc struct, use QP logging line for
+ rate control
+ [779ac0d75231]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp:
+ common: combine WPP logging lines
+ [3bc38a85503a]
+
+ * source/common/common.cpp:
+ common: add a summary log line for lookahead configuration
+ [566f30410df1]
+
+ * source/common/common.cpp:
+ common: shorten "enabled coding tools" to "tools"
+ [8cb425d6dbc4]
+
+2013-08-20 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/framefilter.cpp:
+ cleanup: remove unused function and process row once
+ [af98ad50dd96]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ cleanup: move temporary pointer from class
+ [b26267a38367]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ fix bug correct row delay with '--sao-lcu-bounds 1'
+ [52ba7c428cef]
+
+ * source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ cleanup: remove reduce m_sad since we are single thread now
+ [9ba42b518d6b]
+
+ * source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ framepp: simplify FrameFilter control logic
+ [d3d6119d5662]
+
+ * source/common/threading.h, source/common/threadpool.cpp,
+ source/common/wavefront.cpp:
+ move ATOM operators to threading.h
+ [b016dce3b990]
+
+2013-08-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ slicetype: add a method to get estimated frame cost (calculated if
+ not cached)
+ [2a1e1e3fcba2]
+
+ * source/encoder/dpb.cpp:
+ dpb: remove obsolete TODO
+ [24fc61094b55]
+
+ * source/encoder/dpb.cpp:
+ dpb: remove redundant calls to setNumRefIdx()
+ [16f5434cf8e4]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: nit
+ [c177b592a915]
+
+ * source/encoder/dpb.cpp, source/encoder/frameencoder.cpp:
+ dpb: move setNumRefIdx from frameEncoder to DPB for clarity
+ [6e45cb567792]
+
+2013-08-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: move special case logic for POC zero out of "fake"
+ category
+ [f5834b464a7c]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: initialize row satd sums at each row, delay
+ bIntraCalculated set
+ [fb9f092e8291]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: malloc prediction buffer to avoid stack size issues
+ [c4cd8d9d6c8c]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: x and y loops were reversed
+ [8157dcac7865]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: auto-variable cleanup
+ [da6f7e555f0d]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: do_search is a bool as well
+ [43f633c7b553]
+
+ * source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/slicetype.cpp:
+ lowres: remove redundant stride variable, use
+ ReferencePlanes::lumaStride
+ [e5eeb053c459]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove redundant assignment
+ [e3fe0e2caa77]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: rename last_keyframe to lastKeyframe
+ [d06cdce272ee]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: use cfg->param structure directly, do not copy data items
+ [d568082adb02]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: copy bFrameBias from param structure
+ [c6a47d383128]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fixup bIntraPenalty type
+ [75833aca1872]
+
+ * source/encoder/slicetype.h:
+ slicetype: remove unused analyze_keyframe variable
+ [84fa8299c4e2]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: estimate SATD cost of first I frame
+ [60fbdb64ed0c]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: realScenecut is a bool
+ [2cc3f1686119]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: add disabled "real path"
+ [b250cbbd95ed]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: change slicetypeAnalyze argument type to bool, fix
+ cuCount
+ [7703d11126e8]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: set lowres.frameNum in addPicture()
+ [5d5247ccf3fb]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix order of operations, remove obsolete comment
+ [bafc37c130d7]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: improve history comment
+ [92e84207edc0]
+
+2013-08-19 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/frameencoder.cpp, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ framepp: Refactor loopfilter thread
+ [800465af4795]
+
+2013-08-19 Steve Borho <steve@borho.org>
+
+ * source/common/wavefront.cpp:
+ wavefront: use _BitScanForward64 on Windows to get proper bit
+ priority order
+
+ Spotted and fixed by Min Chen
+ [fc12faa1672e]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/dpb.cpp:
+ dpb: move the pushBack of the frame into DPB::prepareEncode()
+ [6bd04d658885]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncAnalyze: rename setFrmRate to setFrameRate
+ [ab8e517b3f5c]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ TEncTop: use multiple frame encoders (they do not overlap in
+ execution time)
+ [cf68474b7fd4]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/common/common.cpp,
+ source/common/threadpool.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/x265.cpp, source/x265.h,
+ source/x265opts.h:
+ x265: add -F/--frame-threads CLI option, param->frameNumThreads
+
+ This required allocating an array of FrameEncoder instances, which
+ required adding a method for initializing the thread pool after
+ construction.
+ [84c939999179]
+
+ * source/Lib/TLibCommon/TComPic.h, source/common/CMakeLists.txt,
+ source/common/lookahead.cpp, source/common/lookahead.h,
+ source/common/lowres.cpp, source/common/lowres.h,
+ source/encoder/ratecontrol.cpp, source/encoder/slicetype.cpp:
+ rename lookahead.cpp to lowres.cpp (and also header)
+ [9a5d62cf19f1]
+
+ * source/Lib/TLibCommon/TComPic.h, source/common/lookahead.cpp,
+ source/common/lookahead.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ lookahead: rename LookaheadFrame struct to Lowres, statically
+ allocate frames[]
+ [f242ef373949]
+
+ * source/common/CMakeLists.txt:
+ cmake: add COPYING to common project to remove any ambiguity
+ [c4963929c680]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: nit
+ [c6ffd3ab9493]
+
+ * source/PPA/ppaCPUEvents.h, source/encoder/dpb.cpp,
+ source/encoder/frameencoder.cpp:
+ ppa: resolve event names which conflict with method names, add
+ DPB_encodeSlice
+ [1adb33d3536a]
+
+2013-08-18 Steve Borho <steve@borho.org>
+
+ * source/common/lookahead.cpp:
+ lookahead: re-initialize lowresMvs by dereferencing first MV (nit)
+ [5b97ea55042f]
+
+ * source/encoder/cturow.cpp:
+ cturow: remove prefixes from loop autos
+ [e0b4698761fd]
+
+ * source/encoder/cturow.cpp:
+ cturow: remove pc prefix from rdSbacCoder
+ [aaf4327d1be3]
+
+ * source/common/lookahead.cpp:
+ lookahead: fix intraCost data type for malloc
+ [662d24a28312]
+
+ * source/common/lookahead.cpp:
+ lookahead: re-enable downscale, ensure lowres stride is multiple of
+ 32
+ [d907e9a55ad1]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: simplify intra processing
+ [6badaa4d5e5f]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: improve comments
+ [7146682f5133]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove warning disables now that functionality is all
+ present
+ [2048f9324890]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: update authors now that x264 routines are removed
+ [a1c1cbd257ff]
+
+ * source/encoder/motion.cpp:
+ motion: remove hungarian prefixes from temp vars
+ [51d8d4962ab9]
+
+ * source/common/mv.h:
+ mv: switch from class to struct since member vars do not have m_
+ prefix
+ [5b7014113b29]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/lookahead.cpp, source/common/reference.cpp,
+ source/common/reference.h, source/encoder/motion.cpp,
+ source/encoder/slicetype.cpp:
+ reference: remove m_ prefix from member variables
+ [2a2569c73bdb]
+
+ * source/common/reference.h:
+ reference: convert ReferencePlanes from class to struct
+
+ I want to remove m_ prefix, and a policy of m_ for class but not for
+ struct seems reasonable
+ [bf0b1cb360f9]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/common/primitives.cpp:
+ ContextModel: move static initialization out of TEncTop constructor
+ [e0e620037485]
+
+ * source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h:
+ ContextModel: variable name cleanup
+ [86fbb4094143]
+
+ * source/common/lookahead.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h:
+ slicetype: move cuWidth and cuHeight from LookaheadFrame to
+ Lookahead
+ [e3b40ff627b7]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: simplify intra cost check
+ [e1fe931856ad]
+
+ * source/encoder/motion.cpp:
+ motion: avoid QPEL refinement during lookahead
+
+ Our QPEL plane pointers simply reference the nearest HPEL plane so
+ doing any QPEL refine would be a waste of time, and add rnadom bits.
+ We should add an H.264 (A+B+1)>>1 primitive and then use this to
+ create fake QPEL blocks for refinment during lookahead.
+ [c1e1e8e43299]
+
+ * source/common/lookahead.cpp, source/common/reference.h:
+ reference: add lowres flag
+ [6702102c2691]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: establish lowres search bounds
+ [db1d199e9f8e]
+
+2013-08-16 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ framepp: fix bug with '--sao-lcu-bounds 1' and move part of sao into
+ compress loop
+ [9cecd693489c]
+
+2013-08-16 praveentiwari <praveentiwari>
+
+ * source/common/vec/sse.inc:
+ sse_pp8: Eliminated shift
+ [87f93fe917f6]
+
+2013-08-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: more varname cleanups
+ [a5a265b57844]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix GCC nits
+ [442dd01cacb1]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: nits
+ [41b35c287a2f]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: fill missing detail, use x265 varname style, remove old
+ functions
+ [815a3cce3969]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix another cu_size
+ [4c4e30671ad7]
+
+ * source/encoder/slicetype.cpp:
+ clicetype: uncrustify
+ [0a5a90a0899e]
+
+2013-08-16 ggopu <ggopu>
+
+ * source/common/lookahead.h, source/encoder/slicetype.cpp,
+ source/encoder/slicetype.h, source/x265.h:
+ slicetype: Added slicetypeAnalyse
+ [6551f04e7eed]
+
+2013-08-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TrComQuant: fix 8bpp build
+ [c2f5275ecb49]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TrComQuant: lastpos formal parameter unreferenced
+ [16feaf4ec711]
+
+ * source/common/vec/dct.inc:
+ dct: prevent compilation of quant for < SSE4.1 (fixes GCC build)
+ [8a0228a12a84]
+
+2013-08-16 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ idct: more dc mode detect code
+ [76ca2eae8f0b]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ cleanup: remove unused code invRecurTransformNxN
+ [983cc77e8526]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc:
+ idct: primitive blockfil_s for dc fill
+ [23b8aafb1fde]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ idct: Improved performance by DC only block detect
+ [0b225ee24b5d]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/vec/dct.inc,
+ source/test/mbdstharness.cpp:
+ generate lastPos in quant
+ [4be95d676094]
+
+ * source/common/vec/dct.inc, source/test/mbdstharness.cpp:
+ quant: Improved performance by SSE4
+ [681ab201ea0c]
+
+ * source/encoder/slicetype.cpp:
+ temp for Intra Buffer generate
+ [ec4a9d8a39b1]
+
+2013-08-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp:
+ tpyo
+ [1cf5ed68ab58]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: move defines within CPP file
+ [4a39b2fa427d]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: move math methods to CPP file as file statics
+ [1f2577034e53]
+
+2013-08-16 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/ratecontrol.cpp,
+ source/encoder/ratecontrol.h:
+ integrate ratecontrol methods and changed some APIs
+ [fe0adfe9d10d]
+
+2013-08-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: GCC needs math.h for log10()
+ [a1a2eceec263]
+
+ * source/encoder/encoder.cpp:
+ encoder: add a comment explaining the odd nature of encoder.cpp
+ [e8d616dbbd16]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/CMakeLists.txt,
+ source/encoder/dpb.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h:
+ dpb: move fixed GOP initialization function into dpb, drop encoder.h
+ [b77b7dc21de9]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/CMakeLists.txt,
+ source/encoder/dpb.cpp, source/encoder/dpb.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ dpb: split DPB logic and data from TEncTop into a separate class
+
+ The DPB class is still using the HM's fixed GOP mess, but at least
+ this is all mostly localized in one place so it can be cleaned up
+ together and has a clean interface.
+ [6d14b538caa6]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frame: inline wait_lft and re-order code for more clarity
+ [8f25a0cde46f]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frame: simplify determineSliceBounds
+ [96d870433517]
+
+2013-08-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/frameencoder.cpp:
+ frame: nit
+ [7efbd7bb9606]
+
+ * source/encoder/frameencoder.cpp:
+ frame: remove unused oneBitstreamPerSliceLength
+ [646346ad4fe1]
+
+ * source/encoder/frameencoder.cpp:
+ frame: replace access method calls with direct variable accesses
+ [59d41d6da41c]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frame: rename compressSlice to compressCTURows()
+ [8a322b6c90ec]
+
+ * source/encoder/frameencoder.cpp:
+ frame: hoist stat file logging into compressFrame()
+ [175ae0c43c10]
+
+ * source/encoder/frameencoder.cpp:
+ frame: isolate CU processing functionality into compressSlice()
+
+ Other unrelated functionality pulled up into compressFrame()
+ [8137fa713b09]
+
+ * source/encoder/frameencoder.cpp:
+ frame: move xStoreWPparam() together with rest of weightp analysis
+ [4262ef8c2495]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/cturow.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/ratecontrol.h:
+ remove TEncGOP, merge remaining pieces into FrameEncoder
+ [f2bdd05b440d]
+
+ * source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h:
+ SEIWrite: varname cleanups
+ [268b3e920752]
+
+ * source/Lib/TLibEncoder/SEIwrite.h:
+ SEIWrite: remove only unused data member
+ [4de5d74111ee]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncGOP: move hash and PSNR calculations to TEncTop
+
+ Much of the function needs to use singleton data elements in TEncTop
+ anyway, and very little of it needs the frame encoder.
+ [c98c3ad68604]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: move digestToString so it doesn't need forward decl
+ [bbcc53d4c501]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unused xGetFirstSeiLocation
+ [885718e12a06]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: inline xAttachSliceDataToNalUnit, only used once
+ [b5027d04ff40]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: inline SEI creation functions
+
+ I see no need to alloc/free them
+ [ea53a8153f61]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: drop HRD/DU logic and SEI message generation
+
+ This HRD logic is going to be broken badly by frame parallelism, and
+ we do not allow it to be enabled, in any case, so I'm removing this
+ code before it can be broken.
+ [029ba5a2f11e]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/frameencoder.cpp:
+ TEncTop: move ASR initialization to compressSlice()
+ [12bf524e02d3]
+
+2013-08-16 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ framepp: move xPCMRestoration* outside from TComSampleAdaptiveOffset
+ [84c4b829261b]
+
+ * source/x265.cpp:
+ framepp: loopfilter and sao need same control value
+ [15e1795cbc78]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h:
+ cleanup: remove unused code TComSampleAdaptiveOffset::processSaoCu
+ [3a0630fff639]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: remove unused code
+ [b1cb3809070d]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: remove unused code
+ [ddc1969b819a]
+
+ * source/encoder/frameencoder.cpp:
+ fix VC9 compile error
+ [b079ba16208f]
+
+2013-08-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: unify hash and PSNR reporting into one routine
+ [23d8d29c5242]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove redundant argument to xCreateSEIActiveParameterSets
+ [d51950a93f5d]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: move prepareEncode and all RPS/DPB logic out of TEncGOP
+ [6dc06a8b5ebc]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: reorder some code for more clarity
+ [bc8d3239f833]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncGOP: prune unused cruft
+ [1b745ef91669]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove access var only used twice
+ [225ba0172ae5]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use m_cfg in lieu of m_top where applicable
+ [76b2e8aa1c18]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.h:
+ Remove unused TEncSlice
+ [95afc59fb926]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ TEncSlice: move xDetermineStartAndBoundingCUAddr to FrameEncoder
+
+ And give a less idiotic name
+ [7aa3ea09223d]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: include math.h for GCC
+ [ca1a412ecaad]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ TEncSlice: move encodeSlice into FrameEncoder
+ [31676f5d2e19]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: enqueue framefilter after frameencoder
+
+ This gives higher priority to compressCU jobs over deblocking jobs
+ [9d68f6d61ecf]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: simplify motion reference generation
+ [d1e0f1613380]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: nits
+ [e03a200c073c]
+
+ * source/encoder/CMakeLists.txt, source/encoder/cturow.cpp,
+ source/encoder/cturow.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ cturow: split CTURow class into its own cpp and h
+ [93a8be5a9247]
+
+ * source/encoder/CMakeLists.txt, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/framefilter.cpp,
+ source/encoder/framefilter.h:
+ framefilter: split FrameFilter class into its own cpp and h
+
+ frameencoder is getting crowded with TEncSlice methods being
+ integrated, and it is only going to grow as TEncGOP is broken up.
+ [f4bbb38f427d]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ TEncSlice: move compressSlice logic into FrameEncoder
+ [b057e7325398]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/frameencoder.cpp:
+ TEncSlice: prune unnecessary cruft
+ [e160aef8a3a1]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: inline SAR configuration into prepareEncode()
+ [76636a121054]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: remove unused resetQP method
+ [19e8c9de3746]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ move TEncSlice::initEncSlice to FrameEncoder::initSlice
+ [ec371fd8c2a9]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: retrieve slice from pic
+ [2f2413f173f1]
+
+ * source/Lib/TLibEncoder/TEncSlice.h, source/encoder/frameencoder.h:
+ more include cleanups
+ [26c84a647f51]
+
+ * source/Lib/TLibEncoder/WeightPredAnalysis.h:
+ WeightPredAnalysis: simplify includes
+ [d0332c1c4efa]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: remove unused xGetQPValueAccordingToLambda
+ [88762f5981b5]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: report slice depth in verbose logging
+ [e184ead1cb2e]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/encoder.cpp:
+ encoder: remove unexposed m_recalculateQPAccordingToLambda
+ [32b7db776b91]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ CommonDef: remove unnecessary HB_LAMBDA_FOR_LDC
+ [61fe1722b31d]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: re-order logic for more clarity
+ [4b57d673354b]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: remove obsolete comments for initEncSlice()
+ [6a1ed114c77a]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: re-order some functions by use
+ [08245cb48490]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: do not pass pocCurr to initEncSlice
+ [8cc6ca8a86df]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/PPA/ppaCPUEvents.h:
+ TEncGOP: split DPB/RPS management into prepareEncode() function
+ [449a3b84fb3e]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unnecessary pointer argument reference
+ [1f8f44007b88]
+
+ * source/encoder/encoder.cpp:
+ encoder: use true/false to assign bool values
+ [312b7e281b1a]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp:
+ TEncTop: getStreamHeaders always returns one access unit
+ [5c22574b8dd9]
+
+2013-08-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncGOP: rename m_frameEncoders to singular
+ [735d3ee0ef97]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: remove m_picsEncoded
+ [90fe33838e63]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: move utility functions to the end of the file, cleanups
+ [b34a889f4388]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: increment m_totalCoded appropriately, improve comments
+ [80f6de28afb2]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unused ref pic fields
+ [823a9a1ae579]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use configured bitrate instead of hard-coded value
+ [7b435f8feaad]
+
+ * source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: prepare to bifurcate TEncGOP
+ [d7ecc2be68b7]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ TEncCfg: drop unused m_framesToBeEncoded
+ [b6debda1b70d]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: fix recon file write with 16bpp builds
+ [ba0badc108ed]
+
+ * source/encoder/ratecontrol.cpp:
+ ratecontrol: fix vc10 release build
+ [a506ed0b9704]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: clean compile for GCC - not sure all these changes are
+ correct
+ [e8a95b63af2b]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: more fixes
+ [c0f68e202961]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: include list used in lowresCosts
+
+ 0 - intra 1 - inter L0 2 - inter L1 3 - bidir (future)
+ [0182e9c3abe4]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix I frame cost accumulation, use min to clamp
+ lowresCosts
+ [c744de283468]
+
+ * source/common/lookahead.cpp, source/common/lookahead.h:
+ lookahead: add intraCost array
+ [c2a650e052a6]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fixup intra cost and combinations
+ [ab0751792c3c]
+
+2013-08-14 ggopu <ggopu>
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype : estimateCUCost enhancement for selecting best cost
+ [29acacb4afe8]
+
+2013-08-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/x265.h:
+ ratecontrol: use doubles, fix warnings
+ [74b11e67f664]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: re-order some code for clarity
+ [29635c591048]
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ ratecontrol: uncrustify
+ [52a709ce88a8]
+
+ * source/common/common.cpp:
+ common: prevent warnings about double-to-float conversions
+ [f3ec4ebd72c9]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: add ratecontrol to the build
+ [5c7f8a82e267]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/encoder/ratecontrol.h,
+ source/x265.h:
+ ratecontrol: nits
+ [4dfc091ce662]
+
+2013-08-14 sumalatha <sumalatha>
+
+ * source/common/common.cpp, source/common/common.h,
+ source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h,
+ source/encoder/slicetype.h, source/x265.h:
+ add rate control parameters to x265_param_t make corresponding
+ changes to ratecontrol.cpp and .h moved the macro definition of
+ QP_BD_OFFSET from slicetype.cpp to common.h
+ [d1d0d90ec2f1]
+
+2013-08-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: fix some obsolete comments
+ [2c89a497dc5b]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h,
+ source/x265.cpp, source/x265.h:
+ x265: remove GOP compress cadence, encode frames one at a time
+
+ it is still using the HM's fixed GOP schedule, but the encoder only
+ encodes one frame per encode call, and returns at most one encoded
+ frame.
+ [11cce4de927a]
+
+2013-08-13 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TComSlice: delay clearing of motion references until TComPic is
+ recycled
+ [a2026f0e1556]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: allocate frames as needed, recycle unreferenced frames from
+ pic list
+ [965dbb6e0880]
+
+ * source/Lib/TLibCommon/TComPic.h, source/common/lookahead.cpp,
+ source/common/lookahead.h:
+ lookahead: add slicetype decision outputs
+ [45743a306237]
+
+ * source/common/lookahead.cpp:
+ lookahead: hide unused formal parameter, prevent compiler warning
+ [b4ff6dca63fa]
+
+ * source/common/lookahead.cpp, source/common/lookahead.h:
+ lookahead: fix EOLN, move methods to CPP file, disable downscale
+ again for now
+ [b8ad0352ce45]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: don't pretend the gop encoder has multiple frame encoders
+ [c34463e78f61]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/output/y4m.cpp,
+ source/output/y4m.h, source/output/yuv.cpp, source/x265.h:
+ recon: allow reconstructed images to be output in non-display order
+
+ By returning the POC of the recon image, the output file writers can
+ seek to the appropriate location in the output file before writing
+ the frame data
+ [1d710404b8bb]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/common/lookahead.cpp,
+ source/common/lookahead.h:
+ lookahead: move remaining create logic into create method
+ [90c11204554b]
+
+ * source/common/lookahead.cpp:
+ lookahead: simplify create() method slightly
+ [506ee1b3ad69]
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ TComPic: add missing call to lowres.create()
+ [8c468308ab8d]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/common/lookahead.h:
+ lookahead: move downscale and extend logic into lowres.init()
+ [e3bd326a9f6f]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ TComPic: add sliceType member variable for lookahead output
+ indication
+
+ The TComPic doesn't have a TEncSlice associated with it until encode
+ time
+ [74cc4a1bfd2c]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/CMakeLists.txt,
+ source/common/lookahead.cpp, source/common/lookahead.h:
+ lookahead: isolate buffer allocation and release logic into
+ LookaheadFrame class
+ [79c8806844e7]
+
+ * source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ slicetype: remove incorrect comments
+ [aea1b324270c]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/CMakeLists.txt,
+ source/encoder/slicetype.cpp, source/encoder/slicetype.h:
+ TEncTop: allocate a singleton lookahead instance
+ [9a5b30cb1224]
+
+ * source/x265opts.h:
+ x265: no camelcase CLI options
+ [e866ff4da277]
+
+ * source/x265opts.h:
+ x265: fix help for bFrameBias
+ [2f1c5bb1d471]
+
+ * source/x265.cpp:
+ x265: show boolean flag defaults even if they have a short-option
+ [f94fa416ac32]
+
+ * source/x265opts.h:
+ x265: re-order boolean flags for more logical groupings
+ [c7cfe440ace3]
+
+ * source/x265opts.h:
+ x265: remove obsolete default documentation
+ [76775075d70d]
+
+2013-08-13 ggopu <ggopu>
+
+ * source/x265.cpp:
+ x265 cli: Added default values to the CLI help text
+ [d374ab339bb1]
+
+2013-08-13 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: remove hungarian gc prefix from frame statistics members
+ [7caea03eee1a]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove unnecessary scope level
+ [03782d7def51]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TEncTOP: forward decl Lookahead and ThreadPool
+ [d65cc8602bec]
+
+ * source/encoder/encoder.cpp:
+ encoder: prevent warnings for open-gop config
+ [f3e7ad1ce870]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: only calculate lowres intra costs once per input picture
+ [9eb065201f31]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: rename tmp to predictions
+ [c9b3cd336732]
+
+ * source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/lookahead.h:
+ lookahead: re-initialize lowres state for each new picture
+ [2751158af327]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix prediction and sa8d arguments
+ [78096e525541]
+
+ * source/encoder/motion.h:
+ motion: expose COST_MAX
+ [cce777ac5df4]
+
+2013-08-13 ggopu <ggopu>
+
+ * source/encoder/motion.h, source/encoder/slicetype.cpp:
+ slicetype: satd cost analysis bug fixed
+ [682a9fba1363]
+
+2013-08-13 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp:
+ encoder: repair open-gop behavior
+
+ it was broken when we replaced uint getKeyframeInterval() with
+ signed int param.keyframeInterval
+ [560f4c14f09a]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: add comment to make uncrustify happy
+ [69cd47d7f82d]
+
+ * source/common/lookahead.h:
+ lookahead: remove unused macro
+ [b87942b6386e]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/x265.h, source/x265opts.h:
+ x265: add lookahead parameters to x265_param_t
+ [30c4a908cf65]
+
+2013-08-12 Steve Borho <steve@borho.org>
+
+ * source/common/lookahead.h:
+ lookahead: reorder and document LookaheadFrame
+ [b9c7aa48d921]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: rename X264_LOOKAHEAD_QP
+ [c8fff4b1bec8]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: use hex search in lookahead
+ [8d7ffa0d7433]
+
+2013-08-12 ggopu <ggopu>
+
+ * source/encoder/slicetype.cpp:
+ slicetype : Uncrustify
+ [9f604820f7ef]
+
+2013-08-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: cleanup
+ [415f3a0ae098]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: move adaptive search range determination a bit later
+ [2ac81e7d676c]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use REF_PIC_LIST enums directly
+ [58b2989ec91e]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: move access unit allocation closer to bitstream generation
+
+ This further isolates the slice initialization code
+ [7057a8e3603d]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: wrap long line
+ [4294560b0494]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use m_cfg to reference scaling list type
+ [4d5f7e8888c1]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: rename iRef to ref
+ [14f9aa8dbe2e]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp:
+ TEncGOP: TMVP has been hard-coded enabled for some time
+ [2181954a2d68]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp:
+ TEncGOP: drop file parsing of scaling lists, simplify slice
+ initialization
+ [7afeef6f2a9a]
+
+2013-08-11 ggopu <ggopu>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: added x265_median_mv
+ [8438cad92049]
+
+2013-08-12 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: add Windows-only option to make binary compatible with
+ Windows XP
+ [e6ad89277005]
+
+2013-08-11 Steve Borho <steve@borho.org>
+
+ * source/input/yuv.cpp:
+ yuv: delay signed int cast until after division by picture size
+
+ This should fix reported negative frame count problems
+ [368c080859bd]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: GOP encoders are no longer allocated as an array
+
+ As reported by JMK
+ [14a47a6c1ec1]
+
+2013-08-11 Aarthi <aarthi@multicorewareinc.com>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ uncrustify, code cleanup , continue porting x264 rate control to
+ x265.
+ [4085c992877a]
+
+2013-08-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncGOP: move slice reference flag from TEncSlice to TEncGOP
+
+ Move it together with the rest of the code that determines slice and
+ NAL type
+ [7b25809b3fe4]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: revert memcmp counts to full block size
+
+ I had changed a number of these to only compare the actual block
+ size processed by the primitive, but this was wrongly checking the
+ first n x m pixels instead of the n x m pixels in the upper left
+ corner of the output buffer (the stride of the buffers was always
+ 64). So it was comparing some of the wrong pixels, and not all of
+ the proper ones. Comparing all 64x64 pixels is harmless, and
+ actually verifies the primitive isn't writing beyond the correct
+ outputs.
+ [607eedcf3212]
+
+2013-08-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: nit
+ [88e0c10bf47b]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/encoder.cpp:
+ encoder: drop unused loop filter offsets from fixed GOP struct
+ [b496ddb751ac]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: fix member initialization order for GCC
+ [83def5041252]
+
+ * source/encoder/slicetype.cpp:
+ slicetype: fix GCC warnings and EOLN damage and one bug
+ [69d4bdb68535]
+
+2013-08-09 sumalatha <sumalatha>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ Uncrustify ratecontrol.cpp and ratecontrol.h
+ [5f10bcb999ce]
+
+2013-08-09 praveentiwari <praveentiwari>
+
+ * source/common/dct.cpp, source/common/vec/ipfilter8.inc,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Added name to worked files
+ [8a7256f288de]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Added name to contributed file
+ [93520e0c6df3]
+
+ * source/common/vec/dct.inc:
+ dct.inc: Added name to contributed file
+ [d8777ff60029]
+
+2013-08-09 Steve Borho <steve@borho.org>
+
+ * source/common/lookahead.h, source/encoder/slicetype.cpp:
+ slicetype: fill in more lookahead detail
+ [63e629a504d1]
+
+2013-08-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ mark places where m_gopList is used
+
+ aka, mark where the demolition charges are set
+ [14e5d42ea283]
+
+2013-08-08 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/PPA/ppaCPUEvents.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ framepp: thread of loopfilter
+ [facd861224d6]
+
+2013-08-08 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel.inc:
+ pixel: allow intel compiler to generate AVX2 intrinsics
+ [95e6b13e7122]
+
+ * source/common/vec/pixel.inc:
+ pixel: disable AVX2 instrinsic SAD primitives for VC11
+
+ They are failing unit tests, and causing odd encoder crashes that
+ appear to be related to aligned loads. We need ASM versions of these
+ functions.
+ [235519423524]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilter: and some more tabs
+ [ee7f9c2593fd]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilter: nuke some tabs
+ [d2f925d4fdb3]
+
+ * source/Lib/TLibCommon/TComCABACTables.h:
+ TComCABACTables: fix ICL warning about order of variable modifiers
+ [820b7497f118]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilter: malloc output buffers for testbench - prevents ICL stack
+ overflow
+ [9130a070955e]
+
+ * source/common/vec/sse.inc:
+ sse: variable renames to match pixelcmp style
+ [eb4da8a89357]
+
+2013-08-08 praveentiwari <praveentiwari>
+
+ * source/common/vec/sse.inc:
+ sse_pp64: +1x over last commit
+ [e272439497e7]
+
+ * source/common/vec/sse.inc:
+ sse_pp48: +1x over last commit
+ [5c0700683875]
+
+ * source/common/vec/sse.inc:
+ sse_pp32: Better performance result
+ [14c2bcce6de1]
+
+ * source/common/vec/sse.inc:
+ sse_pp24: Better performance result
+ [f03aca71c486]
+
+ * source/common/vec/sse.inc:
+ sse_pp16: Better performance result
+ [e91911135862]
+
+ * source/common/vec/sse.inc:
+ sse_pp12: Replced costly psrli + pmovzx and psrli + add
+ [307ade9f9aab]
+
+ * source/common/vec/sse.inc:
+ sse_pp8: Replaced 'vpbroadcastd' with cheaper 'pxor' instruction
+ [11aed2197707]
+
+2013-08-08 sumalatha <sumalatha>
+
+ * source/encoder/ratecontrol.cpp, source/encoder/ratecontrol.h:
+ add (incomplete) ratecontrol.cpp and ratecontrol.h
+ [9974f57f56a1]
+
+2013-08-08 praveentiwari <praveentiwari>
+
+ * source/common/vec/ipfilter8.inc:
+ filterVertical_s_p: VC9 fix
+ [5881b6f1e81a]
+
+2013-08-08 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt:
+ cmake: add slicetype.cpp to the encoder build
+ [b4fcf168c5d0]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ TComPic: nit
+ [dce4535983f4]
+
+2013-08-08 ggopu <ggopu>
+
+ * source/common/lookahead.h, source/encoder/slicetype.cpp:
+ slicetype: modified lookahead structure and added
+ slicetype_cu_cost()
+ [1d6f838b4f64]
+
+ * source/encoder/slicetype.cpp:
+ Uncrustify slicetype.cpp
+ [2bfbb7608340]
+
+2013-08-08 Steve Borho <steve@borho.org>
+
+ * build/icl/build-all.bat, build/icl/make-makefile.bat,
+ source/common/vec/CMakeLists.txt:
+ cmake: add batch files for Intel C++ 2013 on Windows
+ [57cef8258abe]
+
+ * source/CMakeLists.txt:
+ cmake: Intel's ICL mimics MSVC compiler commandline, treat as equiv
+ [d4a7ea88c34d]
+
+2013-08-07 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ fix bug when '--no-wpp --no-lft'
+ [33aa6210de6d]
+
+ * source/common/common.cpp, source/x265opts.h:
+ rename option from 'lpf' to 'lft'
+ [084497e2ef56]
+
+2013-08-07 praveentiwari <praveentiwari>
+
+ * source/common/vec/sse.inc:
+ sse_pp64: +1.5x for all versions
+ [710007b7f4ba]
+
+ * source/common/vec/sse.inc:
+ sse_pp48: Improved performance result for all versions
+ [797416b5b84b]
+
+ * source/common/vec/sse.inc:
+ sse_pp24: Improved performance result for all the versions
+ [d6403549def5]
+
+ * source/common/vec/sse.inc:
+ sse_pp32: Improved performance for all versions above 1x
+ [480322faaa72]
+
+ * source/common/vec/sse.inc:
+ sse.inc: Uncrustified
+ [4cd7311e31b5]
+
+2013-08-07 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGop: simplify call of setMvdL1ZeroFlag()
+ [e6d0a359648c]
+
+ * source/common/pixel.cpp:
+ pixel: white-space cleanups in frame_init_lowres_core
+ [38f11ae10731]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix more test dimensions
+ [80fde3dd585d]
+
+2013-08-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: simplify pic list destruction
+ [e8fed4725b02]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: correct an old comment
+ [3afa31de4310]
+
+2013-08-06 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter8.inc: Uncrustified
+ [3f879cd9e058]
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ ipfilter8.inc: vectorized vertical weighted filter
+ [56d7ae74bd6e]
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ ipfilterharness: unit test for vertical weighted filter
+ [053083121fe0]
+
+2013-08-06 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel.inc, source/common/vec/sse.inc:
+ sse: sse_pp requires SSE4.1
+ [9418d73daa48]
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ TComPic: fix the malloc logic
+ [cd89e891c3b9]
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ TComPic: fix white-space style
+ [80f154c0305f]
+
+2013-08-06 praveentiwari <praveentiwari>
+
+ * source/common/vec/sse.inc:
+ sse_pp16: more than +1x performance improvement for all versions.
+ [c90132bb66fb]
+
+ * source/common/vec/sse.inc:
+ sse_pp12 all versions, improved performance with intrinsic code
+ [d0a378326291]
+
+ * source/common/vec/sse.inc:
+ +1x for all versions of sse_pp8
+ [8854c6df7d10]
+
+2013-08-06 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ framepp: move frame col flag to Pic
+ [2d032b79a988]
+
+2013-08-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ TComPic: initialize m_bframes and lowres struct to all zeros
+ [f48617fc87d3]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: futher magic value cleanups, use STRIDE as appropriate
+ [c9149cee2317]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp:
+ TComLoopFilter: fix variable shadowing
+
+ The HM was using Edge as a parameter and iEdge as a loop variable
+ [977bb357f2a0]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ TEncSBac: iOffset -> offset
+ [91743e8e2ecc]
+
+ * source/Lib/TLibCommon/TComPattern.cpp:
+ TComPattern: piSrc -> sec
+ [0d5ec9084022]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h:
+ TComLoopFilter: strip hungarian prefixes from members and autos
+ [d42fdd481a32]
+
+2013-08-06 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp:
+ framepp: merge V/H filter into one loop
+ [4c49a45a5ce9]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp:
+ framepp: loopfilter simplify and remove redundant
+ getDeblockingFilterDisable()
+ [aaf5ba14d7d4]
+
+2013-08-05 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: stride of 64, incr of 32, remove magical values
+
+ This should fix AVX2 test failures and make the code more
+ maintainable
+ [922ef1b99c9a]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: remove redundant defines
+ [9c2792126e9d]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ white-space cleanups in TEncCfg.h
+ [03880135c31b]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: remove dead subsample member
+ [18eefbb58790]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp:
+ TEncGOP: remove SOPDescriptionSEI, the HM's implementation required
+ fixed GOP
+ [697ed158f1e2]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove unused multi-slice logic
+ [4b91d6759a09]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: isolate colDir logic within B-frame expression
+ [43b753eef43d]
+
+2013-08-05 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ lookahead: lookahead output cost allocations and initialization
+ [81c3ad052397]
+
+2013-08-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ remove redundant m_deblockingFilterControlPresent
+ [ee84b4b64587]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/encoder.cpp:
+ remove redundant m_bLoopFilterDisable
+ [8db8e2fe6ba3]
+
+2013-08-05 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp,
+ source/x265.h, source/x265opts.h:
+ framepp: Loopfilter cleanup and control by --lpf
+ [d1f2b9cad11d]
+
+2013-08-05 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter8.inc:
+ Optimizations to horizontal weighted filter
+ [bdea613d4402]
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ vectorized horizontal weighted filter
+ [894e47d258a7]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness: modifications to weighted filter testbench
+ [87dbfdda0769]
+
+2013-08-05 praveentiwari <praveentiwari>
+
+ * source/common/vec/ipfilter8.inc:
+ filterHorizontal_p_s: saving instructions with control execution
+ [48c6641e19de]
+
+ * source/common/vec/ipfilter8.inc:
+ filterHorizontal_p_p: sum decleared as local register
+ [77ee29b50554]
+
+ * source/common/vec/ipfilter8.inc:
+ filterHorizontal_p_p: saving instruction with control execution
+ [0c2a6a18293e]
+
+2013-08-05 Steve Borho <steve@borho.org>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ ipfilter: ipfilter_pp uses SSE4.1 instructions
+ [a1133f538222]
+
+2013-08-04 Aarthi <aarthi@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ remove duplicate vars, get() methods
+ [37cbf6432e63]
+
+2013-08-02 Steve Borho <steve@borho.org>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ ipfilter: remove vector versions of more optimized functions
+ [074c05f87c53]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/blockcopy-
+ sse42.cpp, source/common/vec/dct-sse42.cpp, source/common/vec/intra-
+ sse42.cpp, source/common/vec/ipfilter-sse42.cpp, source/common/vec
+ /pixel-sse42.cpp, source/common/vec/sse42.cpp, source/common/vec
+ /vec-primitives.cpp:
+ remove SSE42 vector primitive files - they were nearly the same as
+ SSE41
+
+ There wasn't enough differentiation (only abs() changed with SSE42)
+ to warrant all the extra build time.
+ [b391765c9c96]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc,
+ source/x265.h:
+ x265: switch cpu levels from enum to defines
+ [3db96ea97abb]
+
+ * source/common/vec/pixel.inc:
+ pixel: move sse.inc include closer to other primitive includes
+ [8afe0e089317]
+
+ * source/common/primitives.h, source/common/vec/blockcopy.inc,
+ source/common/vec/dct.inc, source/common/vec/intrapred.inc,
+ source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ vec: use enums instead of magical integer values for SIMD build
+ macros
+ [6764c2750c35]
+
+ * source/common/primitives.h:
+ primitives: white-space fix
+ [190063ccc281]
+
+ * source/x265.h:
+ x265: add enums for CPU SIMD architecture levels
+ [adad7346e6f7]
+
+ * source/x265.h:
+ x265: fix C++ism in public header and some white-space issues
+ [37e2c97d2478]
+
+ * source/encoder/frameencoder.cpp:
+ frameencoder: do not check row priority if WPP is disabled
+ [d0b3ab46f903]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/encoder/compress.cpp:
+ TEncCfg: nuke most set*() methods
+ [1b9935ff8dcf]
+
+2013-08-02 praveentiwari <praveentiwari>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ filterVertical_p_p: intrinsic for vector replacement
+ [0a9afd5eed38]
+
+ * source/common/vec/ipfilter8.inc:
+ filterVertical_s_p: constrution replaced with shuffle
+ [d2cbfda470bb]
+
+ * source/common/vec/ipfilter8.inc:
+ filterVertical_s_p: fix for VC9 test bench fail
+ [62696c47e875]
+
+2013-08-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: fix member variable shadowing
+ [2416019326d9]
+
+2013-08-02 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/CMakeLists.txt,
+ source/common/lookahead.h:
+ Lookahead data structures introduced
+ [de3e6c30815c]
+
+2013-08-02 aarthi <aarthi>
+
+ * source/encoder/encoder.cpp:
+ replaced all the set*() methods with the member variables in
+ encoder.cpp
+ [83865be72a9d]
+
+2013-08-02 Shazeb N Khan <Shazeb N Khan>
+
+ * source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ TestBench for filter-Weighted
+ [30c7ae31afd5]
+
+2013-08-01 Steve Borho <steve@borho.org>
+
+ * source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/frameencoder.cpp:
+ wavefront: add a check for higher priority rows ready to be
+ processed
+ [322bea3559e7]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/encoder.cpp:
+ replace TEncCfg.getIntraPeriod with param.keyframeInterval
+ [86cc97cbcb3e]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ replace TEncCfg.getSourceHeight with param.sourceHeight
+ [67cc495aaa55]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ replace TEncCfg.getSourceWidth with param.sourceWidth
+ [3f971cea03e8]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ replace TEncCfg.getFrameRate with param.frameRate
+ [9e872c494da3]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ replace TEncCfg.getLogLevel with param.logLevel
+ [1f83472c5312]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ replace TEncCfg.getEnableWaveFront() with param.bEnableWavefront
+ [584dac26a4f2]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncTop.h,
+ source/encoder/encoder.cpp:
+ give TEncCfg a copy of the input params
+ [184702b704a5]
+
+ * source/encoder/encoder.cpp:
+ encoder: note some missing logic in level enforcement
+ [0e6828678464]
+
+ * source/common/common.cpp:
+ common: update warning message about searchMethod values
+ [29e00b2bff05]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/motion.cpp:
+ add full search to optimized ME, always use our function for uni-
+ search
+ [187647eff86d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/x265.h,
+ source/x265opts.h:
+ remove HM's unidirectional motion search except full search
+ [712d50ffcfe4]
+
+ * source/encoder/encoder.cpp:
+ biprediction uses HM's full search routine unconditionally
+
+ The search method for uni-directional search does not depend on
+ bipred search configuration.
+ [bdef1663b85a]
+
+2013-08-01 Shazeb N Khan <Shazeb N Khan>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSearch, TEncSlice, TComPrediction: Uncrustified
+ [59d9b3f08727]
+
+2013-08-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Using the weighted frames in prediction
+ [c77176c0a699]
+
+2013-08-01 Shazeb N Khan <Shazeb N Khan>
+
+ * source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/encoder.cpp:
+ Integration of weighted frames in the encoder
+ [2113842f58ea]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Used cached MotionReference pointers in Prediction
+ [62150133b753]
+
+2013-08-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/common/reference.cpp,
+ source/common/reference.h:
+ reference: add methods for setting and comparing weights
+ [dba06d54c67e]
+
+ * source/common/reference.h, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ reference: split reference plane data from interpolation logic
+
+ The motion search code only needs the ReferencePlanes data. Now that
+ it is separated, lookahead can use the reference plane structure
+ without all the MotionReference overhead.
+ [7b3fa7f5cfa5]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/encoder/compress.cpp:
+ Move LAMBDA_PARTITION_SELECT defnition from CommonDef to
+ compress.cpp
+ [f39175ab6093]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: remove unused maxVal variable (for 8bpp it is unnecessary)
+ [689de127f659]
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ ipfilter_sp uses SSE4 instructions
+ [1ee78b4c3ba0]
+
+ * source/common/common.cpp:
+ common: enable WPP by default, disable by --no-wpp or --threads 1
+ [b1b84e8b7b70]
+
+2013-08-01 praveentiwari <praveentiwari>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ Close to +2x performance improvement for filterVertical_s_p
+ [6a66dfc449bc]
+
+2013-08-01 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/CommonDef.h:
+ adjusted LAMBDA_PARTITION_SELECT value to 0.9 - optimal for using in
+ Early-Exit NO-RDO
+ [053abe99ac91]
+
+ * source/encoder/compress.cpp:
+ made logic changes to EARLY_EXIT_NO_RDO mode - optimized for perf
+ Gain
+ [f03c950448c0]
+
+ * source/encoder/compress.cpp:
+ uncrustify : compress.cpp
+ [e108bfd4d6f5]
+
+2013-07-31 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove unused variable
+ [8eebc88f86e0]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: release m_refList as a singly linked list
+ [b59563cc34bb]
+
+ * source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TComPicYuv: rename setBorderExtension() to clearExtendedFlag()
+ [0be525cd8583]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TComPicYuv: rename extendPicBorder to generateMotionReference()
+
+ The function now can be said to generate a motion reference for a
+ reconstructed frame
+ [0d8544362337]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ TComPicYuv: inline the motion reference search
+ [f1d4fe6c85fa]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use cached motion references from slice header
+ [7a80be8edcfa]
+
+2013-07-31 Shazeb N Khan <Shazeb N Khan>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/common/reference.cpp,
+ source/common/reference.h:
+ Cached the motion reference list in the Slice
+ [cd150fe1d042]
+
+2013-07-31 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/reference.h:
+ MotionReference objects with distinct weights handled as linked list
+ [575c8ba71475]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: further simplifications
+ [66eab44e4c56]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp:
+ remove unreachable TemporalLevel0Index SEI message
+ [5843dfb610e4]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: further simplifications and cleanups
+ [a20d80859567]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove redundant slice->setNextSlice() (very next line
+ reverses it)
+ [faf8586102b5]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove redundant if() checks and pointer dereferences
+ [0602b9fb4f62]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp:
+ remove unreachable scalable nesting SEI message
+ [84e6d71e70e1]
+
+2013-07-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ remove unused temporal layer logic
+ [74060e8f4860]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: reorder some logic for more clarity
+ [17a48c3c393a]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unused m_batchSize, m_startPOC
+
+ Remnants of GOP parallelism
+ [1396e8d60605]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: move init-type code into init() function
+ [1610291e59a0]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h, source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/compress.cpp,
+ source/encoder/encoder.cpp:
+ remove HM rate control code that has been long broken by WPP
+ [deb6891ead01]
+
+ * source/CMakeLists.txt, source/common/vec/CMakeLists.txt:
+ cmake: cleanup tabs
+ [058ee5276203]
+
+ * source/CMakeLists.txt, source/common/vec/CMakeLists.txt:
+ cmake: gcc 4.7 support for avx2 vector headers is a little touchy
+ [7d0616453134]
+
+ * source/common/reference.cpp, source/common/reference.h:
+ MotionReference class with weighted frames
+ [0b55e4728a3d]
+
+2013-07-30 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Modified weighted IP Filter primitive to include Full Pel
+ [575b46e6d413]
+
+2013-07-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: re-order destruction so thread pool outlives job providers
+ [057b9a97c920]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: move frame list, recon list, and access units out of
+ TEncGOP
+
+ This is in preparation for making a new slicetype / lookahead
+ structure and breaking TEncGOP into a half dozen pieces.
+ [ec1852ccacee]
+
+ * source/common/common.cpp:
+ common: enable AMP by default
+ [2f3df1553a49]
+
+ * source/common/common.cpp:
+ common: enable SAO by default
+ [9fd468696d9a]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp, source/x265.h,
+ source/x265opts.h:
+ make decoder refresh type a configurable param [CHANGES OUTPUTS]
+
+ Now that internal GOP parallelism is gone, we can allow the
+ different modes to be selected at runtime.
+ [4d923d9b501a]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: recover HM's original lambda calculations [CHANGES
+ OUTPUTS (back)]
+
+ Now that internal GOP parallelism is no longer supported, this logic
+ is no longer a determinism bug waiting to happen. But we still want
+ to replace all this "magical math" with simple QP->lambda tables, in
+ the long term.
+ [4992e5165984]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: nit
+ [62db6594a54e]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/x265.h, source/x265opts.h:
+ remove GOP parallelism, simplify TEncTop and TEncGOP
+ [fabc0722f393]
+
+ * source/CMakeLists.txt:
+ cmake: add x265.h to CLI visual studio project for convenience
+
+ most people will open the x265 project looking for x265.h
+ [3cadbb2d0150]
+
+2013-07-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h:
+ x265: add x265_encoder_headers() public API
+
+ This brings us more in sync with x264, and makes GOP parallelism
+ almost trivial to implement above the level of the encoder (so we
+ can remove the internal one)
+ [2bda33439bf9]
+
+2013-07-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove unused variable
+ [3e055671010e]
+
+2013-07-29 praveentiwari <praveentiwari>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ ipfilter: +3x for filterHorizontal_p_s functions
+
+ ipfilter_ps now requires at least SSSE3
+ [5feb9f813a64]
+
+ * source/common/vec/ipfilter8.inc:
+ filterHorizontal_p_p vector portion replaced with intrinsic code
+ [74d8c41266d5]
+
+ * source/common/vec/ipfilter8.inc:
+ Uncrustified ipfilter8.inc file
+ [9fb0dd3a7460]
+
+2013-07-29 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: fix 16bpp test bench
+ [364f48a1e183]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: cleanups
+ [8f7dc5f4a05c]
+
+2013-07-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: inter2Nx2NCost was set but not used in default builds
+ [08061e08d3bb]
+
+ * source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ fix compile with ENC_DEC_TRACE enabled in TComRom.h
+ [5ad0b644d15f]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: fix variable shadowing reported by GCC
+ [2d13884687e8]
+
+2013-07-26 Steve Borho <steve@borho.org>
+
+ * Merge with stable
+ [30c257a1fa77]
+
+ * build/regression/email-csv.py:
+ regression: improve email-csv.py
+ [36c6c198f885] <stable>
+
+ * source/encoder/compress.cpp:
+ compress: code cleanups, no functional changes
+ [ca9d2057a56c]
+
+2013-07-26 Aarthi <aarthi@multicorewareinc.com>
+
+ * source/encoder/compress.cpp:
+ changes to early Exit No RDO - roughly +14% with EARLY_EXIT_NO_RDO=1
+ [5ef875c10c88]
+
+2013-07-26 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: remove unused NO_RDO_EARLY_EXIT build option
+ [2b4f9d12f141]
+
+ * source/encoder/compress.cpp:
+ move EARLY_EXIT_NO_RDO to top of compress.cpp
+ [6e4a1748e98a]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: use unaligned load for coefficients
+
+ The chroma coeff table can't be loaded on 16byte alignment
+ [73d93cdcf978]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: fix eoln damage from cut-paste
+ [70ff5b57e0e2]
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ ipfilter now requires at least SSSE3
+ [06e9fb6913aa]
+
+2013-07-26 praveentiwari <praveentiwari>
+
+ * source/common/vec/ipfilter8.inc:
+ Approx +5x for ipfilterH_pp<8> and ipfilterH_pp<4>
+ [dee0115561d9]
+
+2013-07-26 Steve Borho <steve@borho.org>
+
+ * source/common/x86/pixel.h:
+ asm: white-space nits
+ [76931d20b082]
+
+ * Merge with stable
+ [e23b5e5f7347]
+
+ * source/common/x86/README.txt, source/common/x86/const-a.asm,
+ source/common/x86/cpu-a.asm, source/common/x86/mc-a2.asm,
+ source/common/x86/pixel-a.asm, source/common/x86/sad-a.asm,
+ source/common/x86/x86inc.asm, source/common/x86/x86util.asm:
+ asm: refresh all asm to a recent x264 revision
+ [d0542565dc1d]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h:
+ asm: use macro decl of downscale prims
+ [fc069ab1ecd6]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: remove pragma warning disable, connect some 16bpp routines
+ [b1bbb760f007]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix alignment of downscale input arguments
+ [4117d2f613ac]
+
+2013-07-26 ggopu <ggopu@bitbucket.org>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/CMakeLists.txt, source/common/x86/asm-
+ primitives.cpp, source/common/x86/mc-a2.asm,
+ source/common/x86/pixel.h, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ Lookahead: asm primitve for downscale
+ [71234ae45d95]
+
+2013-07-26 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/x265.h:
+ api: rename x265_bit_depth to x265_max_bit_depth for clarity
+
+ For 16bpp builds, we will eventually want to allow 12bit pixels, but
+ it should also be capable of encoding 10 and 8 bit streams as well.
+ Use 8 even for 16bpp builds for now, since we know higher bit depths
+ are broken.
+ [d44588a406ce] <stable>
+
+ * source/PPA/ppa.cpp, source/common/threading.h:
+ use lower case <windows.h> consistently - fixes cross-compiles
+ [aa392516ae56] <stable>
+
+ * source/test/testbench.cpp:
+ testbench: use x265_malloc / x265_free to avoid duplicate logic
+ [6b18efa79241] <stable>
+
+ * source/common/common.cpp:
+ common: fix mingw64 malloc
+ [29fd8ece16d7] <stable>
+
+ * open a permanent named branch "stable"
+
+ The stable branch is for bug-fixes and documentation improvements
+ The default branch is where all new development takes place
+
+ Each time bugs are fixed on stable, the stable branch is merged into
+ default. Default is only merged back into stable just prior to a new
+ release tag.
+ [1fd88edc7b11] <stable>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ intra: re-enable 64x64 downscale path
+ [f2f70fa9b4f3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ intrapred: fix bug on --cpuid less than 4
+ [bd8ef1eb5a6c]
+
+ * source/encoder/encoder.cpp:
+ encoder: ensure the setLFCrossTileBoundaryFlag() method is called
+ once
+
+ Even though we do not use tiles, this could have affected the logic.
+ For basic encodes, we are now valgrind clean.
+ [904c5cac454d]
+
+ * source/encoder/encoder.cpp:
+ encoder: fix bug reported by valgrind; config vars referenced before
+ assignment
+ [13729094ca7e]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: fix crash in computeSSD when frame stride is not aligned
+ enough
+ [e53c6f48ba9f]
+
+ * source/test/pixelharness.cpp:
+ testbench: fix leak in pixelharness
+ [4968a6bfd760]
+
+2013-07-25 Steve Borho <steve@borho.org>
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/vec-
+ primitives.cpp:
+ cmake: clarify GCC versions which supported AVX, XOP, and AVX2
+ intrinsics
+ [1dfbbb7d2476]
+
+ * source/common/vec/pixel8.inc:
+ pixel: remove unused formal parameter names
+ [ddaaf7b2bd70]
+
+ * source/VectorClass/vectori256.h:
+ vector: fix variable shadow warnings reported by GCC 4.8.1
+
+ The second shadow was almost certainly a bug
+ [d6da69ef1e14]
+
+ * source/CMakeLists.txt:
+ cmake: on Mac OS X, it is not necessary to link with rt
+ [2f5480619e98]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/common/TShortYUV.cpp,
+ source/common/common.cpp, source/common/ipfilter.cpp,
+ source/common/reference.cpp, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/test/testbench.cpp:
+ common: introduce X265_MALLOC/X265_FREE to replace xMalloc/xFree
+
+ Uses _aligned_malloc() on Windows and posix_memalign() on everything
+ else. Old MingGW32 requires a name mapping hack
+ [0e9399d65002]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: more white-space nits
+ [a32a25e928e6]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: white-space only
+ [5f20aa2d81bf]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: CPUID 3 is SSSE3, 4 is SSE4. CPUID 1 == C only
+ [5c2f9bb8f965]
+
+ * source/Lib/COPYING.HM:
+ license: add a copy of HM's license to source/Lib
+ [6f06736eb325]
+
+ * source/x265.cpp:
+ x265: exit cleanly when missing input YUV parameters
+ [1fd3c11d5219]
+
+ * source/x265.cpp:
+ vld: report leaks to file as well, useful for regression suite
+ [d0153575b4b4]
+
+ * source/x265.cpp:
+ x265: clear progress report line at exit only if progress enabled
+ [fc9a6776f9d0]
+
+ * build/regression/01build-and-smoke-test.bat:
+ regression: leave build remnants in place, delete cmake cache
+ between runs
+ [44c880a8932b]
+
+ * build/regression/01build-and-smoke-test.bat,
+ build/regression/02perftest.bat:
+ regression: use --no-progress when running encoder, to clean up logs
+ [b8b9ff6596ee]
+
+ * build/regression/01build-and-smoke-test.bat:
+ regression: use single-threaded msys make to avoid console color
+ issues
+ [62e3828fe4d9]
+
+ * doc/LookaheadPlan.txt:
+ doc: publish a plan for porting x264 slice decision and adding frame
+ parallelism
+ [67d705db7085]
+
+2013-07-25 Min Chen <chenm003@163.com>
+
+ * source/encoder/compress.cpp:
+ intrapred: sync buffer overflow patch to mode --no-rdo
+ [67da2187eb8b]
+
+2013-07-24 Steve Borho <steve@borho.org>
+
+ * source/common/vec/dct.inc, source/common/vec/intrapred.inc:
+ dct,intra: protect include of smmintrin.h from SIMD arch < SSE4.1
+ [25b5e4a4cc1e]
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: use appropriate -mARCH for each intrinsic file set for GCC
+ [8f746d62e6e1]
+
+ * source/x265.cpp:
+ x265: check YUV parameters before trying to open YUV file
+ [580ded735dc2]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ TComPicYuv: cache strides in a member variable
+ [d3ae586fca87]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: remove obsolete malloc includes
+ [6da8f47eb6e1]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: varname cleanup
+ [cffe02b2feda]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/common/TShortYUV.cpp:
+ TComYuv: variable name cleanups
+ [5487a1e80f4e]
+
+2013-07-24 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ Unreferenced variable removed.
+ [fd4954d7c2ac]
+
+2013-07-24 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv: Added primitive functions for Addclip Luma and chroma
+ [47edc0c679e0]
+
+ * source/common/TShortYUV.cpp:
+ TshortYUV: Added Primitive Functions for BlockCopy and AddClip for
+ both luma and chroma
+ [113fcd8b89a6]
+
+2013-07-24 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Wrapping up early exit code development in a macro.
+ [ad24a3cc9e6d]
+
+ * Merge
+ [fa3b07fcf212]
+
+ * source/encoder/compress.cpp:
+ Variable renaming in no-rdo mode: removing ambiguities
+ [e61e07e405f1]
+
+2013-07-24 Steve Borho <steve@borho.org>
+
+ * source/PPA/ppa.h:
+ ppa: fix "potential uninitialized variable" warning from GCC
+
+ gcc is being somewhat obtuse here, but I'll humor it
+ [138898b6c3e8]
+
+ * build/regression/02perftest.bat:
+ regression: improve log message in perftest
+ [a210f3b7704c]
+
+ * build/regression/01build-and-smoke-test.bat, build/regression
+ /config-example.txt, build/regression/run.bat:
+ regression: add MSYS builds to regression suite
+ [9c25b085049c]
+
+2013-07-23 Steve Borho <steve@borho.org>
+
+ * build/regression/02perftest.bat:
+ regression: properly use configured perfframes for performance tests
+ [a0e145b76ee5]
+
+2013-07-23 maheshpittala <maheshpittala>
+
+ * build/regression/01build-and-smoke-test.bat,
+ build/regression/02perftest.bat, build/regression/commandlines-
+ example.txt, build/regression/config-example.txt, build/regression
+ /email-csv.py, build/regression/run.bat, source/test/testbench.cpp:
+ Add regression scripts
+ [db664de68d3a]
+
+2013-07-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: temporarily disable 64x64 intra fast path
+
+ Running in debug it is reporting stack corruption around the above[]
+ array
+ [dabc5df15515]
+
+2013-07-23 Deepthi <Deepthi>
+
+ * Merge
+ [9f5a5ad402b6]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Function signature of xcomputeCostInter changed
+ [00115ae64f1a]
+
+ * source/encoder/compress.cpp:
+ Computing NxN satd costs for the previous depth
+ [a952c558dfec]
+
+ * source/encoder/compress.cpp:
+ Rearranging code
+ [68303445d7f6]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Renaming Recon to Pred: we'll be saving satd costs and predicted
+ frames for NxN vs 2nx2n decision
+ [28198b1f7e8b]
+
+2013-07-22 Min Chen <chenm003@163.com>
+
+ * source/common/pixel.cpp:
+ intrapred: fix mistake between C and Instrinsic
+ [a5dd4011b8bb]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ intrapred: fix bug in HIGH_BIT_DEPTH=1
+ [460189b98f61]
+
+2013-07-23 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Adding a missing memory initialisation
+ [e6622364d73d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Adding new recon structures in no-rdo mode - interNxN
+ [643c56139902]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Adding new structures in no-rdo mode - interNxN
+ [386daa4ac9a9]
+
+2013-07-22 Steve Borho <steve@borho.org>
+
+ * doc/UnitTestUsage.txt:
+ remove obsolete unit test doc
+ [2bbe9227d44c]
+
+2013-07-22 Deepthi <Deepthi>
+
+ * doc/Doxyfile, doc/mainpage.h:
+ Removing Doxygen related documentation from the repo
+ [0c4eebd03a00]
+
+ * doc/gop-structure-example.pdf:
+ Removing GOP structure example - the POC/decode order is a familiar
+ concept carried over from H.264
+ [6d0c465b4ba8]
+
+2013-07-21 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc,
+ source/common/vec/pixel8.inc, source/encoder/compress.cpp:
+ intrapred: Improvement Inra 64x64 [CHANGES OUTPUTS]
+ [18447bd07244]
+
+2013-07-19 Steve Borho <steve@borho.org>
+
+ * .hgtags:
+ Added tag 0.3 for changeset 3767fbfa970f
+ [158239bec6c1]
+
+2013-07-19 ggopu <ggopu>
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy.inc, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ Primitive: Performance Primitives for Pixel add Clip - TcomYuv and
+ TshortYuv
+
+ # HG changeset patch # User ggopu # Date 1374210970 -19800 # Node
+ ID 6a864fc57a58e6988969faf3b5b919dd3defa0c1 # Parent
+ a4c00c3f1897d9af8239bacf5f56621297e9785b Primitive: Performance
+ Primitives for Pixel add Clip - TcomYuv and TshortYuv
+ [3767fbfa970f] [0.3]
+
+2013-07-18 Steve Borho <steve@borho.org>
+
+ * source/common/threadpool.cpp:
+ gcc: fix threadpool warnings
+ [db7ed939be08]
+
+2013-07-19 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ Cleanup: Removing codedQp member variable.
+ [bcc2539665c8]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ Cleanup: Removing TotalBins access methods
+ [b56d92419898]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp,
+ source/encoder/frameencoder.cpp:
+ Cleanup: Removing TotalBits access methods
+ [374594f69e59]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp,
+ source/encoder/frameencoder.cpp:
+ Cleanup: Removing Distortion access methods.
+ [f60f409fe25f]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ Removed getTotalCost() method
+ [1c772b90b6ca]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp,
+ source/encoder/frameencoder.cpp:
+ Cleanup: Replace getTotalCost() with member access
+ [93164613a8dc]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ Making CU cost and misc variables public
+ [b476367a146d]
+
+2013-07-19 sumalatha <sumalatha>
+
+ * source/encoder/compress.cpp:
+ Changed the LOG, the pred mode was selected wrongly in few cases.
+ Fixed
+ [0c3e3a46fb7e]
+
+2013-07-18 Steve Borho <steve@borho.org>
+
+ * source/common/threadpool.cpp:
+ threadpool: repair EOLN
+ [a4c00c3f1897]
+
+ * source/common/threadpool.cpp:
+ threadpool: nit
+ [7565dd4c7d54]
+
+ * source/common/threadpool.cpp:
+ threadpool: reduce priority of worker threads slightly
+
+ This gives higher priority to GOP (and later frame) threads which,
+ if they are not blocked should be given CPU cores over worker
+ threads.
+ [9ac15ef1fa44]
+
+ * source/common/threadpool.cpp:
+ threadpool: cleanup
+ [1af121504330]
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: fix icpc AVX2 builds
+ [1ba93da79ac4]
+
+ * source/common/vec/pixel8.inc:
+ pixel: remove the names of unreferenced parameters (GCC now
+ complains of these)
+ [a1810069717f]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/vec-
+ primitives.cpp:
+ vec: GCC and icpc both have issues with XOP intrinsics
+
+ Probably because both rely on GCC headers
+ [6e10601c8f2a]
+
+ * source/common/primitives.cpp:
+ primitives: only print XOP FMA3 FMA4 if CPU level is at least AVX
+
+ If the user asked for --cpuid 6, they should not see XOP, FMA3, or
+ FMA4 because those will not be used.
+ [ca27274a19ab]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: increase alignement of fenc buffer to 32bytes for AVX2
+ [d371aff1b1fc]
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: only use XOP primitives when AVX CPU level is requested
+ [064808dc2286]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/blockcopy-
+ xop.cpp, source/common/vec/dct-xop.cpp, source/common/vec/intra-
+ xop.cpp, source/common/vec/ipfilter-xop.cpp, source/common/vec
+ /pixel-xop.cpp, source/common/vec/vec-primitives.cpp,
+ source/common/vec/xop.cpp:
+ vec: add XOP build files, for late AMD CPUs
+ [8808d7d79279]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/blockcopy-
+ avx.cpp, source/common/vec/blockcopy-avx2.cpp, source/common/vec
+ /blockcopy-sse3.cpp, source/common/vec/blockcopy-sse41.cpp,
+ source/common/vec/blockcopy-sse42.cpp, source/common/vec/blockcopy-
+ ssse3.cpp, source/common/vec/blockcopy.inc,
+ source/common/vec/vecprimitives.inc:
+ vec: break blockcopy intrinsics into their own files
+ [c27fbf50e931]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/dct-sse2.cpp,
+ source/common/vec/intra-sse2.cpp, source/common/vec/ipfilter-
+ sse2.cpp, source/common/vec/pixel-sse2.cpp,
+ source/common/vec/sse2.cpp, source/common/vec/vec-primitives.cpp:
+ vec: drop SSE2 files, we don't care that much about CPUs that old
+
+ This is mainly for improving compile times, since I will add XOP
+ files shortly
+ [be0fc8418935]
+
+ * x265: fix EOLN damage
+ [e4b9418724ba]
+
+ * source/x265.cpp:
+ x265: use puts for writing CLI args (makes GCC happy)
+ [ab4cb9c33e6f]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: cleanups
+ [2fd9dc2844af]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: tweak lambda magic value [CHANGES OUTPUTS]
+
+ This recovers BasketBallDrive encode PSNR/Bitrate/FPS back to close
+ what it was when the encoder used the non-deterministic lambda
+ function
+ [4e1a8cf10b3b]
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: pass the correct lamda to bitcost calculator [CHANGES
+ OUTPUTS]
+
+ This fixes a bug introduced in 15f993eceb4b, right after 0.1. The
+ different naming conventions had tripped me up.
+ [6847162fbcb1]
+
+2013-07-18 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ modifications to log file(LOG_CU_COST) to print the best mode, cost
+ chosen at each level.
+ [6849a1f910d0]
+
+2013-07-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove unused variable
+ [8878236b696d]
+
+2013-07-18 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/vec/intrapred.inc,
+ source/encoder/compress.cpp, source/test/intrapredharness.cpp:
+ intrapred: improvement intra_pred_planar
+ [c65a482b2879]
+
+2013-07-18 Deepthi <Deepthi>
+
+ * Merge
+ [dacf6c061e81]
+
+ * source/CMakeLists.txt:
+ NO_RDO_EARLY_EXIT: experimental macro to play with early exit of
+ analysis
+ [3eca40de1a35]
+
+2013-07-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ TypeDef: declare g_bitDepth extern if used for X265_DEPTH
+ [f813f110d69a]
+
+2013-07-18 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Merge
+ [fa872fec6372]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Backout changeset: c45fe1b2bd90
+
+ Reasons discussed. Performance improvement at the expense of
+ quality/bitrate by avoiding the non-zero residual mode.
+ [7f52bb181cf8]
+
+2013-07-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h:
+ csv: fix global PSNR calculation
+ [031c4c889edc]
+
+ * source/x265.cpp:
+ csv: add missing fps and line feed
+ [de92dfd387a2]
+
+ * source/encoder/compress.cpp:
+ compress: fix debug build
+ [ed69790ac6d4]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h, source/x265opts.h:
+ x265: add --csv logfile command line
+ [5bb6d0e451c2]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: nit
+ [47f97d1adb8a]
+
+2013-07-17 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/common/common.h,
+ source/encoder/encoder.cpp:
+ common: enforce global variables not changing within a single
+ process
+ [1d77c9eab71f]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h:
+ TShortYuv: cleanup
+ [b806d6e8f299]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/common/TShortYUV.cpp, source/common/TShortYUV.h:
+ TComYuv: cleanup
+ [34bbe4ec628f]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp:
+ remove other various internal users of bitdepth variables
+ [69b55b6be18c]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComRdCost: remove bitdepth from distParam
+ [f313ce8116b8]
+
+ * source/Lib/TLibCommon/TComPicYuvMD5.cpp:
+ TComPicYuv: remove bitdepth arguments
+ [474327bdbefc]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ TComPattern: remove bitdepth argument from fillReferenceSamples
+ [2848c686e55f]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp:
+ TComRom: remove hungarian prefix, fix comment typo
+ [c227aa627d52]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/dct.cpp,
+ source/common/intrapred.cpp, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/reference.cpp, source/common/vec/dct.inc,
+ source/common/vec/intrapred.inc, source/common/vec/ipfilter16.inc,
+ source/common/vec/ipfilter8.inc, source/common/vec/pixel8.inc,
+ source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/mbdstharness.cpp, source/test/pixelharness.cpp:
+ primitives: remove bitdepth arguments from all primitives and other
+ functions
+ [0f5a9a141244]
+
+ * source/common/primitives.h:
+ primitives: enable EMMS for random compilers, remove unused define
+ [1a0fbfe3066d]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/common/common.cpp, source/common/reference.cpp:
+ Make 8bpp bit depth a compile define (X265_DEPTH=8), g_bitDepthY ->
+ g_bitDepth
+ [648cf3243a4d]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ TypeDef: white-space nits
+ [e5bd6f54af40]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ Remove hacks for VC6, we support nothing before VC9
+ [1c3713fe241e]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComTrQuant: eText argument is no longer needed for
+ invRecurTransformNxN
+ [ceec75c37e20]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/common/common.cpp, source/test/mbdstharness.cpp:
+ Remove separate bitdepth configurable for chroma
+
+ Our x265_param_t has never allowed chroma depth to be different from
+ luma depth, so this is just a simplification of the code. This will
+ allow further optimizations to shortly follow.
+ [0a3d2667aab8]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/reference.cpp, source/encoder/compress.cpp:
+ change 16bpp Pel to UShort, equivalent to x264's uint16_t
+
+ This removes a metric ton of ugly casts and makes the code a lot
+ more readable, and it should keep the 16bpp build from being
+ accidentally broken when Pels are passed to functions as pixels.
+ [57404da2493d]
+
+ * source/common/TShortYUV.cpp:
+ blockcopy: further 16bpp fixes
+ [7fb13585cfa3]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: one change was missed from last commit
+ [d3594896e12e]
+
+ * source/common/TShortYUV.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/blockcopy.inc,
+ source/test/pixelharness.cpp:
+ blockcopy: fix 16bpp build, pixelsubsp -> pixelsub_sp
+ [dd8d73aeb1de]
+
+ * source/encoder/compress.cpp:
+ compress: uncrustify
+ [f10a163531a4]
+
+2013-07-15 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Changes in merge mode in no-rdo path for better psnr improvement and
+ time performance
+ [c45fe1b2bd90]
+
+2013-07-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/intrapred.cpp, source/common/primitives.h,
+ source/common/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ Backed out changeset: aee4a23a8f01 (does not compile)
+ [4ffaf245b427]
+
+2013-07-17 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/intrapred.cpp, source/common/primitives.h,
+ source/common/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ intrapred: improvement intra_pred_planar
+ [aee4a23a8f01]
+
+ * source/test/intrapredharness.cpp:
+ cleanup: remove unused debug code
+ [dd6ca15e90ac]
+
+2013-07-17 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ C primitive for weighted ipfilter
+ [2e067e3443c8]
+
+2013-07-17 Deepthi <Deepthi>
+
+ * Merge
+ [0cb8c7c9c7b2]
+
+ * source/Lib/TLibCommon/TComPicYuvMD5.cpp:
+ HIGH_BIT_ENABLE build error fixed.
+
+ Any better idea to get rid of the c4333 warnings welcome.
+ [800ea1ebadef]
+
+2013-07-17 ggopu <ggopu>
+
+ * source/common/TShortYUV.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/blockcopy.inc,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ TShortYUV : Implemented perfomance Primitives pixelsub_sp
+ [054d8c409569]
+
+2013-07-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TComSlice: relocate subpel generation to after weightp determination
+ [0becdecde6ee]
+
+2013-07-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: fix variable shadowing problem that was causing B frame
+ bugs
+
+ This HM routine was using refRPC and pcRefRPC in the same function
+ with entirely different meanings, and it bit me hard when I
+ refactored this function with search+replace.
+ [a3ca6eceb27a]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ TEncGOP: cleanup, make TEncCfg WPP var a Bool
+ [28ce2df5cb4d]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: header cleanup
+ [50b6e306dcbe]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/common/reference.cpp:
+ TComPicYuv: cleanup
+ [c3fa187d5460]
+
+ * source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComWeightPrediction.h:
+ Replace includes with class forward decls
+ [6ebabe789fc7]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: cleanup
+ [84c275972fee]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h:
+ TComPicSym: cleanup
+ [6afb8bad8568]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice:: fix end-of-list handling in xGetRefPic
+ [4a72479a9bc6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix full search regression
+ [07b381e97f7d]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ repair debug build after removing formal arugments by removing
+ asserts
+ [49adf99e9138]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: fixup after refactoring
+
+ I deleted the 0 argument instead of the NULL argument. MSVC didn't
+ care but GCC flagged this as a warning. NULL can't be passed as an
+ integer argument.
+ [10abee4a15c5]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ TEncCu: remove unused xTuCollectARLStats
+ [67c339ec83dd]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ remove buffers no longer used after removing AQ
+ [0fbbde73203f]
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/vec/dct.inc, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h:
+ remove unreachable quantaq primitive
+ [5b61ed2e33e4]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h, source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp:
+ Remove broken adaptive QP, fix unused parameter and variable
+ warnings
+
+ All of TEncPic now goes away
+ [979b9953d696]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ TEncCfg: hungarian cleanup
+ [fc4718bd4565]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ TEncCfg: remove unused istringstream operator
+ [ae96f205c7b6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ TEncSearch: remove unused formal parameters (quite a bit of
+ unwinding here)
+ [2389117c0085]
+
+ * source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/encoder/CMakeLists.txt:
+ Stop ignoring many compiler warnings in TLibEncoder
+
+ Enable warnings about unused parameters, clean up the warnings
+ reported. In a few cases I removed parameters that were obviously
+ obsolete.
+
+ Enable warnings about unused variables, clean up the warnings.
+ [c65db4ee3972]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComPrediction: remove unused "bi" parameters to prediction
+ functions
+ [e047cdd02421]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ TComWeightPrediction: fix bug found by enabling warnings
+ [cf568953fbe7]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/CMakeLists.txt,
+ source/encoder/compress.cpp:
+ Stop ignoring many compiler warnings in TLibCommon
+
+ Enable warnings about unused parameters, clean up the warnings
+ reported. In a few cases I removed parameters that were obviously
+ obsolete.
+
+ Enable warnings about unused variables, clean up the warnings. This
+ actually found a recently introduced bug.
+ [4a86baaac709]
+
+2013-07-16 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/vec/intrapred.inc,
+ source/encoder/compress.cpp, source/test/intrapredharness.cpp:
+ intrapred: improvement intra_pred_dc
+ [cf614acd8099]
+
+2013-07-16 Deepthi <Deepthi>
+
+ * Merge
+ [8f632c25d1ee]
+
+ * source/encoder/compress.cpp:
+ Merge
+ [0eb8a3db4b3f]
+
+ * source/encoder/compress.cpp:
+ SSE cost calculation in inter-no-rdo. Raises quality and lowers
+ bitrate (slightly). Will be changed into a CLI configurable if perf
+ effect is significant.
+ [29c1f5b64795]
+
+2013-07-16 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/TComRom.h:
+ more cleanups for CommonDef.h
+
+ * remove circular defininition of g_bitDepthY and g_bitDepthC
+ * move Clip templates to TComRom.h
+ * remove some dead defines
+ [6ee321714568]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComCABACTables.h,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/dct.cpp,
+ source/common/pixel.cpp, source/common/reference.cpp:
+ TComSampleAdaptiveOffset: cleanup and global SR, major header
+ cleanups
+
+ move all #defines from TypeDef.h to CommonDef.h and move all
+ feature-specific structs from TypeDef.h to their more specific
+ header
+
+ TypeDef.h should just define types (duh!) and CommonDef.h should
+ just have defines.
+ [778f0786eff8]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ TComWeightPrediction: hungarian cleanup
+ [60812792ee78]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/common/TShortYUV.h:
+ TComWeightPrediction: cleanup and global SR iPartUnitIdx ->
+ partUnitIdx
+ [0ad503ad1110]
+
+2013-07-16 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/pixel8.inc, source/test/pixelharness.cpp:
+ pixel8.inc, pixelharness : Uncrustified.
+ [4774cbad2bfb]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc,
+ source/test/pixelharness.cpp:
+ Vectorized WeightUni
+ [f7d8f489f694]
+
+2013-07-16 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel-avx.cpp, source/common/vec/pixel-avx2.cpp,
+ source/common/vec/pixel-sse2.cpp, source/common/vec/pixel-sse3.cpp,
+ source/common/vec/pixel-sse41.cpp, source/common/vec/pixel-
+ sse42.cpp, source/common/vec/pixel-ssse3.cpp,
+ source/common/vec/pixel.inc:
+ pixel: move includes of pixel8.inc or pixel16.inc inside pixel.inc
+
+ This makes the pixel-ARCH.cpp files much simpler, and makes it
+ easier to add headers for the pixel functions.
+ [44b4fb45e005]
+
+2013-07-15 Steve Borho <steve@borho.org>
+
+ * source/x265opts.h:
+ x265: document --cpuid 1 behavior
+ [c9bb72e8cb8e]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: cleanup classmethods
+ [48fb229ef210]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp:
+ TComDataCU: remove static ARL buffers, these were not thread safe
+
+ This is further proof that the ARL buffers are essentially unused
+ the way we are using the encoder (with AQ disabled). It is very
+ tempting to remove them globally.
+ [a75833091e14]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp:
+ TComDataCU: cleanup, remove "is a decoder" variable
+ [75e5f85ae8e1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/compress.cpp:
+ TEncSlice: less eye-bleed, more global SR
+ [846887941425]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: cpp cleanup, remove unreferenced class static
+ [cd5750e16bd7]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h:
+ TComSlice: cleanup + global SR
+ [26f767779d57]
+
+2013-07-15 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: CleanUp and Removd Hungarian Notation
+ [ae234c4c22e1]
+
+2013-07-15 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Cleaup the remaing functions in TComRdCost.cpp file
+ [b47059899650]
+
+2013-07-15 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/encoder/frameencoder.cpp:
+ TEncCU and TEncEntrophy: Clean Up
+ [cfb5b30ddadb]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ Cleanup and removed Hungarian notation
+ [add9f7dc8c83]
+
+2013-07-12 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp, source/x265opts.h:
+ x265: add --no-progress CLI option to disable reports when capturing
+ output
+ [9e689682ffb1]
+
+ * source/common/vec/blockcopy.inc:
+ blockcopy: AVX2 compress and extend ended up being a perf loss
+ [9afb0e925451]
+
+ * source/common/vec/blockcopy.inc:
+ blockcopy: add AVX2 fast paths
+ [17a78803a971]
+
+ * source/common/vec/blockcopy.inc:
+ blockcopy: ensure strides obey alignment requirements
+
+ This should fix crashes reported by Shanthan and Brian from
+ Telestream
+ [64e98159b25e]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ pixel: add AVX2 sad_x4 for 32 and 64 wide blocks
+ [c51d6f92205e]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ pixel: add AVX2 sad_x3 for 32 and 64 wide blocks
+ [037d8072cf60]
+
+ * source/common/vec/pixel8.inc:
+ pixel8: CurN -> frefN
+ [17bec876e8ed]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/vec-
+ primitives.cpp:
+ cmake: allow icpc to build AVX2 intrinsics
+ [bee415cae643]
+
+ * source/VectorClass/vectori256.h, source/common/vec/pixel.inc,
+ source/common/vec/pixel8.inc:
+ pixel: add AVX2 sad primitives for 32 and 64 wide blocks
+ [87eadb9849bc]
+
+ * .hgtags:
+ Added tag 0.2 for changeset b3471d9009f5
+ [391d4aeb3acc]
+
+ * source/cmake/version.cmake:
+ cmake: properly handle tagged release archives
+ [b3471d9009f5] [0.2]
+
+ * source/common/mv.h:
+ mv: remove unused toFPel() method
+ [cabc9474ccfc]
+
+ * source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/frameencoder.cpp, source/test/testpool.cpp:
+ wavefront: coding-style fixes, improve comments
+ [09cc9680e85d]
+
+ * source/common/wavefront.h:
+ wavefront: cleanup method comments
+ [1a2e10dbb8a3]
+
+ * build/README.txt, source/cmake/version.cmake:
+ cmake: do not cache x265 version from ENV var, update status message
+ [60d1a6e70946]
+
+ * source/PPA/ppa.cpp, source/PPA/ppa.h, source/PPA/ppaApi.h:
+ ppa: change license to x265 GPL+commercial license
+ [b99630f44717]
+
+ * source/CMakeLists.txt:
+ cmake: add a cmake option to statically link CRT on Windows release
+ builds
+ [c9625ddb711d]
+
+ * source/VectorClass/vectorclass.h, source/VectorClass/vectorf128.h,
+ source/VectorClass/vectorf256.h, source/VectorClass/vectorf256e.h:
+ remove vector class floating point, simplify includes
+ [4f9a3bda6185]
+
+ * source/VectorClass/special/complexvec.h,
+ source/VectorClass/special/decimal.h,
+ source/VectorClass/special/quaternion.h,
+ source/VectorClass/special/vector3d.h,
+ source/VectorClass/special/vectormath.h:
+ remove vector class special floating point headers
+ [91271bbcda30]
+
+ * source/CMakeLists.txt, source/tools/CMakeLists.txt,
+ source/tools/dr_psnr/CMakeLists.txt,
+ source/tools/dr_psnr/PsnrCalculator.cpp,
+ source/tools/dr_psnr/PsnrCalculator.h,
+ source/tools/dr_psnr/SSIMCalculator.cpp,
+ source/tools/dr_psnr/SSIMCalculator.h,
+ source/tools/dr_psnr/dr_psnr.cpp:
+ remove dr_psnr, it's a mess and no-one is working on it
+ [0839ec783eaf]
+
+ * source/tools/TestForChecking_BadCommit.bat,
+ source/tools/performanceProfiler/Profiler.bat,
+ source/tools/performanceProfiler/Readme.txt,
+ source/tools/performanceProfiler/config.txt,
+ source/tools/performanceProfiler/performanceProfiler.bat:
+ remove obsolete perf batch files
+ [41ec50a27f4f]
+
+ * build/README.txt:
+ build: update README.txt
+ [00400cf33211]
+
+ * build/BuildEncoderApplications.bat, build/ConfigureBuild.bash,
+ build/ConfigureBuild.bat, build/CreateRegressionPackage.bat,
+ build/CreateRegressionPackage.sh, build/RunEncoderApplications.bat,
+ build/config.txt:
+ remove obsolete regression tests and batch build scripts
+ [4207769d7bd6]
+
+2013-07-12 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: cleanup pDst
+ [18f282e09b36]
+
+2013-07-12 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSSE32 cleanup
+ [dd2dfd0e1acf]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ xGetSSE32Help cleanup
+ [08a9378c2d71]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSSE16N cleanup
+ [99196b0684e6]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ xGetSSE16NHelp cleanup
+ [dfc5c4114f63]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSSE16 cleanup
+ [11d28b173c04]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ xGetSSE16Help cleanup
+ [75305fa33a5f]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSSE8 cleanup
+ [03bbb4c9ae99]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ xGetSSE8Help cleanup
+ [f0038e6006e1]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSSE4 cleanup
+ [3f8bffc3f0ba]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ xGetSSE4Help cleanup
+ [fd8c0d5c4983]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSSE cleanup
+ [18f845fde53f]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ xGetSSEHelp cleanup
+ [ea7669697410]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD48 cleanup
+ [169e5b28f63f]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD64 cleanup
+ [5ed30c9ea3c5]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD24 cleanup
+ [1dc0453c1670]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD32 cleanup
+ [0bfaaf368618]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD16N cleanup
+ [904837a3a1de]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD12 cleanup
+ [f8933cd25eca]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Clean up the white-space by lining up
+ [eb92dec76124]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD16 cleanup
+ [ae6d26dee61f]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD8 cleanup
+ [d9e9186e2e6f]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD4 cleanup
+ [151ff0670a0a]
+
+2013-07-12 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: disable sad_x3 for AVX2, does not pass tests
+ [077dc358e9fa]
+
+2013-07-12 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::xGetSAD cleanup
+ [f3b49b4bc244]
+
+ * source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp:
+ Fix for Debug version build
+ [6fc940f59c01]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::setDistParam overloaded version clenup
+ [7a1c0fc82cb0]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::setLambda cleanup
+ [6c97e265b662]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost::setDistParam cleanup
+ [191eca565ac9]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ bApplyWeight member variable replaced with applyWeight
+ [22a03cf91021]
+
+2013-07-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Fix Build Errors for HIGH_BIT_DEPTH enable
+ [8758e968520c]
+
+2013-07-12 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ iSubShift member variable replaced with subShift for all referances
+ [deffbdd77bb4]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Uncrustified TEncSearch.cpp file
+ [8847796da616]
+
+2013-07-11 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ x265: prune dead short_options and fix no-arg flags
+ [1858833d3ef1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove unnecessary pointer argument refs
+ [a1b29fa01efb]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ compress: hungarian cleanups, white-space fixes
+ [b15db4f286f6]
+
+ * source/common/common.h:
+ common: fixup commit for previous (msvc didn't write the file)
+ [d36cc90f9848]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/x265.cpp:
+ x265: call x265_set_globals() when the encoder is created
+ [3d61f1b09eb6]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/compress.cpp,
+ source/encoder/frameencoder.h:
+ TEncCu: more de-hungarian, global SR, and AMVPInfo cleanups
+ [d75d51592719]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComYuv.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/common/TShortYUV.h,
+ source/encoder/compress.cpp, source/encoder/frameencoder.cpp:
+ TEncCu: more de-hungarian and global SR and more cleanups
+ [d5ab0435a15b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ TEncCu: de-hungarian buffer member variables
+ [870fe66f4533]
+
+ * source/Lib/TLibEncoder/TEncCu.h:
+ TEncCu: white-space and comment cleanups
+ [0a126dd487b2]
+
+ * source/Lib/TLibCommon/TComPattern.cpp:
+ TComPattern: finishing touches
+ [f2ff5cb195fc]
+
+ * source/Lib/TLibCommon/TComPattern.h:
+ TComPattern: white-space cleanup of header
+ [98e1d31e7029]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ TComPattern: de-hungarian, and global SR
+ [c75bdba9683f]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/common/pixel.cpp:
+ TComPattern: cleanup + global SR
+
+ neighbouring => neighboring, iStride -> stride, iComp -> comp
+ [5d5c89968b66]
+
+ * source/common/common.cpp:
+ Backed out changeset: 064e6bfa93f0 (too much PSNR loss to be
+ default)
+ [61d15d0b453d]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComMotionInfo: simplify TComCUMvField
+ [24d0170026dc]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h:
+ TComMotionInfo: simplify TComMvField
+ [73fec016b9b9]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp, source/x265.h,
+ source/x265opts.h:
+ x265: hide busted adaptive QP functionality
+
+ This might get ripped out entirely, will wait until after the GPL
+ release
+ [be8598d81e19]
+
+ * source/common/common.cpp:
+ x265: roughly alphabetize tool option reporting
+ [771d4d232d7e]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp, source/x265.h,
+ source/x265opts.h:
+ x265: hide --sao-max-offsets argument
+ [93d5e906c6ef]
+
+ * source/common/common.cpp:
+ x265: enable --fast-cbf by default [CHANGES OUTPUTS]
+
+ This appears to be a really good trade-off when RDO is enabled
+ [064e6bfa93f0]
+
+ * source/common/common.cpp:
+ x265: tweak option logging
+ [41d1a452c033]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp, source/x265.h,
+ source/x265opts.h:
+ x265: hide --tmvp parameter, it does not appear useful
+
+ --tmvp 0 and 2 appear to both be worse than the default In the
+ interest of simplifying our API for the near-term, I'm removing the
+ param
+ [98fb5cbf6f57]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp, source/x265.h,
+ source/x265opts.h:
+ x265: hide --merge-level parameter, it does not appear useful
+
+ --merge-level 3 decreases bitrate very slightly
+ --merge-level 4 increases bitrate
+
+ In the interest of simplifying our API for the near-term, I'm
+ removing the param
+ [c1fd77c0a995]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ TComTrQuant: nits and global SR
+ [3cfa626d1ec4]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ TComTrQuant: remove hungarian from QpParam
+ [959bd4f14b23]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: remove a couple more invalid pointer refs, fix a
+ comment
+ [a930ca2615c1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ fix variable shadow warnings reported by GCC
+ [2f36960fb069]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp:
+ refactor: iDir->dir, iList->list
+ [17f0a360918f]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp:
+ TComPrediction: remove ptr arg references, plus some global
+ search/replace
+ [b14b992b3f0c]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ TComPrediction: cleanup hungarian, plus some global search/replace
+ [37d226b549d7]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/dct.cpp,
+ source/common/intrapred.cpp, source/common/ipfilter.cpp,
+ source/common/vec/dct.inc, source/common/vec/ipfilter.inc,
+ source/common/vec/ipfilter16.inc, source/common/vec/ipfilter8.inc,
+ source/test/ipfilterharness.cpp:
+ refactor: move subpel interpolation filters to TComRom, remove dups
+ [8b7079adef37]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TComRdCost: adopt x264 style names, move last mv cost remnant to
+ TEncSearch
+ [9ffb3769afdb]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/encoder/compress.cpp:
+ TEncCU, TEncSAO: global search/replace for common hungarian names
+ [3edafbb958a7]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: cleanup set method names
+ [251a3fb404f0]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: further cleanups
+ [0fe565be0395]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ TEncSearch: remove more hungarian from member vars, other cleanups
+ [1992995f62f3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: cleanup init, remove unused s_dFilter, m_puiDFilter
+ [1aa4e291c6dc]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove hunariang prefixes from member vars, remove
+ unused min/max
+ [42754524511a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove hungarian prefixes from temp buffers
+ [5098bd2dfa09]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove unused singleton temp buffers
+ [879890f4aa94]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: qtTempAccessLayer -> qtlayer
+ [ab54c5d80683]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove redundant white-space
+ [bb1b55c79d3d]
+
+2013-07-11 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/pixel.cpp, source/common/primitives.h:
+ WeightedPredicton: Code cleanup, variable renaming - no logic
+ change.
+ [b09304da8423]
+
+ * source/Lib/TLibCommon/TComWeightPrediction.cpp:
+ Weighted prediction primitives integrated to encoder.
+ [a9cf11753b9d]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ C primitives and testbench support for weighted prediction
+ unidirectional.
+ [a8fba5231ff3]
+
+2013-07-11 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp:
+ iStrideCur member variable replaced with strideCur for all
+ referances
+ [cdc2757a09f0]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp:
+ iStrideOrg member variable renamed to strideOrg for all referances
+ [24670d4aea5e]
+
+2013-07-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xEncodeResidualQT
+ [c1e2e7ee80f8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: further cleanup of xEstimateResidualQT
+ [e8c50a292890]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: further cleanup of xEstimateResidualQT
+ [dfdd07b57714]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: more cleanups
+ [2d6cbbfeae8b]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: partial cleanup of xEstimateResidualQT
+ [54b7e44a945f]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup encodeResAndCalcRdInterCU
+ [740e4002bc8a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xPatternSearchFracDIF
+ [5cfdcda40cd9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xPatternSearchFast
+ [5170b6383156]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xPatternSearch
+ [ad8f26c19b65]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xMotionEstimation
+ [2158663a6e10]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xGetTemplateCost and xEstimateMvPredAMVP
+ [17699ac30ca9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup predInterSearch
+ [75d4bc043fa1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xMergeEstimation
+ [322076f45e2a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup IPCMSearch
+ [a566e9fdb97a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xEncPCM
+ [1a15e5414b07]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup estIntraPredChromaQT
+ [6e8092345092]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup estIntraPredQT
+ [725885f26120]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup preestChromaPredMode
+ [a81b1600a1ae]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xSetIntraResultChromaQT
+ [a3bf887469c8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xRecurIntraChromaCodingQT
+ [d8c562aab747]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xLoadIntraResultChromaQT, use block copy
+ primitives
+ [87516ea1b92e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xStoreIntraResultChromaQT
+ [204d2839f830]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xLoadIntraResultQT, correct stride and size for
+ chroma
+ [7367545ec76a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xStoreIntraResultQT
+ [65409511940b]
+
+2013-07-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xSetIntraResultQT
+ [b549964b4636]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xRecurIntraCodingQT, use block copy primitives
+ [5542e517b305]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xIntraCodingChromaBlk
+ [e383fa1d83b7]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xIntraCodingLumaBlk
+ [155ee7e2e1a8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: cleanup xEncCoeffQT, remove unused bRealCoeff
+ [f5e166b6a6f2]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xGetIntraBitsQT
+ [c21dd51ed3ca]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xEncIntraHeader
+ [3031fd60571a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xEncCoeffQT
+ [ff557176bba7]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanup xEncSubdivCbfQT
+ [d4433b481d08]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove meaningless consts and comments
+ [2245a4a8b34d]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: followup renames
+ [c1a9e7bb9749]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: cleanup the header
+ [d09e321b4d06]
+
+ * source/common/primitives.h, source/common/vec/ipfilter16.inc,
+ source/common/vec/ipfilter8.inc:
+ primitives: cleanup funcdefs
+ [d6ad445e4eeb]
+
+ * source/encoder/compress.cpp:
+ compress: remove trailing white-space
+ [cd6cdea03bbe]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/encoder/compress.cpp:
+ more mass search-replaces and various other cleanups
+ [f04c1ab7b493]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/encoder/compress.cpp, source/encoder/frameencoder.cpp:
+ global search-replaces for common variables, remove prefixes
+
+ pcCu -> cu, uiTrMode -> trMode, pcYuvPred -> predYuv, eRefPicList ->
+ picList, iRefList -> refList, iRefIdxTemp -> refIdxTmp
+ [4349ad516f23]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: fix memory leak
+ [48e99b31ca1e]
+
+2013-07-10 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup xGetCodedLevel function
+ [ccb2f92de6a4]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Clenup xGetICRateCost function
+ [6239f27298a1]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup xGetICRate function
+ [26e5e760a27a]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup setErrScaleCoeff function
+ [3b98d991c3e2]
+
+2013-07-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/encoder.cpp:
+ TEncSearch: remove m_bUseHADME, clean more hungarian
+ [7cffa89fad19]
+
+2013-07-10 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncodeSearch : Cleanup Removed un used codes, white space and
+ Removed Hungarian Notation
+ [435170a8901e]
+
+2013-07-10 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Removed duplicate copy of Merge RD cost estimation.
+ [422cbbbb1493]
+
+ * source/encoder/compress.cpp:
+ Code reuse of Merge: part 2
+ [6c320ed872a4]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Code reuse of Merge cost estimation for rdo/no-rdo: part 1
+ [e2ded94ab75d]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ Removing fdm from TEncCfg
+ [d291ed7c19b5]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp, source/x265.h,
+ source/x265opts.h:
+ Removing bEnableFastMergeDecision from CLI Options.
+ [2b4e59ecd75b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ Fast Decision for Merge always set - this CLI option does not give
+ any higher efficiency.
+ [8aff90a1c454]
+
+ * source/encoder/compress.cpp:
+ Enabling merge modes with non-zero residual in no-rdo mode.
+ [ff2b06916f87]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Recon for merge modes - store in TEnCU structure
+ [6c654e521fa4]
+
+2013-07-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/reference.cpp,
+ source/common/threadpool.cpp, source/common/vec/dct.inc,
+ source/common/vec/intrapred.inc, source/common/vec/ipfilter16.inc,
+ source/common/vec/ipfilter8.inc, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/compress.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/test/intrapredharness.cpp,
+ source/test/ipfilterharness.cpp, source/test/pixelharness.h,
+ source/test/testbench.cpp, source/x265.cpp, source/x265.h:
+ uncrustify
+ [ae3cf6062c1a]
+
+2013-07-09 Steve Borho <steve@borho.org>
+
+ * source/test/mbdstharness.cpp:
+ mbdstharness: workaround for linux test failures
+ [2bad78a65d37]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ TEncCU: use loops to create/destroy objects, rename m_IntraInInterCU
+ [e126e6386acc]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: fix shadowed variables for GCC
+ [df76c016468d]
+
+ * source/common/common.cpp:
+ common: fix a potential 8bpp usage bug
+ [f6552d7189dd]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/common/common.cpp:
+ TComRom: only allow zscan tables to be initialized once
+ [917b56038be3]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/TShortYUV.h,
+ source/common/butterfly.h, source/common/common.cpp,
+ source/common/dct.cpp, source/common/intrapred.cpp,
+ source/common/vec/intrapred.inc, source/encoder/compress.cpp,
+ source/encoder/encoder.cpp, source/encoder/frameencoder.cpp:
+ TComRom: remove hungarian notation, remove unused butterfly.h
+ [2f68b284ba53]
+
+ * source/Lib/TLibCommon/TComRom.h:
+ TComRom: simplify white-space
+ [daa1bf21a3ce]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: de-hungarian the member vars and auto-vars
+ [95ae28081f11]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComTrQuant: remove hungarian notations from member variables
+ [6af026c91d32]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/encoder/frameencoder.cpp:
+ TComTrQuant: remove m_bEnc member variable
+ [a9e3cf2ee919]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: CU -> cu
+ [079bbdf4d687]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove hungarian prefixes from auto-vars
+ [d366eeefac0f]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp:
+ TComTrQuant: hungarian removal, white-space cleanup, remove useless
+ comments
+ [a096d4fdefe5]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComTrQuant: simplify function arguments
+
+ * do not pass arlCCoef as a pointer reference
+ * return acSum rather than pass as integer reference
+ [d6c1bf1a4801]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h, source/common/dct.cpp,
+ source/common/vec/dct.inc:
+ TComTrQuant: remove deprecated DCT functions
+ [733534550553]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: lowercase cu, other cleanups
+ [10a797823849]
+
+2013-07-09 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup xRateDistOptQuant function
+ [6cef4fc5a850]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup xITransformSkip function
+ [0124ebb836bb]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup xTransformSkip function
+ [593ccf9b637b]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup xIT function
+ [23b7b876ad58]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup invRecurTransformNxN function
+ [3e2ea30421a1]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup invtransformNxN function
+ [ce4c31d4fcad]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ More cleanup with transformNxN
+ [6151c3d14f14]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ cleanup transformNxN function
+ [dc146c2b451a]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ cleanup init function
+ [741604b8a4b5]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ cleanup xDeQuant function
+ [0847be750c4e]
+
+2013-07-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: lowercase cu
+ [bd0ece7e95a1]
+
+2013-07-09 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ cleanup xQuant function
+ [c1bdb5c6f841]
+
+2013-07-10 Deepthi <Deepthi>
+
+ * Merge
+ [707b458d0e5e]
+
+2013-07-09 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Exit early if merge modes detected
+ [df22ad807c9f]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Updating merge cost calculation to enable early skips.
+ [0cd3c9c94bb0]
+
+2013-07-09 Steve Borho <steve@borho.org>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc,
+ source/test/testbench.cpp:
+ misc fixes
+ [aa8ddcc78c4a]
+
+ * source/common/vec/intrapred.inc:
+ intrapred: further cleanups
+
+ * rename methods to match primitive funcdef
+ * remove unoptimized all-angs methods, use C ref
+ [5a81d522e9e3]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: white-space fixup
+ [2e6f01521c90]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: remove buggy SSE2 version of
+ filterHorizontalMultiplaneExtend
+ [c1df7dba97be]
+
+ * source/common/vec/ipfilter16.inc, source/common/vec/ipfilter8.inc,
+ source/test/ipfilterharness.cpp:
+ ipfilter: follow up cleaning, one 16bpp compile fix
+ [0602a41d8ced]
+
+2013-07-09 ggopu <ggopu>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter16.inc,
+ source/common/vec/ipfilter8.inc:
+ ipfilter*.inc : Cleanup function names and variables
+ [1d24abd75465]
+
+ * source/common/common.cpp, source/common/ipfilter.cpp:
+ ipfilter: Cleanups function names and Variables
+ [05b43fadedd8]
+
+2013-07-09 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ cleanup signBitHidingHDQ function
+ [ea86a1524985]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Cleanup storeSliceQpNext function
+ [7b33153ce08c]
+
+2013-07-09 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Cleanup: remove commented code
+ [fe3a1d78f9d9]
+
+ * source/encoder/compress.cpp:
+ Merge modes now use RDO cost to compare against inter/intra. Quality
+ up, bitrate down.
+ [4efd9d9d4b60]
+
+ * source/encoder/compress.cpp:
+ Remove unused if-checks
+ [9605252d9dd8]
+
+2013-07-09 Steve Borho <steve@borho.org>
+
+ * source/test/ipfilterharness.cpp, source/test/mbdstharness.cpp:
+ testbench: more test result format tweaking
+ [a5c300785b8f]
+
+2013-07-08 Steve Borho <steve@borho.org>
+
+ * source/test/intrapredharness.cpp:
+ intrapred: tweak test result reporting
+ [a103a8a37fb8]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/ipfilter.cpp,
+ source/common/primitives.h:
+ TComInterpolationFilter: remove dead code and dead primitive
+ [eee0360420e2]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/ipfilter.cpp,
+ source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/blockcopy.inc, source/common/vec/ipfilter.inc,
+ source/encoder/motion.cpp, source/test/ipfilterharness.cpp,
+ source/test/pixelharness.cpp:
+ primitives: normalize primitive function names
+ [3f91e1121a00]
+
+ * source/common/primitives.h:
+ primitives: white-space alignment for primitive structure, re-order
+ for clarity
+ [6d15ceb19861]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc,
+ source/common/x86/asm-primitives.cpp, source/encoder/compress.cpp,
+ source/encoder/motion.h, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ primitives: unify primitive funcdef type names
+ [ed9b76835696]
+
+ * source/x265.cpp:
+ x265: cleanups
+ [420bb0f5b279]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ pixel: cleanup test harness methods
+ [992721365f6f]
+
+ * source/input/input.cpp, source/input/input.h,
+ source/output/output.cpp, source/output/output.h, source/x265.cpp:
+ i/o: lower case open methods
+ [b6d72f3e0096]
+
+ * source/common/reference.cpp:
+ reference: add a comment
+ [b36838e5b7cf]
+
+ * source/CMakeLists.txt:
+ cmake: move version.cmake include to just before the CLI link
+
+ this should avoid rebuilds in cmake generated Makefiles when the
+ version number changes (which happens at every commit)
+ [87d2b6578384]
+
+ * source/common/common.cpp, source/common/common.h:
+ common: cleanups, remove unused dumpBuffer routine
+ [11194a1a5917]
+
+ * source/common/CMakeLists.txt:
+ cmake: force i686 arch for wavefront.cpp for GCC (to generate
+ intrinsics)
+ [c3b5d95f11c3]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h, source/common/reference.cpp,
+ source/common/threading.cpp, source/common/threading.h,
+ source/common/threadpool.cpp, source/encoder/frameencoder.cpp,
+ source/test/testpool.cpp:
+ threading: lower case method names
+ [7bdf867f5565]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/common/reference.cpp,
+ source/common/threadpool.cpp, source/common/threadpool.h,
+ source/common/wavefront.cpp, source/encoder/encoder.cpp,
+ source/encoder/frameencoder.cpp, source/test/testpool.cpp:
+ threadpool: lower case method names
+ [2724414e4c97]
+
+ * source/test/testpool.cpp:
+ testpool: update to new interfaces
+ [1e0de23fd8cf]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: rename irow to row
+ [ca4ef78851dc]
+
+ * source/encoder/frameencoder.cpp, source/encoder/frameencoder.h:
+ frameencoder: rename m_nrows to m_numRows
+ [0cd64834fc44]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp, source/common/reference.cpp,
+ source/common/reference.h, source/common/threadpool.cpp,
+ source/common/threadpool.h, source/common/wavefront.cpp,
+ source/common/wavefront.h, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h:
+ wavefront: lower case some method names
+ [460e36b39510]
+
+ * source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/common/CMakeLists.txt,
+ source/common/threadpool.cpp, source/common/threadpool.h,
+ source/common/wavefront.cpp, source/common/wavefront.h,
+ source/encoder/CMakeLists.txt, source/encoder/frameencoder.cpp,
+ source/encoder/frameencoder.h, source/encoder/wavefront.cpp,
+ source/encoder/wavefront.h:
+ threadpool: split QueueFrame into own files, rename wavefront to
+ frameencoder
+
+ This commit also removes the un-exposed x265_init_threading()
+ function which would have leaked the thread pool if anyone had used
+ it.
+ [ef1a5aeed45c]
+
+ * source/common/reference.cpp, source/common/threadpool.cpp,
+ source/common/threadpool.h:
+ threadpool: cleanup
+ [1f126e6d3188]
+
+ * source/common/reference.cpp:
+ reference: general cleanup
+ [8e9e65404251]
+
+ * source/common/primitives.cpp:
+ primitives: general cleanup
+ [25dd71fec257]
+
+ * source/common/primitives.h:
+ primitives: more argument cleanups
+ [ac679985a223]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/intrapred.cpp,
+ source/common/primitives.h, source/common/vec/intrapred.inc,
+ source/encoder/compress.cpp, source/test/intrapredharness.cpp,
+ source/test/intrapredharness.h:
+ primitives: rename intra primitive function pointers
+ [f0ed0e012c69]
+
+ * source/common/primitives.h, source/test/intrapredharness.cpp,
+ source/test/intrapredharness.h:
+ primitives: rename intra funcdefs, cleanup hungarian from
+ primitives.h
+ [676b0ce0b073]
+
+ * source/common/primitives.h:
+ primitives: update comment for PartitionFromSizes
+ [45237ca3f80e]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ cleanup dct testbench names
+ [c9bf846287de]
+
+ * source/test/mbdstharness.cpp:
+ one more fixup
+ [e05d5cb444ed]
+
+ * source/test/mbdstharness.cpp:
+ testbench fixup
+ [7ff03b771df4]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/vec/dct.inc,
+ source/test/mbdstharness.cpp:
+ primitives: rename deQuant to dequant
+ [7f9581358d71]
+
+ * source/common/dct.cpp:
+ dct: tweak C reference function names
+ [64a60d981754]
+
+2013-07-08 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ xIDCT32 renamed
+ [c6c2f393542b]
+
+ * source/common/vec/dct.inc:
+ xIDCT16 renamed
+ [6f3e60bfc015]
+
+ * source/common/vec/dct.inc:
+ xIDCT8 renamed
+ [41b0fd84e529]
+
+ * source/common/vec/dct.inc:
+ xIDCT4 renamed to idct4
+ [9f1b4c87102e]
+
+ * source/common/vec/dct.inc:
+ xIDST4 renamed to idst4
+ [96f0f843ce32]
+
+ * source/common/vec/dct.inc:
+ xDCT32 renamed and code cleanup
+ [6b41676cb38e]
+
+ * source/common/vec/dct.inc:
+ xDCT8 renamed and cleanup
+ [9e014c33e51f]
+
+ * source/common/vec/dct.inc:
+ xDCT16 renamed and code cleanup
+ [b339a499aed7]
+
+ * source/common/vec/dct.inc:
+ xDCT4 vector function renamed and code cleanup
+ [60a0b40415c0]
+
+ * source/common/vec/dct.inc:
+ xDST4 renamed and code cleanup
+ [b433892d93bc]
+
+ * source/common/vec/dct.inc:
+ xDeQuant renamed and code cleanup
+ [977e4de578f8]
+
+ * source/common/dct.cpp:
+ xDeQuant renamed to dequant and code cleanup
+ [f4a8ee3589fc]
+
+ * source/common/dct.cpp:
+ xIDCT32_C renamed to idct32_c and code cleanup
+ [ad9fa655dd85]
+
+ * source/common/dct.cpp:
+ xIDCT16_C renamed to idct16_c and code cleanup
+ [6c88b49c9df6]
+
+ * source/common/dct.cpp:
+ xIDCT8_C renamed to idct8_c and code cleanup
+ [628340f39377]
+
+ * source/common/dct.cpp:
+ xIDCT4_C renamed to idct4_c and code cleanup
+ [96ba4ac11c58]
+
+ * source/common/dct.cpp:
+ xIDST4_C renamed to idst4_c and code cleanup
+ [baf12bcf3edb]
+
+ * source/common/dct.cpp:
+ xDCT32_C renamed to dct32_c and code cleanup
+ [f7b83d5d0517]
+
+ * source/common/dct.cpp:
+ xDCT16_C renamed to dct16_c and code cleanup
+ [7b0ef137a4f3]
+
+2013-07-08 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: fixup variable renaming
+ [fcca2928bf47]
+
+ * source/common/intrapred.cpp:
+ intrapred: remove hungarian prefix for file static
+ [ec2b823011be]
+
+ * source/common/pixel.cpp:
+ pixel: cleanup C references
+ [3fa99086d2f5]
+
+ * source/common/vec/pixel16.inc:
+ pixel: use x264 style argument names
+ [a9d1cbda189f]
+
+ * source/common/vec/pixel8.inc:
+ pixel: use x264 style argument names
+ [e0224143803e]
+
+ * source/common/intrapred.cpp:
+ intrapred: finish variable cleanups
+ [1f4cd3821191]
+
+ * source/common/vec/pixel.inc:
+ pixel: remove caps in function arguments, macro white-space cleanups
+ [066d75ab8433]
+
+ * source/common/vec/pixel.inc, source/common/vec/utils.h:
+ pixel: cleanup includes
+ [dd217d262bbf]
+
+ * source/common/vec/pixel.inc:
+ pixel: simplify SET_FUNC_PRIMITIVE_TABLE macro and relocate
+ [44ca2af6c6b9]
+
+2013-07-08 ggopu <ggopu>
+
+ * source/common/intrapred.cpp, source/common/vec/intrapred.inc:
+ IntraPred: Removed Unused Codes and Cleanup the Function names and
+ Hungarian Notations
+ [56eeac8279f3]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel16.inc,
+ source/common/vec/pixel8.inc, source/common/vec/sse.inc:
+ Vector Primitives : Removed hungarian notation
+ [0ba9d8a0ec82]
+
+2013-07-08 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intrapred.inc:
+ intra: fix HIGH_BIT_DEPTH builds
+ [7242d6166f87]
+
+2013-07-08 praveentiwari <praveentiwari>
+
+ * source/common/dct.cpp:
+ xDCT8_C renamed to dct8_c and code cleanup
+ [dc13d07919db]
+
+ * source/common/dct.cpp:
+ xDCT4_C renamed to dct4_c and code cleanup
+ [6030b16d3025]
+
+ * source/common/dct.cpp:
+ xDST4_C renamed to dst4_c and clenup
+ [0cf5a2be157b]
+
+2013-07-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: use mini-GOP sized frame batches with --gops 1 [CHANGES
+ OUTPUTS]
+
+ This changes the cadence slightly, so outputs will change. This also
+ greatly reduces the memory requirements when GOP parallelism is not
+ in use.
+ [30346629dbc4]
+
+2013-07-05 praveentiwari <praveentiwari>
+
+ * source/common/dct.cpp:
+ Cleanup some left hungarian notation left in first commit for
+ xDeQuant
+ [7ee04e912bdd]
+
+ * source/common/dct.cpp:
+ xDeQuant code cleanup
+ [e46a76843569]
+
+ * source/common/dct.cpp:
+ xIDCT32_C code cleanup
+ [92c0f50f7ec9]
+
+ * source/common/dct.cpp:
+ xIDCT16_C code cleanup
+ [712eb60831c0]
+
+ * source/common/dct.cpp:
+ xIDCT8_C code cleanup
+ [f431146891cc]
+
+ * source/common/dct.cpp:
+ xIDCT4_C code cleanup
+ [65517cac4316]
+
+2013-07-05 Deepthi <Deepthi>
+
+ * source/common/common.cpp:
+ Rect option is enabled by default
+ [6b12d890e0e9]
+
+2013-07-05 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: code cleanup
+ [f84fb8dcdf32]
+
+2013-07-05 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter16.inc:
+ Used memory align macro in ipfilter16.inc for compatibility with
+ other compilers.
+ [8543860c3817]
+
+2013-07-05 praveentiwari <praveentiwari>
+
+ * source/common/dct.cpp:
+ xIDST4_C code cleanup
+ [df4bd7c4a4a1]
+
+ * source/common/dct.cpp:
+ xDCT32_C code cleanup
+ [30022ece780f]
+
+ * source/common/dct.cpp:
+ xDCT16_C code cleanup
+ [eee88868ac98]
+
+ * source/common/dct.cpp:
+ xDCT8_C code cleanup
+ [52e9946621cd]
+
+ * source/common/dct.cpp:
+ xDCT4_C code cleanup
+ [8c0bdd83e6dc]
+
+ * source/common/dct.cpp:
+ xDST4_C code cleanup
+ [1f0f735545bf]
+
+ * source/common/vec/dct.inc:
+ partialButterfy32 code cleanup
+ [71ed2bcad90a]
+
+ * source/common/vec/dct.inc:
+ partialButterfly16 code cleanup
+ [a3a0bb7eced1]
+
+ * source/common/vec/dct.inc:
+ partialButterfly8 code clenup
+ [1955cac08ed8]
+
+2013-07-05 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h:
+ TShortYUV : Removed Get*() Method and Moved Member variables private
+ to Public
+ [5149904749c6]
+
+2013-07-05 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ xIDCT32 code cleanup
+ [02973bed3d3c]
+
+ * source/common/vec/dct.inc:
+ xIDCT16 code cleanup
+ [46d7c537f220]
+
+2013-07-05 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h:
+ Backout changeset: TShortYUV
+ [e5eded426f38]
+
+2013-07-05 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ intra and merge in no-rdo latest patch
+ [d492600f757a]
+
+2013-07-04 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter16.inc:
+ Fix for vc10 crash in ipfilter16.inc
+ [bf00c76a537d]
+
+2013-07-02 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h:
+ TShortYUV : Removed all the get() method and moved private data
+ member into Public
+ [5c307e0cd2f5]
+
+2013-07-03 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ xIDCT4 intrinsic code cleanup
+ [133b907bb8ee]
+
+ * source/common/vec/dct.inc:
+ xIDCT8 intrinsic code cleanup
+ [dfa4be3b6bab]
+
+ * source/common/vec/dct.inc:
+ xIDST4 intrinsic code cleanup
+ [e55954ec3be8]
+
+ * source/common/vec/dct.inc:
+ xIDST4 vector code cleanup
+ [bf7dcf1b6cb1]
+
+ * source/common/vec/dct.inc:
+ xDCT32 intrinsic code cleanup
+ [48aa9d0d5d74]
+
+2013-07-03 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter16.inc:
+ Fix for crash in vc9 for IP filter
+ [15ad7154c62f]
+
+2013-07-03 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ xDCT32 vector code cleanup
+ [0ab33d7ffaea]
+
+ * source/common/vec/dct.inc:
+ xDCT16 intrinsic code cleanup
+ [1a70ee3a0be9]
+
+2013-07-02 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ xDCT16 vector code cleanup
+ [31801697cf9b]
+
+2013-07-05 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/common/vec/intrapred.inc:
+ # From 2b989d9a7e9ecf86a592f33c39555cd63dbebd5a Mon Sep 17 00:00:00
+ 2001 # From: Min Chen <chenm003@163.com> # Date: Tue, 2 Jul 2013
+ 16:54:35 +0800 # Subject: [PATCH 3/3] intrapred: IntraAngle33 32x32
+ intrapred: IntraAngle33 32x32
+
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 2 +-
+ source/common/vec/intrapred.inc | 2628
+ ++++++++++++++++++++++++++++++++- 2 files changed, 2628
+ insertions(+), 2 deletions(-)
+ [f1101476cf1c]
+
+2013-07-03 Deepthi <Deepthi>
+
+ * source/common/vec/pixel.inc:
+ Fix for HIGH_BIT_DEPTH enable
+ [209cce8f38be]
+
+ * source/common/vec/pixel.inc, source/common/vec/utils.h:
+ Assert error in pixel.inc resolved
+ [e59400fe1240]
+
+2013-07-02 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ xDCT8 intrinsic code cleaup
+ [57b142b20d91]
+
+2013-07-02 Deepthi <Deepthi>
+
+ * source/common/threadpool.cpp:
+ # From d515ac32f810fe6e6a986862771c85564193ee51 Mon Sep 17 00:00:00
+ 2001 # From: Min Chen <chenm003@163.com> # Date: Mon, 1 Jul 2013
+ 17:45:07 +0800 # Subject: [PATCH 2/3] Disable #pragma in INTEL
+ Compiler Disable #pragma in INTEL Compiler
+ --- source/common/threadpool.cpp | 2 ++ 1 files changed, 2
+ insertions(+), 0 deletions(-)
+ [4ecacec3c8fa]
+
+ * source/common/vec/pixel.inc:
+ # From 8fa0f843e7fcf96f934856e5f0541501f077909a Mon Sep 17 00:00:00
+ 2001 # From: Min Chen <chenm003@163.com> # Date: Tue, 2 Jul 2013
+ 15:57:32 +0800 # Subject: [PATCH 1/3] intrapred: transpose_32x32
+ intrapred: transpose_32x32
+ --- source/common/vec/pixel.inc | 12 +++++++++++- 1 files changed, 11
+ insertions(+), 1 deletions(-)
+ [396712bd0111]
+
+2013-07-02 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ xDCT8 vector code cleanup
+ [4b738b357911]
+
+ * source/common/vec/dct.inc:
+ Removed hungarian notation from xDCT4 intrinsic code
+ [01b2f4e5cbdd]
+
+ * source/common/vec/dct.inc:
+ Removed hungarian notation from xDST4 intrinsic code
+ [c7acbdbd0986]
+
+ * source/common/vec/dct.inc:
+ xDST4 code cleanup
+ [97a2b34abe05]
+
+2013-07-01 praveentiwari <praveentiwari>
+
+ * source/common/vec/dct.inc:
+ Removed hungarian notation and code cleanup for xDeQuant vector code
+ [31e8e201a7ab]
+
+2013-07-01 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/ipfilter.cpp:
+ code cleanup and variable renaming in ipfilter.cpp
+ [1857d23adace]
+
+2013-07-01 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp:
+ Removed hungarian notation and code cleanup for
+ check_xdequant_primitive test code
+ [936c56e589ec]
+
+ * source/test/mbdstharness.cpp:
+ Removed hungarian notation and code cleanup for
+ check_quantaq_primitive test code
+ [65f14e9260f6]
+
+ * source/test/mbdstharness.cpp:
+ Removed hungarian notation and cleanup for check_quant_primitive
+ test code
+ [d47ea60f050f]
+
+2013-07-01 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter8.inc:
+ Removed cliping from vertical filter implementation; observed to be
+ redundant
+ [f72fac178387]
+
+2013-06-30 Steve Borho <steve@borho.org>
+
+ * source/cmake/version.cmake:
+ cmake: remove cache property for X265_VERSION
+
+ This was causing cmake to only check the version when the cmake
+ cache was entirely cleared (usually just once). After this change
+ cmake will update X265_VERSION every time it generates the CLI
+ project.
+ [30c0e5591120]
+
+2013-06-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: ensure lambda per QP does not change [CHANGES OUTPUTS]
+
+ This fixes non-determinism when GOP parallelism is enabled. I think
+ we should just use x264's lambda tables and get rid of all of this
+ logic, but it's too big of a change to make right before I leave for
+ vacation.
+
+ My 1.55 hack attempts to get our compression per-QP close to where
+ it was before the change.
+ [c3953142041c]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/wavefront.cpp,
+ source/encoder/wavefront.h:
+ TEncSearch: configure bitcost estimators at same time as TComRdCost
+
+ This ensures the lambdas used for RD cost are always in sync with
+ the bit costs
+ [15f993eceb4b]
+
+2013-06-29 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: Enable primitive with Intel Compiler
+ --- source/common/vec/intrapred.inc | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [b0d55cc8161e]
+
+2013-06-28 Steve Borho <steve@borho.org>
+
+ * .hgtags:
+ Added tag 0.1 for changeset 99fab2ef92be
+ [e13a79c5ea45]
+
+ * source/common/vec/ipfilter.inc:
+ VC9 crashes running filterHorizontalMultiplaneExtend in release
+
+ The test outright fails in debug, but doesn't crash
+ [99fab2ef92be] [0.1]
+
+ * source/encoder/encoder.cpp:
+ encoder: ensure primitives (and ROM) are initialized before
+ x265_check_params
+
+ This might be an issue for API users
+ [c34b079119ab]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/wavefront.cpp,
+ source/encoder/wavefront.h:
+ rename EncodeFrame to FrameEncoder
+ [47f4f559739b]
+
+ * source/common/common.cpp, source/common/common.h,
+ source/encoder/encoder.cpp:
+ common: use g_aucConvertToBit for getMaxCuDepth
+ [47e80c91afaf]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/common/primitives.cpp,
+ source/encoder/encoder.cpp:
+ TEncTop: move ROM management out of TEncTop
+
+ Eventually we will want to allow more than one TEncTop in a process
+ [1b4c93071203]
+
+ * source/Lib/TLibCommon/TComRom.cpp:
+ TComRom: make initROM and destroyROM safe for cycled calls
+ [aa4402b22049]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: use aligned allocs for temporary interpolation
+ buffers
+
+ Hoping this resolves the problems found with 32bit heap corruption.
+ [3b923c5e34ee]
+
+ * source/common/common.cpp:
+ vc9 requires unambigous casts for log() arguments
+ [c31d63feaf21]
+
+ * source/common/common.cpp:
+ gcc requires math.h for log()
+ [82b80c7a3ebc]
+
+ * source/common/vec/ipfilter.inc:
+ ipfilter: disable vector version of filterHmulti
+ [12036d016834]
+
+ * source/common/reference.cpp:
+ reference: remove obsolete code
+ [972659be1ea9]
+
+ * source/common/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ ipfilter: white-space nits, no code chage
+ [fc3e18cdca42]
+
+2013-06-28 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter8.inc:
+ Modification on Horizontal filter
+ [010b7590003a]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/reference.cpp, source/common/vec/ipfilter.inc,
+ source/common/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ Merged buffer extension with Horizontal filter; integrated with
+ encoder
+ [f9cf63bae785]
+
+2013-06-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: Always use IDR decoder refresh type
+ [e025b15b8856]
+
+2013-06-28 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Test code for quantaq and quant functions.
+ [c5b3ab055087]
+
+ * source/common/vec/dct.inc:
+ Vector code for quantaq and quant functions.
+ [96e5fa2a60cd]
+
+ * source/common/dct.cpp:
+ Replaced uint64_t with int in quantaq_C and quant_C functions,
+ tested with BasketballDrive.
+ [4257f9931e27]
+
+2013-06-28 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/common/common.h,
+ source/encoder/encoder.cpp, source/x265.h, source/x265opts.h:
+ Removed tuQTMaxLog2Size and tuQTMinLog2Size parametr from CLI option
+ [6f0059abaf51]
+
+ * source/common/common.cpp, source/x265.h, source/x265opts.h:
+ Removed maxCUDepth parameter from CLI option
+ [e052ebcb13d5]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: improve comment about determining where the second I frame
+ will be
+ [c79ed90edca5]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h, source/x265opts.h:
+ x265: add --bframes/-b parameter to select B GOP structure
+ [d9cf2ba5e957]
+
+ * source/encoder/encoder.cpp:
+ encoder: round keyframeInterval after establishing GOP structure
+
+ This prevents 30Hz video from accidentally triggering our -i32 B
+ frame hack
+ [83d6f513ba93]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: free motion reference when picture is no longer
+ referenced
+
+ This is a stop-gap fix to the enourmous memory requirements of GOP
+ level parallelism. It would be better to re-use these structures
+ instead of allocing them every time.
+ [10a9bc997966]
+
+2013-06-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: nits
+ [57a074870b71]
+
+ * source/Lib/TLibCommon/TComPicYuv.h:
+ TComPicYuv: remove obsolete member function definition
+ [f1ffad55ce94]
+
+ * source/common/reference.cpp, source/encoder/wavefront.cpp:
+ thread: add serial code-paths for job provider if thread pool is not
+ available
+ [fe6020943bd0]
+
+2013-06-27 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ intrapred: Active code IntraAngle33 16x16
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 14 ++------------ 1 files
+ changed, 2 insertions(+), 12 deletions(-)
+ [aa95488eaa2d]
+
+ * source/common/vec/pixel.inc:
+ pixel: fix bug in Transpose 16x16
+ --- source/common/vec/pixel.inc | 76
+ +++++++++++++++++++++--------------------- 1 files changed, 38
+ insertions(+), 38 deletions(-)
+ [265e7e0333c4]
+
+2013-06-27 sumalatha <sumalatha>
+
+ * source/encoder/compress.cpp:
+ Fixed the Hash error with -no-rdo ON
+ [3b93256a844b]
+
+2013-06-26 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: don't flush two GOP coders in one call
+ [5b42d1c900b4]
+
+ * source/common/threadpool.cpp:
+ threadpool: tweak for thread deletion loop
+ [9fab0eb1538a]
+
+ * source/common/threadpool.cpp:
+ threadpool: more explicit shutdown code
+ [d12f113a1e42]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: fix a small memory leak
+ [82d95660132f]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: white-space cleanup
+ [7bacf11b7f2e]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: allow GOP coder execution to overlap execution
+
+ Finally.. GOP parallelism.
+ [80d6e85cdd03]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: do not flush if no pics are queued, prevents deadlock
+ [d064340c3227]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ cleanup: move SCALING_LIST_OUTPUT_RESULT to TEncCavlc
+ [f89b453bc412]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ cleanup: remove unused REMOVE_SAO_LCU_ENC_CONSTRAINTS_3
+ [90a69b42da1f]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TypeDef.h:
+ cleanup: move DISABLING_CLIP_FOR_BIPREDME to TComYuv, add comment
+ [8685e99751bc]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ cleanup: move PRINT_RPS_INFO to TEncCavlc
+ [2adc62db4d55]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: move VERBOSE_RATE define to TEncGOP
+ [518c70801520]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: add a worker thread to process keyframe intervals
+ [93ca3f5bafec]
+
+ * source/common/TShortYUV.cpp, source/common/TShortYUV.h:
+ TShortYUV: remove or correct comment lines
+ [7f49c1a3ffcc]
+
+ * source/common/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: move HM headers into their own source group in VC
+ [cfa1897d63eb]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: remove deleted compress.h from encoder project
+ [c7c32a64931f]
+
+ * source/encoder/compress.cpp:
+ compress: remove warning disable pragmas, fix warnings
+ [8055fd9930c2]
+
+ * source/encoder/compress.h:
+ compress: remove unused header
+ [a1831863c966]
+
+ * source/encoder/compress.cpp:
+ compress: uncrustify
+ [6492774bd3e5]
+
+ * source/encoder/compress.cpp:
+ compress: remove dead variables
+ [b5bbcf9da827]
+
+ * source/common/primitives.h, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h:
+ primitives: fix symbol collision
+ [b3539e001ea4]
+
+2013-06-26 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ inrapred: generate all of 33 IntraAngle 16x16 modes once (vc9-win32
+ only)
+
+ --- source/common/vec/intrapred.inc | 4151
+ ++++++++++++++++++++++++++++++++++++++- 1 files changed, 4148
+ insertions(+), 3 deletions(-)
+ [3977edfa3ee1]
+
+ * source/common/vec/intrapred.inc:
+ cleanup: Remove unused debug code
+ --- source/common/vec/intrapred.inc | 3 --- 1 files changed, 0
+ insertions(+), 3 deletions(-)
+ [60955ad48ef9]
+
+2013-06-27 Mandar Gurav <Mandar Gurav>
+
+ * source/common/vec/intrapred.inc:
+ primitves: 8 bit : PredIntraAng8x8 function table implementation
+ [dc1663eaf7f7]
+
+2013-06-26 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TrComQuant: replaced original code with primitive calls
+ [3e60dfba74c9]
+
+ * source/common/dct.cpp:
+ Separated the logic block of code from xQuant function as two
+ functions for optimization
+ [60a4710e5fc3]
+
+ * source/common/primitives.h:
+ primitives: Added function pointer types for quant
+ [e22c26d712a1]
+
+2013-06-26 sumalatha <sumalatha>
+
+ * source/encoder/compress.cpp:
+ commit : added log for printing costs for each partSize
+ [c23b800f04e5]
+
+2013-06-26 praveentiwari <praveentiwari>
+
+ * source/common/primitives.h:
+ White-space fixes in primitives.h
+ [e48f23e628df]
+
+ * source/common/dct.cpp:
+ Uncrustyfied dct.cpp file
+ [cfebb7774024]
+
+2013-06-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TypeDef.h:
+ Enabled clipping for Bframes in ME as a fix for 8bpp-16bpp mismatch.
+ [9f6a0fb1947a]
+
+2013-06-26 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ White-space fixes in TComTrQuant.cpp file
+ [12322d9f0b18]
+
+2013-06-26 Mandar Gurav <Mandar Gurav>
+
+ * source/common/vec/intrapred.inc:
+ primitves: 8 bit : PredIntraAng4x4 function table implementation
+ [f7c7c5e792dc]
+
+2013-06-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: fix signed/unsigned comparison
+ [ecc9ce8993c2]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTOP: small perf tweak for --gops 1
+ [f5605a0579d4]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncGOP: move access unit buffering to TEncGOP
+ [0ff90feebcbe]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: prune unused headers, this stuff has all been moved
+ downstream
+ [83fc7f016b60]
+
+ * source/common/CMakeLists.txt, source/common/IntraPred.cpp,
+ source/common/intrapred.cpp:
+ cmake: lower-case the intrapred.cpp filename
+ [f8f794c5e611]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/mv.h:
+ mv: remove getHor() and getVer() compatibility methods
+ [9607556126e3]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp, source/common/mv.h:
+ mv: remove set() compatibility method
+ [a0d858f0462e]
+
+ * source/Lib/TLibEncoder/TEncPic.cpp:
+ TEncPic: use MAX_DOUBLE from CommonDefs.h
+ [3310b6859a26]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp, source/common/mv.h:
+ mv: remove setHor(), SetVer() compatibility methods
+ [1807e4e93e87]
+
+ * source/common/CMakeLists.txt, source/common/mv.h,
+ source/encoder/CMakeLists.txt, source/encoder/mv.h:
+ mv: move mv.h from encoder/ to common/
+ [309e04c35ea4]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComMv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ common: replace TComMV with x265::MV everywhere
+ [8753803f57e1]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTOP: simplify logic
+ [d570ee7646f0]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTOP: remove incorrect comment
+ [589dbbf841d1]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncPreanalyzer.cpp,
+ source/Lib/TLibEncoder/TEncPreanalyzer.h:
+ TEncPic: make TEncPreanalyzer::xPreanalyze a method of TEncPic
+ [06de0a8f273d]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncGOP: move all picture prep work from TEncTop to TEncGOP
+ [74cfd68d431f]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: do not use accessors for member variables
+ [60c1cc2e014a]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove m_cpbRemovalDelay, which was never read
+ [9601ff4148b8]
+
+ * source/encoder/encoder.cpp:
+ encoder: set progressive flag, since we only support progressive
+ sources
+ [a041ffd6c0ad]
+
+ * source/encoder/encoder.cpp:
+ encoder: allow CRA mode when gopNumThreads is 1, add some comments
+ [31f7ebda9f97]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ TEncTOP: allow -i32 --gops 2, but detect and avoid end-of-stream
+ crashes
+ [180e91b6bbf4]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ Backed out changeset: fdb2ffe6b29b
+ [05b082d276f4]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ TypeDef: remove unused DISABLING_CLIP_FOR_BIPREDME
+ [fdb2ffe6b29b]
+
+ * source/encoder/encoder.cpp:
+ encoder: repair open-gop again
+ [0cd6fd8d8c39]
+
+ * source/encoder/encoder.cpp:
+ encoder: fix keyframe interval before InitializeGOP()
+ [0f06e7b6d298]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: fix the first I frame (temporary fix)
+ [744e04edb379]
+
+ * source/encoder/encoder.cpp:
+ encoder: remove redundant assignments
+ [3df972c1a6f8]
+
+ * source/encoder/encoder.cpp:
+ encoder: enforce keyframe as multiple of GOPSize
+ [57919ce774e1]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTOP: remove unused m_vRVM_RP vector
+ [5da286a92f5a]
+
+2013-06-25 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp:
+ Fixed size issue in xDeQuant test code
+ [fe4b745a0332]
+
+ * source/test/mbdstharness.cpp:
+ uncrustified mbdstharness.cpp file
+ [542f3ef09ca1]
+
+2013-06-25 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Included merge mode for FMD = ON. Changed the
+ xComputeCostMerge2Nx2N() to calculate the SATD cost and decide the
+ mode based on that.
+ [89d3a8de1f47]
+
+2013-06-25 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: Enable primitive since VC9 haven't this bug
+ --- source/common/vec/intrapred.inc | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [e335b5a9ddca]
+
+2013-06-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ TEncGOP: temporary workarounds for --keyint 32; will finish tomorrow
+ [f3c41ba3423b]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncGOP: ugly hack for our ugly --keyint 32 hack
+
+ This allows the encoder to survive up till the last mini-GOP, still
+ debugging
+ [1fb8e850e893]
+
+ * source/encoder/encoder.cpp:
+ encoder: switch to IDR decoder refresh mode, more GOP parallelism
+ friendly
+ [70a215f4e0fa]
+
+2013-06-24 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTOP: remove special cases for first keyframe interval
+ [ba72bbb6ec31]
+
+ * source/encoder/encoder.cpp:
+ encoder: disable GOP parallelism if open GOP configured
+ [7dadd3f6b861]
+
+ * source/encoder/encoder.cpp:
+ encoder: add a comment for default keyframe interval
+ [b5e283a6703e]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp:
+ encoder: change default keyframe interval from fixed value (16) to 1
+ second
+ [7a2555036e8d]
+
+ * source/common/common.cpp, source/encoder/encoder.cpp:
+ encoder: consolidate logic which validates feature combinations
+ [cfc53bb18e32]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTOP: nuke xCalculateRVM() and RVM_VCEGAM10_M
+ [7d8bb458e541]
+
+ * source/common/x86/README.txt:
+ asm: add a couple more notes to the README
+ [76f7fc3b8804]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: round-robin cycle through GOP encoders
+ [4cd8f659cee2]
+
+ * source/common/IntraPred.cpp, source/common/dct.cpp,
+ source/common/ipfilter.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/blockcopy.inc,
+ source/common/vec/dct.inc, source/common/vec/ipfilter16.inc,
+ source/common/vec/ipfilter8.inc, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/x86/asm-primitives.cpp:
+ primitve: remove CDECL globally
+ [5bc43fd3c39b]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/common/common.cpp,
+ source/encoder/encoder.cpp, source/x265.h, source/x265opts.h:
+ x265: introduce gop thread count parameter, currently mostly ignored
+ [1ccb2a5664e2]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncGOP: encode frames in keyframe interval batches
+
+ This makes progress reports even more infrequent
+ [f559317ff736]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTOP: 50% less hungarian, remove or correct wrong comments
+ [1e7f5c80ee9f]
+
+2013-06-24 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Added support for bipred, but 8bpp, 16bpp mismatch
+ [4d95584be40d]
+
+2013-06-21 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ TComPrediction: fixes for biprediction
+
+ Restructured xPredInterBi. Added xPredInterluma/chromablk/Uni
+ functions with TShortYuv argument for bipred
+ [254a52d53a2f]
+
+2013-06-24 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: nits
+ [a240b7530a29]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: stub in a processKeyframeInterval() method
+
+ This is the next step to GOP parallelism. 1) Process an entire
+ keyframe interval of frames at one go; ensure the picture lists can
+ deal with this. 2) Add multiple TEncGOP encoders and round-robin
+ them to encode GOPs. 3) Finally add threading so they work in
+ unison.
+ [38efcc5dcbf5]
+
+ * source/common/vec/intrapred.inc:
+ intra: work around VC10 and VC11 Win32 compiler bugs
+ [a1de9e7f8ee7]
+
+ * source/common/ipfilter.cpp, source/common/vec/intrapred.inc,
+ source/common/vec/pixel.inc:
+ gcc: fix warnings reported by GCC
+ [0e83bb44b8e0]
+
+2013-06-23 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/encoder/encoder.cpp,
+ source/x265.cpp, source/x265.h, source/x265opts.h:
+ x265: remove ui/i hungarian prefixes from x265_param_t, standardize
+ bool flags
+ [7f6b0ae32985]
+
+2013-06-24 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Merge
+ [d45053ca8e2b]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [a609e11dc6a5]
+
+2013-06-22 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Adding in entropy measurements to nordo after encode residual.
+ [628313e72a1d]
+
+ * source/encoder/compress.cpp:
+ Removing merge modes for now; need more debugging
+ [9e95d8d524a9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Removing an erroneous cost calculation
+ [4239f6bf06d7]
+
+2013-06-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp:
+ encoder: fix open-gop behavior
+ [30b142f02135]
+
+ * source/common/common.cpp:
+ common: fixups for keyframe interval
+ [cdb337e59eb0]
+
+2013-06-22 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: remove more dead code
+ [e76879d77757]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: nits
+ [1aec16cc83ee]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ TEncCU: remove dead code paths
+ [9df420362f0b]
+
+2013-06-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix 16bpp build
+ [8e8edbaa351b]
+
+ * source/common/vec/pixel.inc:
+ pixel: fix typo in build define
+ [f20bccea941b]
+
+2013-06-22 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc,
+ source/test/pixelharness.cpp:
+ pixel: simplify and optimize residual and recon primitives
+ [0b1625fd6625]
+
+ * source/VectorClass/vectori128.h:
+ vector: nit
+ [67b7bf7ec06c]
+
+2013-06-22 Min Chen <chenm003@163.com>
+
+ * source/common/vec/ipfilter8.inc:
+ interp: [review] PACKUSWB included clip
+ --- source/common/vec/ipfilter8.inc | 6 ------ 1 files changed, 0
+ insertions(+), 6 deletions(-)
+ [f1a23b5dfaec]
+
+2013-06-22 Steve Borho <steve@borho.org>
+
+ * source/common/vec/ipfilter-avx.cpp, source/common/vec/ipfilter-
+ avx2.cpp, source/common/vec/ipfilter-sse2.cpp, source/common/vec
+ /ipfilter-sse3.cpp, source/common/vec/ipfilter-sse41.cpp,
+ source/common/vec/ipfilter-sse42.cpp, source/common/vec/ipfilter-
+ ssse3.cpp, source/common/vec/ipfilter.inc:
+ ipfilter: move logic from cpp files to ipfilter.inc
+ [a58b34f95d5a]
+
+2013-06-22 Min Chen <chenm003@163.com>
+
+ * source/common/vec/pixel.inc:
+ pixel: intrinsic Tranpose 16x16
+ --- source/common/vec/pixel.inc | 83
+ ++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 82
+ insertions(+), 1 deletions(-)
+ [0d005f8ba719]
+
+ * source/common/vec/pixel.inc:
+ pixel: intrinsic Tranpose 8x8
+ --- source/common/vec/pixel.inc | 45
+ +++++++++++++++++++++++++++++++++++++++++- 1 files changed, 43
+ insertions(+), 2 deletions(-)
+ [1d7ab6944679]
+
+2013-06-22 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h, source/test/pixelharness.cpp:
+ primitives: rename NUM_BLOCKS to NUM_SQUARE_BLOCKS, use for intra
+ and transpose
+ [1ac63a9e6dea]
+
+2013-06-22 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc:
+ pixel: intrinsic Tranpose 4x4
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 9 +------
+ source/common/pixel.cpp | 19 +++++++++++++++
+ source/common/primitives.h | 2 + source/common/vec/pixel.inc | 41
+ +++++++++++++++++++++++++++++++++ 4 files changed, 63 insertions(+),
+ 8 deletions(-)
+ [9e07e835929a]
+
+2013-06-22 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: wrap pragma warning with #if _MSC_VER
+ [f262575efbe4]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix cost adjustments following HM ME
+ [ae98c873c26e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: simplify full search
+ [23c6b755811e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ ppa: move motion search event to a higher level
+ [0fede11b81e5]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: catch --keyint -1 sanely
+ [fd14b3dd6986]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: nit
+ [a4cbe5f4cda3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.cpp,
+ source/x265.h, source/x265opts.h:
+ x265: expose HM's full search as a CLI option --me 5
+ [9be42d1878ee]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove more cruft
+ [1035b13af978]
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComRdCost: remove unused uiComp
+ [0e60557dfa5a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove setDistParamComp
+ [e31e6df77aba]
+
+2013-06-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: cleanups
+ [895b3f846a08]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: move predictor fetching earlier in inter pred
+
+ This allows us to merge xTZSearch into xPatternSearchFast
+ [5b79dc7d982d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: hoist our optimized ME up a function layer
+
+ Avoid a lot of useless overhead, simplify how ME is called
+ [e29623267bbe]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: simplify xSetSearchRange
+ [cd45b4dd8e73]
+
+ * source/encoder/motion.cpp, source/encoder/mv.h:
+ MV: do not allow implicit creation from int
+ [2fbda9cade34]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nits
+ [609f5607d1a5]
+
+ * source/common/common.cpp:
+ common: do not allow weighted prediction with optimized ME
+
+ This prevents having to check for this deep within the encoder
+ [a66478706e61]
+
+2013-06-21 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/common/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ [x265] [PATCH] inrapred: generate all of 33 IntraAngle-8x8 modes
+ once
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 2 +-
+ source/common/vec/intrapred.inc | 1017
+ ++++++++++++++++++++++++++++++++- source/test/intrapredharness.cpp |
+ 3 +- 3 files changed, 1019 insertions(+), 3 deletions(-)
+ [851fe263dabf]
+
+2013-06-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove last Double uses from TEncSearch
+ [de1044dfbaf1]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused getLambda() method
+ [3fe92111bc85]
+
+2013-06-20 Min Chen <chenm003@163.com>
+
+ * source/common/IntraPred.cpp, source/common/vec/intrapred.inc,
+ source/test/intrapredharness.cpp:
+ intrapred: 1.fix C model when size more than 8, 2.fix buffer
+ overflow in testbench
+ --- source/common/IntraPred.cpp | 40
+ ++++++++++++++++++-------------------
+ source/common/vec/intrapred.inc | 9 ++-----
+ source/test/intrapredharness.cpp | 9 +++---- 3 files changed, 26
+ insertions(+), 32 deletions(-)
+ [14cc0e972566]
+
+2013-06-21 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Filtervertical-short-short and pel-short to support bipred
+ [cfea4bf27fa8]
+
+2013-06-21 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Cleanup: compress.cpp
+ [0abefa6bc340]
+
+ * source/encoder/compress.cpp:
+ Removing incorrect null checks
+ [90965b5b4da8]
+
+ * source/encoder/compress.cpp:
+ Branch decision taken only if CU does not contain boundary. Always
+ true otherwise.
+ [bec0647b8d3f]
+
+ * Merge
+ [20caf72adaac]
+
+ * source/encoder/compress.cpp:
+ Replacing SATD computations with blkcpy and then satd
+ [6c2368a2a98a]
+
+2013-06-21 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: nits
+ [3a080c7ba1d0]
+
+ * source/common/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: separate HM headers from the cpp files for convenience
+ [fa1a70530abd]
+
+ * source/common/pixel.cpp:
+ pixel: refix 16bpp builds
+ [ab01a775ab83]
+
+ * source/x265.cpp:
+ x265: fix bitrate progress reports
+ [bced30963f15]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use member SPS and PPS structs, stop refetching slice
+ [ae82def2da71]
+
+2013-06-20 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: do not override new SSE2 ASM functions with slower templated
+ XOP calls
+ [79231017d0da]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: nits
+ [575f21816974]
+
+ * source/CMakeLists.txt:
+ cmake: assign value to X86_64 when defined
+ [5de7df75a0fe]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: move a couple of methods
+ [fc339086c88d]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: nits
+ [5de89ceadeeb]
+
+ * source/encoder/bitcost.cpp, source/encoder/bitcost.h:
+ bitcost: use more accurate fractional bit cost accounting from x264
+ [07015bbe306b]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: drop SUBSAMPLE_SAD [CHANGES OUTPUTS]
+
+ The complexity outweighed the benefits
+ [d5e5d3812eaa]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: fix comment
+ [cadd2ff53d3c]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: fix clamp of bitcost to 16bits
+
+ The typecast to uint16_t was just wrong
+ [6557f5e10c86]
+
+ * source/common/reference.cpp:
+ reference: cleanup worker function
+ [2c5d35632fea]
+
+ * source/common/vec/ipfilter-avx.cpp, source/common/vec/ipfilter-
+ avx2.cpp, source/common/vec/ipfilter-sse2.cpp, source/common/vec
+ /ipfilter-sse3.cpp, source/common/vec/ipfilter-sse41.cpp,
+ source/common/vec/ipfilter-sse42.cpp, source/common/vec/ipfilter-
+ ssse3.cpp, source/common/vec/ipfilter8.inc:
+ ipfilter: use memcpy to extend top/bottom rows
+ [f27f99b01e66]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: fix indention (all white-space changes)
+ [9ab99c57b42a]
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: fix spacing
+ [e6ef40975e4a]
+
+ * source/common/pixel.cpp:
+ pixel: fix sa8d_16x16 C primitive
+ [1cec6b092506]
+
+2013-06-20 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/reference.cpp, source/common/vec/ipfilter.inc,
+ source/common/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ Vertical filter with Border extend
+ [fea6feb1152d]
+
+2013-06-20 Min Chen <chenm003@163.com>
+
+ * source/test/intrapredharness.cpp:
+ intrapred: adjust debug info format
+ --- source/test/intrapredharness.cpp | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [367a3f300210]
+
+ * source/test/testbench.cpp:
+ testbench: fix logic on option --cpuid
+ [4054533a85e9]
+
+2013-06-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: ensure pic list contains at least two TComPic
+ [cadcbb46ffd9]
+
+2013-06-20 Min Chen <chenm003@163.com>
+
+ * source/common/vec/dct.inc:
+ dct: disable optimize version dct in 16bpp, all of intermediate
+ value must be 32-bits
+ --- source/common/vec/dct.inc | 5 +++++ 1 files changed, 5
+ insertions(+), 0 deletions(-)
+ [7135a13cf3a5]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/IntraPred.cpp,
+ source/common/primitives.h, source/common/vec/intrapred.inc,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ intrapred: implement IntraAngle mode to all size
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 5 ++-
+ source/common/IntraPred.cpp | 22 ++++++++++-------
+ source/common/primitives.h | 2 +- source/common/vec/intrapred.inc |
+ 39 +++++++++++++++++------------- source/test/intrapredharness.cpp |
+ 41 +++++++++++++++++++------------- source/test/intrapredharness.h |
+ 2 +- 6 files changed, 64 insertions(+), 47 deletions(-)
+ [12ef1f072327]
+
+2013-06-20 Mandar Gurav <Mandar Gurav>
+
+ * source/common/pixel.cpp, source/test/testbench.cpp:
+ primitives: some macro implementation to improve readabilty of code.
+ [f97119251704]
+
+2013-06-20 Steve Borho <steve@borho.org>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel.h:
+ asm: use more generic 64bit build define
+ [6df10ad11f4a]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: prune trailing white-space
+ [094b99a737b6]
+
+2013-06-20 Mandar Gurav <Mandar Gurav>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ primitives: asm: satd: fix for 32 bit issue
+ [18b0bc26f3a0]
+
+2013-06-20 Deepthi <Deepthi>
+
+ * Merge
+ [17ddca539510]
+
+ * source/common/common.cpp:
+ Print rdo if enabled, no-rdo if disabled
+ [8454a96806ff]
+
+2013-06-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: simplify POC search
+ [e926b2d50cee]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove unused variable
+ [bbf02b319ed7]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncGOP: move all picture management to TEncGOP
+ [276ab8776f48]
+
+ * source/x265.cpp:
+ x265: do not ask for recon pictures if no output file was requested
+ [48d22ee16225]
+
+ * source/encoder/encoder.cpp:
+ encoder: consider output NALs even if iNumEncoded is zero
+ [636674cc5f50]
+
+2013-06-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncGOP: move frame list from TEncTOP to TEncGOP
+ [abfa8a5a1ebc]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/wavefront.cpp,
+ source/encoder/wavefront.h:
+ TEncGOP: move SPS, PPS to TEncGOP
+
+ These structures are modified by compressGOP and thus cannot be
+ encoder singletons. The init functions are kept in TEncTOP since
+ they are tightly coupled with TEncCfg and TEncTOP
+ [43a210488e02]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ make a pile of get*() methods const
+ [79d8bdd3612f]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncGOP: move getReferencePictureSetIdxForSOP and
+ selectReferencePictureSet
+ [998ee354be96]
+
+2013-06-19 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: correct HIGH_BIT_DEPTH fault
+ --- source/common/vec/intrapred.inc | 2 +- 1 file changed, 1
+ insertion(+), 1 deletion(-)
+ [bfde7f16c723]
+
+2013-06-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h:
+ TEncGOP: directly return references to encoder's recon frames, do
+ not copy
+
+ This is all prep-work for GOP threading, but it doesn't hurt to
+ remove a frame copy from the main loop. Now if the user wants no
+ recon frames there is no overhead associated in maintaining them.
+ [519b62011b23]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/x265.cpp, source/x265.h:
+ x265: change public API slightly to allow batch reconstructed frame
+ delivery
+ [45b31cb09114]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: nits
+ [63afd266e232]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: return TComPic from xGetNewPicBuffer, don't use reference
+ args
+ [770b306f1163]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ Backed out changeset: 8af5a9eb198c
+
+ This backs out the lambda change from Double to UInt64, but leaves
+ the typo and other white-space fixes in place. This change ended up
+ being a net performance loser. The double->UInt64 conversions in the
+ middle of the tight loop were slower than the savings from using
+ integer math.
+
+ We need an effective way to perform the cost scaling using integer
+ math in order to use integers throughout this function.
+ [eba9a84e9054]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: reduce number of double<->int conversions
+ [092152f58712]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ TComTrQuant: switch lambda from Double to UInt64 [CHANGES OUTPUTS]
+ [8af5a9eb198c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.h:
+ motion: add bufSA8D() method, so sa8d and satd are both available
+ [76449efed663]
+
+2013-06-19 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ Included the merge mode for selecting the mode for xCompressInterCU
+ [94d7d31fc312]
+
+2013-06-20 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: Fix unused variables.
+
+ error: statement has no effect [-Werror=unused-value]
+ [bb78ee5841f2]
+
+2013-06-19 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: move RDO settings together
+ [8039746d5cb0]
+
+ * source/common/common.cpp:
+ common: output logs to stderr consistently
+ [d2a568b0c078]
+
+2013-06-20 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: Fix compile error due to char array subscript.
+
+ Sample compile errors in Linux64/GCC4.8.1:
+
+ $HEVC/source/Lib/TLibEncoder/TEncSearch.cpp:2134:75: error: array
+ subscript has type ‘char’ [-Werror=char-subscripts] x265::pixelcmp
+ sa8d = x265::primitives.sa8d[g_aucConvertToBit[uiWidth]]; ^
+ $HEVC/source/Lib/TLibEncoder/TEncSearch.cpp: In member function
+ ‘Void TEncSearch::estIntraPredQT(TComDataCU*, TComYuv*, TComYuv*,
+ TShortYUV*, TComYuv*, UInt&, Bool)’:
+ $HEVC/source/Lib/TLibEncoder/TEncSearch.cpp:2206:79: error: array
+ subscript has type ‘char’ [-Werror=char-subscripts] x265::pixelcmp
+ sa8d = x265::primitives.sa8d[g_aucConvertToBit[uiWidth]]; ^
+ [dd5dd47e17f4]
+
+ * source/common/IntraPred.cpp:
+ intrapred: Fix unused global variable.
+
+ Compile error in Linux64/GCC4.8.1:
+
+ $HEVC/source/common/IntraPred.cpp:252:15: error:
+ ‘{anonymous}::g_aucIntraFilterType’ defined but not used [-Werror
+ =unused-variable] unsigned char g_aucIntraFilterType[][35] = { ^
+ [ac3e7ab6cdc0]
+
+2013-06-19 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: Fix reordered initialization list.
+
+ Sample compile errors in Linux64/GCC4.8.1:
+
+ $HEVC/source/Lib/TLibCommon/TComPrediction.h: In constructor
+ ‘TComPrediction::TComPrediction()’:
+ $HEVC/source/Lib/TLibCommon/TComPrediction.h:80:12: error:
+ ‘TComPrediction::m_iLumaRecStride’ will be initialized after
+ [-Werror=reorder] Int m_iLumaRecStride; ///< stride of
+ #m_pLumaRecBuffer array ^
+ $HEVC/source/Lib/TLibCommon/TComPrediction.h:79:12: error: ‘Pel*
+ TComPrediction::m_pLumaRecBuffer’ [-Werror=reorder] Pel*
+ m_pLumaRecBuffer; ///< array for downsampled reconstructed luma
+ sample ^ $HEVC/source/Lib/TLibCommon/TComPrediction.cpp:60:1: error:
+ when initialized here [-Werror=reorder]
+ TComPrediction::TComPrediction() ^ In file included from
+ $HEVC/source/Lib/TLibCommon/TComPrediction.cpp:39:0:
+ $HEVC/source/Lib/TLibCommon/TComPrediction.h:79:12: error:
+ ‘TComPrediction::m_pLumaRecBuffer’ will be initialized after
+ [-Werror=reorder] Pel* m_pLumaRecBuffer; ///< array for downsampled
+ reconstructed luma sample ^
+ $HEVC/source/Lib/TLibCommon/TComPrediction.h:62:15: error: ‘Pel*
+ TComPrediction::m_piPredBuf’ [-Werror=reorder] Pel* m_piPredBuf; ^
+ $HEVC/source/Lib/TLibCommon/TComPrediction.cpp:60:1: error: when
+ initialized here [-Werror=reorder] TComPrediction::TComPrediction()
+ ^
+ [f8d043a4f6b4]
+
+ * source/common/IntraPred.cpp, source/common/vec/intrapred.inc:
+ intrapred: Fix unused variables.
+
+ Sample compile errors in Linux64/GCC 4.8.1:
+
+ $HEVC/source/common/vec/intrapred.inc:4677:13: error: statement has
+ no effect [-Werror=unused-value] (pLeft1); ^
+ $HEVC/source/common/vec/intrapred.inc:4678:14: error: statement has
+ no effect [-Werror=unused-value] (pAbove1); ^
+ [e373dbe02018]
+
+2013-06-19 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/common/vec/intrapred.inc:
+ inrapred: generate all of 33 IntraAngle-4x4 modes once
+ [1353e6681c7d]
+
+2013-06-19 Mandar Gurav <Mandar Gurav>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ primitives: asm: update: implementation of satd(sse2)
+ [762b53ecba5a]
+
+2013-06-18 Mandar Gurav <Mandar Gurav>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ primitives: asm: implementation of satd_16x12(sse2)
+ [594020d9d19b]
+
+2013-06-19 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/vec/intrapred.inc, source/encoder/motion.cpp:
+ 16bpp fixes
+ [67342f25244e]
+
+2013-06-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ TComTrQuant: remove wrong comments, cleanup funcdefs, move inlines
+ to header
+ [6ecc4a1ca26c]
+
+2013-06-19 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Cleanuo: Removing swapCU
+ [ab93e542c0a4]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ Cleanup: Removing copyCU
+ [c46b9a8ead56]
+
+ * source/CMakeLists.txt:
+ Removing FMD from cmake options.
+ [332b3145d9be]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ Replacing all FMD macros with cfg file option
+ [77b91dd88829]
+
+ * source/encoder/encoder.cpp:
+ Set cfg flag to enableRDO CL option.
+ [e0528e455855]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ Adding rdo to cfg structure
+ [49737829b64f]
+
+ * source/common/common.cpp, source/x265.h, source/x265opts.h:
+ Add rdo/no-rdo to command line interface
+ [00a331ad69a4]
+
+2013-06-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: move getCost closer to calcRdSADCost, to show how they
+ are related
+ [c79263efd38d]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused calcHAD() method
+ [401167498626]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost: fix a typo in a comment
+ [ee06dc714841]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused overload of setDistParam
+ [08310bc6f97d]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused overload of setDistParam
+ [1ba3c30c42c2]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: move bufSATD back into motion.h and declare both inline
+ [f1d34f7a9d9b]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/x86/asm-primitives.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/test/pixelharness.cpp:
+ pixel: add sa8d_inter primitives to match TComRdCost::calcHAD()
+
+ Now we can pick between sa8d and satd at runtime via a pointer
+ selection
+ [b4f99ece0aeb]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use motion.bufSAD instead of m_pcRdCost DistParam
+ [d1604fa4e39e]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: make bufSATD function exactly like TComRdCost::calcHAD()
+ [dec21e1c6ee9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/x86/asm-primitives.cpp,
+ source/test/pixelharness.cpp:
+ primitives: collect sa8d primitives into blocksize array
+ [a21a11f9e1b6]
+
+ * source/common/primitives.h:
+ primitives: fix two wrong comments
+ [4915f80d3cdb]
+
+ * source/encoder/motion.h:
+ motion: add bufSATD method
+ [760aa86a54ba]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove extra indent level; nit
+ [b0d5c4f14d3b]
+
+ * source/common/primitives.cpp:
+ primitives: add rationale for disabling EMMS when ASM is disabled
+ [21b34444026c]
+
+ * source/common/vec/pixel.inc:
+ pixel: cleanup Setup_Vec_PixelPrimitives, remove comments that add
+ no meaning
+ [f1437f97e146]
+
+ * source/common/pixel.cpp:
+ pixel: round up to nearest half before shift, fixes --cpuid 1
+ encodes
+ [4118bc3a68aa]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: use x265_emms() before calculating a row of MV costs, to be
+ safe
+ [5c1de9ce010c]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm-primitives: fix eoln
+ [c56ef1521a07]
+
+ * source/common/primitives.h, source/common/x86/asm-primitives.cpp:
+ Backed out changeset: d9f7525c4adf
+ [c6370b56b1d9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: delay x265_emms() to RDO stage of intra analysis
+ [f0b745956762]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use m_pcRdCost->calcRdSADCost() to avoid doubles in
+ intra analysis
+ [458cdba67699]
+
+2013-06-18 chenm003 <chenm003@163.com unknown>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/IntraPred.cpp,
+ source/common/primitives.h, source/common/vec/intrapred.inc,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ intrapred: framework for generate 33 Angle modes once
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 5 +-
+ source/Lib/TLibCommon/TComPrediction.h | 1 +
+ source/Lib/TLibEncoder/TEncSearch.cpp | 65 +-
+ source/common/IntraPred.cpp | 569 +- source/common/primitives.h | 2
+ + source/common/vec/intrapred.inc | 9409
+ +++++++++++++++--------------- source/test/intrapredharness.cpp | 72
+ + source/test/intrapredharness.h | 4 + 8 files changed, 5179
+ insertions(+), 4948 deletions(-)
+ [e582599ae931]
+
+ * source/common/primitives.h, source/test/intrapredharness.cpp,
+ source/test/intrapredharness.h:
+ intrapred: fix build error after simplify bLeft and bAbove
+ --- source/common/primitives.h | 8 ++++----
+ source/test/intrapredharness.cpp | 26 +++++++++-----------------
+ source/test/intrapredharness.h | 4 ++-- 3 files changed, 15
+ insertions(+), 23 deletions(-)
+ [5fbfc07c8898]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ intrapred: Split DC and Planar from Loop
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 17 ++++++++++++++++- 1
+ file changed, 16 insertions(+), 1 deletion(-)
+ [20e256246d19]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/IntraPred.cpp,
+ source/common/primitives.h, source/common/vec/intrapred.inc:
+ cleanup: remove bLeft and bAbove since HEVC have a reference sample
+ pad, they are always True
+ --- source/Lib/TLibCommon/TComPattern.cpp | 14 ++--
+ source/Lib/TLibCommon/TComPattern.h | 10 +--
+ source/Lib/TLibCommon/TComPrediction.cpp | 33 +++++----
+ source/Lib/TLibCommon/TComPrediction.h | 4 +-
+ source/Lib/TLibEncoder/TEncSearch.cpp | 29 +++-----
+ source/common/IntraPred.cpp | 43 +++---------
+ source/common/primitives.h | 4 +- source/common/vec/intrapred.inc |
+ 115 +++++++++++++++---------------- 8 files changed, 101
+ insertions(+), 151 deletions(-)
+ [b639e5fff55e]
+
+2013-06-18 chenm003 <chenm003@163.com Min Chen>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ intrapred: Split loop into Loop_Prediction and Loop_Decide
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 12 ++++++++---- 1 file
+ changed, 8 insertions(+), 4 deletions(-)
+ [758ac3d8616c]
+
+2013-06-18 chenm003 <chenm003@163.com unknown>
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ cleanup: unused code m_bUseNIF
+ --- source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp | 36
+ +------------------ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h
+ | 1 - .../Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp | 41
+ +--------------------- 3 files changed, 2 insertions(+), 76
+ deletions(-)
+ [56d07fe3a257]
+
+2013-06-18 Steve Borho <steve@borho.org>
+
+ * source/common/reference.cpp:
+ Merge
+ [469e285c62c3]
+
+2013-06-18 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/reference.cpp, source/common/reference.h:
+ Merge
+ [0e1117a1e892]
+
+ * source/common/vec/ipfilter8.inc:
+ Intrinsic implementation for SSE4 and higher for vertical filter
+ [ef85cd7f938d]
+
+2013-06-17 Steve Borho <steve@borho.org>
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: use new multiplane primitives (changes outputs, likely
+ buggy)
+ [97dbc3346524]
+
+2013-06-18 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [de3b92c772ad]
+
+ * source/common/vec/ipfilter8.inc:
+ Partial intrinsic for vertical filter
+ [844308961a0b]
+
+2013-06-18 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * source/common/reference.cpp:
+ Fixed Build Errors(Type cast) for 16 bit
+ [41855cf217d0]
+
+2013-06-18 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [beab4f74a085]
+
+ * Merged multicoreware/xhevc into default
+ [f4734dec9dc8]
+
+2013-06-17 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [2cd09f020148]
+
+ * Merged multicoreware/xhevc into default
+ [819fd14f888e]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.cpp:
+ Merged multicoreware/xhevc into default
+ [e712594eda8f]
+
+2013-06-15 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [dc66b43ad68e]
+
+ * Merged multicoreware/xhevc into default
+ [31558ea714e2]
+
+2013-06-14 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [491779f0da6e]
+
+2013-06-18 Steve Borho <steve@borho.org>
+
+ * source/common/reference.cpp:
+ reference: extend Y=0 planes in worker function
+ [7e76d1574234]
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: use new APIs
+ [948587f9c9fa]
+
+2013-06-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ TComSlice: fix debug builds (asserts)
+ [b252b6a34869]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/encoder.cpp:
+ TEncCfg: remove deblocking filter metric code
+ [97c117eee937]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove uiNumSlices
+ [fcaae4248d5d]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp:
+ TComSlice: remove m_sliceIdx and access methods
+ [04505d780210]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unused SEI var, nit cleanups
+ [739c30209346]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: SEIPresent variables can now be local variables
+ [5d9dc98c01a7]
+
+ * source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove obsolete PROCESSING_STATE enum
+ [e817dece7a51]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: inline xResetNonNestedSEIPresentFlags() and
+ xResetNestedSEIPresentFlags()
+ [0a034b2714ba]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: inline xCreateLeadingSEIMessages
+ [42c156937eef]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: m_iGopSize did not need to be a member variable
+ [ac6bf2ad37dd]
+
+ * source/encoder/encoder.cpp:
+ encoder: declare large integer constant to be unsigned to prevent
+ warnings
+ [b42f5f907a8a]
+
+ * source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unnecessary includes of <list> and <stdlib.h>
+ [bc3fe350f76a]
+
+ * source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove uneecessary include of <vector>
+ [b34fc8a28026]
+
+ * source/Lib/TLibEncoder/TEncPic.h:
+ TEncPic: nits
+ [5cec340da54e]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TComPic: remove unused m_numReorderPics
+ [dcb9836738d0]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ TComPic: move pointers to start of class definition
+ [d9e2d694bd64]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: remove unused m_SEIs
+
+ This may get added again later with a more C friendly interface
+ [d75b868d9d33]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: white-space cleanups
+ [bc1ca09c3569]
+
+ * source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h:
+ TComBitstream: remove decoder class TComInputBitstream
+ [5ccdcfc7f906]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ TComPic: remove obsolete include
+ [272fd2b3626f]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: fix misspelled member variable
+ [70efa70c09c6]
+
+2013-06-16 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/encoder.cpp:
+ encoder: Fix compile warnings due to unhandled enumeration values in
+ a switch statement.
+
+ $HEVC/source/encoder/encoder.cpp: In member function ‘void
+ x265::Encoder::determineLevelAndProfile(x265_param_t*)’:
+ $HEVC/source/encoder/encoder.cpp:119:12: error: enumeration value
+ ‘NONE’ not handled in switch [-Werror=switch] switch (m_level) ^
+ $HEVC/source/encoder/encoder.cpp:119:12: error: enumeration value
+ ‘LEVEL1’ not handled in switch [-Werror=switch]
+ $HEVC/source/encoder/encoder.cpp:119:12: error: enumeration value
+ ‘LEVEL2’ not handled in switch [-Werror=switch]
+ $HEVC/source/encoder/encoder.cpp:119:12: error: enumeration value
+ ‘LEVEL2_1’ not handled in switch [-Werror=switch]
+ $HEVC/source/encoder/encoder.cpp:119:12: error: enumeration value
+ ‘LEVEL3’ not handled in switch [-Werror=switch]
+ $HEVC/source/encoder/encoder.cpp:119:12: error: enumeration value
+ ‘LEVEL3_1’ not handled in switch [-Werror=switch] cc1plus: all
+ warnings being treated as errors
+ [bf8657373cc0]
+
+2013-06-17 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ gop: Fix compile warning due to shadow variables.
+
+ error: shadowed declaration is here [-Werror=shadow]
+ [1afdab036cdf]
+
+2013-06-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: remove unreferenced checkColRefIdx
+ [462ae5b5c92b]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/encoder/compress.cpp:
+ TComDataCU: remove TComSlice array of pointers; only one slice
+ [4a443108dea9]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/compress.cpp:
+ TComPic: remove m_uiCurrSliceIdx (there can be only one)
+ [f61d6a311ac7]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: give the orig and recon pointers real names
+ [4da66382061e]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: rename m_apcPicSym to m_pcPicSym, there is no array
+ [254cfb7b02c2]
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ TComPic: further simplify boundary detection
+ [8bc870e559e5]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic, TComDataCU: remove m_pSliceSUMap
+ [5c7a900e9a7a]
+
+ * source/Lib/TLibCommon/TComPic.cpp:
+ TComPic: pre-allocate vSliceCUDataLink
+ [82e9374afa55]
+
+ * source/Lib/TLibCommon/TComPic.h:
+ TComPic: nits
+ [de4b9e89db28]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: m_vSliceCUDataLink did not need to be a member variable
+ [ab9d5f1754f1]
+
+ * source/test/mbdstharness.cpp:
+ mbdstharness: fix compile with DEBUG
+ [d54f561a75ee]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: m_sliceGranularityForNDBFilter did not need to be a member
+ variable
+ [03754edfb91b]
+
+ * source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp:
+ TComPic: nits
+ [e07e08349d30]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp:
+ TComPic: remove temp YUV image for tile/slice boundary filtering
+ [5d800bd145a9]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: remove more multi-slice cruft
+ [381a0aeddd3c]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: do not pass TComPic as pointer reference to encodeSlice
+ [896ca3355963]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: TComPic argument to compressSlice is not a reference
+ [4cc39023e365]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: nits
+ [15e62b2ff599]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: remove unused m_pcPicYuvPred and m_pcPicYuvResi
+ [d89a075a2779]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TComPic: remove unused m_pcPicYuvPred
+ [c31d7d16e14c]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TComPic: remove unused m_pcPicYuvResi
+
+ I believe we use TShortYUV internally for this now
+ [e7aa7efbee13]
+
+ * source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComPicYuv.h:
+ TComPic: nits
+ [b5cc706cb214]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TComPic: remove unused m_bReconstructed member
+ [3b359b196585]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: remove extra assignment of m_iMaxRefPicNum, cleanup
+ [f67a6d5916f2]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h:
+ Merge
+ [8dba6d9462cb]
+
+2013-06-17 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [068622ee452c]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ Restructured Horizontal/Vertical filters, added support for
+ width!=16n in horizontal filter
+ [f2f58de47a26]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.cpp:
+ Merge
+ [6de69685341f]
+
+ * source/common/vec/intrapred.inc:
+ Used unsafe compress to improve performance
+ [b852bbd6605b]
+
+ * source/common/vec/ipfilter8.inc:
+ Used saturated compress to eliminate min()
+ [9da8624cf3c5]
+
+2013-06-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: white-space nits
+ [22edfeb729e5]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: fix eoln
+ [7051e6809ffb]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/ipfilter.cpp,
+ source/common/reference.cpp:
+ remove redundant copy of subpel filter coefficients
+ [975d36cb92df]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComWeightPrediction.h:
+ HM fixes: remove various unused member variables
+ [89454200f223]
+
+ * source/x265.cpp:
+ x265: improve x265 -V output some more
+ [1ba7a1176cef]
+
+ * source/x265.cpp:
+ x265: fix and improve output of x265 -V
+ [1c9c6c9c4acc]
+
+ * source/common/vec/dct.inc:
+ dct: uncrustify
+ [9d71425aa983]
+
+2013-06-17 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ inline xIT() into invtransformNxN()
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 6 +++++- 1 files changed,
+ 5 insertions(+), 1 deletions(-)
+ [87f57ab18e2a]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/vec/dct.inc,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ [review] reduce memory copy in xIT()
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 6 +-
+ source/common/dct.cpp | 73 ++++- source/common/primitives.h | 2 +-
+ source/common/vec/dct.inc | 639 +++++++++++++++++++++------------
+ source/test/mbdstharness.cpp | 11 +- source/test/mbdstharness.h | 1
+ + 6 files changed, 485 insertions(+), 247 deletions(-)
+ [7511cd738ad6]
+
+ * source/common/vec/dct.inc:
+ cleanup: remove unused IDCT table
+ --- source/common/vec/dct.inc | 208
+ --------------------------------------------- 1 files changed, 0
+ insertions(+), 208 deletions(-)
+ [8d40f4be3699]
+
+ * source/test/mbdstharness.cpp:
+ cleanup: new IDCT don't need backup buffer
+ --- source/test/mbdstharness.cpp | 15 ++------------- 1 files
+ changed, 2 insertions(+), 13 deletions(-)
+ [779041295105]
+
+ * source/common/vec/dct.inc:
+ new IDCT32x32 from project Chinese University version of x265
+ --- source/common/vec/dct.inc | 2069
+ ++++++++++++++++----------------------------- 1 files changed, 732
+ insertions(+), 1337 deletions(-)
+ [ac6b5681eb77]
+
+ * source/common/vec/dct.inc:
+ new IDCT16x16 from project Chinese University version of x265
+ --- source/common/vec/dct.inc | 9290
+ ++++++++++++++++++++++----------------------- 1 files changed, 4571
+ insertions(+), 4719 deletions(-)
+ [993296aeec04]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ inline xT() into transformNxN()
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 27
+ +++++++-------------------- source/Lib/TLibCommon/TComTrQuant.h | 3
+ --- 2 files changed, 7 insertions(+), 23 deletions(-)
+ [1252d3c3c90f]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/primitives.h, source/common/vec/dct.inc,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ [review] reduce memory copy in xT()
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 11 +-
+ source/common/dct.cpp | 175 +++++++++++++++++-------
+ source/common/primitives.h | 11 ++- source/common/vec/dct.inc | 240
+ +++++++++++++-------------------- source/test/mbdstharness.cpp | 60
+ ++++++++- source/test/mbdstharness.h | 2 + 6 files changed, 294
+ insertions(+), 205 deletions(-)
+ [af7d0d29ef16]
+
+2013-06-17 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Early Detection skip mode removed from FMD
+ [f167939ebd90]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.cpp, source/encoder/compress.cpp:
+ Merge
+ [81d2deb0c7c1]
+
+2013-06-15 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Removing irrelevant FMD optimizations
+ [78ae2eec3b01]
+
+ * source/encoder/compress.cpp:
+ Adding comments
+ [abaabb22011f]
+
+2013-06-16 Steve Borho <steve@borho.org>
+
+ * .hgtags:
+ Move tag LASTKNOWNGOOD
+ [58f364792384]
+
+ * source/test/intrapredharness.cpp, source/test/intrapredharness.h,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ testbench: only perform 0xCDCDCDCDCDCD memsets for debug, runs much
+ faster
+
+ It should only be necessary to do this when you are not sure the C
+ primitive is correct. Once the C primitive is correct, it should
+ never be required to initialize the output buffers in order to find
+ mismatch bugs.
+ [9a6800e84295]
+
+ * source/test/mbdstharness.cpp:
+ mbdstharness: remove unused BufferflyConf_names
+ [1a8a3ddd9475]
+
+ * source/encoder/compress.cpp:
+ compress: fix eoln
+ [94b5e1de4d90]
+
+ * source/common/vec/dct.inc:
+ dct: remove VC9 x64 warning, the affected routines are all gone
+ [07b13562ea8d]
+
+ * source/common/vec/dct.inc:
+ dct: remove unused primitives, reorder for clarity
+ [ce0f1e1ed310]
+
+ * source/common/dct.cpp, source/common/primitives.h,
+ source/common/vec/dct.inc, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h:
+ remove partial butterfly and inversedst primitives
+ [63a832540bab]
+
+2013-06-16 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ [review] merge buffer convert into DCT* module
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 8 +------- 1 files
+ changed, 1 insertions(+), 7 deletions(-)
+ [7f6068ab7706]
+
+ * source/common/vec/dct.inc:
+ support nSrcStride on DCT*
+ --- source/common/vec/dct.inc | 417
+ ++++++++++++++++++++++++--------------------- 1 files changed, 221
+ insertions(+), 196 deletions(-)
+ [f3a8a85bdb0d]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Merge xTrMxN into TComTrQuant::xT
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 21 +++++----------------
+ 1 files changed, 5 insertions(+), 16 deletions(-)
+ [53838676f709]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ optimize xTrMxN by function pointer array
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 30
+ ++---------------------------- 1 files changed, 2 insertions(+), 28
+ deletions(-)
+ [f6c012a6b57f]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/vec/dct.inc:
+ [review] code for DST4x4
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 7 +--
+ source/common/dct.cpp | 20 ++++++++ source/common/vec/dct.inc | 87
+ +++++++++++++++++++++++++++++++++ 3 files changed, 110
+ insertions(+), 4 deletions(-)
+ [bc1b9ace38e9]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ miss <math.h> for sqrt()
+ --- source/Lib/TLibEncoder/TEncTop.cpp | 1 + 1 files changed, 1
+ insertions(+), 0 deletions(-)
+ [f7ab8faa77f9]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/vec/dct.inc, source/test/mbdstharness.cpp:
+ Optimize DCT32x32
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 3 +-
+ source/common/dct.cpp | 11 + source/common/vec/dct.inc | 669
+ +++++++++++++++++++++++++++++++++ source/test/mbdstharness.cpp | 2
+ +- 4 files changed, 682 insertions(+), 3 deletions(-)
+ [4e73d671ade5]
+
+ * source/common/vec/dct.inc:
+ simplify table name
+ --- source/common/vec/dct.inc | 384
+ ++++++++++++++++++++++---------------------- 1 files changed, 192
+ insertions(+), 192 deletions(-)
+ [92d5ad1eb45f]
+
+ * source/common/vec/dct.inc:
+ [review] share some table with DCT8x8
+ --- source/common/vec/dct.inc | 230
+ +++++++++++++++++++++----------------------- 1 files changed, 110
+ insertions(+), 120 deletions(-)
+ [9551c827dd8c]
+
+2013-06-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove m_storedStartCUAddrForEncodingSlice std::vector
+ [aa925c788d24]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.cpp,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncGOP: Move statistics structures to TEncTop, protect with a lock
+ [3545ade1fb3b]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use array delete for array new pointers
+ [8508e8293b74]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: simplifications
+ [035a7dee0480]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: single tile simplifications
+ [065ee8264b98]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: more single-slice simplifications
+ [b05e694e6a22]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove undefined SAO_RDO
+ [1a2fb8fe36b8]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove dead code
+ [d024c9bddf19]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: clean-up some multi-slice constructs
+ [18ad786c53c0]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTOP: move RC-GOP operations within compressGOP()
+ [fa70c5f59650]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: use iPOCLast==0 instead of m_bSeqFirst
+ [c08b29d11335]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: cleanup initialization
+ [8d9c2a12262f]
+
+ * source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: cleanups, make internal methods protected
+ [1821fba47aa4]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove member pointer to encoder singleton picture list
+
+ The picture list is provided to compressGOP() method
+ [b5ce58a2af61]
+
+ * source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unused getListPic() method
+ [67b8bea4073d]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: remove member pointer to global picture list
+ [f90b3bfd87c4]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncSlice: remove GOP encoder member variable
+
+ Get rid of another assumption about singleton objects
+ [8e7b990788c9]
+
+2013-06-12 Min Chen <chenm003@163.com>
+
+ * source/common/primitives.h, source/common/vec/pixel.inc:
+ primitives: add a 16bit copy with left shift primitive
+ [ca516890cd40]
+
+2013-06-15 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fixup indexing of block primitives
+ [9b7a1362f367]
+
+2013-06-15 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ Merge; FAST_MODE_DECISION fully functional with inter.
+ [9a99578e2815]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ Merge
+ [f4f5b666aecd]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ Null rpcBestCU. Memory leaks resolved.
+ [353206dee54b]
+
+ * source/encoder/compress.cpp:
+ More prep to null BestCU
+ [966336c97827]
+
+ * source/encoder/compress.cpp:
+ Prepare to Null split level BestCU
+ [e143b9a344e7]
+
+ * source/encoder/compress.cpp:
+ Prepare to null rpcBestCU
+ [c61499ef1432]
+
+ * source/encoder/compress.cpp:
+ More cleanup
+ [f68b8005dae1]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp, source/encoder/compress.cpp:
+ Cleanup; fix split bugs
+ [57174096d40b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ Rolling back; inter mode works, split has bugs
+ [caba150c54c0]
+
+2013-06-14 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ x265: better handling of level thresholds
+ [4d8007536eb4]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ x265: detect and set the profile and level
+ [07a1ffa03c3a]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ gcc: integer array subscripts
+ [c11ecb15eaa0]
+
+2013-06-14 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/dct.cpp,
+ source/common/vec/dct.inc, source/test/mbdstharness.cpp:
+ Optimize DCT16x16
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 3 +-
+ source/common/dct.cpp | 11 + source/common/vec/dct.inc | 482
+ +++++++++++++++++++++++++++++++++ source/test/mbdstharness.cpp | 2
+ +- 4 files changed, 495 insertions(+), 3 deletions(-)
+ [261b26b87c0b]
+
+ * source/common/vec/dct.inc:
+ cleanup MAKE_ODD outside xDCT8
+ --- source/common/vec/dct.inc | 1 + 1 files changed, 1 insertions(+),
+ 0 deletions(-)
+ [914852d611c8]
+
+2013-06-14 Steve Borho <steve@borho.org>
+
+ * source/x265opts.h:
+ x265: nit in CLI help
+ [43fd53ad27fe]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/primitives.h:
+ pixel: use width bit size to index residual and recon primitives
+ [34e5e66bd386]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ pixel: rename residual/reconstruction primitves
+ [83756d7ec230]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merged in deepthidevaki/xhevc_deepthid (pull request #199)
+
+ Added vector Filter Horizontal Multiplane, and support in testbench.
+ [d2a8a011a13e]
+
+2013-06-14 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc,
+ source/common/vec/pixel8.inc, source/test/pixelharness.cpp:
+ GetResidual + calcRecon changed to use function pointers
+ [575b19e5a035]
+
+ * source/common/primitives.h, source/test/ipfilterharness.cpp:
+ Merge
+ [8fc2fe71a2d7]
+
+ * source/common/ipfilter.cpp, source/common/primitives.h,
+ source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc,
+ source/test/ipfilterharness.cpp, source/test/ipfilterharness.h:
+ Added vector Filter Horizontal Multiplane, and support in testbench.
+ [15956ceaf16a]
+
+2013-06-14 Steve Borho <steve@borho.org>
+
+ * Merged in maheshpittala/xhevc_mahesh (pull request #198)
+
+ Fixed Build errors(Type cast) in 16 bit
+ [73b00711e83d]
+
+2013-06-14 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/reference.cpp:
+ Fixed Build errors(Type cast) in 16 bit
+ [b80bdba3d499]
+
+2013-06-14 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [2318037a8305]
+
+ * Merged multicoreware/xhevc into default
+ [ed51338a5928]
+
+ * Merged multicoreware/xhevc into default
+ [a4e3b5280eb4]
+
+2013-06-12 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [392194eba6a1]
+
+2013-06-13 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * source/tools/HM decoder/TAppDecoder.exe:
+ Merged multicoreware/xhevc into default
+ [41fd32e1ee06]
+
+2013-06-12 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [9eb8f9941713]
+
+ * Merged multicoreware/xhevc into default
+ [0eb8933de745]
+
+ * Merged multicoreware/xhevc into default
+ [803e22af8582]
+
+2013-06-11 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [8c842a8cfe96]
+
+ * source/common/macroblock.cpp, source/common/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [266046e7522d]
+
+2013-06-10 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [9cd8563afb0d]
+
+ * Merged multicoreware/xhevc into default
+ [007a8b519e53]
+
+ * Merged multicoreware/xhevc into default
+ [b5f5d466d800]
+
+2013-06-07 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [91c5bb78d52b]
+
+2013-06-05 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [9c8618adaf4c]
+
+ * Merged multicoreware/xhevc into default
+ [fe2691e5afff]
+
+ * Merged multicoreware/xhevc into default
+ [e4c6fb2823f1]
+
+2013-06-04 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [cd1437d72a75]
+
+2013-06-03 mahesh pittala <mahesh@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [7f7bd035a835]
+
+ * Merged multicoreware/xhevc into default
+ [c7b8e56f6079]
+
+2013-06-14 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ Merge
+ [852e5f6730a5]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ Adding comments; cosmetic changes, removing unnecessary local vars
+ [93938fd46918]
+
+ * source/encoder/compress.cpp:
+ Entropy related code removed
+ [5c3e24604043]
+
+ * source/encoder/compress.cpp:
+ Removing extraneous checks
+ [07de3c5c0ad9]
+
+ * source/encoder/compress.cpp:
+ Copy sub-best-recon to current best recon
+ [acf302317da7]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ BestCU is a reference pointer, while TempCU is just that; a
+ temporary local pointer.
+ [9f22712fc800]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ To avoid memory leaks, pass in an empty pointer. rpcBestCU returns
+ with the Best chosen CU.
+ [7f4f0e71895f]
+
+2013-06-13 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Claridying assert checks
+ [8316225c0886]
+
+ * source/encoder/compress.cpp:
+ Removing use of rpcTempCU for initializations
+ [c8f4bd10ea38]
+
+2013-06-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ HM bug fix: Improve the temporary fix for issue #1071 (Nonconforming
+ RPS in CRA pictures)
+ - generate proper CRA RPS at encoding stage rather than slice segment
+ header writing
+ [ec4e63c7c8be]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ HM fixes: cleanups
+ [3a5d6e4754ce]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ HM fix: "Cleanup"
+ [a174e0b3f6b7]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ HM fixes: "Clean up"
+ [1707a3030f7c]
+
+ * source/Lib/TLibCommon/TComPicYuv.h:
+ TComPicYuv: fix 16bpp build
+ [30941b044925]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ HM cleanups: "Add assert() statements / clean up"
+ [57ea893a55f9]
+
+2013-06-13 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ HM bug fix: "Fix for #1072"
+ [381af1803935]
+
+ * source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ HM bug fix: "Fix for #1078"
+ [15c51314f7ac]
+
+ * source/Lib/TLibEncoder/TEncCavlc.cpp:
+ HM bug fix: "Fix for #1079"
+ [e8b1953c65b4]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness: add offsets for src buffer pointer
+ [fee9cd2c3fc8]
+
+ * source/test/ipfilterharness.cpp:
+ ipfilterharness: use alignedMalloc for short_buff
+ [857a4fa1a8e9]
+
+ * source/common/common.cpp, source/encoder/motion.cpp:
+ motion: prevent over-large merange from causing inf loops
+ [64acb994bc4e]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: move distance for-loop within StarPatternSearch (less call
+ overhead)
+ [323a6667d127]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: move EncoderFrame instances from TEncTop to TEncGOP
+
+ Each TEncGOP will have at least one frame encoder, for parallelism
+ [f961dee0df08]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: make m_iNumPicCoded a function local variable
+ [408239eb7e61]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ gcc: replace MAXUINT64 with MAX_INT64 from CommonDefs.h
+ [5960f5864c43]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: move setCbDistortionWeight() to cpp file, cleanup
+ [38e5bb0dbca5]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: rename bufsad to fullsad
+ [33138ffa79a7]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: move init_scales() to constructor, remove from setSourcePU
+ [5b2b4a7090bb]
+
+ * source/common/primitives.h:
+ Merged in deepthidevaki/xhevc_deepthid (pull request #196)
+
+ Modifications to vertical filter multiplane
+ [95b415adeffa]
+
+2013-06-13 Deepthi Devaki <Deepthi Devaki>
+
+ * source/tools/HM decoder/TAppDecoder.exe:
+ Merge
+ [65768d985016]
+
+ * source/common/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ Modifications to vertical filter multiplane
+ [2c0ecc7b043d]
+
+2013-06-13 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/tools/HM decoder/TAppDecoder.exe:
+ Merged multicoreware/xhevc into default
+ [c8b90c296a0b]
+
+2013-06-12 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/ipfilter.inc, source/common/vec/ipfilter8.inc:
+ Added Vertical filter for multiplane (Vectorized assuming width is
+ multiple of 4)
+ [bd33365c378c]
+
+ * source/VectorClass/vectori128.h, source/common/ipfilter.cpp,
+ source/common/primitives.h, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h:
+ Testbench for Vertical IPFilter for multiplane
+ [a9af2d31ba00]
+
+2013-06-13 Steve Borho <steve@borho.org>
+
+ * Merged in mandarmcw/xhevc_mandar_mahesh (pull request #197)
+
+ primitives: sse2, ssse3, avx: Assembly calls for SSE_PP(SSD) for
+ 8,16,24,32,48,64
+ [9123ea04e339]
+
+2013-06-13 Mandar Gurav <Mandar Gurav>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ primitives: sse2: Assembly calls for SSE_PP(SSD) for 8, 16, 24, 32,
+ 48, 64
+ [3ab1f65ad43a]
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ primitives: ssse3: Assembly calls for SSE_PP(SSD) for 8, 16, 24, 32,
+ 48, 64
+ [a268ac5113cd]
+
+ * source/common/x86/asm-primitives.cpp:
+ primitives: Assembly calls for SSE_PP(SSD) for 24,48,64
+ [59228bcdfe9c]
+
+2013-06-13 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [33ba85c5f2a1]
+
+2013-06-13 Mandar Gurav <Mandar Gurav>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm,
+ source/common/x86/pixel.h:
+ primitives: Assembly calls for SSE_PP(SSD) for 32,16,8
+ [68c6b9d2d8d1]
+
+2013-06-13 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: small improvements
+ [6a170f9465ab]
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComRdCost: remove unused m_mvPredictor (HM ME is using our bit-cost
+ methods)
+ [e8d675ec84de]
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TComRdCost: use UInt to scale chroma costs instead of Double
+ [cf348485a9a5]
+
+2013-06-13 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ removed double from computing Cost
+ [b6f7ac1f105a]
+
+2013-06-13 Min Chen <chenm003@163.com>
+
+ * source/test/testbench.cpp:
+ revert debug code commit by '[review] faster DCT4x4'
+ --- source/test/testbench.cpp | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [c69480d6a22b]
+
+ * source/common/vec/dct.inc:
+ [review] fatser DCT8x8
+ --- source/common/vec/dct.inc | 461
+ ++++++++++++++++++++------------------------- 1 files changed, 200
+ insertions(+), 261 deletions(-)
+ [9c4501c71e10]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc:
+ [review] merge row process into convert16to32_shl
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 22 +---------------------
+ source/common/pixel.cpp | 9 ++++++--- source/common/primitives.h | 2
+ +- source/common/vec/pixel.inc | 27 +++++++++++++++------------ 4
+ files changed, 23 insertions(+), 37 deletions(-)
+ [44402f63268d]
+
+2013-06-13 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: nits
+ [a20041407e93]
+
+2013-06-13 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Fixing Best CU bugs
+ [4ccd02f3c17a]
+
+ * source/tools/HM decoder/TAppDecoder.exe:
+ Merge
+ [9f348f94c788]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ First cut version of RDO-less mode decision: Only inter and rect
+ modes.
+ [7df0cd69bbf9]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Adding pred copy to ComputeCostInter
+ [ac115aa34201]
+
+ * Merge
+ [84a113488c8e]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/compress.cpp:
+ Preparation for moving to RDO-less analysis.
+ [ad0f4840b8c2]
+
+2013-06-12 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Prediction structures for each mode: inter, intra, rect and merge
+ [12e076b777b3]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp:
+ Cleanup macro RDO_WITHOUT_DQP_BITS: always set.
+ [064461252a7d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [d9f8493ad297]
+
+ * source/encoder/compress.cpp:
+ Inter mode only works in compress.cpp
+ [2a4ada95c8da]
+
+2013-06-11 Deepthi <Deepthi>
+
+ * source/encoder/compress.cpp:
+ Removing RDO without DQP
+ [0457e3d429f3]
+
+ * source/encoder/compress.cpp:
+ Merge and Intra modes removed from Inter slices for now.
+ [806c020e696e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/macroblock.cpp,
+ source/common/vec/macroblock.inc:
+ Merge
+ [af84de459345]
+
+2013-06-10 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Added a function to estimate the header bits
+ [6a8bff3ae903]
+
+2013-06-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: simplify setSourcePU
+ [9a053413d61c]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ nits
+ [a5c8f414b509]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: remove unused iNumPicRcvd argument to initEncSlice
+ [fde34b9f8b05]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: pass EncoderFrame to TEncSlice methods, do not get from
+ TEncCfg
+ [6e3589df7134]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ TEncSlice: refactor initEncSlice to return TComSlice, not pass as
+ reference
+
+ Make it more obvious pcSlice is the functions output
+ [eadec0d58647]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: remove redundant setCurrSliceIdx() call
+ [18418d680e43]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: inline xGetBuffer for clarity
+ [4f2cab2656e5]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: inline xInitGOP, which ignored most of its arguments
+ [5cd02a1e0833]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ nits
+ [b3a522a85ca1]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove two more unused variables
+ [e94675550fa9]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ nits
+ [7a22a718c027]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ nits
+ [1b36f456d018]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: cleanup refactor, no behavior change
+ [26f03b2606f8]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unused m_bFirst variable
+ [28bbf3b63723]
+
+ * .hgtags:
+ tweak tags, make older LASTKNOWNGOOD tag visible
+ [6b8fabd722e7]
+
+ * source/tools/HM decoder/TAppDecoder.exe:
+ Remove compiled TAppDecoder.exe
+
+ It's not working on some platforms, and in general we don't want
+ compiled binaries in the tree. Users should build their own, or we
+ should have it available for download from Bitbucket or Egnyte.
+ [6facda17b5dc]
+
+2013-06-12 Min Chen <chenm003@163.com>
+
+ * source/common/vec/dct.inc:
+ IDCT4x4 is SSE2
+ --- source/common/vec/dct.inc | 22 ---------------------- 1 files
+ changed, 0 insertions(+), 22 deletions(-)
+ [37e60377bb38]
+
+ * source/common/vec/dct.inc, source/test/testbench.cpp:
+ [review] faster DCT4x4
+ --- source/common/vec/dct.inc | 137
+ ++++++++++++++++++++++-----------------------
+ source/test/testbench.cpp | 2 +- 2 files changed, 68 insertions(+),
+ 71 deletions(-)
+ [fad6f1100104]
+
+2013-06-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove unused xFindDistortionFrame() method
+ [64989e7f7b96]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: fix chroma stride used in frame PSNR
+ [87599a2e5ea9]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: fix chroma stride used in frame PSNR
+ [94b3cd0b3d6d]
+
+ * source/Lib/TLibCommon/TComPicYuvMD5.cpp:
+ Fix chroma stride used in hash functions (Min Chen)
+ [fda858eb8b20]
+
+2013-06-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: add a note for future optimizations
+ [a5e26e8a86c8]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: minor cleanups
+ [c8e15bb22d3c]
+
+ * source/CMakeLists.txt:
+ cmake: downgrade requirement to cmake-2.6; it works fine
+ [5cc718257bc0]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: nit
+ [1ffcfbfa6a67]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use SSE primitives to calculate frame PSNR
+ [e93c215a81df]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYUV: enforce 16byte alignment of chroma planes
+ [580383b435fb]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ TEncGOP: remove a handful of of member variables, declare on stack
+
+ This is a safety measure to prevent race hazards. Now we know the
+ scope where these variables must be consistent.
+ [e2948255ad27]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/encoder/wavefront.cpp:
+ TEncSlice: prune unused cost variables and methods
+ [295fbda07f03]
+
+ * source/encoder/wavefront.cpp:
+ wavefront: slight refactor
+ [b3e9a7469e43]
+
+ * source/common/CMakeLists.txt:
+ gcc: fix win32 mingw compile
+ [fb8920b0bba0]
+
+ * source/encoder/wavefront.cpp:
+ wavefront: drop PPA events for compress and encodeCU
+
+ Now I know that encodeCU takes very little time compared to
+ compressCU
+ [4e8a0221fb01]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/wavefront.cpp,
+ source/encoder/wavefront.h:
+ refactor: move singleton objects from TEncTop to EncodeFrame
+
+ This will allow multiple frames to be encoded at the same time,
+ barring other data dependencies
+ [6a77792e00e0]
+
+ * source/common/vec/pixel8.inc:
+ pixel: pass sad as reference
+ [c14b5fb37187]
+
+ * source/common/vec/pixel8.inc:
+ pixel: perform sad_8 in batches of 16 rows
+ [f74b07aa34f4]
+
+ * source/common/pixel.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel8.inc:
+ pixel: white-space cleanups, remove Intra from getResidual name
+ [b69c96b0e90c]
+
+2013-06-11 Min Chen <chenm003@163.com>
+
+ * source/CMakeLists.txt:
+ Stack align for GCC
+ --- source/CMakeLists.txt | 2 +- 1 files changed, 1 insertions(+), 1
+ deletions(-)
+ [a3bf4f55f789]
+
+2013-06-11 Steve Borho <steve@borho.org>
+
+ * source/common/vec/pixel8.inc:
+ Merged in deepthidevaki/xhevc_deepthid (pull request #191)
+
+ Optimized residual and reconstruction in
+ xIntraCoding[Luma/Chroma]Blk
+ [318e10a6a50d]
+
+2013-06-11 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/primitives.h:
+ fix for bad commit
+ [8e690d36e169]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/common/vec/pixel8.inc:
+ Merge
+ [16f559d6b0d9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc,
+ source/common/vec/pixel8.inc, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ Optimized residual and reconstruction in
+ xIntraCoding[Luma/Chroma]Blk
+ [df8efcb6d5ab]
+
+2013-06-11 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/common/macroblock.cpp, source/common/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [f66842baa091]
+
+2013-06-10 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [f449fe3822e5]
+
+2013-06-11 ggopu <ggopu>
+
+ * source/common/vec/pixel8.inc:
+ primitives:- implementation of loop unrolling for sad - 8,32,48,64.
+ Others are not showing performance benefit.
+ [f09d5d9cf0c3]
+
+2013-06-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.h:
+ motion: use intptr_t for blockOffset
+ [bc498b762ad8]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: remove sadStride member variable
+ [8f13381a9a50]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ motion: make motion reference and search limits function arguments
+
+ This makes the motion search re-entrant, for a given source PU block
+ [7a630939cd66]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: inline qpelSatd
+ [2ea29b826a89]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: inline qpelSad function
+ [13019ff2dfd3]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: inline the fpelSad() helper function
+ [e5b9711d3615]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/pixel8.inc:
+ gcc: unused parameter workarounds
+ [b8896916d0cf]
+
+ * source/common/vec/pixel8.inc:
+ pixel: override ALWAYSINLINE for the unroll template functions
+ [07408db373ed]
+
+ * source/common/vec/pixel8.inc, source/test/mbdstharness.cpp:
+ fix GCC compile errors
+ [51d401251cd2]
+
+ * source/common/CMakeLists.txt, source/common/dct.cpp,
+ source/common/macroblock.cpp, source/common/primitives.cpp,
+ source/common/vec/CMakeLists.txt, source/common/vec/dct-avx.cpp,
+ source/common/vec/dct-avx2.cpp, source/common/vec/dct-sse2.cpp,
+ source/common/vec/dct-sse3.cpp, source/common/vec/dct-sse41.cpp,
+ source/common/vec/dct-sse42.cpp, source/common/vec/dct-ssse3.cpp,
+ source/common/vec/dct.inc, source/common/vec/macroblock.inc,
+ source/common/vec/vecprimitives.inc:
+ rename macroblock to dct, split vector primitives into their own C++
+ files
+ [ed6cb766af9e]
+
+ * source/common/vec/pixel8.inc:
+ pixel: fix EOLN damage
+ [045c16364748]
+
+ * source/common/vec/pixel8.inc:
+ pixel: simplify exit logic
+ [2fa825921a79]
+
+ * source/common/vec/pixel8.inc:
+ pixel: remove pointer offset multiplication
+ [b7a5ceb6d6c9]
+
+ * source/common/vec/pixel8.inc:
+ pixel: simplify template early-outs
+ [ddb5937d4ce2]
+
+ * Merged in ggopu/gopu_xhevc (pull request #189)
+
+ primitives:- loop unrolling using template metaprogramming.
+ [597cc1154c19]
+
+2013-06-10 Mandar Gurav <Mandar Gurav>
+
+ * source/common/vec/pixel8.inc:
+ primitives:- loop unrolling using template metaprogramming.
+ [187b5e63d0c2]
+
+2013-06-10 Steve Borho <steve@borho.org>
+
+ * .hgtags:
+ Moved tag LASTKNOWNGOOD to changeset 3ec4837e6f6c (from changeset
+ d60578bec82e)
+ [72b1768e42cd]
+
+ * source/common/macroblock.cpp, source/common/vec/macroblock.inc,
+ source/encoder/CMakeLists.txt:
+ fix GCC compile errors
+ [3ec4837e6f6c]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: add more missing x265_emms() calls; win32 is broken without
+ them
+ [016bad7ac3e4]
+
+ * .hgtags:
+ Moved tag LASTKNOWNGOOD to changeset d60578bec82e (from changeset
+ 681eabf8a086)
+ [0667ab7fc8ed]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ Merge
+ [d60578bec82e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: move QP set much earlier, avoids race hazards
+ [5fbac3c94918]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ motion: do not use subsampling for bufSAD(), call EMMS where
+ necessary
+ [5d8f24205a1c]
+
+2013-06-11 Deepthi <Deepthi>
+
+ * Merge
+ [d693fcba0feb]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Verified that satd cost of orig and final prediction correspond to
+ those returned from ME.
+ [3ca77cf0a0da]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Capturing Cost for Mode Decision from Motion Estimation.
+
+ Here, TotalCost (which will be used in Mode Decision) is satd +
+ lambda*MVDbits. This cost needs to be improved by adding
+ lambda*header(or signalling) bits.
+ [7a4e397d0703]
+
+2013-06-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ x265: use stderr and log level consistently for logging output
+ [6ed146e7e6a2]
+
+2013-06-10 Min Chen <chenm003@163.com>
+
+ * source/common/vec/macroblock.inc:
+ [review] more optimize for IDCT32x32
+ --- source/common/vec/macroblock.inc | 114
+ +++++++++++--------------------------- 1 files changed, 33
+ insertions(+), 81 deletions(-)
+ [251c74042c22]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/test/mbdstharness.cpp:
+ [PATCH 10/11] [review] merge memcpy with stride into IDCT
+
+ From c4ab38c711e073f8e244bac87171b1e762992eed Mon Sep 17 00:00:00
+ 2001
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 16 ++----
+ source/common/macroblock.cpp | 66 ++++++++++++++------
+ source/common/primitives.h | 3 +- source/common/vec/macroblock.inc |
+ 106 ++++++++++++++++++-------------- source/test/mbdstharness.cpp |
+ 14 ++-- 5 files changed, 120 insertions(+), 85 deletions(-)
+ [b0bb8b7d2ec1]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/primitives.h,
+ source/test/mbdstharness.cpp:
+ [review] replace function xITrMxN by function pointer
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 42
+ ++++----------------------------- source/common/primitives.h | 10
+ ++++---- source/test/mbdstharness.cpp | 8 +++--- 3 files changed, 14
+ insertions(+), 46 deletions(-)
+ [a53a6888afea]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/test/mbdstharness.cpp:
+ [review] code for IDCT32x32
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 8 +-
+ source/common/macroblock.cpp | 11 + source/common/primitives.h | 1 +
+ source/common/vec/macroblock.inc | 1533
+ +++++++++++++++++++++++++++++++++ source/test/mbdstharness.cpp | 1 +
+ 5 files changed, 1547 insertions(+), 7 deletions(-)
+ [313549dc567d]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/test/mbdstharness.cpp:
+ [review] code for IDCT16x16
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 3 +-
+ source/common/macroblock.cpp | 11 + source/common/primitives.h | 1 +
+ source/common/vec/macroblock.inc | 1449
+ +++++++++++++++++++++++---------- source/test/mbdstharness.cpp | 19
+ +- 5 files changed, 1042 insertions(+), 441 deletions(-)
+ [6ffb16e28ec2]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ fix bug in testbench
+ --- source/test/mbdstharness.cpp | 47
+ +++++++++++++++++++++++++---------------- source/test/mbdstharness.h
+ | 4 +- 2 files changed, 31 insertions(+), 20 deletions(-)
+ [b5414396d60d]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/test/mbdstharness.cpp:
+ [review] code for IDCT8x8
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 3 +-
+ source/common/macroblock.cpp | 11 ++ source/common/primitives.h | 1
+ + source/common/vec/macroblock.inc | 252
+ +++++++++++++++++++++++++++++++++ source/test/mbdstharness.cpp | 1 +
+ 5 files changed, 266 insertions(+), 2 deletions(-)
+ [fa33207d7309]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/test/mbdstharness.cpp:
+ [review] code for IDCT4x4
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 6 +-
+ source/common/macroblock.cpp | 11 ++++ source/common/primitives.h |
+ 1 + source/common/vec/macroblock.inc | 103
+ +++++++++++++++++++++++++++++++++ source/test/mbdstharness.cpp | 1 +
+ 5 files changed, 120 insertions(+), 2 deletions(-)
+ [6900a1238ea5]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ more general testbench
+ --- source/test/mbdstharness.cpp | 52
+ ++++++----------------------------------- source/test/mbdstharness.h
+ | 3 +- 2 files changed, 9 insertions(+), 46 deletions(-)
+ [fbdad5a9a376]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/test/mbdstharness.cpp:
+ [review] code for IDST4x4
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 3 +-
+ source/common/macroblock.cpp | 11 +++ source/common/primitives.h | 1
+ + source/common/vec/macroblock.inc | 115
+ +++++++++++++++++++++++++++++++++ source/test/mbdstharness.cpp | 10
+ +++ 5 files changed, 138 insertions(+), 2 deletions(-)
+ [ee73706fab63]
+
+ * source/test/mbdstharness.cpp:
+ ident
+ --- source/test/mbdstharness.cpp | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [1616a4a66f8a]
+
+2013-06-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/compress.cpp:
+ compress: fix eoln and VC9 compile
+ [89957326ec3e]
+
+ * source/encoder/motion.cpp:
+ motion: improve cost comment
+ [c342a23c05a6]
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #188)
+
+ 32x32 intraAng with intrinsics - Reduced build time in MSVC
+ [1d4db3d80b2d]
+
+2013-06-10 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/intrapred.inc:
+ Merge
+ [7525ac0b99d9]
+
+ * source/test/intrapredharness.cpp:
+ Include 32x32 IntraAng in testbench
+ [4c815940f610]
+
+ * source/common/vec/intrapred.inc:
+ removing unwanted comments
+ [ec956b124b97]
+
+ * source/common/vec/intrapred.inc:
+ 32x32 intraAng with intrinsics - Reduced build time in MSVC
+ [079d9456f248]
+
+2013-06-10 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/compress.cpp:
+ More cleanup
+ [ff59c5d68841]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/compress.cpp:
+ Removing extraneous arguments to predInterSearch
+ [9999fc1a7939]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Replacing xcompressCU with xCompressInterCU
+ [cf88ab9b2ad2]
+
+ * source/encoder/compress.cpp:
+ Finetuning xComputeCostInter
+ [cd37abe9c70b]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/common/primitives.h,
+ source/common/vec/macroblock.inc,
+ source/common/vec/vecprimitives.inc:
+ backout e200a6011f23: causes crash.
+ [00190abfbdbf]
+
+ * Merge
+ [621c6f8f64e0]
+
+ * source/encoder/motion.cpp:
+ Comment for clarification of the term "cost" used in ME.
+
+ In general, we can try to use the following terms in a consistent
+ manner. 1. Distortion: This is the actual distortion produced in the
+ image due to any of the lossy components in video compression (block
+ matching, quant, filtering etc etc). In prediction, we can define
+ this as the satd/sad between orig and predicted image. 2. Bits: no.
+ of bits used in representing that particular mode. 3. Cost or
+ TotalCost = Distortion + lambda*bits.
+
+ Appending cost to either satd/bits is to be generally avoided.
+ [69ea081b98a6]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Define xComputeCostInter.
+
+ Early skip detection always ON. If skip detected, exit early.
+ [e4f2d46c69fe]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ Implementation of copyCU member function.
+ [3ba1b81f83df]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ Adding more access functions; declaring a copyCU member function to
+ copy Search results.
+ [3173379b20a0]
+
+2013-06-09 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ 4 temporary structs for 2nx2nInter, InterRect, IntrainInter, and
+ Merge
+ [32ea45399897]
+
+ * source/encoder/compress.cpp:
+ Recursive calls to xcompressInterCU
+ [c307d3211445]
+
+ * source/Lib/TLibEncoder/TEncCu.h, source/encoder/compress.cpp:
+ Adding xcompressInterCU; removing irrelevant if-checks
+ [96c054b8187b]
+
+ * Merge
+ [9bc61fc21444]
+
+ * source/encoder/CMakeLists.txt, source/encoder/compress.cpp,
+ source/encoder/compress.h:
+ Adding compress.cpp and compress.h for the new mode decision
+ algorithm.
+ [6b5cb6739108]
+
+2013-06-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/slicetype.cpp:
+ slicetype: remove functions we will not need anytime soon
+ [01a345bdfccc]
+
+2013-06-09 Steve Borho <steve@borho.org>
+
+ * doc/LookaheadGuide.txt, source/encoder/slicetype.cpp:
+ Borrow slicetype.c from x264 as slicetype.cpp
+
+ This file was taken from x264 source tree circa Dec 4, 2012 with
+ x264 bug fixes applied from Dec 11th and Jan 8th 2013. But without
+ taking any of the slice threading changes because we will eventually
+ use the x265 thread pool and wavefront scheduling.
+ [1fd9e6a154dc]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: reorder members together, prepare for reorg
+ [8725f199bac5]
+
+ * source/common/vec/vecprimitives.inc:
+ vec: add comments on where external functions are found
+ [5df470615208]
+
+ * source/common/vec/macroblock.inc,
+ source/common/vec/vecprimitives.inc:
+ vec: move includes into vecprimitives.inc
+
+ macroblock.inc is included inside an anonymous namespace, and cannot
+ include headers itself.
+ [b80c25641411]
+
+2013-06-09 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/vec/macroblock.inc, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h:
+ [review] code for DCT4x4
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 6 ++-
+ source/common/macroblock.cpp | 11 ++++
+ source/common/vec/macroblock.inc | 82
+ +++++++++++++++++++++++++++++++++ source/test/testbench.cpp | 2 +-
+ source/test/mbdstharness.cpp | 30 ++++++++++++
+ source/test/mbdstharness.h | 1 + 6 files changed, 129 insertions(+),
+ 3 deletions(-)
+ [2622ba58e755]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp,
+ source/common/primitives.h, source/common/vec/macroblock.inc,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ [review] code for DCT8x8
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 3 +-
+ source/common/macroblock.cpp | 11 ++ source/common/primitives.h | 12
+ ++ source/common/vec/macroblock.inc | 275
+ +++++++++++++++++++++++++++++++++ source/test/mbdstharness.cpp | 50
+ ++++++ source/test/mbdstharness.h | 1 + 6 files changed, 350
+ insertions(+), 2 deletions(-)
+ [d2175819e669]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ replace by const
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 12 ++++++------ 1 files
+ changed, 6 insertions(+), 6 deletions(-)
+ [2ea982400b90]
+
+ * source/Lib/TLibEncoder/TEncSbac.cpp:
+ little optimize in TEncSbac::codeLastSignificantXY
+ --- source/Lib/TLibEncoder/TEncSbac.cpp | 10 ++-------- 1 files
+ changed, 2 insertions(+), 8 deletions(-)
+ [145223d77222]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp, source/common/primitives.h,
+ source/common/vec/macroblock.inc,
+ source/common/vec/vecprimitives.inc:
+ optimize TEncSbac::codeCoeffNxN by new function scanNonZeroCoeffs
+ --- source/Lib/TLibCommon/TComRom.cpp | 23 +++++
+ source/Lib/TLibCommon/TComRom.h | 2 +
+ source/Lib/TLibCommon/TypeDef.h | 1 +
+ source/Lib/TLibEncoder/TEncEntropy.cpp | 12 ---
+ source/Lib/TLibEncoder/TEncEntropy.h | 1 -
+ source/Lib/TLibEncoder/TEncSbac.cpp | 59 ++++---------
+ source/common/primitives.h | 2 + source/common/vec/macroblock.inc |
+ 146 ++++++++++++++++++++++++++++++++
+ source/common/vec/vecprimitives.inc | 2 + 9 files changed, 194
+ insertions(+), 54 deletions(-)
+ [e200a6011f23]
+
+2013-06-08 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.h, source/common/x86/asm-primitives.cpp:
+ primitives: disable EMMS usage on x64 compiles
+ [d9f7525c4adf]
+
+2013-06-08 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ reduce EMMS when there NO Double operator
+ --- source/Lib/TLibEncoder/TEncSearch.cpp | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [f61a08dec7b7]
+
+2013-06-08 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ x265: report elapsed time in final logging output
+ [264f4853796c]
+
+2013-06-08 Min Chen <chenm003@163.com>
+
+ * source/common/x86/asm-primitives.cpp, source/common/x86/pixel-a.asm:
+ asm: use assembly SSD routines, where applicable
+ --- source/common/x86/asm-primitives.cpp | 5 +++++
+ source/common/x86/pixel-a.asm | 6 ++++++ 2 files changed, 11
+ insertions(+), 0 deletions(-)
+ [c67c9f5fd4b5]
+
+2013-06-07 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: repair the pixel correctness tests
+ [7710c496c0bb]
+
+ * source/common/x86/asm-primitives.cpp:
+ Backed out changeset: e040de3904a6 (appears to break some PCs)
+ [cb5a4206160e]
+
+ * source/encoder/wavefront.cpp, source/encoder/wavefront.h:
+ wavefront: move CU processing into a CTURow method
+ [2d7570e3eab0]
+
+ * source/test/testbench.cpp:
+ testbench: add support for --test NAME argument
+
+ ex: TestBench --test pix
+
+ Only tests pixel primitives
+ [c5f0c45e6198]
+
+ * source/test/intrapredharness.h, source/test/ipfilterharness.h,
+ source/test/mbdstharness.h, source/test/pixelharness.h,
+ source/test/testbench.cpp, source/test/testharness.h:
+ testbench: add test bench names
+ [c6fe42bb96f1]
+
+ * source/test/testbench.cpp:
+ testbench: stop testing C prims against themselves. show SIMD names
+ [a88d84ce9391]
+
+ * source/common/primitives.cpp:
+ primitives: remove unused variable
+ [078d513b8ce7]
+
+ * source/common/x86/asm-primitives.cpp:
+ asm: use assembly SSD routines, where applicable
+ [e040de3904a6]
+
+ * source/common/x86/CMakeLists.txt:
+ cmake: add pixel.h to solution, for easy access from MSVC
+ [88b81e0565f0]
+
+ * source/common/primitives.h:
+ primitives: note that SSE primitives make no alignment assumptions
+ [de9847f38e29]
+
+ * source/x265.cpp:
+ x265: move CPU detection and primitive initialization after file
+ init
+ [1047b745f04f]
+
+ * source/common/common.cpp, source/x265.cpp:
+ x265: report input file data all one one line. Do not repeat input
+ filename
+ [42fac954412a]
+
+ * source/input/input.h, source/input/y4m.h, source/input/yuv.h:
+ input: add getName() method
+ [27549dbae44b]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.h:
+ x265: report global bitrate
+ [8a1ebb2da93c]
+
+ * source/Lib/TLibEncoder/TEncAnalyze.h:
+ x265: indicate bitrate in frame logging same as other places
+ [4bc3d0f8cf5f]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ Remove SAO_CHROMA_LAMBDA define, assume enabled
+ [49160bd03b96]
+
+ * source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ Remove RDOQ_CHROMA_LAMBDA define, assume enabled
+ [915c857b3074]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ nit
+ [5a4710c63060]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: replace another copy loop with a primitive
+ [8e5ed1f84fe9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: inline primitive arguments, remove unused var
+ [850ab8ac45fa]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove all three getDistPart()
+ [0f089c76a5c9]
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: restore xTZSearchHelp() to its former simplicity
+ [9bdce4f90c1a]
+
+ * Merged in ggopu/gopu_xhevc (pull request #187)
+
+ TEncodeSearch: Removed getDistPart() replaced with sse Primitives
+ [20d3411fb757]
+
+2013-06-07 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/vec/sse.inc:
+ TEncodeSearch: Removed getDistPart() replaced with sse Primitives
+ [ca1959805ada]
+
+2013-06-07 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intrapred.inc:
+ Merged in deepthidevaki/xhevc_deepthid (pull request #185)
+
+ Added IntraAngular modes for chroma
+ [573411ef9172]
+
+2013-06-07 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/intrapred.inc:
+ Added bFilter in call for 16x16 for chroma
+ [ac2aa44b996b]
+
+ * source/common/vec/intrapred.inc:
+ Merge
+ [22c9294eb683]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/common/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ IntraAngular adapted for Chroma application
+ [18843443dc21]
+
+2013-06-07 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: fix bug on VC9-x64, the pextrw instruction very easy make
+ bug in VS2008
+ --- source/common/vec/intrapred.inc | 3 +-- 1 files changed, 1
+ insertions(+), 2 deletions(-)
+ [105c01ee73d9]
+
+2013-06-07 nandaku2 <deepthi@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Merged in sumalatha/xhevc_sumalatha (pull request #186)
+
+ missed in previous checkin
+ [772be4365f2d]
+
+2013-06-07 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/x265.cpp:
+ missed in previous checkin for CU_STAT_LOGFILE
+ [0e9f956c7cd5]
+
+2013-06-07 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/x265.cpp:
+ Merged multicoreware/xhevc/default into default (e5a96e958371)
+ [1b1235269f98]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/x265.cpp:
+ Merged multicoreware/xhevc/default into default (f4815a9f6747)
+ [e5a96e958371]
+
+2013-06-06 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc/default into default (4f45fd8e9ea8)
+ [f4815a9f6747]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/x265.cpp,
+ source/x265.h:
+ Merged multicoreware/xhevc/default into default (6dc2e5b6c1d4)
+ [4f45fd8e9ea8]
+
+2013-06-05 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/x265.cpp,
+ source/x265.h:
+ Backed out changeset: 683fbbf6818d
+ [6dc2e5b6c1d4]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/x265.cpp,
+ source/x265.h:
+ added logging to collect statistics related to mode decision
+ [683fbbf6818d]
+
+2013-06-07 Deepthi <Deepthi>
+
+ * Merge
+ [f1fd893cab78]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Introducing satd based Intra in Inter: quality slowly climbing up
+ (0.4 dB less), bitrate equal to RDO-based.
+ [e654eb6fdb2c]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ CheckRDCostIntrainInter: so we can simplify Intra in Inter without
+ affecting I-slice decisions.
+ [8eca9075cfe0]
+
+2013-06-07 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ x265: remove obsolete printf argument
+ [4ff9a3f7639f]
+
+2013-06-06 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/x265.cpp:
+ x265: adapt statistic logging to look more like x264
+ [2df6841df3ab]
+
+ * source/x265.cpp:
+ x265: report final FPS and bitrate as x264 does
+ [465450a1ffa7]
+
+ * source/PPA/ppaCPUEvents.h, source/common/reference.cpp,
+ source/common/reference.h:
+ reference: up to 16 threads used for subpel interpolation
+ [ef3d597154d9]
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: up to 9 threads used for subpel interpolation
+ [fa007c214c1f]
+
+ * source/common/reference.cpp:
+ reference: fix eoln
+ [83a646b6f94e]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComSlice.cpp, source/common/reference.cpp,
+ source/common/reference.h:
+ reference: use thread pool to interpolate references, up to 4
+ threads
+ [299bcbf0b763]
+
+ * source/common/threadpool.cpp, source/common/threadpool.h:
+ threadpool: add accessor to static var that doesn't increase ref
+ count
+ [6cf0b85a4e38]
+
+ * source/common/reference.h:
+ reference: use intptr_t for pointer offset m_offsetToLuma
+ [32bcc907c80f]
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: remove redundant variables
+ [75abe6a7275e]
+
+ * source/common/reference.cpp:
+ reference: simplify and correct some math
+ [5a5edf293002]
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: split out compute per horizontal qpel offset
+ [bfb389d9b26a]
+
+ * source/common/vec/intrapred.inc:
+ intrapred: allow non-MSVC compilers to build intra 32x32
+ [95769be84f67]
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: move temp vars to be class members
+
+ Normally this wouldn't be helpful but since this routine is about to
+ be threaded, this helps work efficiency
+ [4707e4389160]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp, source/PPA/ppaCPUEvents.h:
+ PPA: add event for TEncSlice_encodeSlice
+ [f0fe1b23b93a]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/PPA/ppaCPUEvents.h,
+ source/common/reference.cpp, source/encoder/wavefront.cpp:
+ PPA: tweak events to more easily analyse threading
+
+ GenerateReferencePlanes has improved from 60ms to 56ms in the last 6
+ commits (measuring on HD video). Each plane costs 3.7ms
+ [ecbbfa05934d]
+
+ * source/common/reference.cpp:
+ reference: directly use full-pel plane from TComPicYuv - do not copy
+ [b2aa11f00641]
+
+ * source/common/reference.cpp:
+ reference: reduce redunant calculations
+ [4311f9eda5c6]
+
+ * source/common/reference.cpp:
+ reference: reduce redunant calculations
+ [418ef065cd76]
+
+ * source/common/reference.cpp:
+ reference: reduce redunant calculations
+ [efcf8e88705c]
+
+ * source/common/reference.cpp:
+ reference: reduce redunant calculations
+ [51ffeea76d4b]
+
+ * source/common/reference.cpp:
+ reference: unroll plane extensions
+ [411cb75acef5]
+
+ * source/common/reference.cpp, source/common/reference.h:
+ reference: combine functions
+ [831ab4d28f46]
+
+2013-06-07 Deepthi <Deepthi>
+
+ * Merge
+ [7ea20ea451eb]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Replacing Merge distortion with satd costs.
+
+ However, this badly thrashes quality - I suspect this is due to
+ lower distortion values from satd for the merge-zero residual mode.
+ We need to finetune the merge distortion model.
+ [0d0adf325e0d]
+
+2013-06-06 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-avx.cpp, source/common/vec/intra-sse42.cpp:
+ re-enable forceinline for intra AVX and SSE42
+ [9567c46f3511]
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #184)
+
+ intrinsics in IntraAng
+ [1c7ce772c0b7]
+
+2013-06-06 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/intrapred.inc:
+ Expanded some of the Macros in 32x32 IntraAng with intention to
+ improve compile time.
+ [18f485d4e06f]
+
+ * source/common/vec/intrapred.inc:
+ Intrinsics added in 32x32 Macros.
+ [105bb52b4414]
+
+ * source/common/vec/intrapred.inc:
+ More intrinsics in 16x16
+ [eaab40490386]
+
+ * source/common/vec/intrapred.inc:
+ Intrinsics in MACRO for 16x16
+ [dea89dcfa4c8]
+
+2013-06-06 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Using bits estimate from RDO instead of ME estimate.
+
+ Using the bits estimate from RDO gives 0.5dB loss and 10% bitrate
+ increase. Using bits estimate from ME gives 30% bitrate increase and
+ 0.7dB loss. ToDo: replace RDO bits estimate with a carefully
+ calculated estimate.
+ [6657cc220ef5]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Cleanup: remove CalcRDCostInter/Intra
+ [ae86f626666c]
+
+2013-06-06 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ incremental changes - commit to add logs for rdo, satd cost.
+ [d021c4d5e43f]
+
+2013-06-06 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ CU_STAT patch from Aarthi/Sumalatha
+ [14aa8db979f8]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [aa89281d6517]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Merge
+ [b77d5500205d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Modeling SATD distortion
+ [5158e6a3466e]
+
+2013-06-05 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intrapred.inc:
+ intrapred: move another file static init into setup func
+ [3ec88cd25ae6]
+
+ * source/common/reference.cpp:
+ reference: nit
+ [9f64d9a6a9f8]
+
+ * source/common/reference.cpp:
+ reference: use a single temp buffer
+ [287576ca5ad2]
+
+ * source/common/reference.cpp:
+ reference: remove unused assignment
+ [650800e42016]
+
+ * source/common/reference.cpp:
+ reference: reorder plane generations
+ [9c8caf38d14f]
+
+ * source/Lib/TLibCommon/TComPicYuv.h, source/common/reference.cpp,
+ source/common/reference.h, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ reference: use m_ prefix for member variables
+ [15ea880c0ffd]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: drop chroma fenc plane pointers, unused
+ [b13ccd8af6ea]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/CMakeLists.txt,
+ source/common/reference.cpp, source/common/reference.h,
+ source/encoder/motion.h:
+ reference: move reference plane generation into new common/ files
+ [2b62bd9493e0]
+
+2013-06-06 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: Fix missing header for SHRT_MAX.
+ [ec399d4f91f0]
+
+ * source/common/pixel.cpp, source/common/vec/pixel.inc:
+ vec: Fix macro paste problem due to invalid tokens.
+
+ error: pasting "." and "sad" does not give a valid preprocessing
+ token error: pasting "sse" and "<" does not give a valid
+ preprocessing token
+ [f0bee4bc5ab8]
+
+2013-06-05 Steve Borho <steve@borho.org>
+
+ * source/common/vec/macroblock.inc:
+ macroblock: prevent VC9 x64 from building SSE4 intrinsic butterfly
+ primitives
+
+ Specifically the butterfly32 crashes and butterfly8 fails unit tests
+ [cc3701060a60]
+
+ * source/common/common.h:
+ common: disable logging by default
+ [fb8d4ef3eed1]
+
+ * source/x265.cpp:
+ remove redundant fclose()
+ [1192519fe4cc]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/common/common.h,
+ source/x265.cpp:
+ rename LOGGING to CU_STAT_LOGFILE
+ [436ebbab3ba2]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/common/common.h,
+ source/x265.h:
+ move LOGGING define to common.h
+ [f2ea9f497340]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost: use its own helper function consistently
+ [4b036d5114f8]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: reorder methods, no change
+ [b076f3dd0351]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove two unused member variables
+
+ They were moved to DistParam and never removed from here
+ [c5008c610656]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h:
+ TComDataCU: remove unused slow bit counting methods
+
+ These weren't being used at all; not sure if they were used in dead
+ code paths we've pruned or if all of its users were moved to
+ TComRdCost
+ [971fe0131bd5]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove old commented code, can no longer be used
+ [cda2e64d596c]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove getCost(x, y), getBits(x, y), and
+ xGetComponentBits()
+ [0e4510344de3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: replace TComRdCost::getCost(x,y) with BitCost::mvcost
+ [CHANGE]
+
+ Changes outputs of --me 4 (HM orig) slightly. Does not affect other
+ ME modes, which were already using mvcost()
+ [1058053226f4]
+
+ * source/common/vec/pixel.inc, source/common/vec/sse.inc,
+ source/test/pixelharness.cpp:
+ Backed out changeset: ce41a92cec25
+ [0720ed17000a]
+
+ * source/common/vec/intrapred.inc:
+ intrapred: remove const from file static vars
+
+ The compiler was ignoring my const_cast<> and discarding the
+ assignments. My guess is that it had inlined the constants (known to
+ be zero) into the routines
+ [6c44353bb63f]
+
+ * source/common/vec/intrapred.inc:
+ intra: disable 32x32 temporarily, to save MSVC build times
+
+ Once the key macros have been made pure-intrinsic, it should be safe
+ to build these again with MSVC.
+ [1ae62e55635c]
+
+ * source/encoder/wavefront.cpp, source/encoder/wavefront.h:
+ wavefront: uncrustify
+ [cec743da6f0e]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncCu, TEncSlice: uncrustify
+ [dcad39643221]
+
+ * source/common/vec/intrapred.inc:
+ intrapred: move static variable initialization to init time
+
+ Allow CPU detection to avoid initializing static vars that might use
+ illegal instructions.
+ [b7fa5ee0ff52]
+
+2013-06-05 ggopu <ggopu>
+
+ * source/common/vec/pixel.inc, source/common/vec/sse.inc,
+ source/test/pixelharness.cpp:
+ primitives: implementation of sse_ss, sse_sp, sse_pp : Comment out
+ crashing part
+ [ce41a92cec25]
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ primitives: implementation of sse_ss, sse_sp, sse_pp : Quick fix
+ [fa56753ac713]
+
+ * source/common/pixel.cpp, source/common/primitives.h,
+ source/common/vec/CMakeLists.txt, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/vec/sse.inc, source/test/pixelharness.cpp:
+ primitives: implementation of sse_ss, sse_sp, sse_pp
+ [7e9174316989]
+
+2013-06-05 Deepthi <Deepthi>
+
+ * Merge
+ [2cf7f7189f52]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/x265.cpp,
+ source/x265.h:
+ Logging statistics showing CU mode types and partition sizes - patch
+ from Aarthi/Sumalatha.
+ [5679059e8c2d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Do not repeat encRes for merge mode
+ [ed6c51f1274e]
+
+2013-06-05 Steve Borho <steve@borho.org>
+
+ * .hgtags:
+ Added tag LASTKNOWNGOOD for changeset 681eabf8a086
+ [ce241499c41d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: nits, no change
+ [30fc780867a3]
+
+2013-06-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/wavefront.cpp:
+ wavefront: re-order initializations to make GCC happy
+ [86059d10c1da]
+
+ * source/Lib/TLibEncoder/TEncCavlc.h:
+ TEncCavlc: remove unused formal parameter names, avoid GCC warnings
+ [189c561de3cd]
+
+ * source/encoder/wavefront.cpp:
+ wavefront: remove clumsy logic where codeRow could be different for
+ goOnSBac
+ [2b27bd6e3c0e]
+
+ * source/encoder/encoder.cpp:
+ encoder: mark WPP disabled if thread pool has only one thread
+
+ Either the user requested --threads 1, or auto-detect only found 1
+ CPU core
+ [051e5dab1985]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ nit
+ [fd22c2f571ce]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: remove include of omp.h
+ [f3a40c7d2ec5]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/wavefront.cpp,
+ source/encoder/wavefront.h:
+ wavefront: further cleanups
+ [70edba386b16]
+
+ * source/encoder/wavefront.cpp:
+ wavefront: remove unnecessary re-alloc of buffer Sbac coders
+ [f559d0f9c927]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: completely remove singleton TComRdCost, force use of
+ EncodeFrame
+ [6134af9537f2]
+
+ * source/x265.cpp:
+ x265: remove old comment
+ [9cbadcbf9af5]
+
+ * source/encoder/wavefront.cpp:
+ wavefront: move flush and deletions to destroy method
+ [2c6debbdea1d]
+
+ * source/encoder/wavefront.cpp:
+ wavefront: eliminate redundant assignments
+ [8a6c3172ad9e]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/encoder/wavefront.cpp:
+ TEncCu: CU should use row local m_cRdCost so lambda is allowed to
+ diverge
+ [cb1c0f4fe4d2]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/wavefront.h:
+ distribute lambda and chroma weights to thread m_cRdCost (fixes non-
+ determinism)
+
+ it seems --me 4 and --wpp is still non-deterministic, just not
+ nearly as much.
+ [8ad5d8bc925c]
+
+2013-06-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/encoder/wavefront.cpp, source/encoder/wavefront.h:
+ wavefront: reorg per-thread/row data into a structure
+ [5103e97b516e]
+
+2013-06-04 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ Remove unused SEQUENCE_LEVEL_LOSSLESS
+ [31b2998e87e2]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused calcRdCost64
+ [734d93ef8fd8]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused calcRdCost
+ [d46bc99052f6]
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: cleanup vec file, no real changes
+ [2b0a5cfe46f2]
+
+2013-06-05 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: Fix compile warnings.
+ [31e1d53e0aad]
+
+2013-06-04 Steve Borho <steve@borho.org>
+
+ * source/common/vec/intra-avx.cpp, source/common/vec/intra-sse42.cpp:
+ disable forceinline, compiles are taking multiple hours
+ [9f27fcbe7660]
+
+ * source/common/pixel.cpp:
+ pixel: add C primitives for int/short conversion functions
+ [5935a4c31de9]
+
+ * source/common/vec/intrapred.inc,
+ source/common/vec/vecprimitives.inc:
+ vec: more #include pruning to avoid unnecessary rebuilds
+ [637f3b3a1f8a]
+
+ * source/common/vec/intrapred.inc,
+ source/common/vec/vecprimitives.inc:
+ move g_aucConvertToBit[] to intrapred.inc
+ [9df6d9454529]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove eDFunc argument from getDistPart() methods
+
+ Soon getDistPart() can be replaced entirely with SSE primitives.
+ [3f286f363159]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove unused macro and method
+ [90f2d655fc4f]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: fix eoln
+ [cbcce0610e27]
+
+2013-06-04 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [bdec57941cef]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Bug fix in memcpy
+ [34cafdcafffe]
+
+2013-06-04 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc:
+ Merged in ggopu/gopu_xhevc (pull request #182)
+
+ primitives: SSE 8 & 16 bit implementation - done for all and
+ Replaced getSADPart with Primitives.sad function
+ [537e783eab5b]
+
+2013-06-04 Mandar Gurav <Mandar Gurav>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Replaced getDistPart() with SadBuf() and remved CALCRDCOST_SAD call
+ from TencodeSearch
+ [0d22b87a3bd4]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Replaced getSADPart with Primitives.sad function
+ [23778eeabe2f]
+
+ * source/common/vec/pixel16.inc, source/common/vec/pixel8.inc:
+ primitives: SSE 16 bit - done for all
+ [d8065a5600fb]
+
+ * source/common/vec/pixel.inc, source/common/vec/pixel8.inc:
+ primitives: SSE 8 bit implementation - done for all
+ [4c3b34bfd0a3]
+
+2013-06-04 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/common/vec/intra-
+ avx.cpp, source/common/vec/intra-sse42.cpp, source/common/vec
+ /ipfilter-avx.cpp, source/common/vec/ipfilter-avx2.cpp,
+ source/common/vec/ipfilter-sse2.cpp, source/common/vec/ipfilter-
+ sse3.cpp, source/common/vec/ipfilter-sse41.cpp, source/common/vec
+ /ipfilter-sse42.cpp, source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/pixel-avx.cpp, source/common/vec/pixel-avx2.cpp,
+ source/common/vec/pixel-sse2.cpp, source/common/vec/pixel-sse3.cpp,
+ source/common/vec/pixel-sse41.cpp, source/common/vec/pixel-
+ sse42.cpp, source/common/vec/pixel-ssse3.cpp,
+ source/common/vec/utils.h:
+ Merge
+ [da81281bbfb6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Replacing with memcpy.
+ [c6948a0ed131]
+
+2013-06-04 Deepthi Devaki <Deepthi Devaki>
+
+ * source/common/vec/intrapred.inc:
+ Completed & Uncrustified Intra Angular 32x32
+ [f42c0dd3b2c3]
+
+ * source/common/vec/intra-avx.cpp, source/common/vec/intra-sse42.cpp,
+ source/test/intrapredharness.cpp:
+ Fix for a previous wrong commit, that disabled forceinline
+ [be5a9b49fdcb]
+
+ * source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h, source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h, source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/PPA/ppa.h,
+ source/VectorClass/vectori128.h, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/common.cpp,
+ source/common/common.h, source/common/ipfilter.cpp,
+ source/common/md5.cpp, source/common/md5.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/threadpool.cpp, source/common/vec/CMakeLists.txt,
+ source/common/vec/blockcopy.inc, source/common/vec/intra-avx.cpp,
+ source/common/vec/intra-avx2.cpp, source/common/vec/intra-sse2.cpp,
+ source/common/vec/intra-sse3.cpp, source/common/vec/intra-sse41.cpp,
+ source/common/vec/intra-sse42.cpp, source/common/vec/intra-
+ ssse3.cpp, source/common/vec/intrapred.inc, source/common/vec
+ /ipfilter-avx.cpp, source/common/vec/ipfilter-avx2.cpp,
+ source/common/vec/ipfilter-sse2.cpp, source/common/vec/ipfilter-
+ sse3.cpp, source/common/vec/ipfilter-sse41.cpp, source/common/vec
+ /ipfilter-sse42.cpp, source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/ipfilter.inc, source/common/vec/pixel-avx.cpp,
+ source/common/vec/pixel-avx2.cpp, source/common/vec/pixel-sse2.cpp,
+ source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel-sse42.cpp, source/common/vec/pixel-
+ ssse3.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/vec/utils.h, source/common/vec/vec-primitives.cpp,
+ source/common/vec/vecprimitives.inc, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/motion.cpp,
+ source/input/y4m.cpp, source/input/yuv.cpp,
+ source/output/output.cpp, source/output/output.h,
+ source/output/y4m.cpp, source/output/yuv.cpp, source/output/yuv.h,
+ source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/pixelharness.cpp, source/test/testbench.cpp,
+ source/test/testharness.h, source/tools/dr_psnr/PsnrCalculator.h,
+ source/tools/dr_psnr/SSIMCalculator.h, source/x265.cpp,
+ source/x265.h, source/x265opts.h:
+ Backed out changeset: 471c6f016b40
+ [d790920f4c32]
+
+ * source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h, source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h, source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/PPA/ppa.h,
+ source/VectorClass/vectori128.h, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/common.cpp,
+ source/common/common.h, source/common/ipfilter.cpp,
+ source/common/md5.cpp, source/common/md5.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/threadpool.cpp, source/common/vec/CMakeLists.txt,
+ source/common/vec/blockcopy.inc, source/common/vec/intra-avx.cpp,
+ source/common/vec/intra-avx2.cpp, source/common/vec/intra-sse2.cpp,
+ source/common/vec/intra-sse3.cpp, source/common/vec/intra-sse41.cpp,
+ source/common/vec/intra-sse42.cpp, source/common/vec/intra-
+ ssse3.cpp, source/common/vec/intrapred.inc, source/common/vec
+ /ipfilter-avx.cpp, source/common/vec/ipfilter-avx2.cpp,
+ source/common/vec/ipfilter-sse2.cpp, source/common/vec/ipfilter-
+ sse3.cpp, source/common/vec/ipfilter-sse41.cpp, source/common/vec
+ /ipfilter-sse42.cpp, source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/ipfilter.inc, source/common/vec/pixel-avx.cpp,
+ source/common/vec/pixel-avx2.cpp, source/common/vec/pixel-sse2.cpp,
+ source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel-sse42.cpp, source/common/vec/pixel-
+ ssse3.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/vec/utils.h, source/common/vec/vec-primitives.cpp,
+ source/common/vec/vecprimitives.inc, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/motion.cpp,
+ source/input/y4m.cpp, source/input/yuv.cpp,
+ source/output/output.cpp, source/output/output.h,
+ source/output/y4m.cpp, source/output/yuv.cpp, source/output/yuv.h,
+ source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/pixelharness.cpp, source/test/testbench.cpp,
+ source/test/testharness.h, source/tools/dr_psnr/PsnrCalculator.h,
+ source/tools/dr_psnr/SSIMCalculator.h, source/x265.cpp,
+ source/x265.h, source/x265opts.h:
+ Backed out merge changeset: 899d27ae3960
+
+ Backed out merge revision to its first parent (ffc3e2a59068)
+ [471c6f016b40]
+
+ * source/common/vec/intra-avx.cpp, source/common/vec/intra-sse42.cpp,
+ source/common/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ Merge
+ [899d27ae3960]
+
+ * source/common/vec/intrapred.inc:
+ Partial vector implementation of IntrPredAng 32x32.
+ [ffc3e2a59068]
+
+2013-06-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.h, source/PPA/ppa.h,
+ source/common/TShortYUV.cpp, source/common/TShortYUV.h,
+ source/common/common.cpp, source/common/common.h,
+ source/common/ipfilter.cpp, source/common/md5.cpp,
+ source/common/md5.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/threadpool.cpp, source/common/vec/blockcopy.inc,
+ source/common/vec/intra-avx.cpp, source/common/vec/intra-sse42.cpp,
+ source/common/vec/intrapred.inc, source/common/vec/ipfilter-avx.cpp,
+ source/common/vec/ipfilter-avx2.cpp, source/common/vec/ipfilter-
+ sse2.cpp, source/common/vec/ipfilter-sse3.cpp, source/common/vec
+ /ipfilter-sse41.cpp, source/common/vec/ipfilter-sse42.cpp,
+ source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/ipfilter.inc, source/common/vec/pixel-avx.cpp,
+ source/common/vec/pixel-avx2.cpp, source/common/vec/pixel-sse2.cpp,
+ source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel-sse42.cpp, source/common/vec/pixel-
+ ssse3.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/vec/utils.h, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/encoder/motion.cpp,
+ source/input/y4m.cpp, source/input/yuv.cpp,
+ source/output/output.cpp, source/output/output.h,
+ source/output/y4m.cpp, source/output/yuv.cpp, source/output/yuv.h,
+ source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/pixelharness.cpp, source/test/testbench.cpp,
+ source/test/testharness.h, source/tools/dr_psnr/PsnrCalculator.h,
+ source/tools/dr_psnr/SSIMCalculator.h, source/x265.cpp,
+ source/x265.h, source/x265opts.h:
+ uncrustify: catch up with several weeks of drift
+ [b68cb1eaef6d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [a35eae69f1a8]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ white-space nits
+ [b2327bb6131d]
+
+ * source/Lib/TLibEncoder/TEncCu.h:
+ TEncCu: nits
+ [f56bc8f415de]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncSearch: reduce argument count for TEncSearch::Init() (it can
+ read)
+ [c163638bc616]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ TEncCfg: add accessors for all ME data
+ [227956601381]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: white-space nits
+ [3a35f88c6dc4]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: remove xInitPPSforTiles
+ [ab72ab85c51d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove xTZ8PointSquareSearch
+ [8ff79cf0335e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSlice: more white-space nits
+ [ade13761b5d4]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fixup commit
+ [d4e1b147c8aa]
+
+ * source/Lib/TLibCommon/TComRdCost.h, source/Lib/TLibCommon/TypeDef.h:
+ Move DFunc enum from TypeDef.h to TComRdCost.h
+ [42efb06e0617]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: add a note for future optimization
+ [5bfad71d2e69]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Remove HHI_RQT_INTRA_SPEEDUP, HHI_RQT_INTRA_SPEEDUP_MOD. Assume
+ current values
+ [9a12626cc6cc]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Remove FAST_UDI_USE_MPM, always enabled
+ [7893e9388d61]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncTop.cpp:
+ Remove WRITE_BACK define, always enabled
+ [e2674be0bcce]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ Remove AUTO_INTER_RPS define, always enabled
+ [d74b6ff8128a]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: remove redundant m_uiNumSubstreams
+ [dce2e6e926e4]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ TEncTop: prep cleanup, remove unused m_cRDGoOnSbacCoder
+ [75d7c30ceb8b]
+
+2013-06-04 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ xAddSymbolBitsInter: part replacement of entropy estimate
+ [7e4e05cc36e1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Replacing zeroResidual mode bit estimate
+ [1a1185fbe376]
+
+2013-06-03 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Replacing entropy estimate for Skip.
+ [7ad86922e1a9]
+
+2013-06-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: more white-space nits
+ [4b42318dec1c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: white-space nits
+ [29258a2b78e8]
+
+2013-06-03 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ [review] more performance implement on predIntraPlanar4_sse4
+ --- source/common/vec/intrapred.inc | 48
+ ++++++++++++++++++++------------------ 1 files changed, 25
+ insertions(+), 23 deletions(-)
+ [65305cf315ae]
+
+ * source/common/vec/intrapred.inc:
+ [review] instrinsic predIntraPlanar64_sse4
+ --- source/common/vec/intrapred.inc | 126
+ +++++++++++++++++++++++++++++++++++++-- 1 files changed, 121
+ insertions(+), 5 deletions(-)
+ [f5aef2183b11]
+
+ * source/common/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ [review] instrinsic predIntraPlanar32_sse4
+ --- source/common/vec/intrapred.inc | 82
+ ++++++++++++++++++++++++++++++++++++++
+ source/test/intrapredharness.cpp | 6 +- 2 files changed, 85
+ insertions(+), 3 deletions(-)
+ [b1be1b00a939]
+
+ * source/common/vec/intrapred.inc:
+ [review] instrinsic predIntraPlanar16_sse4
+ --- source/common/vec/intrapred.inc | 97
+ ++++++++++++--------------------------- 1 files changed, 30
+ insertions(+), 67 deletions(-)
+ [58046661809b]
+
+ * source/common/vec/intrapred.inc:
+ [review] instrinsic predIntraPlanar16_sse4, performance
+ --- source/common/vec/intrapred.inc | 112
+ ++++++++++++++++++++++++++++++++++++++- 1 files changed, 110
+ insertions(+), 2 deletions(-)
+ [3265a3e7a60f]
+
+ * source/common/vec/intrapred.inc:
+ [review] instrinsic predIntraPlanar8_sse4
+ --- source/common/vec/intrapred.inc | 79
+ ++++++++++++++++++++++++++++++++++++++- 1 files changed, 77
+ insertions(+), 2 deletions(-)
+ [5c6fca239875]
+
+2013-06-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TencSearch: fix bit counting
+ [f96db0f0e705]
+
+ * source/common/vec/pixel8.inc:
+ pixel: use real ints in vector code
+ [a22994d345a4]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ backout changes to TComRdCost, this file cannot use primitives.
+ [fd2d0932ed34]
+
+ * Merged in ggopu/gopu_xhevc (pull request #180)
+
+ * m_pcRdCost->getBits() replaced with BitCost.mvcost
+ [609ae722f590]
+
+2013-06-03 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/pixel.cpp,
+ source/common/primitives.h, source/common/vec/pixel.inc,
+ source/common/vec/pixel8.inc, source/test/pixelharness.cpp:
+ * m_pcRdCost->getBits() replaced with BitCost.mvcost
+ * Fixed other code blocks calling non-primitive SAD functions (crashes
+ at sad8 - for load_a whereas works with just load)
+ * Primitives for SSE functions
+ [dedd1f39ae61]
+
+2013-06-03 Steve Borho <steve@borho.org>
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #179)
+
+ Enabled Intra Angular 16x16 in testbench
+ [ae67119947c0]
+
+2013-06-03 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [b6298df4010a]
+
+2013-06-03 Deepthi Devaki <Deepthi Devaki>
+
+ * source/test/intrapredharness.cpp:
+ Enabled Intra Angular 16x16 in testbench
+ [8e85d566d172]
+
+2013-06-03 Deepthi <Deepthi>
+
+ * Merge
+ [e521c7751844]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ FMD - Bug fix
+ [06dc1c8c186f]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Making RDO optional
+ [ad3f6e8fd032]
+
+2013-06-03 Steve Borho <steve@borho.org>
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: add missing ipfilter-avx.cpp
+ [681eabf8a086]
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: add new foo-avx.cpp files to -mavx properties list
+ [ce989de34742]
+
+ * source/common/vec/intrapred.inc:
+ intrapred: add include for smmintrin.h
+ [755d91c1e921]
+
+ * source/common/vec/vec-primitives.cpp:
+ vec: allow VC9 and VC10 to use SSE4 primitives
+ [ffe0f4fb6980]
+
+ * source/VectorClass/vectori128.h, source/common/vec/intra-avx.cpp,
+ source/common/vec/intra-sse42.cpp:
+ vec: enable __forceinline for higher arches of intra primitives
+ [b4ed502f10e5]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/ipfilter-
+ avx.cpp, source/common/vec/ipfilter-avx2.cpp, source/common/vec
+ /ipfilter-sse2.cpp, source/common/vec/ipfilter-sse3.cpp,
+ source/common/vec/ipfilter-sse41.cpp, source/common/vec/ipfilter-
+ sse42.cpp, source/common/vec/ipfilter-ssse3.cpp,
+ source/common/vec/ipfilter.inc, source/common/vec/vecprimitives.inc:
+ vec: split ipfilter primitives into their own C++ files
+ [ecaeb658c41f]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/intra-avx.cpp,
+ source/common/vec/intra-avx2.cpp, source/common/vec/intra-sse2.cpp,
+ source/common/vec/intra-sse3.cpp, source/common/vec/intra-sse41.cpp,
+ source/common/vec/intra-sse42.cpp, source/common/vec/intra-
+ ssse3.cpp, source/common/vec/intrapred.inc,
+ source/common/vec/vecprimitives.inc:
+ vec: split intra primitives into their own C++ files
+ [8a3b623143e7]
+
+ * source/common/vec/CMakeLists.txt, source/common/vec/pixel-avx.cpp,
+ source/common/vec/pixel-avx2.cpp, source/common/vec/pixel-sse2.cpp,
+ source/common/vec/pixel-sse3.cpp, source/common/vec/pixel-sse41.cpp,
+ source/common/vec/pixel-sse42.cpp, source/common/vec/pixel-
+ ssse3.cpp, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/utils.h,
+ source/common/vec/vecprimitives.inc:
+ vec: split pixel primitives into their own C++ files
+ [d7b8280f744a]
+
+2013-06-03 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/x265.cpp:
+ cmd: Fix segfault when an unrecognized option is given on the
+ command line.
+ [d4363da9df37]
+
+2013-06-02 Min Chen <chenm003@163.com>
+
+ * source/common/vec/intrapred.inc:
+ [review] instrinsic predIntraPlanar4_sse4
+ --- source/common/vec/intrapred.inc | 59
+ +++++++++++++++++++++++++++++++++++++++ 1 files changed, 59
+ insertions(+), 0 deletions(-)
+ [598fa5788632]
+
+ * source/common/vec/intrapred.inc:
+ intrapred: optimize by func_ptr in predIntraPlanar
+ --- source/common/vec/intrapred.inc | 59
+ ++++++++++++++++++-------------------- 1 files changed, 28
+ insertions(+), 31 deletions(-)
+ [9737e9d6ba9e]
+
+ * source/common/vec/CMakeLists.txt:
+ Enable SSE4 on VC9
+ --- source/common/vec/CMakeLists.txt | 10 +++------- 1 files changed,
+ 3 insertions(+), 7 deletions(-)
+ [ddfcdb3e6815]
+
+ * source/common/vec/intrapred.inc:
+ intrapred: simple predIntraPlanar4 by macro
+ --- source/common/vec/intrapred.inc | 49
+ ++++++++++++--------------------------- 1 files changed, 15
+ insertions(+), 34 deletions(-)
+ [43dc6a7f95cc]
+
+ * source/common/vec/intrapred.inc:
+ miss some authors
+ --- source/common/vec/intrapred.inc | 3 +++ 1 files changed, 3
+ insertions(+), 0 deletions(-)
+ [f17187830a01]
+
+2013-06-01 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ x265: use output frame counts for progress reports
+
+ This actually makes them less accurate in the short term because of
+ the GOP cadence of the encode function. but it is more correct from
+ a code logic point of view.
+ [0abd8ed72c32]
+
+ * source/encoder/encoder.cpp:
+ encoder: pull recon images from queue even when not requested
+
+ When the app wasn't requesting recon images, they were queueing
+ indefinitely in m_cListRecQueue (not quite as bad as it seems, it
+ only queues pointers and the buffers are recycled). And it's was
+ always returning 0 for iNumEncoded, which was bad.
+ [e93dce2aaf48]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: rename StarSearch to StarPatternSearch, make inline
+ [c7d3dbce14c8]
+
+ * source/encoder/motion.cpp:
+ motion: fixup comments, remove tabs, simplify some macros
+ [016c61125c55]
+
+ * source/Lib/TLibCommon/TComRom.h:
+ TComRom: remove unused extern
+ [ca6ac5ea20bd]
+
+ * source/encoder/motion.h:
+ motion: use sadStride in helper functions
+ [c70e2aff8caa]
+
+2013-06-01 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/motion.cpp:
+ motion: use sad_x4 in star Search for dist = 1.
+ [20a701e4a753]
+
+ * source/common/common.h:
+ motion: ME cycle count- Print lld
+ [4413954b9a14]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: TwoPoint search manually inlined. Now, exe_time_SUBSAMPLE_1
+ < exe_time_SUBSAMPLE_0.
+ [8d0a2281093e]
+
+ * source/common/common.h:
+ motion: Print Total Cycle count also. Avg. Cycle count doesn't give
+ exact idea of performance - since num_calls_SUBSAMPLE_0 !=
+ num_calls_SUBSAMPLE_1.
+ [5e5988fad642]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: Replace "stride << subsample" with "sadStride".
+ [2a19d8945ddd]
+
+ * source/Lib/TLibCommon/TComRom.h:
+ Merge conflict: Copy files directly from xhevc main repo. part 4
+ [e902484772b1]
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h:
+ Merge conflict: Copy files directly from xhevc main repo. part 3
+ [65463235027f]
+
+2013-05-31 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg, cfg/per-
+ sequence/BQMall.cfg, cfg/per-sequence/BQSquare.cfg, cfg/per-
+ sequence/BQTerrace.cfg, cfg/per-sequence/BasketballDrill.cfg, cfg
+ /per-sequence/BasketballDrillText.cfg, cfg/per-
+ sequence/BasketballDrive.cfg, cfg/per-sequence/BasketballPass.cfg,
+ cfg/per-sequence/BlowingBubbles.cfg, cfg/per-sequence/Cactus.cfg,
+ cfg/per-sequence/ChinaSpeed.cfg, cfg/per-sequence/FourPeople.cfg,
+ cfg/per-sequence/Johnny.cfg, cfg/per-sequence/Kimono.cfg, cfg/per-
+ sequence/KristenAndSara.cfg, cfg/per-
+ sequence/NebutaFestival_10bit.cfg, cfg/per-sequence/ParkScene.cfg,
+ cfg/per-sequence/PartyScene.cfg, cfg/per-
+ sequence/PeopleOnStreet.cfg, cfg/per-sequence/RaceHorses.cfg, cfg
+ /per-sequence/RaceHorsesC.cfg, cfg/per-sequence/SlideEditing.cfg,
+ cfg/per-sequence/SlideShow.cfg, cfg/per-
+ sequence/SteamLocomotiveTrain_10bit.cfg, cfg/per-
+ sequence/Traffic.cfg, cfg/per-sequence/Vidyo1.cfg, cfg/per-
+ sequence/Vidyo3.cfg, cfg/per-sequence/Vidyo4.cfg,
+ source/Lib/CMakeLists.txt,
+ source/Lib/TAppCommon/program_options_lite.cpp,
+ source/Lib/TAppCommon/program_options_lite.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/TestForChecking_BadCommit.bat, source/encoder/IntraPred.cpp,
+ source/encoder/TShortYUV.cpp, source/encoder/TShortYUV.h,
+ source/encoder/butterfly.h, source/encoder/common.cpp,
+ source/encoder/common.h, source/encoder/ipfilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/md5.cpp,
+ source/encoder/md5.h, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/encoder/pixel.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/encoder/threading.cpp, source/encoder/threading.h,
+ source/encoder/threadpool.cpp, source/encoder/threadpool.h,
+ source/encoder/vec/CMakeLists.txt, source/encoder/vec/avx.cpp,
+ source/encoder/vec/avx2.cpp, source/encoder/vec/blockcopy.inc,
+ source/encoder/vec/intrapred.inc, source/encoder/vec/ipfilter.inc,
+ source/encoder/vec/ipfilter16.inc, source/encoder/vec/ipfilter8.inc,
+ source/encoder/vec/macroblock.inc, source/encoder/vec/pixel.inc,
+ source/encoder/vec/pixel16.inc, source/encoder/vec/pixel8.inc,
+ source/encoder/vec/sse2.cpp, source/encoder/vec/sse3.cpp,
+ source/encoder/vec/sse41.cpp, source/encoder/vec/sse42.cpp,
+ source/encoder/vec/ssse3.cpp, source/encoder/vec/vec-primitives.cpp,
+ source/encoder/vec/vecprimitives.inc,
+ source/encoder/x86/CMakeLists.txt, source/encoder/x86/asm-
+ primitives.cpp, source/encoder/x86/const-a.asm,
+ source/encoder/x86/cpu-a.asm, source/encoder/x86/pixel-32.asm,
+ source/encoder/x86/pixel-a.asm, source/encoder/x86/pixel.h,
+ source/encoder/x86/sad-a.asm, source/encoder/x86/x86inc.asm,
+ source/encoder/x86/x86util.asm, source/x265cfg.cpp,
+ source/x265cfg.h, source/x265enc.cpp, source/x265enc.h,
+ source/x265main.cpp:
+ Merged multicoreware/xhevc into default
+ [2871d75ffb73]
+
+2013-06-01 Mandar Gurav <Mandar Gurav>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Merge conflict: Copy files directly from xhevc main repo. part 2
+ [c446638cb8c0]
+
+2013-06-01 ggopu <ggopu>
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ Merge conflict: Copy files directly from xhevc main repo.
+ [6272284d8ce0]
+
+2013-05-23 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * source/encoder/motion.cpp:
+ Merged multicoreware/xhevc into default
+ [53497b61c0ac]
+
+2013-05-24 ggopu <ggopu>
+
+ * build/nmake/make-solutions.bat, source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp:
+ Merge
+ [b224e58a7f8b]
+
+2013-05-23 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Backed out changeset: 06fa58c2176d
+ [effd80b01d39]
+
+2013-05-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: do not allow GOP size to be less than 1
+ [984eb5329bef]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TrComQuant: remove unused variable, fix GCC warnings
+ [2125b36b8ae6]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg, cfg/per-
+ sequence/BQMall.cfg, cfg/per-sequence/BQSquare.cfg, cfg/per-
+ sequence/BQTerrace.cfg, cfg/per-sequence/BasketballDrill.cfg, cfg
+ /per-sequence/BasketballDrillText.cfg, cfg/per-
+ sequence/BasketballDrive.cfg, cfg/per-sequence/BasketballPass.cfg,
+ cfg/per-sequence/BlowingBubbles.cfg, cfg/per-sequence/Cactus.cfg,
+ cfg/per-sequence/ChinaSpeed.cfg, cfg/per-sequence/FourPeople.cfg,
+ cfg/per-sequence/Johnny.cfg, cfg/per-sequence/Kimono.cfg, cfg/per-
+ sequence/KristenAndSara.cfg, cfg/per-
+ sequence/NebutaFestival_10bit.cfg, cfg/per-sequence/ParkScene.cfg,
+ cfg/per-sequence/PartyScene.cfg, cfg/per-
+ sequence/PeopleOnStreet.cfg, cfg/per-sequence/RaceHorses.cfg, cfg
+ /per-sequence/RaceHorsesC.cfg, cfg/per-sequence/SlideEditing.cfg,
+ cfg/per-sequence/SlideShow.cfg, cfg/per-
+ sequence/SteamLocomotiveTrain_10bit.cfg, cfg/per-
+ sequence/Traffic.cfg, cfg/per-sequence/Vidyo1.cfg, cfg/per-
+ sequence/Vidyo3.cfg, cfg/per-sequence/Vidyo4.cfg,
+ source/CMakeLists.txt,
+ source/Lib/TAppCommon/program_options_lite.cpp,
+ source/Lib/TAppCommon/program_options_lite.h, source/x265cfg.cpp,
+ source/x265cfg.h, source/x265enc.cpp, source/x265enc.h,
+ source/x265main.cpp:
+ x265-cli: remove old CLI program and config files
+
+ old command line: x265-cli -i Vidyo4.yuv -c cfg/encoder_I_15P.cfg -c
+ cfg/per-sequence/Vidyo4.cfg -b out.hevc new command line: x265
+ Vidyo4.y4m out.hevc
+
+ old command line: x265-cli -i Vidyo4.yuv -c cfg/encoder_all_I.cfg -c
+ cfg/per-sequence/Vidyo4.cfg -b out.hevc new command line: x265
+ Vidyo4.y4m out.hevc --sao -i 1
+ [cda100c6417f]
+
+2013-05-31 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: add "-i 32" hack to select "encoder_randomaccess_main"
+ config from hm
+
+ Also requires enabling --rect --amp --sao to match the output of
+ that config file.
+ [3136a4b62f03]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: be explicit about slice type
+ [4414841e3211]
+
+ * source/x265.cpp:
+ x265: fix warnings hidden by old x265-cli project
+ [192da7e89c14]
+
+2013-05-31 Steve Borho <steve@borho.org>
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: fix another set_source_files problem
+ [8d6efac63424]
+
+ * source/common/vec/CMakeLists.txt:
+ cmake: avoid warnings from x64 MSVC compilers
+
+ x64 implies at least SSE4, and gets tetchy when you say /arch:SSE2
+ Previously, the set_source_files_properties line was busted by a bad
+ cut-paste
+ [633b668d6c47]
+
+2013-05-31 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/primitives.h,
+ source/common/vec/pixel.inc:
+ optimize by convert32to16_shr
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 5 +----
+ source/common/primitives.h | 2 ++ source/common/vec/pixel.inc | 24
+ ++++++++++++++++++++++-- 3 files changed, 25 insertions(+), 6
+ deletions(-)
+ [f70b88137438]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/primitives.h,
+ source/common/vec/pixel.inc:
+ optimize by convert16to32_shl
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 17 ++++++++++++++---
+ source/common/primitives.h | 2 ++ source/common/vec/pixel.inc | 18
+ ++++++++++++++++++ 3 files changed, 34 insertions(+), 3 deletions(-)
+ [525a8ad9e244]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/primitives.h,
+ source/common/vec/pixel.inc:
+ optimize by convert32to16
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 5 +----
+ source/common/primitives.h | 2 ++ source/common/vec/pixel.inc | 19
+ +++++++++++++++++++ 3 files changed, 22 insertions(+), 4
+ deletions(-)
+ [49856ba4303c]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant::xT: replace for_loop by memcpy()
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 15 ++++----------- 1
+ files changed, 4 insertions(+), 11 deletions(-)
+ [060e49a8383d]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/primitives.h,
+ source/common/vec/pixel.inc:
+ optimize by convert16to32
+ --- source/Lib/TLibCommon/TComTrQuant.cpp | 9 +++++----
+ source/common/primitives.h | 3 +++ source/common/vec/pixel.inc | 20
+ ++++++++++++++++++++ 3 files changed, 28 insertions(+), 4
+ deletions(-)
+ [ec636f543969]
+
+ * source/encoder/wavefront.cpp:
+ thread: bits matches to HM when single thread
+ --- source/encoder/wavefront.cpp | 11 ++++++++--- 1 files changed, 8
+ insertions(+), 3 deletions(-)
+ [fa49682780e3]
+
+ * source/common/vec/macroblock.inc:
+ fix bug on VC9-x86
+ --- source/common/vec/macroblock.inc | 87
+ +++++++++++++++++++++++++------------ 1 files changed, 59
+ insertions(+), 28 deletions(-)
+ [61dc8cf0acdd]
+
+2013-05-31 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Fix for 8bpp & 16bpp output mismatch
+ [ce4d663b31d7]
+
+2013-05-31 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: Disable set but not used variables (-Werror=unused-but-
+ set-variable).
+ [4c7879f51a14]
+
+ * source/common/common.cpp:
+ Common: Fix compile error -Werror=write-strings.
+ [e73b996e121d]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * source/common/vec/ipfilter8.inc:
+ ipfilter: work around unaligned data copies generated by VC9 (from
+ Min Chen)
+ [05e0b5742adb]
+
+2013-05-31 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/x265.cpp:
+ x265: Fix compile issue due to -Wwrite-strings and undeclared
+ va_start() and va_end().
+ [4dfbf564c772]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * source/test/mbdstharness.cpp:
+ dequant: fix a test bench typo
+ [c7b53fb8146d]
+
+ * source/x265.cpp, source/x265opts.h:
+ x265: make input/output bit depths function local to parse method,
+ fix eoln
+ [e7d3e278ba1c]
+
+ * source/x265cfg.cpp:
+ x265cfg: set default log level for x265-cli to "debug"
+ [1dab28c7dbda]
+
+ * source/x265.cpp:
+ x265: add a CTRL+C handler
+ [a8b7be978131]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp,
+ source/x265enc.cpp:
+ TEncGOP: show per-frame statistics at log level X265_LOG_DEBUG
+ [be3ba8d41623]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/common/common.cpp,
+ source/common/common.h, source/common/primitives.cpp,
+ source/common/primitives.h, source/encoder/encoder.cpp,
+ source/test/testbench.cpp, source/x265.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265cfg.h, source/x265enc.cpp,
+ source/x265opts.h:
+ x265: use x265_log when initializing primitives and thread pool
+
+ * removes thread pool pointer from CLI apps, encoders initialize it
+ now
+ * thread pool size validation moved to x265_check_params()
+ [55c353b046a1]
+
+ * source/common/common.cpp, source/x265.cpp, source/x265.h,
+ source/x265opts.h:
+ x265: introduce x265_param_t.logLevel, and x265_log()
+ [cb9129046937]
+
+ * source/x265.h:
+ x265: fixup comment for iWaveFrontSynchro
+ [7bb9d9960526]
+
+ * source/x265.cpp, source/x265.h, source/x265opts.h:
+ x265: introduce the concept of log levels
+ [e7e934f1aed9]
+
+ * source/x265.h:
+ x265: prune unused bits of public header
+ [d6c0d17e7c87]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp, source/x265.cpp:
+ x265: add x264 style progress reporting, kbps numbers differ from HM
+ [8d9f188a7219]
+
+ * source/common/threadpool.cpp, source/common/threadpool.h,
+ source/x265.cpp:
+ threadpool: report thread pool size, fix bug with CPU count auto-
+ detect
+ [dddd03cf7b26]
+
+ * source/CMakeLists.txt:
+ cmake: remove short-lived openmp compile flags
+ [0a300add8bc5]
+
+2013-05-30 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/x265.cpp, source/x265cfg.cpp:
+ Config: Force the threadpool to be single threaded when wavefront is
+ disabled.
+ [6b1b567da72c]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/CMakeLists.txt:
+ WPP: Use the threadpool based wavefront parallel processing module.
+ [00c1977b8709]
+
+ * source/encoder/wavefront.cpp, source/encoder/wavefront.h:
+ WPP: Module for wavefront parallelization using threadpool.
+ [fe2556ffffff]
+
+ * source/Lib/TLibEncoder/TEncTop.h:
+ TLibEncoder: Add threadpool accessor to TEncTop.
+ [2730479ce267]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: fix a bug introduced in last commit
+ [c853140e23c9]
+
+ * source/encoder/motion.cpp:
+ motion: two more SAD calls that were missed
+ [b9e8e9d51890]
+
+ * source/encoder/motion.cpp:
+ motion: fix a missed raw call to a sad() primitive
+ [08dd67222b97]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: minor cleanups, no behavior changes
+ [6f32a8ba24b0]
+
+ * source/encoder/motion.cpp:
+ motion: else clause of primitive setup must always be compiled in
+
+ This fixes some of the broken-ness when SUBSAMPLE_SAD is enabled
+ [4d77283b0129]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: remove unused blockWidth and blockHeight
+ [d7ec2b5e1519]
+
+ * Merged in ggopu/gopu_xhevc (pull request #176)
+
+ Motion: implemented subsampling SAD when the block height is greater
+ than 12
+ [d67eed484a46]
+
+2013-05-30 ggopu <ggopu>
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ Motion: implemented subsampling SAD when the block height is greater
+ than 12
+ [7d87f713971f]
+
+2013-05-30 Gopu G <gopu@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [29850cefbec9]
+
+2013-05-29 Gopu G <gopu@multicorewareinc.com>
+
+ * source/encoder/motion.cpp:
+ Merged multicoreware/xhevc into default
+ [824c2ddca305]
+
+2013-05-30 ggopu <ggopu>
+
+ * source/encoder/motion.cpp:
+ Conflict
+ [edc303ed7859]
+
+2013-05-29 ggopu <ggopu>
+
+ * source/encoder/motion.cpp:
+ Motion: raster search refinement - sad_x4 Implementation
+ [d8ac001a7730]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * source/common/primitives.cpp, source/common/primitives.h,
+ source/common/x86/README.txt, source/common/x86/asm-primitives.cpp,
+ source/common/x86/pixel-a.asm, source/common/x86/pixel.h,
+ source/common/x86/x86inc.asm:
+ asm: rebrand x264 assembly functions with x265_ to avoid static link
+ collisions
+
+ x265 compiles the routines with a different FENC_STRIDE, so they
+ cannot have the same names as the x264 routines else x264 may break
+ when linked together with x265 in the same application.
+ [3b4597a6a66b]
+
+2013-05-30 Deepthi <Deepthi>
+
+ * Merge
+ [d0242a8f6c60]
+
+2013-05-30 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [2a5bfbaa64c1]
+
+2013-05-30 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp:
+ Modified unit test
+ [369944997be0]
+
+2013-05-30 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [f4a49e8bc939]
+
+2013-05-30 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp:
+ More comprehensive unit test code for xDeQuant.
+ [e7f272bfe95a]
+
+2013-05-30 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [4fe41d6eced6]
+
+2013-05-29 praveentiwari <praveentiwari>
+
+ * source/common/vec/macroblock.inc:
+ Vector code for xDeQuant function
+ [71119aff0eb0]
+
+2013-05-29 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [c94a23b37846]
+
+2013-05-29 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/common/macroblock.cpp:
+ Shorten the variable names
+ [32326bb746ae]
+
+2013-05-29 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [92fa5bc97c93]
+
+ * Merged multicoreware/xhevc into default
+ [d0a255af3f3b]
+
+2013-05-29 praveentiwari <praveentiwari>
+
+ * source/common/macroblock.cpp:
+ C primitive for xDeQuant function
+ [40b64d61b0ac]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Test code for xDeQuant
+ [0f58120670fe]
+
+ * source/common/primitives.h:
+ Added function pointer typedef for xDeQuant in primitives.h file
+ [f82cb9a78b0a]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Added a switch and modified argument list for xDeQuant to break
+ dependecy from other member variable and functions
+ [28de65cc3e50]
+
+2013-05-30 Deepthi <Deepthi>
+
+ * Merge
+ [8c8f8d931100]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ RDO: new version for fast mode decision
+ [e7ca54f292cb]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp:
+ common: prevent a known-broken configuration (wpp+aqselect)
+ [4c56f1b1c190]
+
+ * source/x265opts.h:
+ x265opts: disable --depth when compiled for 8bpp, make --wpp a
+ boolean flag
+ [f02a5ddfe1d4]
+
+ * source/common/common.cpp:
+ common: give log indication when FAST_MODE_DECISION has been
+ compiled in
+ [51cea626fc5c]
+
+ * source/common/common.cpp:
+ common: show rect and amp options when enabled
+ [2b1b890ae098]
+
+ * source/common/common.cpp:
+ common: group transform skip options together
+ [93cd37a94aa6]
+
+ * source/CMakeLists.txt:
+ cmake: give FAST_MODE_DECISION an accurate help message
+ [57ac25324d49]
+
+2013-05-30 Deepthi <Deepthi>
+
+ * cfg/encoder_I_15P.cfg, source/CMakeLists.txt,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.cpp:
+ Merge
+ [af2246ceeb2c]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ First cut version of using SAD costs.
+ [4d681d6d86fe]
+
+ * cfg/encoder_I_15P.cfg, source/common/common.cpp:
+ Disabling rect and AMP search (for now)
+ [06f36a6d94fc]
+
+2013-05-29 Deepthi <Deepthi>
+
+ * source/CMakeLists.txt, source/Lib/TLibEncoder/TEncSearch.cpp:
+ ME satd costs and bits captured. FAST_MODE_DECISION introduced.
+ [27ac6d4a40fd]
+
+2013-05-30 Steve Borho <steve@borho.org>
+
+ * source/common/common.cpp, source/common/common.h:
+ common: add x265_mdate() and fix rdoq option names
+ [7e10b0e4554f]
+
+2013-05-29 Steve Borho <steve@borho.org>
+
+ * source/x265opts.h:
+ x265: add "no-" options for boolean parameters, cleanup sao and hash
+ options
+ [6769ff6d6154]
+
+ * source/x265.cpp:
+ x265: add basic command line help
+ [a48721370b31]
+
+ * source/x265.cpp:
+ x265: improve reporting of invalid or extra vars, allow "x265 input
+ output"
+ [fafeb6fb8d0c]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: introduce infrastructure for sub-sampled SAD
+
+ When performing a motion search for a block taller than 12 pixels
+ (16 or more) we want to use sub-sampled SAD, meaning we only measure
+ every other row of the block. Normally one would do this by halving
+ the number of rows and doubling the stride, and doubling the output
+ SAD result but we have two caveats:
+
+ 1 - our sad_x3 and sad_x4 primitives have hard-coded fenc strides
+ (FENC_STRIDE) and thus we cannot subsample the fenc block by
+ doubling stride. Instead we have to actually subsample the block and
+ store it in a buffer with FENC_STRIDE, which I've done in this
+ commit. Now fencSad will always point to a buffer with FENC_STRIDE,
+ and if this->subsample == 1, the buffer is subsampled.
+
+ 2 - since the SAD costs never leave this function, we do not have to
+ shift up our sad results by one bit to account for the subsampling.
+ The subpel refine step will remeasure with non-subsampled SATD and
+ thus we don't care what the best SAD cost actually was (only that it
+ was the best). The only place where we need to account for
+ subsampling is in the SAD_THRESH macro. It must shift the sad cost
+ up by this->subsample bits.
+
+ Steps remaining (all to be done within #if SUBSAMPLE_SAD
+
+ 1 - Replace fenc with fencSad for all sad(), sad_x3(), sad_x4()
+ calls 2 - shift the luma stride by this->subsample for sad(),
+ sad_x3() and sad_x4() 3 - shift up SAD cost by this->subsample for
+ SAD_THREAD checks 4 - make sure all the changes from 1..3 have no
+ effect on SATD calls 5 - test, we should see a small quality loss
+ and an ME perf gain when enabled
+ [3ea322fcdd7a]
+
+ * source/CMakeLists.txt:
+ gcc: add openmp flags for gcc and icl
+ [7f14e6ca1bff]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: disable allocation and usage of events if numThreads == 1
+ [300663bf0015]
+
+2013-05-23 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: improvement performance based on replace iFinish by Event
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 41
+ ++++++++++++++++++++++++++------- 1 files changed, 32 insertions(+),
+ 9 deletions(-)
+ [1f68ebfe1ae7]
+
+ * source/CMakeLists.txt, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: the first worked version, turn on in WPP mode only
+ [b67a18ce5c31]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ thread: modify m_pcTrQuant to every thread, [BROKEN
+ UseAdaptQpSelect]
+ --- source/Lib/TLibCommon/TComSlice.h | 5 -----
+ source/Lib/TLibEncoder/TEncCu.cpp | 3 ++-
+ source/Lib/TLibEncoder/TEncCu.h | 1 +
+ source/Lib/TLibEncoder/TEncGOP.cpp | 23 +++++++++++++++--------
+ source/Lib/TLibEncoder/TEncSearch.cpp | 3 +--
+ source/Lib/TLibEncoder/TEncSearch.h | 2 +-
+ source/Lib/TLibEncoder/TEncSlice.cpp | 22 +++++++++++++++++++---
+ source/Lib/TLibEncoder/TEncSlice.h | 2 +-
+ source/Lib/TLibEncoder/TEncTop.cpp | 26 +++++++++++++-------------
+ source/Lib/TLibEncoder/TEncTop.h | 4 ++-- 10 files changed, 55
+ insertions(+), 36 deletions(-)
+ [d4a0ce886fae]
+
+2013-05-29 Steve Borho <steve@borho.org>
+
+ * build/linux/batch.py:
+ update batch.py to use x265.exe
+ [45a9d983b45a]
+
+ * source/x265.cpp:
+ x265: destroy cliopt before checking for leaks (x265.exe now leak
+ free)
+ [492957758353]
+
+ * source/encoder/encoder.cpp:
+ encoder: destroy YUV buffers before deleting them
+ [9131daa60c98]
+
+ * source/encoder/encoder.cpp:
+ encoder: properly release reconstructed image buffers at close
+ [61d3fb60cb9e]
+
+ * source/x265.cpp:
+ x265: cleanup library statics before exit, prevent leak reports
+ [908544e772b4]
+
+ * source/encoder/encoder.h:
+ encoder: preallocate room in NAL containers
+ [932360bdc969]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: write output packets directly into std::string buffer
+ [80db68a1ea35]
+
+ * source/encoder/motion.cpp:
+ motion: check motion candidates even for star search
+ [60b59cac3bc2]
+
+ * source/encoder/motion.cpp:
+ motion: use sad_x4 for raster search
+ [f0cbf34f0845]
+
+2013-05-29 Min Chen <chenm003@163.com>
+
+ * source/encoder/encoder.cpp, source/x265.h, source/x265opts.h:
+ x265: new option hash
+ --- source/encoder/encoder.cpp | 2 +- source/x265.h | 3 +++
+ source/x265opts.h | 1 + 3 files changed, 5 insertions(+), 1
+ deletions(-)
+ [d5e04469c1fc]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ x265: fix bug in nal write
+ --- source/encoder/encoder.cpp | 6 +++++- source/encoder/encoder.h |
+ 1 + 2 files changed, 6 insertions(+), 1 deletions(-)
+ [ae9452e370e7]
+
+2013-05-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/PPA/ppaCPUEvents.h:
+ ppa: tweak PPA events to extract more useful detail about threading
+ [3f33cdd7ff98]
+
+ * source/x265.cpp:
+ x265: fix integer argument parsing
+ [c40e7dbe7f07]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/PPA/ppaCPUEvents.h:
+ TEncCu: add separate PPA event for xCalcRDCostIntra
+ [ee68c82fc7c7]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/PPA/ppa.h,
+ source/PPA/ppaCPUEvents.h:
+ TEncCU: allow PPA to show recursive depth to xCompressCU
+ [f625550f4de7]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: fix display of TLibEncoder headers
+ [3e9e9412262b]
+
+ * source/common/common.cpp, source/x265.cpp:
+ common: improve the logging of configuration
+ [cfde846ed6e4]
+
+2013-05-28 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ x265: report total elapsed time
+ [5b755da5e73a]
+
+2013-05-29 Deepthi <Deepthi>
+
+ * Merge
+ [d16847d13c67]
+
+ * source/CMakeLists.txt, source/Lib/TLibEncoder/TEncCu.cpp:
+ Early Partition Decision macro removed - the xCompressCU version has
+ been commented out with a warning.
+ [7bad155a07be]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Cleanup - early exit
+ [82f090c9a0f2]
+
+2013-05-28 Deepthi <Deepthi>
+
+ * Merge
+ [d876d9c5eecc]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Early exit reloaded.
+ [fcdedf954fbf]
+
+2013-05-27 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Adding CalcRDCostIntra
+ [6de8c04a070d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Separating out analysis structure from mode decision
+ [3a4b62a318bb]
+
+2013-05-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: hoist two-point early out out of function
+ [f3c78bfe071d]
+
+ * source/encoder/motion.cpp:
+ motion: convert two-point search into a table lookup
+ [3d4df6126d11]
+
+ * source/common/common.h, source/encoder/encoder.cpp:
+ Merge
+ [60570eb6bff8]
+
+ * source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.h,
+ source/encoder/encoder.cpp:
+ common: cleanup cycle counter, disable by default
+ [70ee52ecfdb5]
+
+ * source/common/common.h, source/encoder/motion.cpp:
+ motion: rename some macros, enable sad_x4
+ [fb67b234b11e]
+
+ * source/encoder/encoder.cpp:
+ encoder: use osstream.write() instead of << which appears to be zero
+ terminated
+ [ebb0c3ff732c]
+
+2013-05-28 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/common/common.h:
+ Implemented the Cycle Count Calculation for Motion Estimation
+ [2a0b3e881909]
+
+ * source/common/common.h, source/encoder/motion.cpp:
+ sad_x4 Implementation for Star Search
+ [e0a1a4ed9ccc]
+
+2013-05-27 Steve Borho <steve@borho.org>
+
+ * source/common/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: minor cleanups
+ [4fd217fbf622]
+
+2013-05-27 Min Chen <chenm003@163.com>
+
+ * source/VectorClass/vectori128.h, source/common/CMakeLists.txt,
+ source/encoder/CMakeLists.txt:
+ Fix build problem
+ --- source/VectorClass/vectori128.h | 2 +-
+ source/common/CMakeLists.txt | 3 ++- source/encoder/CMakeLists.txt |
+ 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-)
+ [3ba1fae68c60]
+
+2013-05-27 Steve Borho <steve@borho.org>
+
+ * source/x265.h:
+ x265: fix eoln mangling
+ [835abb6c24f9]
+
+2013-05-27 praveentiwari <praveentiwari>
+
+ * source/common/vec/macroblock.inc:
+ .60x more performance gain for partailButterfly4 intrinsic version
+ [3cd8e6c169f6]
+
+2013-05-26 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Adding CalcRDCostInter
+ [a61257252105]
+
+2013-05-25 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/x265.cpp:
+ x265: encoder_all_I.cfg output now matches x265 -i1 --sao 1
+
+ SAO was never disabled in the I frame config, so must be enabled to
+ get the exact same bitstream
+ [a581b097ad6e]
+
+ * source/encoder/encoder.cpp:
+ x265: I15P config now matches bit for bit with x265-cli
+ [7bab890121d4]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp, source/encoder/encoder.cpp,
+ source/encoder/encoder.h:
+ x265: resolve some bitstream differences between CLI apps
+ [dee26a40d02a]
+
+ * source/TestForChecking_BadCommit.bat,
+ source/tools/TestForChecking_BadCommit.bat:
+ move regression batch file into tools folder
+ [8b15863c0013]
+
+ * source/x265.cpp:
+ nits
+ [e32ccdc056a1]
+
+ * source/encoder/encoder.cpp, source/x265.cpp:
+ encoder: correct NAL counts and a few other issues
+
+ Byte count difference between the two CLI programs is now 2
+ [2fe823ae463f]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h,
+ source/x265.cpp:
+ encoder: plausible NAL write routines
+ [8fa3800a48e2]
+
+ * source/x265.cpp:
+ x265: enable NAL write functions
+ [025d311ac08e]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/common/common.h,
+ source/x265.cpp, source/x265main.cpp:
+ x265: move NVM macros to common.h
+ [e22bfa6b8f85]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/TComSlice.h, source/x265.cpp, source/x265.h:
+ x265: move NalUnitType from CommonDef.h to public x265.h
+ [a2f0181eda8b]
+
+ * source/CMakeLists.txt, source/input/yuv.cpp:
+ x265: more warnings cleanups
+ [79cab5bc3d95]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: add missing semi-colons after PPA macros
+ [c5796290ba6e]
+
+ * source/input/yuv.cpp:
+ x265: more compiler warnings fixes
+ [3478dcabae7b]
+
+ * source/test/CMakeLists.txt:
+ cmake: test benches only need common.lib
+ [813159de8a6a]
+
+ * source/input/y4m.cpp, source/input/y4m.h, source/x265.cpp:
+ x265: fix compiler warnings that were accidentally hidden
+ [068c2a7d55a1]
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt,
+ source/common/CMakeLists.txt, source/encoder/CMakeLists.txt,
+ source/test/CMakeLists.txt:
+ cmake: merge TLibCommon into common.lib, TLibEncoder into
+ encoder.lib
+
+ This fixes link issues with GCC, and clarifies the project
+ relationships
+ [46c9252f7dcb]
+
+ * source/x265.cpp, source/x265opts.h:
+ x265opt: add help strings to CLI help output
+ [1dab9cd7ccf7]
+
+ * source/x265opts.h:
+ x265opt: more tuning of command line options
+ [750c8127e6bc]
+
+ * source/CMakeLists.txt:
+ cmake: provide version number to x265.cpp
+ [8693e88f6e7b]
+
+ * source/common/primitives.cpp, source/encoder/encoder.cpp:
+ move x265_cleanup into the encoder/ folder, fixes link references
+ [678151ff4837]
+
+ * source/Lib/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: split HM into TLibEncoder and TLibCommon
+ [617b70bc5028]
+
+ * source/CMakeLists.txt, source/common/CMakeLists.txt,
+ source/common/IntraPred.cpp, source/common/TShortYUV.cpp,
+ source/common/TShortYUV.h, source/common/butterfly.h,
+ source/common/common.cpp, source/common/common.h,
+ source/common/ipfilter.cpp, source/common/macroblock.cpp,
+ source/common/md5.cpp, source/common/md5.h, source/common/pixel.cpp,
+ source/common/primitives.cpp, source/common/primitives.h,
+ source/common/threading.cpp, source/common/threading.h,
+ source/common/threadpool.cpp, source/common/threadpool.h,
+ source/common/vec/CMakeLists.txt, source/common/vec/avx.cpp,
+ source/common/vec/avx2.cpp, source/common/vec/blockcopy.inc,
+ source/common/vec/intrapred.inc, source/common/vec/ipfilter.inc,
+ source/common/vec/ipfilter16.inc, source/common/vec/ipfilter8.inc,
+ source/common/vec/macroblock.inc, source/common/vec/pixel.inc,
+ source/common/vec/pixel16.inc, source/common/vec/pixel8.inc,
+ source/common/vec/sse2.cpp, source/common/vec/sse3.cpp,
+ source/common/vec/sse41.cpp, source/common/vec/sse42.cpp,
+ source/common/vec/ssse3.cpp, source/common/vec/vec-primitives.cpp,
+ source/common/vec/vecprimitives.inc,
+ source/common/x86/CMakeLists.txt, source/common/x86/asm-
+ primitives.cpp, source/common/x86/const-a.asm,
+ source/common/x86/cpu-a.asm, source/common/x86/pixel-32.asm,
+ source/common/x86/pixel-a.asm, source/common/x86/pixel.h,
+ source/common/x86/sad-a.asm, source/common/x86/x86inc.asm,
+ source/common/x86/x86util.asm, source/encoder/CMakeLists.txt,
+ source/encoder/IntraPred.cpp, source/encoder/TShortYUV.cpp,
+ source/encoder/TShortYUV.h, source/encoder/butterfly.h,
+ source/encoder/common.cpp, source/encoder/common.h,
+ source/encoder/ipfilter.cpp, source/encoder/macroblock.cpp,
+ source/encoder/md5.cpp, source/encoder/md5.h,
+ source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/threading.cpp,
+ source/encoder/threading.h, source/encoder/threadpool.cpp,
+ source/encoder/threadpool.h, source/encoder/vec/CMakeLists.txt,
+ source/encoder/vec/avx.cpp, source/encoder/vec/avx2.cpp,
+ source/encoder/vec/blockcopy.inc, source/encoder/vec/intrapred.inc,
+ source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter16.inc,
+ source/encoder/vec/ipfilter8.inc, source/encoder/vec/macroblock.inc,
+ source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc, source/encoder/vec/sse2.cpp,
+ source/encoder/vec/sse3.cpp, source/encoder/vec/sse41.cpp,
+ source/encoder/vec/sse42.cpp, source/encoder/vec/ssse3.cpp,
+ source/encoder/vec/vec-primitives.cpp,
+ source/encoder/vec/vecprimitives.inc,
+ source/encoder/x86/CMakeLists.txt, source/encoder/x86/asm-
+ primitives.cpp, source/encoder/x86/const-a.asm,
+ source/encoder/x86/cpu-a.asm, source/encoder/x86/pixel-32.asm,
+ source/encoder/x86/pixel-a.asm, source/encoder/x86/pixel.h,
+ source/encoder/x86/sad-a.asm, source/encoder/x86/x86inc.asm,
+ source/encoder/x86/x86util.asm, source/test/CMakeLists.txt:
+ directory re-org, move primitives and infrastructure into common/
+ folder
+
+ This encoder/common split is also how x264 has its code arranged.
+
+ common - performance primitives, threading, low level features
+ encoder - analysis, mode decision, cabac, high level features
+
+ General rules: 1. Things we're replacing from TLibCommon/ go in
+ common/ 2. Things we're replacing from TLibEncoder/ go in encoder/
+ [96baad4e5160]
+
+2013-05-25 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ More if - I_slice checks removed
+ [bcbed778915b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Removing redundant if-I_slice checks
+ [7dfef87f686f]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ A separate path for Intra Slice Analysis
+ [9372c4dd1876]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ POinters for each NxN partition
+ [07982959ab7d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ This code snippet is baffling - no NxN partitions allowed at any
+ level for inter-CUs.
+ [5077b41e4dcc]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ More PCM cleanup
+ [4c23d8da41c3]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Removing PCM and AMP from EARLY_PARTITION.
+ [996d036256a5]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Done experimenting - lets clean up and start afresh.
+ [b831e30a39f1]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Merge
+ [1275b8710950]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Bug fix for no EARLY_DECISION path. The difference between #ifndef
+ and #if !!
+ [fe1e15dc6eb1]
+
+2013-05-24 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Eliminating repetitive cost checks for 4 NxN partitions
+ [472585bb237a]
+
+2013-05-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: correct the flush argument to TEncTop::encoder()
+ [ea418dc405d4]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: use less horizontal space to print per-frame PSNR
+ [f377a112c835]
+
+ * source/encoder/encoder.cpp:
+ encoder: reorder some lines, should have no effect
+ [2729b04a27f3]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp, source/PPA/ppaCPUEvents.h:
+ ppa: add wrapping event for loop filters
+ [3639ac6c84ed]
+
+ * source/x265.cpp:
+ x265: combine two log lines, remove bitstream filename (not
+ relevant)
+ [73c2c3b6bdd2]
+
+ * source/encoder/common.cpp:
+ common: change more defaults to match I15P
+ [3462f6dfee4d]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: pull in really ugly GOP intialization/validation code from
+ TAppEncoder
+
+ This all goes away once we have a proper lookahead
+ [35f67ed1b8ce]
+
+ * source/encoder/common.cpp:
+ common: fixup default params
+ [5e9aca57a444]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ nits, no code change
+ [a893a5ee88ab]
+
+ * source/x265.cpp:
+ x265: fix input file arg indexing
+ [f01c09fd1370]
+
+2013-05-25 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/vec/intrapred.inc:
+ intra: Fix compile warning for HIGH_BIT_DEPTH (-Werror=shadow).
+ [480bc3934409]
+
+ * source/encoder/vec/intrapred.inc:
+ intra: Fix compile warning for HIGH_BIT_DEPTH (-Werror=unused-but-
+ set-variable).
+ [d5459b8da333]
+
+ * source/encoder/vec/intrapred.inc:
+ intra: Fix vector conversion errors.
+
+ source/encoder/vec/intrapred.inc:570:66: error: conversion from
+ ‘Vec128b’ to non-scalar type ‘Vec8s’ requested Vec8s
+ v_topRow = load_partial(const_int(8), &pSrc[-srcStride]); // topRow
+
+ ...
+ [e63381924908]
+
+ * source/x265.cpp:
+ x265: Fix compile error due to undeclared strncmp function.
+ [8b6c9566d28d]
+
+2013-05-24 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/motion.h:
+ motion: Fix compile warning due to -Wparentheses.
+ [ea85c7f907b9]
+
+2013-05-23 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: Fix compile warnings/errors due to -Wmaybe-uninitialized.
+ [7984ca4e57fd]
+
+2013-05-24 Steve Borho <steve@borho.org>
+
+ * source/x265.cpp:
+ x265: more debugging
+ [81f824e31a0d]
+
+ * source/x265.cpp, source/x265opts.h:
+ x265: more work on CLI options
+ [3b6c4efdc154]
+
+ * source/CMakeLists.txt, source/x265.cpp, source/x265opts.h:
+ x265: add getopt() to new CLI app, tune short flags to match x264
+ [c140af14db48]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ re-apply bug fix, there must have been a bad merge somewhere
+ [d14951b6324a]
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #170)
+
+ IntraPredAng 16x16 with all modes
+ [813e9c90cbf6]
+
+2013-05-24 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/intrapred.inc:
+ Merge
+ [73316a3addc5]
+
+ * source/encoder/vec/intrapred.inc:
+ IntraPredAng 16x16 with all modes
+ [9d91f3584db2]
+
+ * source/VectorClass/vectori128.h:
+ ForceInline few more functions in vectorclass
+ [05870dbb3efb]
+
+ * build/nmake/make-solutions.bat:
+ Merge
+ [2a6f287ceebe]
+
+ * source/encoder/vec/intrapred.inc:
+ IntraPredAng16x16 few modes, not getting called yet, shall be
+ included on completion
+ [4b10526cb3a0]
+
+2013-05-24 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in praveentiwari/xhevc_praveent (pull request #169)
+
+ Added logic to avoid saturation in partialButterfly4 intrinsic
+ version
+ [e3ed785d727f]
+
+2013-05-24 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Added logic to avoid saturation in partialButterfly4 intrinsic
+ version
+ [81d852d7865b]
+
+ * source/encoder/vec/macroblock.inc:
+ Removed unused vectors from partialButterflyInverse32 code
+ [afb8d92f66f4]
+
+ * source/encoder/vec/macroblock.inc:
+ Removed unused vectors from partialButterflyInverse16
+ [fabf29c2888a]
+
+ * source/encoder/vec/macroblock.inc:
+ Removed unused vectore from partialButterflyInvers8 code
+ [1d2b3e54a4a4]
+
+ * source/encoder/vec/macroblock.inc:
+ optimized saturation mechanism in partialButterflyInvers16 vector
+ version
+ [19b0f38f6380]
+
+ * source/encoder/vec/macroblock.inc:
+ Removed unnecessary computation from partialButterflyInverse4 vector
+ version
+ [08b2688b6de9]
+
+ * source/encoder/vec/macroblock.inc:
+ changed saturation mechanism for partialButterflyInverse8 vector
+ version
+ [4d0cf1002390]
+
+2013-05-24 Deepthi <Deepthi>
+
+ * Merge
+ [f739e927e018]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Storing NxN CU's at each depth
+ [051ac8dfaff9]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Bug fix for m_NxNCU
+ [84a82ca7c5a6]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ More cleanup; Rmeoving CheckBestMode out of CheckInterCost
+ [477d76b93842]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Cleanup: Remove extra arguments from xCheckRDCostInter/Intra
+ [4555cb1f1a2b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Adding data structures for NxN information
+ [ef9f8f85c277]
+
+2013-05-24 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Changed packing mechanism for partialButterfly8 intrinsic version
+ [a6f34ed51a4d]
+
+2013-05-24 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [f32272e3ca22]
+
+2013-05-24 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Removed unnecessary computation from partialButterflyInverse32
+ [c7ee802ee960]
+
+2013-05-24 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [b1d686c45089]
+
+ * build/nmake/make-solutions.bat:
+ Merged multicoreware/xhevc into default
+ [fd0bbd1775d6]
+
+2013-05-23 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [526ab84ce55d]
+
+ * Merged multicoreware/xhevc into default
+ [f9fd6ba9f9bc]
+
+2013-05-24 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/intrapred.inc:
+ Fixed build for HIGH_BIT_DEPTH enabled
+ [ea8e87bacbcf]
+
+2013-05-23 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: fix star search's raster step
+
+ tmv's loop range covers the entire search area. The search origin
+ should not be added to it.
+ [a3439ab05d47]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: hard-code our simple P frame GOP structure
+
+ It will be the default GOP structure, but "All I" can be selected
+ simply by adding --keyint 1 option. Will add another option for
+ all-B later.
+ [04ce483efd92]
+
+ * source/encoder/vec/CMakeLists.txt, source/encoder/vec/vec-
+ primitives.cpp:
+ cmake: prevent VC9 and VC10 from using SSE4, fixes aligned move
+ crashes
+ [8394398ddad3]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ nit
+ [dc7eea8b9b88]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: do not use SSE4 intrinsics for lower instrset builds
+ [7c65d9710ec4]
+
+ * source/encoder/vec/ipfilter8.inc:
+ ipfilter: use immediate load-partial, fixes VC9 x64 crashes
+ [f66f0728d7e1]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: do not use SSE4 intrinsics for lower instrset builds
+ [3ea4514efde6]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: only allocate extY tmp buffer when necessary, use
+ xMalloc
+ [9894aed732d5]
+
+ * build/nmake/make-solutions.bat:
+ build: drop nmake script - was only a temp hack for ASM support
+ [ce6d7bc7f18d]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ nit
+ [cbf103758b5a]
+
+ * source/x265.cpp:
+ x265: inline the NAL write functions into CLIOptions
+ [661d5db35d30]
+
+ * source/x265.cpp:
+ x265: include assert.h for VLD validation checks
+ [9479fde37ee3]
+
+ * source/encoder/motion.h:
+ motion: manually enforce 16 byte alignment for fenc buffer
+ [577747a625ff]
+
+2013-05-23 Deepthi <Deepthi>
+
+ * source/encoder/vec/macroblock.inc:
+ Merge
+ [d749a9fe2c1c]
+
+ * Merge
+ [8686b9a4e74c]
+
+2013-05-23 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [d329a297cccd]
+
+2013-05-23 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Intrinsic code for partialButterflyInverse16
+ [824a8e9a6a6f]
+
+2013-05-23 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [6f04eef8255c]
+
+2013-05-23 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Intrinsic code for partialButterflyInverse8
+ [44529de64523]
+
+2013-04-17 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [235de855d779]
+
+2013-05-23 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [31c59ffe9c96]
+
+ * source/encoder/vec/intrapred.inc:
+ Improvement in Intra Angular 8x8 vector implementation
+ [d6a113bf815b]
+
+2013-05-23 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [bf29b1a40bca]
+
+2013-05-23 Deepthi Devaki <Deepthi Devaki>
+
+ * source/VectorClass/vectori128.h:
+ ForceInlined a few more functions in vectori128
+ [c7fe807725d5]
+
+ * source/encoder/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ IntraPredAng 8x8 HIGH_BIT disabled - with special case
+ implementation for 8 modes.
+ [9ce6eb8b73ce]
+
+2013-05-23 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Defining lambda values for Check Best Mode
+ [3f9b5f17bb56]
+
+2013-05-23 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/encoder/encoder.cpp,
+ source/encoder/encoder.h, source/x265.cpp, source/x265.h:
+ encoder: introduce new cli front-end, to eventually replace x265-cli
+
+ cfg/*, x265main, x265cfg, and x265enc will all go away as soon as
+ this works
+ [92e3da6cc72d]
+
+2013-05-23 Deepthi <Deepthi>
+
+ * Merge
+ [18d3c0a322d2]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ Best value of lambda select set to 0.6
+ [96bb8955c43e]
+
+2013-05-22 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: remove my comments from HM source, they were also wrong
+ [06fa58c2176d]
+
+ * source/encoder/motion.cpp:
+ motion: better document search shapes
+ [28fbc93455c6]
+
+ * source/VectorClass/vectorclass.h, source/VectorClass/vectorf128.h,
+ source/VectorClass/vectori128.h:
+ vector: disable floating point vector classes, avoids GCC warnings,
+ fix EOLN
+
+ vecprimitives.inc:73:1: error: '__m128d selectd(const __m128d&,
+ const __m128d&, const __m128d&)' conflicts with a previous
+ declaration
+ [eea2e5dbd441]
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: fix GCC warnings
+
+ intrapred.inc:1340:45: error: conversion from 'Vec16c' to non-scalar
+ type 'Vec16uc' intrapred.inc:1362:17: error: declaration of 'k'
+ shadows a previous local
+ [0d9eeff169b0]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: fix GCC warnings again, perhaps line argument should be
+ removed?
+
+ macroblock.inc:562:9: error: statement has no effect [-Werror
+ =unused-value]
+ [d377908c3b23]
+
+ * source/encoder/encoder.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/x265.h, source/x265cfg.cpp:
+ motion: rename our adapted HM search to "STAR"
+ [175b3e9e3fe8]
+
+ * Merged in praveentiwari/xhevc_praveent (pull request #161)
+
+ Intrinsic code for partialButterfly8
+ [c9c87ffc9b47]
+
+2013-05-22 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [0bb355ace86f]
+
+2013-05-22 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Intrinsic code for partialButterfly8
+ [bc4ff1668070]
+
+2013-05-22 Steve Borho <steve@borho.org>
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #160)
+
+ IntraPredAngular 4x4 HIGH_BIT depth enabled
+ [b322aca2f1da]
+
+2013-05-22 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [ed34d6c8a225]
+
+2013-05-22 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/IntraPred.cpp, source/encoder/primitives.h,
+ source/encoder/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ IntraPredAngular 4x4 HIGH_BIT depth enabled
+ [12eaf2159b3f]
+
+ * source/encoder/vec/vecprimitives.inc:
+ Fix back slash in #include
+ [55094d80f04a]
+
+2013-05-22 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [bd911514525a]
+
+2013-05-21 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [8aa73d922542]
+
+ * source/encoder/IntraPred.cpp, source/encoder/vec/intrapred.inc,
+ source/encoder/vec/vecprimitives.inc,
+ source/test/intrapredharness.cpp:
+ xPredIntraAng 4x4 HIGH_BIT disabled
+ [db8e242c4ad0]
+
+ * source/VectorClass/vectori128.h, source/test/intrapredharness.cpp:
+ Force inline functions in vectori128.h
+ [5551a0eb5fbe]
+
+2013-05-22 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ motion: use square pattern for subpel refinement
+ [0d8765c5e054]
+
+ * source/encoder/motion.cpp:
+ motion: allow fpel star refinement if two point search finds new
+ point
+ [9b50900a78d4]
+
+2013-05-22 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Temporary fix to crash
+ [0dbbe48f078d]
+
+2013-05-22 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: use COPY2_IF_LT in subpel refine, simplifies logic
+
+ No behavior change
+ [a1b974810f40]
+
+ * source/encoder/motion.cpp:
+ motion: if first subpel iteration found no improvement, skip later
+ iters
+
+ Should have no coding effect, but should help perf slightly.
+ [32ee09f3e9b8]
+
+2013-05-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: only adjust subpel search center once per iteration
+
+ Basing the offsets from BMV was allowing the search to wander away
+ on less fruitful paths. Best to wait for all results to come in
+ before moving the search center point.
+ [c0134d7e756d]
+
+2013-05-22 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/encoder.h:
+ Encoder: Fix enum accesses.
+ [2e7af97e815e]
+
+ * source/encoder/motion.cpp:
+ motion: Fix compile warning/error due to shadow variable in COST_MV
+ macro.
+ [d2ff2006533f]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TLibEncoder: Fix compile error due to undeclared INT_MAX.
+ [53b7e60badcb]
+
+2013-05-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/common.cpp, source/encoder/encoder.cpp,
+ source/x265.h, source/x265cfg.cpp, source/x265cfg.h,
+ source/x265enc.cpp:
+ api: further trim x265_param_t, remove PCM and rate control and
+ other bits
+
+ We will add these back later as we optimize and/or adapt these
+ features
+ [26d354b832d2]
+
+ * source/encoder/common.cpp, source/encoder/encoder.cpp,
+ source/x265cfg.cpp:
+ encoder: plumb in a parse function
+ [2ac0b485815b]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ TEncCfg: white-space nit
+ [38a2194f7420]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/encoder.cpp,
+ source/x265enc.cpp:
+ encoder: simply encode() function signature, auto-detect frames to
+ be encoded
+ [084aaa5e85cc]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: simplify destroy method slightly
+ [2af1b2f39aa0]
+
+2013-05-21 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ cleanup: remove unused pointer from TEncCu
+
+ From 28a48831f9571ff030574c4e28c75e4afc8105f3 Mon Sep 17 00:00:00
+ 2001
+ --- source/Lib/TLibEncoder/TEncCu.cpp | 3 ---
+ source/Lib/TLibEncoder/TEncCu.h | 3 --- 2 files changed, 0
+ insertions(+), 6 deletions(-)
+ [c0f39e04c429]
+
+2013-05-20 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ thread: [BITS CHANGED] split m_pcRDGoOnSbacCoder into own thread
+ --- source/Lib/TLibEncoder/TEncCu.cpp | 3 ++-
+ source/Lib/TLibEncoder/TEncCu.h | 2 +-
+ source/Lib/TLibEncoder/TEncGOP.cpp | 4 ++--
+ source/Lib/TLibEncoder/TEncSearch.h | 2 +-
+ source/Lib/TLibEncoder/TEncSlice.cpp | 7 ++++---
+ source/Lib/TLibEncoder/TEncSlice.h | 2 +-
+ source/Lib/TLibEncoder/TEncTop.cpp | 6 +++---
+ source/Lib/TLibEncoder/TEncTop.h | 4 ++-- 8 files changed, 16
+ insertions(+), 14 deletions(-)
+ [695f62044e15]
+
+2013-05-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: remove some includes only used by new main
+ [e076db6b561e]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ TEncTop: call destroy() on CU encoders before deleting them
+
+ HM class destructors do not necessarily free memory. This fixes some
+ large leaks.
+ [c645bcc7795c]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/encoder/encoder.cpp,
+ source/x265enc.cpp:
+ cruft: remove setFrameSkip/getFrameSkip() from TencCfg
+
+ The encoder should be unaware of file I/O properties.
+ setFramesToBeEncoded() should also be removed, but the encoder needs
+ the last frame number in order to handle edge cases at the end of
+ the encode.
+ [c19a3ca7761d]
+
+ * source/encoder/encoder.h:
+ encoder: remove obsolete cruft, assign default level and profile
+ [efccf29f74ef]
+
+ * source/encoder/encoder.cpp, source/encoder/encoder.h:
+ encoder: improve defaults to match current behavior, simplify
+ [0d7c1810b154]
+
+ * source/x265cfg.cpp:
+ more nits
+ [3ec9dcc432cf]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: tabs to spaces
+ [398786d7e65a]
+
+ * source/encoder/vec/macroblock.inc:
+ Merged in praveentiwari/xhevc_praveent (pull request #159)
+
+ Intrinsic code for partialButterflyInverse4
+ [4a43a67aab95]
+
+2013-05-21 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Intrinsic code for partialButterflyInverse4
+ [8a115d37a05a]
+
+ * source/CMakeLists.txt, source/encoder/vec/macroblock.inc,
+ source/test/filterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/testbench.cpp:
+ Backed out changeset: 6a5d35fd39fb
+ [ff8e92d7c095]
+
+ * source/CMakeLists.txt, source/encoder/vec/macroblock.inc,
+ source/test/filterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/testbench.cpp:
+ Intrinsic code for partialButterflyInverse4
+ [6a5d35fd39fb]
+
+2013-05-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: do not check candidate MVs for HM style search
+
+ No compelling reason for this, except to help debug differences
+ [21098423e1aa]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: disable SAD subsampling while we debug ME
+
+ It's not clear we ever want to turn this back on, at least before
+ we've added subsampling to x265 ME
+ [b05a30649d2e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: give the real MVP to x265 ME, not just zero
+
+ This is the bug that has been preventing UMH from working as
+ designed
+
+ DIA: 461.0320 31.4553 36.0712 36.1111 HEX: 457.8880 31.4728 36.0830
+ 36.1282 UMH: 457.3520 31.4723 36.1079 36.1460 HM: 458.6560 31.4827
+ 36.1382 36.1273 ORIG: 456.0960 31.5091 36.1377 36.1228
+
+ Our HM version still has a bug; need to find it
+ [d011d9380876]
+
+ * source/encoder/motion.cpp:
+ motion: use MV 0 prediction as search start if cheaper than MVP
+ [5957dfe39429]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use actual enum for selecting x265 ME routine
+ [94edee85036a]
+
+ * source/encoder/motion.cpp:
+ motion: remove hard-coded mode selection
+ [d96750bcb143]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: fix bugs in my changes, add relevant comments for future
+ work
+ [88caee6ef7c3]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h,
+ source/encoder/mv.h:
+ motion: simplify HM search method code
+ [b58f7f60ae7c]
+
+ * source/encoder/common.cpp, source/x265.h:
+ api: add original HM search as valid configurable option
+ [4a4f55e067b9]
+
+ * Merged in ggopu/ggopu_xhevc (pull request #158)
+
+ Implemented the HM ME to Motion.cpp
+ [3301bc78e1ce]
+
+2013-05-21 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/encoder/mv.h:
+ Implemented the HM ME to Motion.cpp
+ [e2e81e4f914c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [f13d5c93b30e]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h,
+ source/encoder/mv.h:
+ Implemented HM ME to Motion.cpp
+ [453365fdf903]
+
+2013-05-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/encoder.cpp:
+ encoder: fix another shadowed variable warning
+ [5ad7c41ac970]
+
+ * source/encoder/CMakeLists.txt, source/encoder/encoder.cpp:
+ encoder: fix GCC compiler warnings
+ [b515463b42cd]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/common.cpp,
+ source/encoder/encoder.cpp, source/x265.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ api: rename enableAMPRefine to useRectInter
+
+ This configurable was mis-named. It has nothing to do with AMP, it
+ is disabling the use of rectangular inter prediction modes (which
+ has the side-effect of also disabling AMP since AMP is not checked
+ if the rectangular mode of similar shape was not checked).
+
+ This configurable should never have been in TComSlice since the flag
+ is not signaled in the slice header like AMP activation is.
+ [ab23a9399bcb]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: fix GCC compiler warning
+
+ macroblock.inc: In function 'void
+ {anonymous}::partialButterfly4(short int*, short int*, int, int)':
+ macroblock.inc:1326:12: error: parameter 'line' set but not used
+ [-Werror=unused-but-set-parameter]
+ [587dd16e4001]
+
+2013-05-21 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [5d2edf07bd81]
+
+2013-05-21 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/vec/macroblock.inc:
+ Fixed alignment issue for partialButterfly32
+ [8e42a9907241]
+
+2013-05-21 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [f89ac88ad652]
+
+2013-05-21 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Fixed encoder crash for partialButterfly32
+ [c175df4a600f]
+
+ * source/encoder/vec/macroblock.inc:
+ Code cleanup for partialButterfly4
+ [f110e2eac973]
+
+2013-05-21 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * source/TestForChecking_BadCommit.bat:
+ Test script to find bad commit
+ [55fd15776acf]
+
+2013-05-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt, source/encoder/encoder.cpp,
+ source/encoder/encoder.h:
+ api: new encoder class and main function
+ [b4b06a6e89cd]
+
+ * source/encoder/common.cpp, source/x265cfg.cpp:
+ api: use new methods to validate and print public params (CHANGES
+ LOGGING)
+
+ This changes the look of the output log, but should not change any
+ output bits
+ [6cb27c8e9011]
+
+ * source/encoder/common.cpp, source/encoder/common.h:
+ common: add new methods for validating and printing the public
+ params
+ [3f0ece48b1f7]
+
+ * source/x265.h, source/x265cfg.cpp:
+ api: make iMaxCuDQPDepth a uint32_t, like the other depth settings
+ [e8acc21708cb]
+
+2013-05-20 Steve Borho <steve@borho.org>
+
+ * source/x265cfg.cpp:
+ fix HIGH_BIT_DEPTH=1 build
+ [6d47f9979e5c]
+
+ * source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/TComPrediction.cpp:
+ minor nit fixes, no behavior changes
+ [17d10d96b071]
+
+ * source/encoder/common.cpp, source/x265.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ api: remove m_ prefix from x265_param_t data members
+ [bb2c9bc68a9e]
+
+2013-05-21 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/vec/macroblock.inc:
+ Vec: Fix compile warnings/errors due to unused typedef.
+ [d062def382de]
+
+2013-05-20 Steve Borho <steve@borho.org>
+
+ * source/x265cfg.cpp:
+ cfg: simplify log header a bit
+ [06f883384489]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/encoder/common.cpp, source/x265.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ cfg: replace MaxCUWidth, MaxCUHeight with single MaxCUSize
+ [fe13c968c8c1]
+
+ * source/x265cfg.cpp:
+ x265cfg: remove redundant ME name array, white-space cleanups
+ [8f33ed829287]
+
+ * source/x265cfg.cpp:
+ x265cfg: move the default output filename to a better location
+ [5bd50e2c6ad3]
+
+ * source/encoder/bitcost.cpp, source/encoder/bitcost.h:
+ bitcost: match BitCost::bitcost() to TComRdCost:getCost() [CHANGES
+ OUTPUTS]
+
+ The HM counts MVD bits in integer, while we were using log2n() and
+ keeping floats. Our MV costs were smoother across the range of MV's
+ but this is a false accuracy. Encoding cost is rounded to nearest
+ bit. This change improves compression efficiency.
+ [bcf310907041]
+
+ * source/x265main.cpp:
+ main: minor nit cleanups
+ [596328140dfc]
+
+ * source/encoder/vec/macroblock.inc, source/x265.h:
+ fix GCC compile warnings
+ [4d682b12d184]
+
+2013-05-20 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ 32bit build issue fix for partialButterfly4 intrinsic function.
+ Further optimisation.
+ [e90a68b8cdd8]
+
+2013-05-20 sumalatha <sumalatha>
+
+ * source/tools/performanceProfiler/Profiler.bat,
+ source/tools/performanceProfiler/Readme.txt,
+ source/tools/performanceProfiler/config.txt,
+ source/tools/performanceProfiler/performanceProfiler.bat:
+ modified the scripts files to take the application's(.exe) from the
+ relative path to the curent directory
+ [215c0e0beda0]
+
+2013-05-20 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use x265's optimized bitcost() method for xCheckBestMVP
+
+ Minor performance improvement
+ [36642a6ac4c6]
+
+2013-05-20 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Fix for compilation error in HIGH_BIT_DEPTH enabled
+ [e1ce48613e7f]
+
+2013-05-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/common.cpp, source/x265.h, source/x265cfg.cpp,
+ source/x265cfg.h:
+ api: further work triming x265_param_t and implementing public API
+ [42d2f5b65c7c]
+
+ * source/x265cfg.cpp:
+ x265cfg: white-space nits
+ [0ba7cbf85049]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/common.cpp,
+ source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h, source/output/output.h,
+ source/output/y4m.cpp, source/output/y4m.h, source/output/yuv.cpp,
+ source/output/yuv.h, source/x265.h, source/x265cfg.h,
+ source/x265enc.cpp:
+ api: rename some public structures to follow x264 style, hide some
+ params
+
+ If I have no idea how a param is configured or used, I removed it
+ from the public data structure.
+ [c8f27268f3c1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix comments in xTZ8PointDiamondSearch
+
+ Removes one extraneaous if() level by chaining together if() else
+ if() else
+ [ff379e5854bf]
+
+ * source/encoder/motion.cpp:
+ Backout 1545:eaaa4edde516 (tested worse in regression suite)
+ [2fbe276bd35f]
+
+ * source/encoder/motion.cpp:
+ motion: fix GCC shadow variable warning (tmv is used inside COST_MV)
+ [27b17a18367d]
+
+ * source/encoder/motion.cpp:
+ motion: start fpel search at best predictor
+
+ HM and x264 both do this, but has uncertain results. Will test in
+ regression suite with more videos
+ [eaaa4edde516]
+
+ * source/encoder/motion.cpp:
+ motion: use roundToFPel() when converting clipped MVP to fpel
+
+ x264 does this, and it seems to help compression slightly.
+ [63af725da724]
+
+ * source/encoder/motion.cpp, source/encoder/mv.h:
+ motion: only remeasure bmv at fpel if pmv had subpel fractions
+ [d465b6f04260]
+
+ * source/encoder/motion.cpp:
+ motion: remove omv=bmv assignment that x264 UMH does not do
+ [e343fdb42a15]
+
+ * source/encoder/motion.cpp:
+ motion: avoid rechecking bestpre
+ [2b88c1e2bc08]
+
+ * source/encoder/motion.cpp:
+ motion: improve UMH comments, add a TODO for further analysis
+ [fd94f23e7828]
+
+ * source/encoder/motion.cpp:
+ motion: do not check candidates equal to MVP, clarify prep code
+ [253d81c1a1e5]
+
+ * source/encoder/motion.cpp:
+ motion: move warning disable to top of file
+ [21ae49204eb1]
+
+ * source/encoder/motion.cpp:
+ motion: use x265.h enums for motion search methods
+ [ae6e0fbfabab]
+
+ * source/encoder/motion.cpp:
+ motion: nits
+ [96a835f01afa]
+
+ * source/encoder/motion.cpp, source/encoder/mv.h:
+ mv: explicit notZero() method
+ [dce5c8184afc]
+
+2013-05-19 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ thread: modify m_pcCuEncoder to every thread
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 22 +++++++++++-----------
+ source/Lib/TLibEncoder/TEncSlice.h | 4 ++--
+ source/Lib/TLibEncoder/TEncTop.cpp | 8 +++++---
+ source/Lib/TLibEncoder/TEncTop.h | 4 ++-- 4 files changed, 20
+ insertions(+), 18 deletions(-)
+ [8448f800200b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ thread: modify m_pcPredSearch to every thread
+ --- source/Lib/TLibEncoder/TEncCu.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncCu.h | 2 ++
+ source/Lib/TLibEncoder/TEncSearch.cpp | 6 ++----
+ source/Lib/TLibEncoder/TEncSearch.h | 2 --
+ source/Lib/TLibEncoder/TEncSlice.cpp | 10 ++++++++--
+ source/Lib/TLibEncoder/TEncSlice.h | 2 +-
+ source/Lib/TLibEncoder/TEncTop.cpp | 8 +++++++-
+ source/Lib/TLibEncoder/TEncTop.h | 7 +++++-- 8 files changed, 26
+ insertions(+), 13 deletions(-)
+ [74d3dbbf08fc]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ thread: modify m_pcEntropyCoder and fix bug in HM when WPP
+ --- source/Lib/TLibEncoder/TEncCu.cpp | 3 +-
+ source/Lib/TLibEncoder/TEncCu.h | 1 +
+ source/Lib/TLibEncoder/TEncGOP.cpp | 122
+ +++++++++++++++++----------------- source/Lib/TLibEncoder/TEncGOP.h
+ | 2 +- source/Lib/TLibEncoder/TEncSearch.h | 2 +
+ source/Lib/TLibEncoder/TEncSlice.cpp | 39 +++++++-----
+ source/Lib/TLibEncoder/TEncSlice.h | 2 +-
+ source/Lib/TLibEncoder/TEncTop.cpp | 6 ++-
+ source/Lib/TLibEncoder/TEncTop.h | 5 +- 9 files changed, 98
+ insertions(+), 84 deletions(-)
+ [079de58deffd]
+
+2013-05-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: do two subpel iterations for hpel and qpel
+
+ This will find corner vectors, where previous simple DIA did not.
+ This catches us up quite a bit:
+
+ DIA: 467.8400 31.3870 36.0379 36.0973 HEX: 466.5200 31.3955 36.0604
+ 36.1248 UMH: 463.1120 31.4415 36.1199 36.1584 HM: 456.4880 31.4984
+ 36.1100 36.1101
+ [bbb7982882ba]
+
+2013-05-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: use ints for temp vars
+
+ Using sub-word integers is usually a perf loss, and opens you up to
+ wierd overflow bugs.
+ [4db7ec5efb78]
+
+ * source/encoder/motion.cpp:
+ motion: minor cleanups, no effects
+ [ebf5fd8f484d]
+
+ * source/encoder/motion.cpp, source/encoder/mv.h:
+ motion: convert hex4 to MV, use tmv for checkRange within hex grid
+ loop
+
+ x264 checks tmv there (mv being tested), not bmv (current best mv)
+ [1bb2e323b6fb]
+
+2013-05-18 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ thread: [NEED VERIFY] modify logic and remove unused code for
+ m_pppcRDSbacCoder Conflicts:
+
+ source/Lib/TLibEncoder/TEncTop.cpp
+ --- source/Lib/TLibEncoder/TEncCu.cpp | 5 +++-
+ source/Lib/TLibEncoder/TEncCu.h | 1 +
+ source/Lib/TLibEncoder/TEncGOP.cpp | 3 +-
+ source/Lib/TLibEncoder/TEncSearch.h | 1 +
+ source/Lib/TLibEncoder/TEncSlice.cpp | 9 ++----
+ source/Lib/TLibEncoder/TEncSlice.h | 1 -
+ source/Lib/TLibEncoder/TEncTop.cpp | 46
+ +++------------------------------ source/Lib/TLibEncoder/TEncTop.h |
+ 6 +--- 8 files changed, 17 insertions(+), 55 deletions(-)
+ [4817a9ff9832]
+
+2013-05-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: adapt "full MB size" check to HEVC CTU
+
+ This had no measurable effect, but seemed more correct
+ [d5f187bb6d44]
+
+ * source/encoder/motion.cpp:
+ motion: fix arguments to CROSS macro in UMH
+ [b5947f8c979e]
+
+ * source/encoder/motion.cpp:
+ motion: remove SIMPLE_HEX, the outputs are now the same
+ [0304c492eb5d]
+
+ * source/encoder/x86/x86util.asm:
+ asm: fix FENC_STRIDE to HEVC size
+ [b333105c3ae1]
+
+ * source/encoder/motion.cpp:
+ motion: remove BITS_MVD again (was resurrected during a merge)
+ [cb15920370ca]
+
+ * source/encoder/motion.cpp:
+ motion: enable SIMPLE_HEX by default, until the "fast" path is
+ debugged
+ [b243347757d4]
+
+2013-05-18 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: avoid reference to m_pppcRDSbacCoder[0][CI_CURR_BEST]
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 4 ++-- 1 files changed, 2
+ insertions(+), 2 deletions(-)
+ [afb15c17b9c0]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ thread: remove unused code for m_pcBufferBinCoderCABACs
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 12 ++----------
+ source/Lib/TLibEncoder/TEncSlice.h | 1 - 2 files changed, 2
+ insertions(+), 11 deletions(-)
+ [9a0a53b12609]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: move pppcRDSbacCoder into loop
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 8 ++++---- 1 files
+ changed, 4 insertions(+), 4 deletions(-)
+ [9bf8a39b1801]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ cleanup: remove unused code for pcBufferLowLatSbacCoders
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 15 ---------------
+ source/Lib/TLibEncoder/TEncSlice.h | 2 -- 2 files changed, 0
+ insertions(+), 17 deletions(-)
+ [798cdd336099]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ cleanup: remove unused code
+ --- source/Lib/TLibEncoder/TEncCu.cpp | 17 ----------------- 1 files
+ changed, 0 insertions(+), 17 deletions(-)
+ [659df28d9850]
+
+2013-05-18 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: remove m_fencbuf and SAD primitive use from HM ME
+
+ This fixes BIDIR and weighted P prediction
+ [76c5cc558878]
+
+ * cfg/encoder_all_I.cfg:
+ encoder_all_I: nit cleanups
+ [103828d5f1b0]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/x265.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ replace FastSearch configurable with motion search method
+ [b24d4f0d8a6e]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: disable partialButterfly4, it is failing in the
+ testbench
+ [c407651a52a4]
+
+ * source/encoder/motion.cpp:
+ Merge
+ [29b3933dcf27]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ TComDataCU: fix GCC compile warnings
+ [0ee4ca22aa1f]
+
+ * source/encoder/motion.cpp:
+ motion: fix GCC compile warnings
+ [7260a1fdc7a7]
+
+ * source/encoder/IntraPred.cpp:
+ intrapred: fix include path again
+ [701bc030c157]
+
+ * source/encoder/IntraPred.cpp, source/encoder/primitives.h:
+ IntraPred: do not use pointer reference
+
+ 1 - this is a C++ only construct, and would make ASM opts very
+ difficult 2 - the pointer value being passed was a temp rvalue, not
+ modifiable
+ [c4459134a244]
+
+2013-05-18 Deepthi <Deepthi>
+
+ * source/encoder/vec/macroblock.inc:
+ Disabling 4 and 32 butterfly intrinsic implementations
+ [83b3c02ec36a]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Remove xPredIntraAngRefBuf from HM - they are now part of
+ x265::primitives
+ [4bb8150df674]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [393536c14d6f]
+
+2013-05-17 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [33bb25b0bf5f]
+
+2013-05-16 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [6f0ad2ce8510]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/IntraPred.cpp, source/encoder/primitives.h,
+ source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ Unit test for Intra Angular primitives
+ [bd9bc0bc3759]
+
+2013-05-16 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [8e9356e3cf6e]
+
+2013-05-16 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [b48ae2baa364]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Redesigned intraprediction for angular modes to use buffered
+ references
+ [048211fdc5f0]
+
+2013-05-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: make UMH the default (this needs to be a param)
+ [d8c379d73e86]
+
+ * source/encoder/motion.cpp:
+ motion: make "optimized" HEX the default now
+ [bc7cae4f28e8]
+
+ * source/encoder/motion.cpp:
+ motion: remove unused BITS_MVD macro
+ [cf973ab501ae]
+
+ * source/encoder/motion.cpp:
+ motion: measure MV cost in qpel in COST_MV
+ [fbdfdd9f710d]
+
+2013-05-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp:
+ motion: simplify COST_MV_X4
+ [5850f4fb7e1e]
+
+ * source/encoder/motion.cpp:
+ motion: add range check for subpel refine
+ [e8c864e6301e]
+
+ * source/encoder/motion.cpp:
+ motion: cleanup hex and square offset arrays
+ [1c8d80939de3]
+
+ * source/encoder/motion.cpp:
+ motion: add default case to switch statement
+ [b46bc231b6a1]
+
+ * source/encoder/motion.cpp:
+ motion: make HEX the default for the moment
+ [d15f3b52a98c]
+
+ * source/encoder/mv.h:
+ mv: add a helpful comment
+ [346ce779ff9a]
+
+ * source/encoder/motion.cpp:
+ motion: fix obvious bug in COST_MV(). HEX mode now looks ok
+
+ This is a quality/perf progression you would expect for DIA and HEX
+
+ Kbps Y PSNR U PSNR V PSNR elapsed time DIA: 499.9280 31.1502
+ 35.8939 35.9815 27sec HEX: 474.3600 31.3310 36.0312 36.1283 28sec
+ HM: 456.4880 31.4984 36.1100 36.1101 30sec
+
+ UMH is worse than HEX, better than DIA. Which means there are still
+ bugs.
+
+ UMH: 481.9600 31.2575 36.0621 36.0658 28sec
+
+ The "optimized" HEX path is also broken (worse numbers than these)
+ [3179771dfccc]
+
+ * source/encoder/motion.cpp:
+ motion: add descriptive #if 0 from x264
+
+ It is useful because it is a simpler version of hex that can be more
+ easily debugged, and the later version should match the outputs
+ [96d7eed717e0]
+
+ * source/encoder/motion.cpp:
+ motion: white-space nit, no code change
+ [cf80adc4e35c]
+
+ * source/encoder/motion.cpp:
+ motion: remove redundant code
+ [3ec960515133]
+
+ * source/encoder/motion.cpp:
+ motion: just a single stride var is necessary
+ [6de0d4f2f5a9]
+
+ * source/encoder/motion.cpp:
+ motion: use bmv.checkRange()
+ [04923c4dc22a]
+
+ * source/encoder/motion.cpp:
+ motion: take advantage of MV union
+ [55427f2a6fbc]
+
+ * source/encoder/motion.cpp:
+ motion: include assert.h
+ [7e83eb3c796e]
+
+ * source/encoder/motion.cpp:
+ motion: use MV copy constructor some more
+ [08c0e5f843e7]
+
+ * source/encoder/motion.cpp:
+ motion: HEVC does not have 4x4 inter partitions
+ [fd313e990e4b]
+
+ * source/encoder/motion.cpp:
+ motion: pmv needs to be a full-pel motion vector
+ [d7cd89c7d662]
+
+ * source/encoder/motion.cpp:
+ motion: use MV copy constructor
+ [494e1c059f10]
+
+ * source/encoder/motion.cpp:
+ motion: remove dup variable i_me_range
+ [8e5588e6b2a7]
+
+ * source/encoder/motion.cpp:
+ motion: cleanup
+ [e2727ec025ac]
+
+ * source/encoder/motion.cpp:
+ motion: remove unnecessary dup variables
+ [01ee1bc52dea]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: save the partition enum for the current PU
+ [ae2c9e4d80fe]
+
+ * source/encoder/motion.cpp:
+ motion: turn size_scale the right way around
+ [962787f0f8a3]
+
+ * source/encoder/motion.cpp:
+ motion: remove cruft
+ [fb19468bde57]
+
+ * source/encoder/motion.cpp:
+ motion: fix obvious bug in x265_predictor_difference
+ [5290730cc3b2]
+
+ * source/encoder/motion.cpp:
+ cleanups, no behavior change
+ [98b7107debdf]
+
+ * source/encoder/common.cpp, source/encoder/common.h,
+ source/encoder/motion.cpp:
+ motion: move common macros to common.h
+ [6e0a819ee02b]
+
+ * source/encoder/motion.cpp, source/encoder/vec/macroblock.inc,
+ source/x265cfg.cpp:
+ fix GCC compilation warnings
+ [807d04c7511c]
+
+ * Merged in sumalatha/xhevc_sumalatha (pull request #148)
+
+ fix for decoder crash in xcompresscu() [early_abort optimization]
+ [28523f0f4149]
+
+2013-05-17 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ fix for removing the decoder crash in xcompressCU() - early
+ partition optimization
+ [0122fe9ae44c]
+
+2013-05-17 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * build/dr_psnr_script/TAppDecoder.exe,
+ build/dr_psnr_script/psnr_script.bat,
+ source/Lib/TLibEncoder/TEncCu.cpp:
+ Merged multicoreware/xhevc into default
+ [ee89354b0898]
+
+2013-05-17 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Backed out changeset: 78976eb7f3fa
+ [0ad65cd9d7b4]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ fix for decoder crash in xcompresscu() {early_abort optimization]
+ [78976eb7f3fa]
+
+2013-05-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/macroblock.inc:
+ partialButterfly4 does not compile on 32bit x86
+
+ _mm_cvtsi64_si128 does not exist on 32bit systems
+ [608559903526]
+
+2013-05-17 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * build/dr_psnr_script/TAppDecoder.exe,
+ build/dr_psnr_script/psnr_script.bat:
+ Merged multicoreware/xhevc into default
+ [a501a1c26fd9]
+
+2013-05-17 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ intrinsic code for partialButterfly32
+ [d14c341119ff]
+
+2013-05-17 Deepthi <Deepthi>
+
+ * .hgignore, build/dr_psnr_script/TAppDecoder.exe,
+ build/dr_psnr_script/psnr_script.bat, source/tools/HM
+ decoder/TAppDecoder.exe:
+ Relocating HM decoder to tools. Removing build/dr_psnr_script
+ [71005e0c4e43]
+
+ * Merge
+ [c5c192a1e47f]
+
+2013-05-17 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [8718c6433394]
+
+2013-05-17 sumalatha <sumalatha>
+
+ * source/tools/performanceProfiler/Profiler.bat,
+ source/tools/performanceProfiler/Readme.txt,
+ source/tools/performanceProfiler/config.txt,
+ source/tools/performanceProfiler/performanceProfiler.bat:
+ Modified the testing scripts for running both yuv files and y4m
+ files also
+ [d37656a0c5ca]
+
+2013-05-17 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp:
+ More refinement of early abort conditions
+ [67bf72b8a743]
+
+ * Merge
+ [9e411b77d861]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ refining early abort
+ [404f0e8cd3e6]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ fixing the decoder crash
+ [539b0fbd82fe]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ remove PCM for now
+ [519dd09ead40]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Remove AMP for now from EARLY_ABORT mode decision
+ [53ace900d5ba]
+
+2013-05-17 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp:
+ TEncSearch: pass neighbor MVs to motionEstimate (UMH seems to
+ require them)
+ [a0e0b589aa92]
+
+2013-05-17 ggopu <ggopu>
+
+ * source/encoder/motion.cpp:
+ Motion Estimation : UMH implementation stage 1
+ [94746841ea03]
+
+2013-05-16 Gopu G <gopu@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [526f1f214b82]
+
+ * Merged multicoreware/xhevc into default
+ [197dcdbb270f]
+
+2013-05-14 Gopu G <gopu@multicorewareinc.com>
+
+ * source/test/timer.cpp:
+ Merged multicoreware/xhevc into default
+ [dde8e0582a9b]
+
+2013-05-13 Gopu G <gopu@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [2b1a79979ce5]
+
+2013-05-13 ggopu <ggopu>
+
+ * source/encoder/motion.cpp:
+ Motion Estimation : UMH implementation stage 1
+ [a599997fbd20]
+
+2013-05-16 Steve Borho <steve@borho.org>
+
+ * source/x265main.cpp:
+ vld: add assert for zero leaks (DEBUG only)
+ [2c3c0dfb5f83]
+
+ * source/x265main.cpp:
+ x265main: explicit allocation and deallocation of TAppEncTop
+ [97d5b00ab35a]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: TComPicYuv are re-used, check before allocating subpel
+ buffers
+ [c98229f4a65d]
+
+ * source/x265cfg.cpp, source/x265cfg.h:
+ x265cfg: release thread pool handle at exit
+ [b0919ee9a22e]
+
+ * source/x265main.cpp:
+ x265main: ask VLD to output the leak log to the debugger output
+ console
+
+ This way the leak report survives after the run.
+ [cadb1c11d2ef]
+
+ * source/CMakeLists.txt, source/cmake/FindVLD.cmake,
+ source/x265main.cpp:
+ cmake: add detection and use of Visual Leak Detector
+ [70519a482e47]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: disable printing of per-frame encode time, prune unused
+ lists
+
+ This just makes the frame logs non-deterministic.
+ [90aa43526097]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: fix EOLN
+ [297851df497a]
+
+ * build/linux/batch.py:
+ write batch outputs into a folder
+ [603fef620960]
+
+ * build/linux/batch.py:
+ add MD5 hashes to batch run output log
+ [095771f6dbaa]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg, source/x265cfg.cpp:
+ remove filenames from configuration files
+
+ Hard-code the default filename for an output stream. Default to no
+ recon output file if none is specified on the CLI.
+ [b6b24bd0e966]
+
+2013-05-16 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Preserving the original xcompressCU implementation until the
+ EARLY_PARTITION_DECISION mode has been fully debugged.
+ [d246be5c803a]
+
+2013-05-16 Steve Borho <steve@borho.org>
+
+ * source/tools/CMakeLists.txt:
+ backout change to source/tools/CMakeLists.txt
+
+ The performanceProfiler/ folder has no CMakeLists.txt within it.
+ [6215d24d1f59]
+
+2013-05-16 sumalatha <sumalatha>
+
+ * source/tools/CMakeLists.txt,
+ source/tools/performanceProfiler/Profiler.bat,
+ source/tools/performanceProfiler/Readme.txt,
+ source/tools/performanceProfiler/config.txt,
+ source/tools/performanceProfiler/performanceProfiler.bat:
+ Added the scripts for validating the encoded bitstream(running HM
+ decoder) and measuring the the performance like PSNR values,
+ Timetaken for encoing and the bytes written in encoded bitstream.
+ For running the scripts, use Readme.txt
+ [56ba4fb6b574]
+
+2013-05-16 Deepthi <Deepthi>
+
+ * Merge
+ [2f469b1dc95c]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Cleanup
+ [d258fac8d99d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ AMP after 2nxn, nx2n, if at all
+ [091ddf1c5724]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ 2nxn and nx2n comparisons only if nxn mode better than 2nx2n
+ [e24d7b31af7d]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Cleanup; remove erroneous paths
+ [0b8a18bc5914]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ merge error
+ [30df17dc5923]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Initial version of compare 2nx2n with sum of nxn costs
+ [7b58edb59bae]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Getting rid of EARLY_PARITION_DECISION macro (temporarily)
+ [079ddf89b5d5]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Init Sub CUs to prevent crash when early detection is OFF
+ [db9215642791]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Scalar expansion for subCUs
+ [034adf2f6077]
+
+2013-05-15 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Tab fixes
+ [e1300ac7706a]
+
+2013-05-16 Steve Borho <steve@borho.org>
+
+ * build/linux/batch.py:
+ add a batch launch script for litespeed server
+ [b30e0de1a6ee]
+
+2013-05-15 Steve Borho <steve@borho.org>
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: fix a bug found by x86-64 linux and GDB
+ [ecf99ffdc0c6]
+
+ * source/encoder/vec/vecprimitives.inc:
+ vec: GCC needs smmintrin.h for some intrinsics we use in
+ partialButterfly4
+ [5f71cc4e88e4]
+
+ * source/VectorClass/vectori128.h:
+ vector: use correct build define for fromUint64
+ [34a4b0cbd857]
+
+ * source/CMakeLists.txt:
+ cmake: reverse yasm version logic, so all versions less than 1.2.0
+ rejected
+
+ previous logic was allowing 1.1.0.X
+ [5796f6b06a15]
+
+2013-05-15 Min Chen <min.chen@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ thread: [NEED VERIFY] modify logic about m_pcBufferSbacCoders, from
+ [sliceID] to [wpp_line]
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 21 +++++++++++----------
+ source/Lib/TLibEncoder/TEncSlice.h | 2 +- 2 files changed, 12
+ insertions(+), 11 deletions(-)
+ [8328dc3293fb]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: [NEED VERIFY] simplify logic about WPP SBAC context manage
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 24
+ ++++++------------------ 1 files changed, 6 insertions(+), 18
+ deletions(-)
+ [7e8190b7ce6b]
+
+2013-05-15 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/cmake/FindYasm.cmake,
+ source/cmake/version.cmake:
+ cmake: detect and enforce minimal YASM version
+
+ x264 assembly code requires YASM 1.2.0 (for AVX2, etc)
+ [38d4e63a1d87]
+
+2013-05-15 Min Chen <min.chen@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: remove reduce call to m_pcCfg->getWaveFrontsynchro()
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 3 ++- 1 files changed, 2
+ insertions(+), 1 deletions(-)
+ [71af0137057f]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: move define of uiCUAddr into loop
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 4 +--- 1 files changed, 1
+ insertions(+), 3 deletions(-)
+ [7b7e8aa6e785]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: simplify uiSubStrm
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 4 ++-- 1 files changed, 2
+ insertions(+), 2 deletions(-)
+ [de144fc9cc62]
+
+2013-05-15 Steve Borho <steve@borho.org>
+
+ * source/test/intrapredharness.cpp, source/test/testbench.cpp:
+ testbench: GCC compilation fixes
+ [2801d32f7a03]
+
+ * source/cmake/version.cmake:
+ cmake: avoid use of HG find_package
+ [b04ee03ff736]
+
+ * source/encoder/common.cpp:
+ GCC compilation fix
+ [1fb1106c2e4b]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: enable partialButterfly4 for X86_64 builds only
+
+ The primitive does not compile on x86
+ [21836779c4fd]
+
+2013-05-15 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/test/timer.cpp, source/x265.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ Merge
+ [fe8ccdde67f6]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/x265.h, source/x265cfg.cpp, source/x265enc.cpp:
+ Early CU option removed.
+ [e7ab5425ab23]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ More useless skip control variables removed.
+ [ba4bd338e345]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibEncoder/TEncCu.cpp:
+ Removing extraneous SKIP macros. A more relevant Skip threshold
+ macro can be added later.
+ [72079ab73e34]
+
+2013-05-15 praveentiwari <praveentiwari>
+
+ * source/encoder/macroblock.cpp:
+ C primitive for partialButterfly4
+ [ae0b9dbfa305]
+
+2013-05-14 Min Chen <min.chen@multicorewareinc.com>
+
+ * source/VectorClass/vectori128.h:
+ vector128i: fix bug report by Shazeb, it don't broad to high element
+ --- source/VectorClass/vectori128.h | 13 +++++++++---- 1 files
+ changed, 9 insertions(+), 4 deletions(-)
+ [285509a3c2b1]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: remove code for loop
+ --- source/Lib/TLibEncoder/TEncGOP.cpp | 27
+ ++++----------------------- 1 files changed, 4 insertions(+), 23
+ deletions(-)
+ [175911f4f3ab]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ cleanup: remove code for boundingCUAddr
+ --- source/Lib/TLibEncoder/TEncGOP.cpp | 3 +--
+ source/Lib/TLibEncoder/TEncSlice.cpp | 20 ++++++--------------
+ source/Lib/TLibEncoder/TEncSlice.h | 2 +- 3 files changed, 8
+ insertions(+), 17 deletions(-)
+ [7bd6922d4d68]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: simplify, uiTotalCUs always multiple of CUSize
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 3 ++- 1 files changed, 2
+ insertions(+), 1 deletions(-)
+ [62a3a423b4a3]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ thread: simplify, iNumSubstreams always equal to maxCUHeight
+ --- source/Lib/TLibCommon/TComSlice.cpp | 1 -
+ source/Lib/TLibCommon/TComSlice.h | 6 ------
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncCfg.h | 5 -----
+ source/Lib/TLibEncoder/TEncGOP.cpp | 12 +++++++-----
+ source/Lib/TLibEncoder/TEncSlice.cpp | 31
+ +++++++++++++++++++------------ source/Lib/TLibEncoder/TEncTop.cpp |
+ 7 ------- source/x265.h | 1 - source/x265cfg.cpp | 5 +----
+ source/x265enc.cpp | 1 - 10 files changed, 28 insertions(+), 43
+ deletions(-)
+ [05b33c3d0ca5]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: don't calculate uiLin and uiCol from uiCUAddr, they are
+ for_loop now
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 3 --- 1 files changed, 0
+ insertions(+), 3 deletions(-)
+ [620f08b2c1ae]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ cleanup: remove unused code for startCUAddrSliceSegment
+ --- source/Lib/TLibEncoder/TEncGOP.cpp | 29
+ ++++------------------------- source/Lib/TLibEncoder/TEncGOP.h | 1 -
+ 2 files changed, 4 insertions(+), 26 deletions(-)
+ [f9011428cf05]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: remove unused code for nextSliceSegment
+ --- source/Lib/TLibCommon/TComSlice.cpp | 2 --
+ source/Lib/TLibCommon/TComSlice.h | 5 -----
+ source/Lib/TLibEncoder/TEncGOP.cpp | 21 +--------------------
+ source/Lib/TLibEncoder/TEncSlice.cpp | 1 - 4 files changed, 1
+ insertions(+), 28 deletions(-)
+ [1e6f773bc6d0]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: simplify since sliceSegmentCurEndCUAddr always equal to
+ sliceCurEndCUAddr
+ --- source/Lib/TLibCommon/TComSlice.cpp | 2 --
+ source/Lib/TLibCommon/TComSlice.h | 5 -----
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncCu.cpp | 16 ++++++++--------
+ source/Lib/TLibEncoder/TEncGOP.cpp | 12 ++++++------
+ source/Lib/TLibEncoder/TEncSlice.cpp | 20 ++------------------ 6
+ files changed, 17 insertions(+), 40 deletions(-)
+ [311b199d9062]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: ident, no code changes
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 217
+ +++++++++++++++++----------------- 1 files changed, 108
+ insertions(+), 109 deletions(-)
+ [e0e64a6d4690]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ thread: replace while_loop to row/col for_loop
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 16 +++++++++++++--- 1
+ files changed, 13 insertions(+), 3 deletions(-)
+ [ede2db9aabaf]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: remove unused TilesCol, etc
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 38
+ +++++++++------------------------- 1 files changed, 10
+ insertions(+), 28 deletions(-)
+ [95f330abd287]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: replace uiEncCUOrder to uiCUAddr since they always equal
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 8 +++----- 1 files
+ changed, 3 insertions(+), 5 deletions(-)
+ [19fc43ebdd8f]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ cleanup: StartCUAddr always zero
+ --- source/Lib/TLibEncoder/TEncGOP.cpp | 3 +--
+ source/Lib/TLibEncoder/TEncSlice.cpp | 10 ++++------
+ source/Lib/TLibEncoder/TEncSlice.h | 2 +- 3 files changed, 6
+ insertions(+), 9 deletions(-)
+ [aad01f6a7122]
+
+2013-05-14 Steve Borho <steve@borho.org>
+
+ * source/test/intrapredharness.cpp, source/test/ipfilterharness.cpp,
+ source/test/mbdstharness.cpp, source/test/pixelharness.cpp,
+ source/test/testharness.h:
+ testharness: simplify REPORT_SPEEDUP, use varargs to avoid bugs
+ [ae526ecaa5d4]
+
+ * source/test/CMakeLists.txt, source/test/intrapredharness.cpp,
+ source/test/ipfilterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/test/testharness.h,
+ source/test/timer.cpp:
+ testbench: remove unused timer class
+ [78a8595b98aa]
+
+ * source/test/testbench.cpp:
+ nits
+ [21e04f3d8f9c]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: disable partialButterfly4 for 32bit builds
+ (_mm_cvtsi64_si128)
+
+ The _mm_cvtsi64_si128 instrinsic is only supported in 64bit
+ executables
+ [91a94c5f2272]
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: use X86_64 instead of _WIN64
+ [1116d281a461]
+
+ * source/CMakeLists.txt:
+ cmake: add X86_64 define for 64bit builds
+ [abee2d651a02]
+
+ * Merged in shazebnawazkhan/xhevc_shazeb (pull request #141)
+
+ Pred Intra Planar 16x16 vectorization
+ [2d32d38d62dc]
+
+2013-05-14 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [1b9b6880f410]
+
+ * source/encoder/vec/intrapred.inc:
+ uncrustified intrapred.inc
+ [c23f7530165e]
+
+ * source/encoder/vec/intrapred.inc, source/test/intrapredharness.cpp:
+ Pred Intra Planar 16x16 vectorization
+ [6ce476cd2d2e]
+
+2013-05-14 Steve Borho <steve@borho.org>
+
+ * source/test/mbdstharness.cpp:
+ mbdstharness: remove redundant enum
+ [84e91a173197]
+
+ * source/encoder/vec/macroblock.inc:
+ macroblock: disable BUTTERFLY_4 until it as a C reference
+ [b449fc77bbe6]
+
+ * source/test/testbench.cpp:
+ testbench: zero C primitive struct to better isolate missing C
+ primitives
+ [70c55c6ce1d1]
+
+2013-05-14 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.h:
+ Added extra buffer for intrinsic code test
+ [c8edec8e1333]
+
+ * source/encoder/vec/macroblock.inc:
+ Intrinsic Code for partialButterfly4
+ [e5df64c80123]
+
+2013-05-14 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [f66250dd1d07]
+
+ * Merged multicoreware/xhevc into default
+ [426cf8c7b3d5]
+
+2013-05-14 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp:
+ Test code for PartialButterfly4 intrisic code
+ [7a499330e879]
+
+2013-05-14 Deepthi <Deepthi>
+
+ * Merge
+ [36cb4e19eebf]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Modify mode decision to include NxN cost as well
+ [f7654615b959]
+
+2013-05-14 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [2446e9744085]
+
+ * source/encoder/vec/intrapred.inc:
+ Predict intraplanar 8x8 - vector implementation
+ [fab3b59f778a]
+
+ * source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ Predict IntraPlanar - unit test integration
+ [018bdfa8fd47]
+
+2013-05-14 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * build/BuildEncoderApplications.bat,
+ build/RunEncoderApplications.bat:
+ Removed ENABLE_PRIMITIVES macro from Regression test
+ [73c2de1b5707]
+
+ * Merge
+ [f65050f97357]
+
+ * build/BuildEncoderApplications.bat,
+ build/CreateRegressionPackage.bat, build/RunEncoderApplications.bat,
+ build/config.txt:
+ Modified RegressionTest script for 8bit and 16bit
+ [3ca347cc6859]
+
+2013-05-14 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Removing abortflag control - performance and bitrate impact mostly
+ positive
+ [93f0085d2164]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Modifying the recursion abort condition
+ [17c1d43da9dd]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ Fix for compile error with early partition select ON.
+ [3001e773bc64]
+
+2013-05-13 Deepthi <Deepthi>
+
+ * source/CMakeLists.txt, source/Lib/TLibEncoder/TEncCu.cpp:
+ Early exit for partition selection - macro defined. Will be disabled
+ by default - bitcost too high.
+ [0d8b88594b0b]
+
+2013-05-13 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp:
+ renamed the macro QUALITYFACTOR to LAMBDA_PARTITION_SELECT
+ [4bc94e0e7cc6]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h:
+ Made optimizations on xcompressCU - to check the cost of each 2Nx2N
+ block with the corresponding cost of the same CU with NxN partition.
+ Aborts recursion if 2Nx2N mode is better.
+ [6da859408e68]
+
+2013-05-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h, source/x265.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove frame packing SEI
+
+ This packet only contained data passed in by the user. They can
+ generate it themselves
+ [4751ca1eb836]
+
+ * source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h, source/x265.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove J0149_TONE_MAPPING_SEI
+
+ If an app wants to generate this SEI, they can do so themselves.
+ There's no point cluttering the encoder with metadata like this.
+ [424003ca7043]
+
+ * source/x265cfg.cpp:
+ x265cfg: do not print chroma QP offsets if they are 0
+ [3c01f9d9dd2b]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup unused variable warnings found by GCC
+ [e8dff9af77dd]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/encoder/motion.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/test/testharness.h, source/test/timer.cpp:
+ primitives: fix EMMS calls from the HM libraries, make compiler safe
+
+ Use inline when available, else use ASM version of EMMS
+ [6e85e3e865d6]
+
+ * source/x265cfg.cpp:
+ x265cfg: white-space tweaks, no code changes
+ [51d8de167925]
+
+ * build/BuildEncoderApplications.bat,
+ build/CreateRegressionPackage.sh, source/CMakeLists.txt,
+ source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComYuv.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/CMakeLists.txt,
+ source/encoder/motion.cpp, source/encoder/primitives.cpp,
+ source/test/CMakeLists.txt, source/test/testbench.cpp:
+ cleanup: remove ENABLE_PRIMITIVES cmake build option, always enabled
+ [5eecf2d019c8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup: remove redundant brace levels, no logic changes
+ [d0e3af235277]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ cleanup: remove unnecessary x264_cpu_emms()
+ [69df9f38425b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ cleanup: remove extra levels of indent in TEncCU.cpp, no logic
+ changes
+ [77c5d4ff7ef6]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ cleanup: remove iMinQP
+ [0ded36ddaf39]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ remove FEN configurable, assume always true
+ [cbfcb9ccee64]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ remove max delta QP configuration logic
+ [08005afcd2a1]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: prune per-CU multiple QP logic
+
+ When we add/enable rate control, each CU will only be coded once
+ with its determined QP. We won't be encoding the CU multiple times
+ for RDO
+ [83146bab2aa7]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCU: rename rpcCU to pcCu since it is no longer a reference
+ [25567c1a1191]
+
+2013-05-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ remove slice-level per-delta QP and lambda
+ [1cb2a420f6b2]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ remove slice-level multiple-QP rate distortion loop
+ [a30ec6c0bbbd]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ tpyo fix
+ [6088dbb69829]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ uncrustify: tidy white-space
+ [383ac352dde6]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg:
+ remove no longer supported config options
+ [107e039f90b1]
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ merge with slice/tile removal
+ [d9ed2c77f27f]
+
+ * source/x265cfg.cpp:
+ don't print configurations that cannot change
+ [55084a3b3d5e]
+
+2013-05-11 Min Chen <min.chen@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ cleanup: remove code for bSliceStart
+ --- source/Lib/TLibEncoder/TEncCu.cpp | 9 +++------ 1 files changed,
+ 3 insertions(+), 6 deletions(-)
+ [555278f25dfd]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: remove code for sliceStartCU
+ --- source/Lib/TLibCommon/TComDataCU.cpp | 169
+ +++-------------------------------
+ source/Lib/TLibCommon/TComDataCU.h | 4 -
+ source/Lib/TLibCommon/TComSlice.cpp | 4 -
+ source/Lib/TLibCommon/TComSlice.h | 10 --
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 18 +---
+ source/Lib/TLibEncoder/TEncCu.cpp | 35 ++------
+ source/Lib/TLibEncoder/TEncGOP.cpp | 24 +-----
+ source/Lib/TLibEncoder/TEncSlice.cpp | 130
+ ++++----------------------- 8 files changed, 44 insertions(+), 350
+ deletions(-)
+ [b4d10409be04]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ cleanup: remove unused code since dependentSliceSegmentsEnabledFlag
+ always false
+ --- source/Lib/TLibCommon/TComSlice.cpp | 1 -
+ source/Lib/TLibCommon/TComSlice.h | 5 -
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 6 +-
+ source/Lib/TLibEncoder/TEncSlice.cpp | 156
+ +-------------------------------- source/Lib/TLibEncoder/TEncTop.cpp
+ | 12 --- 5 files changed, 6 insertions(+), 174 deletions(-)
+ [cc4d3b223d18]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h:
+ cleanup: remove unused xCalculateNxtCUAddr
+ --- source/Lib/TLibCommon/TComPicSym.cpp | 25
+ ------------------------- source/Lib/TLibCommon/TComPicSym.h | 1 - 2
+ files changed, 0 insertions(+), 26 deletions(-)
+ [d00c47bdfe0a]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: remove class TComTile
+ --- source/Lib/TLibCommon/TComPicSym.cpp | 41
+ +-------------------------------- source/Lib/TLibCommon/TComPicSym.h
+ | 31 ------------------------- source/Lib/TLibEncoder/TEncGOP.cpp |
+ 6 ----- source/Lib/TLibEncoder/TEncSlice.cpp | 17 ++++++------- 4
+ files changed, 10 insertions(+), 85 deletions(-)
+ [1b10f4a0ab74]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: cleanup code for getTileWidth and getTileHeight
+ --- source/Lib/TLibCommon/TComPicSym.cpp | 12 +++++-------
+ source/Lib/TLibCommon/TComPicSym.h | 10 ----------
+ source/Lib/TLibEncoder/TEncGOP.cpp | 7 ------- 3 files changed, 5
+ insertions(+), 24 deletions(-)
+ [097f2b0c2d72]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: cleanup code for getPicSCUEncOrder and getPicSCUAddr
+ --- source/Lib/TLibCommon/TComPicSym.cpp | 10 ----------
+ source/Lib/TLibCommon/TComPicSym.h | 2 --
+ source/Lib/TLibEncoder/TEncCu.cpp | 6 +++---
+ source/Lib/TLibEncoder/TEncGOP.cpp | 6 +++---
+ source/Lib/TLibEncoder/TEncSlice.cpp | 20 ++++++++++---------- 5
+ files changed, 16 insertions(+), 28 deletions(-)
+ [96f911caef7c]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPic.cpp,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: cleanup more code for CUOrderMap
+ --- source/Lib/TLibCommon/TComDataCU.cpp | 24
+ ++++++++++++------------ source/Lib/TLibCommon/TComPic.cpp | 4 ++--
+ source/Lib/TLibCommon/TComPicSym.cpp | 4 ++--
+ source/Lib/TLibCommon/TComPicSym.h | 4 ----
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncCu.cpp | 18 +++++++++---------
+ source/Lib/TLibEncoder/TEncGOP.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncSlice.cpp | 20 ++++++++++---------- 8
+ files changed, 37 insertions(+), 41 deletions(-)
+ [7f054fc6613a]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: cleanup code for CUOrderMap
+ --- source/Lib/TLibCommon/TComPicSym.cpp | 17 -----------------
+ source/Lib/TLibCommon/TComPicSym.h | 10 ++--------
+ source/Lib/TLibEncoder/TEncGOP.cpp | 13 +------------ 3 files
+ changed, 3 insertions(+), 37 deletions(-)
+ [68d8a7b12206]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: cleanup code for tilesIDX
+ --- source/Lib/TLibCommon/TComDataCU.cpp | 33 +++-----
+ source/Lib/TLibCommon/TComDataCU.h | 3 +-
+ source/Lib/TLibCommon/TComPic.cpp | 34 +-------
+ source/Lib/TLibCommon/TComPic.h | 2 +-
+ source/Lib/TLibCommon/TComPicSym.cpp | 83 +++-----------------
+ source/Lib/TLibCommon/TComPicSym.h | 7 +-
+ source/Lib/TLibEncoder/TEncGOP.cpp | 4 +-
+ .../Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp | 12 ++--
+ source/Lib/TLibEncoder/TEncSlice.cpp | 66 +++------------- 9 files
+ changed, 50 insertions(+), 194 deletions(-)
+ [b39cd3c37dc4]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: remove unused code for uniformSpacingFlag
+ --- source/Lib/TLibCommon/TComSlice.cpp | 1 -
+ source/Lib/TLibCommon/TComSlice.h | 5 ----
+ source/Lib/TLibEncoder/TEncGOP.cpp | 37
+ +--------------------------------- 3 files changed, 2 insertions(+),
+ 41 deletions(-)
+ [045677ed690d]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ cleanup: remove unused code since tilesEnabledFlag always false
+ --- source/Lib/TLibCommon/TComSlice.cpp | 1 -
+ source/Lib/TLibCommon/TComSlice.h | 5 -----
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 33
+ +++------------------------------ source/Lib/TLibEncoder/TEncTop.cpp
+ | 1 - 4 files changed, 3 insertions(+), 37 deletions(-)
+ [1766af826d7b]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ cleanup: remove unused code since uiTilesAcross always 1
+ --- source/Lib/TLibEncoder/TEncSlice.cpp | 30
+ ++++++++---------------------- 1 files changed, 8 insertions(+), 22
+ deletions(-)
+ [52069da06f5e]
+
+ * source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ cleanup: remove code for option TilesFixedStructure
+ --- source/Lib/TLibCommon/TComSlice.h | 6 ------
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncCfg.h | 5 -----
+ source/Lib/TLibEncoder/TEncTop.cpp | 1 - source/x265.h | 1 -
+ source/x265cfg.cpp | 1 - source/x265enc.cpp | 1 - 7 files changed, 1
+ insertions(+), 16 deletions(-)
+ [38354c90843d]
+
+ * source/x265.h, source/x265cfg.cpp, source/x265enc.cpp:
+ cleanup: remove code for option LFCrossTileBoundaryFlag
+ --- source/x265.h | 1 - source/x265cfg.cpp | 1 - source/x265enc.cpp |
+ 3 --- 3 files changed, 0 insertions(+), 5 deletions(-)
+ [5a642068a6b0]
+
+ * source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ cleanup: remove code for options UniformSpacingIdc
+ --- source/Lib/TLibEncoder/TEncCfg.h | 5 -----
+ source/Lib/TLibEncoder/TEncTop.cpp | 1 - source/x265.h | 1 -
+ source/x265cfg.cpp | 1 - source/x265enc.cpp | 1 - 5 files changed, 0
+ insertions(+), 9 deletions(-)
+ [868bfad3eaca]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ cleanup: remove unused code in TComPic::createNonDBFilterInfo
+ --- source/Lib/TLibCommon/TComPic.cpp | 10 +++-------
+ source/Lib/TLibCommon/TComPic.h | 1 -
+ source/Lib/TLibEncoder/TEncGOP.cpp | 2 +- 3 files changed, 4
+ insertions(+), 9 deletions(-)
+ [96640251b7f3]
+
+ * source/x265cfg.cpp:
+ cleanup: remove unused code since tileFlag always false
+ --- source/x265cfg.cpp | 30 ++---------------------------- 1 files
+ changed, 2 insertions(+), 28 deletions(-)
+ [7bbab452fbb1]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265cfg.h, source/x265enc.cpp:
+ cleanup: remove code for options NumTileColumnsMinus1 and
+ NumTileRowsMinus1
+ --- source/Lib/TLibCommon/TComPicSym.cpp | 38 +++++-------
+ source/Lib/TLibCommon/TComPicSym.h | 12 ----
+ source/Lib/TLibCommon/TComSlice.cpp | 14 ----
+ source/Lib/TLibCommon/TComSlice.h | 42 -------------
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 20 +------
+ source/Lib/TLibEncoder/TEncCfg.h | 51 ----------------
+ source/Lib/TLibEncoder/TEncGOP.cpp | 44 ++++----------
+ source/Lib/TLibEncoder/TEncSlice.cpp | 20 +++---
+ source/Lib/TLibEncoder/TEncTop.cpp | 73 +----------------------
+ source/x265.h | 2 - source/x265cfg.cpp | 109
+ +--------------------------------- source/x265cfg.h | 5 --
+ source/x265enc.cpp | 12 ---- 13 files changed, 43 insertions(+), 399
+ deletions(-)
+ [3cf723a2a3e7]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ cleanup: onlyOneSliceInPic always true
+ --- source/Lib/TLibCommon/TComDataCU.cpp | 188
+ ++-------------------------------- 1 files changed, 8 insertions(+),
+ 180 deletions(-)
+ [da29d2e40837]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ cleanup: remove code for LFCrossSliceBoundaryFlag
+ --- source/Lib/TLibCommon/TComDataCU.cpp | 19 +++++++++----------
+ source/Lib/TLibCommon/TComDataCU.h | 1 -
+ source/Lib/TLibCommon/TComLoopFilter.cpp | 18 +++++++++---------
+ source/Lib/TLibCommon/TComPic.cpp | 12 ------------
+ source/Lib/TLibCommon/TComPic.h | 1 -
+ source/Lib/TLibCommon/TComSlice.cpp | 2 --
+ source/Lib/TLibCommon/TComSlice.h | 10 ----------
+ source/Lib/TLibEncoder/TEncCavlc.cpp | 6 +++---
+ source/Lib/TLibEncoder/TEncCfg.h | 6 ------
+ source/Lib/TLibEncoder/TEncGOP.cpp | 12 ++----------
+ source/Lib/TLibEncoder/TEncTop.cpp | 1 - source/x265.h | 1 -
+ source/x265cfg.cpp | 1 - source/x265enc.cpp | 3 --- 14 files
+ changed, 23 insertions(+), 70 deletions(-)
+ [2faa4694539d]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ cleanup: remove enum SliceConstraint
+ --- source/Lib/TLibCommon/TypeDef.h | 9 --------- 1 files changed, 0
+ insertions(+), 9 deletions(-)
+ [d8836d4bff30]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ cleanup: remove code for option sliceSegmentMode and
+ sliceSegmentModeArgument
+ --- source/Lib/TLibCommon/TComSlice.cpp | 4 -
+ source/Lib/TLibCommon/TComSlice.h | 9 ---
+ source/Lib/TLibEncoder/TEncCfg.h | 11 ---
+ source/Lib/TLibEncoder/TEncCu.cpp | 12 ----
+ source/Lib/TLibEncoder/TEncGOP.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncSlice.cpp | 118
+ +---------------------------------
+ source/Lib/TLibEncoder/TEncTop.cpp | 4 - source/x265.h | 4 -
+ source/x265cfg.cpp | 17 +----- source/x265enc.cpp | 9 --- 10 files
+ changed, 3 insertions(+), 187 deletions(-)
+ [bd168f9a50b3]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ cleanup: remove code for option sliceMode and sliceModeArgument
+ --- source/Lib/TLibCommon/TComSlice.cpp | 4 -
+ source/Lib/TLibCommon/TComSlice.h | 10 ---
+ source/Lib/TLibEncoder/TEncCfg.h | 12 ----
+ source/Lib/TLibEncoder/TEncCu.cpp | 11 +---
+ source/Lib/TLibEncoder/TEncGOP.cpp | 7 +-
+ source/Lib/TLibEncoder/TEncSlice.cpp | 106
+ +-------------------------------- source/x265.h | 3 -
+ source/x265cfg.cpp | 20 +------ source/x265enc.cpp | 17 ------ 9
+ files changed, 10 insertions(+), 180 deletions(-)
+ [a4788d814f55]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComPic.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ threading: remove unused C++ pointer reference (variant name do not
+ modify for keep compatible)
+ --- source/Lib/TLibCommon/TComDataCU.cpp | 4 ++--
+ source/Lib/TLibCommon/TComPic.h | 2 +-
+ source/Lib/TLibEncoder/TEncCu.cpp | 2 +-
+ source/Lib/TLibEncoder/TEncCu.h | 2 +-
+ source/Lib/TLibEncoder/TEncSlice.cpp | 8 ++++----
+ source/Lib/TLibEncoder/TEncSlice.h | 4 ++-- 6 files changed, 11
+ insertions(+), 11 deletions(-)
+ [90b611273d0a]
+
+2013-05-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ Remove SBACRD configuration option
+ [4fef14f41d6d]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix 16bpp compiler warnings
+ [3dfbf98b245e]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ TComRdCost: remove dead 2x2 satd code paths
+
+ HEVC does not support 2x2 partitions, even for chroma. See
+ http://forum.doom9.org/showthread.php?t=167081
+ [293b1e04bea4]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost: fix old HM bug in dead 2x2 logic
+ [73ef64e5f6a4]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: use SATD primitives to measure chroma intra residual
+ [574ec4bfc6b7]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: use XOP satd primitives when available; roughly 10x C versions
+ [a387fff04cb9]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: use x264_pixel_satd_4x16_avx when available
+ [6910ed19b5d6]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: use x264_pixel_satd_4x16_sse4 when available
+ [26003f6ce226]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: use SSE2 satd functions for all partitions, where available
+
+ Roughly 6x faster than C, 2x faster than MMX
+ [2178cc1f7651]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/pixel.cpp,
+ source/encoder/primitives.h, source/encoder/x86/asm-primitives.cpp,
+ source/test/pixelharness.cpp:
+ primitive: add sa8d_32x32 and sa8d_64x64, use for intra cost
+ estimation
+ [e2f65de5920e]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ TEncCu: remove for-loops over QP, make them simple expressions
+
+ No sane encoder would ever do that sort of redundant analysis. There
+ is a lot of cleanup that needs to trickle up from here. iMinQP and
+ isAddLowestQP can probably be removed, and all the slice and SPS
+ fields for QP RD can be removed, all the way up to the config
+ options that enabled it.
+ [d799578d900d]
+
+2013-05-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.h, source/encoder/motion.h:
+ fix aligned pixel caches for x86 and x64 builds
+
+ Tested on VC10, VC11, and MinGW x86
+ [b8cb76df149d]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/CMakeLists.txt,
+ source/encoder/InterpolationFilter.cpp,
+ source/encoder/InterpolationFilter.h:
+ remove unused InterpolationFilter.cpp, move filter args back into
+ TComPrediction
+ [29c61b186ec8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: replace filterCopy() call with cpyblock primitive
+ [928a426cc302]
+
+ * source/encoder/motion.h:
+ motion: lessen alignment restriction for pixel cache
+
+ Prevents compiler warnings about required padding
+ [bcc1dbbf732d]
+
+ * source/encoder/primitives.cpp:
+ primitives: report XOP and FMA detection as well as CPU SIMD level
+ [031313a5bfcb]
+
+ * source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: re-order member variables to avoid alignment causing
+ padding
+
+ Some VC versions will issue warnings if alignment decls require
+ padding to be added (a performance warning)
+ [8d904a7306ac]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ motion: rename MotionReference.plane to lumaPlane, remove unused
+ channels
+ [9b655ff38985]
+
+ * Merged in sumalatha/xhevc_sumalatha (pull request #132)
+
+ Changed the variable name according to naming convention of HM
+ [0e45feaf8759]
+
+2013-05-10 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ changed the variable name according to naming convention of HM
+ Included the comment such that early abort can be disabled
+ [9df494f9e780]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ removed goto statement.
+ [a0bce7915be9]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ Incorporated Steves changes in optimized xcompressCU() to abort
+ recursion if cost of child CU is greater that the cost of parent CU.
+ [97195ad9e3e2]
+
+2013-05-10 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [a3286df9a8cb]
+
+2013-05-09 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h:
+ optimized xcompressCU() to abort recursion if cost of child CU is
+ greater that the cost of parent CU.
+ [5432fa0411d9]
+
+2013-05-10 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * build/BuildEncoderApplications.bat:
+ Implemented all posible configurations into Regression test(8bit_pre
+ m(enable_test),8bit_HM(disable_test),16bit_prem(enable_test),16bit_H
+ M(disable_test))
+ [b686ba6045ad]
+
+2013-05-10 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/vec/intrapred.inc:
+ Intra: Fix compile errors due to vector conversions.
+ [e4fa6f942fe7]
+
+ * source/encoder/common.cpp:
+ Common: Fix the type mismatch between printf format and argument.
+ [915fc0395e29]
+
+ * source/encoder/common.cpp:
+ Common: Fix broken eol, tabs, spaces.
+ [710015f394ee]
+
+2013-05-10 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ motion: new bitcost method for BitCost and MotionEstimate classes
+ [a553b5197f40]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ remove WEIGHTED_CHROMA_DISTORTION define
+ [39d47f7eaa87]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Remove GPB_SIMPLE_UNI define
+ [f8bc2b563e63]
+
+2013-05-10 Min Chen <min.chen@multicorewareinc.com>
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: optimize predIntraPlanar4 with 16bpp
+ --- source/encoder/vec/intrapred.inc | 87
+ +++++++++++++++++++++++++------------- 1 files changed, 58
+ insertions(+), 29 deletions(-)
+ [0191c2e03e51]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: fix build warning at 16bpp
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 4 ++-- 1 files
+ changed, 2 insertions(+), 2 deletions(-)
+ [14bd77d46976]
+
+2013-05-10 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/intrapred.inc,
+ source/encoder/vec/vecprimitives.inc:
+ vec: inc files should not have includes of their own
+ [7505b485f286]
+
+2013-05-10 Min Chen <min.chen@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/IntraPred.cpp, source/encoder/primitives.h,
+ source/encoder/vec/intrapred.inc,
+ source/encoder/vec/vecprimitives.inc:
+ intrapred: optimize predIntraPlanar4 with 8bpp
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 15 +++-
+ source/encoder/IntraPred.cpp | 51 +++++++++
+ source/encoder/primitives.h | 2 + source/encoder/vec/intrapred.inc |
+ 169 ++++++++++++++++++++++++++++++
+ source/encoder/vec/vecprimitives.inc | 1 + 5 files changed, 236
+ insertions(+), 2 deletions(-)
+ [77f050ae9201]
+
+ * source/VectorClass/vectori128.h:
+ vector128: unsafe compress(map to packuswb)
+ --- source/VectorClass/vectori128.h | 4 ++++ 1 files changed, 4
+ insertions(+), 0 deletions(-)
+ [5b41635781a6]
+
+ * source/VectorClass/vectori128.h:
+ vector128: constant shift right and broadcast
+ --- source/VectorClass/vectori128.h | 39
+ +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39
+ insertions(+), 0 deletions(-)
+ [5b4d2cff5b76]
+
+ * source/VectorClass/vectori128.h:
+ vector128: constant shift left
+ --- source/VectorClass/vectori128.h | 31
+ +++++++++++++++++++++++++++++++ 1 files changed, 31 insertions(+), 0
+ deletions(-)
+ [c1200d24153e]
+
+2013-05-09 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: remove fref class member
+ [07c65d9466fc]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: remove residual functions from class
+
+ motion compensation can happen well outside of the analysis loop, so
+ there is no benefit in trying to re-use our pixel cache
+ [3399d80552f7]
+
+ * source/test/ipfilterharness.cpp, source/test/testharness.h:
+ testharness: adopt checkasm approach to measuring performance
+ [46d2553e471e]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp, source/encoder/x86/asm-
+ primitives.cpp, source/encoder/x86/const-a.asm,
+ source/encoder/x86/cpu-a.asm, source/encoder/x86/pixel-a.asm,
+ source/encoder/x86/pixel.h, source/encoder/x86/sad-a.asm,
+ source/encoder/x86/x86inc.asm, source/encoder/x86/x86util.asm:
+ asm: enable x264 sad, sad_x3, sad_x4, sa8d, and satd assembly
+ routines
+
+ This required removing sa8d and satd primitives from TComRdCost.cpp
+ - they are only called from the new motion search now. x264 asm has
+ been updated to tip
+ [09b29a12d3b9]
+
+2013-05-09 Mandar Gurav <Mandar Gurav>
+
+ * cfg/per-sequence/FourPeople.cfg:
+ Implemented Steve's comments - 2
+ [7b7444bd1693]
+
+ * build/dr_psnr_script/psnr_script.bat, cfg/per-
+ sequence/BasketballDrive.cfg, cfg/per-sequence/FourPeople.cfg:
+ Implemented Steve's comments.
+ [bade8b9e1b03]
+
+2013-05-09 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [b4aa1a7dbe9f]
+
+2013-05-09 Mandar Gurav <Mandar Gurav>
+
+ * build/dr_psnr_script/dr_psnr.exe,
+ build/dr_psnr_script/psnr_script.bat:
+ Use tools/dr_psnr binary built from the source directory. And use
+ YUV file as input to dr_psnr instead of y4m.
+ [8c75b377005e]
+
+2013-05-09 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [4e2423672016]
+
+2013-05-08 Mandar Gurav <Mandar Gurav>
+
+ * Merge
+ [be402320a9b8]
+
+ * build/dr_psnr_script/psnr_script.bat:
+ Implemented suggestions from Steve.
+ [d6affb95df1d]
+
+2013-05-08 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [e76f1de33e6b]
+
+2013-05-08 Mandar Gurav <Mandar Gurav>
+
+ * build/dr_psnr_script/BasketballDrive.cfg,
+ build/dr_psnr_script/FourPeople.cfg,
+ build/dr_psnr_script/encoder_I_15P.cfg,
+ build/dr_psnr_script/encoder_all_I.cfg,
+ build/dr_psnr_script/psnr_script.bat, cfg/per-
+ sequence/BasketballDrive.cfg, cfg/per-sequence/FourPeople.cfg:
+ Implemented suggestions from Deepthi N.
+ [b6ee43e7007e]
+
+2013-05-08 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [321ae9002b1e]
+
+ * Merged multicoreware/xhevc into default
+ [fd85e05a4c0d]
+
+2013-05-07 Mandar Gurav <Mandar Gurav>
+
+ * build/dr_psnr_script/BasketballDrive.cfg,
+ build/dr_psnr_script/FourPeople.cfg,
+ build/dr_psnr_script/TAppDecoder.exe,
+ build/dr_psnr_script/dr_psnr.exe,
+ build/dr_psnr_script/encoder_I_15P.cfg,
+ build/dr_psnr_script/encoder_all_I.cfg,
+ build/dr_psnr_script/psnr_script.bat:
+ Script for generating dr_psnr output. Output files are as follows
+ * encoder_output.txt
+ * decoder_output.txt
+ * dr_psnr_output.txt
+ [6e70935ca7db]
+
+2013-05-09 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [acf7fe823eda]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Change comment.
+ [2a48b178a31c]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Remove copy of Full Pel from filter. Instead copy it in
+ extendPicBorder
+ [9d818fd017d9]
+
+2013-05-09 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ motion: remove redundant plane pointer assignments
+ [6bd4cc4a96c1]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ disable new motion search until UMH mode is added
+
+ The UMH search should have comparable quality to the HM search. The
+ DIA search loses too much compression efficiency to use as a default
+ [fb3a87cc0e10]
+
+ * Merged in ggopu/ggopu_xhevc (pull request #129)
+
+ motion: fix reference plane pointers and strides
+ [8a5c2df2915c]
+
+2013-05-09 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Integrated new motion vector changes
+ [2f781b3a5479]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ motion: fix reference plane pointers and strides
+ [ac4916565956]
+
+2013-05-09 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Fix output mismatch: change input width/height for filter
+ [8c7533211b95]
+
+2013-05-08 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ Remove REMOVE_SINGLE_SEI_EXTENSION_FLAGS, K0180_SCALABLE_NESTING_SEI
+ macros
+ [0a960f095a1e]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ Remove L0208_SOP_DESCRIPTION_SEI define (remove from HM)
+ [7b3273e9b24a]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ Remove SIGNAL_BITRATE_PICRATE_IN_VPS define (removed from tip of HM)
+ [315a8cb35bc7]
+
+ * source/compat/msvc/getopt.c, source/tools/dr_psnr/CMakeLists.txt,
+ source/tools/dr_psnr/SSIMCalculator.cpp:
+ dr_psnr: fix GCC build warnings
+ [1504ac21e981]
+
+ * source/CMakeLists.txt, source/tools/CMakeLists.txt,
+ source/tools/dr_psnr/CMakeLists.txt,
+ source/tools/dr_psnr/PsnrCalculator.cpp,
+ source/tools/dr_psnr/PsnrCalculator.h,
+ source/tools/dr_psnr/SSIMCalculator.cpp,
+ source/tools/dr_psnr/SSIMCalculator.h,
+ source/tools/dr_psnr/dr_psnr.cpp:
+ tools: add a tools/ folder and start with dr_psnr
+ [c211b4c4d1ba]
+
+ * source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/ContextModel.h, source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncSbac.h:
+ cleanup compile guards, no code effects
+ [eb687bb237ae]
+
+ * source/Lib/TLibCommon/ContextTables.h:
+ remove FIX827, FIX712 #defines
+ [6cf68223c50f]
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ random white-space cleanups, no code changes
+ [22363860b159]
+
+2013-05-08 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #124)
+
+ Modifications to subpel generation
+ [4dd4c610646f]
+
+2013-05-08 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [f928fa3e7405]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Merge
+ [656789cd00e1]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Change filter temp variable to short* instead of TshortYuv
+ [6c4e3ee894bf]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp:
+ Uncrustified two files.
+ [86c4e1e12613]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp:
+ Use block copy primitives instead of filterCopy
+ [47aa034b5545]
+
+ * Merge
+ [770006a69dfa]
+
+2013-05-07 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter16.inc,
+ source/encoder/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ Backed out changeset: 1baaa3822b79
+ [6b4cabf50573]
+
+ * source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter16.inc,
+ source/encoder/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ Backed out changeset: da889c1d7641
+ [1baaa3822b79]
+
+2013-05-08 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [4470f5f36d76]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Merged multicoreware/xhevc into default
+ [cd5e5e2498d8]
+
+2013-05-07 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Remove unwanted comments and code.
+ [bb747fc0379d]
+
+2013-05-08 Deepthi <Deepthi>
+
+ * Merge
+ [bad457c087fd]
+
+ * source/encoder/CMakeLists.txt, source/encoder/common.cpp,
+ source/encoder/common.h:
+ Debug Support for dumping buffers. Simply typecast all pointers to
+ void*, and it will dump the required number of bytes into a buffer.
+ [1aa6126cf203]
+
+2013-05-08 Steve Borho <steve@borho.org>
+
+ * source/test/testharness.h:
+ testbench: GCC build fixes
+ [524b43126be7]
+
+ * Merged in mandarmcw/xhevc_mandar_mahesh (pull request #121)
+
+ Prints the avg. number of cycles taken for vec_primitive and C
+ function calls.
+ [e9572d3f84b7]
+
+2013-05-07 Mandar Gurav <Mandar Gurav>
+
+ * source/test/testharness.h:
+ Prints the avg. number of cycles taken for vec_primitive and C
+ function calls.
+ [d339ef591ffd]
+
+2013-05-08 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in sumalatha/xhevc_sumalatha (pull request #122)
+
+ fix for the output mismatch issue. Now when AMPREfine flag is not
+ set, output matches
+ [1595173e7694]
+
+2013-05-08 sumalatha <sumalatha>
+
+ * source/Lib/TLibEncoder/TEncTop.cpp:
+ fix for the output mismatch issue. Now when AMPREfine flag is not
+ set, output matches
+ [34dd7b92a7f7]
+
+2013-05-07 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp, source/PPA/ppaCPUEvents.h:
+ ppa: add an event for TComPicYuv::extendPicBorder()
+ [b4702c569e73]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg:
+ white-space nits in config files
+ [32049d39e86b]
+
+2013-05-07 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/test/filterharness.cpp, source/test/filterharness.h:
+ Merged multicoreware/xhevc into default
+ [e29437861397]
+
+2013-05-07 sumalatha <sumalatha>
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265.h,
+ source/x265cfg.cpp, source/x265enc.cpp:
+ Included additional flag "AMPRefine" in cfg file and made changes in
+ the code such that if the flag is enabled, the partition size Nx2N
+ and 2NxN is used for search and other operations in INTER otherwise
+ these two partition sizes are excluded.
+ [4589879e4226]
+
+2013-05-07 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Removed unwanted comments
+ [498c2a8e99e9]
+
+ * source/encoder/InterpolationFilter.cpp:
+ Modified filterverticalpel_pel
+ [5c9b304404b5]
+
+ * source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter16.inc,
+ source/encoder/vec/ipfilter8.inc, source/test/ipfilterharness.cpp:
+ Added vector primitives for filtervertical_pel_pel
+ [da889c1d7641]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ Remove all references to chroma filterBlocks.
+ [171889c50962]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ ME and Prediction uses new Luma subpel blocks, instead of generating
+ subpels on demand.
+ [127995bc3034]
+
+ * source/test/CMakeLists.txt, source/test/filterharness.cpp,
+ source/test/filterharness.h, source/test/testbench.cpp:
+ Removed old filter from testbench
+ [069d0a894c3b]
+
+ * source/encoder/macroblock.cpp:
+ Removed old filter c primitives from macroblock.cpp
+ [f5f4cefafde6]
+
+ * source/encoder/vec/macroblock.inc:
+ Removed old filters vec primitives
+ [98efb37469d6]
+
+2013-05-06 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/blockcopy.inc:
+ blockcopy: retask 8bpp s_p for s_c
+ [b80724df82fb]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ pixel: introduce blockcopy_s_c primitive for expanding bytes to
+ shorts
+
+ In some places, we always want to expand bytes to shorts
+ unconditionally, regardless of the size of pixel/Pel. This function
+ pointer may be used for that. Implementation wise, it should use the
+ existing vectorized function for 8bpp blockcopy_s_p.
+ [f0ce6f417381]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: fix build warning at 16bpp
+ [1c265556534f]
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #118)
+
+ Added function to generate Luma subpels for entire frame.
+ [6e133daf825b]
+
+2013-05-06 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Modified function to generate Luma subpels for entire frame.
+ [8910b39167b2]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Functions to generate QPels for entire frame
+ [a230bfeb4924]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/encoder/InterpolationFilter.h:
+ Generate Hpel for entire frame. (tested!)
+ [5e8ea012ff63]
+
+2013-05-06 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComPicYuv.h,
+ source/encoder/vec/interpolationfilter.inc:
+ Merged multicoreware/xhevc into default
+ [a9d4a7ce337c]
+
+2013-05-03 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPicYuv.h:
+ Added access functions for filteredBlocks
+ [260dd458563c]
+
+ * Merge
+ [5fafbbd52b06]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Initialize m_filterBlocks to NULL
+ [dd7000afff97]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ Fix deallocating filterBlocks memory.
+ [e7e63540cbf8]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h, source/encoder/TShortYUV.h:
+ Added Data structures for H/Q planes
+ [d2269b064b50]
+
+2013-05-06 Steve Borho <steve@borho.org>
+
+ * source/test/intrapredharness.cpp:
+ intrapredharness: prevent out-of-bounds reads during validation
+ tests
+ [25de1ee81ef5]
+
+ * source/encoder/vec/ipfilter.inc:
+ ipfilter: remove cruft that was only for preventing unused parameter
+ warnings
+ [df6907669de5]
+
+ * source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter8.inc:
+ Merged in mandarmcw/xhevc_mandar_mahesh (pull request #117)
+
+ Filter implementation for HIGH_BIT_DEPTH=0
+ [d6a9d7d2fb0e]
+
+2013-05-06 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter8.inc:
+ Filter implementation for HIGH_BIT_DEPH=0
+ [0e7d769686df]
+
+2013-05-06 Min Chen <chenm003@163.com>
+
+ * source/test/intrapredharness.cpp, source/test/intrapredharness.h:
+ intrapred: testbench for xPredIntraDC
+ --- source/test/intrapredharness.cpp | 59
+ +++++++++++++++++++++++++++++---------
+ source/test/intrapredharness.h | 4 ++- 2 files changed, 48
+ insertions(+), 15 deletions(-)
+ [9d2804da4cff]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/IntraPred.cpp, source/encoder/primitives.h,
+ source/encoder/vec/intrapred.inc:
+ intrapred: C reference model and code cleanup
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 12 ++-
+ source/encoder/IntraPred.cpp | 44 ++++++++++-
+ source/encoder/primitives.h | 6 +- source/encoder/vec/intrapred.inc
+ | 132 +----------------------------- 4 files changed, 53
+ insertions(+), 141 deletions(-)
+ [8f5f1349ecb3]
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: simplify in xDCPredFiltering()
+ --- source/encoder/vec/intrapred.inc | 10 ++++++---- 1 files changed,
+ 6 insertions(+), 4 deletions(-)
+ [22b068217f37]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/IntraPred.cpp, source/encoder/primitives.h,
+ source/encoder/vec/intrapred.inc:
+ intrapred: new vector optimize code for predIntraDC,
+ xDCPredFiltering
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 4 +
+ source/encoder/IntraPred.cpp | 1 + source/encoder/primitives.h | 2 +
+ source/encoder/vec/intrapred.inc | 471
+ ++++++++++++++++++++++++++++++ 4 files changed, 478 insertions(+), 0
+ deletions(-)
+ [66de4e152e1f]
+
+ * source/VectorClass/vectori128.h:
+ vector128: constant shift for Vec8us
+ --- source/VectorClass/vectori128.h | 12 ++++++++++++ 1 files
+ changed, 12 insertions(+), 0 deletions(-)
+ [6764e16594d5]
+
+ * source/VectorClass/vectori128.h, source/encoder/vec/intrapred.inc:
+ vector128: more general load_partial and store_partial
+ --- source/VectorClass/vectori128.h | 56
+ +++++++++++++++++++++++++++++++------
+ source/encoder/vec/intrapred.inc | 3 +- 2 files changed, 48
+ insertions(+), 11 deletions(-)
+ [2cc4fc0e415e]
+
+ * source/VectorClass/vectori128.h, source/encoder/vec/intrapred.inc:
+ vectorclass: fix Vec4ui wrong action and name
+ --- source/VectorClass/vectori128.h | 4 ++--
+ source/encoder/vec/intrapred.inc | 4 ++-- 2 files changed, 4
+ insertions(+), 4 deletions(-)
+ [19c3e1abfd46]
+
+2013-05-06 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/ipfilter16.inc, source/encoder/vec/ipfilter8.inc:
+ ipfilter: more pruning
+ [2bb2e364d57c]
+
+ * source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter16.inc,
+ source/encoder/vec/ipfilter8.inc,
+ source/encoder/vec/vecprimitives.inc:
+ vec: inc files should not include other headers
+
+ Only vecprimitives.inc may include files; the other files are being
+ included within a namespace and can cause strange link problems if
+ headers are included.
+ [b6fc9bf11a3e]
+
+ * source/Lib/TLibEncoder/TEncSlice.cpp:
+ TEncSlice: backout replacement of calcRdCost64 with CALCRDCOST_SAD
+
+ Those were two entirely different function calls
+ [74bf6c970636]
+
+2013-05-06 nandaku2 <deepthi@multicorewareinc.com>
+
+ * source/encoder/vec/interpolationfilter.inc:
+ Merged in mandarmcw/xhevc_mandar_mahesh (pull request #116)
+
+ Interpolationfilter primitives restructured.
+ [81577757e572]
+
+2013-05-06 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/vec/CMakeLists.txt,
+ source/encoder/vec/interpolationfilter.inc,
+ source/encoder/vec/ipfilter.inc, source/encoder/vec/ipfilter16.inc,
+ source/encoder/vec/ipfilter8.inc,
+ source/encoder/vec/vecprimitives.inc:
+ Interpolationfilter primitives restructured.
+ [07679e04c0e4]
+
+2013-05-06 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ Replaced the function call for calcRdCost() with MACRO CALCRDCOST
+ such that in macro, the switch case for selection of "eDFunc" is
+ removed.
+ [7f3fe334fb1e]
+
+2013-05-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix warning with 15bpp build
+ [cd46a81725fb]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv: use primitives for remaining copy functions
+ [34471ada8ab3]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ TComYuv: use pixel copy primitives
+ [bce043dae3ef]
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ white-space nits, no changes
+ [2bed949a69ab]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: get access to the original source pixel plane and real
+ strides
+ [d959edb866f9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: get offset into original picture buffer
+
+ pcOrgYuv seems to point to a small YUV buffer holding only the
+ pixels for the current CTU under analysis.
+ [d85c6703f022]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ TComPrediction: fix MSVC reported stack corruption
+
+ When run in debug mode, MSVC reported stack corruption near
+ leftColumn. The 1st for loop is iterating over blkSize+1
+
+ This looks like an HM bug exposed by reducing MAX_CU_SIZE to the
+ actual max 64
+ [14d43f8589d0]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: add vectorized sad_48_x3
+ [765fc92c7d80]
+
+ * source/encoder/pixel.cpp, source/encoder/vec/pixel.inc,
+ source/encoder/vec/pixel16.inc, source/encoder/vec/pixel8.inc:
+ pixel: add vectorized sad_48_x4
+ [254937aa7425]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: add vectorized sad 48
+ [f48a79bd4693]
+
+ * source/encoder/vec/pixel16.inc:
+ pixel16: fix bug in sad_12_x4
+ [a1ec7d7c20ee]
+
+ * source/encoder/vec/pixel16.inc:
+ pixel16: fix bug in sad_12_x3
+ [da712d42ba62]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: fix compiler warning
+ [3be39838c8d4]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: fix bug in sad_4_x4
+ [0b7655d1a1b3]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/test/pixelharness.cpp:
+ pixel: add 48 sized partitions
+ [98c591baafeb]
+
+2013-05-05 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComRom.h:
+ intrapred: use alignment piAdibuf
+ --- source/Lib/TLibCommon/TComPattern.cpp | 18 +++++++++---------
+ source/Lib/TLibCommon/TComPrediction.cpp | 4 ++--
+ source/Lib/TLibCommon/TComRom.h | 1 + 3 files changed, 12
+ insertions(+), 11 deletions(-)
+ [48895f57159b]
+
+ * source/Lib/TLibCommon/TComPattern.cpp:
+ intrapred: perform by merge loop
+ --- source/Lib/TLibCommon/TComPattern.cpp | 10 ++-------- 1 files
+ changed, 2 insertions(+), 8 deletions(-)
+ [51b0fb4398be]
+
+ * source/Lib/TLibCommon/TComPattern.cpp:
+ intrapred: perform pixel copy with memcpy() in
+ TComPattern::fillReferenceSamples
+ --- source/Lib/TLibCommon/TComPattern.cpp | 23
+ ++++------------------- 1 files changed, 4 insertions(+), 19
+ deletions(-)
+ [bab59102ce8e]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h:
+ intrapred: remove unsupported mode code for Chroma_FromLuma
+ --- source/Lib/TLibCommon/TComPattern.cpp | 15 +++------------
+ source/Lib/TLibCommon/TComPattern.h | 3 +-- 2 files changed, 4
+ insertions(+), 14 deletions(-)
+ [da7059cdee2c]
+
+ * source/Lib/TLibCommon/TComPattern.cpp:
+ intrapred: perform pixel copy with memcpy() in
+ TComPattern::initAdiPattern
+ --- source/Lib/TLibCommon/TComPattern.cpp | 11 +++-------- 1 files
+ changed, 3 insertions(+), 8 deletions(-)
+ [d249be0a4674]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ intrapred: correct buffer name from YuvExt to PredBuf
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 14 +++++++-------
+ source/Lib/TLibCommon/TComPrediction.h | 12 ++++++------
+ source/Lib/TLibEncoder/TEncSearch.cpp | 14 +++++++------- 3 files
+ changed, 20 insertions(+), 20 deletions(-)
+ [3faafbf81d93]
+
+ * source/Lib/TLibCommon/TComRom.h:
+ reduce MAX_CU_SIZE to 64
+ --- source/Lib/TLibCommon/TComRom.h | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [800d16ed3620]
+
+2013-05-05 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ TEncSearch: SAD primitives all expect 16byte aligned fenc buffer
+ [7f90a9927f4a]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: finish optimizations - performance summary below
+
+ Measured on AMD Trinity A10M (more tuning can be done)
+
+ 16b orig 16b opt 8b orig 8b opt sad[ 4x4] 3.79x 3.51x 2.53x 3.34x
+ sad_x3[ 4x4] 2.02x 4.17x 4.17x 5.99x sad_x4[ 4x4] 3.63x 4.35x 3.64x
+ 5.95x sad[ 4x8] 3.76x 3.90x 4.21x 3.47x sad_x3[ 4x8] 3.64x 4.33x
+ 5.67x 7.58x sad_x4[ 4x8] 2.56x 4.74x 6.39x 8.21x sad[ 4x12] 4.25x
+ 3.94x 3.11x 4.74x sad_x3[ 4x12] 4.67x 4.98x 4.93x 8.96x sad_x4[
+ 4x12] 2.82x 5.31x 6.71x 9.39x sad[ 4x16] 4.42x 3.96x 3.41x 3.60x
+ sad_x3[ 4x16] 4.65x 5.09x 6.98x 8.60x sad_x4[ 4x16] 3.17x 5.35x
+ 7.81x 8.41x sad[ 4x24] 5.08x 4.07x 3.69x 4.19x sad_x3[ 4x24] 5.53x
+ 5.83x 7.70x 8.82x sad_x4[ 4x24] 3.52x 5.73x 8.32x 9.37x sad[ 4x32]
+ 5.59x 3.94x 3.99x 4.00x sad_x3[ 4x32] 5.83x 5.27x 7.39x 9.31x
+ sad_x4[ 4x32] 3.46x 5.41x 7.94x 9.42x sad[ 4x64] 5.40x 3.68x 3.60x
+ 4.36x sad_x3[ 4x64] 5.89x 5.95x 8.27x 8.82x sad_x4[ 4x64] 3.56x
+ 6.37x 9.17x 9.50x sad[ 8x4] 6.10x 5.74x 5.87x 5.84x sad_x3[ 8x4]
+ 6.39x 8.13x 9.75x 11.53x sad_x4[ 8x4] 3.26x 8.52x 9.19x 10.51x sad[
+ 8x8] 6.05x 6.33x 8.87x 8.01x sad_x3[ 8x8] 6.32x 9.18x 11.84x 13.61x
+ sad_x4[ 8x8] 4.14x 10.67x 12.58x 14.97x sad[ 8x12] 8.03x 6.79x
+ 10.30x 6.91x sad_x3[ 8x12] 8.84x 10.46x 12.15x 17.12x sad_x4[ 8x12]
+ 5.28x 11.92x 12.83x 16.98x sad[ 8x16] 8.23x 6.79x 7.63x 9.17x
+ sad_x3[ 8x16] 9.26x 11.33x 13.88x 17.11x sad_x4[ 8x16] 5.49x 12.22x
+ 14.27x 17.19x sad[ 8x24] 10.02x 6.93x 8.16x 9.32x sad_x3[ 8x24]
+ 11.32x 11.86x 15.38x 17.91x sad_x4[ 8x24] 6.48x 13.29x 15.28x 17.95x
+ sad[ 8x32] 10.96x 6.94x 8.03x 7.51x sad_x3[ 8x32] 12.70x 10.95x
+ 14.03x 17.67x sad_x4[ 8x32] 6.87x 13.09x 15.16x 17.80x sad[ 8x64]
+ 10.61x 6.76x 8.18x 8.75x sad_x3[ 8x64] 12.35x 12.67x 16.05x 17.61x
+ sad_x4[ 8x64] 6.70x 14.02x 17.93x 17.90x sad[ 12x4] 12.01x 8.40x
+ 4.32x 11.48x sad_x3[ 12x4] 14.04x 7.17x 9.33x 12.21x sad_x4[ 12x4]
+ 4.42x 7.61x 9.60x 12.85x sad[ 12x8] 5.78x 10.04x 3.35x 14.10x
+ sad_x3[ 12x8] 5.31x 8.08x 10.47x 15.54x sad_x4[ 12x8] 4.34x 9.55x
+ 11.67x 16.22x sad[12x12] 6.83x 10.16x 2.92x 15.61x sad_x3[12x12]
+ 6.52x 9.10x 9.02x 18.85x sad_x4[12x12] 3.65x 9.97x 11.17x 18.88x
+ sad[12x16] 6.68x 10.00x 3.90x 14.68x sad_x3[12x16] 6.04x 9.09x
+ 12.11x 18.01x sad_x4[12x16] 4.12x 10.20x 10.40x 16.77x sad[12x24]
+ 7.30x 10.50x 3.72x 17.46x sad_x3[12x24] 6.50x 9.48x 11.51x 18.17x
+ sad_x4[12x24] 4.42x 10.80x 12.50x 19.86x sad[12x32] 7.26x 10.35x
+ 3.60x 15.86x sad_x3[12x32] 7.37x 9.28x 10.14x 19.57x sad_x4[12x32]
+ 4.50x 10.46x 11.64x 19.26x sad[12x64] 7.39x 10.43x 3.68x 16.47x
+ sad_x3[12x64] 6.97x 9.85x 11.97x 19.00x sad_x4[12x64] 4.74x 10.70x
+ 13.86x 19.14x sad[ 16x4] 6.70x 11.02x 16.55x 15.20x sad_x3[ 16x4]
+ 2.94x 10.38x 14.13x 20.10x sad_x4[ 16x4] 9.72x 10.35x 13.35x 18.95x
+ sad[ 16x8] 8.44x 13.62x 23.35x 22.69x sad_x3[ 16x8] 8.36x 11.16x
+ 17.99x 25.49x sad_x4[ 16x8] 12.18x 13.23x 18.34x 23.65x sad[16x12]
+ 10.72x 13.74x 25.86x 19.47x sad_x3[16x12] 11.61x 13.38x 19.21x
+ 31.36x sad_x4[16x12] 13.33x 13.83x 19.15x 31.15x sad[16x16] 9.02x
+ 13.12x 20.34x 24.25x sad_x3[16x16] 10.56x 13.96x 22.97x 31.96x
+ sad_x4[16x16] 14.20x 14.20x 23.01x 28.75x sad[16x24] 11.53x 13.88x
+ 25.07x 21.63x sad_x3[16x24] 12.69x 14.23x 25.64x 32.38x
+ sad_x4[16x24] 12.16x 15.11x 21.14x 34.09x sad[16x32] 13.78x 12.36x
+ 24.08x 20.00x sad_x3[16x32] 11.73x 13.73x 25.03x 33.07x
+ sad_x4[16x32] 12.30x 14.24x 17.85x 33.74x sad[16x64] 12.01x 14.42x
+ 29.62x 20.27x sad_x3[16x64] 9.17x 15.85x 28.93x 26.92x sad_x4[16x64]
+ 10.81x 13.19x 13.30x 27.21x sad[ 24x4] 11.59x 17.13x sad_x3[ 24x4]
+ 10.48x 13.78x sad_x4[ 24x4] 11.10x 11.48x sad[ 24x8] 12.13x 18.30x
+ sad_x3[ 24x8] 10.54x 21.45x sad_x4[ 24x8] 10.38x 20.92x sad[24x12]
+ 13.24x 19.48x sad_x3[24x12] 11.65x 24.07x sad_x4[24x12] 10.70x
+ 23.24x sad[24x16] 14.78x 16.64x sad_x3[24x16] 12.28x 24.14x
+ sad_x4[24x16] 11.00x 23.40x sad[24x24] 13.03x 18.30x sad_x3[24x24]
+ 11.58x 25.63x sad_x4[24x24] 11.58x 24.97x sad[24x32] 13.31x 20.60x
+ sad_x3[24x32] 11.98x 24.82x sad_x4[24x32] 11.75x 24.23x sad[24x64]
+ 14.44x 19.69x sad_x3[24x64] 11.99x 24.59x sad_x4[24x64] 10.38x
+ 24.77x sad[ 32x4] 14.00x 13.52x 16.56x 22.89x sad_x3[ 32x4] 11.05x
+ 10.79x 19.78x 27.12x sad_x4[ 32x4] 10.05x 9.93x 13.85x 24.46x sad[
+ 32x8] 8.41x 14.32x 27.08x 25.34x sad_x3[ 32x8] 12.81x 11.18x 27.39x
+ 29.64x sad_x4[ 32x8] 10.39x 9.57x 13.85x 29.09x sad[32x12] 10.30x
+ 16.07x 26.75x 27.38x sad_x3[32x12] 14.42x 11.35x 23.73x 33.19x
+ sad_x4[32x12] 10.77x 10.22x 16.79x 33.34x sad[32x16] 9.98x 15.20x
+ 29.70x 27.72x sad_x3[32x16] 10.34x 11.84x 27.65x 32.54x
+ sad_x4[32x16] 10.91x 11.07x 12.62x 33.63x sad[32x24] 10.65x 15.88x
+ 32.63x 28.39x sad_x3[32x24] 11.09x 11.14x 29.62x 33.79x
+ sad_x4[32x24] 11.21x 11.18x 13.53x 34.14x sad[32x32] 11.62x 14.51x
+ 32.15x 24.65x sad_x3[32x32] 14.23x 11.83x 29.88x 30.06x
+ sad_x4[32x32] 11.63x 11.44x 15.78x 33.15x sad[32x64] 11.39x 15.72x
+ 35.13x 28.99x sad_x3[32x64] 10.43x 10.39x 28.87x 36.20x
+ sad_x4[32x64] 10.73x 9.71x 14.08x 36.61x sad[ 64x4] 9.92x 12.61x
+ 24.17x 25.65x sad_x3[ 64x4] 10.89x 9.16x 20.94x 27.04x sad_x4[ 64x4]
+ 7.64x 9.67x 11.56x 24.33x sad[ 64x8] 8.64x 13.43x 25.54x 26.88x
+ sad_x3[ 64x8] 11.55x 9.80x 22.40x 23.04x sad_x4[ 64x8] 8.34x 10.10x
+ 12.34x 18.87x sad[64x12] 9.41x 14.17x 27.20x 28.67x sad_x3[64x12]
+ 12.39x 9.30x 23.76x 26.13x sad_x4[64x12] 7.88x 9.21x 14.02x 22.10x
+ sad[64x16] 8.66x 14.51x 28.84x 30.87x sad_x3[64x16] 8.98x 9.60x
+ 24.42x 27.69x sad_x4[64x16] 8.27x 9.67x 29.10x 24.21x sad[64x24]
+ 9.16x 13.90x 24.11x 27.05x sad_x3[64x24] 8.56x 9.75x 16.25x 28.11x
+ sad_x4[64x24] 9.61x 9.99x 30.53x 24.77x sad[64x32] 10.06x 14.10x
+ 25.67x 28.96x sad_x3[64x32] 8.46x 9.97x 13.58x 29.50x sad_x4[64x32]
+ 10.15x 10.14x 31.67x 25.41x sad[64x64] 10.06x 14.75x 25.82x 32.25x
+ sad_x3[64x64] 8.04x 8.93x 31.06x 30.90x sad_x4[64x64] 9.36x 9.88x
+ 26.55x 26.53x
+ [82239d0023c8]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: optimize sad_4 and sad_8 to not need helpers
+ [3ad29dc2d608]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: more cleanups, no behavior changes
+ [9ebffae04e6f]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: intermediate variable rename, to be consistent with pixel16
+ [6f3ac7d4cfbd]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: 8bpp sad_64_x4 and sad_64_x3 cannot have residual rows
+ [6fe1fd06c373]
+
+ * source/encoder/vec/pixel16.inc:
+ pixel16: optimize 16bpp sad_N_x3 (adapted copies of sad_N_x4)
+ [9b3489a15596]
+
+ * source/encoder/vec/pixel16.inc:
+ pixel16: optimize sad_N_x4 16bpp
+ [fde81cd177e9]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel8.inc:
+ pixel8: optimize sad_N_x4 8bpp, add sad_24_x4
+ [2b22cc59fa15]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: optimize 8bpp sad_12_x4
+ [379a62ef320b]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: add sad_24 for 8bpp and 24bpp
+ [8851cd024b0f]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc:
+ pixel16: add sad_24_x3
+ [e2002f58b3a8]
+
+ * source/encoder/vec/pixel16.inc:
+ pixel16: fix some unaligned access exceptions triggered by VC10
+ 16bpp x64
+ [3d667e4c590c]
+
+ * source/encoder/vec/pixel16.inc:
+ pixel16: fixups for 16bpp primitives
+ [e88afd27d35a]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: optimize sad_8_x4 - now same X over C as sad_8_x3
+ [c17efc4e7f4a]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: optimize sad_4_x4, remove unnecessary sad_X_4_x4 functions
+ [06554d1dedba]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: remove more useless lx parameters and for-loops for x3
+ functions
+ [72a35f3f6e2e]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel: optimize sad_64_x3 - about 20% improvement
+ [46c082e89598]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel: optimize sad_32_x3 - about 20% improvement, remove unused
+ sad_32_4
+ [12351a667289]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: optimize sad_16_x3 - about 30% improvement, remove sad_16_4
+ [ca2192011209]
+
+2013-05-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: optimize sad_12_x3 - about 2x improvement, remove sad_12_4
+ [fed8c8152de7]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: slight tuneup for sad_8_3x
+ [056c029b7762]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: allow 16 rows in a row of 4-wide 8bpp blocks - up to 30%
+ faster
+ [d906f4351c02]
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: sad_8_x3<4> is faster than sad_8_4_x3<8,4> which seems to
+ have no use
+ [e834992087df]
+
+2013-05-05 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/vec/CMakeLists.txt:
+ cmake: Specify the compilation of architecture SSE2 explicitly.
+
+ The VS2010 crashes when executing one of the sad variants. The
+ instruction vmovdqa() was found generated, crashing cpuid == 4 CPU.
+ [9cf98cfecaa7]
+
+2013-05-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ pixel: sad_4_x3 should not have lx template var; it was broken for
+ 8bpp
+
+ Removes sad_4_4_x3 since it added no optimization
+ [a89f7e937705]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: enable SAD PARTITION_16x24 now that it is supported for 8bpp
+ [bc25ce99514e]
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: use Vec8us to accumulate sums with addSumAbsDiff()
+
+ From 30 to 100% speedups for 8bpp SAD functions
+ [a194cda3c978]
+
+ * source/VectorClass/vectori128.h:
+ vector: add Vec8us::addSumAbsDiff()
+
+ This avoids data casts and removes a couple of instructions from
+ some tight paths.
+ [f167c85b6707]
+
+ * source/encoder/vec/CMakeLists.txt:
+ cmake: add a comment about inc files listed in PrimitivesVec project
+ [bc8c389159c5]
+
+ * source/CMakeLists.txt:
+ cmake: remove option for multithreaded build, enable unconditionally
+ [013198c3eb01]
+
+2013-05-05 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/vec/interpolationfilter.inc:
+ Interpolation: Fix compile warning/error on unused parameter.
+ [e160901853b5]
+
+ * source/encoder/vec/vecprimitives.inc:
+ primitives: Fix compile error on re-declaration of selectf() and
+ selectd().
+
+ It is probably due to cycle in the header includes.
+ [3736fe22253e]
+
+2013-05-04 Min Chen <chenm003@163.com>
+
+ * source/VectorClass/vectori128.h, source/encoder/vec/intrapred.inc:
+ intrapred: more improvement 8bpp DC for 32 and 64 blocks
+ --- source/VectorClass/vectori128.h | 45
+ ++++++++++++++++++++++++++++++++++++++
+ source/encoder/vec/intrapred.inc | 38
+ +++++++++++++------------------ 2 files changed, 61 insertions(+),
+ 22 deletions(-)
+ [c8fe324edc4d]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: VS2008 not defined _WIN32_WINNT_VISTA
+ --- source/encoder/threadpool.cpp | 2 +- 1 files changed, 1
+ insertions(+), 1 deletions(-)
+ [d5d163ce5222]
+
+2013-05-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: remove includes and namespace from inc header
+
+ includes must be in vecprimitives.inc, outside of the anonoymous
+ namespace
+ [ed8b00af0055]
+
+ * source/encoder/vec/CMakeLists.txt:
+ cmake: add intrapred.inc to the PrimitivesVec project
+
+ So it's easy to find
+ [40ccd41545cb]
+
+ * source/VectorClass/vectori128.h, source/encoder/vec/intrapred.inc:
+ vectori128: add fromUint64() method, only available for x64 builds
+
+ Needs a better fallback and cross-platform x64 compilation detection
+ [2daae31d6ab5]
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: simplify 8bpp DC for 32 and 64 blocks, now faster than C
+ [78aeea32fd92]
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: add an 8bpp path for DC pred (currently slower than C at
+ 64x64)
+
+ This primitive might have to use aligned loads to be faster than C..
+ or have a function pointer per intra-block width to avoid the switch
+ statement.
+ [4f1b0d47e596]
+
+2013-05-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: use g_aucConvertToBit for bit size
+ [b2b21d6fe1fc]
+
+ * source/test/intrapredharness.cpp:
+ intrapredharness: ensure top pixels always avail for perf test
+ [3bb5cca8fb52]
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: perform horizontal sum at increased depth
+
+ Test now passes with 10bit pixels
+ [5a3d377654c2]
+
+ * source/test/intrapredharness.cpp:
+ intrapredharness: pre-calculate all random pixels, ensure top pixels
+ always avail
+ [55dc29e361fa]
+
+ * source/test/intrapredharness.cpp:
+ intrapredharness: this primitive requires initROM() to be called
+ [793b2e36e7e8]
+
+ * source/test/CMakeLists.txt:
+ testbench: 8bpp link now requires HM, just for a global array
+ [d883646084ac]
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: disable 4100 warnings until 8bpp is supported
+ [3db61f610fc5]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: further compilation fixes for other platforms
+ [5c2c51892268]
+
+ * source/test/intrapredharness.cpp:
+ intrapredharness: fix shadowed loop variable
+ [c9341cd75fca]
+
+ * source/test/CMakeLists.txt:
+ cmake: add new intrapred harness to testbench build
+ [fee22e63bf0a]
+
+2013-05-04 Min Chen <chenm003@163.com>
+
+ * source/test/intrapredharness.cpp, source/test/intrapredharness.h,
+ source/test/testbench.cpp:
+ intrapred: testbench
+
+ From 990ec815902203bfb954921bac75e1913719e630 Mon Sep 17 00:00:00
+ 2001
+ --- source/test/testbench.cpp | 5 +- source/test/intrapredharness.cpp
+ | 122 ++++++++++++++++++++++++++++++++++++++
+ source/test/intrapredharness.h | 53 ++++++++++++++++ 3 files
+ changed, 179 insertions(+), 1 deletions(-) create mode 100644
+ source/test/intrapredharness.cpp create mode 100644
+ source/test/intrapredharness.h
+ [50d74bce7e74]
+
+2013-05-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/intrapred.inc:
+ intrapred: fix one obvious bug, disable DC vec prim for 8bpp until
+ debugged
+ [1276967fdbcc]
+
+ * source/encoder/IntraPred.cpp:
+ IntraPred: yes, pixel is an alias for Pel and vice-versa
+ [4ee48f5e5c8d]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: add IntraPred.cpp to CPRIMITIVES file list
+ [6da50ba09221]
+
+2013-05-03 Min Chen <chenm003@163.com>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/VectorClass/vectori128.h, source/encoder/IntraPred.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/encoder/vec/intrapred.inc,
+ source/encoder/vec/vecprimitives.inc:
+ intrapred: vector code
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 8 ++-
+ source/VectorClass/vectori128.h | 9 ++ source/encoder/IntraPred.cpp
+ | 83 ++++++++++++++++ source/encoder/primitives.cpp | 2 +
+ source/encoder/primitives.h | 3 + source/encoder/vec/intrapred.inc |
+ 156 ++++++++++++++++++++++++++++++
+ source/encoder/vec/vecprimitives.inc | 3 + 7 files changed, 263
+ insertions(+), 1 deletions(-) create mode 100644
+ source/encoder/IntraPred.cpp create mode 100644
+ source/encoder/vec/intrapred.inc
+ [8ba7ba4f1b69]
+
+ * source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ replace piAdiBuf type from Int to Pel
+ --- source/Lib/TLibCommon/TComPattern.cpp | 28
+ ++++++++++++++-------------- source/Lib/TLibCommon/TComPattern.h |
+ 14 +++++++------- source/Lib/TLibCommon/TComPrediction.cpp | 22
+ +++++++++++----------- source/Lib/TLibCommon/TComPrediction.h | 6
+ +++--- source/Lib/TLibEncoder/TEncSearch.cpp | 6 +++--- 5 files
+ changed, 38 insertions(+), 38 deletions(-)
+ [a787dfc1a781]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Intra dc prediction own function Conflicts:
+
+ source/Lib/TLibCommon/TComPrediction.cpp
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 61
+ +++++++++++++++++------------- 1 files changed, 35 insertions(+), 26
+ deletions(-)
+ [2a4abd157919]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ extract Intra prediction functions from class to normal
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 10 ++++++----
+ source/Lib/TLibCommon/TComPrediction.h | 5 ----- 2 files changed, 6
+ insertions(+), 9 deletions(-)
+ [b947edf8099b]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ OPT predIntraLumaAng: merge function call
+ --- source/Lib/TLibCommon/TComPrediction.cpp | 16 +++++----------- 1
+ files changed, 5 insertions(+), 11 deletions(-)
+ [39e2bb372e4c]
+
+2013-05-03 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: cut down on iterations for measuring x3 and x4 perf
+ [ba8113125178]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: fixup commit for GCC and later Windows versions
+ [c8479b70bcdb]
+
+2013-05-03 Min Chen <chenm003@163.com>
+
+ * source/encoder/threadpool.cpp:
+ Fix WinXP compatible
+ --- source/encoder/threadpool.cpp | 23 +++++++++++++++++++++-- 1
+ files changed, 21 insertions(+), 2 deletions(-)
+ [069ddee0aceb]
+
+2013-05-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/motion.cpp,
+ source/test/testbench.cpp:
+ motion: make new motion search disappear without ENABLE_PRIMITIVES
+ [96457db97f8e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: don't use neighbor MVs as search candidates, merge will
+ check them
+
+ I'm leaving the search candidate arguments in place, later we might
+ get some search candidates that are not also merge candidates
+ (lookahead, for one)
+ [078a4dfddbcd]
+
+2013-05-02 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: found some predictor MVs
+ [3e656c4c7905]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/encoder/mv.h:
+ motion: partial integration into TEncSearch for debugging purposes
+
+ Adds a small amount of overhead
+ [0842edc65dea]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: disable satd function completely for 8bpp
+ [b49e50e70bb2]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: add TODOs where new performance primitives can be added
+ [ba309a167e38]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ TComPicYuv: white-space nits, no effect
+ [387f505139c6]
+
+ * source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ TComPic: remove unused m_bNeededForOutput
+ [0279f22166ba]
+
+ * source/encoder/motion.cpp:
+ motion: use block copy primitive
+ [a116b67a5a01]
+
+ * source/CMakeLists.txt:
+ cmake: the big switch. Make 8bpp the default build configuration
+ [6c9154cdab6f]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: and another cast
+ [af04f537b82e]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: add back explicit typecasts
+ [80b6aba5b4e4]
+
+2013-05-03 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/bitcost.cpp:
+ bitcost: Use portable std::min() instead of implicit min().
+ [49605906cd31]
+
+2013-05-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/bitcost.cpp:
+ bitcost: document more differences between the HM and x264
+ approaches
+ [dc6634bdf401]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: use integer min() for MSVC compatibility
+ [abe3030915d6]
+
+2013-05-03 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/bitcost.cpp:
+ bitcost: Fix segfault due to out of bound accesses to logs table.
+ [7b18a1bab2fa]
+
+ * source/input/y4m.cpp:
+ y4m: Fix -ve PSNR when encoding a y4m file.
+
+ Sample output:
+
+ POC 0 TId: 0 ( I-SLICE, nQP 32 QP 32 ) 23444072 bits [Y -40.5587 dB
+ U -40.8645 dB V -40.8654 dB] [ET 21 ] [L0 ] [L1 ]
+ [13cd19348761]
+
+2013-05-02 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/motion.cpp:
+ motion: Fix a compile error due to undeclared memcpy().
+ [85d91dfdccc6]
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: Fix compile warnings/errors due to shadowed variables.
+ [9e6d97767358]
+
+ * source/CMakeLists.txt, source/encoder/bitcost.cpp:
+ bitcost: Fix undeclared min().
+
+ The math.h header defines fmin(), and algorithm header defines
+ std::min(). We decided to use fmin().
+ [ebfbc677b238]
+
+2013-05-02 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #111)
+
+ Fix compile issue in TComPrediction.cpp with disable primitives.
+ [4ec6cd5d2732]
+
+2013-05-02 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Fix compile issue in TComPrediction.cpp with disable primitives.
+ [a4f56554606d]
+
+2013-05-02 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc:
+ Implementation of sad_x4 stage 2 and sad_x3
+ [c8d6caa73c42]
+
+2013-05-02 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [700a3436aa9f]
+
+ * source/encoder/InterpolationFilter.cpp:
+ Merged multicoreware/xhevc into default
+ [1ded90aad015]
+
+2013-05-02 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/vec/pixel.inc, source/encoder/vec/pixel8.inc:
+ Implementation for sad_x4 - 8,16,32,64 with HIGH_BT_WIDTH disabled.
+ [3dd9ebabfdcb]
+
+2013-05-02 Deepthi <Deepthi>
+
+ * source/encoder/primitives.cpp:
+ Compilation fix for primitives disabled
+ [4f863ec8e9d8]
+
+2013-05-02 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/CMakeLists.txt:
+ Merge
+ [0ad59133e0b6]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/CMakeLists.txt,
+ source/encoder/InterpolationFilter.cpp,
+ source/encoder/InterpolationFilter.h:
+ cleaning up TComPrediction.cpp with new filters
+ [7827c5d4f308]
+
+ * source/encoder/CMakeLists.txt,
+ source/encoder/InterpolationFilter.cpp, source/encoder/ipfilter.cpp:
+ Rename .cpp file with filter-primitives
+ [bd3f6bf45ab7]
+
+ * source/encoder/InterpolationFilter.cpp,
+ source/encoder/interpolationfilter.cpp:
+ Backed out changeset: 2e29f87a6088
+ [2efde965e0ee]
+
+ * source/encoder/CMakeLists.txt:
+ Backed out changeset: dd6580ef216e
+ [6df4928a88a8]
+
+ * source/encoder/CMakeLists.txt:
+ Renaming interpolationfilter.cpp in CMakeList
+ [dd6580ef216e]
+
+ * source/encoder/InterpolationFilter.cpp,
+ source/encoder/interpolationfilter.cpp:
+ Rename .cpp file containing filter-primitives
+ [2e29f87a6088]
+
+2013-05-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt, source/encoder/motion.cpp,
+ source/encoder/motion.h:
+ motion: motion search now compiles, added to build but unused
+ [56dfb55dad17]
+
+ * Merged in praveentiwari/xhevc_praveent (pull request #108)
+
+ 2.20x more performance gain for partialButterflyInverse16
+ [7b4811d9db39]
+
+2013-05-02 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ 2.20x more performance gain for partialButterflyInverse16
+ [eba40e7f48dc]
+
+2013-05-02 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/encoder/vec/interpolationfilter.inc,
+ source/encoder/vec/pixel16.inc, source/test/pixelharness.cpp:
+ Implementation of sad_x3 and sad_x4 with reference frame stride.
+ [249bdb052e0a]
+
+2013-05-02 Steve Borho <steve@borho.org>
+
+ * source/encoder/motion.cpp, source/encoder/motion.h:
+ motion: compilation fixes - file still not part of build
+ [3dd5ac35ea76]
+
+2013-05-01 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/pixel8.inc:
+ pixel8: remove unused satd_4x4 and sa8d_8x8
+ [d8bc48ebe95c]
+
+2013-05-02 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/vec/CMakeLists.txt,
+ source/encoder/vec/interpolationfilter.inc,
+ source/encoder/vec/pixel.inc, source/encoder/vec/pixel16.inc,
+ source/encoder/vec/pixel8.inc, source/encoder/vec/vecprimitives.inc:
+ Restructure pixel.inc
+ [78d93b165924]
+
+2013-05-01 Steve Borho <steve@borho.org>
+
+ * source/test/pixelharness.cpp:
+ pixelharness: increase size of pixel buffers
+ [d30a346a00d0]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: test random PU block sizes
+ [a16589611ae6]
+
+ * source/encoder/vec/blockcopy.inc, source/test/pixelharness.cpp:
+ blockcopy: couple of bug fixes, now all but p_s pass with 8bpp
+ [26bcd02b0ffc]
+
+ * source/encoder/vec/blockcopy.inc, source/encoder/vec/pixel.inc:
+ pixel: fix HIGH_BIT_DEPTH=0 build, temp fix
+ [e3f72af44dff]
+
+ * source/encoder/vec/CMakeLists.txt, source/encoder/vec/blockcopy.inc,
+ source/encoder/vec/vecprimitives.inc:
+ primitives: add blockcopy.inc - only HIGH_BIT_DEPTH is accelerated
+ [a2cb9e405fbe]
+
+ * source/encoder/pixel.cpp:
+ pixel: fixes for block copy C ref
+ [122dcad10a6f]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: add block copy perf tests
+ [3842dc74d0e3]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h:
+ primitive: add block copy primitives
+ [7f115c88c899]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: nit white-space
+ [de5953b7be6e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/bitcost.cpp:
+ bitcost: store logs as fractional values *CHANGES OUTPUTS*
+
+ /me dumb. What was the point of storing the output of ceil() in a
+ float?
+
+ This was a small but unambiguous win in compression efficiency
+ [ca0cd4e5b78c]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: use just one copy of "acquire" logic
+ [94d5a08f85bd]
+
+ * source/encoder/bitcost.h:
+ bitcost: nit - reorder methods in order they are typically used
+ [fd114658c2d0]
+
+ * source/encoder/bitcost.cpp, source/encoder/bitcost.h:
+ bitcost: store cost estimates as 16bits, clamp to max16
+
+ It's somewhat pedantic to keep more bits than this, and wasteful of
+ precious CPU cache. If someone in the future really wants >16bit mv
+ costs, they can template this class and instantiate the size they
+ want. This had no measurable effect on the outputs.
+ [1522b5f696e4]
+
+ * source/encoder/bitcost.h:
+ bitcost: reorder initializers to make GCC happy
+ [75f7df4a2567]
+
+2013-04-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/primitives.h:
+ primitives: avoid redecl of CDECL with GCC
+ [e3e7d5fc0930]
+
+2013-05-01 Steve Borho <steve@borho.org>
+
+ * source/encoder/primitives.h:
+ Merged in mandarmcw/xhevc_mandar_mahesh (pull request #105)
+
+ Implementation of sad_4_x3 and sad_12_x3. and sad_x4
+ [6f85a46676d5]
+
+2013-05-01 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/encoder/vec/pixel.inc, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ Implementation of sad_x4
+ [b8dac1cab20f]
+
+ * source/encoder/vec/pixel.inc, source/test/pixelharness.cpp:
+ Implementation of sad_4_x3 and sad_12_x3.
+ [e1c2cc61fd99]
+
+2013-05-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/bitcost.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h:
+ bitcost: use new bitcost class for mv cost estimates *CHANGES
+ OUTPUTS*
+
+ Sample encode statistics comparing HM vs x265 mv cost estimates:
+ (comparing HM vs our HM optimization, not the x264 approach)
+
+ kbps Y PSNR U PSNR V PSNR HM getCost(): 1381.8880 32.8096 41.0167
+ 43.3698 m_bc.mvcost(): 1383.2000 32.8171 41.0402 43.3580
+
+ (mostly noise, but it is different)
+ [8fbf3bf1bce5]
+
+ * source/encoder/bitcost.cpp, source/encoder/bitcost.h,
+ source/encoder/primitives.cpp:
+ bitcost: rename cleanupCosts to destroy
+ [e0e5b913b3ea]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: bring mv costs close in line with HM's methods
+
+ mvcost rounds earlier, so it results in even scores while the HM
+ rounds at the end so it usually gets odd scores, but they are
+ typically one digit apart. In a few places logs[] will vary from
+ Motion_Costs by 1, causing the result to differ by 1 lambda.
+ [af142516c4ff]
+
+2013-05-01 Deepthi <Deepthi>
+
+ * Merge
+ [55bb44dbbcab]
+
+ * source/x265enc.cpp:
+ The very common sizeof bug.
+ [961680a9f94e]
+
+2013-05-01 Steve Borho <steve@borho.org>
+
+ * source/encoder/primitives.cpp:
+ primitives: free Motion_Cost in x265_cleanup()
+ [c424425a66f2]
+
+2013-04-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/bitcost.cpp, source/encoder/bitcost.h:
+ bitcost: precalculate 2 * log2(n) for each MVD offset
+ [42f145aaeea0]
+
+ * source/encoder/mv.h:
+ mv: bug fixes; cannot use word shifts because x or y can be signed
+ [425867841725]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: HM uses different sqrt(lambda) to calculate SAD bitcosts
+ [28a3ad887c33]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: comment improvements and white-space nits
+ [fe0009c03145]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h:
+ bitcost: bug fixes and enable integration into TEncSearch.cpp
+ [c18cfa4d13a6]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/primitives.h:
+ bitcost: begin integration into TEncSearch
+ [81b815f0ac28]
+
+ * source/encoder/bitcost.cpp, source/x265.h:
+ x265: comment nits
+ [1ca12b92b67f]
+
+ * source/encoder/bitcost.cpp:
+ bitcost: fix bug caused by bad eye-sight and worse fonts
+ [2208db9f4e49]
+
+ * source/encoder/primitives.cpp, source/x265.h, source/x265main.cpp:
+ api: add x265_cleanup() method, to make leak detectors happy
+ [3bbdb7451176]
+
+ * source/encoder/CMakeLists.txt, source/encoder/bitcost.cpp,
+ source/encoder/bitcost.h, source/encoder/motion.h:
+ bitcost: add BitCost to x265 project build
+ [1fb55290fb14]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/encoder/mv.h:
+ mv: remove getAbsHor|Ver access methods
+ [99ed9f571a1c]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp, source/encoder/mv.h:
+ mv: move scaleMV method to file static in TComDataCU.cpp
+
+ This was the only file to use it, and it requires CommonDef.h so it
+ was cleaner to move it there than to #include CommonDef in our new
+ code.
+ [22f8092af4c0]
+
+ * source/encoder/bitcost.h, source/encoder/motion.cpp,
+ source/encoder/motion.h, source/encoder/mv.h:
+ motion: simplify block offset calculations and MV API
+ [d45e0bf08279]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ backout micro optimization in TComTrQuant
+
+ uiQ is much larger than a pixel value, so doing calculation as Int64
+ is correct This change was resulting in an infinite for-loop in
+ debug runs
+ [2803c3221494]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.cpp, source/encoder/mv.h:
+ mv: replace setZero() calls with assignments to 0 (implicit cast)
+ [8bf5cfa3dc58]
+
+ * source/encoder/mv.h:
+ mv: fix shadow compile warnings
+ [26f80f4c0e63]
+
+ * source/encoder/vec/macroblock.inc:
+ Merged in mandarmcw/xhevc_mandar_mahesh (pull request #103)
+
+ Implementation of sad_16_x3, sad_32_x3 stage 1
+ [dcc9d54d3338]
+
+2013-04-30 Mandar Gurav <Mandar Gurav>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/encoder/vec/macroblock.inc:
+ Revert to xhevc code...
+ [d78e74091ac4]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/encoder/vec/macroblock.inc:
+ Merge
+ [c3c08427ee92]
+
+ * source/encoder/vec/pixel.inc:
+ Implementation of sad_16_x3, sad_32_x3 stage 2
+ [4e9455062807]
+
+2013-04-30 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [181bdddec8a7]
+
+2013-04-30 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/vec/pixel.inc:
+ Implementation of sad_16_x3, sad_32_x3 stage 1
+ [d0e56fa89954]
+
+2013-04-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: white-space nits
+ [c3dc302391b9]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComMv.h, source/encoder/CMakeLists.txt:
+ mv: substitute our x265::MV class for TComMv
+ [7f84c91c706f]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ TComTrQuant: white-space nits
+ [2efe97558d45]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ TEncSearch: eoln fixes
+ [706caf90a11f]
+
+ * source/encoder/mv.h:
+ mv: compilation fixes
+ [10022975148e]
+
+ * source/encoder/motion.cpp:
+ motion: call x264_cpu_emms() at end of motion search
+ [ab58c2ee829a]
+
+ * Merge
+ [da161f8dda40]
+
+2013-04-30 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ Signed/unsigned comparison mismatch
+ [19e430b976bd]
+
+2013-04-30 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/encoder/InterpolationFilter.cpp,
+ source/encoder/InterpolationFilter.h, source/encoder/primitives.h:
+ Filter in TComPrediction.cpp 0 - compiles with highBitDepth = 0/ 1
+ [ee367956acdc]
+
+2013-04-30 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Robust logic for clip3 function and multiplication replaced with
+ shift
+ [b9a706e1c328]
+
+ * source/encoder/vec/macroblock.inc:
+ .62X more performance gain for partialButterflyInverse8
+ [fa15bd1d94d1]
+
+2013-04-30 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [d4c8a6822d48]
+
+ * Merged multicoreware/xhevc into default
+ [0595c6492fc9]
+
+2013-04-29 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [e1633a0b4388]
+
+2013-04-26 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [2e307dbf8bc3]
+
+2013-04-25 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [8079c95648f2]
+
+ * Merged multicoreware/xhevc into default
+ [df407ba015a9]
+
+2013-04-24 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [d084fa7c1507]
+
+2013-04-30 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Adding support for Short-Short/Pel-Short SSE calculations.
+ [963b0a22e185]
+
+ * Merge
+ [df3e251c1550]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ Merge
+ [43db01e2d0f1]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h:
+ Restructuring TComRdCost to allow for Pel,Short combinations of SSE
+ calc.
+ [6929ad484805]
+
+2013-04-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/pixel.inc:
+ pixel: disable sad_x3 functions for HIGH_BIT_DEPTH=0
+ [7d724b6d631d]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ primitives: nit cleanups
+ [4fabe59015fb]
+
+ * source/encoder/primitives.h:
+ Merged in ggopu/ggopu_xhevc (pull request #101)
+
+ Removed GetCost() Function
+ [5923e7ea9058]
+
+2013-04-29 ggopu <ggopu>
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h:
+ Removed GetCost() Function
+ [d59ff5bf67d9]
+
+2013-04-30 Steve Borho <steve@borho.org>
+
+ * Merged in sumalatha/xhevc_sumalatha (pull request #99)
+
+ C Level Optimization on xRateDistOptQuant()
+ [9920f881602d]
+
+2013-04-30 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ C Level Optimization on xRateDistOptQuant() - 1. removed all memsets
+ ( except for pdCostCoeffGroupSig[]) - initialized only those array
+ elements that will be read first before its updated from the inside
+ the main for loop itself. 2. optimized a few of local variables used
+ in certain calculations inside the loop.
+
+ Also done changes based on steves suggestion
+ [8bb8a28015b6]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp:
+ Backed out changeset: eb3d76f250f8
+ [93f865e11524]
+
+2013-04-30 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp:
+ Merged multicoreware/xhevc into default
+ [5d85009c6e6b]
+
+2013-04-29 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp:
+ C Level Optimization on xRateDistOptQuant() - 1. removed all memsets
+ ( except for pdCostCoeffGroupSig[]) - initialized only those array
+ elements that will be read first before its updated from the inside
+ the main for loop itself. 2. optimized a few of local variables used
+ in certain calculations inside the loop.
+ [eb3d76f250f8]
+
+2013-04-30 Steve Borho <steve@borho.org>
+
+ * Merged in mandarmcw/xhevc_mandar_mahesh (pull request #100)
+
+ Incoprporated Steve's comments - stage 2.
+ [a68d3284d72a]
+
+2013-04-30 Mandar Gurav <Mandar Gurav>
+
+ * source/test/pixelharness.cpp, source/test/pixelharness.h:
+ Incoprporated Steve's comments - stage 2.
+ [45002b3f2b97]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/encoder/vec/pixel.inc, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ Incoprporated Steve's comments.
+ [c44e18dd256b]
+
+2013-04-30 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * source/VectorClass/vectori128.h:
+ Merged multicoreware/xhevc into default
+ [d5e09736dcb5]
+
+2013-04-29 Mandar Gurav <Mandar Gurav>
+
+ * source/VectorClass/vectori128.h, source/encoder/pixel.cpp,
+ source/encoder/vec/pixel.inc:
+ Revert old updates.
+ [3c1645af294a]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/encoder/vec/pixel.inc, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ Implemented sad_x3 for calculation of 3 SAD's in single call.
+ [e79693d592d3]
+
+2013-04-28 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * source/VectorClass/vectori128.h, source/encoder/pixel.cpp,
+ source/encoder/primitives.h, source/encoder/vec/pixel.inc,
+ source/test/pixelharness.cpp:
+ Merged multicoreware/xhevc into default
+ [5692f4fd8ad5]
+
+2013-04-29 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/vec/pixel.inc, source/test/pixelharness.cpp:
+ Revert to new xhevc code.
+ [21650019be5e]
+
+2013-04-23 Mandar Gurav <Mandar Gurav>
+
+ * source/VectorClass/vectori128.h:
+ Vector class library function
+ [f4465f31f99c]
+
+ * source/encoder/vec/pixel.inc:
+ Implemented x265_sad16 function into vectorclass librasy.
+ [aed28167b644]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/encoder/vec/pixel.inc, source/test/pixelharness.cpp,
+ source/test/pixelharness.h:
+ Implementation of SAD using intrinsics for 8 bit values.
+ [6af56ea1b74c]
+
+2013-04-30 Steve Borho <steve@borho.org>
+
+ * source/encoder/bitcost.cpp, source/encoder/bitcost.h,
+ source/encoder/motion.cpp, source/encoder/motion.h,
+ source/encoder/mv.h:
+ add a new motion search core feature - is not part of the project
+ yet
+
+ The MV, BitCost, MotionReference, and MotionEstimation classes will
+ form the core of the x265 motion estimation system; eventually
+ replacing TEncSearch, TComMV, and most of TComRdCost.
+ [6937acae97d5]
+
+2013-04-29 Steve Borho <steve@borho.org>
+
+ * source/VectorClass/instrset_detect.cpp:
+ instrset_detect: workaround on Mac OS X
+ [3b6663bd7fb9]
+
+ * source/VectorClass/vectori128.h, source/encoder/vec/CMakeLists.txt:
+ cmake: isolate warnings disables within vectori128.h with two
+ exceptions
+ [c9ef5adc6f2b]
+
+ * source/test/testbench.cpp:
+ testbench: mingw_aligned_malloc requires malloc.h
+ [8e58b5fc3759]
+
+ * source/test/CMakeLists.txt, source/test/filterharness.cpp,
+ source/test/ipfilterharness.cpp, source/test/testbench.cpp:
+ testbench: remove compiler warning training wheels
+ [377da7143671]
+
+ * source/CMakeLists.txt:
+ cmake: add a comment about why we ignore warnings in the CLI files
+ [1ec1c161fb9e]
+
+ * source/Lib/TLibEncoder/TEncGOP.cpp:
+ TEncGOP: provide bool values for Bool arguments
+ [0cfc86971117]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ TEncCfg: fix compiler warning
+ [9e9458725136]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ TComSlice: use Bools where appropriate
+ [20b2e53cd947]
+
+ * source/Lib/TLibCommon/TComPicSym.h:
+ TComPicSym: fix signed/unsigned mangling in the header
+ [2dd01031906c]
+
+ * source/Lib/TAppCommon/program_options_lite.h:
+ TAppCommon: give classes noimpl copy constructors, makes MSVC happy
+ [18e014cab1d4]
+
+ * source/CMakeLists.txt:
+ cmake: move tests above CLI, avoid pulling in disabled warnings
+ [4fd9c4ed8a0a]
+
+ * source/CMakeLists.txt:
+ cmake: add /wd4800 and /wd4018 to x265main.cpp and x265cfg.cpp
+ [8ec187f802f3]
+
+ * source/Lib/CMakeLists.txt:
+ cmake: add back /wd4018 and /wd4800 to HM source files
+
+ It would be a gargantuan effort to clean all these up at this point.
+ Instead we will just make all the new code compile clean and these
+ old files will eventually be replaced
+ [7b1566c818a6]
+
+ * source/Lib/TLibCommon/CommonDef.h:
+ Remove warnings disables from CommonDef.h, will add back with more
+ focus
+
+ These were leaking into the encoder/ folder where we want our new
+ code to be warning free.
+ [a949c6f35a76]
+
+2013-04-29 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/TShortYUV.cpp:
+ shortyuv: Fix compile warnings/errors due to comparing signed and
+ unsigned integers.
+
+ GCC 4.8.0 Linux64:
+
+ source/encoder/TShortYUV.cpp:424:32: error: comparison between
+ signed and unsigned integer expressions [-Werror=sign-compare]
+ for(int x = 0; x < iWidth; x++)
+ [03df6f73f616]
+
+2013-04-29 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Quick Fix for compilation errors in TEncSearch::xEstimateResidualQT.
+ This has to be re-architected asap.
+ [5305e9dd0f98]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/encoder/TShortYUV.h:
+ Merge
+ [f298a0cc803f]
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h:
+ One more function for TComYuv
+ [27e841216893]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Changing the datatype of m_pcQTTempTComYuv. Need to review this at
+ some point - why does it hold both recon and residual data?
+ [8e100ef76380]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ Changes in TComYuv class
+ [9625d6b6bfc0]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h:
+ Pel to Short changes in TComTrQuant
+ [2161442f663e]
+
+ * source/encoder/TShortYUV.cpp, source/encoder/TShortYUV.h:
+ Adding more functions to TShortYUV for TComyuv compatilibity. We can
+ use inheritance later for better maintenance and code reuse.
+ [03ed7310e127]
+
+2013-04-28 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h, source/encoder/TShortYUV.cpp,
+ source/encoder/TShortYUV.h:
+ Adding a bunch of function definition/declarations to TShortYUV and
+ TComYUV classes. Compilation successful.
+ [dc004e397c4d]
+
+2013-04-27 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ Replacing all function declarations/definitions with TShortYUV.
+ [d17b57e25292]
+
+2013-04-29 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/test/testharness.h:
+ test: Fix compile error due to undefined size_t.
+ [a3f27ae55e67]
+
+ * source/Lib/TLibCommon/CommonDef.h:
+ HM/Common: Fix the undefined aligned memory allocation function.
+ [15c7da6ad105]
+
+2013-04-28 Steve Borho <steve@borho.org>
+
+ * source/test/mbdstharness.cpp, source/test/pixelharness.cpp,
+ source/test/testbench.cpp, source/test/testharness.h:
+ testbench: add aligned alloc and free helper functions
+ [a37bc125a568]
+
+ * source/CMakeLists.txt, source/test/CMakeLists.txt:
+ cmake: define PLATFORM_LIBS in main cmake file, use for x265-cli
+ [bd817f383232]
+
+ * source/Lib/TLibCommon/CommonDef.h:
+ aligned_malloc() needs stdlib.h
+ [589ba1b50405]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: use _BitScanReverse64() instead of __lzcnt64()
+
+ All variants of __lzcnt() fail to work correctly on Intel CPUs, with
+ no warnings.
+ [04fa32c7226a]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ remove FIX203 #define, it will always be 1
+ [6d3f0c68430c]
+
+2013-04-27 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ rename GetsadFunctions to getSadFunctions()
+ [7e2616997871]
+
+ * source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/encoder/primitives.cpp,
+ source/encoder/threadpool.cpp, source/x265.h, source/x265cfg.cpp,
+ source/x265cfg.h:
+ api: improvements to C API, make encoder auto-setup primitives and
+ threadpool
+
+ Remove m_FrameSkip and m_framesToBeEncoded from the public params
+ [a75806cbe14b]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ nits, no logic changes
+ [0f02c76c63d1]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ white-space nits
+ [0b87935166f5]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp, source/PPA/ppa.h,
+ source/PPA/ppaCPUEvents.h:
+ ppa: add some high-level events
+ [f8031314c27d]
+
+ * source/x265.h, source/x265cfg.cpp, source/x265cfg.h:
+ x265: for public API, only internal bitdepth is configurable
+
+ And when HIGH_BIT_DEPTH is 0, the value is ignored. This change
+ allows the input and output bit depth fields to be configurable for
+ !HIGH_BIT_DEPTH builds, but are only allowed to be 8.
+
+ When x265 is used as a library, the input and output bitdepths are
+ completely up to the user. libx265 does not have to know what they
+ are.
+ [e9afe7587e44]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: add x265.h to libx265 project
+ [1a076f248de6]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ white-space nit
+ [e866124b9b3f]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost: micro optimizations, more for clarity than anything else
+ [2df4c0434338]
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/TypeDef.h:
+ cmake: define HIGH_BIT_DEPTH to 0 for 8bpp
+ [02382ad0344d]
+
+ * source/encoder/TShortYUV.h:
+ tshortyuv: white-space nits
+ [06a3ab224b5a]
+
+ * source/encoder/TShortYUV.h:
+ tshortyuv: forward slashes for includes
+ [a25e6ee7923e]
+
+2013-04-27 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Chroma fixes for Pixel=UShort; Bitrate issues sorted out, bit
+ mismatch issues with Pixel=Short
+ [2ccf934a7a83]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [d5bf22fdf56d]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ 3 cheers!! Pixel now works with UShort (at a much higher bitrate).
+ [05ddb2c288c6]
+
+2013-04-26 Deepthi <Deepthi>
+
+ * source/encoder/TShortYUV.h:
+ Adding more member functions to TShortYUV
+ [78cd7e5ab0a1]
+
+2013-04-26 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ shift SAD result from TComRdCost::getSADPart() rather than each diff
+ [03433b6ee01b]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ remove partition size check from TComRdCost::getSADPart()
+ [194f459ded86]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ remove unused Pxl type
+ [4915dcd016d8]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ clean up white-space alignment in TypeDef.h
+ [52d5df36432e]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.cpp,
+ source/Lib/TLibEncoder/TEncSlice.cpp:
+ remove L0033_RC_BUGFIX #define, it will always be 1
+ [8485a6a1c12d]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h, source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove RATE_CONTROL_LAMBDA_DOMAIN #define, it will always be 1
+ [88101df1faee]
+
+ * source/test/mbdstharness.cpp:
+ white-space nit
+ [941581484868]
+
+ * source/encoder/x86/CMakeLists.txt:
+ cmake: tell gcc not to sqawk about empty ASM setup function
+ [659cbd8026b8]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp:
+ improve portability of alignment macros
+ [12708950babd]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TypeDef.h:
+ remove MATRIX_MULT #define, it will always be 0
+ [b7e14c53edda]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove ADAPTIVE_QP_SELECTION #define, it will always be 1
+ [c33334661f82]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h:
+ remove SAO_ENCODING_CHOICE #define, it will always be 1
+ [1b2d55dd7b4f]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove L0232_RD_PENALTY #define, it will always be 1
+ [9dcea9d2b459]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ remove L0372 #define, it will always be 1
+ [4fa6f3a09dc7]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/x265cfg.cpp:
+ remove L0444_FPA_TYPE #define, it will always be 1
+ [c86464d72455]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ remove L0255_MOVE_PPS_FLAGS #define, it will always be 1
+ [c198a462c1c8]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ remove L0363_BYTE_ALIGN #define, it will always be 1
+ [64d5e486b138]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp:
+ fix eoln damage in TComDataCU.cpp
+ [13b5ff7b9bb6]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TypeDef.h:
+ remove L0363_MVP_POC #define, it will always be 1
+ [b354aa200feb]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove L0046_CONSTRAINT_FLAGS #define, it will always be 1
+ [a06f0d0bec2b]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ remove L0043_MSS_IDC, L0116_ENTRY_POINT #defines, they will always
+ be 1
+ [5b78e69a6347]
+
+ * source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp:
+ remove L0045_CONDITION_SIGNALLING #define, it will always be 1
+ [3adb926ba0a7]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp:
+ remove L0046_RENAME_PROG_SRC_IDC #define, it will always be 1
+ [0b26e3187fdb]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp:
+ remove L0043_TIMING_INFO #define, it will always be 1
+ [5e92e75e0bb6]
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ typo nits
+ [bb19a6cf86dd]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ remove L0047_APS_FLAGS #define, it will always be 1
+ [f55166a0ca8b]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ remove L0044_CPB_DPB_DELAY_OFFSET #define, it will always be 1
+ [472b0e4bc12d]
+
+ * source/Lib/TLibCommon/NAL.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h:
+ remove L0045_NON_NESTED_SEI_RESTRICTIONS #define, it will always be
+ 1
+ [f716604c56ab]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ remove L0045_PERSISTENCE_FLAGS #define, it will always be 1
+ [397acf975a04]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ remove L0044_DU_DPB_OUTPUT_DELAY_HRD #define, it will always be 1
+ [8d3ed21fb716]
+
+ * source/Lib/TLibCommon/SEI.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ remove L0328_SPLICING #define, it will always be 1
+ [355807b023d6]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ remove L0363_DU_BIT_RATE #define, it will always be 1
+ [426f0abeaed4]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ remove FIX1071 #define, this temporary fix has been there for 1.5
+ years
+ [b43f11555c88]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove L0386_DB_METRIC #define, it will always be 1
+ [9eb517f53928]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp, source/x265cfg.cpp:
+ remove L0323_DPB #define, it will always be 1
+ [5e53a1acd0de]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncTop.cpp, source/x265cfg.cpp,
+ source/x265enc.cpp:
+ remove L0034_COMBINED_LIST_CLEANUP #define, it will always be 1
+ [c44835756f8c]
+
+ * source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h:
+ remove FAST_BIT_EST #define, it will always be 1, improve
+ readability
+ [7d1e89b0e90a]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ remove NS_HAD #define, it will always be 0, improve readability
+ [b455c6b5b150]
+
+ * source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ remove ZERO_MVD_EST #define, it will always be 0, improve
+ readability
+ [7c96e41f3155]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ uncrustify: cleanup TEncSearch.cpp after AMP_MRG define removal
+ [f93d8ade008f]
+
+ * source/Lib/TLibCommon/TComDataCU.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h:
+ remove AMP_MRG #define, it will always be 1, improve readability
+ [900e0173b6fe]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h:
+ remove AMP_ENC_SPEEDUP #define, it will always be 1, improve
+ readability
+ [423fefc35e88]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h, source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ remove AMP_SAD #define, it will always be 1, improve readability
+ [0efc8467e6cd]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: disable assembly; was causing stack corruption in debug runs
+
+ The SATD functions are getting called from random places that do not
+ enforce input buffer alignment. These need to be fixed before ASM
+ can be re-enabled.
+ [962848c1c6ff]
+
+ * source/test/CMakeLists.txt:
+ cmake: add primitive defines to test folder
+ [0bc70419ada8]
+
+2013-04-27 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/TShortYUV.cpp:
+ shortyuv: Fix the '\' in an #include.
+
+ Use '/' instead for compatibility with Windows and Linux.
+ [c325ba0eb7b3]
+
+2013-04-26 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h:
+ primitive: remove FastHeight(), use same logic with/without
+ ENABLE_PRIMITIVES
+
+ * Allow iSubShift if iRows is greater than 12, since half-height
+ blocks will be supported.
+ * Unconditionally use the partition returned from PartitionFromSizes()
+ [aa94262bd0b9]
+
+2013-04-26 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #94)
+
+ Modified FIlter vec primitives
+ [c531582449c4]
+
+2013-04-26 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/interpolationfilter.inc:
+ Modified Filter vec primitives
+ [b0115edcc276]
+
+ * source/test/ipfilterharness.cpp:
+ Fix errors in IPfilterharness
+ [c32c36a3ac29]
+
+2013-04-26 Deepthi <Deepthi>
+
+ * source/encoder/CMakeLists.txt:
+ Merge
+ [0e30f0ceb6c3]
+
+ * source/encoder/TShortYUV.cpp, source/encoder/TShortYUV.h:
+ Formatting the TShortYUV class.
+ [a178a6e93c00]
+
+ * source/Lib/TLibCommon/TComPrediction.h,
+ source/encoder/CMakeLists.txt, source/encoder/TShortYUV.cpp,
+ source/encoder/TShortYUV.h:
+ Introducing TShortYUV formally
+ [80ff753040be]
+
+2013-04-26 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/interpolationfilter.inc,
+ source/test/ipfilterharness.cpp:
+ FilterConvert - vec primitives
+ [dbf2e884f457]
+
+ * source/encoder/InterpolationFilter.cpp,
+ source/encoder/vec/interpolationfilter.inc:
+ Vectorized FilterHorizontal-pel-pel and pel_short
+ [5ec9ce76685c]
+
+ * Merge
+ [2af6e7c7b715]
+
+ * source/test/ipfilterharness.cpp:
+ Changes to ipfilterharness.cpp
+ [6accfad1e082]
+
+2013-04-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/CMakeLists.txt,
+ source/encoder/vec/interpolationfilter.inc,
+ source/encoder/vec/vecprimitives.inc,
+ source/test/ipfilterharness.cpp:
+ Vectorized version of filterVertical_short_Pel
+ [4faf8dcd1180]
+
+2013-04-26 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [f34557bd0c1b]
+
+2013-04-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/InterpolationFilter.cpp:
+ Typecast result val to pel.
+ [8cc213785f0f]
+
+2013-04-25 Steve Borho <steve@borho.org>
+
+ * source/x265cfg.cpp:
+ x265: output string nit
+ [062b636765af]
+
+ * source/x265.h, source/x265cfg.cpp, source/x265cfg.h,
+ source/x265enc.cpp:
+ x265: move encoder configurable fields into a C friendly header
+ [ad159c607977]
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: make vector and asm build flags local to encoder/ folder
+
+ Toggling the ASM or vector primitives should not require the HM
+ library to be rebuilt.
+ [e942246d64aa]
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: move VectorClass include path within encoder/ folder
+ [dc3899c4f7a7]
+
+ * source/CMakeLists.txt:
+ cmake: remove getopt from build; leave files in place for potential
+ later use
+ [fdda9447ee37]
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt:
+ cmake: move program_options_lite out of HM lib and into CLI project
+ [1d8a40959e29]
+
+ * source/encoder/primitives.cpp:
+ primitives: turn partition checks into asserts; we expect success
+ [0f56cdd99c40]
+
+ * source/x265main.cpp:
+ main: nits in output header
+ [f8a551edd2b7]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: add vector width/height 12 SAD functions
+ [27f5f9a00390]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/test/pixelharness.cpp:
+ pixel: add support for width/height of 12
+ [e2cb9064721e]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: add vector width/height 24 SAD functions
+ [2c86ffb3f28b]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix up partition name strings
+ [a968ffee3ff1]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h:
+ pixel: add support for width/height of 24
+ [fb552f51143d]
+
+ * source/encoder/pixel.cpp:
+ pixel: reorder C refs to match enums, add missing 64 sized SATD
+ functions
+
+ Intra will not use 64 sized partitions, but sub-pel inter might. I'm
+ surprised this didn't break uterly before?
+ [167863d172b5]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ white-space nit
+ [4ccf1edbb887]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ search: do not use iSubShift if it would result in slow path
+ *CHANGES OUTPUT*
+
+ This doesn't have a large impact on performance today because motion
+ search is still so bloody innefficient. But it is the right thing to
+ do.
+ [f99e73f1e0f5]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ primitives: add a FastHeight() method to give early warnings of slow
+ paths
+ [7a97443c2155]
+
+ * source/encoder/primitives.cpp:
+ primitives: simplify PartitionFromSizes()
+ [f4b4f25eb901]
+
+ * source/encoder/primitives.h:
+ primitives: add macros for 32byte aligment
+ [b65c2c4fa585]
+
+ * source/encoder/primitives.h:
+ primitives: re-order enums so partitions with the same width are
+ contiguous
+ [0d3a7ebba9e9]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/primitives.cpp:
+ Merged in deepthidevaki/xhevc_deepthid (pull request #92)
+
+ Call Filter Primitives from SamplingQ, SamplingH
+ [57aa9e90c935]
+
+2013-04-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Add filter Primitives call in SamplingQ
+ [4e66d9fa333c]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Add Filter Primitives call in SamplingQ
+ [9362b0761fa0]
+
+ * source/encoder/InterpolationFilter.cpp:
+ Remove assert from filters
+ [286250886456]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Call Filter Primitives from SamplingQ, SamplingH
+ [c005c9980a4b]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/InterpolationFilter.h:
+ Merge
+ [94205c681a97]
+
+ * source/encoder/InterpolationFilter.cpp,
+ source/test/ipfilterharness.cpp:
+ Fix unused variables.
+ [3a12d696bf54]
+
+2013-04-25 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [995b6235dffc]
+
+2013-04-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/test/ipfilterharness.cpp:
+ Add limits.h to IPFilterHarness.
+ [a2483d531f95]
+
+ * source/encoder/CMakeLists.txt, source/encoder/primitives.cpp,
+ source/test/CMakeLists.txt:
+ Filter c primitives - add to Cmake and primitives.cpp
+ [410a769be98e]
+
+2013-04-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merged in ggopu/gopu_xhevc (pull request #89)
+
+ included 64 Bit in PartitionFromSizes and Eliminated the
+ setDisParam() call from xTZSearchHelp() and Removed the primitive
+ call for rdCost for all the sad functions
+ [0004001ac17b]
+
+2013-04-25 ggopu <ggopu>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ included 64 Bit in PartitionFromSizes and Eliminated the
+ setDisParam() call from xTZSearchHelp() and Removed the primitive
+ call for rdCost for all the sad functions Resolved the issue based
+ on the comment
+ [3e30fb1adc96]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ included 64 Bit in PartitionFromSizes and Eliminated the
+ setDisParam() call from xTZSearchHelp() and Removed the primitive
+ call for rdCost for all the sad functions
+ --solved the issues based on the comment
+ [cbde0042b475]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ included 64 Bit in PartitionFromSizes and Eliminated the
+ setDisParam() call from xTZSearchHelp() and Removed the primitive
+ call for rdCost for all the sad functions
+ -- solved the issues based on the comment
+ [c6af59bec3cd]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ included 64 Bit in PartitionFromSizes and Eliminated the
+ setDisParam() call from xTZSearchHelp() and Removed the primitive
+ call for rdCost for all the sad functions
+ [a3a21e07ef69]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/primitives.cpp:
+ Included 64 Bit in PartitionFromSizes and Eliminated the
+ setDisParam() call from xTZSearchHelp() Removed the primitive call
+ for rdCost for all the sad functions
+ [df5479194d8d]
+
+2013-04-24 Gopu G <gopu@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [388938d47d3a]
+
+ * Merged multicoreware/xhevc into default
+ [18941a42d529]
+
+2013-04-23 Gopu G <gopu@multicorewareinc.com>
+
+ * source/Lib/TLibVideoIO/TVideoIO.h,
+ source/Lib/TLibVideoIO/TVideoIOY4m.cpp,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h:
+ Merged multicoreware/xhevc into default
+ [a1d0b89d4a09]
+
+2013-04-22 Gopu G <gopu@multicorewareinc.com>
+
+ * source/Lib/encoder.cpp, source/Lib/encoder.h,
+ source/Lib/libmd5/MD5.h, source/Lib/libmd5/libmd5.c,
+ source/Lib/libmd5/libmd5.h:
+ Merged multicoreware/xhevc into default
+ [51911ce2d52e]
+
+2013-04-25 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #91)
+
+ Added new IPFilter function pointers. Added TestSuite for new
+ IPFilter primitives.
+ [ceded0279117]
+
+2013-04-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/InterpolationFilter.cpp:
+ assert bitDepth==8
+ [81b6dda66506]
+
+ * source/encoder/primitives.h, source/test/ipfilterharness.cpp,
+ source/test/ipfilterharness.h, source/test/testbench.cpp:
+ Added new IPFilter function pointers. Added TestSuite for new
+ IPFilter primitives.
+ [6e541a1f02e4]
+
+2013-04-25 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merge
+ [93dcae8999dd]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Random data type changes
+ [dde5cb2850a0]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Correct typecasts in IFSamplingQ and H
+ [3b74bb5a814c]
+
+ * cfg/encoder_I_15P.cfg:
+ Turn off SAO
+ [fb2f0ff73dc3]
+
+2013-04-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/CMakeLists.txt:
+ Add InterpolationFilter.cpp to CMakeList
+ [4356b72d5c7b]
+
+ * source/encoder/InterpolationFilter.cpp,
+ source/encoder/InterpolationFilter.h:
+ Changes to filter (fixing merge conflict)
+ [92c17b5fe436]
+
+2013-04-25 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/InterpolationFilter.h:
+ Merged multicoreware/xhevc into default
+ [a6ee0ff27646]
+
+2013-04-25 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/InterpolationFilter.h:
+ Backed out changeset: cc54b45a0eac
+ [d2aebf4a7562]
+
+2013-04-24 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/InterpolationFilter.cpp,
+ source/encoder/InterpolationFilter.h:
+ added filterVertical_pel_pel
+ [e2cacd2ec890]
+
+ * source/encoder/InterpolationFilter.cpp,
+ source/encoder/InterpolationFilter.h:
+ Split interpolationfilter.h and .cpp
+ [cc54b45a0eac]
+
+ * source/encoder/InterpolationFilter.h:
+ Removed copying coeff to temporary array
+ [9a69b9fd012f]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/InterpolationFilter.h:
+ modified filter assuming bitDepth is always 8
+ [1bb0a3358d50]
+
+ * source/encoder/InterpolationFilter.h:
+ Removed filterVertical_pel_pel.
+ [76a182472142]
+
+ * source/encoder/InterpolationFilter.h:
+ Add memcpy in filterCopy
+ [6ea7aa1a93c3]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/InterpolationFilter.h:
+ Eliminated redundant operations in filter
+ [6f17253fe853]
+
+2013-04-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/macroblock.inc:
+ Merged in praveentiwari/xhevc_praveent (pull request #87)
+
+ Vector code for partialButterflyInverse32
+ [09cf53b336c3]
+
+2013-04-24 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ vector code for partialButterflyInverse32
+ [71b1a222d57a]
+
+2013-04-24 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [c43e9ed20d1f]
+
+2013-04-24 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Test code for partialButterflyInverse32
+ [e47972d48684]
+
+2013-04-24 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/InterpolationFilter.h:
+ Interpolation: Fix unused variable in the horizontal filter.
+ [3d35a4bbd255]
+
+2013-04-24 Steve Borho <steve@borho.org>
+
+ * source/encoder/InterpolationFilter.h:
+ fix build on Linux, always use forward slashes in includes
+ [e4e556b60058]
+
+2013-04-24 Deepthi <Deepthi>
+
+ * Merge
+ [ebdfe69383cc]
+
+ * source/Lib/TLibCommon/TComYuv.cpp:
+ Static_casts in TComYuv
+ [8541479eac97]
+
+2013-04-24 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Fixed case mismatch in include
+ [e345fae910b3]
+
+2013-04-24 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Merged multicoreware/xhevc into default
+ [73ed43fb0ef7]
+
+2013-04-24 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/InterpolationFilter.h:
+ Added InterpolationFilter.h
+ [74d34f6cd481]
+
+ * source/encoder/interpolationFilter.h:
+ removed interpolationFilter.h
+ [98afe5c82a2e]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/encoder/CMakeLists.txt, source/encoder/interpolationFilter.h:
+ Fixed data types of srcPtr,dstPtr and intPtr.
+ [1cfc4aa1e5be]
+
+2013-04-23 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Changed typecasting to Pel.
+ [2a77751c7ab8]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Modified call to Filters based on input/ouput data type
+ [58cee8796bb4]
+
+ * source/encoder/CMakeLists.txt, source/encoder/interpolationFilter.h:
+ Added new filter functions for different datatypes(Pel or short) for
+ input/output.
+ [77b56bf695f2]
+
+2013-04-23 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibVideoIO/TVideoIO.h,
+ source/Lib/TLibVideoIO/TVideoIOY4m.cpp,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h,
+ source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [6daee65aa014]
+
+ * source/Lib/encoder.cpp, source/Lib/encoder.h,
+ source/Lib/libmd5/MD5.h, source/Lib/libmd5/libmd5.c,
+ source/Lib/libmd5/libmd5.h, source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [eb50336c8520]
+
+2013-04-23 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/macroblock.inc:
+ fix the merge conflicts
+ [2996c71961a0]
+
+2013-04-19 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [afcb19e80d04]
+
+2013-04-24 Deepthi <Deepthi>
+
+ * Merge
+ [3e006ed9fb6c]
+
+2013-04-23 Deepthi <Deepthi>
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ More static_cast in IntraCoding
+ [979f31a68ee5]
+
+ * Merge
+ [5c3124219338]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ static_casts in IntraCoding
+ [ba3596764ed0]
+
+ * source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp:
+ Change to short to prevent infinite loop
+ [11fe08841d59]
+
+2013-04-23 Steve Borho <steve@borho.org>
+
+ * source/x265enc.cpp:
+ x265enc: check return status of input.readPicture()
+ [0484be696c65]
+
+ * source/input/y4m.cpp:
+ input: further y4m reading fixes
+ [a399bd21bdf5]
+
+ * source/input/y4m.cpp:
+ input: declare header as char[] so sizeof works correctly
+ [f9a651676c2f]
+
+2013-04-23 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/md5.cpp:
+ md5: Fix incorrect memory reset on MD5 context structure.
+ [fd8e4a7004cd]
+
+2013-04-23 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: report bit depth in testbench output log
+ [dc2cd230f09d]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: refactor pixel templates, optimizations mostly for 8bpp, see
+ below
+
+ SAD part 16bpp opt 8bpp opt [4x4] 4.88x 4.24x 2.75x 3.16x [8x4]
+ 4.57x 6.40x 4.79x 5.87x [4x8] 4.95x 4.34x 3.08x 3.24x [8x8] 6.63x
+ 6.14x 6.03x 6.98x [4x16] 3.70x 6.10x 3.76x 3.67x [16x4] 8.51x 10.55x
+ 8.77x 10.75x [8x16] 7.08x 6.99x 6.65x 7.83x [16x8] 12.57x 14.31x
+ 11.21x 18.17x [16x16] 15.30x 13.36x 12.80x 26.20x [4x32] 4.83x 4.95x
+ 3.55x 3.99x [32x4] 10.30x 12.03x 7.07x 13.03x [8x32] 6.77x 7.66x
+ 6.43x 8.01x [32x8] 11.01x 14.35x 9.25x 13.80x [16x32] 14.12x 14.24x
+ 13.38x 17.81x [32x16] 10.75x 12.63x 9.72x 19.84x [32x32] 12.11x
+ 12.01x 9.19x 14.41x [4x64] 4.23x 4.12x 4.00x 4.73x [64x4] 11.34x
+ 11.63x 8.53x 14.24x [8x64] 7.68x 7.25x 7.74x 8.32x [64x8] 10.69x
+ 13.61x 8.79x 14.71x [16x64] 12.93x 12.82x 11.45x 21.61x [64x16]
+ 10.37x 10.46x 9.12x 17.29x [32x64] 13.22x 13.03x 10.34x 19.46x
+ [64x32] 10.49x 10.81x 8.58x 13.40x [64x64] 11.19x 11.34x 9.45x
+ 16.19x
+ [7dbd423a8820]
+
+ * source/VectorClass/vectori128.h:
+ vec: add two methods to Vec16uc that are handy for pixelcmp
+ [d45d724f45e4]
+
+ * source/x265cfg.cpp:
+ x265cfg: more HIGH_BIT_DEPTH fixes
+ [3118ee99c520]
+
+ * source/VectorClass/vectori128.h:
+ vec: fix eoln in vectori128.h
+ [f0069ad5eb70]
+
+ * source/PPA/ppaCPUEvents.h, source/output/y4m.cpp,
+ source/output/yuv.cpp:
+ ppa: add profile events for file write
+ [667b19cb2ca6]
+
+ * source/input/input.h, source/input/y4m.h, source/output/y4m.cpp:
+ nit: prune unnecessary includes
+ [31f5f01b6a80]
+
+ * source/encoder/md5.cpp, source/encoder/md5.h:
+ nit: hide internal function
+ [f4b07506d49b]
+
+ * source/encoder/threadpool.cpp, source/test/testpool.cpp:
+ threadpool: fix 32bit Windows __lzcnt_2x32
+ [6dbcb3afc321]
+
+ * doc/uncrustify/codingstyle.cfg:
+ uncrustify: comment two lines that triggered warnings
+ [a918e7b44e0d]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp:
+ take HM updates up to 10.1rc
+ [fdace7753eed]
+
+ * source/output/output.h, source/output/y4m.h, source/output/yuv.h,
+ source/x265cfg.cpp:
+ output: add error handling for output reconstructed video file
+ [3c4a4ccc8da8]
+
+ * source/output/yuv.cpp, source/output/yuv.h:
+ output: use ofstream for yuv
+ [5e083ea9e0a7]
+
+ * source/output/y4m.cpp, source/output/y4m.h:
+ output: use ofstream for y4m
+ [dc215c6aa2ff]
+
+ * source/output/output.cpp, source/output/output.h,
+ source/output/y4m.cpp, source/output/y4m.h, source/x265cfg.cpp:
+ output: pass frame rate to output file
+ [8808b77229fe]
+
+ * source/x265enc.cpp:
+ we must initialize the fields which have been deprecated from config
+ [29c9d0740692]
+
+ * source/x265cfg.cpp:
+ use estimated frame count
+ [1e3a180ec0ad]
+
+ * source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h:
+ input: implement guessFrameCount(), use std::ifstream, cleanup Y4M
+ header read
+
+ Prevent double-close of YUV file handle
+ [7805c8506eda]
+
+ * source/x265cfg.h:
+ white-space nits
+ [6324d2cd5e04]
+
+ * source/x265cfg.cpp, source/x265cfg.h, source/x265enc.cpp:
+ cli: make bit depth arguments go away when HIGH_BIT_DEPTH=0,
+ simplify
+
+ Enforce the requirement that the output bit depth cannot be larger
+ than the internal bit depth. Remove "conformance mode" and aiPad[].
+ Those operations, including color space adjustments, don't belong in
+ an encoder. They should be done by a video processing library prior
+ to the encoder.
+ [5c453394226c]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm-primitives: use #if 0 rather than comments
+ [2d660854c182]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: add separate implementations for 8bit pixels
+
+ the current 8bit versions are sub-optimal. Needs psadbw
+ [c557f437293c]
+
+ * source/encoder/pixel.cpp:
+ pixel: remove old TODO comment
+ [c8bef114ec96]
+
+2013-04-23 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in praveentiwari/xhevc_praveent (pull request #84)
+
+ Vector code for partialButterflyInverse16
+ [0e66af1883ad]
+
+2013-04-23 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Vector code for partialButterflyInverse16
+ [9703357da52b]
+
+2013-04-23 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [788b291a1720]
+
+ * Merged multicoreware/xhevc into default
+ [b6dcceb8ec9e]
+
+ * Merged multicoreware/xhevc into default
+ [d3ed8a3f0be5]
+
+2013-04-23 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Testcode for partialButterflyInverse16
+ [15924dfd46bb]
+
+2013-04-23 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/Lib/TLibVideoIO/TVideoIO.h,
+ source/Lib/TLibVideoIO/TVideoIOY4m.cpp,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h:
+ Merged multicoreware/xhevc into default
+ [dfa318bc6c1f]
+
+2013-04-23 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ Robust alternative logic for Clip3
+ [6026e8c2efd5]
+
+2013-04-23 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in ggopu/gopu_xhevc (pull request #83)
+
+ Enhanced the Regression suite and added Regression suite for Mingw
+ and Linux
+ [e85d16d29d0c]
+
+2013-04-22 ggopu <ggopu>
+
+ * build/BuildEncoderApplications.bat,
+ build/CreateRegressionPackage.bat, build/CreateRegressionPackage.sh,
+ build/RunEncoderApplications.bat, build/config.txt:
+ Enhanced the Regression suite and added Regression suite for Mingw
+ and Linux
+ [06e573f8842f]
+
+2013-04-23 Deepthi <Deepthi>
+
+ * source/Lib/TLibVideoIO/TVideoIO.h,
+ source/Lib/TLibVideoIO/TVideoIOY4m.cpp,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h:
+ Merge
+ [e30ef3ca26c8]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ more precision related static casts in prediction.
+ [7d9f38dc50a8]
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp:
+ Deblocking Filter made type safe
+ [b8763aa9e2cb]
+
+2013-04-23 Steve Borho <steve@borho.org>
+
+ * source/output/y4m.cpp:
+ output: simplify frame header generation
+ [a07c8d0cb501]
+
+ * source/output/yuv.cpp:
+ output: handle 16bit YUV output files correctly
+ [b383da39acb2]
+
+ * .hgignore:
+ hg: ignore y4m files
+ [5182602454f0]
+
+2013-04-23 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComLoopFilter.cpp:
+ static_cast to remove precision loss in loop filter (during Pel type
+ conversions)
+ [569611fe5c7c]
+
+2013-04-23 Steve Borho <steve@borho.org>
+
+ * source/output/y4m.cpp, source/output/y4m.h, source/output/yuv.cpp,
+ source/output/yuv.h, source/x265cfg.cpp, source/x265enc.cpp:
+ output: handle 16bit Pel type from the encoder
+ [4f7100891763]
+
+2013-04-22 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt,
+ source/Lib/TLibEncoder/TEncTop.h, source/Lib/TLibVideoIO/TVideoIO.h,
+ source/Lib/TLibVideoIO/TVideoIOY4m.cpp,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h, source/output/CMakeLists.txt,
+ source/output/output.cpp, source/output/output.h,
+ source/output/y4m.cpp, source/output/y4m.h, source/output/yuv.cpp,
+ source/output/yuv.h, source/x265cfg.cpp, source/x265cfg.h,
+ source/x265enc.cpp, source/x265enc.h:
+ replace TLibVideoIO with as-yet unimplemented Output classes
+ [1b5074c2cf17]
+
+2013-04-23 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp:
+ remove unicode chars from HM source
+ [99deb04e11c5]
+
+ * source/test/timer.cpp:
+ testbench: re-add EMMS calls to timer funcs, for x86 builds
+
+ Apparently uint64_t somehow involves the same hardware registers as
+ MMX on x86
+ [caa9d879d8bd]
+
+2013-04-22 Steve Borho <steve@borho.org>
+
+ * source/test/timer.cpp:
+ testbench: fix timer behavior on Linux
+ [900e90ef3ec6]
+
+ * source/test/CMakeLists.txt, source/test/timer.cpp:
+ testbench: fix Linux compile
+ [8a71a9d9dd3c]
+
+ * source/test/CMakeLists.txt:
+ cmake: the test bench apps no long need to link with the HM libs
+ [c34f8aa32544]
+
+ * source/test/filterharness.cpp, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/test/testbench.cpp,
+ source/test/testharness.h, source/test/timer.cpp:
+ testbench: report only speedups over C reference
+ [5bf58f12bed0]
+
+ * source/x265main.cpp:
+ fix eoln damage to x265main.cpp
+ [18a1d0360507]
+
+ * source/Lib/CMakeLists.txt, source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibEncoder/TEncGOP.cpp, source/Lib/libmd5/MD5.h,
+ source/Lib/libmd5/libmd5.c, source/Lib/libmd5/libmd5.h,
+ source/encoder/CMakeLists.txt, source/encoder/md5.cpp,
+ source/encoder/md5.h, source/test/testpool.cpp:
+ replace BSD libmd5 library with tweaked GPL MD5 from Min's x265
+ [4dc1489e326b]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp, source/x265enc.cpp:
+ move file read PPA events inside the file read classes
+ [ff2e1d6a420c]
+
+ * source/x265cfg.cpp:
+ nit cleanups in x265cfg.cpp
+ [3a706e89af04]
+
+ * source/x265main.cpp:
+ use correct data type for clock() output
+ [3a23868f4daf]
+
+ * source/x265cfg.cpp, source/x265cfg.h, source/x265main.cpp:
+ move some bits out of x265main into their proper locations
+ [fd477ac10863]
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt,
+ source/Lib/encoder.cpp, source/Lib/encoder.h, source/x265enc.cpp,
+ source/x265enc.h, source/x265main.cpp:
+ move CLI encoder toplevel class out of Lib/ folder
+ [9fbc3e142f42]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp:
+ fix eoln of TComPicYuv::copyFromPicture
+ [00930012bc2b]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h, source/Lib/encoder.cpp,
+ source/x265cfg.cpp, source/x265cfg.h:
+ Use Input classes for file reads, bit-exact
+ [98ea3cd98a49]
+
+ * source/input/input.h, source/input/y4m.h, source/input/yuv.h:
+ prune unnecessary Input class methods
+ [edf1cf197b7f]
+
+ * source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h, source/x265.h:
+ introduce x265.h - public interface header, C compatible
+ [1b9dbdbe3b3c]
+
+ * source/input/input.h, source/input/y4m.cpp:
+ input: remove include of internal header
+ [0fd879feff34]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg:
+ remove ScalingListFile from config files
+
+ It was never implemented, and we're unlikely to add it
+ [d7c1fa3d6c92]
+
+ * source/Lib/TLibEncoder/TEncCu.cpp:
+ white-space tweak to TEncCu.cpp
+ [fcf2c9a0f811]
+
+ * source/input/input.h, source/input/y4m.h, source/input/yuv.h:
+ input tweaks
+ [c5f827448a65]
+
+ * .hgignore:
+ hg: ignore test run remnants
+ [2708d9bed556]
+
+2013-04-21 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: set -D_CRT_NONSTDC_NO_DEPRECATE on x265cfg.cpp
+ [6d42d360d056]
+
+ * source/Lib/TLibEncoder/TEncCfg.h:
+ TEncCfg: minor white-space cleanups
+ [7d53979cdc0c]
+
+2013-04-22 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in praveentiwari/xhevc_praveent (pull request #82)
+
+ Vectorized code for partialButterflyInverse8
+ [5d949f9e5b57]
+
+2013-04-22 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Vectorized code for partialButterflyInverse8
+ [2c0f4fb594da]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Test code for partialButterflyInverse8
+ [e1ae28e06e85]
+
+2013-04-22 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [e5de08686fce]
+
+2013-04-22 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Vectorized code for partialButterflyInverse4
+ [65245e2e352b]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Vectorized code for partialButterfly8
+ [2331625b3ed3]
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Test code for partialButterflyInverse4
+ [70688db2af31]
+
+2013-04-22 Deepthi <Deepthi>
+
+ * source/Lib/TLibVideoIO/TVideoIOY4m.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp:
+ Bit Depth checks.
+ [303d89672240]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ Final Short* parameter type casts. Now compiles with Pel as UShort.
+ Output incorrect.
+ [d2c2078f9a54]
+
+ * source/Lib/TLibCommon/TComPrediction.h:
+ Merge
+ [83b1e733d352]
+
+2013-04-21 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComPrediction.h:
+ Comments
+ [eadc32e88cc5]
+
+2013-04-21 Steve Borho <steve@borho.org>
+
+ * source/x265cfg.h:
+ eoln fixes for x265cfg.h
+ [80b3d7f2ea2b]
+
+ * source/cmake/version.cmake:
+ cmake: print detected xhevc version
+ [7732fd1be70c]
+
+ * source/x265cfg.h:
+ reintrodude old TVideIO classes, short term fix
+ [0b3a7f032ca7]
+
+ * source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibEncoder/TEncCavlc.h:
+ re-apply some changes that were accidentally backed out
+ [301365973418]
+
+ * source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h:
+ remaining checkin of HM files
+ [d1697a1eb39d]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h:
+ partial checkin of more HM files
+ [843a9b287b93]
+
+ * source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h:
+ partial checkin of more HM files
+ [c34e62ee498a]
+
+ * source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComMv.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h:
+ partial checkin of more HM files
+ [ede16ee58c25]
+
+ * source/Lib/TLibCommon/ContextModel.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitStream.h, source/x265cfg.h:
+ apply uncrustify tweak
+ [5151eb7614ca]
+
+ * doc/uncrustify/codingstyle.cfg:
+ uncrustify: yet another tweak
+ [6f329f8be6cb]
+
+ * source/Lib/TAppCommon/program_options_lite.cpp,
+ source/Lib/TAppCommon/program_options_lite.h,
+ source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h,
+ source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp:
+ partial checkin of more HM files
+ [a3e1adc924bc]
+
+ * cfg/encoder_I_15P.cfg, source/Lib/encoder.cpp, source/x265cfg.cpp,
+ source/x265cfg.h:
+ partial check-in of HM bug fixes - hand tweaking of large table
+ formats
+ [b54b96b9d205]
+
+ * source/Lib/TAppCommon/program_options_lite.cpp,
+ source/Lib/TAppCommon/program_options_lite.h,
+ source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextModel.h, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComMv.h, source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.h, source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h, source/Lib/encoder.cpp,
+ source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/threading.cpp,
+ source/encoder/threadpool.cpp, source/encoder/vec/pixel.inc,
+ source/encoder/vec/vec-primitives.cpp,
+ source/encoder/vec/vecprimitives.inc, source/input/input.cpp,
+ source/input/y4m.cpp, source/input/y4m.h, source/input/yuv.cpp,
+ source/input/yuv.h, source/test/filterharness.cpp,
+ source/test/filterharness.h, source/test/mbdstharness.cpp,
+ source/test/pixelharness.cpp, source/test/pixelharness.h,
+ source/test/testbench.cpp, source/test/testharness.h,
+ source/test/testpool.cpp, source/test/timer.cpp:
+ uncrustify: apply coding style tweaks
+
+ The new style needed to be in place before I updated the HM code, in
+ order to reduce the number of diffs to sift through.
+ [6d038ab13735]
+
+ * doc/uncrustify/codingstyle.cfg:
+ uncrustify: more tweaks to style setting
+ [c451dbda7d94]
+
+ * doc/uncrustify/apply-to-all-source.py,
+ doc/uncrustify/codingstyle.cfg, doc/uncrustify/uncrustify.exe:
+ uncrustify: update uncrustify executable
+ [46c33fbe9333]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: disable SAD assembly to get back to bit-exact outputs
+
+ Perhaps a data alignment problem, or arguments in the wrong order
+ somewhere
+ [33d2ebf5f487]
+
+ * Merge
+ [3fe21a59f6fd]
+
+2013-04-21 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ Cleanups; remove TComYUV structure.
+ [581d2044bf91]
+
+ * source/Lib/TLibEncoder/TEncSearch.cpp:
+ Replace TComYUV class by TShortYUV
+ [c9777c7b75fe]
+
+ * source/Lib/TLibCommon/TComPrediction.h:
+ More members functions added to TShortYUV
+ [64fc6448254c]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h:
+ Create and destroy filteredTmp class
+ [01deb523db8b]
+
+ * source/Lib/TLibCommon/TComPrediction.h:
+ Defining a new class for holding Short YUV buffers. This will
+ replace the Pel YUV intermediate buffers in filter interpolation.
+ [24500d602afd]
+
+2013-04-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/macroblock.cpp:
+ cleanup some unfortunate uncrustify expression reflows
+ [a9e3b68b81d9]
+
+2013-04-20 Mandar Gurav <Mandar Gurav>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc,
+ source/test/filterharness.cpp:
+ * Implemented vectorization of Filter_horizontal_4
+ * Uncrustify all the commit files
+ * Print one more field (speedup = c_time/vec_time) in testbench
+ [d5eaa39bf3b6]
+
+2013-04-20 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Changing the intermediate filtering output to short-lived heap
+ memory (type short).
+ [e8b8232ddbb2]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Merge
+ [e77a39c2105c]
+
+2013-04-19 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Filter Horizontal vectorization stage 2
+ [6f25724b3f93]
+
+2013-04-19 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [aa8a54f38812]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Merged multicoreware/xhevc into default
+ [0e019be400f8]
+
+ * source/encoder/macroblock.cpp:
+ Merged multicoreware/xhevc into default
+ [dc9f04885f43]
+
+2013-04-17 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc,
+ source/test/filterharness.cpp:
+ Merged multicoreware/xhevc into default
+ [7ea883f9071d]
+
+2013-04-18 Mandar Gurav <Mandar Gurav>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp:
+ Copy file directly from xhevc.
+ [2b8e435f91bb]
+
+2013-04-17 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * build/RegressionTester.bat, source/Lib/config.cpp,
+ source/Lib/config.h, source/encoder/macroblock.cpp,
+ source/encoder/primitives.h, source/encoder/vec/macroblock.inc,
+ source/test/filterharness.cpp:
+ Merged multicoreware/xhevc into default
+ [7f14170ed329]
+
+2013-04-17 Mandar Gurav <Mandar Gurav>
+
+ * source/encoder/primitives.h:
+ Move to Xhevc source stage 2
+ [a45e2efa1fd6]
+
+ * source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc,
+ source/test/filterharness.cpp:
+ Move to latest xhevc source
+ [b9152b69273b]
+
+ * source/encoder/macroblock.cpp:
+ Revert changes
+ [d451573343a3]
+
+ * source/encoder/macroblock.cpp:
+ Copy file directly from xHEVC
+ [aabf6e1c4ce3]
+
+2013-04-16 Mandar Gurav <Mandar Gurav>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Restrctured filter function calling/template as per the discussion
+ [675639180295]
+
+2013-04-20 Deepthi <Deepthi>
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Merge
+ [a8918bd5c534]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/filterharness.cpp,
+ source/test/filterharness.h:
+ Changing all filter interpolation primitives to accept short
+ pointers.
+ [53e2f960638a]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h:
+ Changing all filter interpolation functions to accept Short
+ pointers.
+ [55d414249baa]
+
+2013-04-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/x86/CMakeLists.txt:
+ cmake: use .obj extension for ASM compilation outputs, makes VS
+ happier
+ [e81ef56a1f28]
+
+ * source/CMakeLists.txt:
+ cmake: enable /Oi flag globally for Visual Studio
+
+ This makes the test bench run faster compiled with VS than with GCC
+ [e4cbdf357e3d]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ add x264_cpu_emms() in some likely locations
+ [454a38de0b89]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: disable many of the sa8d_8x8 functions, they are causing
+ crashes
+
+ (perhaps misalingment related, don't know. this will have to be
+ revisited later)
+ [9fa4ad5c65bf]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm: enable many more primitives, leave bunches disabled
+
+ Many of the high-bit depth primitives seem to be busted, they cause
+ stack corruption even when called from GCC, at least the versions we
+ have here.
+ [b6c387c6256b]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: tweak print statements to show progress more clearly
+ [796e05062cdc]
+
+ * source/encoder/x86/CMakeLists.txt:
+ cmake: pass ARCH_X86_64 flag to asm-primitives.cpp
+ [e81431e4bf6c]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: add a 16x4 satd vector primitive
+ [ea89ec5d7ace]
+
+ * source/encoder/pixel.cpp:
+ pixel: fix larger dimension satd C primitives, using simple template
+ [b899a70a433b]
+
+ * source/encoder/x86/CMakeLists.txt, source/encoder/x86/sad-a.asm:
+ cmake: add x264's sad-a.asm for more SAD functions
+ [55920369b223]
+
+ * source/encoder/x86/CMakeLists.txt:
+ cmake: fix linking of assembly code with MSVC x86
+ [2b777b1de100]
+
+ * source/encoder/x86/asm-primitives.cpp:
+ asm-primitives: repair EOLN
+ [b758e0607830]
+
+ * source/input/yuv.cpp:
+ yuv: fix MSVC x86 compiler warning
+ [789f01fd0555]
+
+ * source/encoder/primitives.h, source/encoder/x86/CMakeLists.txt,
+ source/encoder/x86/asm-primitives.cpp:
+ cmake: fix linking of assembly code with MSVC builds (rename outputs
+ to .lib)
+ [06c9c88a35a8]
+
+ * source/encoder/primitives.h, source/encoder/x86/CMakeLists.txt,
+ source/encoder/x86/asm-primitives.cpp, source/encoder/x86/cpu-a.asm,
+ source/test/CMakeLists.txt, source/test/timer.cpp:
+ asm: pull in cpu-a.asm from x264, includes EMMS function
+
+ The intrinsic support for EMMS is broken with MS compilers, so we
+ have to use this short function provided by x264. We could improve
+ this somewhat with inline assembly in primitives.h, but it would
+ have to be cross-compiler.
+
+ linking the assembly with MSVC seems clearly broken
+ [42546d6bb2da]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h:
+ EOLN repair in HM files
+ [11cf80f51ee9]
+
+ * source/cmake/CMakeASM_YASMInformation.cmake,
+ source/cmake/CMakeDetermineASM_YASMCompiler.cmake,
+ source/cmake/CMakeTestASM_YASMCompiler.cmake,
+ source/cmake/version.cmake:
+ cmake: dos to unix eoln
+ [b7668187381e]
+
+ * source/test/timer.cpp:
+ timer: issue EMMS before attempting any floating point math
+ [ea5150ee49a4]
+
+ * source/cmake/CMakeASM_YASMInformation.cmake, source/encoder/x86/asm-
+ primitives.cpp, source/test/CMakeLists.txt:
+ cmake: fix GCC Win32 linkage with x264 assembly
+ [74d0c855ad7d]
+
+ * source/input/y4m.cpp:
+ input: fix GCC build
+ [234401a376c3]
+
+ * source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h:
+ input: remove unnecessary public methods, cleanup read functions
+
+ fread returns the count of elements read. The file reader should
+ know nothing about margins.
+ [40d080f01e1b]
+
+ * source/input/y4m.cpp, source/input/yuv.cpp:
+ input: fix compile warnings
+ [875679b4cb08]
+
+ * source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h:
+ input: update headers and classes
+ [aa83c6072932]
+
+2013-04-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/macroblock.cpp:
+ macroblock: move warning disable to top of file, remove dups
+ [358d7a322561]
+
+2013-04-19 Steve Borho <steve@borho.org>
+
+ * Merged in praveentiwari/xhevc_praveent (pull request #78)
+
+ Vectorized code for partialButterfly32
+ [fe41a1e01a93]
+
+2013-04-19 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Test code of partialButterfly8
+ [1f6cd6ba73f8]
+
+2013-04-19 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Merged multicoreware/xhevc into default
+ [cc32f7a1aacf]
+
+ * source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [c2a7b5bce16e]
+
+ * source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [37b3da3c6bf9]
+
+2013-04-19 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Vectorized code for partialButterfly32
+ [961ebc25f630]
+
+2013-04-19 Steve Borho <steve@borho.org>
+
+ * Merge
+ [d613c2fde0f8]
+
+2013-04-19 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Changing 16-bit hard coded memory copy in TComTrQuant::xT
+ [8a517c789bbb]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Changing 16-bit hard coded memory copy in TComTrQuant::xIT
+ [3e327e235ef6]
+
+2013-04-19 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/macroblock.inc:
+ Fix build issue in macroblock.inc with Mingw, Msys
+ [45b7819d08eb]
+
+2013-04-19 Deepthi <Deepthi>
+
+ * source/encoder/vec/macroblock.inc:
+ Comment
+ [4252824d518f]
+
+2013-04-19 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Vertical Filter - vector primitive with 32 bit operations.
+ [5334266bbebb]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Filter C - primitive with isFirst, isLast and 32 bit sums.
+ [f517af8fa3e1]
+
+2013-04-19 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/macroblock.cpp:
+ Merged multicoreware/xhevc into default
+ [b95fa4555d92]
+
+2013-04-19 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Backed out changeset: c51b962d2155
+ [53fe4175ecf6]
+
+2013-04-18 Rajesh <Rajesh>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Changed the array of Filter function pointers in primitives.h to
+ have only Filter[V_8] and FIlter[V_4].
+ [c51b962d2155]
+
+2013-04-19 praveentiwari <praveentiwari>
+
+ * source/test/mbdstharness.cpp, source/test/mbdstharness.h:
+ Test code for partialButterfly32
+ [7d9db6232717]
+
+2013-04-18 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: move CPRIMITIVES variable creation into
+ source/encoder/CMakeLists.txt
+ [d69532344cd2]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: document the reason for the -march-i686 flag
+ [f86cfcd39cda]
+
+ * source/encoder/threading.cpp, source/encoder/threading.h,
+ source/encoder/threadpool.cpp:
+ threading: cleanup of shutdown methods
+
+ This fixes the deadlock we see once 1 in 1 million runs of the pool
+ test.
+ [189956c5ac7e]
+
+ * source/encoder/primitives.cpp:
+ primitives: remove PartitionFromSizes if primitives are disabled
+ [1b4bcbe0b604]
+
+ * source/encoder/primitives.cpp, source/x265main.cpp:
+ primitives: report primitive compilation settings when setting up
+ primitives
+ [622eada81044]
+
+ * source/encoder/primitives.cpp:
+ primitives: fix GCC compile without primitives
+ [f77e4badb7c3]
+
+ * source/test/testbench.cpp:
+ testbench: allow to compile without primitives
+ [906891cfca09]
+
+2013-04-18 Deepthi <Deepthi>
+
+ * source/encoder/macroblock.cpp:
+ reverting vertical filter to isLast and isFirst as template
+ arguments.
+ [ba92d2b802b0]
+
+2013-04-17 Steve Borho <steve@borho.org>
+
+ * source/encoder/threadpool.cpp:
+ threadpool: ensure threads spin up before allowing any jobs to
+ enqueue
+ [1711ba4cbae9]
+
+ * source/test/testpool.cpp:
+ testpool: output nothing to stdout unless hashes mismatch
+ [7a831fa74921]
+
+ * source/encoder/threadpool.cpp, source/encoder/threadpool.h,
+ source/test/testpool.cpp:
+ threadpool: prevent threads seing partially destroyed job providers
+ [1c05ce459601]
+
+ * source/encoder/x86/asm-primitives.cpp, source/test/mbdstharness.cpp:
+ further GCC fixes
+ [4817f4da5c71]
+
+ * source/encoder/vec/macroblock.inc:
+ vec: fix GCC build of macroblock.inc
+ [75bd4e212561]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: add a mechanism to determine safety of job provider
+ deletion
+ [bada21fa0e75]
+
+ * source/encoder/x86/CMakeLists.txt:
+ cmake: unify assembly file list, use a common object file name
+ [4d8da41d0a98]
+
+2013-04-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/x86/CMakeLists.txt, source/encoder/x86/asm-
+ primitives.cpp, source/encoder/x86/const-a.asm:
+ asm: Fix integrations of pixel-a.asm.
+ [2ac269a795fe]
+
+2013-04-18 Deepthi <Deepthi>
+
+ * source/encoder/vec/macroblock.inc:
+ Merge
+ [72ad141d57f3]
+
+2013-04-17 Deepthi <Deepthi>
+
+ * source/encoder/vec/macroblock.inc:
+ Merge
+ [69fe3d55e91b]
+
+ * merged
+ [125be1e48dcd]
+
+2013-04-17 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/macroblock.inc:
+ Modified vertical_filter to pre-load coeff
+ [e162b60189b8]
+
+ * source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Backed out changeset: b520a3ddbf36
+ [082f8068d4cd]
+
+ * source/encoder/vec/macroblock.inc, source/test/filterharness.cpp:
+ Modified vertical_filter to pre-load coeff
+ [b520a3ddbf36]
+
+ * source/encoder/vec/macroblock.inc:
+ Backed out changeset: 0848ac28c541
+ [31b64b009d89]
+
+ * source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Backed out changeset: fbbc5ec48951
+ [df782495c742]
+
+ * source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Backed out changeset: bd537ec0cba7
+ [fbbc5ec48951]
+
+ * source/encoder/vec/macroblock.inc:
+ Backed out changeset: db0ac8504e1a
+ [0848ac28c541]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp:
+ Modifed TComInterpolationFilter.cpp to call vertical-filter
+ primitives
+ [2b049a973793]
+
+ * source/test/filterharness.cpp:
+ Modifed filterharness to test vertical filter.
+ [25b506f908ff]
+
+ * source/encoder/vec/macroblock.inc:
+ Modifed vertical-filter
+ [db0ac8504e1a]
+
+ * source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Added vectorized vertical Filter
+ [bd537ec0cba7]
+
+ * source/encoder/macroblock.cpp:
+ Added filter_Vertical C-primitive with isFirst = isLAst = True
+ always.
+ [808c38c73c93]
+
+ * source/encoder/macroblock.cpp:
+ Added filter_Vertical C-primitive with isFirst = isLAst = True
+ always.
+ [1fe37c453312]
+
+2013-04-17 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * build/RegressionTester.bat, source/Lib/config.cpp,
+ source/Lib/config.h, source/encoder/macroblock.cpp:
+ Merged multicoreware/xhevc into default
+ [4c19cddce21b]
+
+2013-04-17 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/macroblock.cpp:
+ Backed out changeset: 0826f419aa6d
+ [e93b9f1e9f10]
+
+2013-04-16 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [66c24df49d97]
+
+2013-04-15 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp:
+ Merged multicoreware/xhevc into default
+ [f05a5d3879f0]
+
+2013-04-15 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp:
+ Backed out changeset: 0826f419aa6d
+ [7f8daed75336]
+
+2013-04-12 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/macroblock.cpp:
+ Merged multicoreware/xhevc into default
+ [755bda7f920c]
+
+2013-04-12 Rajesh <Rajesh>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp:
+ Added filter c primitive to macroblock.cpp. Changed
+ TComInterpolationfilter.cpp to call filter primitives
+ [0826f419aa6d]
+
+2013-03-26 deepthidevaki <deepthidevaki>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modified xCalcHADs4x4 for better optimization
+ [6b9e69b013e8]
+
+2013-04-17 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ MingW support for alignment.
+ [91412bd3a9a8]
+
+2013-04-17 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ partialButterfly16 vectorized code
+ [e590f654128d]
+
+2013-04-17 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [f98bb4be9285]
+
+2013-04-17 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/macroblock.inc:
+ solving merge conflict
+ [745408cf439a]
+
+ * source/encoder/vec/macroblock.inc:
+ merge conflict
+ [0273e986d1ca]
+
+ * source/encoder/vec/macroblock.inc:
+ solving merge conflict
+ [ee1fec0bfdc3]
+
+ * source/encoder/vec/macroblock.inc:
+ solving merge conflict
+ [9ac0ab2c4469]
+
+ * source/encoder/vec/macroblock.inc:
+ Replaced Vec16s and Vec8i usage with Vec8s and Vec4i for Vec-
+ partialButterfly16
+ [70f2f5526c71]
+
+2013-04-17 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/vec/macroblock.inc:
+ Enforcing memory alignment in inversedst.
+ [e7784727f33b]
+
+ * source/test/mbdstharness.cpp:
+ Aligned mem in mbdst test harness
+ [4580bf5d1062]
+
+ * source/encoder/vec/macroblock.inc:
+ Removing extraneous min,max - performance improvements by 20%
+ [882c40e8df1a]
+
+ * source/encoder/vec/macroblock.inc:
+ Merge
+ [7c3b537734e1]
+
+2013-04-17 praveentiwari <praveentiwari>
+
+ * source/test/butterflyharness.cpp, source/test/butterflyharness.h:
+ removed butterflyharness files
+ [c0a349fc04e6]
+
+2013-04-17 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [12c9c9bceb8c]
+
+2013-04-17 praveentiwari <praveentiwari>
+
+ * source/test/CMakeLists.txt, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h, source/test/testbench.cpp:
+ Moved the butterfly-harness into mbdst-harness
+ [d2e5c53f22d2]
+
+2013-04-17 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * build/RegressionTester.bat, source/Lib/config.cpp,
+ source/Lib/config.h, source/encoder/macroblock.cpp,
+ source/test/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [170e9ffd084e]
+
+2013-04-16 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/macroblock.cpp:
+ Merged multicoreware/xhevc into default
+ [a266c75a843d]
+
+2013-04-16 praveentiwari <praveentiwari>
+
+ * source/test/CMakeLists.txt:
+ Included butterflyharness.h and .cpp file in make file
+ [d24a9c1f7f3e]
+
+ * source/test/butterflyharness.cpp:
+ Increased the buffer size and used more meaningful name in Test Code
+ of partialButterfly16
+ [3b621b943630]
+
+2013-04-16 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [2df037f5f4a2]
+
+2013-04-16 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Added vectorized code for partialButterfly16 and removed unused
+ function code
+ [8effa08eff14]
+
+ * source/test/butterflyharness.cpp, source/test/butterflyharness.h,
+ source/test/testbench.cpp:
+ Test Suit for partialButterfly16
+ [641d56d61ba2]
+
+2013-04-16 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/vec/macroblock.inc, source/test/testbench.cpp:
+ Merged multicoreware/xhevc into default
+ [e75d8a96b2b8]
+
+2013-04-16 praveentiwari <praveentiwari>
+
+ * source/test/testbench.cpp:
+ TestBench MergeConflict
+ [5be23aedc1d5]
+
+ * source/test/testbench.cpp:
+ Merge conflict
+ [c5d7681b866f]
+
+ * source/test/testbench.cpp:
+ Solving merge conflict with TestBench.cpp
+ [42821ff0e1d5]
+
+ * source/test/testbench.cpp:
+ Solving merge conflict with Testbench.cpp
+ [fd6fae9fb6fa]
+
+2013-04-15 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/vec/macroblock.inc:
+ Added Primitives for partialButterfly32
+ [9c97c040fc19]
+
+2013-04-15 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/test/testbench.cpp:
+ Merged multicoreware/xhevc into default
+ [237ff80c3bd1]
+
+2013-04-15 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp, source/encoder/butterfly.h,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/testbench.cpp:
+ Fixed alignment problem with partialButterfly16
+ [1239bf84868c]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Fixed alignment problem with ENABLE_PRIMITIVES switch for
+ partialButterfly16
+ [48d8838f4298]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/testbench.cpp:
+ Added ENABLE_PRIMITIVES switch for partialButterfly16
+ [9b87cb3d8c84]
+
+2013-04-15 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [35e483e872ff]
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [af2db6bbb5a7]
+
+2013-04-12 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [7413fc103a3e]
+
+ * source/encoder/macroblock.cpp:
+ Merged multicoreware/xhevc into default
+ [70abf8d31e02]
+
+2013-04-11 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [4d7790972b0e]
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [71ca57e3681f]
+
+2013-04-10 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [9687e766009f]
+
+2013-04-10 praveentiwari <praveentiwari>
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ resolving merge conflict
+ [00c935e908ce]
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Added C and Vector primitives for partialButterfly16
+ [93846235af07]
+
+ * source/encoder/butterfly.h:
+ Created butterfly.h to read the value from the g_aiT array
+ [6d234bd90345]
+
+2013-04-17 Deepthi <Deepthi>
+
+ * test_new.rtf:
+ Delete test commit
+ [1ad18182408d]
+
+ * test_new.rtf:
+ Test commit
+ [59aec92c8f61]
+
+2013-04-16 Steve Borho <steve@borho.org>
+
+ * source/encoder/x86/CMakeLists.txt:
+ cmake: figure out a workaround for YASM builds of assembly files
+ with MSVC
+ [28408d0ef0f7]
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt,
+ source/encoder/vec/CMakeLists.txt,
+ source/encoder/x86/CMakeLists.txt:
+ cmake: allow YASM to be used by MSVC, even though its currently
+ broken
+
+ Rename primitive projects so they sort together in VC
+ [ffe6cf7be445]
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt,
+ source/Lib/config.cpp, source/Lib/config.h, source/Lib/encoder.h,
+ source/input/CMakeLists.txt, source/input/input.cpp,
+ source/input/input.h, source/input/y4m.cpp, source/input/y4m.h,
+ source/input/yuv.cpp, source/input/yuv.h, source/x265cfg.cpp,
+ source/x265cfg.h:
+ establish a new input file library, move CLI and command parsing to
+ x265-cli
+ [8163e7e7b324]
+
+ * source/test/CMakeLists.txt:
+ cmake: disable the pool test by default, even when tests are enabled
+
+ Now that its functional, not many people will want to build/run it
+ [5d16e9d82d62]
+
+ * source/test/timer.cpp:
+ timer: replace NULL with 0
+ [a182530927da]
+
+ * source/test/pixelharness.cpp:
+ pixelharness: fix MinGW build
+ [4c2412305e62]
+
+ * source/test/timer.cpp:
+ timer: use native Windows high resolution timer
+ [4f65489aaaf1]
+
+ * source/test/filterharness.cpp, source/test/filterharness.h,
+ source/test/mbdstharness.cpp, source/test/mbdstharness.h,
+ source/test/pixelharness.cpp, source/test/pixelharness.h,
+ source/test/testharness.h:
+ dos to unix eoln for test harnesses
+ [26baba09de44]
+
+ * source/test/testpool.cpp:
+ trim trailing white-space
+ [4f1719887601]
+
+ * source/test/testpool.cpp:
+ testpool: verify below row is restartable
+
+ output is now deterministic regardless of thread count
+ [19ba1f4edaf2]
+
+ * source/encoder/macroblock.cpp:
+ Partial Backout changeset: 81101974408f
+ [d03b4fa32d79]
+
+ * build/BuildEncoderApplications.bat:
+ white-space cleanup in BuildEncoderApplications.bat
+ [71a75afbb8e8]
+
+ * build/RegressionTester.bat:
+ Merge
+ [ce10cac4ce71]
+
+ * source/test/pixelharness.cpp:
+ testbench: add a POSIX friendly aligned malloc, pad to 32 bytes
+ [9e1a1faad621]
+
+2013-04-16 Deepthi <Deepthi>
+
+ * source/encoder/macroblock.cpp:
+ Changing 32-bit multiplies to 16-bit multiplies for filter. (This
+ may need more testing).
+ [81101974408f]
+
+ * source/test/pixelharness.cpp:
+ Aligned mallocs and frees in pixel buffers
+ [defda4cf08c2]
+
+2013-04-16 nandaku2 <deepthi@multicorewareinc.com>
+
+ * build/RegressionTester.bat:
+ Merged in ggopu/gopu_xhevc (pull request #66)
+
+ Redesigned the Regression test script - the script will be
+ compatible for vc 9, vc 10 and vc 11
+ [3b066f46831d]
+
+2013-04-15 ggopu <ggopu>
+
+ * build/BuildEncoderApplications.bat,
+ build/CreateRegressionPackage.bat, build/RegressionTester.bat,
+ build/config.txt:
+ Redesigned the Regression test script - the script will be
+ compatible for vc 9, vc 10 and vc 11
+ [0d9f10323b82]
+
+2013-04-16 sumalatha <sumalatha>
+
+ * source/Lib/TLibVideoIO/TVideoIOY4m.cpp:
+ Fixed issue in handling y4m files Issue: The reconstructed file(yuv)
+ were all zeros Fix: In y4m handler, bitDepthShiftY, bitDepthShiftC
+ were not updated properly in the open(), so changed the code to
+ update it properly.
+ [c422cc514b80]
+
+2013-04-15 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: add the ability to easily bypass some tests
+ [bd316d5a9edc]
+
+ * source/test/filterharness.cpp, source/test/testbench.cpp:
+ testbench: GCC compilation fixes
+ [d5e4ce5c651d]
+
+ * source/test/CMakeLists.txt, source/test/filterharness.cpp,
+ source/test/filterharness.h, source/test/mbdstharness.cpp,
+ source/test/mbdstharness.h, source/test/pixelharness.cpp,
+ source/test/pixelharness.h, source/test/testbench.cpp,
+ source/test/testharness.h, source/test/timer.cpp:
+ testbench: split into classes that know how to test each primitive
+ type
+ [d72521706de8]
+
+ * source/test/testbench.cpp:
+ testbench: remove unused defines
+ [0eb7444ebf8a]
+
+ * source/test/testbench.cpp:
+ testbench: don't forget to test the detected CPUID
+ [878233d4bcc9]
+
+ * source/test/testbench.cpp:
+ less cargo-cult programming please
+
+ checkasm used BENCH_ALIGNS to over-allocate the buffers then fix the
+ alignment We're just over-allocating buffers
+ [de3741f6a1af]
+
+ * source/test/testbench.cpp:
+ testbench: tune iterations to primitive type so test finishes in 60
+ seconds
+ [5206b476c65e]
+
+ * source/test/testbench.cpp:
+ testbench: fix bugs exposed by GCC warnings
+
+ t_size was being used as a global by two different primitives, and
+ then defined locally by one of them.
+ [06cbe8719bfa]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: use aligned loads for 8 and 16 wide SAD 14% improvement
+
+ Using this optimization before the other loop optimizations hid the
+ benefits of reducing the pipeline stalls. 350->300ms for 16x16
+ testbench (many) iterations
+ [7f9b889ce129]
+
+ * source/test/testbench.cpp:
+ testbench: check primitive accuracy on all SIMD architectures
+
+ Measure performance only once, with the most optimized primitives
+ available
+ [9b4729fe6825]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: optimize 4 pixel wide SAD
+
+ Now 4x faster than the C version. We accumulate 8 values then
+ discard half at the end.
+ [4d0aa20b3fb8]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: further optimize multiples of 16 wide SAD
+ [b3b7dc98a6ba]
+
+ * source/test/testbench.cpp:
+ testbench: use a pseudo-random seed
+ [f323471e8eaf]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: use lower case var named
+ [4161c1c2d852]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: collect SAD sums in vectors, do horizontal_add_x only at end
+
+ The gives at least a 2X speedup. Many SAD functions are now 10x
+ faster than the C primitives.
+ [98af7878ab54]
+
+ * source/VectorClass/vectori128.h, source/encoder/vec/macroblock.inc:
+ inversedst: use blend8s to generate outputs 30% faster
+ [b1c604dac752]
+
+ * source/encoder/vec/sse2.cpp, source/encoder/vec/sse3.cpp,
+ source/encoder/vec/ssse3.cpp:
+ vectorized: correct the INSTRSET values for SSE2, SSE3, and SSSE3
+ [a4d6b0f5c3c6]
+
+2013-04-15 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [9a0056333a34]
+
+2013-04-15 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * source/test/testbench.cpp:
+ Used more meaningful variable names
+ [bc80f481a448]
+
+ * source/test/testbench.cpp:
+ Implemented init/clean function for filter testbench.
+ [cce1fa50f3ff]
+
+ * source/test/testbench.cpp:
+ Print a more meaningful message - replace %d value with a meaningful
+ string showing the filter configuration.
+ [96d57ac3598b]
+
+2013-04-15 Deepthi <Deepthi>
+
+ * source/encoder/vec/pixel.inc:
+ Reverting aligned loads in pixel.inc - caused crash. This needs more
+ research
+ [b5f1f4eef5ae]
+
+2013-04-14 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp:
+ cleanup TComInterpolationFilter.cpp
+ [a230019cf137]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp, source/encoder/vec/pixel.inc:
+ change order of arguments to SATD primitives to match x264 assembly
+
+ x264 assembly code wants fenc, fencstride, fref, frefstride. fenc is
+ assumed to be aligned by the block size.
+ [ce3635066069]
+
+ * source/encoder/vec/pixel.inc, source/test/testbench.cpp:
+ pixel: use aligned loads for piOrg (encoded block), enable sad_4
+
+ vectorized sad_4 is now just a little bit faster than the C version.
+ [c8333b3c1536]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ change order of arguments to SAD primitives to match x264 assembly
+
+ x264 assembly code wants fenc, fencstride, fref, frefstride. fenc is
+ assumed to be aligned by the block size.
+ [03dbce445e13]
+
+ * source/Lib/config.cpp:
+ unfortunately the FrameN options are currently necessary
+ [db32d5905f73]
+
+ * source/Lib/config.cpp:
+ nuke the --FrameN command line options
+
+ These make the command line help really annoying
+ [6ac0c6263ad4]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: add sad_4, but do not use it for now
+
+ When memory alignment is considered, it may be faster than the C
+ primitive
+ [c8a89155a025]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: add 16-wide vector SAD, instantiate all but 4x
+ implementations
+ [781034812b77]
+
+ * source/encoder/pixel.cpp:
+ pixel: add C SAD partitions sized 64
+ [18d7c9ec18c8]
+
+2013-04-13 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/testbench.cpp:
+ backout bitdepth argument changes, the HM does not operate this way
+ yet
+
+ The HM allows you to encode 8 bit pixels with HIGH_BIT_DEPTH
+ enabled, so we cannot assume the bit depth is 10 just because
+ HIGH_BIT_DEPTH is enabled.
+
+ However, the test bench should always test 10 bit pixels in that
+ config.
+ [9d49396e32b0]
+
+2013-04-13 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/macroblock.h,
+ source/encoder/primitives.h, source/encoder/vec/macroblock.inc,
+ source/test/testbench.cpp, source/test/unittest.h:
+ Updated the source as per the comments from Steve.
+ * Unit test for filter improved.
+ * bitDepth taken as a MACRO
+ * Moved #define to respective cpp files
+ * Remove unnecessary lines
+ * Names added to copyright headers
+ [c83ff08514ca]
+
+2013-04-13 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [fe804dbed45e]
+
+2013-04-12 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.h, source/encoder/vec/macroblock.inc,
+ source/test/testbench.cpp, source/test/unittest.h:
+ vectorization of filter<8,0,...> stage 1 Added testbench support
+ [cdb296338769]
+
+2013-04-13 Deepthi <Deepthi>
+
+ * source/encoder/macroblock.cpp:
+ Removing implicit-type conversion warnings.
+ [848bb2845b01]
+
+2013-04-12 Steve Borho <steve@borho.org>
+
+ * source/encoder/macroblock.cpp:
+ macroblock: remove pixel typecasts, since block is now a Short*
+ [9eb88e4e0d10]
+
+2013-04-13 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/threadpool.cpp:
+ threadpool: Fix incorrect memory deallocation.
+
+ The in-place buffer is an array.
+ [5aaee38ecab2]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: Fix incorrect use of &= operator.
+ [fe63fd1ba96a]
+
+2013-04-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Merge
+ [98452862003d]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: fix VC9 compile
+ [9fce3c13f7f8]
+
+2013-04-12 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Replacing primitive call in xHADs8 and xHADs
+ [36d7b00b1262]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Replacing primitive call in xHads4
+ [cd58cb707516]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Fixing final scaling in sad primitives; disabling satd primitives.
+ [a14a67418620]
+
+2013-04-12 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ tabs to spaces
+ [6b21dab6629d]
+
+2013-04-12 Deepthi <Deepthi>
+
+ * Merge
+ [9193471ef54e]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Replacing original inversedst with primitives
+ [67404b0825e3]
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc, source/test/testbench.cpp:
+ Changing inversedst primitives parameters from pixel to short
+ [beb412d2232f]
+
+2013-04-11 Steve Borho <steve@borho.org>
+
+ * source/test/testpool.cpp:
+ testpool: use fflush() on stdout
+ [f3ba46f293db]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: wait for threads to quiesce before shutting them down
+ [10746baf67fd]
+
+ * source/test/testpool.cpp:
+ testpool: ensure MD5Frame is freed before pool
+ [4749a6ab37f9]
+
+ * source/encoder/threading.cpp, source/encoder/threading.h:
+ threading: build fixes for linux, more error checking
+ [985af075a732]
+
+ * source/test/testpool.cpp:
+ testpool: add indication of thread pool size
+ [c20e695593ed]
+
+ * source/encoder/threading.h, source/encoder/threadpool.cpp,
+ source/test/testpool.cpp:
+ threadpool: use counting semaphore on POSIX, single wake event, lock
+ for eol
+
+ To avoid race hazards at the end of each row, a row deciding to quit
+ because it is block needs to block out the row above it that might
+ be trying to exit. The is only ever between two threads, so
+ hopefully it is low-contention.
+
+ This patch also goes back to a blocking wait when idle, to save
+ power.
+
+ Note: the test does not currently pass. there is still a data hazard
+ to be addressed.
+ [87d026d4cced]
+
+2013-04-11 Deepthi <Deepthi>
+
+ * source/test/testbench.cpp:
+ Increase iteration count for better measurements
+ [27c82c220aa9]
+
+2013-04-11 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/macroblock.cpp:
+ macroblock: Fix the path in an #include.
+
+ Use / instead of \ to remain portable to Windows and Linux.
+ [e47f5284eed3]
+
+ * source/Lib/TLibVideoIO/TVideoIOY4m.cpp:
+ y4m: Fix missing math header include for function ceil().
+
+ We probably also need to add linking to the math library.
+ [9092312686da]
+
+2013-04-11 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in ggopu/gopu_x265 (pull request #57)
+
+ Fixed the issue for inversedst and malloc issue
+ [4e62c71ed307]
+
+2013-04-11 ggopu <ggopu>
+
+ * source/test/testbench.cpp:
+ Fixed the issue for inversedst and malloc issue
+ [510d32f9a7ec]
+
+2013-04-11 sumalatha <sumalatha>
+
+ * source/Lib/encoder.cpp:
+ The code was crashing when the reconstructed filename is not given
+ in the cfg file. Fixed it in this version. The fix was like in the
+ xCreateLib(), the reconstructed file is opened based on the flag
+ "m_pchReconFile"(this flag is set when the recon filename is given
+ in cfg), but in xDestroyLib(), the recon file is closed always, so
+ have included the check like close the file only when the
+ m_pchReconFile is set.
+ [a21280198bad]
+
+2013-04-11 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Filter coefficients should always be const short* (irrespective of
+ bitdepth)
+ [4c4119d136fa]
+
+ * source/test/testbench.cpp:
+ Comments for direction
+ [e1e522b2a01e]
+
+2013-04-10 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in sumalatha/xhevc_sumalatha (pull request #54)
+
+ support for y4m files(skipping the frame headers at each frame)
+ [a4ea6dec3a3a]
+
+2013-04-10 sumalatha <sumalatha>
+
+ * source/Lib/TLibVideoIO/TVideoIO.h,
+ source/Lib/TLibVideoIO/TVideoIOY4m.cpp,
+ source/Lib/TLibVideoIO/TVideoIOY4m.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h, source/Lib/config.cpp,
+ source/Lib/config.h, source/Lib/encoder.cpp, source/Lib/encoder.h:
+ added support for y4m files (like skipping the plain-text frame
+ headers present in each frame)
+ [5acc3f79f938]
+
+2013-04-10 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [72bd9b78bfef]
+
+ * source/encoder/vec/macroblock.inc:
+ Merged multicoreware/xhevc into default
+ [1b339b28b04a]
+
+2013-04-09 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [c682e0de3aa0]
+
+2013-04-08 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/encoder/vec/macroblock.inc, source/encoder/vec/pixel.inc,
+ source/encoder/vec/vecprimitives.inc:
+ Merged multicoreware/xhevc into default
+ [d0031331b9c7]
+
+2013-04-08 sumalatha <sumalatha>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Deleted this file to remove merge conflict
+ [697eee51787c]
+
+2013-04-05 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp, source/encoder/vec/pixel.inc:
+ Merged multicoreware/xhevc into default
+ [321cb189ce36]
+
+2013-04-04 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/encoder/vec/pixel.inc, source/test/TestBench.cpp,
+ source/test/UnitTest.cpp, source/test/UnitTest.h:
+ Merged multicoreware/xhevc into default
+ [6993599a77b4]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/VectorClass/dispatch_example.cpp,
+ source/encoder/TComRdCost_SSE.cpp,
+ source/encoder/vec/macroblock.inc, source/encoder/vec/pixel.inc,
+ source/encoder/vec/vecprimitives.inc:
+ Merged multicoreware/xhevc into default
+ [b9716716f21a]
+
+2013-04-04 sumalatha <sumalatha>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/encoder/TComRdCost_SSE.cpp,
+ source/encoder/vec/vecprimitives.inc:
+ Backed out changeset: 914f5238a7df
+ [9646554f4779]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Backed out changeset: 850f67a0d4be
+ [933d82869b8c]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Backed out changeset: 11f514fc3415
+ [44be5efc13ac]
+
+2013-04-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ made changes to remove merge conflicts
+ [11f514fc3415]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ made changes to remove the merge conflict
+ [850f67a0d4be]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/encoder/TComRdCost_SSE.cpp,
+ source/encoder/vec/vecprimitives.inc:
+ moved the "xCalcHADs8x8()" from TComRdCost_SSE.cpp to
+ vecprimitives.in
+ [914f5238a7df]
+
+2013-04-10 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in ggopu/gopu_x265 (pull request #55)
+
+ Created the New script for Regression testing
+ [f7c677c40e17]
+
+2013-04-10 ggopu <ggopu>
+
+ * build/RegressionTester.bat, build/config.txt:
+ Created the New script for Regression testing
+ [b5f0f40fb40e]
+
+2013-04-10 Deepthi <Deepthi>
+
+ * source/test/testbench.cpp:
+ Cleanup
+ [f3273ba48335]
+
+ * source/test/testbench.cpp:
+ Cleanup of cycle count measurement
+ [0018c423de94]
+
+ * source/test/testbench.cpp:
+ Disable cycle count. Separate mbdst testing into init_buffer,
+ checkprimitive and clearbuffer.
+ [6d16557c9e11]
+
+ * source/test/testbench.cpp:
+ Buffer handling separated. pixelcmp buffers stay global for now.
+ [454fe1e43fb6]
+
+ * source/test/testbench.cpp:
+ More global vars removed
+ [b05c7182c446]
+
+ * source/test/testbench.cpp:
+ Removing unnecessary global variables
+ [a76a6109a7ff]
+
+ * source/test/testbench.cpp:
+ Replace delete with free.
+ [08757a371067]
+
+2013-04-10 Deepthi Devaki <Deepthi Devaki>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Used array of function pointers for filter primitives. Added C
+ primitives for filter_nonvertical.
+ [66f39285c340]
+
+2013-04-10 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [9e59fba57f1b]
+
+2013-04-10 praveentiwari <praveentiwari>
+
+ * source/encoder/macroblock.cpp:
+ Fixed fastInverseDst function in encoder primitive file by adding
+ the missing line
+ [2bb7cf3d86c1]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Added missing line in fastInverseDst function
+ [5008d1bf6cd2]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Removed last calculation in fastInverseDst function
+ [f959a6b66cba]
+
+2013-04-10 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: give an indication of pixel size in test bench
+ [306defc44548]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ TComRdCost: fix handling of iSubShift
+
+ When iSubShift was 1, the strides were already being doubled. We
+ just needed to halve the rows and run the matching primitive. Also,
+ the subpel functions were checking for iStep == 0, but xCalcHADs8x8
+ was asserting the value to be 1. So it was never calling our satd
+ performance primitives.
+ [a95d907ee411]
+
+2013-04-09 Deepthi <Deepthi>
+
+ * source/test/testbench.cpp:
+ Fix memory leak in testbench
+ [1dcb29da96d6]
+
+2013-04-09 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: fix warnings and errors when compiled with GCC
+ [17d58d88ae09]
+
+ * source/Lib/TLibCommon/CommonDef.h,
+ source/VectorClass/instrset_detect.cpp:
+ more Linux Intel compiler fixes
+ [25f7ecb0aaee]
+
+ * source/Lib/TLibCommon/CommonDef.h:
+ Prevent multiple NVM_COMPILEDBY definitions
+ [a344a1fabb0c]
+
+ * source/CMakeLists.txt:
+ cmake: use CXX env var, which is not a full path
+ [7c1b5e9245c2]
+
+ * source/CMakeLists.txt:
+ cmake: treat Intel C++ compiler on Linux as gcc
+ [aceaa0fb013d]
+
+ * source/encoder/vec/macroblock.inc, source/test/testbench.cpp:
+ nit cleanups
+ [bfcb3bfff0f0]
+
+2013-04-09 Deepthi <Deepthi>
+
+ * source/test/testbench.cpp:
+ Adding to-do list
+ [0cc3ada11beb]
+
+ * source/test/testbench.cpp:
+ Removing redundant function
+ [261e9c67faa6]
+
+ * source/test/testbench.cpp:
+ Clearer error message
+ [cc9e92334c63]
+
+ * source/test/testbench.cpp:
+ Renaming check_*_primitive functions.
+ [b3b4c099ab8c]
+
+2013-04-09 ggopu <ggopu>
+
+ * source/test/testbench.cpp:
+ Added IntraDct check
+ [23a010c31203]
+
+2013-04-09 https://mandarmcw <https://mandarmcw@bitbucket.org/mandarmcw/xhevc_mandar1>
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Modified Filter<8.0,..> functions as per the comments
+ [d0f96efda047]
+
+2013-04-08 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: call Setup_Assembly_Primitives() to setup assembly
+ primitives
+ [a1e16c2c4e39]
+
+ * source/test/testbench.cpp:
+ testbench: fix a compiler warning, add notice of which primitives
+ are testing
+ [3b0549756509]
+
+ * source/test/testbench.cpp:
+ testbench: use single pixelcmp test function, tighten up output
+ logging
+ [52836d9667ac]
+
+ * source/cmake/FindHg.cmake:
+ cmake: backout FindHg.cmake, it only causes further problems
+ [725f3a534139]
+
+ * source/cmake/FindHg.cmake, source/cmake/version.cmake:
+ cmake: add FindHg.cmake to our repo, only very recent cmake versions
+ have it
+
+ and fix case-sensitivity issue
+ [9bbaca4f9d79]
+
+2013-04-08 ggopu <ggopu>
+
+ * source/test/testbench.cpp:
+ Included comment to specify the source of code snippet
+ [3191e8a2d66e]
+
+ * source/test/testbench.cpp:
+ Implemented the Cycle testing
+ [37ad4814764e]
+
+2013-04-07 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: disable ASM compilation for non-GCC compilers until a
+ workaround is found
+ [399977f3a6ec]
+
+ * source/cmake/CMakeASM_YASMInformation.cmake:
+ cmake: use ASM_DIALECT consistently in
+ CMakeASM_YASMInformation.cmake
+ [584c490b9274]
+
+ * build/nmake/make-solutions.bat:
+ cmake: add a VC11 nmake batch file, to test ASM builds
+ [df3e9810d7a2]
+
+ * source/test/testbench.cpp:
+ testbench: fix a couple of bugs
+ [202fe2157dd3]
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: rename primitive variables so they are listed together in
+ cmake-gui
+ [0c0b08a9373f]
+
+ * source/cmake/version.cmake:
+ cmake: add version detection support for hg archives
+ [aa2c04b65976]
+
+ * source/CMakeLists.txt, source/cmake/version.cmake:
+ cmake: move version detection into cmake/version.cmake
+ [00d01d23e853]
+
+ * source/encoder/CMakeLists.txt, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/vec/CMakeLists.txt,
+ source/encoder/vec/vec-primitives.cpp,
+ source/encoder/x86/CMakeLists.txt, source/encoder/x86/asm-
+ primitives.cpp, source/test/testbench.cpp:
+ Move primitive setup functions closer to their implementations
+ [c8563d2c4612]
+
+ * source/cmake/CMakeASM_YASMInformation.cmake,
+ source/cmake/CMakeDetermineASM_YASMCompiler.cmake,
+ source/cmake/CMakeTestASM_YASMCompiler.cmake:
+ cmake: add yasm compilation ability
+ [e4b548bbe391]
+
+ * source/CMakeLists.txt, source/cmake/FindYasm.cmake:
+ cmake: introduce a cmake/ folder, add a package to find a yasm
+ assembler
+ [6f2940ddc545]
+
+ * source/encoder/x86/util.h:
+ remove x264's utils.h, it has inline assembly we cannot use
+
+ And the functions implemented are not obviously applicable to HEVC
+ [cd85d3840279]
+
+2013-04-06 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt,
+ source/encoder/primitives.cpp, source/encoder/x86/CMakeLists.txt,
+ source/encoder/x86/pixel-32.asm, source/encoder/x86/pixel-a.asm,
+ source/encoder/x86/pixel.h, source/encoder/x86/util.h,
+ source/encoder/x86/x86inc.asm, source/encoder/x86/x86util.asm,
+ source/test/CMakeLists.txt, source/test/testbench.cpp,
+ source/test/unittest.cpp:
+ cmake: begin to add plumbing for assembly language primitives
+
+ This changeset makes the vectorized primitives a build option,
+ seperate from the C primitives and ASM primitives.
+ [0704a16139c0]
+
+ * source/CMakeLists.txt:
+ cmake: improve version detection logic from revision control
+ [e59bb7a0d173]
+
+ * source/CMakeLists.txt:
+ cmake: multithreaded make does not appear to work; gmake users
+ should use -j4
+ [33b9731a501c]
+
+2013-04-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt, source/encoder/TComRdCost_SSE.cpp:
+ remove TComRdCost_SSE.cpp
+ [ca197e22abff]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: show the GPL license file in Visual Studio in the x265
+ project
+ [365967021bb4]
+
+ * source/test/unittest.cpp:
+ unittest: fix pixel variable shadowing type name from primitives.h
+
+ Only broke the GCC build
+ [5191e30d92cc]
+
+ * source/CMakeLists.txt, source/compat/msvc/getopt.c,
+ source/compat/msvc/getopt.h:
+ add GNU getopt library from glibc for argument parsing
+
+ Will replace all of TAppCommon and allow us to use getopt() style
+ argument parsing on all platforms.
+ [06c29bb43ee0]
+
+ * source/CMakeLists.txt, source/x265main.cpp:
+ cmake: compile a version number from Mercurial into x265-cli.exe
+
+ The version number is only updated when cmake is run, so if you care
+ about the version number you should trigger a cmake update by
+ touching a cmake file (or building from a clean repository)
+ [c1924f5ca686]
+
+ * source/encoder/macroblock.cpp:
+ comment cleanups in macroblock.cpp
+ [65329bd984d3]
+
+ * source/encoder/vec/pixel.inc:
+ pixel: add 16x16 and 32x32 vectorized SAD functions
+ [f153e4a050c6]
+
+2013-04-05 Deepthi Devaki <Deepthi Devaki>
+
+ * Merge
+ [ffb382a731cb]
+
+ * source/encoder/vec/pixel.inc:
+ Uncrustified pixel.inc after changing sa8d_8x8
+ [961f8617fa0a]
+
+ * source/encoder/vec/pixel.inc:
+ Backed out changeset: dc9cf177f0d9
+ [7fdb843fbcc9]
+
+ * source/encoder/vec/pixel.inc:
+ Uncrustified pixel.inc after changing sa8d_8x8
+ [dc9cf177f0d9]
+
+2013-04-05 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [6de9d7e911b6]
+
+2013-04-05 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/pixel.inc:
+ Fixed overflow issue when 10 bit pixels are used in vec-sa8d_8x8
+ [ad257e35e970]
+
+ * source/encoder/vec/pixel.inc:
+ Backed out changeset: b39276d2ef19
+ [e19c604a0505]
+
+ * source/encoder/vec/pixel.inc:
+ Added cases for high bit depth = 1 and 0 in vec-sa8d_8x8 in
+ pixel.inc
+ [b39276d2ef19]
+
+2013-04-05 Deepthi <Deepthi>
+
+ * source/encoder/primitives.cpp:
+ Disabling 64-size primitives temporarily.
+ [9aaf8e56f457]
+
+ * source/encoder/primitives.cpp:
+ Fixing the partition array for 64.
+ [05df015ff6f4]
+
+ * source/encoder/primitives.cpp:
+ Rollback: to 8x8 matrix
+ [1b099c5ad876]
+
+ * source/encoder/primitives.cpp:
+ Rollback: 64 expands the array heavily.
+ [fdad810f7948]
+
+ * source/encoder/primitives.cpp:
+ Width and height permitted to be > 32
+ [9d01406efb58]
+
+ * Merge
+ [315488d4f4b7]
+
+ * source/encoder/primitives.cpp:
+ Expanding the psize static array to 64.
+ [0108af4ff636]
+
+ * source/encoder/primitives.h:
+ Expanding Partitions enum
+ [49f2265daf5a]
+
+ * Merge
+ [7281801c55a0]
+
+ * source/Lib/TLibCommon/TComPrediction.cpp:
+ Temporary array to match Pel
+ [7d1889dce383]
+
+ * source/Lib/TLibCommon/TComInterpolationFilter.cpp:
+ Fix Error - matching function declaration and definition
+ [bf5df7838588]
+
+2013-04-05 Steve Borho <steve@borho.org>
+
+ * source/encoder/macroblock.cpp:
+ fix implicit integer type conversions in macroblock.cpp
+ [0d3b1caacadf]
+
+ * source/x265main.cpp:
+ fix build error in x265main.cpp
+ [76e4a2d6a8ba]
+
+2013-04-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/primitives.cpp, source/x265main.cpp:
+ rewrite main(), add code that describes detected CPU type and other
+ info
+ [5c55457268e2]
+
+2013-04-05 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TypeDef.h, source/encoder/macroblock.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Cleaned up the files checked in for modified encoder performance
+ primitive for fastinversedst.
+ [ba79f2fbc467]
+
+ * source/encoder/TComTrQuant_SSE.cpp:
+ Removed as it is no longer needed.
+ [7ca0466b0cd6]
+
+2013-04-04 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [6a6d1c7492dc]
+
+ * Merged multicoreware/xhevc into default
+ [9ebdc2159a69]
+
+ * source/encoder/primitives.h, source/encoder/vec/pixel.inc:
+ Merged multicoreware/xhevc into default
+ [f582f89a4cad]
+
+2013-04-04 praveentiwari <praveentiwari>
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.h,
+ source/encoder/vec/macroblock.inc:
+ Modified encoder performance primitive for fastinversedst
+ [044cf66c07ba]
+
+2013-04-04 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [067fdd3b2787]
+
+ * source/encoder/vec/macroblock.inc, source/encoder/vec/pixel.inc,
+ source/encoder/vec/vecprimitives.inc, source/test/TestBench.cpp,
+ source/test/UnitTest.cpp, source/test/UnitTest.h:
+ Merged multicoreware/xhevc into default
+ [b6dcf4d300cd]
+
+2013-04-04 praveentiwari <praveentiwari>
+
+ * source/encoder/vec/pixel.inc:
+ resolving merge conflict with pixel.inc
+ [0b5baa981f79]
+
+ * source/Lib/TLibCommon/TypeDef.h, source/encoder/vec/macroblock.inc,
+ source/encoder/vec/pixel.inc:
+ resolving merge conflicts with pixel.inc and macroblock.inc
+ [205ece1b25c4]
+
+ * source/encoder/vec/vecprimitives.inc:
+ second attempt to resolve merge conflict
+ [6107601bfd02]
+
+ * source/encoder/vec/vecprimitives.inc:
+ solving merge conflict with vecprimitives.inc
+ [3706ae74ae2f]
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/vec/vecprimitives.inc:
+ Encoder Performance Primitive fastInverseDst
+ [ad754aa34a5b]
+
+ * source/encoder/primitives.h:
+ Added a cdecl funcdef to primitives.h and function pointer to
+ EncoderPrimitives structure
+ [79f25cc12b0f]
+
+2013-04-03 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/VectorClass/dispatch_example.cpp,
+ source/encoder/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [19bbb70cf090]
+
+2013-04-04 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ Solving merge conflict with TComTrQuant.cpp file
+ [30e4df5a4552]
+
+2013-04-03 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [6e07d4ecd02e]
+
+2013-04-03 praveentiwari <praveentiwari>
+
+ * source/encoder/CMakeLists.txt:
+ Second attempt to solve merge conflict
+ [305d19e49341]
+
+ * source/encoder/CMakeLists.txt:
+ solving merge conflict with CMakeLists.txt
+ [d69a08ec93b4]
+
+ * cfg/per-sequence/BasketballPass.cfg:
+ Backed out changeset: 1801be94c033
+ [52da05be5212]
+
+ * source/encoder/CMakeLists.txt:
+ Merge Conflict
+ [aa4d052d016c]
+
+ * cfg/per-sequence/BasketballPass.cfg:
+ Merge Conflict
+ [1801be94c033]
+
+2013-04-02 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.h, source/encoder/CMakeLists.txt:
+ fastInverseDst with declarartion in TComTrQuant.h file
+ [686753ae63ac]
+
+ * source/encoder/CMakeLists.txt:
+ Solving merge conflict with CMakeLists.txt
+ [d5d198a662ee]
+
+2013-04-01 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [779f1786e667]
+
+2013-03-31 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/CMakeLists.txt, source/x265cfg.cpp, source/x265cfg.h,
+ source/x265top.cpp, source/x265top.h:
+ Merged multicoreware/xhevc into default
+ [28876bb73087]
+
+2013-03-28 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [7a2643c01212]
+
+2013-03-28 praveentiwari <praveentiwari>
+
+ * source/encoder/CMakeLists.txt:
+ Trying to resolve conflict during merge
+ [55b8785b08bb]
+
+2013-03-27 praveentiwari <praveentiwari>
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/encoder/TComTrQuant_SSE.cpp:
+ Vectorized fastInverseDst with added fastInverse decleration and
+ ENABLE_VECTOR macro
+ [8d5b58c7cf54]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/TComTrQuant_SSE.cpp:
+ Backed out changeset: 587fa81d140b
+ [b84bc6b7ba79]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/TComTrQuant_SSE.cpp:
+ Replaced Clip3 and Inhanced techniqueVectorized
+ TComTrQuant::fastInverseDst with added ENABLE_VECTOR macro
+ [587fa81d140b]
+
+2013-03-27 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [531e2bde522d]
+
+2013-03-26 praveentiwari <praveentiwari>
+
+ * source/encoder/TComTrQuant_SSE.cpp:
+ Replaced Clip3 and Inhanced technique to load data in vectorization
+ of TComTrQuant::fastInverseDst
+ [b3b9435fdb6c]
+
+2013-03-26 praveen Tiwari <praveen@multicorewareinc.com>
+
+ * source/encoder/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [225bfae48ee2]
+
+2013-03-25 praveentiwari <praveentiwari>
+
+ * source/encoder/TComTrQuant_SSE.cpp:
+ Vectorized code for TComTrQuant::fastInverseDst
+ [14dab7ea86d5]
+
+ * source/encoder/CMakeLists.txt:
+ Modified CMakeLists.txt for TComTrQuant_SSE.cpp
+ [3a4b0271c907]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/CMakeLists.txt:
+ Backed out changeset: aa84b30cd9ae
+ [297daf59f4e7]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/encoder/CMakeLists.txt:
+ Modified CMakeLists.txt for TComTrQuant.cpp
+ [aa84b30cd9ae]
+
+ * source/Lib/TLibCommon/TComTrQuant.cpp:
+ First attempt to vectorize
+ [efdab4e67252]
+
+2013-04-04 Steve Borho <steve@borho.org>
+
+ * source/test/testbench.cpp:
+ testbench: add remaining pixel functions
+ [a7b9fc5161dc]
+
+ * source/test/testbench.cpp:
+ testbench: use a for() loop, rename numofprim to curpar
+ [084eea175be7]
+
+ * source/test/testbench.cpp:
+ testbench: combine loops
+ [f139817f864a]
+
+ * source/test/testbench.cpp, source/test/unittest.cpp,
+ source/test/unittest.h:
+ testbench: remove redundant partition enum, clean unittest.h
+
+ Headers should #include only the minimal number of headers required
+ to ensure their own data types are defined. They should also not use
+ "using namespace", only CPP files should use those statements.
+ [16de12763457]
+
+ * source/test/testbench.cpp:
+ testbench: more flexible argument parsing
+ [11cd8cf25ae1]
+
+ * source/test/testbench.cpp:
+ testbench: remove unused do_bench
+ [7b6028c5e509]
+
+ * source/test/testbench.cpp:
+ testbench: allow cpuid to be user-provided
+ [2df55ead8fe4]
+
+ * source/test/testbench.cpp:
+ pass primitive function tables to validate to the check* functions
+ [6473652ab8da]
+
+ * source/test/testbench.cpp:
+ testbench: fix typos in comments, remove unused global var
+ [380aa78e70ae]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ xCalcHADs8x8 should call sa8d_8x8, remove satd calls from similar
+ functions
+
+ xCalcHADs16x4() and xCalcHADs4x16() would both need sa8d primitives
+ [1a2ac116b26c]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h,
+ source/encoder/vec/pixel.inc:
+ primitives: add sa8d_8x8 and sa8d_16x16 primitives
+
+ I copied C references for those functions from x264, and renamed
+ satd_8x8 in pixel.inc to sa8d_8x8 since that is what it implements.
+ [6b67af80a1f4]
+
+2013-04-04 ggopu <ggopu>
+
+ * source/test/testbench.cpp, source/test/unittest.cpp,
+ source/test/unittest.h:
+ Added header and removed unwanted variable and comments
+ [76e096fbd6bf]
+
+ * doc/UnitTestUsage.txt, source/test/testbench.cpp:
+ Added Test bench usage Doc and Included the Single primitive check
+ and Fixed all the Warning in test bench
+ [cfa472c6afd5]
+
+2013-04-04 Gopu G <gopu@multicorewareinc.com>
+
+ * source/test/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [a373f73d422a]
+
+2013-04-04 ggopu <ggopu>
+
+ * source/test/CMakeLists.txt:
+ solved conflict issue
+ [df3b82e6640f]
+
+ * source/test/CMakeLists.txt:
+ Disabled warnings for testbench
+ [b7adfdf47dbe]
+
+ * doc/UnitTestUsage.txt:
+ Added Doc for UnitTest Usage
+ [f9a1d53c7703]
+
+ * source/test/testbench.cpp:
+ Added Single primitive check
+ [765992ddceb1]
+
+2013-04-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/pixel.inc:
+ uncrustify: fix eoln damage in pixel.inc
+ [a6a4ecc9d93c]
+
+2013-04-04 Deepthi <Deepthi>
+
+ * Merge
+ [e07bb748be27]
+
+ * source/encoder/vec/pixel.inc:
+ Removing shadows/redeclarations
+ [ff75a4f2a134]
+
+2013-04-04 Steve Borho <steve@borho.org>
+
+ * source/test/CMakeLists.txt:
+ cmake: rename thread pool test to PoolTest
+ [b79778a2a241]
+
+ * source/test/CMakeLists.txt:
+ cmake: fix case of test bench filenames
+ [8801f4346870]
+
+2013-04-04 nandaku2 <deepthi@multicorewareinc.com>
+
+ * source/test/unittest.CPP:
+ Merged in ggopu/gopu_x265 (pull request #33)
+
+ file name extension issue fixed
+ [4449194c1d02]
+
+2013-04-04 ggopu <ggopu>
+
+ * source/test/unittest.CPP, source/test/unittest.cpp:
+ File name Extension issue fixed
+ [350b345eff63]
+
+2013-04-04 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #32)
+
+ Added vectorized satd_8x8 to pixel.inc
+ [7e51f92d13e8]
+
+2013-04-04 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/pixel.inc:
+ Added vectorized satd_8x8 to pixel.inc
+ [349f2249ec7d]
+
+2013-04-04 nandaku2 <deepthi@multicorewareinc.com>
+
+ * source/test/TestBench.cpp, source/test/UnitTest.cpp,
+ source/test/UnitTest.h:
+ Merged in ggopu/gopu_x265 (pull request #31)
+
+ changed the file name conversion and added comparision for c and
+ vector primitives
+ [4abb704ac3ba]
+
+2013-04-04 ggopu <ggopu>
+
+ * source/test/TestBench.cpp, source/test/UnitTest.cpp,
+ source/test/UnitTest.h, source/test/testbench.cpp,
+ source/test/unittest.CPP, source/test/unittest.h:
+ Changed file name conversion and included the c and vector primitive
+ comparision check
+ [3101b15fba69]
+
+2013-04-03 Gopu G <gopu@multicorewareinc.com>
+
+ * source/VectorClass/dispatch_example.cpp, source/test/TestBench.cpp:
+ Merged multicoreware/xhevc into default
+ [809027331954]
+
+2013-04-03 ggopu <ggopu>
+
+ * source/test/TestBench.cpp:
+ conflict error
+ [3adf277f27b9]
+
+ * source/test/TestBench.cpp:
+ resolved conflict error
+ [8089151317d8]
+
+ * source/test/TestBench.cpp:
+ solved conflict error
+ [8bd75c20c1be]
+
+ * source/test/TestBench.cpp:
+ resolved conflict error
+ [3e19d1cb4d37]
+
+2013-04-03 Gopu G <gopu@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [50f85e140aac]
+
+2013-04-02 Gopu G <gopu@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [181970e99874]
+
+2013-04-02 ggopu <ggopu>
+
+ * source/test/TestBench.cpp:
+ Enhanced test bench for satd*x*
+ [8659ad7e9457]
+
+2013-04-01 Gopu G <gopu@multicorewareinc.com>
+
+ * source/test/TestBench.cpp, source/x265cfg.cpp, source/x265cfg.h,
+ source/x265top.cpp, source/x265top.h:
+ Merged multicoreware/xhevc into default
+ [7900bd4aedb5]
+
+2013-04-01 ggopu <ggopu>
+
+ * source/test/TestBench.cpp:
+ Resolved the Conflict Error
+ [7d97e00d4fdf]
+
+ * source/test/TestBench.cpp:
+ Resolved conflict
+ [f085c786246b]
+
+2013-03-28 ggopu <ggopu>
+
+ * source/test/TestBench.cpp:
+ included test functions like pixelcmp
+ [585c75f7107a]
+
+2013-04-04 Steve Borho <steve@borho.org>
+
+ * source/encoder/vec/CMakeLists.txt,
+ source/encoder/vec/macroblock.inc, source/encoder/vec/pixel.inc,
+ source/encoder/vec/vecprimitives.inc:
+ break vecprimitives.inc into multiple headers
+ [462b9403a0bf]
+
+2013-04-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/macroblock.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h:
+ make an empty shell for macroblock.cpp
+ [732999829240]
+
+ * source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibEncoder/TEncPreanalyzer.cpp:
+ uncrustify: fixup some code where uncrustify thought it saw
+ templates
+
+ x<foo>> 1 was converted to x<foo> > 1 instead of x < (foo>>1). I
+ added parens to avoid this abiguity.
+ [7595da33f0f2]
+
+ * source/encoder/macroblock.cpp:
+ change macroblock.cpp to unix eoln
+ [70861c21adc1]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ Merge
+ [e94d0b91c049]
+
+2013-04-04 Deepthi <Deepthi>
+
+ * source/encoder/CMakeLists.txt:
+ cmake: add macroblock.cpp
+ [39e35d878b64]
+
+ * source/encoder/macroblock.cpp:
+ Adding new file macroblock.cpp
+ [6618a2d9f5fe]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ Move Setup_C_PixelPrimitives decl to header file
+ [689fa6d23f01]
+
+2013-04-03 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.h:
+ uncrustify: final run, fixups my hand edits
+ [d77975bfe8ec]
+
+ * source/Lib/TAppCommon/program_options_lite.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComSlice.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncCu.cpp, source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp, source/Lib/config.cpp,
+ source/Lib/encoder.cpp, source/Lib/libmd5/libmd5.c:
+ uncrustify: apply globally again
+
+ After the first pass, some of the distance thresholds are now
+ exceeded, requiring #endif comments or better wrapping. I've hand
+ edited a few spots to make them easier to read
+ [186aa91fb1c3]
+
+ * doc/uncrustify/apply-to-all-source.py:
+ uncrustify: do not apply style to VectorClass headers
+
+ They are difficult functions to align mechanically, just leave them
+ be
+ [21185b179d11]
+
+ * source/Lib/TAppCommon/program_options_lite.cpp,
+ source/Lib/TAppCommon/program_options_lite.h,
+ source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h, source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComCABACTables.cpp,
+ source/Lib/TLibCommon/TComCABACTables.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComMv.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.cpp,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncPreanalyzer.cpp,
+ source/Lib/TLibEncoder/TEncPreanalyzer.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h, source/Lib/config.cpp,
+ source/Lib/config.h, source/Lib/encoder.cpp, source/Lib/encoder.h,
+ source/Lib/libmd5/MD5.h, source/Lib/libmd5/libmd5.c,
+ source/Lib/libmd5/libmd5.h, source/PPA/ppa.cpp, source/PPA/ppa.h,
+ source/PPA/ppaApi.h, source/VectorClass/instrset.h,
+ source/VectorClass/instrset_detect.cpp,
+ source/encoder/TComRdCost_SSE.cpp, source/encoder/pixel.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/encoder/threading.cpp, source/encoder/threading.h,
+ source/encoder/threadpool.cpp, source/encoder/threadpool.h,
+ source/encoder/vec/vecprimitives.inc, source/test/TestBench.cpp,
+ source/test/UnitTest.cpp, source/test/UnitTest.h,
+ source/test/testpool.cpp:
+ uncrustify: apply globally
+ [a2054f7e2644]
+
+ * doc/uncrustify/apply-to-all-source.py, doc/uncrustify/drag-
+ uncrustify.bat:
+ uncrustify: add a drag/drop batch file for uncrustify, and apply-to-
+ all.py
+ [a737735e60a6]
+
+ * source/VectorClass/dispatch_example.cpp:
+ remove VectorClass/dispatch_example.cpp
+ [98b7425b8b1d]
+
+ * source/encoder/threading.cpp:
+ threading: do not call pthread_exit after joining a thread
+ [8333f6a4b74e]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.cpp:
+ primitives: allow for the fact that multiple C++ files will define C
+ primitives
+ [98bb68d4f9aa]
+
+ * source/VectorClass/instrset_detect.cpp:
+ instrset: prevent compiler warnings about nop function
+ [4f459b703920]
+
+ * source/encoder/pixel.cpp:
+ pixel: 4x16 and 16x4 were backwards
+ [212467c42aba]
+
+ * source/VectorClass/instrset_detect.cpp:
+ instrset: improve compiler fallbacks for xgetbv
+ [8d1a5839809a]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ remove cruft from TComRdCost_SSE.cpp
+ [9ac68e0fc2ee]
+
+ * source/encoder/vec/vecprimitives.inc:
+ astyle: cleanup vecprimitives.inc
+ [3ecb9180930e]
+
+ * Merged in deepthidevaki/xhevc_deepthid (pull request #30)
+
+ Added satd4x4 in vecprimitives.inv
+ [d17d19c2f9d6]
+
+2013-04-03 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/vec/vecprimitives.inc:
+ Added vectorized hads4x4(satd_4x4) to vecprimitive.inc
+ [ba8f928d91d6]
+
+2013-04-03 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [e9cffb400da1]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Merged multicoreware/xhevc into default
+ [b553eaec9dd7]
+
+2013-04-03 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Vectorized xCalcHADS8x8 with 16 bit operations
+ [552a75a69cb0]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Backed out changeset: e4616400a510
+ [88a6837e15b5]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Backed out changeset: e500456e0146
+ [e1ada400cd62]
+
+2013-04-03 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [9054e642786b]
+
+2013-04-02 Deepthi Devaki <Deepthi Devaki>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modifed xCalcHADS8x8 with 16bit operations.
+ [e500456e0146]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modified xCalcHADS8x8 with 16bit operations.
+ [e4616400a510]
+
+2013-04-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/threadpool.cpp:
+ threadpool: use InterlockedCompareExchange64
+ [74715f9955e9]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ rename cpuIDDetect to CpuIDDetect, to follow convention of
+ primitives.cpp
+ [3b9f17747601]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/encoder/vec/CMakeLists.txt:
+ cmake: gcc 4.6 supports AVX, but not yet AVX2
+ [5d84ec0af006]
+
+2013-04-03 Deepthi <Deepthi>
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ Moving function declarations to the header file.
+ [329deaeea8e7]
+
+2013-04-03 Steve Borho <steve@borho.org>
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/vec/vecprimitives.inc:
+ Merge
+ [3732add09cc2]
+
+2013-04-03 Deepthi <Deepthi>
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/vec/vecprimitives.inc:
+ Changing Primitives Setup for C and vector code.
+ [c5b472d23023]
+
+2013-04-02 Deepthi <Deepthi>
+
+ * source/encoder/primitives.cpp:
+ Bug Fix for crashes in PartitionFromSizes
+ [c9dd52c5c274]
+
+2013-03-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TypeDef.h, source/encoder/TComRdCost_SSE.cpp:
+ Replace #define ENABLE_VECTOR with ENABLE_PRIMITIVES cmake option
+
+ Use x265 performance primitives. We need to profile which of the 12,
+ 24, 48, and 64 partition sizes are worth adding as primitives.
+
+ Ditto for the SSE (sum of square differences) functions.
+ [30ece3e5796f]
+
+2013-04-02 Steve Borho <steve@borho.org>
+
+ * doc/uncrustify/codingstyle.cfg:
+ uncrustify: tweak enum and struct bracing and comment margins
+ [2ce1d641581a]
+
+ * doc/uncrustify/codingstyle.cfg, source/PPA/ppaApi.h,
+ source/encoder/pixel.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/threading.cpp,
+ source/encoder/threading.h, source/encoder/threadpool.cpp,
+ source/encoder/threadpool.h, source/encoder/vec/vecprimitives.inc:
+ Prepare to use uncrustify on our encoder sources
+ [ae8c19ec7690]
+
+ * doc/uncrustify/codingstyle.cfg, doc/uncrustify/uncrustify.bat,
+ doc/uncrustify/uncrustify.exe:
+ add uncrustify and a base config
+ [0b9a400d0a1a]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: remove semicolon from macro definition
+ [a6a8378d4f32]
+
+ * source/encoder/primitives.cpp:
+ primitives: replace asserts with if() checks
+ [f833a10d6b5c]
+
+ * source/test/testpool.cpp:
+ testpool: add another assertion
+ [3b903329179e]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: correct the order of the arguments to
+ InterlockedCompareExchange()
+
+ Amusingly, it mostly worked the wrong way, except it never cleared
+ any bits, so the worker threads kept working on rows until the frame
+ dequeued itself.
+ [c3dad08b999b]
+
+ * source/test/testpool.cpp:
+ testpool: stop processing CUs on the last column
+ [e26d67716fd9]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: use the correct MSVC instrinsic for integer CAS
+ [821adc18540a]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: use atomic compare and swap when consuming rows
+
+ The GCC __sync_and_and_fetch() instrinsic was returning the new
+ value, which is entirely useless. The thread could not tell if it
+ was the one which cleared the bit. So I've switched it to a compare
+ and swap operation. Now the thread pool test runs correctly when
+ compiled with GCC
+ [b2d5a5aa7a20]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: remove redundant semicolon
+ [10e63f2bdbc1]
+
+ * source/encoder/primitives.cpp:
+ apply coding style to primitives.cpp, minor cleanups
+ [2b33261c0e61]
+
+ * source/encoder/primitives.cpp:
+ primitives: remove cruft from primitives.cpp, add compiler checks
+
+ Do not try to access vectorized architectures that we know the
+ compiler cannot generate.
+ [128a506f7cb9]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ primitives: do not include instrset.h from primitives.h
+
+ Just declare the instrset_detect() function as an extern in
+ primitives.cpp
+ [0f32be5b4fa8]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: tabs to spaces
+ [1bd0a875d97d]
+
+2013-04-02 sumalatha <sumalatha>
+
+ * source/encoder/CMakeLists.txt, source/encoder/primitives.cpp,
+ source/encoder/primitives.h:
+ 1. Included the cpu detection logic in SetupPrimitives() function.
+ 2. Changed the SetupPrimitives() function such that, based on the
+ cpuid, the corresponing vector architure and fucntions are selected
+ [d5eb4f663e29]
+
+ * source/encoder/CMakeLists.txt, source/encoder/primitives.cpp,
+ source/x265main.cpp:
+ Backed out changeset: 94aff9bad183
+ [8f33a2e2af52]
+
+ * source/encoder/cpu_detection.cpp, source/encoder/cpu_detection.h,
+ source/encoder/instrset.h, source/encoder/instrset_detect.cpp:
+ Backed out changeset: 36b4e54f54b9
+ [274955b783ac]
+
+2013-04-02 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * source/encoder/CMakeLists.txt:
+ Merged multicoreware/xhevc into default
+ [a729ebc85dd7]
+
+2013-04-01 sumalatha <sumalatha>
+
+ * source/encoder/cpu_detection.cpp, source/encoder/cpu_detection.h,
+ source/encoder/instrset.h, source/encoder/instrset_detect.cpp:
+ these files has to go with the previous checkin version(199)
+ [36b4e54f54b9]
+
+ * source/encoder/CMakeLists.txt, source/encoder/primitives.cpp,
+ source/x265main.cpp:
+ 1. Included the cpu detection logic in the main 2. Changed the
+ SetupPrimitives() function such that, based on the cpuid, the
+ corresponing vector architure and fucntions are selected
+ [94aff9bad183]
+
+2013-04-02 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt,
+ source/encoder/primitives.h:
+ cmake: x64 Linux build fixes
+ [c67a39f91e07]
+
+ * source/CMakeLists.txt:
+ cmake: provide an appopriate -march for 64bit GCC targets
+ [0c8fda784ba1]
+
+2013-04-01 Steve Borho <steve@borho.org>
+
+ * source/Lib/CMakeLists.txt, source/encoder/CMakeLists.txt,
+ source/encoder/vec/CMakeLists.txt, source/test/CMakeLists.txt:
+ cmake: use GCC variable, in lieu of CMAKE_COMPILER_IS_GNUCXX
+ [60c583f05000]
+
+ * source/CMakeLists.txt:
+ cmake: detect 64bit build, set GCC flag if GCC is detected
+
+ Both of these can be used in internal CMakeLists.txt files, to
+ improve clarity
+ [0e8858d0fb9f]
+
+2013-04-01 deepthidevaki <deepthidevaki>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modified xCalcHADS4x4 to use 16bit operations.
+ [87514f1663f3]
+
+2013-03-30 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TypeDef.h:
+ Disable DISTORTION_PRECISION_ADJUSTMENT when HIGH_BIT_DEPTH is
+ disabled.
+
+ This turns the operation into a >> 0, which any sane compiler will
+ discard.
+ [99eea17c57d6]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ add mapping function from Width x Height to Partition enum
+ [759fd1db4927]
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt,
+ source/Lib/config.cpp, source/Lib/config.h, source/Lib/encoder.cpp,
+ source/Lib/encoder.h, source/x265cfg.cpp, source/x265cfg.h,
+ source/x265main.cpp, source/x265top.cpp, source/x265top.h:
+ move top level encoder classes into Lib/ folder
+
+ The encoder should be usable as a shared library (x265.lib +
+ HM.lib). The top level class should not be part of the CLI-only
+ portion of the source.
+ [c509aabfc0a7]
+
+ * source/encoder/CMakeLists.txt:
+ remove unused set_source_files_properties
+ [2c938c6441e3]
+
+ * source/Lib/TLibEncoder/TEncCavlc.h:
+ fix VC compiler warnings (unreferenced formal parameter) in HM
+ source
+ [3df5de68dbe7]
+
+ * source/Lib/TLibCommon/TComDataCU.h:
+ fix VC compiler warnings (integer size type conversions) in HM
+ source
+ [73f1aa34c9a0]
+
+ * source/Lib/TLibCommon/ContextModel3DBuffer.h:
+ fix VC compiler warning in the HM source
+ [d6a9f964a0dc]
+
+2013-03-29 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComPicYuvMD5.cpp:
+ prevent one compile warning when HIGH_BIT_DEPTH is disabled
+ [e0b7e82b403f]
+
+ * source/encoder/vec/vecprimitives.inc:
+ add a stub 8bit vectorized primitive to prevent compile warnings
+ [cbff9e95a7cb]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h:
+ move primitives_c extern to the file(s) which define its methods
+ [ace6ed34ee4c]
+
+ * source/encoder/CMakeLists.txt, source/encoder/pixel.cpp:
+ add templated SATD functions, based on x264's macro routines
+
+ These use SWAR to do two operations in each clock cycle
+ [018408f096c4]
+
+ * source/encoder/pixel.cpp, source/encoder/primitives.h:
+ add more irregular partition sizes (we probably still need 24s)
+ [f676a5209ed7]
+
+ * source/encoder/CMakeLists.txt, source/encoder/pixel.cpp:
+ add pixel.cpp with templated sad function
+ [0f94e98ddcfa]
+
+ * source/encoder/vec/vecprimitives.inc:
+ bug fix in vecprimitives.inc
+ [aa80411df22e]
+
+ * source/encoder/vec/vecprimitives.inc:
+ declare seperate implementations of vector primitives for 8bit and
+ 16bit pels
+ [7adb3cf4ebe2]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ stub in support for C reference versions of each encoder primitive
+ [ddc4616609f6]
+
+ * source/compat/msvc/stdint.h:
+ ensure intptr_t is defined on MSVC compiles
+ [ab7e6788a2bc]
+
+ * source/encoder/primitives.h, source/encoder/vec/vecprimitives.inc:
+ compiler portable CDECL macro
+ [130b6f1555d2]
+
+ * source/PPA/ppa.cpp, source/PPA/ppa.h, source/PPA/ppaApi.h,
+ source/encoder/TComRdCost_SSE.cpp, source/encoder/primitives.cpp,
+ source/encoder/primitives.h, source/encoder/threading.cpp,
+ source/encoder/threading.h, source/encoder/threadpool.cpp,
+ source/encoder/threadpool.h, source/encoder/vec/avx.cpp,
+ source/encoder/vec/avx2.cpp, source/encoder/vec/sse2.cpp,
+ source/encoder/vec/sse3.cpp, source/encoder/vec/sse41.cpp,
+ source/encoder/vec/sse42.cpp, source/encoder/vec/ssse3.cpp,
+ source/encoder/vec/vecprimitives.inc, source/test/TestBench.cpp,
+ source/test/UnitTest.cpp, source/test/UnitTest.h,
+ source/test/testpool.cpp, source/x265cfg.cpp, source/x265cfg.h,
+ source/x265main.cpp, source/x265top.cpp, source/x265top.h:
+ apply coding style to all new code (leaving HM unmodified for the
+ moment)
+ [86b79c630261]
+
+ * doc/astyle/apply-to-all-source.py:
+ add a Python script to apply coding style globally
+ [750cd70ec32b]
+
+ * doc/astyle/drag-astyle.bat:
+ fix comment in drag-astyle.bat
+ [bae49dd4f46d]
+
+ * doc/astyle/AStyle.exe, doc/astyle/astyle-config.txt, doc/astyle
+ /drag-astyle.bat:
+ Add astyle.exe for Windows, a config file, and a handy drag-drop
+ batch file
+ [5695e621070f]
+
+ * source/x265top.cpp:
+ also take updates to x265top.cpp
+ [9096a01c31e7]
+
+ * source/Lib/TLibCommon/CommonDef.h, source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/TComRom.cpp,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h:
+ Take HM tip code (mostly cleanups)
+ [d5a4085b832a]
+
+2013-03-29 Deepthi <Deepthi>
+
+ * source/encoder/vec/vecprimitives.inc:
+ xCaldHads4x4 added as an example vector primitive.
+ [7794ab12b1b8]
+
+ * source/encoder/primitives.cpp:
+ Remove unused parameter warning
+ [f69b495d2323]
+
+2013-03-29 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/TypeDef.h,
+ source/encoder/primitives.h, source/encoder/vec/vecprimitives.inc:
+ cmake: add HIGH_BIT_DEPTH build flag, defaults to ON (previous
+ behavior)
+ [a168ba02c525]
+
+2013-03-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/threadpool.cpp:
+ threadpool: fix MinGW build again
+ [ec62c87b6a69]
+
+ * source/test/testpool.cpp:
+ testpool: show MD5 hash as 4 hex ints
+ [e78340875f4e]
+
+ * source/encoder/threadpool.cpp, source/encoder/threadpool.h:
+ threadpool: make worker threads spin so long as job providers are
+ enqueued
+
+ The idle list mechanism was buggy; threads would go idle when no
+ work was available but none would be in the idle list when a work
+ request arrived. Not sure how to fix this without locking, so
+ removing the idle list for now. All threads are awakened when job
+ providers are enqueued, and they stay active until there are no job
+ providers registered with the thread pool.
+
+ Awakening a thread multiple times should be safe; might just cause a
+ few extra loops for it to go idle later.
+ [34d48bb54077]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: remove idle thread poke when job provider is enqueued
+
+ The provider may not have work yet; and if it did it can poke the
+ pool itself
+ [ede480130c99]
+
+ * source/CMakeLists.txt:
+ add -march=i686 globally to gcc compile flags
+
+ This was required to fix MinGW link errors on Windows
+ (__sync_and_fetch*)
+ [64821a2d1dfe]
+
+ * source/test/testpool.cpp:
+ add a proper hex print for the MD5 hash
+ [9235319777da]
+
+ * source/test/UnitTest.cpp:
+ white-space cleanups in UnitTest.cpp
+ [e8052c1be059]
+
+ * source/test/CMakeLists.txt, source/test/UnitTest.cpp:
+ more MSYS fixes
+ [e87400a37651]
+
+ * source/test/CMakeLists.txt, source/test/TestBench.cpp:
+ better workaround for strdup
+ [14115a094db7]
+
+ * source/test/CMakeLists.txt, source/test/TestBench.cpp:
+ msys compilation fixes for TestBench
+ [cdb75f7b2fa7]
+
+ * source/test/CMakeLists.txt, source/test/TestBench.cpp,
+ source/test/UnitTest.cpp:
+ fix test bench compiler warnings
+ [fe55521ed24c]
+
+ * source/test/CMakeLists.txt:
+ cmake: fix case sensitivity of filenames
+ [ad7dd76dc39d]
+
+ * source/test/CMakeLists.txt:
+ cleanup source/test/CMakeLists.txt
+ [47f9ec819fe8]
+
+2013-03-25 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * build/linux/make-Makefiles.bash:
+ Build: Fix missing executable permission on the BASH script.
+ [0abab5c52e97]
+
+2013-03-28 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in ggopu/gopu_x265 (pull request #19)
+
+ Created the Test bench For Vector Premitive Functions
+ [a35abc703177]
+
+2013-03-28 ggopu <ggopu>
+
+ * source/test/CMakeLists.txt, source/test/TestBench.cpp,
+ source/test/UnitTest.cpp, source/test/UnitTest.h:
+ Created the Test bench For Vector Premitive Functions
+ [c530d6d7b14f]
+
+2013-03-29 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/threadpool.cpp:
+ threadpool: Fix missing #include for memset().
+ [5ac9ea3e104f]
+
+2013-03-28 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt, source/encoder/TComRdCost_SSE.cpp,
+ source/encoder/primitives.cpp, source/encoder/primitives.h:
+ add ALIGN_VAR macros for compiler portability
+ [98b3d54f8bf6]
+
+ * source/encoder/primitives.h:
+ primitives: use extern "C" instead of _cdecl; is more compiler
+ portable
+ [498c9bea248a]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/x265main.cpp:
+ primitives: call SetupPrimitives() before starting encoder
+ [da0d5b94edb6]
+
+ * source/CMakeLists.txt, source/encoder/primitives.cpp:
+ primitives: add ENABLE_PRIMITIVES build option, default to ON
+ [f2fa629b460b]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h,
+ source/encoder/vec/CMakeLists.txt:
+ primitives: move vectorized function table externs into CPP file
+ [24ac23d75f87]
+
+ * source/encoder/primitives.cpp, source/encoder/primitives.h:
+ move stdint.h include to primitives.h since it uses std int types
+ [a1b10c4251f9]
+
+ * source/encoder/primitives.h, source/encoder/vec/vecprimitives.inc:
+ primitives: match x264's pixel compare funcdef so we can later use
+ their asm
+ [4dc9fabbf725]
+
+ * source/encoder/CMakeLists.txt:
+ fix compile of TComRdCost_SSE.cpp on VC (not sure why this worked
+ before)
+ [a3a4f0ed61b4]
+
+ * source/encoder/vec/CMakeLists.txt:
+ cmake: VC10 appears to support /arch:AVX
+
+ We can back this out later if there are problems with it
+ [ce56b207242b]
+
+2013-03-27 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt, source/encoder/primitives.cpp:
+ add a stub primitives.cpp, showing what CPU runtime detection should
+ do
+ [d169138ef9f2]
+
+ * source/encoder/vec/vecprimitives.inc:
+ vec: automatically generate a primitive table for each vector
+ architecture
+ [169f67a4972c]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: add primitives.h x265 project
+ [0bc67c2dc278]
+
+ * source/encoder/primitives.h:
+ introduce EncoderPrimitives structure of function pointers
+ [64638e854efb]
+
+ * source/VectorClass/vectori256.h:
+ workaround two compiler warnings for AVX2 and VC11
+ [97e315fd1008]
+
+ * source/encoder/CMakeLists.txt, source/encoder/vec/CMakeLists.txt,
+ source/encoder/vec/avx.cpp, source/encoder/vec/avx2.cpp,
+ source/encoder/vec/sse2.cpp, source/encoder/vec/sse3.cpp,
+ source/encoder/vec/sse41.cpp, source/encoder/vec/sse42.cpp,
+ source/encoder/vec/ssse3.cpp, source/encoder/vec/vecprimitives.inc:
+ introduce a vec/ folder for instancing vectorized encoder primitives
+
+ This is incomplete. Next step is to declare a function table and set
+ one up.
+ [05481bf6d65a]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ use one contributor per line in copyright header
+ [27148d109699]
+
+ * source/CMakeLists.txt:
+ cmake: add option to use multiple processors for compiling
+ [d265d139dd54]
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt:
+ cmake: move /Ob2 flag to be global
+ [695e210034ad]
+
+ * source/test/testpool.cpp:
+ testpool: add semicolons after PPA macros
+ [ebb7b3d857cc]
+
+ * source/encoder/threadpool.cpp:
+ cmake: use 64bit interlocked commands and C style typecasts
+
+ For some reason Microsoft uses signed types for atomic intrinsics
+ and LONG64 is not the same as uint64_t
+ [bffed1db2e83]
+
+ * source/test/CMakeLists.txt:
+ cmake: add PPA and pthread libraries for appropriate build
+ configurations
+ [207e0e47d1c4]
+
+ * source/CMakeLists.txt:
+ cmake: fix eoln damage from copy-pasting from a web-page
+ [6c27e3178e4e]
+
+2013-03-27 deepthidevaki <deepthidevaki>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modified vector- xCalcHADs4x4
+ [329defb33896]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modifed vector- xCalcHADS4x4
+ [ffc0604b89a9]
+
+2013-03-27 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Merged multicoreware/xhevc into default
+ [c4df9c66f793]
+
+2013-03-26 deepthidevaki <deepthidevaki>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modified xCalcHADs4x4 for better optimization
+ [921103b76c69]
+
+2013-03-26 Deepthi Devaki Akkoorath <deepthidevaki@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [a1206301f004]
+
+2013-03-25 deepthidevaki <deepthidevaki>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Modifed vectorized xCalcHADs* for aligned data access
+ [cdddf736f4a1]
+
+2013-03-26 Steve Borho <steve@borho.org>
+
+ * source/encoder/threadpool.cpp:
+ threadpool: reorder initializers to match member declarations to
+ make gcc happy
+ [a42d35cf40ea]
+
+ * source/test/testpool.cpp:
+ testpool: memset requires string.h on Linux
+ [5576e606f381]
+
+ * source/test/testpool.cpp:
+ testpool: initialize CUData on allocation, makes hashes persistent
+ [2f9e75feedfa]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ disable formal parameter warnings in TComRdCost_SSE, for Release
+ mode builds
+
+ This pragma should go away when we clean up the vectorized code
+ [600af352c248]
+
+ * source/test/testpool.cpp:
+ testpool: add more resolution to elapsed time
+ [347c13c7c13a]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: safely allow the threadpool to be freed and reallocated
+ [8ccacddcb5c2]
+
+ * source/test/testpool.cpp:
+ testpool: do not check top-right data dependency for last block in
+ row
+
+ The fact that the penumltimate block was finished implies all of the
+ dependencies for the last block are also available.
+ [a9b0cb1167f5]
+
+ * source/encoder/threadpool.cpp, source/encoder/threadpool.h:
+ threadpool: fix a couple of bugs, introduce m_numWords variable for
+ clarity
+ [a2cc29d90646]
+
+ * source/test/testpool.cpp:
+ testpool: enqueue row 0 to trigger processing
+ [550abf2e723d]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: initialize m_numThreads correctly
+ [72d310781d4f]
+
+ * source/encoder/threadpool.cpp:
+ threadpool: clear m_queuedBitmap after allocation
+ [b70a1bd11c88]
+
+2013-03-25 Steve Borho <steve@borho.org>
+
+ * source/test/CMakeLists.txt, source/test/testpool.cpp:
+ testpool: add MD5 fake CTU encode logic
+ [ebef6ad81ce7]
+
+ * source/test/testpool.cpp:
+ testpool: make progress on thread pool unit test
+ [719adfd4d95a]
+
+ * build/README.txt:
+ simplify build/README.txt
+ [f0f36350faf2]
+
+2013-03-25 Deepthi <Deepthi>
+
+ * Merge
+ [928a9fe490c2]
+
+ * source/encoder/CMakeLists.txt:
+ Force inlining for x265 project.
+ [c5d96e5290e1]
+
+ * source/encoder/CMakeLists.txt:
+ Adding /Ob1 for inline functions in vectorclass
+ [58fdaadc8c9b]
+
+2013-03-25 Steve Borho <steve@borho.org>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/encoder/TComRdCost_SSE.cpp:
+ Added vectorized xCalcHADs4x4.
+ [e4511f7ffd67]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp,
+ source/encoder/TComRdCost_SSE.cpp:
+ Added vectorized xCalcHADs8x8 to TComRdCost_sse.cpp.
+ [75902874989e]
+
+2013-03-23 Steve Borho <steve@borho.org>
+
+ * build/ConfigureBuild.bat, build/README.txt, build/vc10-x86/build-
+ all.bat, build/vc10-x86_64/build-all.bat, build/vc11-x86/build-
+ all.bat, build/vc11-x86_64/build-all.bat, build/vc9-x86/build-
+ all.bat, build/vc9-x86_64/build-all.bat, source/CMakeLists.txt,
+ source/encoder/TComRdCost_SSE.cpp:
+ cmake: change solution name to x265.sln
+
+ The repository will eventually be renamed to x265 as well
+ [0b06a183e9d9]
+
+2013-03-23 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Encoder: Fix the backslash used in an #include.
+
+ The lookup fails in Linux platform, while VC works with both
+ backslash and forwardslash
+ [3f5f4347ca3c]
+
+ * build/linux/make-Makefiles.bash:
+ Build: cmake bash script for Linux 64bit platform.
+ [1571b62368bf]
+
+2013-03-22 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: fix a copy-pasted comment
+ [b6d723716d3a]
+
+ * source/CMakeLists.txt, source/VectorClass/CMakeLists.txt,
+ source/encoder/CMakeLists.txt:
+ cmake: merge VectorClass and all vectorization knowledge into
+ encoder/
+ [42d9ce7dd5b6]
+
+ * source/x265cfg.cpp:
+ fixup a harmless mistake made when renaming files
+ [2801e45e10fc]
+
+2013-03-23 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/Lib/CMakeLists.txt:
+ Build: Fix compile errors in HM codes due to compiler warning on
+ unused variables.
+ [48b1fa53a585]
+
+2013-03-22 Steve Borho <steve@borho.org>
+
+ * source/CMakeLists.txt:
+ cmake: for gcc builds, select Release build type by default
+ [504de19e1c0c]
+
+ * source/App/README.txt, source/App/TAppEncoder/CMakeLists.txt,
+ source/App/TAppEncoder/TAppEncCfg.cpp,
+ source/App/TAppEncoder/TAppEncCfg.h,
+ source/App/TAppEncoder/TAppEncTop.cpp,
+ source/App/TAppEncoder/TAppEncTop.h,
+ source/App/TAppEncoder/encmain.cpp, source/CMakeLists.txt,
+ source/x265cfg.cpp, source/x265cfg.h, source/x265main.cpp,
+ source/x265top.cpp, source/x265top.h:
+ cmake: remove the APP folder, move encoder main files to source/
+ folder
+
+ The CLI portion of the project is now a build option, defaulting to
+ ON. The build target is now named x265-cli, and it will be generated
+ in the build root Debug/ or Release/ folder
+ [b4939353bb2f]
+
+ * source/App/TAppEncoder/CMakeLists.txt, source/CMakeLists.txt,
+ source/Lib/CMakeLists.txt, source/Lib/TLibCommon/CMakeLists.txt,
+ source/Lib/TLibEncoder/CMakeLists.txt:
+ cmake: group all HM code into one library
+ [dee196e7dd7f]
+
+ * build/vc10-x86/build-all.bat, build/vc10-x86_64/build-all.bat,
+ build/vc11-x86/build-all.bat, build/vc11-x86_64/build-all.bat,
+ build/vc9-x86/build-all.bat, build/vc9-x86_64/build-all.bat:
+ cmake: add build-all batch files for each compiler target
+
+ This auto-detects the VS install location and skips impossible
+ compiles
+ [ea00c6454cd6]
+
+ * build/msys/make-Makefiles.sh, build/vc10-x86/make-solutions.bat,
+ build/vc10-x86_64/make-solutions.bat, build/vc11-x86/make-
+ solutions.bat, build/vc11-x86_64/make-solutions.bat, build/vc9-x86
+ /make-solutions.bat, build/vc9-x86_64/make-solutions.bat:
+ cmake: add build folders for each compiler target and batch files to
+ open GUI
+
+ This makes it easy to configure the build options for each target.
+ The number of build options is about to grow.
+ [f8838d1b8aeb]
+
+ * source/Lib/TLibCommon/TComSlice.cpp:
+ remove an include of a decoder header from the common lib
+ [7308255a8774]
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppDecoder/TAppDecCfg.cpp,
+ source/App/TAppDecoder/TAppDecCfg.h,
+ source/App/TAppDecoder/TAppDecTop.cpp,
+ source/App/TAppDecoder/TAppDecTop.h,
+ source/App/TAppDecoder/decmain.cpp, source/CMakeLists.txt,
+ source/Lib/CMakeLists.txt, source/Lib/TLibDecoder/AnnexBread.cpp,
+ source/Lib/TLibDecoder/AnnexBread.h,
+ source/Lib/TLibDecoder/CMakeLists.txt,
+ source/Lib/TLibDecoder/NALread.cpp,
+ source/Lib/TLibDecoder/NALread.h,
+ source/Lib/TLibDecoder/SEIread.cpp,
+ source/Lib/TLibDecoder/SEIread.h,
+ source/Lib/TLibDecoder/SyntaxElementParser.cpp,
+ source/Lib/TLibDecoder/SyntaxElementParser.h,
+ source/Lib/TLibDecoder/TDecBinCoder.h,
+ source/Lib/TLibDecoder/TDecBinCoderCABAC.cpp,
+ source/Lib/TLibDecoder/TDecBinCoderCABAC.h,
+ source/Lib/TLibDecoder/TDecCAVLC.cpp,
+ source/Lib/TLibDecoder/TDecCAVLC.h,
+ source/Lib/TLibDecoder/TDecCu.cpp, source/Lib/TLibDecoder/TDecCu.h,
+ source/Lib/TLibDecoder/TDecEntropy.cpp,
+ source/Lib/TLibDecoder/TDecEntropy.h,
+ source/Lib/TLibDecoder/TDecGop.cpp,
+ source/Lib/TLibDecoder/TDecGop.h,
+ source/Lib/TLibDecoder/TDecSbac.cpp,
+ source/Lib/TLibDecoder/TDecSbac.h,
+ source/Lib/TLibDecoder/TDecSlice.cpp,
+ source/Lib/TLibDecoder/TDecSlice.h,
+ source/Lib/TLibDecoder/TDecTop.cpp,
+ source/Lib/TLibDecoder/TDecTop.h:
+ Drop the HM decoder project; we should use HM project directly for
+ decodes
+
+ We should be finding other decoders to test with as well
+ [4e8dec8e4636]
+
+ * source/encoder/threadpool.h, source/test/testpool.cpp:
+ threadpool: make pool destructor protected to force the use of
+ Release()
+ [e43c28659b53]
+
+ * source/CMakeLists.txt, source/test/CMakeLists.txt,
+ source/test/testpool.cpp:
+ add unit test for thread pool, incomplete
+ [97e90fcd77fe]
+
+ * source/App/TAppEncoder/TAppEncCfg.cpp:
+ ignore warnings in Y4M header reader imported from VPL
+ [aa2829f682fb]
+
+2013-03-21 Steve Borho <steve@borho.org>
+
+ * source/App/TAppEncoder/TAppEncCfg.cpp:
+ fix white-space damage in TAppEncCfg.cpp
+ [cca6a7ba5f3a]
+
+ * source/App/TAppEncoder/TAppEncCfg.cpp:
+ Fix eoln damage in TAppEncCfg.cpp
+ [50261b240150]
+
+ * source/Lib/TLibCommon/TComMv.h:
+ fix another compiler warning in the HM
+ [8a2d14661327]
+
+ * source/Lib/TLibCommon/TComSlice.h:
+ fix a warning in the HM header
+ [1942f88a267c]
+
+ * source/App/TAppEncoder/CMakeLists.txt:
+ cmake: encoder app now links against x265 library (source/encoder)
+ [d5de005561cf]
+
+ * source/App/TAppEncoder/TAppEncCfg.cpp:
+ encoder: gcc requires math.h for ceil()
+ [d6d1e2f2f535]
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppEncoder/CMakeLists.txt, source/Lib/CMakeLists.txt:
+ cmake: rename md5 lib so it is not compiled as liblibmd5
+ [f45eb3a34f5a]
+
+ * source/CMakeLists.txt, source/Lib/TLibCommon/CMakeLists.txt,
+ source/encoder/CMakeLists.txt:
+ cmake: move TComRdCost_SSE build to encoder/CMakeLists.txt
+ [437850ed2225]
+
+2013-03-21 ggopu <ggopu>
+
+ * build/ConfigureSolution.bash:
+ Noo Need for this Script
+ [21f0f70a76a6]
+
+ * build/ConfigureSolution.bat:
+ No Need for this Script
+ [f780b517b7b8]
+
+ * build/ConfigureBuild.bat:
+ Modified the Script for Build Mode
+ [f2ce5bd828bf]
+
+2013-03-21 Deepthi <Deepthi>
+
+ * Merge
+ [dd3d01a52f4c]
+
+ * build/ConfigureBuild.bat:
+ Updates to build script
+ [ee39c9715956]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Removing redundant path
+ [c23b0c5f44b8]
+
+ * source/Lib/TLibCommon/CMakeLists.txt:
+ Adding include directories and vector build options.
+ [e788257c2b47]
+
+ * source/VectorClass/CMakeLists.txt:
+ Changing all vector builds to SSE2 for now.
+ [1ff8a33f3356]
+
+ * source/Lib/TLibCommon/CMakeLists.txt:
+ Forward slash error in Cmake script
+ [6d19c8cf40d2]
+
+ * build/buildSolution.bash:
+ Removing initial build script
+ [fa010f66f667]
+
+2013-03-21 sumalatha <sumalatha>
+
+ * source/App/TAppEncoder/TAppEncCfg.cpp:
+ Changed the code for supporting 1. YUV files with per sequence cfg
+ files 2. y4m files with no per seqence cfg files for y4m files,
+ width, height and frame rate are obtained by parsing the y4m file
+ [d825fcd6fcf0]
+
+2013-03-21 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in ggopu/xhevc_ggopu (pull request #6)
+
+ Build Scripts
+ [36be38d95a0e]
+
+2013-03-20 ggopu <ggopu>
+
+ * build/ConfigureSolution.bat:
+ Script is for To Build only Visual Stdio Solutions for All Visual
+ Studio Compilers or any Specific Visual Studio Compiler
+ [1a26d0d759f3]
+
+ * build/ConfigureSolution.bash:
+ Script is for To Build Only Solutions for All MinGW Compilers or Any
+ Specific MinGW Compilers
+ [cdb508562f50]
+
+ * build/ConfigureBuild.bat:
+ Script is for To Build Bin and Solutions for All the Visual Studio
+ Compilers or any Specific Visual Studio Compiler
+ [924204a92ab3]
+
+ * build/ConfigureBuild.bash:
+ Script is used to Configure the Solution and Build the Bin for all
+ MinGW Compilers - MingW, UNIX and MSYS
+ [cfc72567b7d1]
+
+2013-03-21 Steve Borho <steve@borho.org>
+
+ * source/encoder/threadpool.cpp:
+ add MACOS cpu number detection
+
+ This doesn't imply we care about MacOS, only that I found code for
+ it online
+ [22b6e4c7dbef]
+
+2013-03-21 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in mandarmcw/xhevc_mandar (pull request #5)
+
+ Functions vectorized stage 1
+ [cfccc2255421]
+
+2013-03-20 mandarmcw <mandarmcw>
+
+ * source/Lib/TLibCommon/CMakeLists.txt,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TypeDef.h, source/encoder/TComRdCost_SSE.cpp:
+ Functions vectorized stage 1 : TcomRdCost::xGetSAD* (Replace * with
+ the numbers - 8, 16, 32, 64, 12, 24) Changes:-
+ * Defined a macro ENABLE_VECTOR for enabling the vectorized function
+ definations.
+ * Addedd file source/encoder/TComRdCost_SSE.cpp to Cmakelists file
+ [e5ab4f0e46f0]
+
+2013-03-19 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * cfg/encoder_intra_main.cfg, cfg/encoder_intra_main10.cfg,
+ cfg/encoder_lowdelay_P_main.cfg, cfg/encoder_lowdelay_P_main10.cfg,
+ cfg/encoder_lowdelay_main.cfg, cfg/encoder_lowdelay_main10.cfg,
+ cfg/encoder_randomaccess_main.cfg,
+ cfg/encoder_randomaccess_main10.cfg:
+ Merged multicoreware/xhevc into default
+ [552584fc09d7]
+
+ * Merged multicoreware/xhevc into default
+ [93fa9a5208a3]
+
+2013-03-19 mandarmcw <mandarmcw>
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ Updated all file names with *_SSE
+ [fd7954b7ccb3]
+
+ * source/encoder/TComRdCost_SSE.cpp:
+ New TComRdCost.cpp file with Vectorization.
+ [7547355fbf79]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Merge
+ [831a802091f2]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Discard changes
+ [2e2e69ec398c]
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Discard changes. Revert back to original source
+ [30854b3469d4]
+
+2013-03-19 Mandar Gurav <mandar@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc/default (954436fbb3df) into default
+ [605590cb93f4]
+
+2013-03-19 mandarmcw <mandarmcw>
+
+ * source/Lib/TLibCommon/TComRdCost.cpp:
+ Functions vectorized stage 1 : TcomRdCost::xGetSAD* (Replace * with
+ the numbers - 8, 16, 32, 64, 12, 24)
+ [95ba23e9aec0]
+
+2013-03-20 Steve Borho <steve@borho.org>
+
+ * source/encoder/threadpool.cpp:
+ threadpool: add CPU core count detection, remove need for friend
+ classes
+ [ba0dcc65b645]
+
+ * build/buildSolution.bash:
+ switch build/buildSolution.bash to unix EOLN, no behavior change
+ [03a24f5c924e]
+
+ * source/encoder/threadpool.cpp, source/encoder/threadpool.h:
+ threadpool: add worker thread implementation, non-blocking idle list
+ [e69134e545db]
+
+ * source/App/README.txt, source/Lib/README.txt,
+ source/VectorClass/README.txt:
+ add README files describing where various code originated
+ [d627780e1c0d]
+
+ * source/VectorClass/CMakeLists.txt:
+ cmake: update name of VectorClass lib
+ [64d3463a7437]
+
+ * .hgignore:
+ ignore Mercurial merge/patch remnants
+ [74246322f5d6]
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt,
+ source/Lib/TVectorClass/CMakeLists.txt,
+ source/Lib/TVectorClass/dispatch_example.cpp,
+ source/Lib/TVectorClass/instrset.h,
+ source/Lib/TVectorClass/instrset_detect.cpp,
+ source/Lib/TVectorClass/special/complexvec.h,
+ source/Lib/TVectorClass/special/decimal.h,
+ source/Lib/TVectorClass/special/quaternion.h,
+ source/Lib/TVectorClass/special/vector3d.h,
+ source/Lib/TVectorClass/special/vectormath.h,
+ source/Lib/TVectorClass/vectorclass.h,
+ source/Lib/TVectorClass/vectorf128.h,
+ source/Lib/TVectorClass/vectorf256.h,
+ source/Lib/TVectorClass/vectorf256e.h,
+ source/Lib/TVectorClass/vectori128.h,
+ source/Lib/TVectorClass/vectori256.h,
+ source/Lib/TVectorClass/vectori256e.h,
+ source/VectorClass/CMakeLists.txt,
+ source/VectorClass/dispatch_example.cpp,
+ source/VectorClass/instrset.h,
+ source/VectorClass/instrset_detect.cpp,
+ source/VectorClass/special/complexvec.h,
+ source/VectorClass/special/decimal.h,
+ source/VectorClass/special/quaternion.h,
+ source/VectorClass/special/vector3d.h,
+ source/VectorClass/special/vectormath.h,
+ source/VectorClass/vectorclass.h, source/VectorClass/vectorf128.h,
+ source/VectorClass/vectorf256.h, source/VectorClass/vectorf256e.h,
+ source/VectorClass/vectori128.h, source/VectorClass/vectori256.h,
+ source/VectorClass/vectori256e.h:
+ move TVectorClass folder from Lib/ folder to source/VectorClass
+ [d1f2dcfd8c66]
+
+ * source/CMakeLists.txt, source/Lib/CMakeLists.txt,
+ source/Lib/PPA/CMakeLists.txt, source/Lib/PPA/ppa.cpp,
+ source/Lib/PPA/ppa.h, source/Lib/PPA/ppaApi.h,
+ source/Lib/PPA/ppaCPUEvents.h, source/PPA/CMakeLists.txt,
+ source/PPA/ppa.cpp, source/PPA/ppa.h, source/PPA/ppaApi.h,
+ source/PPA/ppaCPUEvents.h:
+ move PPA from Lib/ folder
+ [7aa3258f57d8]
+
+2013-03-20 sumalatha <sumalatha>
+
+ * Merge
+ [e9f96ed95f8a]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg:
+ included few configurations like deblock filter, quantisation,
+ motion search etc with default value in both cfg file
+ [99cfa30c5630]
+
+2013-03-20 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [ca7efc3bd26f]
+
+ * Merged multicoreware/xhevc into default
+ [364d82f2fb06]
+
+2013-03-19 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc into default
+ [1d6ff1eaba4e]
+
+2013-03-19 MCW <MCW@MCW-PC.Belkin>
+
+ * cfg/encoder_intra_main.cfg, cfg/encoder_intra_main10.cfg,
+ cfg/encoder_lowdelay_P_main10.cfg, cfg/encoder_lowdelay_main.cfg,
+ cfg/encoder_lowdelay_main10.cfg, cfg/encoder_randomaccess_main.cfg,
+ cfg/encoder_randomaccess_main10.cfg:
+ Deleting redundant cfg files
+ [24be06d25080]
+
+ * Merge
+ [a1108949be35]
+
+ * cfg/encoder_lowdelay_P_main.cfg:
+ Removing encoder cfg file
+ [28407cd95bdc]
+
+ * cfg/encoder_I_15P.cfg, cfg/encoder_all_I.cfg:
+ included the two config files for testing. "encoder_all_I.cfg"
+ encodes all frames as I frames. "encoder_I_15P.cfg" encodes "I"
+ frame followed by 15 "P" frames. This pattern is followed for entire
+ sequence.
+ [124fe50587b5]
+
+2013-03-19 Sumalatha Polureddy <sumalatha@multicorewareinc.com>
+
+ * Merged multicoreware/xhevc/default (954436fbb3df) into default
+ [6f5679aa1420]
+
+2013-03-20 nandaku2 <deepthi@multicorewareinc.com>
+
+ * Merged in ggopu/xhevc_ggopu (pull request #2)
+
+ New Script for To build the Windows Solution / Make files for all
+ the VS and MSYS Compilers
+ [c6c9c4f150e1]
+
+2013-03-19 ggopu <ggopu>
+
+ * build/buildSolution.bash:
+ New Script for To build the Windows Solution / Make files for all
+ the VS and MSYS Compilers
+ [83904e69121d]
+
+2013-03-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/CMakeLists.txt, source/encoder/threadpool.cpp,
+ source/encoder/threadpool.h:
+ partially completed thread pool
+
+ needs PoolThread::ThreadMain(), ThreadPoolImpl::PokeIdleThread(),
+ and a shutdown/flush mechanism for the pool
+ [f9f791c32093]
+
+2013-03-19 Deepthi <Deepthi>
+
+ * Merge
+ [e70117d0f3d5]
+
+2013-03-18 Deepthi <Deepthi>
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ Backed out changeset: db7ddb189d7d
+ [954436fbb3df]
+
+ * source/Lib/TLibCommon/TComRdCost.h:
+ Test commit
+ [db7ddb189d7d]
+
+2013-03-19 Steve Borho <steve@borho.org>
+
+ * source/encoder/threadpool.h:
+ threadpool: stub in interfaces for the thread pool and job providers
+ [c5d831ed2ce0]
+
+2013-03-18 Steve Borho <steve@borho.org>
+
+ * source/encoder/threading.h:
+ threading: remove copy assignment operator body
+
+ I want a compile error generated if it is attempted
+ [80a0e976c24e]
+
+ * source/encoder/CMakeLists.txt:
+ cmake: remove redundant lib prefix
+
+ This was building liblibx265
+ [bcabd73ba3f9]
+
+ * source/encoder/threading.cpp, source/encoder/threading.h:
+ threading: fix compile problems with gcc on Linux
+ [23e6db8e39d2]
+
+ * source/App/TAppEncoder/TAppEncCfg.cpp,
+ source/App/TAppEncoder/TAppEncCfg.h,
+ source/App/TAppEncoder/TAppEncTop.cpp,
+ source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TypeDef.h, source/Lib/TLibDecoder/SEIread.cpp,
+ source/Lib/TLibDecoder/SEIread.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h, source/Lib/TLibEncoder/TEncCfg.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h:
+ take tip HM 10.0-dev changes (subversion HM-10.0-dev@3381)
+ [b1d8625402d8]
+
+ * source/CMakeLists.txt, source/encoder/CMakeLists.txt,
+ source/encoder/threading.cpp, source/encoder/threading.h:
+ introduce encoder folder and libx265 library project with threading
+ classes
+ [24d5964cfb3b]
+
+ * source/Lib/TVectorClass/CMakeLists.txt:
+ cmake: fix comment about /arch:AVX flag, it is only necessary for
+ VC11
+ [4a68b817dea5]
+
+ * source/Lib/TVectorClass/CMakeLists.txt:
+ cmake: white-space nits
+ [097f1ac9a970]
+
+ * source/Lib/CMakeLists.txt, source/Lib/TVectorClass/CMakeLists.txt:
+ cmake: isolate /arch:AVX compile flag to code which includes vector
+ libs
+
+ When the HM is compiled with /arch:AVX globally, it causes a runtime
+ exception when run in release mode but not in debug mode. Gah!
+ [25fc265da117]
+
+ * source/Lib/TVectorClass/CMakeLists.txt:
+ cmake: no need to build dispatch_example.cpp
+ [0b93848cb7cc]
+
+2013-03-16 Steve Borho <steve@borho.org>
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppEncoder/CMakeLists.txt, source/CMakeLists.txt,
+ source/Lib/CMakeLists.txt:
+ cmake: enable full GCC warnings globally, disable for HM source
+ where required
+ [23d5ac432957]
+
+ * build/README.txt:
+ document MSYS build instructions
+ [e76417ca32c7]
+
+ * source/Lib/CMakeLists.txt:
+ cmake: MSYS gcc requires -msse4 and does not support AVX2 intrinsics
+ (refs #1)
+ [94aef6522ed0]
+
+ * source/Lib/CMakeLists.txt:
+ cmake: VC9 can handle only SSE4.2 intrinsics (closes #1)
+
+ gcc was tested under CentOS 6.3 and it compiled fine as-is
+ [66263d046d28]
+
+2013-03-15 Steve Borho <steve@borho.org>
+
+ * source/Lib/CMakeLists.txt:
+ cmake: VC11 does support AVX2 intrinsics, but lib does not compile
+ (refs #1)
+
+ The library does not compile cleanly when AVX2 is enabled, one
+ warning about an implicit int to bool conversion (easily ignored)
+ and then an error that a formal parameter cannot be aligned as
+ requested, which is much more serious. So I'm leaving AVX2 disabled
+ for VC11
+
+ /arch:AVX2 was not valid, but /arch:AVX seemed to enable AVX2
+ intrinsics.
+ [b541bd207ee8]
+
+ * source/Lib/CMakeLists.txt, source/Lib/TVectorClass/vectori128.h:
+ cmake: add INSTRSET definitions for various VC versions (refs #1)
+
+ I'm guessing that VC9 supports AVX and VC11 supports AVX2. I'll have
+ to verify both of them. A similar section must be added for gcc.
+ [70b96b111797]
+
+2013-03-15 Deepthi <Deepthi>
+
+ * source/Lib/CMakeLists.txt:
+ Merge
+ [d465f7915365]
+
+ * source/Lib/CMakeLists.txt, source/Lib/TVectorClass/CMakeLists.txt:
+ Adding Cmake build scripts for VectorClass
+ [b948ddbdb645]
+
+ * source/Lib/TVectorClass/dispatch_example.cpp,
+ source/Lib/TVectorClass/instrset.h,
+ source/Lib/TVectorClass/instrset_detect.cpp,
+ source/Lib/TVectorClass/special/complexvec.h,
+ source/Lib/TVectorClass/special/decimal.h,
+ source/Lib/TVectorClass/special/quaternion.h,
+ source/Lib/TVectorClass/special/vector3d.h,
+ source/Lib/TVectorClass/special/vectormath.h,
+ source/Lib/TVectorClass/vectorclass.h,
+ source/Lib/TVectorClass/vectorf128.h,
+ source/Lib/TVectorClass/vectorf256.h,
+ source/Lib/TVectorClass/vectorf256e.h,
+ source/Lib/TVectorClass/vectori128.h,
+ source/Lib/TVectorClass/vectori256.h,
+ source/Lib/TVectorClass/vectori256e.h:
+ Adding GPL vectorclass source files
+ [ccf65d86f57b]
+
+2013-03-15 ShinYee Chung <shinyee@multicorewareinc.com>
+
+ * source/CMakeLists.txt:
+ Build: Update GCC compilations with more warning options.
+ [aa8994f58577]
+
+2013-03-14 Steve Borho <steve@borho.org>
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppEncoder/CMakeLists.txt, source/CMakeLists.txt,
+ source/Lib/CMakeLists.txt, source/Lib/TLibCommon/CMakeLists.txt,
+ source/Lib/TLibDecoder/CMakeLists.txt,
+ source/Lib/TLibEncoder/CMakeLists.txt:
+ move warning disablings as close as possible to the source that
+ needs them
+
+ I want newly added files and folders to have full warnings by
+ default
+ [ae7aa0c6b26a]
+
+ * source/App/TAppDecoder/TAppDecTop.cpp, source/CMakeLists.txt,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibDecoder/TDecCAVLC.cpp,
+ source/Lib/TLibEncoder/TEncSearch.cpp:
+ enable maximal warnings (and warnings as errors) on Windows
+
+ Manually exclude each warning emitted by the HM code that we chose
+ to ignore, fix one warning to avoid ignoring all warnings of that
+ type in the App folder. Explicitly disable some dangerous warnings
+ directly in the files which emit them, so they can remain enabled
+ globally to catch bugs as they are created.
+ [053177b5e32c]
+
+2013-03-11 Steve Borho <steve@borho.org>
+
+ * source/Lib/PPA/ppa.cpp:
+ ppa: use API bindings from public Linux PPA package
+
+ On Linux the PPA shared library is quiet on success (yeah!) but this
+ makes it a challenge to debug shared library path problems. So I
+ added some logging.
+ [cf22c53c7108]
+
+2013-03-07 Steve Borho <steve@borho.org>
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppEncoder/CMakeLists.txt:
+ ppa: -ldl is necessary for UNIX systems; not necessarily gcc
+
+ For instance, if building on MinGW gcc on Windows one does not need
+ -ldl since PPA will still not use the dlsym library loader
+ [07ec03019bda]
+
+ * source/App/TAppEncoder/TAppEncTop.cpp,
+ source/Lib/PPA/ppaCPUEvents.h:
+ ppa: add some very high level CPU events in the encoder
+ [c1b56eec0474]
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppDecoder/decmain.cpp,
+ source/App/TAppEncoder/CMakeLists.txt,
+ source/App/TAppEncoder/encmain.cpp, source/CMakeLists.txt,
+ source/Lib/CMakeLists.txt, source/Lib/PPA/CMakeLists.txt,
+ source/Lib/PPA/ppa.cpp, source/Lib/PPA/ppa.h,
+ source/Lib/PPA/ppaApi.h, source/Lib/PPA/ppaCPUEvents.h:
+ introduce PPA as cmake build option
+ [3117ce6b9688]
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppEncoder/CMakeLists.txt, source/CMakeLists.txt,
+ source/Lib/CMakeLists.txt, source/Lib/TLibCommon/CMakeLists.txt,
+ source/Lib/TLibDecoder/CMakeLists.txt,
+ source/Lib/TLibEncoder/CMakeLists.txt:
+ convert CMakeLists.txt to unix EOLN
+ [04901970ea1a]
+
+ * source/Lib/TLibEncoder/CMakeLists.txt:
+ fix case sensitivity of file paths in TLibEncoder/CMakeLists.txt
+ [81a323ceae15]
+
+2013-03-06 Steve Borho <steve@borho.org>
+
+ * source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppEncoder/CMakeLists.txt:
+ reorder library linking to help gcc ld to resolve dependencies
+ [f451d1272522]
+
+ * source/CMakeLists.txt:
+ copy gcc warning flags from HM Makefiles
+
+ Can now compile without warnings on MSYS on Windows, but cannot link
+ [99bb609ac6da]
+
+ * .hgignore, COPYING, build/README.txt, cfg/encoder_intra_main.cfg,
+ cfg/encoder_intra_main10.cfg, cfg/encoder_lowdelay_P_main.cfg,
+ cfg/encoder_lowdelay_P_main10.cfg, cfg/encoder_lowdelay_main.cfg,
+ cfg/encoder_lowdelay_main10.cfg, cfg/encoder_randomaccess_main.cfg,
+ cfg/encoder_randomaccess_main10.cfg, cfg/per-sequence/BQMall.cfg,
+ cfg/per-sequence/BQSquare.cfg, cfg/per-sequence/BQTerrace.cfg, cfg
+ /per-sequence/BasketballDrill.cfg, cfg/per-
+ sequence/BasketballDrillText.cfg, cfg/per-
+ sequence/BasketballDrive.cfg, cfg/per-sequence/BasketballPass.cfg,
+ cfg/per-sequence/BlowingBubbles.cfg, cfg/per-sequence/Cactus.cfg,
+ cfg/per-sequence/ChinaSpeed.cfg, cfg/per-sequence/FourPeople.cfg,
+ cfg/per-sequence/Johnny.cfg, cfg/per-sequence/Kimono.cfg, cfg/per-
+ sequence/KristenAndSara.cfg, cfg/per-
+ sequence/NebutaFestival_10bit.cfg, cfg/per-sequence/ParkScene.cfg,
+ cfg/per-sequence/PartyScene.cfg, cfg/per-
+ sequence/PeopleOnStreet.cfg, cfg/per-sequence/RaceHorses.cfg, cfg
+ /per-sequence/RaceHorsesC.cfg, cfg/per-sequence/SlideEditing.cfg,
+ cfg/per-sequence/SlideShow.cfg, cfg/per-
+ sequence/SteamLocomotiveTrain_10bit.cfg, cfg/per-
+ sequence/Traffic.cfg, cfg/per-sequence/Vidyo1.cfg, cfg/per-
+ sequence/Vidyo3.cfg, cfg/per-sequence/Vidyo4.cfg, doc/Doxyfile, doc
+ /README_data-structure.ppt, doc/gop-structure-example.pdf,
+ doc/mainpage.h, doc/software-manual.pdf,
+ source/App/TAppDecoder/CMakeLists.txt,
+ source/App/TAppDecoder/TAppDecCfg.cpp,
+ source/App/TAppDecoder/TAppDecCfg.h,
+ source/App/TAppDecoder/TAppDecTop.cpp,
+ source/App/TAppDecoder/TAppDecTop.h,
+ source/App/TAppDecoder/decmain.cpp,
+ source/App/TAppEncoder/CMakeLists.txt,
+ source/App/TAppEncoder/TAppEncCfg.cpp,
+ source/App/TAppEncoder/TAppEncCfg.h,
+ source/App/TAppEncoder/TAppEncTop.cpp,
+ source/App/TAppEncoder/TAppEncTop.h,
+ source/App/TAppEncoder/encmain.cpp, source/CMakeLists.txt,
+ source/Lib/CMakeLists.txt,
+ source/Lib/TAppCommon/program_options_lite.cpp,
+ source/Lib/TAppCommon/program_options_lite.h,
+ source/Lib/TLibCommon/AccessUnit.h,
+ source/Lib/TLibCommon/CMakeLists.txt,
+ source/Lib/TLibCommon/CommonDef.h,
+ source/Lib/TLibCommon/ContextModel.cpp,
+ source/Lib/TLibCommon/ContextModel.h,
+ source/Lib/TLibCommon/ContextModel3DBuffer.cpp,
+ source/Lib/TLibCommon/ContextModel3DBuffer.h,
+ source/Lib/TLibCommon/ContextTables.h, source/Lib/TLibCommon/NAL.h,
+ source/Lib/TLibCommon/SEI.cpp, source/Lib/TLibCommon/SEI.h,
+ source/Lib/TLibCommon/TComBitCounter.h,
+ source/Lib/TLibCommon/TComBitStream.cpp,
+ source/Lib/TLibCommon/TComBitStream.h,
+ source/Lib/TLibCommon/TComCABACTables.cpp,
+ source/Lib/TLibCommon/TComCABACTables.h,
+ source/Lib/TLibCommon/TComDataCU.cpp,
+ source/Lib/TLibCommon/TComDataCU.h,
+ source/Lib/TLibCommon/TComInterpolationFilter.cpp,
+ source/Lib/TLibCommon/TComInterpolationFilter.h,
+ source/Lib/TLibCommon/TComList.h,
+ source/Lib/TLibCommon/TComLoopFilter.cpp,
+ source/Lib/TLibCommon/TComLoopFilter.h,
+ source/Lib/TLibCommon/TComMotionInfo.cpp,
+ source/Lib/TLibCommon/TComMotionInfo.h,
+ source/Lib/TLibCommon/TComMv.h,
+ source/Lib/TLibCommon/TComPattern.cpp,
+ source/Lib/TLibCommon/TComPattern.h,
+ source/Lib/TLibCommon/TComPic.cpp, source/Lib/TLibCommon/TComPic.h,
+ source/Lib/TLibCommon/TComPicSym.cpp,
+ source/Lib/TLibCommon/TComPicSym.h,
+ source/Lib/TLibCommon/TComPicYuv.cpp,
+ source/Lib/TLibCommon/TComPicYuv.h,
+ source/Lib/TLibCommon/TComPicYuvMD5.cpp,
+ source/Lib/TLibCommon/TComPrediction.cpp,
+ source/Lib/TLibCommon/TComPrediction.h,
+ source/Lib/TLibCommon/TComRdCost.cpp,
+ source/Lib/TLibCommon/TComRdCost.h,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComRdCostWeightPrediction.h,
+ source/Lib/TLibCommon/TComRom.cpp, source/Lib/TLibCommon/TComRom.h,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp,
+ source/Lib/TLibCommon/TComSampleAdaptiveOffset.h,
+ source/Lib/TLibCommon/TComSlice.cpp,
+ source/Lib/TLibCommon/TComSlice.h,
+ source/Lib/TLibCommon/TComTrQuant.cpp,
+ source/Lib/TLibCommon/TComTrQuant.h,
+ source/Lib/TLibCommon/TComWeightPrediction.cpp,
+ source/Lib/TLibCommon/TComWeightPrediction.h,
+ source/Lib/TLibCommon/TComYuv.cpp, source/Lib/TLibCommon/TComYuv.h,
+ source/Lib/TLibCommon/TypeDef.h,
+ source/Lib/TLibDecoder/AnnexBread.cpp,
+ source/Lib/TLibDecoder/AnnexBread.h,
+ source/Lib/TLibDecoder/CMakeLists.txt,
+ source/Lib/TLibDecoder/NALread.cpp,
+ source/Lib/TLibDecoder/NALread.h,
+ source/Lib/TLibDecoder/SEIread.cpp,
+ source/Lib/TLibDecoder/SEIread.h,
+ source/Lib/TLibDecoder/SyntaxElementParser.cpp,
+ source/Lib/TLibDecoder/SyntaxElementParser.h,
+ source/Lib/TLibDecoder/TDecBinCoder.h,
+ source/Lib/TLibDecoder/TDecBinCoderCABAC.cpp,
+ source/Lib/TLibDecoder/TDecBinCoderCABAC.h,
+ source/Lib/TLibDecoder/TDecCAVLC.cpp,
+ source/Lib/TLibDecoder/TDecCAVLC.h,
+ source/Lib/TLibDecoder/TDecCu.cpp, source/Lib/TLibDecoder/TDecCu.h,
+ source/Lib/TLibDecoder/TDecEntropy.cpp,
+ source/Lib/TLibDecoder/TDecEntropy.h,
+ source/Lib/TLibDecoder/TDecGop.cpp,
+ source/Lib/TLibDecoder/TDecGop.h,
+ source/Lib/TLibDecoder/TDecSbac.cpp,
+ source/Lib/TLibDecoder/TDecSbac.h,
+ source/Lib/TLibDecoder/TDecSlice.cpp,
+ source/Lib/TLibDecoder/TDecSlice.h,
+ source/Lib/TLibDecoder/TDecTop.cpp,
+ source/Lib/TLibDecoder/TDecTop.h,
+ source/Lib/TLibEncoder/AnnexBwrite.h,
+ source/Lib/TLibEncoder/CMakeLists.txt,
+ source/Lib/TLibEncoder/NALwrite.cpp,
+ source/Lib/TLibEncoder/NALwrite.h,
+ source/Lib/TLibEncoder/SEIwrite.cpp,
+ source/Lib/TLibEncoder/SEIwrite.h,
+ source/Lib/TLibEncoder/SyntaxElementWriter.cpp,
+ source/Lib/TLibEncoder/SyntaxElementWriter.h,
+ source/Lib/TLibEncoder/TEncAnalyze.cpp,
+ source/Lib/TLibEncoder/TEncAnalyze.h,
+ source/Lib/TLibEncoder/TEncBinCoder.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABAC.h,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp,
+ source/Lib/TLibEncoder/TEncBinCoderCABACCounter.h,
+ source/Lib/TLibEncoder/TEncCavlc.cpp,
+ source/Lib/TLibEncoder/TEncCavlc.h,
+ source/Lib/TLibEncoder/TEncCfg.h, source/Lib/TLibEncoder/TEncCu.cpp,
+ source/Lib/TLibEncoder/TEncCu.h,
+ source/Lib/TLibEncoder/TEncEntropy.cpp,
+ source/Lib/TLibEncoder/TEncEntropy.h,
+ source/Lib/TLibEncoder/TEncGOP.cpp,
+ source/Lib/TLibEncoder/TEncGOP.h,
+ source/Lib/TLibEncoder/TEncPic.cpp,
+ source/Lib/TLibEncoder/TEncPic.h,
+ source/Lib/TLibEncoder/TEncPreanalyzer.cpp,
+ source/Lib/TLibEncoder/TEncPreanalyzer.h,
+ source/Lib/TLibEncoder/TEncRateCtrl.cpp,
+ source/Lib/TLibEncoder/TEncRateCtrl.h,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp,
+ source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h,
+ source/Lib/TLibEncoder/TEncSbac.cpp,
+ source/Lib/TLibEncoder/TEncSbac.h,
+ source/Lib/TLibEncoder/TEncSearch.cpp,
+ source/Lib/TLibEncoder/TEncSearch.h,
+ source/Lib/TLibEncoder/TEncSlice.cpp,
+ source/Lib/TLibEncoder/TEncSlice.h,
+ source/Lib/TLibEncoder/TEncTop.cpp,
+ source/Lib/TLibEncoder/TEncTop.h,
+ source/Lib/TLibEncoder/WeightPredAnalysis.cpp,
+ source/Lib/TLibEncoder/WeightPredAnalysis.h,
+ source/Lib/TLibVideoIO/TVideoIOYuv.cpp,
+ source/Lib/TLibVideoIO/TVideoIOYuv.h, source/Lib/libmd5/MD5.h,
+ source/Lib/libmd5/libmd5.c, source/Lib/libmd5/libmd5.h,
+ source/compat/msvc/stdint.h:
+ commit JCT-VC HM source with cmake based build scripts
+
+ HM-10.0-dev@3375 with some parts trimmed and some trivial folder
+ reorgs
+
+ https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/
+ [09fe40627f03]
+