summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-03-20Code cleanup: lower case variable names.Dmitry Kovalev
Renaming Width to width, Height to height and Version to version in several structs and function signatures. Change-Id: I084c3f7e747cb2ce3345aff27a3dff9b13a87543
2013-03-19Merge "Motion vector code cleanup." into experimentalDmitry Kovalev
2013-03-18Changes to rd error_per_bit calculation.Paul Wilkins
Specifically changes to retain more precision especially at low Q through to the point of use. Change-Id: Ief5f010f2ca4daaabef49520e7edb46c35daf397
2013-03-18Merge "Fix ENTROPY_STATS code in vp9_tokenize.c." into experimentalRonald S. Bultje
2013-03-18Fix ENTROPY_STATS code in vp9_tokenize.c.Ronald S. Bultje
Change-Id: I9b4cb1e2ce6c6a99cffd473ff2fa7579bd318fcd
2013-03-18Optimize 8x8 idct functionYunqing Wang
Wrote sse2 functions of vp9_short_idct8x8 and vp9_short_idct10_8x8. Compared to c version, the sse2 version is 2X faster. The decoder test didn't show noticeable gain since 8x8 idct doesn't take much of decoding time (less than 1% in my test). Change-Id: I56313e18cd481700b3b52c4eda5ca204ca6365f3
2013-03-18VP9/ResizeInternalTest: adjust passing thresholdJohn Koleszar
Update to +/- 1dB. Change-Id: Idada001f261b36945c9334e288a415ee2c79c415
2013-03-18Merge "Replace scaling byte with explicit display size" into experimentalJohn Koleszar
2013-03-18Replace scaling byte with explicit display sizeJohn Koleszar
If the intended display size is different than the size the frame is coded at, then send that size explicitly in the bitstream. Adds a new bit to the frame header to indicate whether the extra size fields are present. Change-Id: I525c66f22d207efaf1e5f903c6a2a91b80245854
2013-03-18Merge "Adapt ARNR filter length and strength." into experimentalPaul Wilkins
2013-03-18Merge "Fix pulsing issue with scaling" into experimentalJohn Koleszar
2013-03-18Merge "Add VP9_GET_REFERENCE control" into experimentalJohn Koleszar
2013-03-18Adapt ARNR filter length and strength.Paul Wilkins
Adjust the filter length and strength for each ARF group based on a measure of difficulty (the boost) and the active q range. Remove lower limit on RDMULT value. Average gains on the different sets in range 0.4%-0.9%. However the ARNR changes give a very big boost on a few clips. Eg. Soccer ~5%, in derf set and Cyclist ~ 10% in the std-hd set Change-Id: I2078d78798e27ad2bcc2b32d703ea37b67412ec4
2013-03-18Merge "put refmvselection under experiment" into experimentalYaowu Xu
2013-03-18Merge "removed reference to "LLM" and "x8"" into experimentalYaowu Xu
2013-03-18Merge "Remove some unused rate control variables" into experimentalJohn Koleszar
2013-03-18Merge "Fix use of NaN in firstpass" into experimentalJohn Koleszar
2013-03-16Merge "Context-pred fix to not use top/left on edges" into experimentalDeb Mukherjee
2013-03-16Context-pred fix to not use top/left on edgesDeb Mukherjee
This fix resolves some of the mismatch issues being seen recently. While this is the right thing to do when tiling is used for this experiment, it is not the underlying cause of the the mismatches. Something else is causing writing outside of the allowable frame area in the encoder leading to this mismatch. Change-Id: If52c6f67555aa18ab8762865384e323b47237277
2013-03-15Remove some unused rate control variablesJohn Koleszar
These variables are unused, and are subject to overflowing, causing assertions when built with -ftrapv. Change-Id: Ia00a3201af309906c05bcd4b23a643925ed6ea86
2013-03-15Fix use of NaN in firstpassJohn Koleszar
If the second reference is better than the first in the long term, it was possible to try to take the fractional exponent of a negative number, giving an undefined result. Change-Id: I1dd08286747ceae960eb03bb5d98a383cc9d253b
2013-03-15Merge "Cleaning up frame decoding functionality." into experimentalJohn Koleszar
2013-03-15Faster vp9_short_fdct16x16.Christian Duvivier
Scalar path is about 1.5x faster (3.1% overall encoder speedup). SSE2 path is about 7.2x faster (7.8% overall encoder speedup). Change-Id: I06da5ad0cdae2488431eabf002b0d898d66d8289
2013-03-15Motion vector code cleanup.Dmitry Kovalev
Moving identical code to separate functions, variable declaration and initialization on the same line. Change-Id: Ifa6474a64189f9d8051e88e19850453b0227752c
2013-03-14Merge "force lossless coding at very high quality end" into experimentalYaowu Xu
2013-03-14Merge "Remove leftover reference to 2nd order dc/ac quant" into experimentalYaowu Xu
2013-03-14Cleaning up frame decoding functionality.Dmitry Kovalev
Change-Id: I25424904fb8541fc19d00d9fbc592379374b98c0
2013-03-14force lossless coding at very high quality endYaowu Xu
Change-Id: I75fc4eee10bee9efd419d248827290cce8e6d637
2013-03-14Remove leftover reference to 2nd order dc/ac quantYaowu Xu
Change-Id: Ib8dacf1d2797743569771b8f699e40e1aeb085cb
2013-03-13Fix pulsing issue with scalingJohn Koleszar
Updates the YV12_BUFFER_CONFIG structure to be crop-aware. The exiting width/height parameters are left unchanged, storing the width and height algined to a 16 byte boundary. The cropped dimensions are added as new fields. This fixes a nasty visual pulse when switching between scaled and unscaled frame dimensions due to a mismatch between the scaling ratio and the 16-byte aligned sizes. Change-Id: Id4a3f6aea6b9b9ae38bdfa1b87b7eb2cfcdd57b6
2013-03-13Add VP9_GET_REFERENCE controlJohn Koleszar
This is like VP8_COPY_REFERENCE, but returns a pointer to the reference frame rather than a copy of it. This is useful when the application doesn't know what the size of the reference is, as is the case when scaling is in effect. Change-Id: I63667109f65510364d0e397ebe56217140772085
2013-03-13Support +/-2048 motion vector codingJingning Han
Enable entropy coding of motion vectors up to +/-2048. Also extend the motion search range accordingly. Change-Id: Iac2bb015e8934521cef83a19edbe967d9f097436
2013-03-13put refmvselection under experimentYaowu Xu
and turn the experiment off by default. Change-Id: If9e684aa6cc49eacd39f36645a110a447e38d2de
2013-03-13removed reference to "LLM" and "x8"Yaowu Xu
The commit changed the name of files and function to remove obselete reference to LLM and x8. Change-Id: I973b20fc1a55149ed68b5408b3874768e6f88516
2013-03-12fix superframe index marker masksJohn Koleszar
The superframe index marker byte carries data in the lower 5 bits. Only the upper 3 should be used as part of the mask to detect it. By masking with 0xf0, the previous code was incorrect for frames over 65k bytes. Change-Id: I6248889f5af227457f359a56b2348ef6db87a3b4
2013-03-12fix superframe index with lagged encodingJohn Koleszar
If a superframe (ARF) is generated while flushing the lagged frames at the end of the clip, the buffer pointer wasn't being properly updated to account for the size of the index, causing the next frame to overwrite the index on the previous frame. Change-Id: Ib158cc8e4183d663bdfb9ba002dd4c98916abdc9
2013-03-12Merge "disambiguate superframe index in vp9_stop_encode()" into experimentalPaul Wilkins
2013-03-12disambiguate superframe index in vp9_stop_encode()John Koleszar
If the bool-coded partition naturally ends in a byte that matches the superframe index marker, it could lead to a parse error. This commit ensures that if such a marker is seen, it is padded out with an additional zero byte to disambiguate it. Change-Id: Id977de05745b6fa9ef08afb71e210a2a3ecca02e
2013-03-12Merge "Change buffer update rules on ARF overlay." into experimentalPaul Wilkins
2013-03-12Merge "Fix typo in comment for number of extra bits for cat6 tokens." into ↵Ronald S. Bultje
experimental
2013-03-12Merge "fix an assumption about uv_stride" into experimentalJohn Koleszar
2013-03-12Fix typo in comment for number of extra bits for cat6 tokens.Ronald S. Bultje
Change-Id: I07ddf3be8bc5d6c2eb561d4241879777c315b183
2013-03-12Merge "Changes to maximum gf/arf interval." into experimentalPaul Wilkins
2013-03-12Change buffer update rules on ARF overlay.Paul Wilkins
When coding the frame that corresponds to the midpoint frame defining an ARF, do not update the last reference frame buffer. Previously this buffer was updated meaning that when coding the next ARF all the reference buffers were the same (or nearly so). Turning the update off means that the frame before is still available as an alternative predictor and for use in compound prediction. Also fixed inconsistency in test for mismatch (patch from JK). Net average gains (derf 0.049, yt 0.163, yt-hd 0.207, std-hd 0.286) Change-Id: Ifee21da21ccbb1648ac2eafe890d3ce60562c7bc
2013-03-12fix an assumption about uv_strideJohn Koleszar
Use the uv_stride from the framebuffer rather than deriving it from the y_stride. Change-Id: I94581cb741539d094ff062b3d008235556903b8c
2013-03-11Merge "Code cleanup." into experimentalDmitry Kovalev
2013-03-11Code cleanup.Dmitry Kovalev
Removing redundant code, introducing new functions for better decomposition, adding 'clamp' function to vp9_common.h. Change-Id: Ic3b8ca13bbc38f60f0c9c43910b5802005e31aaf
2013-03-11Merge "Reinitialize motion search tables on frame size change" into experimentalJohn Koleszar
2013-03-11Merge "Add 'superframe' index" into experimentalJohn Koleszar
2013-03-11Merge "Update ResizeInternalTest threshold" into experimentalJohn Koleszar