summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
2016-09-28Merge "vp9: fix compilation for g++ 6.2.x"James Zern
2016-09-27vp9: fix compilation for g++ 6.2.xTristan Matthews
Inline function called from test/dct16x16_test.cc wouldn't build due to: invalid operands of types ‘__gnu_cxx::__enable_if<true, double>::__type {aka double}’ and ‘int’ to binary ‘operator>>’ return (abs(ref->row) >> 3) < COMPANDED_MVREF_THRESH && this converts the test to abs() < COMPANDED_MVREF_THRESH << 3 which hides the promotion issue. Regression from commit de993a847f8080d3128420c8ef8495642013bdb1 BUG=webm:1291 Change-Id: I73b5943d07d5b61b709d299114216a2371a8fd62
2016-09-24Merge "vp9_idct: delete dead TODOs"James Zern
2016-09-22Merge "Detect invalid highbd iht input"Angie Chiang
2016-09-21Detect invalid highbd iht inputAngie Chiang
Do nothing in vp9_highbd_iht#x#_##_add_c when input magnitude is beyond 20 bits. Note that, sign bit is not included here. In the 20 bits, we use 12 bits for input signal, 7 bits for forward transform amplification, and 1 bit for contingency in rounding and quantizing BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1286 Change-Id: I332c6f68df4614fc2e7d2dc4c5bb0d0cff8a245c
2016-09-20vp8: remove VP8_SET_DBG* control supportJames Zern
the --enable-postproc-visualizer configure option remains as a no-op as do the control names and values for compatibility + remove the corresponding debug flags from vpxdec: --pp-* Change-Id: I4a001cd9962b59560d7d6bda6272d4ff32b8d37c
2016-09-20vp9_idct: delete dead TODOsJames Zern
Change-Id: Icdd5494f557d83026dc078bce37997a76aa288fb
2016-09-19vp9_rtcd: remove non-existent highbd convolve fnsJames Zern
these were moved to vpx_dsp Change-Id: I307b07ae05e2333277d4b7011cba36dcf8409959
2016-09-15apply clang-formatclang-format
Change-Id: I501597b7c1e0f0c7ae2aea3ee8073f0a641b3487
2016-08-31Refactor uv tx size with lookup arraysDebargha Mukherjee
Change-Id: Ife6a3d301c5faaba89d16d188d638631083511f7
2016-08-23Correct CHECK_MEM_ERROR macro (release builds)Yury Gitman
The previous macro doesn't work with &cpi->common as a first argument Change-Id: Iddf7a1f5d56d7abafd9b2b8707aa611d349e7a68
2016-08-22Correct CHECK_MEM_ERROR macroYury Gitman
The previous macro doesn't work with &cpi->common as a first argument Change-Id: Ic3f5c49a94cf8b17de6569811b957c963341bb58
2016-08-19vp9_alloc_context_buffers: clear cm->mi* on failureJames Zern
this fixes a crash in vp9_dec_setup_mi() via vp9_init_context_buffers() should decoding continue and the decoder resyncs on a smaller frame BUG=b/30593752 Change-Id: I9ce8d94abe89bcd058697e8bd8599690e61bd380
2016-08-04Merge changes I6ef79702,Id332c641,I354b5d22,I84438013Johann Koenig
* changes: Use common transpose for vpx_idct32x32_1024_add_neon Use common transpose for vpx_idct8x8_[12|64]_add_neon Use common transpose for vp9_iht8x8_add_neon Use common transpose for vpx_idct16x16_[10|256]_add_neon
2016-08-04Use common transpose for vp9_iht8x8_add_neonJohann
Change-Id: I354b5d22130d76b0eceda0748db1f871f58fa372
2016-08-04correct break placementJames Zern
these should be placed within {}s when present Change-Id: Ia775fac5373603e77360398f19b07958fb43f476
2016-08-02vp9/common: apply clang-formatclang-format
Change-Id: Ie0f150fdcfcbf7c4db52d3a08bc8238ed1c72e3b
2016-07-21VP9: get_pred_context_switchable_interp() -- encoder sideScott LaVarnway
Change-Id: I7217c90d5cf38c51b76759a2dc4f10070f3a40ac
2016-07-19cosmetics: Add a few explanatory commentsYury Gitman
Change-Id: Ia6004c08e6f5fd269a1bbd4df51ce9b76345150d
2016-07-16Merge "addnoise : clear out static size for generated noise"James Bankoski
2016-07-15addnoise : clear out static size for generated noiseJim Bankoski
Change-Id: I5d4343f2da9cd4b01dd37be7a048d159fec109d1
2016-07-15vp9_postproc.c : unused variable if not vp9_highbitdepth.Jim Bankoski
Change-Id: Ib89b128f23767934c40b5add3fcf9dbd875e82f9
2016-07-15postproc : fix function parameters for noise functions.Jim Bankoski
Change-Id: I582b6307f28bfc987dcf8910379a52c6f679173c
2016-07-13Merge "postproc: noise style fixes."James Bankoski
2016-07-13postproc: noise style fixes.Jim Bankoski
Change-Id: Ifdcb36b8e77b65faeeb10644256e175acb32275d
2016-07-13Merge "postproc - move filling of noise buffer to vpx_dsp."James Bankoski
2016-07-13postproc - move filling of noise buffer to vpx_dsp.Jim Bankoski
Change-Id: I63ba35dc0ae9286c9812367a531e01d79a4c1635
2016-07-13deblock: missing const on extern const.Jim Bankoski
Change-Id: I0df08f7c431daf939e266f008bf5158b0c97358b
2016-07-12vp9_postproc.c missing extern.Jim Bankoski
BUG=webm:1256 Change-Id: I5271e71bc53cce033fb906040643dcdd5ccb2381
2016-07-12deblock filter : moved from vp8 code branchJim Bankoski
The deblocking filters used in vp8 have been moved to vpx_dsp for use by both vp8 and vp9. Change-Id: I5209d76edafc894b550f751fc76d3aa6799b392d
2016-07-06Merge "Remove decode asserts from better-hw-compatibility"Debargha Mukherjee
2016-07-06Remove decode asserts from better-hw-compatibilityDebargha Mukherjee
Safer to have the decoder operate normally and have better-hw-compatibility only implement encoding changes. Fixes some test failures. Change-Id: I0dd70d002e4e893992f0cd59774b9363e6f7fe76
2016-07-06Merge "Remove txfrm_block_to_raster_xy() from vp9 encoder"Jingning Han
2016-07-04Remove txfrm_block_to_raster_xy() from vp9 encoderJingning Han
The transform block row and column positions are always available outside the callees. There is no need to re-compute these values again. This approach has been used by the decoder. This commit removes txfrm_block_to_raster_xy() function. Change-Id: I5b90f91a0d8b7c35cfa7d171da9edf8202630108
2016-06-30Merge "vp9 postproc: Bug fix and code clean."Jacky Chen
2016-06-29vp9: remove x86inc.asm distinctionJohann
BUG=b:29583530 Change-Id: I952da3fc0d4716dec897be0d2e9806af6612722b
2016-06-28vp9 postproc: Bug fix and code clean.jackychen
Bug fix: The crash is caused by not allocating buffer for prev_mip in postproc_state and prev_mip in postproc_state is only used for MFQE, ohter postproc modules, deblocking and etc., should not use it. BUG=webm:1251 Change-Id: I3120d2f50603b4a2d400e92d583960a513953a28
2016-06-27*.asm: normalize label formatJames Zern
add a trailing ':', though it's optional with the tools we support, it's more common to use it to mark a label. this also quiets the orphan-labels warning with nasm/yasm. BUG=b/29583530 Change-Id: I46e95255e12026dd542d9838e2dd3fbddf7b56e2
2016-06-24Merge "cosmetics: Change few types to their posix version"James Zern
2016-06-24cosmetics: Change few types to their posix versionYury Gitman
Change-Id: I6d7bc9ed7396e7b0d63ee97bfa473fdea002f9ee
2016-06-21Add a hardware compatibility featurehui su
This commit adds an encoder workaround to support better compatibility with a non-compliant hardware vp9 profile 2 decoder. The known issue with this decoder is: The decoder assumes a wrong value, 127 instead of the correct value of 511 and 2047, for any assumed top-left corner pixel in UV planes for 10 and 12 bit, respectively. Such assumed top-left corner pixel is used for INTRA prediction when a real decoded/reconstructed pixel is not avalable, e.g. when it is located inside the row above the top row or inside the column left to the leftest column of a video image. Change-Id: Ic15a938a3107e1b85e96cb7903a5c4220986b99d
2016-06-15Add vp9 encoder API VP9E_GET_LEVEL to provide bitstream levelhui su
Change-Id: I1ef3df0192491035728fe9d5eb25cc66dc2965de
2016-06-08Merge "Revert "remove vp9_diamond_search_sad_avx.c""James Zern
2016-06-07Revert "remove vp9_diamond_search_sad_avx.c"Scott LaVarnway
This reverts commit be12fefa4b7d224e9f39275a6bb4fab01b8bae3b and commit 057c1c4034ba5b9bf360c5c1f600ebc6d0718c3a. Also, the mismatch between the avx version and the c version has been fixed. BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1168 For a rt encode using 1080p@60fps material, up to 11% performance improvement overall was seen. Change-Id: Icd1f216209ebc6fc0b8da885f32f356fa4355ed0
2016-06-03Fix Visual Studio build failure in filter_selectively_vert_row2() callsLinfeng Zhang
Error messages: ..\vp9\common\vp9_loopfilter.c(1312): warning C4244: 'function' : conversion from 'uint64_t' to 'unsigned int', possible loss of data [.build-x86_64-win64-vs10\vpx.vcxproj] ..\vp9\common\vp9_loopfilter.c(1313): warning C4244: 'function' : conversion from 'uint64_t' to 'unsigned int', possible loss of data [.build-x86_64-win64-vs10\vpx.vcxproj] ..\vp9\common\vp9_loopfilter.c(1312): error C2220: warning treated as error - no 'object' file generated [.build-x86_64-win64-vs10\vpx.vcxproj] Change-Id: Ia69260611997cd2ba41c7184a85ecead740a7c07
2016-06-01Update filter_selectively_vert_row2()Linfeng Zhang
Reduce operations and jumps. perf shows CPU time reduced from 1.9% to 1.6% when decoding fdJc1_IBKJA.248.webm on Xeon E5. Will apply the changes to vp10 after code review. Change-Id: I9351509922855d8896ddef1ed093b3ca12619a61
2016-05-27Merge "Upgrade fwht4x4_mmx() to fwht4x4_sse2() for vp9 and vp10."Linfeng Zhang
2016-05-27Upgrade fwht4x4_mmx() to fwht4x4_sse2() for vp9 and vp10.Linfeng Zhang
Function level timing test shows about 27% time saving on a Xeon E5-2680 v2 desktop. Rename vp9_dct_sse2.c to vp9_dct_intrin_sse2.c for vp9 and rename dct_sse2.c to dct_intrin_sse2.c for vp10 to avoid duplicate basenames. Actually vp9_fwht4x4_mmx/sse2() and vp10_fwht4x4_mmx/sse2() are identical. TODO: They should be unified later if there is no intention to keep a duplicate. Change-Id: I3e537b7bbd9ba417c606cd7c68c4dbbfa583f77d
2016-05-25Fix comments in build_intra_predictors_high()Yaowu Xu
1. Removed TODOs, no longer applicable to finalized vp9 profiles. 2. Added explanation on assumed values for highbitdepth profiles. Change-Id: I59e0bebaaab900cc611ed284daa5fa0bdedb8097
2016-05-18Merge "Move, rename, and inline high_inter_predictor."Alex Converse