summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-04-16Merge "Optimize the scaling calculation" into experimentalYunqing Wang
2013-04-16Merge "Removing extra params from x_add_residual() functions" into experimentalScott LaVarnway
2013-04-16Optimize the scaling calculationYunqing Wang
In decoder, the scaling calculation, such as (mv * x_num / x_den), is fairly time-consuming. In this patch, we check if the scaling happens or not at frame level, and then decide which function to call to skip scaling calculation when no scaling is needed. Tests showed a 3% decoder performance gain. Change-Id: I270901dd0331048e50368cfd51ce273dd82b8733
2013-04-16Merge "Replacing vp9_read, vp9_read_literal, vp9_read_bit macros with ↵John Koleszar
functions." into experimental
2013-04-16Removing extra params from x_add_residual() functionsScott LaVarnway
Now that the predictor is the dest, we do not need the extra parameters. Change-Id: I31e2c3d2015f4a1cd12e7f04536d8db478582a0a
2013-04-16Merge "Removing TRUE and FALSE macro definitions." into experimentalJohn Koleszar
2013-04-16Merge "Removing extra params in dequant functions" into experimentalScott LaVarnway
2013-04-15Removing TRUE and FALSE macro definitions.Dmitry Kovalev
Using regular 0 and 1 constants now. Change-Id: Ie763503cbb727847cc8f1d6506cd6f2ee607f056
2013-04-15Replacing vp9_read, vp9_read_literal, vp9_read_bit macros with functions.Dmitry Kovalev
This is the first CL with vp9_reader changes. All another macro definitions will be replaced after. Change-Id: I1c6bd9c9a612ec1663d484d6adb4fb720af54063
2013-04-15Merge "Fix lingering x->skip settings if static_threshold is used." into ↵Ronald S. Bultje
experimental
2013-04-15Merge "Add rectangular block size variance/sad functions." into experimentalRonald S. Bultje
2013-04-15Merge "Make filter RD code and encode breakout variance size-independent." ↵Ronald S. Bultje
into experimental
2013-04-15Fix lingering x->skip settings if static_threshold is used.Ronald S. Bultje
Keyframes don't set this variable, so it would use the last set values from inter frames. Change-Id: Ie1ef45ece2c44b21b5d55f6cea9f7d6e7a445692
2013-04-15Add rectangular block size variance/sad functions.Jingning Han
With this, the RD loop properly supports rectangular blocks. Change-Id: Iece79048fb4e84741ee1ada982da129a7bf00470
2013-04-15Make filter RD code and encode breakout variance size-independent.Ronald S. Bultje
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
2013-04-15Merge "Motion vector decoder cleanup." into experimentalDmitry Kovalev
2013-04-15Removing extra params in dequant functionsScott LaVarnway
Now that the predictor is the dest, we do not need the extra parameters. Change-Id: I78db73d39b5aff62f15303f3d51ad2797eae74b6
2013-04-15Merge "Reorder enum i4X4 predcition modes" into experimentalYaowu Xu
2013-04-15Merge "Fix width/height switch-up in U/V SB quantize code." into experimentalRonald S. Bultje
2013-04-15Merge "Removed unused structs in vp9_onyx_int.h." into experimentalRonald S. Bultje
2013-04-15Fix width/height switch-up in U/V SB quantize code.Ronald S. Bultje
Change-Id: I697514efd6024e1b4153bbde58ae5e323b030981
2013-04-15Removed unused structs in vp9_onyx_int.h.Ronald S. Bultje
Change-Id: I1f2dbf04a0140a7cc2060b0a9efb4ed8e5270d3d
2013-04-15Merge "Initial addition of multiple ARF frames" into experimentalAdrian Grange
2013-04-15Initial addition of multiple ARF framesAdrian Grange
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
2013-04-14Merge "Encoder code cleanup." into experimentalDmitry Kovalev
2013-04-14Merge "Adding vp9_read_and_apply_sign function." into experimentalDmitry Kovalev
2013-04-14Merge "Intra code cleanup." into experimentalDmitry Kovalev
2013-04-14Merge "Renaming vp9_token_struct to vp9_token and removing previous ↵Dmitry Kovalev
typedef." into experimental
2013-04-12Intra code cleanup.Dmitry Kovalev
Removing redundant code. Change-Id: I71bfc40a1fb06d8e3149ed5400aa4dfd87a51aac
2013-04-12Motion vector decoder cleanup.Dmitry Kovalev
Change-Id: I7d3b2ef26aba3dfb1d5c83309aab2024e04ee819
2013-04-12Merge "Enable inter predictor for rectangular block size" into experimentalJohn Koleszar
2013-04-12Enable inter predictor for rectangular block sizeJingning Han
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
2013-04-12Removed unnecessary copy from vp9_dequant_iht_add_8x8_cScott LaVarnway
Change-Id: I8fff2216c169c872f7073e66357e400f78a3445d
2013-04-12Merge changes I196814c0,I896fdfa0 into experimentalJingning Han
* changes: Move prediction hit counting to update_state(). Merge loop over all macroblock modes into encode_sb_row().
2013-04-12Reorder enum i4X4 predcition modesYaowu Xu
To match the order of directional intra prediction modes for larger blocks, also renamed the i4x4 prediction modes to mirror the larger variants. Change-Id: I77cea4d0add6c7758460bf9c7a2fe59aca601f0b
2013-04-12Rename B_PRED to I4X4_PREDYaowu Xu
So it is consistent with I8x8_PRED. Change-Id: Iefa65124b2419690d83e526c611129c0ede29d11
2013-04-12Merge "Remove unnecessary vp9_copy_memNxN() calls" into experimentalScott LaVarnway
2013-04-11Move prediction hit counting to update_state().Ronald S. Bultje
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
2013-04-11Remove unnecessary vp9_copy_memNxN() callsScott LaVarnway
The build predictors now output directly to the dest. These copies are no longer required. Change-Id: I8e91eda6b49993e6c16cfadc705d82a7e80f19b2
2013-04-11Make intra predictor support rectangular blocksJingning Han
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
2013-04-11Merge loop over all macroblock modes into encode_sb_row().Ronald S. Bultje
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
2013-04-11Merge "Remove unused vp9_recon_mb{y,uv}_s" into experimentalJohn Koleszar
2013-04-11Merge "Remove subtract_mb* functions." into experimentalRonald S. Bultje
2013-04-11Adding vp9_read_and_apply_sign function.Dmitry Kovalev
Change-Id: I9951a06dbe4514cc1cf69ff4349c4e12cb4a318c
2013-04-11Merge "WIP: removing predictor buffer usage from decoder" into experimentalScott LaVarnway
2013-04-11Merge "Remove unused macroblock versions of reconstruction functions." into ↵Ronald S. Bultje
experimental
2013-04-11Merge "Remove "tplist" from VP9_COMP." into experimentalRonald S. Bultje
2013-04-11Merge "Merge pick_sb_modes and pick_sb64_modes." into experimentalRonald S. Bultje
2013-04-11Merge "Turning model-based updates on with modelcoefprob" into experimentalDeb Mukherjee
2013-04-11Turning model-based updates on with modelcoefprobDeb Mukherjee
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