]> granicus.if.org Git - libvpx/log
libvpx
9 years agoMerge "Reduce sizes of some of the tests" into nextgenv2
Jingning Han [Mon, 9 May 2016 02:14:38 +0000 (02:14 +0000)]
Merge "Reduce sizes of some of the tests" into nextgenv2

9 years agoMerge "Make parameter types consistent" into nextgenv2
Yaowu Xu [Sat, 7 May 2016 20:33:25 +0000 (20:33 +0000)]
Merge "Make parameter types consistent" into nextgenv2

9 years agoMerge "Change initializations to be compatible with MSVC" into nextgenv2
Yaowu Xu [Sat, 7 May 2016 20:33:11 +0000 (20:33 +0000)]
Merge "Change initializations to be compatible with MSVC" into nextgenv2

9 years agoMake LAST_FRAME always point to the newly coded frame in ext-refs
Zoe Liu [Fri, 6 May 2016 00:32:51 +0000 (17:32 -0700)]
Make LAST_FRAME always point to the newly coded frame in ext-refs

This patch changes the encoder only for the ext-refs experiment. For
each newly coded frame to refresh the LAST_FRAME, the decoder is
notified that the LAST4_FRAME is to be refreshed, and read out the
updated reference frame buffer vitural indexes for the next coded
frame in a way that:
LAST4_FRAME => LAST_FRAME,
LAST_FRAME  => LAST2_FRAME,
LAST2_FRAME => LAST3_FRAME, and
LAST3_FRAME => LAST4_FRAME.

Compared against the original ext-refs experiment in TOT, a small gain
is achieved in overall PSNR:
lowres Avg: -0.154
lowres BDRate: -0.044

Change-Id: I648810c146a3cd915b408274a9373b7d38324864

9 years agoDual prediction filter type for motion compensated reference
Jingning Han [Mon, 2 May 2016 17:52:05 +0000 (10:52 -0700)]
Dual prediction filter type for motion compensated reference

Make the bit-stream level support per direction filter type coding
for motion compensated reference.

Change-Id: I61a2360b301075f6734cfd9711b7ae68f214174d

9 years agoReduce sizes of some of the tests
Debargha Mukherjee [Sat, 7 May 2016 00:23:01 +0000 (17:23 -0700)]
Reduce sizes of some of the tests

Change-Id: I846410bd61253d0271c6315d266c6edc2808621d

9 years agoMerge "Normalize naming/testing convention in vp10_fht8x8_test.cc" into nextgenv2
Yi Luo [Fri, 6 May 2016 23:48:16 +0000 (23:48 +0000)]
Merge "Normalize naming/testing convention in vp10_fht8x8_test.cc" into nextgenv2

9 years agoMake parameter types consistent
Yaowu Xu [Fri, 6 May 2016 21:21:06 +0000 (14:21 -0700)]
Make parameter types consistent

This fixes compiler warnings from MSVC.

Change-Id: Iaac0e994869561371295578a893f766493ce0544

9 years agoNormalize naming/testing convention in vp10_fht8x8_test.cc
Yi Luo [Thu, 5 May 2016 23:32:12 +0000 (16:32 -0700)]
Normalize naming/testing convention in vp10_fht8x8_test.cc

Use clear and correct type/function names.
Add ASM_REGISTER_STATE_CHECK wrapper for SSE4.1 function.
Conform macro EXPECT_EQ(expected, actual) convention.

Change-Id: I26c6430bea98a4fcb9727eb411b86a3b7abce933

9 years agoChange initializations to be compatible with MSVC
Yaowu Xu [Fri, 6 May 2016 21:20:15 +0000 (14:20 -0700)]
Change initializations to be compatible with MSVC

Change-Id: If5473dadc40d3caea61953fbd112a01939dc1183

9 years agoMerge "Change initializations of variables with type "int_mv"" into nextgenv2
Yaowu Xu [Fri, 6 May 2016 20:21:39 +0000 (20:21 +0000)]
Merge "Change initializations of variables with type "int_mv"" into nextgenv2

9 years agoMerge "Clean up ext-interp experiment" into nextgenv2
Jingning Han [Fri, 6 May 2016 17:16:56 +0000 (17:16 +0000)]
Merge "Clean up ext-interp experiment" into nextgenv2

9 years agoMerge "Rename pick_filter_intra." into nextgenv2
Alex Converse [Fri, 6 May 2016 16:57:53 +0000 (16:57 +0000)]
Merge "Rename pick_filter_intra." into nextgenv2

9 years agoChange initializations of variables with type "int_mv"
Yaowu Xu [Fri, 6 May 2016 01:31:59 +0000 (18:31 -0700)]
Change initializations of variables with type "int_mv"

This is to make MSVC happy and eliminate build errors.

Change-Id: Ic81e7c7516923913e6e7a652b691953e4a1af8aa

9 years agoMerge "Replace inline with INLINE" into nextgenv2
Yaowu Xu [Fri, 6 May 2016 16:48:54 +0000 (16:48 +0000)]
Merge "Replace inline with INLINE" into nextgenv2

9 years agoReplace inline with INLINE
Yaowu Xu [Fri, 6 May 2016 01:28:04 +0000 (18:28 -0700)]
Replace inline with INLINE

This fixes build issues under MSVC

Change-Id: I6db6a43cba2e8ddb099b676f1ae019fe2742f366

9 years agoRename pick_filter_intra.
Alex Converse [Wed, 4 May 2016 20:08:20 +0000 (13:08 -0700)]
Rename pick_filter_intra.

The word 'pick' is usually used in functions that make decisions where
the bitstream allows multiple legal choices, and not to limit the
bitstream format itself.

Change-Id: Ia60709c29e004475e1aa8861aefded27ebaf4712

9 years agoClean up ext-interp experiment
Jingning Han [Thu, 5 May 2016 23:25:31 +0000 (16:25 -0700)]
Clean up ext-interp experiment

Remove the unused sub-experiments within the ext-interp experiment.

Change-Id: I716e3392412d02c56f9395a86c9cab02f580fa59

9 years agoRemove misc-fixes flag from the experimental list
Jingning Han [Thu, 5 May 2016 23:10:21 +0000 (16:10 -0700)]
Remove misc-fixes flag from the experimental list

This flag is not in effect in the codebase. The related contents
have been merged.

Change-Id: I7125ccbedf39e4683d117ecb72ffdd7547c23fc4

9 years agoMerge "Add 1D tx set that corresponds to reduced ext tx inter sets" into nextgenv2
Sarah Parker [Thu, 5 May 2016 23:06:14 +0000 (23:06 +0000)]
Merge "Add 1D tx set that corresponds to reduced ext tx inter sets" into nextgenv2

9 years agoAdd config flag for new_quant experiment
Sarah Parker [Thu, 5 May 2016 20:41:24 +0000 (13:41 -0700)]
Add config flag for new_quant experiment

Change-Id: I3575f688ad473d9750a16c7dae74f5f97d026b26

9 years agoMerge "Add the experiment of bidir-pred" into nextgenv2
Zoe Liu [Thu, 5 May 2016 22:04:56 +0000 (22:04 +0000)]
Merge "Add the experiment of bidir-pred" into nextgenv2

9 years agoAdd the experiment of bidir-pred
Zoe Liu [Thu, 5 May 2016 21:32:48 +0000 (14:32 -0700)]
Add the experiment of bidir-pred

This experiment will implement the use of a backward prediction
reference without temporal filtering. No overlay frame will be
transmitted, instead, the flag of show_existing_frame will be turned
on.

Change-Id: I361a3004344e2ca6b63723f660635c0d790ee036

9 years agoMerge "Remove a redundant variable definition from sub8x8 RD loop" into nextgenv2
Jingning Han [Thu, 5 May 2016 21:17:31 +0000 (21:17 +0000)]
Merge "Remove a redundant variable definition from sub8x8 RD loop" into nextgenv2

9 years agoMerge "Fix mismatch with ext-interp." into nextgenv2
Debargha Mukherjee [Thu, 5 May 2016 21:06:51 +0000 (21:06 +0000)]
Merge "Fix mismatch with ext-interp." into nextgenv2

9 years agoMerge "Refactor supertx rd search" into nextgenv2
Debargha Mukherjee [Thu, 5 May 2016 21:06:18 +0000 (21:06 +0000)]
Merge "Refactor supertx rd search" into nextgenv2

9 years agoRemove a redundant variable definition from sub8x8 RD loop
Jingning Han [Thu, 5 May 2016 19:41:05 +0000 (12:41 -0700)]
Remove a redundant variable definition from sub8x8 RD loop

Change-Id: I464cbb75fbd3872f66ca024dd803605542a9d887

9 years agoFix mismatch with ext-interp.
Geza Lore [Thu, 5 May 2016 17:06:21 +0000 (18:06 +0100)]
Fix mismatch with ext-interp.

The encoder signals the interp filter type in the frame header if all
blocks use the same filter (see bitstream.c:fix_interp_filter). This
decision is made based on the counts, but with ext-interp, the counts
are actually only incremented for blocks that fail vp10_is_interp_needed
(see for example encodeframe.c:update_state), otherwise a default value
is used (EIGHTTAP_REGULAR). The decoder however first checks if the
interp filter is signaled at the frame level, and uses that filter type
for all blocks, even if the default value should have been used.

This patch makes the decoder first check with vp10_is_interp_needed
to see if the default value should be used and then checks the frame
level signaling, which reconciles the difference between encoder and
decoder.

Change-Id: I87857ade42dea06b0d5ec2a029e9219268334dbb

9 years agoImprove multi-threaded encode/decode test.
Geza Lore [Wed, 4 May 2016 10:25:01 +0000 (11:25 +0100)]
Improve multi-threaded encode/decode test.

The test used to test that multi-threaded encode/decode resulted in
the same reconstructed image as single-threaded encode/decode. This
however did not mean that the multi-threaded encoder produced the same
bitstream as the single-threaded encoder, as the multi-threaded encoder
could use different forward probability updates and still produce a
bitstream that is sub optimal but yields the same reconstructed image.
The test now asserts that the bitstream is the same as well as the
reconstructed image. Also added more cpu-use values for testing VP10.

Change-Id: I324ed33a702c488b39e077f750d81a1ad1d7ea87

9 years agoRefactor supertx rd search
Geza Lore [Wed, 27 Jan 2016 17:21:04 +0000 (17:21 +0000)]
Refactor supertx rd search

General code cleanup, but also use the same supertx condition for
ext-partition-types as for conventional partitions.

Change-Id: If86eb18b3c07b9c60434eec2c98b97ce93665b67

9 years agoMerge "Fix vp10_accumulate_frame_counts once and for all." into nextgenv2
Geza Lore [Thu, 5 May 2016 10:19:41 +0000 (10:19 +0000)]
Merge "Fix vp10_accumulate_frame_counts once and for all." into nextgenv2

9 years agoMerge "Change to call build_masked_compound_highbd()" into nextgenv2
Yaowu Xu [Thu, 5 May 2016 04:09:26 +0000 (04:09 +0000)]
Merge "Change to call build_masked_compound_highbd()" into nextgenv2

9 years agoMerge "Refactor intra filter type context fetch function" into nextgenv2
Jingning Han [Thu, 5 May 2016 03:32:06 +0000 (03:32 +0000)]
Merge "Refactor intra filter type context fetch function" into nextgenv2

9 years agoChange to call build_masked_compound_highbd()
Yaowu Xu [Wed, 4 May 2016 22:58:15 +0000 (15:58 -0700)]
Change to call build_masked_compound_highbd()

from combine_interintra_highbd(). This fixes a crash in encoder in
highbitdepth build.

Change-Id: I0aa4cc30200703ff21e9990163bb26ace41aabbc

9 years agoRefactor intra filter type context fetch function
Jingning Han [Wed, 4 May 2016 19:37:39 +0000 (12:37 -0700)]
Refactor intra filter type context fetch function

Factor out common codes from vp10_get_pred_context_intra_interp().
This prevents a potential invalid access of pointers xd->left_mbmi
and xd->above_mbmi.

The coding statistics are identical.

Change-Id: I72dbf9380da7359b997bbe925010faab8e9e7f8d

9 years agoRemove the use of non-declared "plane"
Yaowu Xu [Wed, 4 May 2016 19:39:37 +0000 (12:39 -0700)]
Remove the use of non-declared "plane"

The variable is not defined, it is not needed by the called function
either.

Change-Id: Ia601c03231afc0ae68a10ae1f35e8fc4121c3d28

9 years agoChange to use proper type in vp10_token_state
Yaowu Xu [Wed, 4 May 2016 18:59:10 +0000 (11:59 -0700)]
Change to use proper type in vp10_token_state

"qc" in vp10_token_state is used to save quantized coefficients, this
commit changes the type from short to tran_low_t to properly reflect
the value range for highbitdepth build.

This fixes an out-of-range bug when optimize_b is used in highbitdepth
build.

Change-Id: I914c6fd3d3f4b9d061f9ed7cc5f08a883ab59dcd

9 years agoAdd 1D tx set that corresponds to reduced ext tx inter sets
Sarah Parker [Wed, 4 May 2016 18:34:45 +0000 (11:34 -0700)]
Add 1D tx set that corresponds to reduced ext tx inter sets

This is the set of 1D transforms that are used in each
ext_tx_used_inter set. The 1D sets will help speed up
the ext tx pruning functions.

Change-Id: Ib46ad26be2df60b3bfcd2f22d96e7f38ae286df5

9 years agoFix vp10_accumulate_frame_counts once and for all.
Geza Lore [Wed, 4 May 2016 10:30:36 +0000 (11:30 +0100)]
Fix vp10_accumulate_frame_counts once and for all.

This ensures the multi-threaded and single-threaded encoder/decoder
always uses the same probability contexts.

Change-Id: I6f1e7c6bd8808c390c1dc0a628ae97db3acedf6d

9 years agoMerge "Compute end of frame data precisely with ext-tile." into nextgenv2
Debargha Mukherjee [Tue, 3 May 2016 22:42:42 +0000 (22:42 +0000)]
Merge "Compute end of frame data precisely with ext-tile." into nextgenv2

9 years agoMerge "Refactoring and uv fix for wedge" into nextgenv2
Debargha Mukherjee [Tue, 3 May 2016 22:36:24 +0000 (22:36 +0000)]
Merge "Refactoring and uv fix for wedge" into nextgenv2

9 years agoMerge "Test tile row independence." into nextgenv2
Debargha Mukherjee [Tue, 3 May 2016 21:50:29 +0000 (21:50 +0000)]
Merge "Test tile row independence." into nextgenv2

9 years agoMerge "Configure tiles in tests when using ext-tile." into nextgenv2
Debargha Mukherjee [Tue, 3 May 2016 21:49:47 +0000 (21:49 +0000)]
Merge "Configure tiles in tests when using ext-tile." into nextgenv2

9 years agoMerge "Replace hard coded values in mv_has_subpel" into nextgenv2
Jingning Han [Tue, 3 May 2016 19:25:19 +0000 (19:25 +0000)]
Merge "Replace hard coded values in mv_has_subpel" into nextgenv2

9 years agoCompute end of frame data precisely with ext-tile.
Geza Lore [Tue, 3 May 2016 17:25:01 +0000 (18:25 +0100)]
Compute end of frame data precisely with ext-tile.

Decoding superframes correctly requires computing the end of the
frame contents in the bitstream precisely. This patch enables
ext-tile to do so.

Also extended superframe_test to test with multiple tiles if using
ext-tile.

Change-Id: I04bb8cde8755a3d764ee3c36aa8b7a6c5c9db742

9 years agoTest tile row independence.
Geza Lore [Tue, 3 May 2016 12:55:25 +0000 (13:55 +0100)]
Test tile row independence.

Tile rows should now be independent, so make pbi->inv_tile_order
invert the decoding order of tile rows as well as tile columns.
This should improve test coverage. Also added more tile configurations
to the tile_independence_tests.

Change-Id: I14b0f2fa9241c1acaf9e2a07071952cb33feca77

9 years agoConfigure tiles in tests when using ext-tile.
Geza Lore [Tue, 3 May 2016 10:53:55 +0000 (11:53 +0100)]
Configure tiles in tests when using ext-tile.

With ext-tile enabled, the encoder test driver needs to configure the
tile sizes wit different values to encode using a single tile, and to
decode all tiles. This should fix most unit test failures.

Change-Id: I0a0d26737414669791f3bd8d80c537db09f06072

9 years agoMerge "Add dual_filter into the experimental flag list" into nextgenv2
Jingning Han [Tue, 3 May 2016 17:29:31 +0000 (17:29 +0000)]
Merge "Add dual_filter into the experimental flag list" into nextgenv2

9 years agoMerge "Enable VP10 HBD PSNR checking unit test" into nextgenv2
Yi Luo [Tue, 3 May 2016 16:20:23 +0000 (16:20 +0000)]
Merge "Enable VP10 HBD PSNR checking unit test" into nextgenv2

9 years agoAdd dual_filter into the experimental flag list
Jingning Han [Mon, 2 May 2016 15:55:40 +0000 (08:55 -0700)]
Add dual_filter into the experimental flag list

Change-Id: I3f240fb46716b70e7c0ddd40660f55e1285875cd

9 years agoReplace hard coded values in mv_has_subpel
Jingning Han [Tue, 3 May 2016 16:08:06 +0000 (09:08 -0700)]
Replace hard coded values in mv_has_subpel

Change-Id: Id437740c2db1a3a56c1ad29d8b51bb763c044c1d

9 years agoRefactoring and uv fix for wedge
Debargha Mukherjee [Mon, 2 May 2016 20:35:02 +0000 (13:35 -0700)]
Refactoring and uv fix for wedge

lowres: -1.72%

Change-Id: I4c883097caac72fab8e01945454579891617145e

9 years agoMerge "Fix vp10 highbd psnr calculation" into nextgenv2
Angie Chiang [Tue, 3 May 2016 01:29:51 +0000 (01:29 +0000)]
Merge "Fix vp10 highbd psnr calculation" into nextgenv2

9 years agoMerge "Add the 64-bit CPU cycle count utility function" into nextgenv2
Yi Luo [Tue, 3 May 2016 00:51:28 +0000 (00:51 +0000)]
Merge "Add the 64-bit CPU cycle count utility function" into nextgenv2

9 years agoAdd the 64-bit CPU cycle count utility function
Yi Luo [Thu, 21 Apr 2016 22:59:05 +0000 (15:59 -0700)]
Add the 64-bit CPU cycle count utility function

Change-Id: Ie87245bbdf5735bc9729199eeb07899d81dbf267
(cherry picked from commit b547a2f38cfab81f6cbe392b9eb48ab0c12b80cf)

9 years agoFix vp10 highbd psnr calculation
Angie Chiang [Mon, 2 May 2016 21:03:33 +0000 (14:03 -0700)]
Fix vp10 highbd psnr calculation

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1209
Change-Id: Ia189ec4c1cc9bbcb79a45d1904567d943e2b3bb6

9 years agoEnable VP10 HBD PSNR checking unit test
Yi Luo [Mon, 2 May 2016 18:29:58 +0000 (11:29 -0700)]
Enable VP10 HBD PSNR checking unit test

We enable this unit test to protect the high bit depth picture
quality from degrading under VP10 optimization and new experimental
tools.

Change-Id: I6297a44cf01954773e06549ab2a68c319fc848a8

9 years agoMerge "Bug fixes for obmc/ext-inter/ext-tile experiment" into nextgenv2
Yue Chen [Mon, 2 May 2016 18:09:08 +0000 (18:09 +0000)]
Merge "Bug fixes for obmc/ext-inter/ext-tile experiment" into nextgenv2

9 years agoMerge "HBD hybrid transform 8x8 SSE4.1 optimization" into nextgenv2
Yi Luo [Mon, 2 May 2016 17:34:50 +0000 (17:34 +0000)]
Merge "HBD hybrid transform 8x8 SSE4.1 optimization" into nextgenv2

9 years agoMerge "Fix encoder failure in segmentation mode" into nextgenv2
Jingning Han [Mon, 2 May 2016 15:39:12 +0000 (15:39 +0000)]
Merge "Fix encoder failure in segmentation mode" into nextgenv2

9 years agoBug fixes for obmc/ext-inter/ext-tile experiment
Yue Chen [Sat, 30 Apr 2016 00:45:53 +0000 (17:45 -0700)]
Bug fixes for obmc/ext-inter/ext-tile experiment

Fix 1: in ext-inter + obmc config, properly identify if the left
predictor used for obmc is a compound one in the case that the
neighbor uses wedgeinterinter pred and we will dump the ALTREF part.
This will fix the seg fault in unit test:
VP10/AltRefForcedKeyTestLarge.Frame1IsKey/0

Fix 2: in ext-tile + obmc experiment, handle the case that the
above block does not fit in the same row tile with the current one,
so as to prevent potential crashes.

Change-Id: I1c177d4f4ad15e10d11d8756e146496437753eea

9 years agoFix encoder failure in segmentation mode
Jingning Han [Sat, 30 Apr 2016 00:32:44 +0000 (17:32 -0700)]
Fix encoder failure in segmentation mode

This commit fixes an encoder segment fault in the codebase, when
the segmentation feature is turned on. The issue was introduced in

5cce322 Porting ext_partition experiment from nextgen

Change-Id: Ifb4c06c5a6976114a8bd061d40d0338a136abaaf

9 years agoHBD hybrid transform 8x8 SSE4.1 optimization
Yi Luo [Thu, 28 Apr 2016 23:10:14 +0000 (16:10 -0700)]
HBD hybrid transform 8x8 SSE4.1 optimization

- Tx_type: DCT_DCT, DCT_ADST, ADST_DCT, ADST_ADST.
- Update bit-exact unit test against current C version.
- HBD encoder speed improves ~3.8%.

Change-Id: Ie13925ba11214eef2b5326814940638507bf68ec

9 years agoRefactor wedge generation
Debargha Mukherjee [Wed, 27 Apr 2016 20:42:27 +0000 (13:42 -0700)]
Refactor wedge generation

Change-Id: I2ec4f562e28a4673477e20186f9d6167b24b76b8

9 years agoMerge "Make the backward updates work with bitshifts" into nextgenv2
Debargha Mukherjee [Thu, 28 Apr 2016 20:25:53 +0000 (20:25 +0000)]
Merge "Make the backward updates work with bitshifts" into nextgenv2

9 years agoMake the backward updates work with bitshifts
Debargha Mukherjee [Tue, 26 Apr 2016 22:04:19 +0000 (15:04 -0700)]
Make the backward updates work with bitshifts

Removes integer divides from backward updates for VP10.
Currently this is put in as part of the entropy experiment.
Coding efficiency change is in the noise level.

Change-Id: I5b3c0ab6169ee6d82d0ca1778e264fd4577cdd32

9 years agoBrings back near-near compound mode into ext-inter
Debargha Mukherjee [Fri, 11 Mar 2016 22:05:23 +0000 (14:05 -0800)]
Brings back near-near compound mode into ext-inter

lowres: improves by 0.1%

Change-Id: I245019916bf47c6e24bc8c3953b86715ab0193c9

9 years agoFix some mismatches when using ext-interp.
Geza Lore [Thu, 28 Apr 2016 16:59:42 +0000 (17:59 +0100)]
Fix some mismatches when using ext-interp.

With ext interp, write_switchable_interp_filter calls
vp10_is_interp_needed, which needs access to the reference frame
buffers to check if they are scaled, the ref frame buffer pointer
at this point used to be uninitialized in the encoder resulting in
bitstream syntax mismatch when the encoder/decoder did not read/write
the interp filter element consistently.

Change-Id: Ie0be2a19cbfcb5639a751aa857458e91c23b8fe3

9 years agoMerge changes Ia2dd6bb1,Id1220b03 into nextgenv2
Alex Converse [Wed, 27 Apr 2016 23:59:14 +0000 (23:59 +0000)]
Merge changes Ia2dd6bb1,Id1220b03 into nextgenv2

* changes:
  transform tests: Avoid #if inside INSTANTIATE_TEST_CASE_P
  variance_test: Avoid #if inside INSTANTIATE_TEST_CASE_P

9 years agoMerge "convolve_test: Avoid #if inside INSTANTIATE_TEST_CASE_P" into nextgenv2
Alex Converse [Wed, 27 Apr 2016 23:47:30 +0000 (23:47 +0000)]
Merge "convolve_test: Avoid #if inside INSTANTIATE_TEST_CASE_P" into nextgenv2

9 years agoMerge "buf_ans: Misc cleanup." into nextgenv2
Alex Converse [Wed, 27 Apr 2016 23:02:39 +0000 (23:02 +0000)]
Merge "buf_ans: Misc cleanup." into nextgenv2

9 years agoMerge "ext-intra: completely remove floating point operations" into nextgenv2
Hui Su [Wed, 27 Apr 2016 22:00:22 +0000 (22:00 +0000)]
Merge "ext-intra: completely remove floating point operations" into nextgenv2

9 years agotransform tests: Avoid #if inside INSTANTIATE_TEST_CASE_P
Alex Converse [Wed, 27 Apr 2016 19:52:25 +0000 (12:52 -0700)]
transform tests: Avoid #if inside INSTANTIATE_TEST_CASE_P

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1200

Change-Id: Ia2dd6bb1ca2dff4422753af4a00156a12e488ed0

9 years agovariance_test: Avoid #if inside INSTANTIATE_TEST_CASE_P
Alex Converse [Wed, 27 Apr 2016 19:23:00 +0000 (12:23 -0700)]
variance_test: Avoid #if inside INSTANTIATE_TEST_CASE_P

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1200

Change-Id: Id1220b03e7be931e298848de381fdbce911e4a73

9 years agoconvolve_test: Avoid #if inside INSTANTIATE_TEST_CASE_P
Alex Converse [Wed, 27 Apr 2016 01:09:40 +0000 (18:09 -0700)]
convolve_test: Avoid #if inside INSTANTIATE_TEST_CASE_P

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1200

Change-Id: I7f7754e7d1288b103a4510303d10afc68a7d8ca8

9 years agoMerge "Fix vp10 txfm on MSVC 2015." into nextgenv2
Alex Converse [Wed, 27 Apr 2016 21:38:30 +0000 (21:38 +0000)]
Merge "Fix vp10 txfm on MSVC 2015." into nextgenv2

9 years agobuf_ans: Misc cleanup.
Alex Converse [Wed, 27 Apr 2016 21:03:04 +0000 (14:03 -0700)]
buf_ans: Misc cleanup.

Change-Id: I18a3ef2ee6cdda57abcd27683b30b4e3136182c0

9 years agoMerge "Turn skip recode off temporarily for ref-mv" into nextgenv2
Debargha Mukherjee [Wed, 27 Apr 2016 20:43:32 +0000 (20:43 +0000)]
Merge "Turn skip recode off temporarily for ref-mv" into nextgenv2

9 years agoFix vp10 txfm on MSVC 2015.
Alex Converse [Wed, 27 Apr 2016 00:08:18 +0000 (17:08 -0700)]
Fix vp10 txfm on MSVC 2015.

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1187

Change-Id: Ied6d3d003ed6ab9cf4f03cdd1d0037ae755254f4

9 years agoext-intra: completely remove floating point operations
hui su [Tue, 26 Apr 2016 16:36:11 +0000 (09:36 -0700)]
ext-intra: completely remove floating point operations

No performance changes

Change-Id: Ia489041253423ddf8ebc7e2d41fbfb9e138109f0

9 years agoMerge "Fix compound mv costing for ref-mv." into nextgenv2
Jingning Han [Wed, 27 Apr 2016 17:15:16 +0000 (17:15 +0000)]
Merge "Fix compound mv costing for ref-mv." into nextgenv2

9 years agoTurn skip recode off temporarily for ref-mv
Debargha Mukherjee [Tue, 26 Apr 2016 15:24:01 +0000 (08:24 -0700)]
Turn skip recode off temporarily for ref-mv

To fix tests in VP10/AltRefForcedKeyTestLarge.Frame1IsKey/*

Change-Id: I2f4f9fea515c9935d57006b709a9dd524f174b25

9 years agoMerge "Initialize dummy variables." into nextgenv2
Debargha Mukherjee [Wed, 27 Apr 2016 16:36:24 +0000 (16:36 +0000)]
Merge "Initialize dummy variables." into nextgenv2

9 years agoFix compound mv costing for ref-mv.
Geza Lore [Wed, 27 Apr 2016 12:37:29 +0000 (13:37 +0100)]
Fix compound mv costing for ref-mv.

I believe this is necessary for computing the correct rate,
when not doing joint_motion_search.

Change-Id: I7634d6d7a5e6f0a6998edb4d577dd047d80df3c8

9 years agoInitialize dummy variables.
Geza Lore [Wed, 27 Apr 2016 12:31:52 +0000 (13:31 +0100)]
Initialize dummy variables.

Valgrind flags these up as needed by handle_inter_mode.
Initializing fixes some assertion failures in the unit tests with
only ref-mv enabled.

Change-Id: I4d56c356692745dbecd9f790cdbb8dbfbaf72d55

9 years agoFix ext-tile without ext-partition.
Geza Lore [Wed, 27 Apr 2016 10:08:41 +0000 (11:08 +0100)]
Fix ext-tile without ext-partition.

Default case (when ext-partition was not configured) was incorrect
in encoder tile size initialization.

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1197

Change-Id: Ibe57cb1dc16b9fa300573816fc16d2d2f6849fc6

9 years agoMerge "Optimization for EXT_INTER + OBMC" into nextgenv2
Yue Chen [Wed, 27 Apr 2016 06:29:38 +0000 (06:29 +0000)]
Merge "Optimization for EXT_INTER + OBMC" into nextgenv2

9 years agoOptimization for EXT_INTER + OBMC
Yue Chen [Tue, 26 Apr 2016 22:47:43 +0000 (15:47 -0700)]
Optimization for EXT_INTER + OBMC

Remove the restriction that the neighboring predictor cannot be
used in obmc prediction if it is an interintra or wedgeinterinter
block. The inter predictor of the interintra block, or the first
inter predictor(using LAST or GOLDEN frame) of the wedgeinterinter
block will be exploited in obmc prediction.

Coding gain: 0.248% (2.833%->3.081%) lowres

Change-Id: I4ac0368b9d2f2956f266b30c1ac97db8bafa0742

9 years agoMerge "Reduce intra transform set" into nextgenv2
Debargha Mukherjee [Tue, 26 Apr 2016 23:32:16 +0000 (23:32 +0000)]
Merge "Reduce intra transform set" into nextgenv2

9 years agoMerge "Remove double counting for mv costs" into nextgenv2
Yue Chen [Tue, 26 Apr 2016 21:40:13 +0000 (21:40 +0000)]
Merge "Remove double counting for mv costs" into nextgenv2

9 years agoMerge "Rework motion vector precision limit" into nextgenv2
Jingning Han [Tue, 26 Apr 2016 21:31:09 +0000 (21:31 +0000)]
Merge "Rework motion vector precision limit" into nextgenv2

9 years agoRemove double counting for mv costs
Yue Chen [Tue, 26 Apr 2016 20:01:52 +0000 (13:01 -0700)]
Remove double counting for mv costs

The bug is introduced by commit 1a0352d, in which mv costs are
counted twice in joint_motion_search() in ext_inter experiment.

Change-Id: Ibace453df999d3c2e781d73f1f0912038fee2d4e

9 years agoMerge "ext-intra: get rid of some floating operations." into nextgenv2
Hui Su [Tue, 26 Apr 2016 18:53:33 +0000 (18:53 +0000)]
Merge "ext-intra: get rid of some floating operations." into nextgenv2

9 years agoRework motion vector precision limit
Jingning Han [Mon, 25 Apr 2016 21:26:53 +0000 (14:26 -0700)]
Rework motion vector precision limit

This commit enables 1/8 luma component motion vector precision
for all motion vector cases. It improves the compression performance
of lowres by 0.13% and hdres by 0.49%.

Change-Id: Iccfc85e8ee1c0154dfbd18f060344f1e3db5dc18

9 years agoReduce intra transform set
Debargha Mukherjee [Mon, 25 Apr 2016 17:43:49 +0000 (10:43 -0700)]
Reduce intra transform set

Reduce transform set for intra for 8x8 and smalller to 7 from 12.
Also fixes an issue with prob updates.

Enocder Speed-up about 8-10%

Coding efficiency very little change.
lowres: -2.996 (from -3.055 before)
midres: -2.482 (from -2.552 before)

Change-Id: I4ba50ff967521b33c748fe423bd92f7cf4105ebc

9 years agoMerge "Keep track of zcoeff_blk in tx size/type search" into nextgenv2
Hui Su [Tue, 26 Apr 2016 16:41:49 +0000 (16:41 +0000)]
Merge "Keep track of zcoeff_blk in tx size/type search" into nextgenv2

9 years agoext-intra: get rid of some floating operations.
hui su [Mon, 25 Apr 2016 18:44:24 +0000 (11:44 -0700)]
ext-intra: get rid of some floating operations.

No performance changes.

Change-Id: Idd4043090fec09e57520bc970ed2e39e6f7e1a5e

9 years agoMerge "Clear X87 register state before using double." into nextgenv2
Debargha Mukherjee [Mon, 25 Apr 2016 21:42:23 +0000 (21:42 +0000)]
Merge "Clear X87 register state before using double." into nextgenv2

9 years agoMerge "HBD hybrid transform 4x4 SSE4.1 optimization" into nextgenv2
Yi Luo [Mon, 25 Apr 2016 19:43:35 +0000 (19:43 +0000)]
Merge "HBD hybrid transform 4x4 SSE4.1 optimization" into nextgenv2

9 years agoClear X87 register state before using double.
Geza Lore [Mon, 25 Apr 2016 15:37:44 +0000 (16:37 +0100)]
Clear X87 register state before using double.

MMX and X87 floating point instructions cannot be mixed freely on
the 32 bit x86 architecture.

This fixes a lot of unit tests in the 32bit build with
--enable-ext-intra.

BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1196

Change-Id: I0e1c3565f4b9cb4fc2d716e94d9c40e68b36fac8