- Sep 11, 2013
-
-
Scott LaVarnway authored
mode_info_context was stored as a grid of MODE_INFO structs. The grid now constists of pointers to MODE_INFO structs. The MODE_INFO structs are now stored as a stream (decoder only), eliminating unnecessary copies and is a little more cache friendly. Change-Id: I031d376284c6eb98a38ad5595b797f048a6cfc0d
-
- Sep 09, 2013
-
-
James Zern authored
This reverts commit dae17734 Encode crashes, leaks and increases integer overflow errors. Change-Id: I595aa2649bb8d0b6552ff91652837a74c103fda2
-
- Sep 06, 2013
-
-
Scott LaVarnway authored
mode_info_context was stored as a grid of MODE_INFO structs. The grid now constists of a pointer to a MODE_INFO struct and a "in the image" flag. The MODE_INFO structs are now stored as a stream, eliminating unnecessary copies and is a little more cache friendly. For the test clips used, the decoder performance improved by ~4.3% (1080p) and ~9.7% (720p). Patch Set 2: Re-encoded clips with latest. Now ~1.7% (1080p) and 5.9% (720p). Change-Id: I846f29e88610fce2523ca697a9a9ef2a182e9256
-
- Aug 28, 2013
-
-
Dmitry Kovalev authored
Change-Id: I752e374867d459960995b24d197301d65ad535e3
-
- Aug 16, 2013
-
-
Dmitry Kovalev authored
Redundant dst, pre[2] from build_inter_predictors_args, unused cm from encode_b_args. Change-Id: I2c476cd328c5c0cca4c78ba451ca6ba2a2c37e2d
-
- Aug 05, 2013
-
-
Dmitry Kovalev authored
Change-Id: I428c4d42212b757112e3acfe5b81314cfbb5fd6b
-
- Jul 15, 2013
-
-
Jingning Han authored
This speed feature allows the encoder to largely remove the spatial dependency between blocks inside a 64x64 superblock, thereby removing the need to repeatedly encode superblocks per partition type in the rate-distortion optimization loop. A major challenge lies in the intra modes tested in the rate-distortion optimization loop. The subsequent blocks do not have access to the reconstructed boundary pixels without the intermediate coding steps. This was resolved by using the original pixels for intra prediction in the rd loop, followed by an appropriately designed distortion modeling on the quantization parameters. Experiments also suggested that the performance impact is more discernible at lower bit-rate/psnr settings. Hence a quantizer dependent threshold is applied to deactivate skip of block coding. For bus_cif at 2000 kbps, speed 0: runtime 269854ms -> 237774ms (12% speed-up) at 0.05dB performance loss. speed 1: runtime 65312ms -> 61536ms, (7% speed-up) at 0.04dB performance loss. This operation is currently turned on in settings of speed 1. Change-Id: Ib689741dfff8dd38365d8c1b92860a3e176f56ec
-
- Jun 28, 2013
-
-
Yaowu Xu authored
Change-Id: I379617c1c731a686b3f7e032b8805860c1055b12
-
- Jun 17, 2013
-
-
Dmitry Kovalev authored
Moving single function from vp9_invtrans.c to vp9_encodemb.c. Change-Id: I26bf6bb90de342a3036c0dbfba78a7dd75a61fe7
-
- Jun 08, 2013
-
-
Ronald S. Bultje authored
Change-Id: Iec41736c2b6140715f90f40de5ae6cf52497a9b8
-
- Jun 07, 2013
-
-
Ronald S. Bultje authored
Code intra/inter, then comp/single, then the ref frame selection. Use contextualization for all steps. Don't code two past frames in comp pred mode. Change-Id: I4639a78cd5cccb283023265dbcc07898c3e7cf95
-
- May 31, 2013
-
-
Yaowu Xu authored
And removed 1st pass specific version of intra coding funcitons Change-Id: Ia54e67c71d750957cb2efda8360bf2133468498a
-
- May 27, 2013
-
-
Yaowu Xu authored
1. remove prediction mode conversion 2. unified bmode, same for key and non-key frame 3. set I4X4_PRED count for pdf to 0, as I4X4_PRED is no longer coded ever. It is determined by ref_frame and block partition Change-Id: If5b282957c24339b241acdb9f2afef85658fe47d
-
Jingning Han authored
This commit removes the use of bmi_ in the first-pass encoding by forcing encode_intra4x4block_ to use DC_PRED, followed by DCT_DCT only, as John suggested. This makes the need for bmi buffer only up to 4 entries, instead of 16. Change-Id: I3410007dfae789ee46a09ae20c39d3ce3c7954aa
-
- May 22, 2013
-
-
Yaowu Xu authored
Change-Id: I1b86744fa247233c8df031b3f4b87b212c8dd094
-
- May 20, 2013
-
-
Scott LaVarnway authored
This patch eliminates the intermediate diff buffer usage by combining the short idct and the add residual into one function. The encoder can use the same code as well. Change-Id: I296604bf73579c45105de0dd1adbcc91bcc53c22
-
- May 07, 2013
-
-
Paul Wilkins authored
Clean out code relating to newbintramode. Change-Id: Ie91f4f156cdf60ce0da8ca407c1c9cb00c7d0705
-
Jingning Han authored
Pull sb8x8 out of experimental list. verified via borg run tests. Fixed unit test failures. Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
-
- May 04, 2013
-
-
Ronald S. Bultje authored
Change-Id: I1df17f45721c690d157800daa6a0b377e3d32bc2
-
- May 03, 2013
-
-
John Koleszar authored
This allows removing a large number of transform size specific functions, as well as supporting 444/alpha by routing all code through the subsampling-aware path. Change-Id: Ieb085cebe9f37f24fc24de179898b22abfda08a4
-
- May 01, 2013
-
-
John Koleszar authored
Unify the various vp9_optimize_sb functions into one that handles all transform sizes. Change-Id: I48b642fbfb3e72cc2e0bcf1d0317a80a80547882
-
- Apr 30, 2013
-
-
Ronald S. Bultje authored
Work-in-progress, not yet ready for review. TODO items: - bitstream writing (encoder) and reading (decoder) - decoder reconstruction Change-Id: I5afb7284e7e0480847b47cd0097cb469433c9081
-
Jingning Han authored
Separate the functionality of I4X4_PRED from decode_mb. Use decode_atom_intra instead, to enable recursive partition of superblock down to 8x8. Change-Id: Ifc89a3be82225398954169d0a839abdbbfd8ca3b
-
- Apr 26, 2013
-
-
John Koleszar authored
All members can be referenced from their per-plane counterparts, and removes assumptions about 24 blocks per macroblock. Change-Id: I7ff2fa72d22c29163eb558981c8193765a8113d9
-
John Koleszar authored
Access these members from MACROBLOCKD instead. Change-Id: I7907230dd473ff12ebe182b9280d8b7f12a888c4
-
Scott LaVarnway authored
This originally was "Removed update_blockd_bmi()". Now, this patch removed bmi from blockd and uses the bmi found in mode_info_context. Eliminates unnecessary bmi copies between blockd and mode_info_context. Change-Id: I287a4972974bb363f49e528daa9b2a2293f4bc76
-
- Apr 25, 2013
-
-
John Koleszar authored
There were 4 variants of the quantize loop in vp9_quantize.c, now there is 1. Change-Id: Ic853393411214b32d46a6ba53769413bd14e1cac
-
John Koleszar authored
The underlying storage for these buffers is in the per-plane MACROBLOCKD area, so read it from there directly. Change-Id: Id6bd835117fdd9dea07db95ad06eff9f12afaaf7
-
John Koleszar authored
All members can be referenced from their per-plane counterparts, and removes assumptions about 24 blocks per macroblock. Change-Id: I593fb0715e74cd84b48facd1c9b18c3ae1185d4b
-
- Apr 23, 2013
-
-
John Koleszar authored
Lookup the data per-plane from the MACROBLOCK struct. Change-Id: I9253c4d3cf886aa9ab4aeab23a2156bfcf994ede
-
John Koleszar authored
First in a series of commits making certain MACROBLOCK members addressable per-plane. This commit also refactors the block subtraction functions vp9_subtract_b, vp9_subtract_sby_c, etc to be loops-over-planes and variable subsampling aware. Change-Id: I371d092b914ae0a495dfd852ea1a3d2467be6ec3
-
- Apr 22, 2013
-
-
John Koleszar authored
Use common vp9_recon_sbuv instead. Change-Id: I146f79adfdfda2b52257a52fa783727f12afa246
-
- Apr 19, 2013
-
-
John Koleszar authored
First in a series of commits moving the framebuffers pointers to per-plane data, so that they can be indexed numerically rather than by name. Change-Id: I6e0d60fd4d51e6375c384eb7321776564df21775
-
John Koleszar authored
Use the common sb functions instead. Change-Id: I4fa0a8ee3c6ada56271dd09bf895b97642f55858
-
- Apr 18, 2013
-
-
Jingning Han authored
Use in-place buffers (dst of MACROBLOCKD) for macroblock prediction. This makes the macroblock buffer handling consistent with those of superblock. Remove predictor buffer MACROBLOCKD. Change-Id: Id1bcd898961097b1e6230c10f0130753a59fc6df
-
- Apr 11, 2013
-
-
Scott LaVarnway authored
This patch will use the dest buffer instead of the predictor buffer. This will allow us in future commits to remove the extra mem copy that occurs in the dequant functions when eob == 0. We should also be able to remove extra params that are passed into the dequant functions. Change-Id: I7241bc1ab797a430418b1f3a95b5476db7455f6a
-
Ronald S. Bultje authored
More specifically, remove vp9_quantize_mb*, vp9_optimize_mb*, vp9_inverse_transform_mb* and vp9_transform_mb*. Instead, use the generic _sb* functions that take a size argument, and call them with BLOCK_SIZE_MB16X16. Change-Id: I33024afea95d3a23ffbc1df7da426e4645110f29
-
- Apr 05, 2013
-
-
John Koleszar authored
Continue migrating data from BLOCKD/MACROBLOCKD to the per-plane structures. Change-Id: Ibbfa68d6da438d32dcbe8df68245ee28b0a2fa2c
-
- Apr 04, 2013
-
-
John Koleszar authored
Start grouping data per-plane, as part of refactoring to support additional planes, and chroma planes with other-than 4:2:0 subsampling. Change-Id: Idb76a0e23ab239180c818025bae1f36f1608bb23
-
- Mar 26, 2013
-
-
Ronald S. Bultje authored
These are mostly just for experimental purposes. I saw small gains (in the 0.1% range) when playing with this on derf. Change-Id: Ib21eed477bbb46bddcd73b21c5c708a5b46abedc
-