Commit Graph

4653 Commits

Author SHA1 Message Date
John Koleszar
c7c98a7ffb 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
2013-04-23 17:43:43 -07:00
John Koleszar
5c649f67a2 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
2013-04-23 17:43:43 -07:00
John Koleszar
bc30736f9b Merge "Remove coeff from BLOCK" into experimental 2013-04-23 17:42:12 -07:00
John Koleszar
aa6a36b062 Merge "Convert coeff to per-plane MACROBLOCK data" into experimental 2013-04-23 17:41:59 -07:00
Jingning Han
adbbd26517 Merge "Enable rectangular support for comp inter-intra" into experimental 2013-04-23 17:16:16 -07:00
John Koleszar
48f3e66e16 Remove coeff from BLOCK
Lookup the data per-plane from the MACROBLOCK struct.

Change-Id: I9253c4d3cf886aa9ab4aeab23a2156bfcf994ede
2013-04-23 16:39:21 -07:00
Dmitry Kovalev
9828a33ebb Removing unused mi_mv_pred_row and mi_mv_pred_col functions.
Change-Id: If8ba37bf0b86e8dea88c27d911e8ddb0f6d5a3c5
2013-04-23 16:34:22 -07:00
John Koleszar
138ec38cab 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
2013-04-23 16:28:17 -07:00
John Koleszar
4f35e3e1c1 Merge "Move src_diff to per-plane MACROBLOCK data" into experimental 2013-04-23 16:24:08 -07:00
Dmitry Kovalev
de7c25c9f0 Code cleanup inside vp9_get_pred_context function.
Change-Id: Id06b7a299a26ed944a401faae51907537f722a7e
2013-04-23 16:18:09 -07:00
Dmitry Kovalev
d811558f63 Removing redundant code in vp9_entropymode.c.
Change-Id: Ia7266b8d3aa3d5cff2db0c3b2f014def045759af
2013-04-23 15:56:27 -07:00
Dmitry Kovalev
144f49c6aa Simple cleanup inside vp9_decodframe.c and vp9_entropymode.c.
Change-Id: I62dde981f5201c5fbc22001609ee4b5fd0a9bdf5
2013-04-23 15:50:56 -07:00
Jingning Han
a26c1edbb4 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
2013-04-23 15:39:19 -07:00
Ronald S. Bultje
276a1106e6 Merge changes I54acef34,I72d42971 into experimental
* changes:
  Make some sb_type comparisons independent of literal enum values.
  Make loopfilter aware of rectangular blocks.
2013-04-23 15:29:19 -07:00
Dmitry Kovalev
a21359cbea Merge "Adding select_txfm_size function + vp9_decode_frame cleanup." into experimental 2013-04-23 13:53:14 -07:00
Jingning Han
9b8fcd40df Merge "Remove the unused gf_active_ptr from MACROBLOCK" into experimental 2013-04-23 13:52:50 -07:00
Jingning Han
e6ac91800b Remove the unused gf_active_ptr from MACROBLOCK
The variable gf_active_ptr is not used anywhere, hence is removed.

Change-Id: I6badc20fade48ae12fd19e7e4cd8fe5e051c20ac
2013-04-23 12:59:33 -07:00
Dmitry Kovalev
d0d1094a05 Merge "Adding get_scan_{4x4, 8x8, 16x16} functions." into experimental 2013-04-23 12:44:51 -07:00
Johann
7af58d4338 Resolve declaration and implementation.
Clean Windows build warnings:
warning C4028: formal parameter <N> different from declaration

This was fixed independently in master and experimental but the fixes
were in opposite directions. One added const to the declaration and the
other removed it from the implementation.

Also update the variable names. This doesn't modify the data so call it
ref, matching the functions in the vicinity, rather than dst.

Change-Id: I2ffc6b4a874cb98c26487b909d20a5e099b5582c
2013-04-23 12:42:31 -07:00
Johann
ac980b71cf Improve sign consistency.
Fix warning on windows: signed/unsigned mismatch on lines 415, 454

Comparison was between size_t data_sz >= int index_sz on 415 and
unsigned int data_sz >= int index_sz on 454. Both might be changed to
size_t but that would be tracing and replacing all comparisons is
outside the scope of this change.

In the rest of these two functions ensure unsigned values are used
consistently.

Change-Id: I922b399ceca612a92f44b9d1d331c1c6bae9d768
2013-04-23 12:42:20 -07:00
Ronald S. Bultje
e0fc9201fe Minor indent changes in loopfilter code.
Change-Id: I0cdc951558e4d7748f63df8c03b1c9dce086acb0
2013-04-23 12:37:05 -07:00
Ronald S. Bultje
94297863bf Add basic building blocks for 8x8 superblocks experiment.
Change-Id: I274a1d2e461e6ffdb106bac4ad6951692ace314e
2013-04-23 12:34:37 -07:00
Ronald S. Bultje
5ba98ebcf1 Make some sb_type comparisons independent of literal enum values.
Change-Id: I54acef342b8e787e05af0febd7cf0d7d10288383
2013-04-23 12:34:32 -07:00
Ronald S. Bultje
0db636619f 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
2013-04-23 12:34:32 -07:00
John Koleszar
cbd1315ac4 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
2013-04-23 12:18:51 -07:00
Ronald S. Bultje
c4cae4cd5d Remove unused corner_predictor and log2_minus_1 functions.
Change-Id: Ic659544ca12b1bc191b93ddfa378964bd133bfc9
2013-04-23 11:19:39 -07:00
Ronald S. Bultje
00269a2413 Remove unused stuffing function.
Change-Id: I2bc8d775f8d698bf8582f4eecabc2329452e8d9b
2013-04-23 11:18:42 -07:00
Scott LaVarnway
e3167b8c23 Merge "Eliminated prev_mip memsets/memcpys" into experimental 2013-04-23 10:22:13 -07:00
Deb Mukherjee
64e7f017ce Fix in token allocation with zerogroup expt
Fix to increase allocation of tokens at very high rates.

Change-Id: Ia27aa0316b0fab664230800f9c9947b5c68ecd58
2013-04-23 08:51:31 -07:00
Deb Mukherjee
0defc2ddb3 Removing configure option for implicit wtd pred
Change-Id: Ibe0628905925fc81bbb192651276f417c2aa7552
2013-04-22 23:24:06 -07:00
Deb Mukherjee
611b26bbe0 Merge "Removing the implicit compound inter experiment" into experimental 2013-04-22 23:22:28 -07:00
Deb Mukherjee
735febf1ce Removing the implicit compound inter experiment
Removing this experiment for now, since it has been broken with
the latest code changes.

Change-Id: I1be2181b56de490fcb577f5905b5e147a8ed82d8
2013-04-22 16:46:54 -07:00
Jim Bankoski
366ff224ef Merge "new version of speed 1" into experimental 2013-04-22 16:42:33 -07:00
Jim Bankoski
e7bddba149 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
2013-04-22 15:42:41 -07:00
Scott LaVarnway
e732bc298c 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
2013-04-22 17:53:07 -04:00
Dmitry Kovalev
d5413a8e82 Adding select_txfm_size function + vp9_decode_frame cleanup.
Change-Id: I7594ca84106ee48f83e6fc3098c0de7a28d5a183
2013-04-22 14:39:21 -07:00
Dmitry Kovalev
5de7e16ca2 Adding get_scan_{4x4, 8x8, 16x16} functions.
Change-Id: Id4306ef6d65d4a3984aed50b775bdf48d4f6c438
2013-04-22 14:08:41 -07:00
Deb Mukherjee
94fa3bcc06 Merge "Bugfix from reordering frame probs patch" into experimental 2013-04-22 12:59:51 -07:00
Deb Mukherjee
5fa64bdef0 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
2013-04-22 12:43:12 -07:00
John Koleszar
01e41a531b Remove vp9_recon_intra_mbuv
Use common vp9_recon_sbuv instead.

Change-Id: I146f79adfdfda2b52257a52fa783727f12afa246
2013-04-22 12:05:24 -07:00
John Koleszar
c2c15e8eb3 Rewrite vp9_recon_sb*
Rewrite vp9_recon_sb{,y,uv} to be a loop over planes.

Change-Id: Ica2bbbb3105a1d29b2ff2ead07b76cde9683154c
2013-04-22 12:05:24 -07:00
John Koleszar
a443447b8b Move pre, second_pre to per-plane MACROBLOCKD data
Continue moving framebuffers to per-plane data.

Change-Id: I237e5a998b364c4ec20316e7249206c0bff8631a
2013-04-22 12:05:24 -07:00
Deb Mukherjee
f12509f640 Merge "Removes the code_nonzerocount experiment" into experimental 2013-04-22 11:53:14 -07:00
Deb Mukherjee
0aa79be7d5 Removes the code_nonzerocount experiment
This patch does not seem to give any benefits.

Change-Id: I9d2b4091d6af3dfc0875f24db86c01e2de57f8db
2013-04-22 10:58:49 -07:00
Deb Mukherjee
6ce718eb18 Merge "End of orientation zero group experiment" into experimental 2013-04-22 10:33:12 -07:00
Deb Mukherjee
70d9f116fd 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
2013-04-22 09:27:59 -07:00
John Koleszar
6d5ac8f2e1 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
2013-04-22 08:20:54 -07:00
Paul Wilkins
f82c61b886 Merge "make DC_PRED for i4x4 to use real pixels only" into experimental 2013-04-22 05:10:36 -07:00
Sami Pietilä
fbe9098c9f Merge "Reordering frame header probs." into experimental 2013-04-22 03:13:34 -07:00
Dmitry Kovalev
c7a38f77ef Merge "Removing get_segment_id function and using existing vp9_get_pred_mb_segid." into experimental 2013-04-20 11:05:50 -07:00