- 16 Apr, 2013 - 4 commits
-
-
Dmitry Kovalev authored
Change-Id: I7057ed8e2a13a3c5367e2923eb4b3260bd7cf546
-
Dmitry Kovalev authored
Change-Id: Ic795cf6fc202bf32c9b5b0b3cef9ac422af53cd0
-
Christian Duvivier authored
Scalar path is about 1.3x faster (2.1% overall encoder speedup). SSE2 path is about 5.0x faster (8.4% overall encoder speedup). Change-Id: I360d167b5ad6f387bba00406129323e2fe6e7dda
-
John Koleszar authored
This flag was added to VP8 to allow a mode where MB-level skipping was not allowed, saving a bit per mb. It was never used in practice, and hasn't been tested in VP9, so remove it. Change-Id: Id450ec6904c6d06c1919508e7efc52d05cde5631
-
- 15 Apr, 2013 - 8 commits
-
-
Dmitry Kovalev authored
Using regular 0 and 1 constants now. Change-Id: Ie763503cbb727847cc8f1d6506cd6f2ee607f056
-
Ronald S. Bultje authored
Keyframes don't set this variable, so it would use the last set values from inter frames. Change-Id: Ie1ef45ece2c44b21b5d55f6cea9f7d6e7a445692
-
Jingning Han authored
With this, the RD loop properly supports rectangular blocks. Change-Id: Iece79048fb4e84741ee1ada982da129a7bf00470
-
Ronald S. Bultje authored
Static threshold results slightly up (+0.1% on derf), probably b/c we now take the filter (sharp/lowpass) into account for the breakout decision. Change-Id: I9f597601da434205142afd05f32690e7ba8fd690
-
Dmitry Kovalev authored
Change-Id: Ieaec2c48f3752b8558ba051caaf4ba2ab0e9e84d
-
Ronald S. Bultje authored
Change-Id: I697514efd6024e1b4153bbde58ae5e323b030981
-
Ronald S. Bultje authored
Change-Id: I1f2dbf04a0140a7cc2060b0a9efb4ed8e5270d3d
-
Adrian Grange authored
This is work-in-progress, it implements multiple ARF encoding behind an experimental flag. It adds the ability to insert multiple ARF frames into a single ARF group. This patch implements the reordering of the coded frames, and implements a fixed-length coding pattern. It applies a fixed quantizer strategy based on where the frame is in the coding sequence. Further work to modify the rate control strategy is ongoing and will be submitted via a set of future patches. In this first step, each ARF group is recursively bisected and an ARF frame added at that position in the sequence. The recursion continues until ARF frames are within MIN_GF_INTERVAL frames. The code sits behind the "multiple-arf" experimental flag ("CONFIG_MULTIPLE_ARF"). The experimental flag "oneshotq" ("CONFIG_ONESHOTQ") also needs to be enabled for this patch to work correctly. Change-Id: Ie473b05ebb43ac473c0cfb659b2b8042823085e2
-
- 12 Apr, 2013 - 3 commits
-
-
Jingning Han authored
Combine superblock inter predictors into a unified function that allows configurable block width and height. The inter predictions of block sizes smaller than 16x16 are handled differently. To be continued on merging them later. Change-Id: I14075959dd5e221f00c205c99ca35c1c31ef728e
-
Yaowu Xu authored
So it is consistent with I8x8_PRED. Change-Id: Iefa65124b2419690d83e526c611129c0ede29d11
-
Ronald S. Bultje authored
The probabilities derived from these statistics are used in bitstream writing; therefore, we should only do this when we actually decide to use macroblock coding (over superblock coding). Derf gains +0.15%. Change-Id: I196814c070a7c79889590658ce10a6eb07454389
-
- 11 Apr, 2013 - 17 commits
-
-
Jingning Han authored
The intra predictor supports configurable block sizes. It can handle intra prediction down to 4x4 sizes, when enabled in BLOCK_SIZE_TYPE. Change-Id: I7399ec2512393aa98aadda9813ca0c83e19af854
-
Ronald S. Bultje authored
Rename pick_mb_modes to pick_mb_mode, since it now handles only a single macroblock. This is consistent with pick_sb_mode handling a single non-macroblock. Change-Id: I896fdfa06436b2d8c24d6474718cc74420df6b3b
-
Deb Mukherjee authored
This patch changes the default with the modecoefprob expt to use mode-based forward updates with one-node pegged modeling. The maximum difference with fully trained tables is now less that 0.1%. Change-Id: I06b44322e10c6703f93f3c1d48d973b1136a0618
-
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
-
John Koleszar authored
Change-Id: I3fe8c529ddec658cfa2376cfc05d9c8a5366e978
-
Dmitry Kovalev authored
Change-Id: If69c3d795f87af5cc7bfdfe70ef733c41b4d55c8
-
John Koleszar authored
Use the common block walker to calculate skippability. Change-Id: I6721e42f065df237426c91c1d871ec226ba7cdcb
-
Ronald S. Bultje authored
Use subtract_sb* instead. Change-Id: I3f34140ab97061063a4452945347ef1fe37e13d1
-
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
-
Ronald S. Bultje authored
It is write-only. Change-Id: I2412344688d96593cc01c038e7f51410d0f85ed0
-
John Koleszar authored
Use sb-common version instead. Change-Id: If2552b5a39fd2e5272f66a41c5667dda85fd3939
-
Dmitry Kovalev authored
Removing duplicated code from vp9_encodemv.c and reusing ROUND_POWER_OF_TWO macro definitions. Change-Id: I9caf0c17f761ada7905cb99a3e2a31f871fef0f9
-
Ronald S. Bultje authored
Change-Id: Iad69e7a3b7e470acf6094f6a52e7da69066fd552
-
Ronald S. Bultje authored
Change-Id: I87a406fcd18ab043253ca0c009d1182fdc5c3046
-
Ronald S. Bultje authored
With these fixed, the codec produces identical results regardless of what literal values are used for the enum members in BLOCK_SIZE_*. Change-Id: I26db8e08019b58ba432af1f0950ebe6b0eb4ad8c
-
Ronald S. Bultje authored
The resulting values are never used. Change-Id: I688caf30da9aab87aa280cce913eda4f33172293
-
Ronald S. Bultje authored
Change-Id: I0d12f9ef9d960df0172a1377f8e5236eb6d90492
-
- 10 Apr, 2013 - 3 commits
-
-
Ronald S. Bultje authored
Merge various super_block_yrd and super_block_uvrd versions into one common function that works for all sizes. Make transform size selection size-agnostic also. This fixes a slight bug in the intra UV superblock code where it used the wrong transform size for txsz > 8x8, and stores the txsz selection for superblocks properly (instead of forgetting it). Lastly, it removes the trellis search that was done for 16x16 intra predictors, since trellis is relatively expensive and should thus only be done after RD mode selection. Gives basically identical results on derf (+0.009%). Change-Id: If4485c6f0a0fe4038b3172f7a238477c35a6f8d3
-
Yaowu Xu authored
The strategy to run fast loop filter picking for encoder speed-up should be revisited at a later stage. Change-Id: I3b75e06d767cff41be952a42e63b3292f4eab996
-
Ronald S. Bultje authored
Merge sb32x32 and sb64x64 functions; allow for rectangular sizes. Code gives identical encoder results before and after. There are a few macros for rectangular block sizes under the sbsegment experiment; this experiment is not yet functional and should not yet be used. Change-Id: I71f93b5d2a1596e99a6f01f29c3f0a456694d728
-
- 09 Apr, 2013 - 2 commits
-
-
Dmitry Kovalev authored
Renaming Y1dequant to y_dequant, UVdequant to uv_dequant, QIndex to qindex. Change-Id: I1c356e5f886deb3f8807dc212de9799b55b09d58
-
Dmitry Kovalev authored
Lower case variable names, less code. Change-Id: I1abc8f592ad2343ab5c76fe2d16262741a4a894a
-
- 08 Apr, 2013 - 1 commit
-
-
Jingning Han authored
Clamp only the motion vectors inferred from neighboring reference macroblocks. The motion vectors obtained through motion search in NEWMV mode are constrained during the search process, which allows a relatively larger referencing region than the inferred mvs. Hence further clamping the best mv provided by the motion search may affect the efficacy of NEWMV mode. Synchronized the decoding process. The decoded mvs in NEWMV modes should be guaranteed to fit in the effective range. Put a mv range clamping function there for security purpose. This improves the coding performance of high motion sequences, e.g., derf set: foreman 0.233% husky 0.175% icd 0.135% mother_daughter 0.337% pamphlet 0.561% stdhd set: blue_sky 0.408% city 0.455% also saw sunflower goes down by -0.469%. Change-Id: I3fcbba669e56dab779857a8126a91b926e899cb5
-
- 05 Apr, 2013 - 2 commits
-
-
Ronald S. Bultje authored
This is a VP8-only feature (part of profile 3) that is unsupported in VP9. Change-Id: I78016eede8d9c834d44d4c517f3e8b8fc2a378b1
-
Yaowu Xu authored
Change-Id: Id0c2e44daa936f1d6fb76469fd1bd72a4d7c19fd
-