]> granicus.if.org Git - libvpx/log
libvpx
8 years agoMerge "remove vpx_highbd_1[02]_sub_pixel_variance4x4_sse4_1" into nextgenv2
James Zern [Wed, 22 Jun 2016 03:13:31 +0000 (03:13 +0000)]
Merge "remove vpx_highbd_1[02]_sub_pixel_variance4x4_sse4_1" into nextgenv2

8 years agoMerge "Add 1D version of vpx_sum_squares_i16" into nextgenv2
Debargha Mukherjee [Wed, 22 Jun 2016 00:33:17 +0000 (00:33 +0000)]
Merge "Add 1D version of vpx_sum_squares_i16" into nextgenv2

8 years agoMerge "Cleanup dist_block()" into nextgenv2
Alex Converse [Wed, 22 Jun 2016 00:16:10 +0000 (00:16 +0000)]
Merge "Cleanup dist_block()" into nextgenv2

8 years agoAdd 1D version of vpx_sum_squares_i16
Geza Lore [Tue, 21 Jun 2016 19:22:25 +0000 (20:22 +0100)]
Add 1D version of vpx_sum_squares_i16

Change-Id: I1829f931749a26aec38c896b609c5a2640d6dfaf

8 years agoMerge "Always respect tile bounds in calc_target_weighted_pred." into nextgenv2
Debargha Mukherjee [Tue, 21 Jun 2016 18:33:40 +0000 (18:33 +0000)]
Merge "Always respect tile bounds in calc_target_weighted_pred." into nextgenv2

8 years agoMerge "Fix false uninitialized warnings (GCC 5+)." into nextgenv2
Debargha Mukherjee [Tue, 21 Jun 2016 17:12:13 +0000 (17:12 +0000)]
Merge "Fix false uninitialized warnings (GCC 5+)." into nextgenv2

8 years agoAlways respect tile bounds in calc_target_weighted_pred.
Geza Lore [Tue, 21 Jun 2016 16:56:29 +0000 (17:56 +0100)]
Always respect tile bounds in calc_target_weighted_pred.

The tile boundaries should now be respected even between tile rows.
regardless of whether ext-tile is used or not.

Change-Id: I5a39fd274451114a4264215f97f12be2c908016d

8 years agoMerge "Handle two identical states in the trellis chain" into nextgenv2
Jingning Han [Tue, 21 Jun 2016 16:04:30 +0000 (16:04 +0000)]
Merge "Handle two identical states in the trellis chain" into nextgenv2

8 years agoFix false uninitialized warnings (GCC 5+).
Geza Lore [Sun, 19 Jun 2016 20:35:01 +0000 (21:35 +0100)]
Fix false uninitialized warnings (GCC 5+).

Change-Id: Ia00c754ddaf22bb7f1dfcd20106db6293bf4b070

8 years agoHandle two identical states in the trellis chain
Jingning Han [Mon, 20 Jun 2016 17:56:04 +0000 (10:56 -0700)]
Handle two identical states in the trellis chain

When the next two states are identical, skip repeated cost table
fetch and multiplication operations. This makes the trellis unit
about 5% faster.

Change-Id: I0dbf7ad0a5732044e4e45dd59e9431a251c678f2

8 years agoMerge "Fix RDO issue of obmc + speed feature fast_inter_tx_type_search" into nextgenv2
Yue Chen [Mon, 20 Jun 2016 21:57:24 +0000 (21:57 +0000)]
Merge "Fix RDO issue of obmc + speed feature fast_inter_tx_type_search" into nextgenv2

8 years agoMerge "Convolution horizontal filter SSSE3 optimization" into nextgenv2
Yi Luo [Mon, 20 Jun 2016 20:06:02 +0000 (20:06 +0000)]
Merge "Convolution horizontal filter SSSE3 optimization" into nextgenv2

8 years agoConvolution horizontal filter SSSE3 optimization
Yi Luo [Tue, 14 Jun 2016 00:01:17 +0000 (17:01 -0700)]
Convolution horizontal filter SSSE3 optimization

- Apply signal direction/4-pixel vertical/8-pixel vertical
  parallelism.
- Add unit test to verify the bit exact result.
- Overall encoding time improves ~24% on Xeon E5-2680 CPU.

Change-Id: I104dcbfd43451476fee1f94cd16ca5f965878e59

8 years agoMerge "Use precise rate estimate for zero_token" into nextgenv2
Jingning Han [Mon, 20 Jun 2016 16:47:33 +0000 (16:47 +0000)]
Merge "Use precise rate estimate for zero_token" into nextgenv2

8 years agoMerge "Optimize the use case of token_cost table" into nextgenv2
Jingning Han [Mon, 20 Jun 2016 16:47:20 +0000 (16:47 +0000)]
Merge "Optimize the use case of token_cost table" into nextgenv2

8 years agoMerge "Turn on AqSegment tests for VP10" into nextgenv2
Debargha Mukherjee [Mon, 20 Jun 2016 16:47:13 +0000 (16:47 +0000)]
Merge "Turn on AqSegment tests for VP10" into nextgenv2

8 years agoFix RDO issue of obmc + speed feature fast_inter_tx_type_search
Yue Chen [Fri, 17 Jun 2016 21:15:44 +0000 (14:15 -0700)]
Fix RDO issue of obmc + speed feature fast_inter_tx_type_search

Change-Id: I86a967ad2d824ca7877626eed9eb11f0e057b22d

8 years agoMerge "Re-enable ActiveMapTest for VP10" into nextgenv2
Yue Chen [Mon, 20 Jun 2016 16:37:53 +0000 (16:37 +0000)]
Merge "Re-enable ActiveMapTest for VP10" into nextgenv2

8 years agoMerge "Fix unit test failure in obmc exp" into nextgenv2
Jingning Han [Sat, 18 Jun 2016 22:38:53 +0000 (22:38 +0000)]
Merge "Fix unit test failure in obmc exp" into nextgenv2

8 years agoremove vpx_highbd_1[02]_sub_pixel_variance4x4_sse4_1
James Zern [Sat, 18 Jun 2016 02:40:58 +0000 (19:40 -0700)]
remove vpx_highbd_1[02]_sub_pixel_variance4x4_sse4_1

these cause ASan errors VP10/EndToEndTestLarge.EndtoEndPSNRTest

BUG=webm:1242

Change-Id: I0334e3b255b14e18f61970c3721ae748dc79727b

8 years agoFix unit test failure in obmc exp
Jingning Han [Fri, 17 Jun 2016 23:23:32 +0000 (16:23 -0700)]
Fix unit test failure in obmc exp

Properly restore the rate cost in the inner search loop of obmc
prediction. This avoids unexpected encoding behavior. It fixes
the unit test failure in obmc experiment:

AltRefForcedKeyTestLarge.Frame1IsKey/2

Change-Id: I667b219dfcf2f2c63d9d984900ed3cfd10c354bd

8 years agoMerge "Make variance based partitioning compatible with SEG_LVL_SKIP" into nextgenv2
Yue Chen [Sat, 18 Jun 2016 00:19:41 +0000 (00:19 +0000)]
Merge "Make variance based partitioning compatible with SEG_LVL_SKIP" into nextgenv2

8 years agoMerge "Skip restore token_cache value" into nextgenv2
Jingning Han [Fri, 17 Jun 2016 21:59:53 +0000 (21:59 +0000)]
Merge "Skip restore token_cache value" into nextgenv2

8 years agoMerge "Fix warnings from gtest under GCC 5 or newer." into nextgenv2
Geza Lore [Fri, 17 Jun 2016 20:10:13 +0000 (20:10 +0000)]
Merge "Fix warnings from gtest under GCC 5 or newer." into nextgenv2

8 years agoMerge bi-predictive frames to EXT_REFS
Zoe Liu [Wed, 8 Jun 2016 21:27:56 +0000 (14:27 -0700)]
Merge bi-predictive frames to EXT_REFS

This patch removed the experiment of BIDIR_PRED and merged the feature
into the experiment of EXT_REFS:

(1) Each frame now has up to 6 reference frames, namely
    LAST_FRAME, LAST2_FRAME, LAST3_FRAME, GOLDEN_FRAME, (forward) and
    BWDREF_FRAME, ALTREF_FRAME (backward);
    LAST4_FRAME has been removed;
(2) First pass still keeps the 8 updates:
    KF_UPDATE, LF_UPDATE, GF_UPDATE, ARF_UPDATE, OVERLAY_UPDATE, and
    BRF_UPDATE, LAST_BIPRED_UPDATE, BI_PRED_UPDATE;
(3) show_existing_frame==1 is supported in the experiment of EXT_REFS;
(4) New encoding modes are added for both single-ref and compound cases,
    through the use of the 2 extra forward references (LAST2 & LAST3)
    and the 1 extra backward reference (BWDREF).

RD performance wise, using Overall PSNR: Avg/BDRate
        Bipred only      Prev EXT_REFS    Current EXT_REFS with bipred
lowres: -3.474/-3.324    -1.748/-1.586    -4.613/-4.387
derflr: -2.097/-1.353    -1.439/-1.215    -3.120/-2.252
midres: -2.129/-1.901    -1.345/-1.185    -2.898/-2.636

If in vp10/encoder/firstpass.h, change BFG_INTERVAL from 2 to 3, i.e. to
use 2 bi-predictive frames than 1, a further improvement may be
obtained:
                 Current EXT_REFS with bipred
        1 bi-predictive frame    2 bi-predictive frames
lowres: -4.613/-4.387            -4.675/-4.465
derflr: -3.120/-2.252            -3.333/-2.516
midres: -2.898/-2.636            -3.406/-3.095

Change-Id: Ib06fe9ea0a5cfd7418a1d79b978ee9d80bf191cb

8 years agoRe-enable ActiveMapTest for VP10
Geza Lore [Fri, 17 Jun 2016 10:46:23 +0000 (11:46 +0100)]
Re-enable ActiveMapTest for VP10

Change-Id: I030fdde966b9911712eca131d095015afd9b0d8a

8 years agoMake variance based partitioning compatible with SEG_LVL_SKIP
Geza Lore [Fri, 17 Jun 2016 10:28:02 +0000 (11:28 +0100)]
Make variance based partitioning compatible with SEG_LVL_SKIP

Inter blocks that have SEG_LVL_SKIP active must be at least 8x8 in
size for bitstream conformance (see read_inter_block_mode_info in
decodemv.c).

This patch makes the variance based partitioning scheme stop at 8x8
blocks in inter frames. This satisfies the SEG_LVL_SKIP constraint
and is more in line with the original implementation of this function
(before it got extended for 128x128 superblocks).

BUG=webm:1234

Change-Id: I1fdd894569a9c0817713a77daabe4c8b8e1d00c0

8 years agoUse precise rate estimate for zero_token
Jingning Han [Fri, 17 Jun 2016 17:24:34 +0000 (10:24 -0700)]
Use precise rate estimate for zero_token

This commit takes the precise rate estimate for zero_token rate
cost update. It improves the compression performance:

lowres 0.15%
midres 0.23%

Change-Id: I36761079f75ce43c814f8c663667e359d4ac2cd4

8 years agoOptimize the use case of token_cost table
Jingning Han [Thu, 16 Jun 2016 23:56:02 +0000 (16:56 -0700)]
Optimize the use case of token_cost table

Reduce the cache footprint of the token_costs table.

Change-Id: Ie989e60c6479ac3251cadaac9c7e795ccba52f4e

8 years agoFix warnings from gtest under GCC 5 or newer.
Geza Lore [Fri, 17 Jun 2016 14:32:25 +0000 (15:32 +0100)]
Fix warnings from gtest under GCC 5 or newer.

Change-Id: I9661f2fe9d315dccae69caa70d929b5d9d93b7db

8 years agoMerge "Rework table access operations in vp10_optimize_b function" into nextgenv2
Jingning Han [Fri, 17 Jun 2016 00:25:50 +0000 (00:25 +0000)]
Merge "Rework table access operations in vp10_optimize_b function" into nextgenv2

8 years agoCleanup dist_block()
Alex Converse [Thu, 16 Jun 2016 22:27:22 +0000 (15:27 -0700)]
Cleanup dist_block()

Change-Id: Iff0c0548924efd5a01c3a301cc5b4cdfda42e87e

8 years agoSkip restore token_cache value
Jingning Han [Thu, 16 Jun 2016 22:18:46 +0000 (15:18 -0700)]
Skip restore token_cache value

The trellis optimization is going backward. Hence there is no need
to restore the token_cache values that is behind the current node
in the scan order.

Change-Id: I4da8a2e3f78bf9630e6667c85d8c387c5d94de9a

8 years agoMerge "Make supertx skip bits observe segment level coding." into nextgenv2
Yue Chen [Thu, 16 Jun 2016 22:03:44 +0000 (22:03 +0000)]
Merge "Make supertx skip bits observe segment level coding." into nextgenv2

8 years agoRework table access operations in vp10_optimize_b function
Jingning Han [Thu, 16 Jun 2016 16:50:19 +0000 (09:50 -0700)]
Rework table access operations in vp10_optimize_b function

Localize table access. This provides another 10% speed-up to
the unit.

Change-Id: Ib902121f412f78e2bd501b9799c8c64462f803b5

8 years agoMerge "Change supertx syntax order." into nextgenv2
Debargha Mukherjee [Thu, 16 Jun 2016 18:25:04 +0000 (18:25 +0000)]
Merge "Change supertx syntax order." into nextgenv2

8 years agoDisable the unit test of ArfFreq for BIDIR_PRED
Zoe Liu [Thu, 16 Jun 2016 16:41:30 +0000 (09:41 -0700)]
Disable the unit test of ArfFreq for BIDIR_PRED

The test in arf_freq assumes any no-show frame as ALTREF_FRAME and
then calculate the minimum run between two consecutive ALTREF_FRAME's
based on this assumption. As BWDREF_FRAME is also a no-show frame and
the minimum run between two consecutive BWDREF_FRAME's may vary
between 1 and any arbitrary positive number as long as it does not
exceed the golden frame group interval, this test does not apply to
the experiment of BIDIR_PRED.

Change-Id: I70efb2c691fdc18601dbb8a7735ac2f27817e75a

8 years agoMake supertx skip bits observe segment level coding.
Geza Lore [Thu, 16 Jun 2016 16:26:23 +0000 (17:26 +0100)]
Make supertx skip bits observe segment level coding.

Change-Id: Id918d502c8f89e236bcb51949d7ad34efa017321

8 years agoChange supertx syntax order.
Geza Lore [Thu, 16 Jun 2016 16:13:55 +0000 (17:13 +0100)]
Change supertx syntax order.

Move the supertx skip bit and transform type past the recursive
prediction blocks. This is in preparation for using the segment level
skip feature for supertx blocks.

Change-Id: I8319414b0734144a9264e8a4a60940b6716b12a8

8 years agoMerge "Fix the superframe unit test for BIDIR_PRED" into nextgenv2
Zoe Liu [Thu, 16 Jun 2016 16:15:07 +0000 (16:15 +0000)]
Merge "Fix the superframe unit test for BIDIR_PRED" into nextgenv2

8 years agoTurn on AqSegment tests for VP10
Debargha Mukherjee [Wed, 15 Jun 2016 18:26:48 +0000 (11:26 -0700)]
Turn on AqSegment tests for VP10

Also shortens the test and changes some of the parameters.

Change-Id: Ieda4aeffa55550fbb9e4235f735c383ef6baf32c

8 years agoPlug leak of variance tree.
Geza Lore [Thu, 16 Jun 2016 12:16:07 +0000 (13:16 +0100)]
Plug leak of variance tree.

The speed features can change per frame, so remove condition on
releasing the variance tree.

Change-Id: I651c87a1504266d737e6d98f14fd3ed30d84e01d

8 years agoMerge "Use correct size load in vpx_avg_4x4_sse2." into nextgenv2
Debargha Mukherjee [Thu, 16 Jun 2016 12:15:47 +0000 (12:15 +0000)]
Merge "Use correct size load in vpx_avg_4x4_sse2." into nextgenv2

8 years agoMerge "Split some slower tests based on cpu-used" into nextgenv2
Debargha Mukherjee [Thu, 16 Jun 2016 11:46:35 +0000 (11:46 +0000)]
Merge "Split some slower tests based on cpu-used" into nextgenv2

8 years agoUse correct size load in vpx_avg_4x4_sse2.
Geza Lore [Thu, 16 Jun 2016 10:08:14 +0000 (11:08 +0100)]
Use correct size load in vpx_avg_4x4_sse2.

The old version used 64 bit loads, and then ignored the top half
of the result. This can cause asan failures if we read past the end
of a buffer. Switched to using 32 bit loads instead.

Change-Id: I57da127a26f869fb4b4f700b55408f6dc2fbbc1a

8 years agoSplit some slower tests based on cpu-used
Debargha Mukherjee [Tue, 14 Jun 2016 21:50:30 +0000 (14:50 -0700)]
Split some slower tests based on cpu-used

Change-Id: Idf84475fe06666d5c73c9d86dfc5c23bef170086

8 years agocosmetics,test.mk: fix a typo
James Zern [Thu, 16 Jun 2016 03:33:04 +0000 (20:33 -0700)]
cosmetics,test.mk: fix a typo

Change-Id: Ib74a494e1cf50a356f51e8185e19ca66fcb896a2

8 years agorename vp9_end_to_end_test.cc -> end_to_end_test.cc
James Zern [Thu, 16 Jun 2016 01:30:22 +0000 (18:30 -0700)]
rename vp9_end_to_end_test.cc -> end_to_end_test.cc

this is shared between vp9/10

BUG=webm:1235

Change-Id: I2f44b15268a33453a1c1e0c691d4fc1fc12d0263

8 years agovp9_end_to_end_test: enable in vp10-only builds
James Zern [Thu, 16 Jun 2016 01:28:30 +0000 (18:28 -0700)]
vp9_end_to_end_test: enable in vp10-only builds

this file is shared between vp9 & vp10; this makes it available in the
presence of --disable-vp9

BUG=webm:1235

Change-Id: Iaf060c3c09afd2c7df69995b0c01589f78d4945e

9 years agoFix the superframe unit test for BIDIR_PRED
Zoe Liu [Wed, 15 Jun 2016 22:39:51 +0000 (15:39 -0700)]
Fix the superframe unit test for BIDIR_PRED

Change-Id: I2ef8e479893403581711abc020509c6863c2035d

9 years agoAdd EndToEndTestLarge for VP10 non-highbitdepth
Sarah Parker [Thu, 9 Jun 2016 19:36:45 +0000 (12:36 -0700)]
Add EndToEndTestLarge for VP10 non-highbitdepth

The current test case is only run for vp9 and vp10 when HBD
is enabled. This was mistakenly removed in:

d53f9a3 Enable VP10 HBD PSNR checking unit test

Change-Id: I88b8168ad1efd805d759238a037653a2901bf50d

9 years agoMerge "Refactor trellis optimization process" into nextgenv2
Jingning Han [Wed, 15 Jun 2016 19:16:30 +0000 (19:16 +0000)]
Merge "Refactor trellis optimization process" into nextgenv2

9 years agoMerge "Pick up correct dequant for segment with new-quant." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:51:38 +0000 (16:51 +0000)]
Merge "Pick up correct dequant for segment with new-quant." into nextgenv2

9 years agoMerge "Disable loop restoration when LPF_PICK_MINIMAL_LPF." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:50:55 +0000 (16:50 +0000)]
Merge "Disable loop restoration when LPF_PICK_MINIMAL_LPF." into nextgenv2

9 years agoMerge "Remove magic number from traversal (CYCLIC_REFRESH_AQ)." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:50:15 +0000 (16:50 +0000)]
Merge "Remove magic number from traversal (CYCLIC_REFRESH_AQ)." into nextgenv2

9 years agoMerge "Select segment based loopfilter strength for supertx blocks." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:49:33 +0000 (16:49 +0000)]
Merge "Select segment based loopfilter strength for supertx blocks." into nextgenv2

9 years agoMerge "Remove now superfluous argument from predict_b_extend." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:48:13 +0000 (16:48 +0000)]
Merge "Remove now superfluous argument from predict_b_extend." into nextgenv2

9 years agoMerge "Rework supertx segment handling and adaptive quantization." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:47:58 +0000 (16:47 +0000)]
Merge "Rework supertx segment handling and adaptive quantization." into nextgenv2

9 years agoMerge "Minor refactor of decode_block for supertx." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:47:28 +0000 (16:47 +0000)]
Merge "Minor refactor of decode_block for supertx." into nextgenv2

9 years agoMerge "Re-initialise quantiser after changing segment." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:45:57 +0000 (16:45 +0000)]
Merge "Re-initialise quantiser after changing segment." into nextgenv2

9 years agoMerge "Refactor variance aq." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:45:21 +0000 (16:45 +0000)]
Merge "Refactor variance aq." into nextgenv2

9 years agoMerge "Pass segment id explicitly to quantizer init." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:44:37 +0000 (16:44 +0000)]
Merge "Pass segment id explicitly to quantizer init." into nextgenv2

9 years agoMerge "Fix estimate_wedge_sign with high bit-depth." into nextgenv2
Debargha Mukherjee [Wed, 15 Jun 2016 16:43:51 +0000 (16:43 +0000)]
Merge "Fix estimate_wedge_sign with high bit-depth." into nextgenv2

9 years agoMerge "Rework transform quantization pipeline" into nextgenv2
Jingning Han [Wed, 15 Jun 2016 16:07:10 +0000 (16:07 +0000)]
Merge "Rework transform quantization pipeline" into nextgenv2

9 years agoMerge "Refactor the trellis optimization process" into nextgenv2
Jingning Han [Wed, 15 Jun 2016 16:07:03 +0000 (16:07 +0000)]
Merge "Refactor the trellis optimization process" into nextgenv2

9 years agoRefactor trellis optimization process
Jingning Han [Fri, 10 Jun 2016 03:44:00 +0000 (20:44 -0700)]
Refactor trellis optimization process

This commit refactors the trellis coefficient optimization process.
It saves multiplications used to generate the final dequantized
coefficients. It also removes two memset operations on quantized
and dequantized coefficient sets.

The trellis coefficient optimization is on average running over
10% faster.

Change-Id: If3aa26d2a706c3012bf2b7ac059bf1825250e81f

9 years agoFix estimate_wedge_sign with high bit-depth.
Geza Lore [Wed, 15 Jun 2016 09:49:37 +0000 (10:49 +0100)]
Fix estimate_wedge_sign with high bit-depth.

This fixes some crashes in
VP10/EndToEndTestLarge.EndtoEndPSNRTest/ with high bit-depth and
ext-inter.

Change-Id: I10f0f08e1be4bd5c388616074d4aa3f91a2fda7a

9 years agoMerge "Speed up ext-intra inter frame encoding" into nextgenv2
Hui Su [Wed, 15 Jun 2016 02:46:06 +0000 (02:46 +0000)]
Merge "Speed up ext-intra inter frame encoding" into nextgenv2

9 years agoMerge "ext-intra: refactor rd loop in interframe" into nextgenv2
Hui Su [Wed, 15 Jun 2016 02:45:59 +0000 (02:45 +0000)]
Merge "ext-intra: refactor rd loop in interframe" into nextgenv2

9 years agoRework transform quantization pipeline
Jingning Han [Thu, 9 Jun 2016 18:20:26 +0000 (11:20 -0700)]
Rework transform quantization pipeline

This commit reworks the transform and quantization unit. It enables
the use of adaptive quantization for intra modes. This further
improves the compression performance:
lowres 0.36%
midres 0.79%
hdres  0.73%

The key frame coding performance is improved:
lowres 1.7%
midres 1.9%
hdres  3.3%

The overall coding gains are:
lowres 1.1%
midres 1.8%
hdres  2.3%

Change-Id: Iaec1a3a4c1d5eac883ab526ed076d957060479dd

9 years agoMerge "Fix rate cost calculation for ext-intra" into nextgenv2
Hui Su [Tue, 14 Jun 2016 23:11:25 +0000 (23:11 +0000)]
Merge "Fix rate cost calculation for ext-intra" into nextgenv2

9 years agoMerge "Handle intra modes when tx type speed feature is enabled" into nextgenv2
Hui Su [Tue, 14 Jun 2016 22:37:19 +0000 (22:37 +0000)]
Merge "Handle intra modes when tx type speed feature is enabled" into nextgenv2

9 years agoMerge "Fix enc/dec mismatch in non-420 settings" into nextgenv2
Jingning Han [Tue, 14 Jun 2016 21:54:08 +0000 (21:54 +0000)]
Merge "Fix enc/dec mismatch in non-420 settings" into nextgenv2

9 years agoHandle intra modes when tx type speed feature is enabled
hui su [Mon, 13 Jun 2016 17:52:19 +0000 (10:52 -0700)]
Handle intra modes when tx type speed feature is enabled

Change-Id: I9dc156214f3b3ded33ab30d558124b3151548161

9 years agoSpeed up ext-intra inter frame encoding
hui su [Thu, 2 Jun 2016 18:53:00 +0000 (11:53 -0700)]
Speed up ext-intra inter frame encoding

Skip filter intra mode search when regular intra modes have large
rd cost.

Encoding speed improvement:  8%.

Compression performance drop: 0.02%  / 0.09%  / 0.03% on
                              lowres / midres / hdres

Change-Id: I94d3e48781bff6ae6895a54f271dd65c959bb976

9 years agoext-intra: refactor rd loop in interframe
hui su [Tue, 31 May 2016 21:40:04 +0000 (14:40 -0700)]
ext-intra: refactor rd loop in interframe

Move filter intra modes search to the end, after regular
mode search.

On average no performance changes.

Change-Id: I9293c8fdf706ebf831fbd61c6bb81959790f4848

9 years agoFix rate cost calculation for ext-intra
hui su [Fri, 10 Jun 2016 17:37:24 +0000 (10:37 -0700)]
Fix rate cost calculation for ext-intra

It was broken by commit 8ee640f979.

Change-Id: I26b9eba810c74849b0805e64da2d269ab0685cb9

9 years agoMerge "Make tx_type speed feature default" into nextgenv2
Jingning Han [Tue, 14 Jun 2016 20:45:02 +0000 (20:45 +0000)]
Merge "Make tx_type speed feature default" into nextgenv2

9 years agoPick up correct dequant for segment with new-quant.
Geza Lore [Tue, 14 Jun 2016 15:47:06 +0000 (16:47 +0100)]
Pick up correct dequant for segment with new-quant.

Change-Id: Id73500305a7cc581c11461c9ddb1b22dd8f5d8f4

9 years agoDisable loop restoration when LPF_PICK_MINIMAL_LPF.
Geza Lore [Tue, 14 Jun 2016 12:41:20 +0000 (13:41 +0100)]
Disable loop restoration when LPF_PICK_MINIMAL_LPF.

The speed feature sf->lpf_picl == LPF_PICK_MINIMAL_LPF is used
to disable loop filtering. This did not work with the loop-restoration
experiment, but now it is respected.

Note that this speed feature is only used in real-time cpu-used >= 8
settings.

Change-Id: I193723c9ac5f802ec31d8c8b4d37650796e065fd

9 years agoRemove magic number from traversal (CYCLIC_REFRESH_AQ).
Geza Lore [Tue, 14 Jun 2016 12:12:45 +0000 (13:12 +0100)]
Remove magic number from traversal (CYCLIC_REFRESH_AQ).

mi->stride now depends on the maximum superblock size, and hence
the constant 8 padding is no longer appropriate. Traverse the array
using mi->stride instead.

Change-Id: I8e84b9fe1728f6663f8c10765fe32206375f1e71

9 years agoSelect segment based loopfilter strength for supertx blocks.
Geza Lore [Fri, 10 Jun 2016 08:32:21 +0000 (09:32 +0100)]
Select segment based loopfilter strength for supertx blocks.

Segment based loopfilter strength for supertx coded blocks is now
selected based on the minimum of all segment IDs within a supertx
coded block (same as the quantiser settings).

Change-Id: Ib056bd0d05f6a1d3b512a76deb4e2ad4db0f7dc4

9 years agoRemove now superfluous argument from predict_b_extend.
Geza Lore [Thu, 9 Jun 2016 15:56:04 +0000 (16:56 +0100)]
Remove now superfluous argument from predict_b_extend.

Change-Id: I7a76756842af9ce806c6e0e1f98f294af748e8bd

9 years agoRework supertx segment handling and adaptive quantization.
Geza Lore [Thu, 9 Jun 2016 16:06:02 +0000 (17:06 +0100)]
Rework supertx segment handling and adaptive quantization.

Segment level quantizer settings for supertx coded blocks are now
selected based on the minimum of all segment IDs within a supertx
coded block.

This also fixes the 3 adaptive quantization modes with supertx.

Change-Id: Ib5db099539d4f82f240e1d745d6e5264f8b34cde

9 years agoMinor refactor of decode_block for supertx.
Geza Lore [Thu, 9 Jun 2016 16:02:10 +0000 (17:02 +0100)]
Minor refactor of decode_block for supertx.

Exit early from function when supertx is used, rather than putting
the bulk of the function body in a single conditional.

Change-Id: I41f388a45bd46e4a6ee1c51f26782ed9bddff4e5

9 years agoRe-initialise quantiser after changing segment.
Geza Lore [Thu, 9 Jun 2016 14:29:29 +0000 (15:29 +0100)]
Re-initialise quantiser after changing segment.

When using VARIANCE_AQ, we can change the segment assignment after
initialising the quantiser in set_offsets, so re-initialise it when
we do so.

Change-Id: I1f168553aaf0ade419f0d4bf05820cd591b87659

9 years agoRefactor variance aq.
Geza Lore [Thu, 9 Jun 2016 14:12:27 +0000 (15:12 +0100)]
Refactor variance aq.

Explicitly signal when the segment map is being refreshed when
using VARIANE_AQ. This simplifies decisions about when the segment id
needs to be set from the previous segment map vs based on the current
variance.

Change-Id: Ieb12c950e9cfbc3f53f4d184880071dea805563c

9 years agoPass segment id explicitly to quantizer init.
Geza Lore [Thu, 9 Jun 2016 12:31:37 +0000 (13:31 +0100)]
Pass segment id explicitly to quantizer init.

This is purely refactoring in preparation of fixing supertx segment
handling

Change-Id: I74bcae34241fdf2b592e1cd45b67af77b9e16c9a

9 years agoMerge "A crash fix for supertx / ext-inter combination." into nextgenv2
Debargha Mukherjee [Tue, 14 Jun 2016 14:44:55 +0000 (14:44 +0000)]
Merge "A crash fix for supertx / ext-inter combination." into nextgenv2

9 years agoFix enc/dec mismatch in non-420 settings
Jingning Han [Mon, 13 Jun 2016 17:30:52 +0000 (10:30 -0700)]
Fix enc/dec mismatch in non-420 settings

This commit makes the dual filter experiment work with non-420
settings. It fixes unit test failure in EndToEndTestLarge.

Change-Id: I04f7afdee78f91389d9ff72947efa152098af930

9 years agoMerge "Revert "Add 1D version of vpx_sum_squares_i16"" into nextgenv2
James Zern [Tue, 14 Jun 2016 00:04:56 +0000 (00:04 +0000)]
Merge "Revert "Add 1D version of vpx_sum_squares_i16"" into nextgenv2

9 years agoA crash fix for supertx / ext-inter combination.
Debargha Mukherjee [Mon, 13 Jun 2016 20:14:54 +0000 (13:14 -0700)]
A crash fix for supertx / ext-inter combination.

Change-Id: I9860376c98aa3b25f5bf86ed13d4a7631fa6b153

9 years agoRefactor the trellis optimization process
Jingning Han [Wed, 8 Jun 2016 22:43:53 +0000 (15:43 -0700)]
Refactor the trellis optimization process

Speed up the trellis optimization unit by 10%.

Change-Id: If055f6c0589a405c008d2900bb8fbc11b1246f66

9 years agoMake tx_type speed feature default
Jingning Han [Mon, 13 Jun 2016 19:08:14 +0000 (12:08 -0700)]
Make tx_type speed feature default

Revisit the compression performance and complexity trade-off after
making the SIMD version of trellis optimizations. Before that,
reduce the transform-quantization function calls temporarily. This
would cause about 0.3% performance drop for lowres set.

Change-Id: I16917a6bd5c44ec6cd8cd0b59f3c336c4fd96dd2

9 years agoMerge "active_map_refresh_test: fix missing file w/vp10-only" into nextgenv2
James Zern [Mon, 13 Jun 2016 19:08:04 +0000 (19:08 +0000)]
Merge "active_map_refresh_test: fix missing file w/vp10-only" into nextgenv2

9 years agoMerge "Trellis based adaptive quantization" into nextgenv2
Jingning Han [Mon, 13 Jun 2016 17:36:19 +0000 (17:36 +0000)]
Merge "Trellis based adaptive quantization" into nextgenv2

9 years agoactive_map_refresh_test: fix missing file w/vp10-only
James Zern [Sat, 11 Jun 2016 16:49:02 +0000 (09:49 -0700)]
active_map_refresh_test: fix missing file w/vp10-only

Change-Id: I6413b7622a3c8524ec0409e087cf7c92f79e4f2d

9 years agoMerge "Some refactoring to support warped motion mode" into nextgenv2
Debargha Mukherjee [Fri, 10 Jun 2016 23:18:38 +0000 (23:18 +0000)]
Merge "Some refactoring to support warped motion mode" into nextgenv2

9 years agoFix one typo in the comment
Zoe Liu [Fri, 10 Jun 2016 22:58:30 +0000 (15:58 -0700)]
Fix one typo in the comment

Change-Id: Ie98fd60426b18980ec85572f3cfc9ce0b97a5361

9 years agoMerge "Turn on ActiveMapTest speeds [0,5) with all experiments." into nextgenv2
Alex Converse [Fri, 10 Jun 2016 21:52:56 +0000 (21:52 +0000)]
Merge "Turn on ActiveMapTest speeds [0,5) with all experiments." into nextgenv2