summaryrefslogtreecommitdiff
path: root/vp8
AgeCommit message (Collapse)Author
2012-08-28Remove some disabled code from pick_inter_mode_sb().Ronald S. Bultje
Change-Id: I323c429b453eec8c3b76c37f7e2a52da9dfe8d77
2012-08-28Disable 16x16 temp buffer for superblocks.Ronald S. Bultje
Change-Id: I3d585bae446c16fcf7a39d72c1bcd6468a7bb1a1
2012-08-24New Motion Reference SearchPaul Wilkins
Alternative strategy for finding a list of candidate motion vectors to use as reference values in mv coding and as nearest and near. Sort by sad in vp8_find_best_ref_mvs() rather than just pick the best. Allow 0,0 as a best ref option but not a nearest or near unless there are no alternatives. Encode/Decode verified on at least some clips. Some commented out experimental and stats code still in place. Gain over existing code averages about 1% on derf (alll metrics) with improvement on all clips. Other test results pending. The entropy coding of the mode (nearest/near etc) still depends upon and requires the old "findnear" code so this needs looking at and may provide room for further gains. Change-Id: I871d7cba1d1c379c4bad9bcccce1fb19c46b8247
2012-08-22Remove duplicate code in C intra prediction.Ronald S. Bultje
Change-Id: If4eb0fd60cc5bc2f32254e82e8d6cfa4120cb558
2012-08-22Merge "remove rotation experiment" into experimentalJohn Koleszar
2012-08-21Merge "SSE2 version of vectorized 8-tap filtering." into experimentalChristian Duvivier
2012-08-21Merge "Fix mismatch caused by a rebase failure." into experimentalRonald S. Bultje
2012-08-21Fix mismatch caused by a rebase failure.Ronald S. Bultje
Change-Id: Ifff660de60fb12d745092eafc17f6a49f6e1fb53
2012-08-21SSE2 version of vectorized 8-tap filtering.Christian Duvivier
About 20% overall encoder speedup (vs. about 30% for sse4 version). Change-Id: Ibf608a6a1bc94b14ec47e8046d3206b275b5a8bd
2012-08-21Fix compiler warningsDaniel Kang
Change-Id: I887cdcf90b87736f2a3805420aa41eed93324bee
2012-08-21Fix warning.Christian Duvivier
Change-Id: I99311811820169d62fda3febac4bafacfc7a538b
2012-08-21Merge changes I96cd08c9,If8eeb8ff into experimentalJohn Koleszar
* changes: hybridtransform8x8: fix compilation comp_intra_pred: fix compilation
2012-08-21remove rotation experimentJohn Koleszar
This is being reimplemented more generically in terms of affine transforms. Change-Id: I9300bfde5f8b93c708c64f59427087720f8ed782
2012-08-21hybridtransform8x8: fix compilationJohn Koleszar
corrected ifdefs to include CONFIG_HYBRIDTRANSFORM8X8 for missing definitions Change-Id: I96cd08c98d74b5ba10866f3fa30252073ce92fa5
2012-08-20Fix some compiler warnings.Ronald S. Bultje
Change-Id: Iccb56e3b966d1519ba49dfe4e1396479c6b54a6f
2012-08-20comp_intra_pred: fix compilationJohn Koleszar
Added missing parameters to calls to: vp8_build_intra_predictors_internal vp8_build_intra_predictors_mbuv_internal Change-Id: If8eeb8ff23eff4572397b404fe61be5d0c950bbe
2012-08-20Merge "Fix typo." into experimentalJohn Koleszar
2012-08-20Fix typo.Ronald S. Bultje
Change-Id: I95217ce52675ad00637fc8f60d4d0dd054efd512
2012-08-20Merge "Superblock coding." into experimentalRonald S. Bultje
2012-08-20Superblock coding.Ronald S. Bultje
This commit adds a pick_sb_mode() function which selects the best 32x32 superblock coding mode. Then it selects the best per-MB modes, compares the two and encodes that in the bitstream. The bitstream coding is rather simplistic right now. At the SB level, we code a bit to indicate whether this block uses SB-coding (32x32 prediction) or MB-coding (anything else), and then we follow with the actual modes. This could and should be modified in the future, but is omitted from this commit because it will likely involve reorganizing much more code rather than just adding SB coding, so it's better to let that be judged on its own merits. Gains on derf: about even, YT/HD: +0.75%, STD/HD: +1.5%. Change-Id: Iae313a7cbd8f75b3c66d04a68b991cb096eaaba6
2012-08-17Fix warnings.Christian Duvivier
Change-Id: I01dd96da18fe22450bb372b10ba90eab52e29bdf
2012-08-16Merge "A few more optimizations, about 1% overall speedup." into experimentalChristian Duvivier
2012-08-16A few more optimizations, about 1% overall speedup.Christian Duvivier
Unroll horizontal pass, no more intermediate buffer, faster special transpose. Change-Id: I05df75be4e5f01420066cdf3c61a2edf35bedb64
2012-08-16Fixed decoder mismatch issueJingning Han
Resolved the decoder mismatch issue due to quantization parameter threshold for hybrid transform coding. The macroblock dequantizer initialization is moved to be performed before coefficient detokenization, since the (de)tokenization is now dependent on the macroblock level quantization parameter. Change-Id: I443da4992ebb70ae4114750b2f1363c0c628580e
2012-08-16Merge "Set a default mv entropy if no tokens are coded." into experimentalRonald S. Bultje
2012-08-16Set a default mv entropy if no tokens are coded.Ronald S. Bultje
This doesn't affect the result, since there are no MVs coded using this entropy. It does, however, silence valgrind warnings about uninitialized variables. Change-Id: I6e21ba92df6ce5381bf58b8c349ef4373294a0b6
2012-08-16Fix valgrind error which causes non-deterministic results.Daniel Kang
Error was introduced in bf474e170fefbed60cf20fa3d2e9e229776469f0 Change-Id: I55bf114a1938c3a8869d8ff49cbe076eb9e83ea0
2012-08-15Fix stack overrun in calculating segmentation map coding method.Ronald S. Bultje
This caused spurious crashes on encodes, frustratingly often only on high-definition material. Change-Id: Ia8c1dfc420d598ca92108bd9cc2df7450e8d10a2
2012-08-15Merge "First partial snapshot of vectorized 8-tap filtering." into experimentalChristian Duvivier
2012-08-15First partial snapshot of vectorized 8-tap filtering.Christian Duvivier
About 3.5x faster, 30% overall encoder speedup. Rest of optimizations will come soon (see TODO section in filter_sse4.c). Change-Id: If18108048bfd5345fc942e8574e4c7f58e0e86e0
2012-08-15Fix build with TX_16X16Daniel Kang
Change-Id: I1ccb2546e29803d0e9d69282409d549a28201967
2012-08-15Code clean up.Paul Wilkins
Further cases of inconsistent naming convention. Change-Id: Id3411ecec6f01a4c889268a00f0c9fd5a92ea143
2012-08-14Fix warnings.Christian Duvivier
Change-Id: I4b911e4173da30c164bde7ea50bc80a70fbbb745
2012-08-14Fix build.Christian Duvivier
Change-Id: I27729a8631cffd54dfbae3ec0f07df7c883f7510
2012-08-14Shut up warnings added by -WundefDaniel Kang
Change-Id: I9c7ef4a75c37aa0e10df75e165e3066614c955ef
2012-08-14Merge "Some build fixes" into experimentalDeb Mukherjee
2012-08-14Merge "Changed to use reference mv as nearest mv" into experimentalYaowu Xu
2012-08-14Changed to use reference mv as nearest mvYaowu Xu
The reference motion vector selected by surrounding pixels that has the best matching score is used as nearest motion vector. The change has shown consistent gain on all test sets, compression gains range from .2% to .6%. The variation is largely dependent on various other experiments on or off. Change-Id: I5552e1c2f6fc57c3e8818a5ee41ffda89af05e75
2012-08-14Some build fixesDeb Mukherjee
Fixes two typos that breaks the build introduced in recent check-ins. Change-Id: I3f15f3c088c48a63fede8941c9a4ba05dd0403c2
2012-08-14Code clean up.Paul Wilkins
References to MACROBLOCKD that use "x" changed to "xd" to comply with convention elsewhere that x = MACROBLOCK and xd = MACROBLOCKD. Simplify some repeat references using local variables. Change-Id: I0ba2e79536add08140a6c8b19698fcf5077246bc
2012-08-13Fix typo, which adds skip testing for 16x16Daniel Kang
Also add warnings for undefined macros in the C pre-processor Change-Id: I1ec30e57c5a49fb72151a4cf140d7eeb0fb1d779
2012-08-13Shut up some compiler warnings on gccDaniel Kang
Change-Id: I8548aebd3c39797b253eef472bfe1c40f2f7ec59
2012-08-13Fix warning/bug introduced in 4d5b81a80faa8333ca3a7aed53684d2167fbebd2.Christian Duvivier
Change-Id: I082d2517022cbf2f472c143fe7772719d8295498
2012-08-13Cosmetics to rdopt.cDaniel Kang
Change-Id: Icc276609e409e4e234d240e5c12e137600e178ed
2012-08-13Combine optimize_b and optimize_b_8x8Daniel Kang
The 16x16 has not been done yet for speed reasons. Change-Id: I066e369a065674d58986e937344c9303fed19450
2012-08-10extend the range of encoding timeYaowu Xu
The commit also corrects unit of encoding from microsecond to milisecond. Change-Id: I030108e90f89f33dfad2d092dc8991db81979715
2012-08-10fix build problem for newbestrefmv experimentYaowu Xu
Change-Id: I7f531d55f076254c84402fed34af93fe3685fbdf
2012-08-10Fix some tabbing in rdopt.cDaniel Kang
Change-Id: Ie7e7727512cc1333bd16e7688cd1d8764371dde3
2012-08-10Refactor to remove some arguments from vp8_rd_pick_inter_modeDaniel Kang
Change-Id: I8e72279cc68f34d269705f06cdaf8f3d06eed635
2012-08-10Refactor RD to take same codepath for single and comp predDaniel Kang
Change-Id: Id38baf1b89648ef534e28be72f583137871f920c