John Koleszar
501ae3484c
Fix vp9_build_intra_predictors_sbuv_s for non-4:2:0
...
Remove an assumption about chroma size, and the number of planes.
Change-Id: I286a7fac296ec334c6a8ad847f663f3adbb9f43e
2013-05-15 17:57:08 -07:00
John Koleszar
da5054c5af
Fix token allocation for non-4:2:0
...
Increase the allocated size of the token array to support 4:4:4.
Change-Id: I7766a7bedc74b819dcc1f3622d634f340fd3186d
2013-05-09 20:22:59 -07:00
John Koleszar
a37ee9d2e8
Fix non-4:2:0 chroma MV calculation for SPLITMV
...
The previous code was somewhat vestigial for 16x16 MI units, but was
incorrect when called with chroma blocks larger than 4x4 because the
block index caused a reference to a non-existent BMI. This patch uses
the same MV for all chroma subblocks in SPLITMV mode, which is
suboptimal for non-4:2:0 subsamplings, but as SPLITMV may be removed
in the near future, will use this as a stop gap.
Change-Id: I3211cee5ccf1cfb426e5eef5353b0ce5bb92b4cd
2013-05-09 20:14:39 -07:00
John Koleszar
6dab4d205e
Fix 4:2:0 assumptions in debug plane output
...
Fixes some debugging code to be able to write out frames with
chroma other than 4:2:0.
Change-Id: I5ee3d29e584db1f52d2de344db249e927eff10b7
2013-05-09 20:14:35 -07:00
John Koleszar
da58436f43
Subsampling aware allocs and bitstream
...
Make framebuffer allocations according to the chroma subsamping
factors in use. A bit is placed in the raw part of the frame header for
each of the two subsampling factors. This will be moved in a future
commit to make them part of the TBD feature set bits, probably only set
on keyframes, etc.
Change-Id: I59ed38d3a3c0d4af3c7c277617de28d04a001853
2013-05-09 17:50:12 -07:00
John Koleszar
1fec23bef6
Use common get_uv_tx_size()
...
Use a single method for calculating the transform size of
non-luma planes.
Change-Id: I16ebd10e7944d7b9075ab79d15e6a5b5f9bab775
2013-05-08 20:48:32 -07:00
Dmitry Kovalev
f66320abff
Removing LOOPFILTER_TYPE and corresponding bit in bitstream.
...
We don't have two loopfilter types anymore.
Change-Id: I53c0137361342c7d00887ad03be3490f0dfa3532
2013-05-08 16:44:08 -07:00
Dmitry Kovalev
267e9331e2
Merge "Using 4-iteration loop for extra_mb_col inside loopfilter function." into experimental
2013-05-08 16:37:34 -07:00
Dmitry Kovalev
c208cd67f4
Merge "Removing unused YV12_BUFFER_CONFIG arguments from motion search functions." into experimental
2013-05-08 16:36:42 -07:00
Dmitry Kovalev
7b602cba65
Merge "Eliminating several YV12_BUFFER_CONFIG usages." into experimental
2013-05-08 16:36:24 -07:00
Dmitry Kovalev
f0911886f3
Merge "Renaming 'Speed' to 'speed' inside VP9_COMP struct." into experimental
2013-05-08 16:35:35 -07:00
Dmitry Kovalev
60dd610ece
Merge "Removing y_to_uv_block_size and y_bsizet_to_block_size functions." into experimental
2013-05-08 16:35:28 -07:00
Jingning Han
944ad130b6
Merge "Extend left/above partition context to per mi(8x8)" into experimental
2013-05-08 16:33:25 -07:00
Dmitry Kovalev
8f4e9ac8bc
Removing y_to_uv_block_size and y_bsizet_to_block_size functions.
...
Change-Id: I49527ff8dd8bef1074c18a964fed2a575f0b118a
2013-05-08 15:23:42 -07:00
Dmitry Kovalev
4be190d9d0
Renaming 'Speed' to 'speed' inside VP9_COMP struct.
...
Change-Id: I4374b5af40ee9082ddf7956a9756a15ad9ad5436
2013-05-08 14:35:42 -07:00
Dmitry Kovalev
965c02c64d
Removing unused YV12_BUFFER_CONFIG arguments from motion search functions.
...
Also doing a little bit of cleanup inside vp9_mbgraph.c.
Change-Id: I9c6711b73810969d2d8fdb19f8edf9ed6e49d1e3
2013-05-08 14:12:37 -07:00
Dmitry Kovalev
81f33bc091
Eliminating several YV12_BUFFER_CONFIG usages.
...
Change-Id: Ia85b987c935d545920dcae5a6f44136b1a08a008
2013-05-08 14:11:47 -07:00
Dmitry Kovalev
673cc21dfc
Using loop to iterate through YV12_BUFFER_CONFIG planes.
...
Change-Id: I22f1066eb0022c8d75f65a78435ee4ffecdfe0c9
2013-05-08 13:39:16 -07:00
Dmitry Kovalev
80f9963232
Merge "Replacing vp9_{write, write_literal, bit} macros with functions." into experimental
2013-05-08 11:24:10 -07:00
Dmitry Kovalev
a0b6b8a7d4
Merge "Removing unused code + little cleanup." into experimental
2013-05-08 11:23:14 -07:00
Jingning Han
4a88ad89fd
Extend left/above partition context to per mi(8x8)
...
Update and buffer left/above partition information context per 8x8
block. This allows to further enable recursive partition down to
4x4 block size, and hence deprecating I4X4_PRED and SPLITMV.
This commit also fixes a context buffer swap/restore issue in 32x32
partition type search. This gives 0.1% performance gain for derf/yt.
Will refactor the superblock partition type search into recursion
form.
Change-Id: Ib61975aca5f12b78d8018481d7fa1393d085689b
2013-05-08 10:20:34 -07:00
John Koleszar
14a5c7285b
Make switchable filter search subsampling-aware
...
Makes the temporary storage of the filtered data agnostic to
the number of planes and how they're subsampled.
Change-Id: I12f352cd69a47ebe1ac622af30db29b49becb7f4
2013-05-07 21:57:00 -07:00
John Koleszar
7465f52f81
Merge "Make setup_pred_block subsampling-aware." into experimental
2013-05-07 21:53:31 -07:00
Dmitry Kovalev
cd5113ceec
Replacing vp9_{write, write_literal, bit} macros with functions.
...
Also removing BOOL_CODER and using vp9_writer instead.
Change-Id: I31d1ec661872f7eb1fe869607b6ed0ebfbb03e01
2013-05-07 18:19:50 -07:00
Dmitry Kovalev
8e39295934
Using 4-iteration loop for extra_mb_col inside loopfilter function.
...
Change-Id: I3a4f456035628a9397bdc57c19cdb03439ab1ed3
2013-05-07 17:18:57 -07:00
Dmitry Kovalev
e8747866dc
Merge "Renaming Y1 and UV quant prefixes to y_ and uv_." into experimental
2013-05-07 17:16:41 -07:00
Dmitry Kovalev
80997b3aa2
Merge "Adding get_switchable_rate function." into experimental
2013-05-07 17:10:48 -07:00
John Koleszar
d6c490cb15
Merge "Deprecate code_zerogroup experiment." into experimental
2013-05-07 17:09:38 -07:00
Dmitry Kovalev
9cd5406c32
Merge "Removing vp9_swap_yv12_buffer function and corresponding files." into experimental
2013-05-07 17:02:38 -07:00
Dmitry Kovalev
1e7cf5d174
Renaming Y1 and UV quant prefixes to y_ and uv_.
...
Change-Id: If57e360c187a475fc90edb8c7170f498efcb31a5
2013-05-07 16:59:15 -07:00
Dmitry Kovalev
cba0a5db2b
Removing unused code + little cleanup.
...
Change-Id: I81c19a8f19cfb5c7183609656ade833d72feb500
2013-05-07 16:56:22 -07:00
Paul Wilkins
a14ae84749
Deprecate code_zerogroup experiment.
...
Delete code under the CONFIG_CODE_ZEROGROUP flag.
Change-Id: I5fe6c7b42a5da9b73118e33594301da4129f320a
2013-05-07 16:52:55 -07:00
Dmitry Kovalev
455816231e
Adding get_switchable_rate function.
...
Change-Id: I71311a14f8d7f48508b250f25d1d0914c6a1ac72
2013-05-07 16:52:04 -07:00
Dmitry Kovalev
b05247df95
Removing vp9_swap_yv12_buffer function and corresponding files.
...
Adding static swap_yv12 function to vp9_firstpass.c.
Change-Id: I7da9caab9720498db4a74c627901bf37816ed06c
2013-05-07 16:49:22 -07:00
Paul Wilkins
1ed57a6a62
Deprecate comp_interintra_pred experiment.
...
Delete code under the CONFIG_COMP_INTERINTRA_PRED
flag.
Change-Id: I3d1079cf46305c08f7e11d738596ea112e7b547f
2013-05-07 16:24:08 -07:00
Paul Wilkins
0bfcd30768
Remove enable_6tap filter experiment.
...
Clean out code under CONFIG_ENABLE_6TAP flag.
Change-Id: Ic45b624081181027d6ba24d55dd644c3197f9830
2013-05-07 16:13:02 -07:00
Paul Wilkins
8c1b516d10
Deprecate the newbintramode experiment.
...
Clean out code relating to newbintramode.
Change-Id: Ie91f4f156cdf60ce0da8ca407c1c9cb00c7d0705
2013-05-07 16:00:59 -07:00
Paul Wilkins
9afb6700c2
Adjust q range
...
Skip Q values between the q.0 mode and a real q of
2.0 as these are not valuable from an RD perspective.
Change-Id: I110c4858c57f97315953f4d88a2596d4764360df
2013-05-07 15:34:17 -07:00
Jingning Han
b0cd64f189
Merge "Add building blocks for partition down to 4x4" into experimental
2013-05-07 15:33:20 -07:00
Jingning Han
c0102fd88b
Merge "Cosmetic changes in handle_inter_mode_" into experimental
2013-05-07 15:33:12 -07:00
Dmitry Kovalev
847e184011
Merge "General code cleanup inside treewriter-related files." into experimental
2013-05-07 15:04:28 -07:00
Dmitry Kovalev
3cd8897623
Merge "Adding encode_loopfilter function." into experimental
2013-05-07 12:59:12 -07:00
Jingning Han
cf8b5a09ed
Add building blocks for partition down to 4x4
...
Macro ab4x4 contains experiments for recursive partition down to
4x4 block size.
Change-Id: Ic727842fa98a4df9fd51e0025a545dc76a5c76c1
2013-05-07 12:11:51 -07:00
Jingning Han
cfea74bcf4
Cosmetic changes in handle_inter_mode_
...
Use unified function pointers to variance_.
Change-Id: I78891bede56e73306851808d96f09dc0d3d8074e
2013-05-07 12:06:16 -07:00
John Koleszar
e559e14fa6
Make setup_pred_block subsampling-aware.
...
Code previously set up the pointers by scaling by MI_UV_SIZE, which
is 4:2:0 only.
Change-Id: Ic13a92895cff018ec1345736746ed84cb31e6e31
2013-05-07 11:47:45 -07:00
John Koleszar
64c0b3075e
Use common setup_dst_planes function
...
Previous code assumed 4:2:0 subsampling.
Change-Id: Ie0814e45d099e84d0ded880b62e7bc98f85b7f0c
2013-05-07 10:25:54 -07:00
Jingning Han
c0504a9b24
Merge "Merge SB8X8 into the codebase" into experimental
2013-05-07 09:23:47 -07:00
Jingning Han
776c1482a3
Merge SB8X8 into the codebase
...
Pull sb8x8 out of experimental list. verified via borg run tests.
Fixed unit test failures.
Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
2013-05-07 09:08:25 -07:00
Scott LaVarnway
9c7d06e6f3
Merge "Removed vp9_setup_intra_recon()" into experimental
2013-05-07 08:24:26 -07:00
Jingning Han
8c70a0fcab
Merge "Fix tile independency issue in sb8x8" into experimental
2013-05-06 22:28:04 -07:00