Dmitry Kovalev [Tue, 18 Mar 2014 17:47:51 +0000 (10:47 -0700)]
Fixing warnings/errors from c++ compiler.
Change-Id: Ia561dda53f2dd10e3a10a2df2adb8027ab19397a
James Zern [Fri, 14 Mar 2014 22:27:00 +0000 (15:27 -0700)]
Merge "y4minput: add some tolerance for read short counts"
Jingning Han [Fri, 14 Mar 2014 21:31:25 +0000 (14:31 -0700)]
Merge "Properly reset the block coding skip flag array in non-RD mode"
Yaowu Xu [Fri, 14 Mar 2014 20:27:32 +0000 (13:27 -0700)]
Merge "change to save rdmult value correctly"
Jingning Han [Fri, 14 Mar 2014 19:07:21 +0000 (12:07 -0700)]
Properly reset the block coding skip flag array in non-RD mode
The block coding skip flags are assigned in the normal RD mode
decision loop. They are then used in the final encoding stage.
In the non-RD mode decision, the forward transform and quantization
stages are replaced by modeling based on SSE and variance of
prediction residues. This commit applies reset to this array in
the non-RD coding mode.
Change-Id: I66584669b035e9c8ac23e95047849ff277472742
Yaowu Xu [Fri, 14 Mar 2014 18:48:09 +0000 (11:48 -0700)]
Merge "Use of inline instead of INLINE."
Yaowu Xu [Fri, 14 Mar 2014 18:03:58 +0000 (11:03 -0700)]
change to save rdmult value correctly
This commit moves the position where rdmult is saved to make sure it
is the correct value. Prior, an uninitialized value may be saved and
restored.
This addresses issue:
https://code.google.com/p/webm/issues/detail?id=733
Change-Id: I436407f289169bc63da3c5a6bf609bed16cb71b5
Jingning Han [Fri, 14 Mar 2014 16:06:11 +0000 (09:06 -0700)]
Merge "Remove deprecated function nonrd_use_fixed_partition"
Jingning Han [Fri, 14 Mar 2014 16:06:03 +0000 (09:06 -0700)]
Merge "Remove unused comment"
Jingning Han [Fri, 14 Mar 2014 16:05:54 +0000 (09:05 -0700)]
Merge "Refactor the non-RD partition decision process"
Jingning Han [Fri, 14 Mar 2014 16:05:41 +0000 (09:05 -0700)]
Merge "Unify non-RD partition use cases"
Jingning Han [Fri, 14 Mar 2014 16:05:32 +0000 (09:05 -0700)]
Merge "Return rate and distortion cost values from non-RD mode decision"
Paul Wilkins [Fri, 14 Mar 2014 11:36:06 +0000 (11:36 +0000)]
Use of inline instead of INLINE.
This causes a build failure in VS 2008.
Change-Id: I03b0c0c006589b56d92a238d7b794711eb62575e
Dmitry Kovalev [Fri, 14 Mar 2014 00:47:27 +0000 (17:47 -0700)]
Merge "Adding vp9_swap_mi_and_prev_mi() function."
Dmitry Kovalev [Fri, 14 Mar 2014 00:47:14 +0000 (17:47 -0700)]
Merge "Using MB_PREDICTION_MODE enum instead of int."
Jingning Han [Thu, 13 Mar 2014 23:13:07 +0000 (16:13 -0700)]
Remove deprecated function nonrd_use_fixed_partition
This function was subsumed by nonrd_use_partition, hence removed.
Change-Id: Id36757bc600ce6cf6ca03ad5df80268c4786d386
Jingning Han [Thu, 13 Mar 2014 23:03:48 +0000 (16:03 -0700)]
Remove unused comment
Change-Id: I12ce22c036b12073a45b762d4dd38f6ec4960e56
Jingning Han [Thu, 13 Mar 2014 22:51:36 +0000 (15:51 -0700)]
Refactor the non-RD partition decision process
Combine the common variables and functions used by different
speed features.
Change-Id: Ifd1fa86200edbcc9e50b3fc3b1ba8a275bc3c17f
Jingning Han [Thu, 13 Mar 2014 22:31:23 +0000 (15:31 -0700)]
Unify non-RD partition use cases
This commit unifies the non-RD partition use cases for both fixed
and variable block sizes. Deprecate and remove the separate function
for fixed partition type only.
Change-Id: I2b6cb945e90c1566f985adcebc4d0757480a8004
Dmitry Kovalev [Thu, 13 Mar 2014 22:03:00 +0000 (15:03 -0700)]
Using MB_PREDICTION_MODE enum instead of int.
Change-Id: I652d17f7bff84f75d015f4f39652472e14eb3134
Marco Paniconi [Thu, 13 Mar 2014 21:49:15 +0000 (14:49 -0700)]
Merge "Move svc layer_context to separate file."
Marco Paniconi [Thu, 13 Mar 2014 17:26:52 +0000 (10:26 -0700)]
Move svc layer_context to separate file.
Change-Id: Ie47c139d48cb18409d71f98f6a5b9eeb9f9437a9
Dmitry Kovalev [Thu, 13 Mar 2014 20:55:33 +0000 (13:55 -0700)]
Adding vp9_swap_mi_and_prev_mi() function.
Change-Id: I18b3939f0b51085cdd25c9182c3a9c7536ca7e3e
Dmitry Kovalev [Thu, 13 Mar 2014 20:45:45 +0000 (13:45 -0700)]
Merge "Removing unused select_cq_level() function."
Dmitry Kovalev [Thu, 13 Mar 2014 20:45:32 +0000 (13:45 -0700)]
Merge "Speeding up reading of intra block modes."
Dmitry Kovalev [Thu, 13 Mar 2014 20:45:26 +0000 (13:45 -0700)]
Merge "Renaming decode_modes_{b, sb}."
Dmitry Kovalev [Thu, 13 Mar 2014 20:45:19 +0000 (13:45 -0700)]
Merge "Cleaning up vp9_cx_iface.c file."
Jingning Han [Thu, 13 Mar 2014 19:52:59 +0000 (12:52 -0700)]
Return rate and distortion cost values from non-RD mode decision
This commit allows the non-RD mode decision process to return the
rate and distortion costs associated with the selected mode.
Change-Id: Ibe0f67d323f65839fd9cb0a726c1219bf7b55da9
Jim Bankoski [Thu, 13 Mar 2014 19:10:36 +0000 (12:10 -0700)]
Merge changes Icb5a23d5,I62daa593
* changes:
vp9_lossless_test tests Renamed with suffix Large
error_resilience_test renaming -> Suffix Large
Jingning Han [Thu, 13 Mar 2014 16:14:13 +0000 (09:14 -0700)]
Merge "Tune rate-distortion modeling for non-RD mode decision"
Jingning Han [Thu, 13 Mar 2014 16:14:00 +0000 (09:14 -0700)]
Merge "Explicitly assign interp_kernel value in non-RD coding mode"
Jim Bankoski [Tue, 11 Mar 2014 16:08:34 +0000 (09:08 -0700)]
vp9_lossless_test tests Renamed with suffix Large
Change-Id: Icb5a23d5931841cb51a0518b3d33f3b1340ef3f8
Jim Bankoski [Wed, 12 Mar 2014 15:13:16 +0000 (08:13 -0700)]
error_resilience_test renaming -> Suffix Large
Change-Id: I62daa5938c93f0fce0c90ad3b67a2eb590120e38
Jim Bankoski [Thu, 13 Mar 2014 13:08:29 +0000 (06:08 -0700)]
Merge "datarate_test renaming with suffix large because it is slow."
Deb Mukherjee [Thu, 13 Mar 2014 11:09:13 +0000 (04:09 -0700)]
Merge "Preliminary code for variance based paritioning"
Dmitry Kovalev [Thu, 13 Mar 2014 06:30:14 +0000 (23:30 -0700)]
Merge "Renaming vp8_cfg to extra_cfg + cleanup."
Dmitry Kovalev [Thu, 13 Mar 2014 06:29:29 +0000 (23:29 -0700)]
Merge "Renaming mode2txfm_map to intra_mode_to_tx_type_lookup."
Dmitry Kovalev [Thu, 13 Mar 2014 06:29:19 +0000 (23:29 -0700)]
Merge "Moving declaration of vp9_encode_frame() to vp9_encodeframe.h."
Yaowu Xu [Thu, 13 Mar 2014 02:36:48 +0000 (19:36 -0700)]
Revert "With on demand border extension, clamping the MV"
This reverts commit
b0fec6ab4a61ded1ab2ade188987631f53c4e9c1.
Change-Id: I9acd8ee0423f22d92138f11579611ff959331013
Yaowu Xu [Thu, 13 Mar 2014 02:36:40 +0000 (19:36 -0700)]
Revert "Remove dec_build_inter_predictors() parameters"
This reverts commit
9650b9d72aa236e76c54b4f0acebd6bf1d6bbe48.
Change-Id: I841c4a4734170fda63469e32adc10703aa4bf0fa
Dmitry Kovalev [Thu, 13 Mar 2014 00:29:37 +0000 (17:29 -0700)]
Moving declaration of vp9_encode_frame() to vp9_encodeframe.h.
Change-Id: I14adfd32622152abdc22c16429db38f6724628a4
Dmitry Kovalev [Thu, 13 Mar 2014 00:23:26 +0000 (17:23 -0700)]
Renaming mode2txfm_map to intra_mode_to_tx_type_lookup.
Change-Id: I9a19eb96907f674e3ce1e573f5dd49f0fbf2ae4f
Jim Bankoski [Thu, 13 Mar 2014 00:20:16 +0000 (17:20 -0700)]
datarate_test renaming with suffix large because it is slow.
Change-Id: I5cdff078159a379bc48f1d8e249e144c6d27c946
Dmitry Kovalev [Wed, 12 Mar 2014 23:57:15 +0000 (16:57 -0700)]
Cleaning up vp9_cx_iface.c file.
Change-Id: I491fc2330734517c466f62c99b82e46d46b98875
Dmitry Kovalev [Wed, 12 Mar 2014 22:49:49 +0000 (15:49 -0700)]
Renaming vp8_cfg to extra_cfg + cleanup.
Change-Id: I9a67dec9c198ce1dca90c086be55ad050c5c6f6c
Dmitry Kovalev [Wed, 12 Mar 2014 22:11:07 +0000 (15:11 -0700)]
Renaming decode_modes_{b, sb}.
decode_modes_b => decode_block
decode_modes_sb => decode_partition
Change-Id: I2a208f5f7bcaa1105f6a2244e37c53b8958c5d76
Deb Mukherjee [Tue, 4 Mar 2014 19:15:35 +0000 (11:15 -0800)]
Preliminary code for variance based paritioning
Brings back most of Jim's previous patch for choosing
partitioning based on variance while making it compatible
with the current state of the code. Also adds a
nonrd_use_partition() function to recursively encode for any
arbitrary sb_type decisions within a 64x64 block; and
includes some refactoring.
Currently, when the VAR_BASED_PARTITIONING mode is turned on
for speed 7, there is a 10+% speed-up observed.
Experiments/improvements with this new partitioning method
will be conducted subsequently.
Change-Id: Ie6f43bfbde30583e941f450bf07c3b48828c9571
Alex Converse [Wed, 12 Mar 2014 21:51:42 +0000 (14:51 -0700)]
Add missing virtual destructors to tests.
Change-Id: I916b1e646d9fe142d3483039eb6cc72464529832
Alex Converse [Wed, 12 Mar 2014 21:35:19 +0000 (14:35 -0700)]
Merge "Add an active map test."
Alex Converse [Tue, 11 Mar 2014 23:40:57 +0000 (16:40 -0700)]
Add an active map test.
Change-Id: I641a75dd75cd3c53a20eb4dbceb7a9b70a5a0e4d
Jingning Han [Wed, 12 Mar 2014 17:03:28 +0000 (10:03 -0700)]
Tune rate-distortion modeling for non-RD mode decision
This commit adjusts the rate-distortion modeling for non-RD mode
decision. It puts more weights on energy from AC coefficients when
estimating the cost. The coding performance for rtc testset is
improved by 0.72%.
Change-Id: Ifa6ff11311a513ec2b10586589e82a9a21f6c61c
Jingning Han [Wed, 12 Mar 2014 16:26:20 +0000 (09:26 -0700)]
Explicitly assign interp_kernel value in non-RD coding mode
Assign interp_kernel value in MACROBLOCKD. This will be used to
select prediction filter coefficient sets and generate motion
compensated prediction.
Change-Id: I28c8dfb2dae6566f6939bb328aca5875c94bee65
Dmitry Kovalev [Wed, 12 Mar 2014 19:32:09 +0000 (12:32 -0700)]
Speeding up reading of intra block modes.
Reimplementing sub8x8-reading of intra block modes in
read_intra_frame_mode_info() and read_intra_block_mode_info(). Code looks
more readable as well.
Change-Id: Ia42fc7d0dad708bc0c7a8bff1f8b37809b843f40
Dmitry Kovalev [Wed, 12 Mar 2014 19:20:18 +0000 (12:20 -0700)]
Merge "Moving mi_streams from VP9Decompressor to VP9Common."
Dmitry Kovalev [Wed, 12 Mar 2014 19:19:43 +0000 (12:19 -0700)]
Merge "Removing last_mi from MACROBLOCKD struct."
Tom Finegan [Wed, 12 Mar 2014 18:29:35 +0000 (11:29 -0700)]
Merge "gen_msvs_vcxproj.sh: add --enable-werror option"
Dmitry Kovalev [Wed, 12 Mar 2014 17:33:36 +0000 (10:33 -0700)]
Merge "Removing unused last_skip_{probs_q, false_probs} arrays."
Jim Bankoski [Wed, 12 Mar 2014 17:30:20 +0000 (10:30 -0700)]
Merge "cut down calls to get_block_context"
Dmitry Kovalev [Wed, 12 Mar 2014 07:22:34 +0000 (00:22 -0700)]
Merge "Adding type casts to remove C++ compiler errors."
Dmitry Kovalev [Wed, 12 Mar 2014 07:21:06 +0000 (00:21 -0700)]
Merge "Cleaning up vp9_firstpass.c."
Dmitry Kovalev [Tue, 11 Mar 2014 01:49:13 +0000 (18:49 -0700)]
Removing unused last_skip_{probs_q, false_probs} arrays.
Change-Id: Id84a43583af57889e87462ce8b76e5a552f44826
Yaowu Xu [Wed, 12 Mar 2014 03:13:35 +0000 (20:13 -0700)]
Merge "Increase redo_frequency to 4 and cleanups"
James Zern [Thu, 13 Feb 2014 00:30:43 +0000 (16:30 -0800)]
y4minput: add some tolerance for read short counts
Change-Id: Id5d3c536b7494eb3292f33f35c700b5de7034595
Yaowu Xu [Tue, 11 Mar 2014 18:13:38 +0000 (11:13 -0700)]
Increase redo_frequency to 4 and cleanups
Clean-ups include
a. redundant code in rt -5 speed feature settings
b. code that guarantees square block availability in
rd_auto_partition_range()
Change-Id: Ic7b04d45b6dc15c461e0edbbb4e78aec20348291
Alex Converse [Tue, 11 Mar 2014 23:39:42 +0000 (16:39 -0700)]
Fix some active_map corner cases.
These were discovered by ActiveMapTest.
Change-Id: Ifcd305ae2d954b6ec7edcaed0f80baf18c769e01
Alex Converse [Tue, 11 Mar 2014 20:39:33 +0000 (13:39 -0700)]
Merge "Add a conservative RD based active map in vp9."
Jim Bankoski [Tue, 11 Mar 2014 18:18:43 +0000 (11:18 -0700)]
cut down calls to get_block_context
Change-Id: I894977e6655630823145c60c8258551bd3c8c76b
Alex Converse [Mon, 10 Mar 2014 23:13:49 +0000 (16:13 -0700)]
Add VP9 support to the set maps example.
Change-Id: I8c3be3ed4d6bbc5fa3042a2d5637407d4d56afee
Alex Converse [Mon, 10 Mar 2014 23:08:58 +0000 (16:08 -0700)]
Make vp8_set_maps more flexible.
Change-Id: I754a5c5e342cfa7c52c1a75424f18aea8b7657d2
Dmitry Kovalev [Tue, 11 Mar 2014 03:50:58 +0000 (20:50 -0700)]
Merge "Using enums instead of integers."
Dmitry Kovalev [Tue, 11 Mar 2014 03:50:09 +0000 (20:50 -0700)]
Merge "Moving static_scene_max_gf_interval to RATE_CONTROL struct."
Dmitry Kovalev [Tue, 11 Mar 2014 03:49:31 +0000 (20:49 -0700)]
Merge "Using MAX_REF_FRAMES constant instead of number 4."
Jingning Han [Tue, 11 Mar 2014 02:03:09 +0000 (19:03 -0700)]
Merge "Fix use of uninitialized bsize in non-RD mode"
Dmitry Kovalev [Tue, 11 Mar 2014 01:47:41 +0000 (18:47 -0700)]
Using MAX_REF_FRAMES constant instead of number 4.
Change-Id: I6e2fec2814fd366a1ce1321208d3b0e8aa0d98b0
Dmitry Kovalev [Tue, 11 Mar 2014 01:33:08 +0000 (18:33 -0700)]
Using enums instead of integers.
Change-Id: Ic0d74ab3a4c0c854fbcf59d9df5212c218bc68f9
Dmitry Kovalev [Tue, 11 Mar 2014 01:03:05 +0000 (18:03 -0700)]
Cleaning up vp9_firstpass.c.
Change-Id: Ie68eefddf9b0120021668cf21dc2c6fc837c50ac
Dmitry Kovalev [Tue, 11 Mar 2014 00:29:15 +0000 (17:29 -0700)]
Moving static_scene_max_gf_interval to RATE_CONTROL struct.
Change-Id: Id63e114a8f0615dbafd6a816019cdebffb983d2c
Dmitry Kovalev [Mon, 10 Mar 2014 23:24:38 +0000 (16:24 -0700)]
Removing unused select_cq_level() function.
Change-Id: I612a5d2b3ab1f9202d5b0421a82a80849603c40d
Dmitry Kovalev [Mon, 10 Mar 2014 23:12:45 +0000 (16:12 -0700)]
Moving mi_streams from VP9Decompressor to VP9Common.
Change-Id: I7ad79c061ad4efbc4914ac49723b48183fdbdd47
Dmitry Kovalev [Mon, 10 Mar 2014 23:02:03 +0000 (16:02 -0700)]
Removing last_mi from MACROBLOCKD struct.
Change-Id: Ied12b39c55667b26fd3bf90eb331e601c53a10f6
Jingning Han [Wed, 5 Mar 2014 02:46:40 +0000 (18:46 -0800)]
Fix use of uninitialized bsize in non-RD mode
The block size used for non-RD mode decision in FIXED_PARTITION
setting was uninitialized. This commit fixes it by setting block
size to be BLOCK_16X16.
Change-Id: Ief04c9f1ab668de69297d9ab3dc15e2fa0bc4e95
Alex Converse [Sat, 8 Mar 2014 02:15:33 +0000 (18:15 -0800)]
Add a conservative RD based active map in vp9.
Change-Id: I47b3c38aadfd8f3ea08515a18a5948aa1375c650
Dmitry Kovalev [Mon, 10 Mar 2014 22:21:30 +0000 (15:21 -0700)]
Cleaning up vp9_rdopt.c.
Change-Id: I8f06d03689ee90a19c9067840b24748bfe2d741f
Dmitry Kovalev [Mon, 10 Mar 2014 21:53:30 +0000 (14:53 -0700)]
Adding type casts to remove C++ compiler errors.
Change-Id: I224e49955ad6c833d204feb8efc4056e37d206be
Dmitry Kovalev [Mon, 10 Mar 2014 19:29:28 +0000 (12:29 -0700)]
Merge "Cleaning up select_tx_mode() function."
James Zern [Mon, 10 Mar 2014 19:19:38 +0000 (12:19 -0700)]
Merge "Disable sixtap_predict_test for neon."
Dmitry Kovalev [Mon, 10 Mar 2014 19:11:09 +0000 (12:11 -0700)]
Merge "Renaming vp9_onyxd.h and vp9_onyxd_if.c to vp9_decoder.{h, c}."
Dmitry Kovalev [Mon, 10 Mar 2014 19:07:26 +0000 (12:07 -0700)]
Merge "Cleaning up rd_pick_sb_modes() function."
Dmitry Kovalev [Mon, 10 Mar 2014 17:38:25 +0000 (10:38 -0700)]
Cleaning up select_tx_mode() function.
Change-Id: Ib105db0f3deeedf6a8402a292db3df1d77a3d7c1
Dmitry Kovalev [Mon, 10 Mar 2014 17:58:32 +0000 (10:58 -0700)]
Cleaning up rd_pick_sb_modes() function.
Changing aq_mode type from int to AQ_MODE enum.
Change-Id: Ib7b5f0b70d02ded58a31dfade9c05a347f73beca
Dmitry Kovalev [Mon, 10 Mar 2014 17:50:16 +0000 (10:50 -0700)]
Adding reusable get_y_mode_prob() function.
Change-Id: Iebd182d7aeebc0f8964b6fd35057449bb25b00c1
Dmitry Kovalev [Mon, 10 Mar 2014 17:43:47 +0000 (10:43 -0700)]
Merge "General cleanup in vp9_encodeframe.c."
Dmitry Kovalev [Mon, 10 Mar 2014 17:40:44 +0000 (10:40 -0700)]
Merge "Cleaning up optimize_b() function."
Marco Paniconi [Mon, 10 Mar 2014 17:05:27 +0000 (10:05 -0700)]
Merge "Add realtime-mode to datarate tests."
hkuang [Fri, 7 Mar 2014 19:21:28 +0000 (11:21 -0800)]
Disable sixtap_predict_test for neon.
Neon code unit test is failing now due to save/restore neon register
operations are not done inside this function, but outside of it. Disable
it now until VP8 neon code get cleaned up.
Bug: 725
Change-Id: Id1ff1ef50a0e894b41c820a310ff8ba31ef12d18
Deb Mukherjee [Mon, 10 Mar 2014 16:53:21 +0000 (09:53 -0700)]
Merge "Support for a fast diamond search"
Jim Bankoski [Mon, 10 Mar 2014 14:36:24 +0000 (07:36 -0700)]
Merge "vp9_read_bit_buffer.h convert header statics to global functions"
Jim Bankoski [Mon, 10 Mar 2014 14:36:05 +0000 (07:36 -0700)]
Merge "vp9_reconinter.h static functions in header converted to global"
Jim Bankoski [Mon, 10 Mar 2014 14:35:54 +0000 (07:35 -0700)]
Merge "vp9_onyxc_int.h static -> static inline in header"
Dmitry Kovalev [Sun, 9 Mar 2014 17:26:39 +0000 (10:26 -0700)]
Merge "Cleaning up vp9_get_mvpred_var()."