summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
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
2016-05-18Move, rename, and inline high_inter_predictor.Alex Converse
The inlining mirrors what was done with the low bit depth inter_predictor. And the new highbd_inter_predictor name is more consistent with other high bit depth functions. Change-Id: I96437f745759aeec6260c6e39a974bf36f1c211c
2016-05-17VP9: _get_pred_context_switchable_interp()Scott LaVarnway
Remove unnecessary checks. Change-Id: Ic7bce8277ac5f4ae88d4ab7d0ae3ab110b2f225b
2016-05-10Add VP9 encoder API for level specification.hui su
Add control API VP9E_SET_TARGET_LEVEL that allows the encoder to control the output bitstream level and/or keep level related statistics. Usage: 255 do not care about level (default) 0 keep level related stats only 10 target for level 1 11 target for level 1.1 . . . 62 target for level 6.2 Usage for vpxenc: --target-level=0/255/10/11... Change-Id: I31d1aeca19358b893e7577b4e63748c8e614034a
2016-05-04vp9_idct_intrin_sse2: add missing vp9_rtcd.h includeJames Zern
Change-Id: I39a67ffea7b0a55b45cdf935986439537b65601f
2016-05-02Move vpx_add_plane from codec to vpx_dsp and dedup.Jim Bankoski
Change-Id: I12218d8331c0558c0587a66321e3ca46da7e5cc7
2016-04-26Merge "Experiment to adapt for net AQ offset."Paul Wilkins
2016-04-25Experiment to adapt for net AQ offset.paulwilkins
In Aq mode 1 the segment and AQ delta for each block is based on spatial variance. There may be a net imbalance between blocks that have lower Q than the baseline value and those that have higher Q. This patch monitors that imbalance and extends the allowed baseline Q range for the frame to accommodate adjustment of that baseline value to compensate. Change-Id: Iae8a48c7c01fe2af94a141e149d03acf467237ca
2016-04-22VP9: Do not call vp9_adjust_mask() in vp9_setup_mask()Scott LaVarnway
vp9_adjust_mask() is called again in loop_filter_rows(). Change-Id: If52f5339dfa7971c47b12f9e05f87951044d9391
2016-04-21vp9_loopfilter.c : fix / clarify todoJim Bankoski
Change-Id: Ie3ec67a83d1877d3deae9c7922b6899d915aa19e
2016-04-21vp9_loopfilter.c: Todo clean up encoder should work like decoder.Jim Bankoski
Change-Id: I570c6859d6e18cd94ce4a29068477b937489399c
2016-04-21vp9_loopfilter.c : todo cleanupJim Bankoski
Removed this todo because of another todo which says none of this code should exist. It should be integrated into the block by block encode process as per the decoder. Change-Id: I076bd15140a060e69c014dd7d7cd07fea260aba3
2016-04-20vp9_loopfilter.c: Todo try inloop calculation.Jim Bankoski
This is implemented in the decoder already. Will add a todo for the encoder. Change-Id: I5e78c045cb2edb5ba171022aeeb70051a708b916
2016-04-15VP9: inline vp9_get_intra_inter_context()Scott LaVarnway
Change-Id: I71366140799b9b39474b9b459082cdb250bd1905
2016-04-07Correct comments for scan order neighborshui su
Change-Id: I5e2dc39bf0ee8e501e4dd358be2e92ae50934593
2016-04-01VP9: Refactor vp9_decode_block_tokens()Scott LaVarnway
Change-Id: I30ab27808ec903f9490f36621fb16c197bd35d16
2016-04-01Merge "disable vp9_diamond_search_sad_avx"James Zern