platform/upstream/libvpx.git
11 years agoRemove implicit assumption that mode_info_stride == mb_cols + 1.
Ronald S. Bultje [Wed, 24 Apr 2013 19:28:27 +0000 (12:28 -0700)]
Remove implicit assumption that mode_info_stride == mb_cols + 1.

Change-Id: I3030d7adac73109aeaa1ecc0f78ac968c092d9aa

11 years agoRemove write-only variables that store refframe, signbias and mv.
Ronald S. Bultje [Wed, 24 Apr 2013 18:28:57 +0000 (11:28 -0700)]
Remove write-only variables that store refframe, signbias and mv.

These were superseeded by prev_mip.

Change-Id: Ide240475350ce003d68aa990eddc2ee30920663a

11 years agoUse b_width/height_log2 instead of mb_ where appropriate.
Ronald S. Bultje [Wed, 24 Apr 2013 16:18:16 +0000 (09:18 -0700)]
Use b_width/height_log2 instead of mb_ where appropriate.

Basic assumption: when talking about transform units, use b_; when
talking about macroblock indices, use mb_.

Change-Id: Ifd163f595d4924ff892de4eb0401ccd56dc81884

11 years agoFix incorrect dequant used in detokenize
John Koleszar [Thu, 25 Apr 2013 18:54:18 +0000 (11:54 -0700)]
Fix incorrect dequant used in detokenize

The quantizer can vary per-plane, and the dequantization vector is
available in the per-plane part of MACROBLOCKD. The previous code would
incorrectly use the Y quantizer for the whole macroblock.

Change-Id: I3ab418aef9168ea0ddcfa4b7c0be32ae48b536d7

11 years agoRemove predictor pointers from BLOCKD
John Koleszar [Thu, 25 Apr 2013 18:15:38 +0000 (11:15 -0700)]
Remove predictor pointers from BLOCKD

Access these members from MACROBLOCKD instead.

Change-Id: I2574622e577bb9feede47f6b7ccbb11f3e928ca8

11 years agoRemove diff from BLOCKD
John Koleszar [Wed, 24 Apr 2013 22:01:35 +0000 (15:01 -0700)]
Remove diff from BLOCKD

The underlying storage for these buffers is in the per-plane MACROBLOCKD
area, so read it from there directly.

Change-Id: Id6bd835117fdd9dea07db95ad06eff9f12afaaf7

11 years agoMove dequant from BLOCKD to per-plane MACROBLOCKD
John Koleszar [Wed, 24 Apr 2013 21:48:17 +0000 (14:48 -0700)]
Move dequant from BLOCKD to per-plane MACROBLOCKD

This data can vary per-plane, but not per-block.

Change-Id: I1971b0b2c2e697d2118e38b54ef446e52f63c65a

11 years agoRemove BLOCK structure
John Koleszar [Tue, 23 Apr 2013 23:22:47 +0000 (16:22 -0700)]
Remove BLOCK structure

All members can be referenced from their per-plane counterparts, and
removes assumptions about 24 blocks per macroblock.

Change-Id: I593fb0715e74cd84b48facd1c9b18c3ae1185d4b

11 years agoAdding is_inter_mode function.
Dmitry Kovalev [Wed, 24 Apr 2013 19:14:58 +0000 (12:14 -0700)]
Adding is_inter_mode function.

Change-Id: I2d32d46002cb92c63050c2b8328865c406103621

11 years agoMerge "Removing unused mi_mv_pred_row and mi_mv_pred_col functions." into experimental
Dmitry Kovalev [Thu, 25 Apr 2013 17:18:07 +0000 (10:18 -0700)]
Merge "Removing unused mi_mv_pred_row and mi_mv_pred_col functions." into experimental

11 years agoMerge "Using ROUND_POWER_OF_TWO macro inside vp9_loopfilter_filters.c." into experimental
Dmitry Kovalev [Thu, 25 Apr 2013 17:17:54 +0000 (10:17 -0700)]
Merge "Using ROUND_POWER_OF_TWO macro inside vp9_loopfilter_filters.c." into experimental

11 years agoMerge "Handling frame references and scale factors in one for loop." into experimental
Dmitry Kovalev [Thu, 25 Apr 2013 17:17:34 +0000 (10:17 -0700)]
Merge "Handling frame references and scale factors in one for loop." into experimental

11 years agoMerge "Move sbsegment out of experimental list" into experimental
Jingning Han [Thu, 25 Apr 2013 16:18:01 +0000 (09:18 -0700)]
Merge "Move sbsegment out of experimental list" into experimental

11 years agoMerge "Moved dequantization into the token decoder" into experimental
Scott LaVarnway [Thu, 25 Apr 2013 15:53:42 +0000 (08:53 -0700)]
Merge "Moved dequantization into the token decoder" into experimental

11 years agoHandling frame references and scale factors in one for loop.
Dmitry Kovalev [Thu, 25 Apr 2013 00:20:53 +0000 (17:20 -0700)]
Handling frame references and scale factors in one for loop.

Using ALLOWED_REFS_PER_FRAME constants instead of hard coded 3, replacing
memcpy with plain struct assignment.

Change-Id: Ibc86f5d175fcb3f3a3eddacf593525370f1f854c

11 years agoMerge two similar functions into one
Yaowu Xu [Fri, 19 Apr 2013 23:28:20 +0000 (16:28 -0700)]
Merge two similar functions into one

Function set_mb_row() and set_mb_col() do similar work and are always
called together, this commit merged them into a single function for
clarity and easy maintainence.  This was a TODO item.

Change-Id: I956bd9ed6afb8b2b0469b20fd8bc893b26f8a0f3

11 years agoMerge "Fixing PRED_SWITCHABLE_INTERP case in vp9_get_pred_context function." into...
Dmitry Kovalev [Wed, 24 Apr 2013 22:44:39 +0000 (15:44 -0700)]
Merge "Fixing PRED_SWITCHABLE_INTERP case in vp9_get_pred_context function." into experimental

11 years agoMove sbsegment out of experimental list
Jingning Han [Wed, 24 Apr 2013 22:10:23 +0000 (15:10 -0700)]
Move sbsegment out of experimental list

Move rectangular superblock coding out of experimental list.

Change-Id: I96c37547d122330d666a67b4bf577ae54547857f

11 years agoContextual entropy coding of partition syntax
Jingning Han [Tue, 23 Apr 2013 17:12:18 +0000 (10:12 -0700)]
Contextual entropy coding of partition syntax

This commit enables selecting probability models for recursive block
partition information syntax, depending on its above/left partition
information, as well as the current block size. These conditional
probability models are reasonably stationary and consistent across
frames, hence the backward adaptive approach is used to maintain and
update the contextual models.

It achieves coding performance gains (on top of enabling rectangular
block sizes):
derf:   0.242%
yt:     0.391%
hd:     0.376%
stdhd:  0.645%

Change-Id: Ie513d9673337f0d27abd65fb566b711d0844ec2e

11 years agoUsing ROUND_POWER_OF_TWO macro inside vp9_loopfilter_filters.c.
Dmitry Kovalev [Wed, 24 Apr 2013 18:50:49 +0000 (11:50 -0700)]
Using ROUND_POWER_OF_TWO macro inside vp9_loopfilter_filters.c.

Change-Id: Icb671cd011f645a3361684207840d14330ca7488

11 years agoMerge "Change chroma loopfilter to skip inner SB edges for tx16x16 also." into experi...
Ronald S. Bultje [Wed, 24 Apr 2013 18:45:26 +0000 (11:45 -0700)]
Merge "Change chroma loopfilter to skip inner SB edges for tx16x16 also." into experimental

11 years agoMerge "Minor indent changes in loopfilter code." into experimental
Ronald S. Bultje [Wed, 24 Apr 2013 18:45:19 +0000 (11:45 -0700)]
Merge "Minor indent changes in loopfilter code." into experimental

11 years agoMerge "Add basic building blocks for 8x8 superblocks experiment." into experimental
Ronald S. Bultje [Wed, 24 Apr 2013 18:45:13 +0000 (11:45 -0700)]
Merge "Add basic building blocks for 8x8 superblocks experiment." into experimental

11 years agoFixing PRED_SWITCHABLE_INTERP case in vp9_get_pred_context function.
Dmitry Kovalev [Wed, 24 Apr 2013 17:45:32 +0000 (10:45 -0700)]
Fixing PRED_SWITCHABLE_INTERP case in vp9_get_pred_context function.

Adding xd->up_available as additional check for above context.

Change-Id: If5654e4cae184b9c369b7b2e08076cb2951d00ed

11 years agoChange chroma loopfilter to skip inner SB edges for tx16x16 also.
Ronald S. Bultje [Tue, 23 Apr 2013 21:12:08 +0000 (14:12 -0700)]
Change chroma loopfilter to skip inner SB edges for tx16x16 also.

Change-Id: I6ea9e110b5c5b07ab7d092886dbd51a6eccc0217

11 years agoMerge "Extension of segmentation to 8 segments." into experimental
Paul Wilkins [Wed, 24 Apr 2013 16:44:48 +0000 (09:44 -0700)]
Merge "Extension of segmentation to 8 segments." into experimental

11 years agoMerge "Simplify Segment Coding" into experimental
Paul Wilkins [Wed, 24 Apr 2013 16:43:01 +0000 (09:43 -0700)]
Merge "Simplify Segment Coding" into experimental

11 years agoMerge "Fix in token allocation with zerogroup expt" into experimental
Deb Mukherjee [Wed, 24 Apr 2013 15:57:25 +0000 (08:57 -0700)]
Merge "Fix in token allocation with zerogroup expt" into experimental

11 years agoExtension of segmentation to 8 segments.
Paul Wilkins [Wed, 24 Apr 2013 12:04:45 +0000 (13:04 +0100)]
Extension of segmentation to 8 segments.

Also some further simplification following removal
of top node code.

There is an issue in regards to the shared file vp8cx.h
in regard to the roi_map as this interface assumes that
there are only 4 segments. I have left the value here as
4 for now meaning that the roi_map interface is broken
for VP9.

Note that this change would have been easier if I hadn't
had to search for hard wire instances of the number 4
and <= 3.

Change-Id: Ia8b6deea4be4dbd20deb1656e689dd43a5f190e8

11 years agoSimplify Segment Coding
Paul Wilkins [Wed, 24 Apr 2013 09:20:52 +0000 (10:20 +0100)]
Simplify Segment Coding

Remove top node optimization.
The improvement this gives is not sufficient to justify
the extra complexity.

Change-Id: I2bb4a12a50ffd52cacfa4a3e8acbb2e522066905

11 years agoSimple implicit segmentation experiment.
Paul Wilkins [Tue, 23 Apr 2013 13:01:55 +0000 (14:01 +0100)]
Simple implicit segmentation experiment.

Change-Id: Iaef16122732c2a81e0927f9862b51b68dc788712

11 years agoMerge "Move skip_block from BLOCK to MACROBLOCK" into experimental
John Koleszar [Wed, 24 Apr 2013 02:21:30 +0000 (19:21 -0700)]
Merge "Move skip_block from BLOCK to MACROBLOCK" into experimental

11 years agoMerge "Move quantizer data from BLOCK to MACROBLOCK" into experimental
John Koleszar [Wed, 24 Apr 2013 02:21:17 +0000 (19:21 -0700)]
Merge "Move quantizer data from BLOCK to MACROBLOCK" into experimental

11 years agoMerge "Code cleanup inside vp9_get_pred_context function." into experimental
Dmitry Kovalev [Wed, 24 Apr 2013 01:03:29 +0000 (18:03 -0700)]
Merge "Code cleanup inside vp9_get_pred_context function." into experimental

11 years agoMerge "Simple cleanup inside vp9_decodframe.c and vp9_entropymode.c." into experimental
Dmitry Kovalev [Wed, 24 Apr 2013 01:02:46 +0000 (18:02 -0700)]
Merge "Simple cleanup inside vp9_decodframe.c and vp9_entropymode.c." into experimental

11 years agoMerge "Removing redundant code in vp9_entropymode.c." into experimental
Dmitry Kovalev [Wed, 24 Apr 2013 01:01:37 +0000 (18:01 -0700)]
Merge "Removing redundant code in vp9_entropymode.c." into experimental

11 years agoMove skip_block from BLOCK to MACROBLOCK
John Koleszar [Tue, 23 Apr 2013 22:25:46 +0000 (15:25 -0700)]
Move skip_block from BLOCK to MACROBLOCK

This data is fixed at the MB level, so move it to the common part
of MACROBLOCK.

Change-Id: Idd8c87118e501cdf0a202bd84c28b502a8234edf

11 years agoMove quantizer data from BLOCK to MACROBLOCK
John Koleszar [Tue, 23 Apr 2013 22:22:18 +0000 (15:22 -0700)]
Move quantizer data from BLOCK to MACROBLOCK

Quantizers can vary per plane, but not per block. Move these values to
the per-plane part of MACROBLOCK.

Change-Id: I320a55e38b7b28b29aec751a4aca5ccd0c9b9326

11 years agoMerge "Remove coeff from BLOCK" into experimental
John Koleszar [Wed, 24 Apr 2013 00:42:12 +0000 (17:42 -0700)]
Merge "Remove coeff from BLOCK" into experimental

11 years agoMerge "Convert coeff to per-plane MACROBLOCK data" into experimental
John Koleszar [Wed, 24 Apr 2013 00:41:59 +0000 (17:41 -0700)]
Merge "Convert coeff to per-plane MACROBLOCK data" into experimental

11 years agoMerge "Enable rectangular support for comp inter-intra" into experimental
Jingning Han [Wed, 24 Apr 2013 00:16:16 +0000 (17:16 -0700)]
Merge "Enable rectangular support for comp inter-intra" into experimental

11 years agoRemove coeff from BLOCK
John Koleszar [Tue, 23 Apr 2013 21:38:52 +0000 (14:38 -0700)]
Remove coeff from BLOCK

Lookup the data per-plane from the MACROBLOCK struct.

Change-Id: I9253c4d3cf886aa9ab4aeab23a2156bfcf994ede

11 years agoRemoving unused mi_mv_pred_row and mi_mv_pred_col functions.
Dmitry Kovalev [Tue, 23 Apr 2013 23:34:22 +0000 (16:34 -0700)]
Removing unused mi_mv_pred_row and mi_mv_pred_col functions.

Change-Id: If8ba37bf0b86e8dea88c27d911e8ddb0f6d5a3c5

11 years agoConvert coeff to per-plane MACROBLOCK data
John Koleszar [Tue, 23 Apr 2013 16:51:09 +0000 (09:51 -0700)]
Convert coeff to per-plane MACROBLOCK data

This commit moves the coeff storage from the MACROBLOCK struct to its
per-plane part. The next commit will remove the coeff member from the
BLOCK structure so that it is consistently accessed per-plane.

Also refactors vp9_sb_block_error_c and vp9_sb_uv_block_error_c to be
variable subsampling aware.

Change-Id: I18c30f87f27c3a012119b6c1970d5fa499804455

11 years agoMerge "Move src_diff to per-plane MACROBLOCK data" into experimental
John Koleszar [Tue, 23 Apr 2013 23:24:08 +0000 (16:24 -0700)]
Merge "Move src_diff to per-plane MACROBLOCK data" into experimental

11 years agoCode cleanup inside vp9_get_pred_context function.
Dmitry Kovalev [Tue, 23 Apr 2013 23:18:09 +0000 (16:18 -0700)]
Code cleanup inside vp9_get_pred_context function.

Change-Id: Id06b7a299a26ed944a401faae51907537f722a7e

11 years agoRemoving redundant code in vp9_entropymode.c.
Dmitry Kovalev [Tue, 23 Apr 2013 22:56:27 +0000 (15:56 -0700)]
Removing redundant code in vp9_entropymode.c.

Change-Id: Ia7266b8d3aa3d5cff2db0c3b2f014def045759af

11 years agoSimple cleanup inside vp9_decodframe.c and vp9_entropymode.c.
Dmitry Kovalev [Tue, 23 Apr 2013 22:50:56 +0000 (15:50 -0700)]
Simple cleanup inside vp9_decodframe.c and vp9_entropymode.c.

Change-Id: I62dde981f5201c5fbc22001609ee4b5fd0a9bdf5

11 years agoEnable rectangular support for comp inter-intra
Jingning Han [Tue, 23 Apr 2013 22:07:35 +0000 (15:07 -0700)]
Enable rectangular support for comp inter-intra

This commit enables rectangular block prediction of compound
inter-intra mode. It combines the mb/sb32/sb64 prediction functions
into a unified version with configurable block width and height.
This fixes the enc/dec mismatch of the codebase when
comp-interintra-pred is enabled.

Change-Id: I1d0db2f1f184007802df04fcd12b9dadb3189ff0

11 years agoMerge changes I54acef34,I72d42971 into experimental
Ronald S. Bultje [Tue, 23 Apr 2013 22:29:19 +0000 (15:29 -0700)]
Merge changes I54acef34,I72d42971 into experimental

* changes:
  Make some sb_type comparisons independent of literal enum values.
  Make loopfilter aware of rectangular blocks.

11 years agoMerge "Adding select_txfm_size function + vp9_decode_frame cleanup." into experimental
Dmitry Kovalev [Tue, 23 Apr 2013 20:53:14 +0000 (13:53 -0700)]
Merge "Adding select_txfm_size function + vp9_decode_frame cleanup." into experimental

11 years agoMerge "Remove the unused gf_active_ptr from MACROBLOCK" into experimental
Jingning Han [Tue, 23 Apr 2013 20:52:50 +0000 (13:52 -0700)]
Merge "Remove the unused gf_active_ptr from MACROBLOCK" into experimental

11 years agoRemove the unused gf_active_ptr from MACROBLOCK
Jingning Han [Tue, 23 Apr 2013 19:59:33 +0000 (12:59 -0700)]
Remove the unused gf_active_ptr from MACROBLOCK

The variable gf_active_ptr is not used anywhere, hence is removed.

Change-Id: I6badc20fade48ae12fd19e7e4cd8fe5e051c20ac

11 years agoMerge "Adding get_scan_{4x4, 8x8, 16x16} functions." into experimental
Dmitry Kovalev [Tue, 23 Apr 2013 19:44:51 +0000 (12:44 -0700)]
Merge "Adding get_scan_{4x4, 8x8, 16x16} functions." into experimental

11 years agoMinor indent changes in loopfilter code.
Ronald S. Bultje [Tue, 23 Apr 2013 19:37:05 +0000 (12:37 -0700)]
Minor indent changes in loopfilter code.

Change-Id: I0cdc951558e4d7748f63df8c03b1c9dce086acb0

11 years agoAdd basic building blocks for 8x8 superblocks experiment.
Ronald S. Bultje [Tue, 23 Apr 2013 19:33:18 +0000 (12:33 -0700)]
Add basic building blocks for 8x8 superblocks experiment.

Change-Id: I274a1d2e461e6ffdb106bac4ad6951692ace314e

11 years agoMake some sb_type comparisons independent of literal enum values.
Ronald S. Bultje [Tue, 23 Apr 2013 18:29:12 +0000 (11:29 -0700)]
Make some sb_type comparisons independent of literal enum values.

Change-Id: I54acef342b8e787e05af0febd7cf0d7d10288383

11 years agoMake loopfilter aware of rectangular blocks.
Ronald S. Bultje [Tue, 23 Apr 2013 19:32:32 +0000 (12:32 -0700)]
Make loopfilter aware of rectangular blocks.

Also use explicitely named enum values in sb_type comparisons, rather
than relying on absolute integer values, because enum values may
change in the future.

Change-Id: I72d42971a98157af93413a25ac2c7e6f9b369cec

11 years agoMove src_diff to per-plane MACROBLOCK data
John Koleszar [Tue, 23 Apr 2013 15:26:10 +0000 (08:26 -0700)]
Move src_diff to per-plane MACROBLOCK data

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

11 years agoRemove unused corner_predictor and log2_minus_1 functions.
Ronald S. Bultje [Tue, 23 Apr 2013 18:19:39 +0000 (11:19 -0700)]
Remove unused corner_predictor and log2_minus_1 functions.

Change-Id: Ic659544ca12b1bc191b93ddfa378964bd133bfc9

11 years agoRemove unused stuffing function.
Ronald S. Bultje [Tue, 23 Apr 2013 18:18:42 +0000 (11:18 -0700)]
Remove unused stuffing function.

Change-Id: I2bc8d775f8d698bf8582f4eecabc2329452e8d9b

11 years agoMerge "Eliminated prev_mip memsets/memcpys" into experimental
Scott LaVarnway [Tue, 23 Apr 2013 17:22:13 +0000 (10:22 -0700)]
Merge "Eliminated prev_mip  memsets/memcpys" into experimental

11 years agoFix in token allocation with zerogroup expt
Deb Mukherjee [Tue, 23 Apr 2013 15:51:31 +0000 (08:51 -0700)]
Fix in token allocation with zerogroup expt

Fix to increase allocation of tokens at very high rates.

Change-Id: Ia27aa0316b0fab664230800f9c9947b5c68ecd58

11 years agoRemoving configure option for implicit wtd pred
Deb Mukherjee [Tue, 23 Apr 2013 06:24:06 +0000 (23:24 -0700)]
Removing configure option for implicit wtd pred

Change-Id: Ibe0628905925fc81bbb192651276f417c2aa7552

11 years agoMerge "Removing the implicit compound inter experiment" into experimental
Deb Mukherjee [Tue, 23 Apr 2013 06:22:28 +0000 (23:22 -0700)]
Merge "Removing the implicit compound inter experiment" into experimental

11 years agoRemoving the implicit compound inter experiment
Deb Mukherjee [Mon, 22 Apr 2013 23:29:34 +0000 (16:29 -0700)]
Removing the implicit compound inter experiment

Removing this experiment for now, since it has been broken with
the latest code changes.

Change-Id: I1be2181b56de490fcb577f5905b5e147a8ed82d8

11 years agoMerge "new version of speed 1" into experimental
Jim Bankoski [Mon, 22 Apr 2013 23:42:33 +0000 (16:42 -0700)]
Merge "new version of speed 1" into experimental

11 years agonew version of speed 1
Jim Bankoski [Mon, 22 Apr 2013 22:42:41 +0000 (15:42 -0700)]
new version of speed 1

This version of speed 1 only disables modes at higher resolution that
had distortions >2x the best mode we found...

The hope is that this could be a replacement for speed 0 ...

Change-Id: I7421f1016b8958314469da84c4dccddf25390720

11 years agoMoved dequantization into the token decoder
Scott LaVarnway [Mon, 22 Apr 2013 21:53:07 +0000 (17:53 -0400)]
Moved dequantization into the token decoder

Mostly for cleanup purposes.  Now we should be able to rework
the encoder/decoder to use a common idct/add function.

Change-Id: I1597cc59812f362ecec0a3493b6101a6cc6fa7ff

11 years agoAdding select_txfm_size function + vp9_decode_frame cleanup.
Dmitry Kovalev [Mon, 22 Apr 2013 21:39:21 +0000 (14:39 -0700)]
Adding select_txfm_size function + vp9_decode_frame cleanup.

Change-Id: I7594ca84106ee48f83e6fc3098c0de7a28d5a183

11 years agoAdding get_scan_{4x4, 8x8, 16x16} functions.
Dmitry Kovalev [Mon, 22 Apr 2013 21:08:41 +0000 (14:08 -0700)]
Adding get_scan_{4x4, 8x8, 16x16} functions.

Change-Id: Id4306ef6d65d4a3984aed50b775bdf48d4f6c438

11 years agoMerge "Bugfix from reordering frame probs patch" into experimental
Deb Mukherjee [Mon, 22 Apr 2013 19:59:51 +0000 (12:59 -0700)]
Merge "Bugfix from reordering frame probs patch" into experimental

11 years agoBugfix from reordering frame probs patch
Deb Mukherjee [Mon, 22 Apr 2013 19:43:12 +0000 (12:43 -0700)]
Bugfix from reordering frame probs patch

This fixes an intermittent mismatch issue cause by moving
the lossless mode decoding bit to after the loop filter
setup information. We need to ensure that the lossless bit
is decoded prior to loop filter setup.

Change-Id: I3faa3fff8e1013b7405dac91268350e059ed121e

11 years agoRemove vp9_recon_intra_mbuv
John Koleszar [Sat, 20 Apr 2013 21:17:57 +0000 (14:17 -0700)]
Remove vp9_recon_intra_mbuv

Use common vp9_recon_sbuv instead.

Change-Id: I146f79adfdfda2b52257a52fa783727f12afa246

11 years agoRewrite vp9_recon_sb*
John Koleszar [Sat, 20 Apr 2013 20:50:22 +0000 (13:50 -0700)]
Rewrite vp9_recon_sb*

Rewrite vp9_recon_sb{,y,uv} to be a loop over planes.

Change-Id: Ica2bbbb3105a1d29b2ff2ead07b76cde9683154c

11 years agoMove pre, second_pre to per-plane MACROBLOCKD data
John Koleszar [Sat, 20 Apr 2013 02:16:14 +0000 (19:16 -0700)]
Move pre, second_pre to per-plane MACROBLOCKD data

Continue moving framebuffers to per-plane data.

Change-Id: I237e5a998b364c4ec20316e7249206c0bff8631a

11 years agoMerge "Removes the code_nonzerocount experiment" into experimental
Deb Mukherjee [Mon, 22 Apr 2013 18:53:14 +0000 (11:53 -0700)]
Merge "Removes the code_nonzerocount experiment" into experimental

11 years agoRemoves the code_nonzerocount experiment
Deb Mukherjee [Mon, 22 Apr 2013 17:58:49 +0000 (10:58 -0700)]
Removes the code_nonzerocount experiment

This patch does not seem to give any benefits.

Change-Id: I9d2b4091d6af3dfc0875f24db86c01e2de57f8db

11 years agoMerge "End of orientation zero group experiment" into experimental
Deb Mukherjee [Mon, 22 Apr 2013 17:33:12 +0000 (10:33 -0700)]
Merge "End of orientation zero group experiment" into experimental

11 years agoEnd of orientation zero group experiment
Deb Mukherjee [Thu, 28 Mar 2013 17:42:23 +0000 (10:42 -0700)]
End of orientation zero group experiment

Adds an experiment that codes an end-of-orientation symbol
for every eligible zero encountered in scan order.

This cleans out various other sub-experiments that were part
of the origiinal patch, which will be later included if found
useful.

Results are slightly positive on all sets (0.1 - 0.2% range).

Change-Id: I57765c605fefc7fb9d1b57f1b356843602abefaf

11 years agoreconinter: remove unnecessary functions, params
John Koleszar [Fri, 19 Apr 2013 17:45:50 +0000 (10:45 -0700)]
reconinter: remove unnecessary functions, params

Removes the redundant dst pointers from vp9_build_inter_predictors_sb{y,uv}
and the remaining mb specific functions.

Change-Id: I7b6bf439d9394b85ea79b4fe61a3ffc1025720da

11 years agoMerge "make DC_PRED for i4x4 to use real pixels only" into experimental
Paul Wilkins [Mon, 22 Apr 2013 12:10:36 +0000 (05:10 -0700)]
Merge "make DC_PRED for i4x4 to use real pixels only" into experimental

11 years agoMerge "Reordering frame header probs." into experimental
Sami Pietilä [Mon, 22 Apr 2013 10:13:34 +0000 (03:13 -0700)]
Merge "Reordering frame header probs." into experimental

11 years agoMerge "Removing get_segment_id function and using existing vp9_get_pred_mb_segid...
Dmitry Kovalev [Sat, 20 Apr 2013 18:05:50 +0000 (11:05 -0700)]
Merge "Removing get_segment_id function and using existing vp9_get_pred_mb_segid." into experimental

11 years agoMerge "Finally removing BOOL_DECODER and using vp9_reader instead." into experimental
Dmitry Kovalev [Sat, 20 Apr 2013 18:04:06 +0000 (11:04 -0700)]
Merge "Finally removing BOOL_DECODER and using vp9_reader instead." into experimental

11 years agoMerge "Renaming vp9_extra_bit_struct to vp9_extra_bit." into experimental
Dmitry Kovalev [Sat, 20 Apr 2013 18:03:24 +0000 (11:03 -0700)]
Merge "Renaming vp9_extra_bit_struct to vp9_extra_bit." into experimental

11 years agoMerge "Move dst to per-plane MACROBLOCKD data" into experimental
John Koleszar [Fri, 19 Apr 2013 23:33:45 +0000 (16:33 -0700)]
Merge "Move dst to per-plane MACROBLOCKD data" into experimental

11 years agoMerge "Remove vp9_recon_mb{,y}" into experimental
John Koleszar [Fri, 19 Apr 2013 23:33:09 +0000 (16:33 -0700)]
Merge "Remove vp9_recon_mb{,y}" into experimental

11 years agomake DC_PRED for i4x4 to use real pixels only
Yaowu Xu [Fri, 19 Apr 2013 16:33:07 +0000 (09:33 -0700)]
make DC_PRED for i4x4 to use real pixels only

Wherever there are real pixels available before falling back to use
assumed values 127 and 129.

This also make DC_PRED for i4x4 consistent with DC_PRED for larger
blocks.

Change-Id: I54372924826118da023f402c802ac6ce0caa70c3

11 years agoMerge "Remove redundant pointers from void vp9_recon_sb{y,uv}" into experimental
John Koleszar [Fri, 19 Apr 2013 23:17:42 +0000 (16:17 -0700)]
Merge "Remove redundant pointers from void vp9_recon_sb{y,uv}" into experimental

11 years agoMove dst to per-plane MACROBLOCKD data
John Koleszar [Fri, 19 Apr 2013 22:52:17 +0000 (15:52 -0700)]
Move dst to per-plane MACROBLOCKD data

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

11 years agoEliminated prev_mip memsets/memcpys
Scott LaVarnway [Fri, 19 Apr 2013 20:32:15 +0000 (16:32 -0400)]
Eliminated prev_mip  memsets/memcpys

For 1080 material, this buffer is currently 2,270,928 bytes.  This patch swaps
ptrs instead of copying and uses the last show_frame flag instead of setting
the entire buffer to zero.  For the test clip used, the decoder improved by up
to 1%.

Change-Id: I686825712ad56043e09ada9808dc489f875a6ce0

11 years agoMerge "Clean out some legacy code." into experimental
Paul Wilkins [Fri, 19 Apr 2013 21:31:19 +0000 (14:31 -0700)]
Merge "Clean out some legacy code." into experimental

11 years agoRemoving get_segment_id function and using existing vp9_get_pred_mb_segid.
Dmitry Kovalev [Fri, 19 Apr 2013 21:25:32 +0000 (14:25 -0700)]
Removing get_segment_id function and using existing vp9_get_pred_mb_segid.

Change-Id: Iff35d4b2f8f65511f80c594958c01fb4673fa033

11 years agoClean out some legacy code.
Paul Wilkins [Fri, 19 Apr 2013 15:56:14 +0000 (16:56 +0100)]
Clean out some legacy code.

Removed some unused legacy code relating to GF activity.

Change-Id: I0b0fe90a1a5208aaa81d7393ba6cf75ab412dbda

11 years agoMerge "Remove unused parameters in handle_inter_mode" into experimental
Yunqing Wang [Fri, 19 Apr 2013 21:12:43 +0000 (14:12 -0700)]
Merge "Remove unused parameters in handle_inter_mode" into experimental

11 years agoMerge "Mv ref candidates cut to 2." into experimental
Paul Wilkins [Fri, 19 Apr 2013 21:09:44 +0000 (14:09 -0700)]
Merge "Mv ref candidates cut to 2." into experimental

11 years agoRemove vp9_recon_mb{,y}
John Koleszar [Fri, 19 Apr 2013 19:12:00 +0000 (12:12 -0700)]
Remove vp9_recon_mb{,y}

Use the common sb functions instead.

Change-Id: I4fa0a8ee3c6ada56271dd09bf895b97642f55858

11 years agoRemove redundant pointers from void vp9_recon_sb{y,uv}
John Koleszar [Fri, 19 Apr 2013 19:06:07 +0000 (12:06 -0700)]
Remove redundant pointers from void vp9_recon_sb{y,uv}

Remove the unnecessary _s_ from their names, and add a new
vp9_recon_sb() that calls the y and uv variants.

Change-Id: I7ffaa5ff5605a8472cac2a53de8cf889353039a6

11 years agoMerge "Move diff to MACROBLOCKD per-plane data." into experimental
John Koleszar [Fri, 19 Apr 2013 19:04:23 +0000 (12:04 -0700)]
Merge "Move diff to MACROBLOCKD per-plane data." into experimental