]> granicus.if.org Git - libvpx/log
libvpx
9 years agoMerge "vpx_dsp/*.[hc]: add missing vpx_dsp_rtcd.h include" into nextgenv2
James Zern [Wed, 18 May 2016 18:25:00 +0000 (18:25 +0000)]
Merge "vpx_dsp/*.[hc]: add missing vpx_dsp_rtcd.h include" into nextgenv2

9 years agoMerge "Integrate HBD row/column flip fwd txfm SSE4.1 optimization" into nextgenv2
Yi Luo [Wed, 18 May 2016 17:45:45 +0000 (17:45 +0000)]
Merge "Integrate HBD row/column flip fwd txfm SSE4.1 optimization" into nextgenv2

9 years agoMerge "Reducing computation of interintra modes" into nextgenv2
Debargha Mukherjee [Wed, 18 May 2016 17:21:15 +0000 (17:21 +0000)]
Merge "Reducing computation of interintra modes" into nextgenv2

9 years agovpx_dsp/*.[hc]: add missing vpx_dsp_rtcd.h include
James Zern [Wed, 4 May 2016 22:06:44 +0000 (15:06 -0700)]
vpx_dsp/*.[hc]: add missing vpx_dsp_rtcd.h include

Change-Id: I103be7eee36492f8619144ce8325bc916d4975c7
(cherry picked from commit 2184692c07c15290b424d538ae942d5f60eb7df8)

9 years agoIntegrate HBD row/column flip fwd txfm SSE4.1 optimization
Yi Luo [Tue, 17 May 2016 23:41:02 +0000 (16:41 -0700)]
Integrate HBD row/column flip fwd txfm SSE4.1 optimization

- Integrate 5 flip transform types for each 4x4, 8x8, and 16x16
  block, for experiment, EXT_TX.
- Encoder speed improves about 12%-15%.
- Update the unit tests for bit-exact result against C.

Change-Id: Idf27c87f1e516ca5b66c7b70142477a115404ccb

9 years agoMerge "Silience compiler warnings in unsigned int" into nextgenv2
Jingning Han [Wed, 18 May 2016 01:18:46 +0000 (01:18 +0000)]
Merge "Silience compiler warnings in unsigned int" into nextgenv2

9 years agoSilience compiler warnings in unsigned int
Jingning Han [Tue, 17 May 2016 23:45:26 +0000 (16:45 -0700)]
Silience compiler warnings in unsigned int

Add suffix u to clarify the unsigned int constant when the value
is above 2^31.

Change-Id: Ic712096285b7bf37deaeb5ad1b6b117fc0d67093

9 years agoReducing computation of interintra modes
Debargha Mukherjee [Mon, 16 May 2016 22:04:30 +0000 (15:04 -0700)]
Reducing computation of interintra modes

Use model for interintra mode search.
Speed-up about 5-10% with about 0.04 drop in efficiency.

lowres: -2.60%

Change-Id: I825bf0ba8a46eb7f19fc528c25b8df066fb8ea95

9 years agoMerge "vp10/rdopt,rd_pick_intra4x4block: port tsan fix from vp9" into nextgenv2
James Zern [Tue, 17 May 2016 03:04:00 +0000 (03:04 +0000)]
Merge "vp10/rdopt,rd_pick_intra4x4block: port tsan fix from vp9" into nextgenv2

9 years agovp10/rdopt,rd_pick_intra4x4block: port tsan fix from vp9
James Zern [Sat, 14 May 2016 02:57:12 +0000 (19:57 -0700)]
vp10/rdopt,rd_pick_intra4x4block: port tsan fix from vp9

minus the non-existent nonrd portion. original change:

commit d642294b1c57a5adacb1038ff45766c38bae8a6d
Author: Jingning Han <jingning@google.com>
Date:   Thu Feb 11 12:36:49 2016 -0800

    Fix tsan error in VP9 sub8x8 intra mode search

    This commit fixes issue 1141. The issue was triggered in multi-tile
    encoding. The change properly saves and restores the block context
    information in the real-time mode selection process. It removes
    several redundant memcpy operations in sub8x8 intra block mode
    search.

    Change-Id: I35c9ad197f4bd500ec39b5fc833f052f19eee010

Change-Id: Idfa38c54c9e645479f6870d46f71fb1e91c071da

9 years agoUnify the per directional filter type system for compound modes
Jingning Han [Tue, 3 May 2016 23:42:08 +0000 (16:42 -0700)]
Unify the per directional filter type system for compound modes

For the current stage, we assume a single prediction filter type
per direction in the settings of compound inter prediction modes.

Change-Id: I12a1afdd364b93fcee870bd11ad01fc40ab48cff

9 years agoEnable per motion component filter type selection
Jingning Han [Tue, 3 May 2016 01:09:47 +0000 (18:09 -0700)]
Enable per motion component filter type selection

Change-Id: I73823fc94f296d225dece7156de71b30bae3fcb7

9 years agoMerge "Properly handle 2D filter boundary extension" into nextgenv2
Jingning Han [Mon, 16 May 2016 21:34:28 +0000 (21:34 +0000)]
Merge "Properly handle 2D filter boundary extension" into nextgenv2

9 years agoMerge "HBD inverse HT 4x4 SSE4.1 optimization" into nextgenv2
Yi Luo [Mon, 16 May 2016 21:15:08 +0000 (21:15 +0000)]
Merge "HBD inverse HT 4x4 SSE4.1 optimization" into nextgenv2

9 years agoMerge "Various wedge enhancements" into nextgenv2
Debargha Mukherjee [Mon, 16 May 2016 21:11:35 +0000 (21:11 +0000)]
Merge "Various wedge enhancements" into nextgenv2

9 years agoVarious wedge enhancements
Debargha Mukherjee [Tue, 10 May 2016 16:30:30 +0000 (09:30 -0700)]
Various wedge enhancements

Increases number of wedges for smaller block and removes
wedge coding mode for blocks larger than 32x32.

Also adds various other enhancements for subsequent experimentation,
including adding provision for multiple smoothing functions
(though one is used currently), adds a speed feature that decides
the sign for interinter wedges using a fast mechanism, and refactors
wedge representations.

lowres: -2.651% BDRATE

Most of the gain is due to increase in codebook size for 8x8 - 16x16.

Change-Id: I50669f558c8d0d45e5a6f70aca4385a185b58b5b

9 years agoProperly handle 2D filter boundary extension
Jingning Han [Fri, 13 May 2016 23:15:43 +0000 (16:15 -0700)]
Properly handle 2D filter boundary extension

The amount of border extension needed in the first stage inter
filtering is decided by the length of the second stage filter
kernel.

Change-Id: Icddbc58c02234d5df09ff0eeebcf166ffe689203

9 years agoMerge changes I6aa75c66,Id5f0fade,I368d365e,Ibaf7b00b into nextgenv2
Angie Chiang [Mon, 16 May 2016 18:12:18 +0000 (18:12 +0000)]
Merge changes I6aa75c66,Id5f0fade,I368d365e,Ibaf7b00b into nextgenv2

* changes:
  Refactor and add flip unit test to vp10_inv_txfm2d_test.cc
  Add flip feature to vp10_inv_txfm2d.c
  add unit test for highbd flip transform
  Refactor vp10_fwd_txfm2d_test.cc

9 years agoRefactor and add flip unit test to vp10_inv_txfm2d_test.cc
Angie Chiang [Fri, 13 May 2016 00:11:27 +0000 (17:11 -0700)]
Refactor and add flip unit test to vp10_inv_txfm2d_test.cc

Change-Id: I6aa75c66429a0178852cf8df88f16eaa8e36b629

9 years agoAdd flip feature to vp10_inv_txfm2d.c
Angie Chiang [Thu, 12 May 2016 22:21:01 +0000 (15:21 -0700)]
Add flip feature to vp10_inv_txfm2d.c

Change-Id: Id5f0fade42749d2bed5553eda0d690af22b6c5b1

9 years agoadd unit test for highbd flip transform
Angie Chiang [Thu, 12 May 2016 01:50:47 +0000 (18:50 -0700)]
add unit test for highbd flip transform

Change-Id: I368d365ee0f58373bc399b615febd790addb2c36

9 years agoRefactor vp10_fwd_txfm2d_test.cc
Angie Chiang [Wed, 11 May 2016 23:41:36 +0000 (16:41 -0700)]
Refactor vp10_fwd_txfm2d_test.cc

Change-Id: Ibaf7b00bfe247df3e665ea3a0241667cb130e16c

9 years agoHBD inverse HT 4x4 SSE4.1 optimization
Yi Luo [Fri, 13 May 2016 17:08:13 +0000 (10:08 -0700)]
HBD inverse HT 4x4 SSE4.1 optimization

- Tx_type: DCT_DCT, DCT_ADST, ADST_DCT, ADST_ADST.
- Encoder overall instruction count drops 2.91%.
- Decoder overall instruction count drops 1.01%.
- Add unit test to test bit-exact result against C.

Change-Id: I908c9e0e5106c58f67dd72d28760e6c9ce54278e

9 years agoAdd static to memcpy_short_addr
Jingning Han [Thu, 12 May 2016 23:15:13 +0000 (16:15 -0700)]
Add static to memcpy_short_addr

Change-Id: I4a713784395bf13aaba2f7b175a6e93d50373a2f

9 years agoFix vp10_inv_txfm2d.round_trip test failure
Jingning Han [Thu, 12 May 2016 23:09:02 +0000 (16:09 -0700)]
Fix vp10_inv_txfm2d.round_trip test failure

Avoid accessing transform type that is not 2D-DCT if the transform
size is 64x64. This fixes an assert failure in this unit test.

Change-Id: I0dee865ea0925f5743b8a25c2f90eb6522b4d272

9 years agoFix vp10_get_inv_txfm_64x64_cfg
Jingning Han [Thu, 12 May 2016 23:06:48 +0000 (16:06 -0700)]
Fix vp10_get_inv_txfm_64x64_cfg

Add a missing break statement to prevent unintended behavior.

Change-Id: I54ecc95d4a35d4011e85af5635c94015cc944331

9 years agoRefactor the inter predictor for supertx
Jingning Han [Thu, 12 May 2016 21:30:23 +0000 (14:30 -0700)]
Refactor the inter predictor for supertx

This commit unifies the inter predictor used in supertx at both
encoder and decoder sides. It removes the redundant decoder
implementations related to border extension.

Change-Id: I03985cee52604a518394232fa9258ce057af9c00

9 years agoMerge "Unify the use of inter predictor in encoder and decoder" into nextgenv2
Jingning Han [Thu, 12 May 2016 21:27:07 +0000 (21:27 +0000)]
Merge "Unify the use of inter predictor in encoder and decoder" into nextgenv2

9 years agoUnify the use of inter predictor in encoder and decoder
Jingning Han [Thu, 12 May 2016 19:50:12 +0000 (12:50 -0700)]
Unify the use of inter predictor in encoder and decoder

This commit unifies the inter predictor used in the encoder and
decoder side for super-tx experiment. This resolves an enc/dec
mismatch found in nextgenv2 nightly-run unit test.

Change-Id: I16ab8d6063edf9d2fba79473f470f1a592cc10a0

9 years agoMerge "Add decoder APIs and unit tests in tile-coding experiment" into nextgenv2
Yunqing Wang [Thu, 12 May 2016 19:05:58 +0000 (19:05 +0000)]
Merge "Add decoder APIs and unit tests in tile-coding experiment" into nextgenv2

9 years agoMerge "Add flip option for vp10_fwd_txfm2d_#x#_c" into nextgenv2
Angie Chiang [Thu, 12 May 2016 18:08:27 +0000 (18:08 +0000)]
Merge "Add flip option for vp10_fwd_txfm2d_#x#_c" into nextgenv2

9 years agoMerge "Fix highbd masked variance function declaration" into nextgenv2
Jingning Han [Thu, 12 May 2016 01:29:37 +0000 (01:29 +0000)]
Merge "Fix highbd masked variance function declaration" into nextgenv2

9 years agoAdd decoder APIs and unit tests in tile-coding experiment
Yunqing Wang [Thu, 5 May 2016 23:42:57 +0000 (16:42 -0700)]
Add decoder APIs and unit tests in tile-coding experiment

In the tile-coding experiment,
1. In tile decoder, added 2 set control APIs:
   VP10_SET_DECODE_TILE_ROW and VP10_SET_DECODE_TILE_COL. It allowed
   users to set the range of decoding at frame level.
2. Added a unit test while tile-coding experiment is on. It tested
   both tile encoder and decoder to make sure the encoded frame
   can be decoded as a whole frame or as independent tiles.

Change-Id: I73fd0632b685047cb9376008127cde72efa3fb2b

9 years agoFix highbd masked variance function declaration
Jingning Han [Wed, 11 May 2016 22:50:58 +0000 (15:50 -0700)]
Fix highbd masked variance function declaration

Fix the variable type mismatch between highbd_calc_masked_var_t and
the actual function definiton. This clears the related compiler
warnings in highbd with ext-inter experiment.

Change-Id: I0423318b16c867ed84700084ad21ca6e42edb321

9 years agoMerge "Cost wedge sign/index properly in rdopt." into nextgenv2
Debargha Mukherjee [Wed, 11 May 2016 20:55:40 +0000 (20:55 +0000)]
Merge "Cost wedge sign/index properly in rdopt." into nextgenv2

9 years agoMerge "Remove vp10_fwd_txfm2d_sse4_test.cc" into nextgenv2
Angie Chiang [Wed, 11 May 2016 19:04:02 +0000 (19:04 +0000)]
Merge "Remove vp10_fwd_txfm2d_sse4_test.cc" into nextgenv2

9 years agoCost wedge sign/index properly in rdopt.
Geza Lore [Wed, 11 May 2016 12:40:05 +0000 (13:40 +0100)]
Cost wedge sign/index properly in rdopt.

Lowres improves by about 0.1%

lowres: -2.164 BDRATE

Change-Id: I393bbb92700bfbb8763ace424f4edc2d672a74b4

9 years agoMerge "Adjust smoothing function for wedge to be sharper" into nextgenv2
Debargha Mukherjee [Wed, 11 May 2016 18:02:07 +0000 (18:02 +0000)]
Merge "Adjust smoothing function for wedge to be sharper" into nextgenv2

9 years agoMerge "Add single motion search for OBMC predictor" into nextgenv2
Yue Chen [Wed, 11 May 2016 17:20:32 +0000 (17:20 +0000)]
Merge "Add single motion search for OBMC predictor" into nextgenv2

9 years agoAdjust smoothing function for wedge to be sharper
Debargha Mukherjee [Wed, 11 May 2016 06:10:26 +0000 (23:10 -0700)]
Adjust smoothing function for wedge to be sharper

Improves performance by 0.2%

lowres: -2.052% BDRATE

Also increases precision of the shift parameters (for further
investigation into different wedge shifts).

Change-Id: I59fcab9baa002e52a6487ed8d617185840a678ed

9 years agoCompute end of frame precisely with selective tile decoding.
Geza Lore [Wed, 11 May 2016 10:07:15 +0000 (11:07 +0100)]
Compute end of frame precisely with selective tile decoding.

Change-Id: I0ee480d437411bebe240bedff204682833efb131

9 years agoAdd single motion search for OBMC predictor
Yue Chen [Fri, 22 Apr 2016 22:09:12 +0000 (15:09 -0700)]
Add single motion search for OBMC predictor

Weighted single motion search is implemented for obmc predictor.
When NEWMV mode is used, to determine the MV for the current block,
we run weighted motion search to compare the weighted prediction
with (source - weighted prediction using neighbors' MVs), in which
the distortion is the actual prediction error of obmc prediction.

Coding gain: 0.404/0.425/0.366 for lowres/midres/hdres
Speed impact: +14% encoding time
              (obmc w/o mv search 13%-> obmc w/ mv search 27%)

Change-Id: Id7ad3fc6ba295b23d9c53c8a16a4ac1677ad835c

9 years agoAdd flip option for vp10_fwd_txfm2d_#x#_c
Angie Chiang [Wed, 11 May 2016 00:53:06 +0000 (17:53 -0700)]
Add flip option for vp10_fwd_txfm2d_#x#_c

Will add unit test to test/vp10_fwd_txfm2d_test.cc later

Change-Id: I626900c67fca4eee2ad0ae1828188527a04a5362

9 years agoRemove vp10_fwd_txfm2d_sse4_test.cc
Angie Chiang [Wed, 11 May 2016 00:06:40 +0000 (17:06 -0700)]
Remove vp10_fwd_txfm2d_sse4_test.cc

Functions vp10_fwd_txfm2d_#x#_sse4_1 tested in this file
will be tested in vp10_fhts#x#_test.cc
Remove this to avoid duplication

Change-Id: Iaf21ab85b9a164fcf2a4574b3e13217e43b6255e

9 years agoMerge "Move count buffers from stack to heap" into nextgenv2
Yaowu Xu [Tue, 10 May 2016 23:58:59 +0000 (23:58 +0000)]
Merge "Move count buffers from stack to heap" into nextgenv2

9 years agoMerge "Remove unused highbd_fdct32x32 function" into nextgenv2
Jingning Han [Tue, 10 May 2016 23:16:40 +0000 (23:16 +0000)]
Merge "Remove unused highbd_fdct32x32 function" into nextgenv2

9 years agoMerge "Remove unused highbd_ihalfcenter32_c function" into nextgenv2
Jingning Han [Tue, 10 May 2016 23:16:35 +0000 (23:16 +0000)]
Merge "Remove unused highbd_ihalfcenter32_c function" into nextgenv2

9 years agoMerge "Fix high bit-depth build with ext-inter and dual-filter exps" into nextgenv2
Jingning Han [Tue, 10 May 2016 23:16:26 +0000 (23:16 +0000)]
Merge "Fix high bit-depth build with ext-inter and dual-filter exps" into nextgenv2

9 years agoMove count buffers from stack to heap
Yaowu Xu [Tue, 10 May 2016 21:42:27 +0000 (14:42 -0700)]
Move count buffers from stack to heap

This fixes the stack overflow issue on MSVC build.

Change-Id: Icb0a78e5992a097d2192979ec2432546eaa452dd

9 years agoRemove unused highbd_fdct32x32 function
Jingning Han [Tue, 10 May 2016 21:31:40 +0000 (14:31 -0700)]
Remove unused highbd_fdct32x32 function

The encoder is using vp10_fwd_txfm2d_32x32 now.

Change-Id: I719f18ec0b065f1e062d01fd300533dd2f17c712

9 years agoRemove unused highbd_ihalfcenter32_c function
Jingning Han [Tue, 10 May 2016 21:27:16 +0000 (14:27 -0700)]
Remove unused highbd_ihalfcenter32_c function

Change-Id: I4390fcbdf353d79dadc021d83d40891e518997dc

9 years agoFix high bit-depth build with ext-inter and dual-filter exps
Jingning Han [Tue, 10 May 2016 21:16:25 +0000 (14:16 -0700)]
Fix high bit-depth build with ext-inter and dual-filter exps

Change-Id: Ie4a884899d73cafea439ecab6ff4de54652b8c28

9 years agoMove new quant experiment in quant_common.c from nextgen
Sarah Parker [Thu, 5 May 2016 23:35:27 +0000 (16:35 -0700)]
Move new quant experiment in quant_common.c from nextgen

NEW_QUANT allows bin widths to be modified as a factor of the nominal
quantization step size. This adds functions to get dequantization
values based on the dequantization offset and 3 knots for a single
quantization profile.

Change-Id: I41f10599997e943cb3391c7a0847d8485b9d8b43

9 years agoMerge "Wedge rd improvements" into nextgenv2
Debargha Mukherjee [Tue, 10 May 2016 20:34:00 +0000 (20:34 +0000)]
Merge "Wedge rd improvements" into nextgenv2

9 years agoWedge rd improvements
Debargha Mukherjee [Fri, 6 May 2016 18:38:15 +0000 (11:38 -0700)]
Wedge rd improvements

Improves speed by about 10-15% by combining y-only rd with
modeling function in a better way.
Also, coding efficiency improves by about 0.1%

lowres: -1.805% BDRATE with ext-inter

Change-Id: I6ef1f8942ec6806252f3fcf749ae4f30dffe42b1

9 years agoMerge "Fix some ans const warnings." into nextgenv2
Alex Converse [Tue, 10 May 2016 18:26:53 +0000 (18:26 +0000)]
Merge "Fix some ans const warnings." into nextgenv2

9 years agoMerge "Fix build without dual-filter" into nextgenv2
Yaowu Xu [Tue, 10 May 2016 18:10:44 +0000 (18:10 +0000)]
Merge "Fix build without dual-filter" into nextgenv2

9 years agoMerge "Remove "const" for parameters passed by value" into nextgenv2
Yaowu Xu [Tue, 10 May 2016 18:05:27 +0000 (18:05 +0000)]
Merge "Remove "const" for parameters passed by value" into nextgenv2

9 years agoMerge "Use multiple tiles in V10 tile independence tests." into nextgenv2
Debargha Mukherjee [Tue, 10 May 2016 18:01:08 +0000 (18:01 +0000)]
Merge "Use multiple tiles in V10 tile independence tests." into nextgenv2

9 years agoMerge "Break tile row dependencies." into nextgenv2
Debargha Mukherjee [Tue, 10 May 2016 18:00:34 +0000 (18:00 +0000)]
Merge "Break tile row dependencies." into nextgenv2

9 years agoMerge "Fix interintra predictor buffer overflow." into nextgenv2
Debargha Mukherjee [Tue, 10 May 2016 17:59:33 +0000 (17:59 +0000)]
Merge "Fix interintra predictor buffer overflow." into nextgenv2

9 years agoRemove "const" for parameters passed by value
Yaowu Xu [Mon, 9 May 2016 18:50:15 +0000 (11:50 -0700)]
Remove "const" for parameters passed by value

This commit removes const from parameters that are passed by value
for consistency in code style.

Change-Id: I2947c4e9cc6e809c4b9b4c162046e45127b8a41c

9 years agoMerge "Refine VP10 REFRESH_FRAME_CONTEXT_MODE" into nextgenv2
Yunqing Wang [Tue, 10 May 2016 15:53:48 +0000 (15:53 +0000)]
Merge "Refine VP10 REFRESH_FRAME_CONTEXT_MODE" into nextgenv2

9 years agoMerge "Change inverse HT function argument from TXFM_2D_CFG* to int" into nextgenv2
Yi Luo [Tue, 10 May 2016 15:38:11 +0000 (15:38 +0000)]
Merge "Change inverse HT function argument from TXFM_2D_CFG* to int" into nextgenv2

9 years agoMerge "Make type conversions explicit" into nextgenv2
Yaowu Xu [Tue, 10 May 2016 14:33:04 +0000 (14:33 +0000)]
Merge "Make type conversions explicit" into nextgenv2

9 years agoFix build without dual-filter
Geza Lore [Tue, 10 May 2016 09:24:53 +0000 (10:24 +0100)]
Fix build without dual-filter

Change-Id: I91946940c1540c9f935161da89155ed304055fda

9 years agoUse multiple tiles in V10 tile independence tests.
Geza Lore [Mon, 9 May 2016 15:23:35 +0000 (16:23 +0100)]
Use multiple tiles in V10 tile independence tests.

Change-Id: I6e5c1cbe1bf40d2f7a0d8bd821cac8ce626ce3b8

9 years agoBreak tile row dependencies.
Geza Lore [Tue, 10 May 2016 10:13:10 +0000 (11:13 +0100)]
Break tile row dependencies.

When not using ext-tile, there were still dependencies between tile
rows due to various tools (eg intra predictors) relying on the above
row or above mode info, which can be in the above tile. This is now
broken (the same way as it was when ext-tile is enabled) by fixing
the appropriate predicates.

Change-Id: I107dd0d8481775a792f14e05cfbbd761f16cdc1e

9 years agoFix interintra predictor buffer overflow.
Geza Lore [Mon, 9 May 2016 15:09:41 +0000 (16:09 +0100)]
Fix interintra predictor buffer overflow.

When constructing the intra predictor for rectangular interintra blocks,
the last row/column of the first square is copied back into the source
image (which is the current reconstructed image buffer) before
predicting the second square. The code used to use the height instead
of width for vertical rectangles, and vice versa for horizontal
rectangles, leading to overwriting the block on the right/below. This
leads to an encode/decode mismatch if the right/below block is in a
different tile and is encoded before the current block, which did happen
with multi-threaded encoding tests. This is now fixed.

Change-Id: I073a2a447a98b842b1394d72cc774a78cb296921

9 years agoPrint mismatch location for failing tests.
Geza Lore [Mon, 9 May 2016 12:19:34 +0000 (13:19 +0100)]
Print mismatch location for failing tests.

Change-Id: Ied6929bf5ac41ca25ee4df4ef19edada5bf1e8cd

9 years agoChange inverse HT function argument from TXFM_2D_CFG* to int
Yi Luo [Tue, 10 May 2016 01:34:16 +0000 (18:34 -0700)]
Change inverse HT function argument from TXFM_2D_CFG* to int

This change has no performance impact. It prepares the proper
function interface for better performance optimization.

Change-Id: I12e2f2deaf7f3adc603de0a74852116468c762f6

9 years agoMerge "HBD hybrid transform 16x16 SSE4.1 optimization" into nextgenv2
Yi Luo [Mon, 9 May 2016 23:58:05 +0000 (23:58 +0000)]
Merge "HBD hybrid transform 16x16 SSE4.1 optimization" into nextgenv2

9 years agoMerge "Fix ans+ref_mv build." into nextgenv2
Alex Converse [Mon, 9 May 2016 23:55:48 +0000 (23:55 +0000)]
Merge "Fix ans+ref_mv build." into nextgenv2

9 years agoMerge "Fix unit test failure due to ext-inter and dual filter" into nextgenv2
Jingning Han [Mon, 9 May 2016 23:54:07 +0000 (23:54 +0000)]
Merge "Fix unit test failure due to ext-inter and dual filter" into nextgenv2

9 years agoFix some ans const warnings.
Alex Converse [Mon, 9 May 2016 23:50:03 +0000 (16:50 -0700)]
Fix some ans const warnings.

Change-Id: I508d497803d0c1085aa6a8b26d7a574cb27dd6e2

9 years agoMerge "Edit ext-tx so it isn't doing redundant prunes" into nextgenv2
Sarah Parker [Mon, 9 May 2016 22:57:37 +0000 (22:57 +0000)]
Merge "Edit ext-tx so it isn't doing redundant prunes" into nextgenv2

9 years agoFix ans+ref_mv build.
Alex Converse [Mon, 9 May 2016 22:35:58 +0000 (15:35 -0700)]
Fix ans+ref_mv build.

Use vp10_read/write instead of vpx_read/write.

Change-Id: I2b7f17e9cdbea14ff48f4bd9776dd3e6aff17a2b

9 years agoMerge "Remove the ANS rename on pack_mb_tokens()." into nextgenv2
Alex Converse [Mon, 9 May 2016 22:16:34 +0000 (22:16 +0000)]
Merge "Remove the ANS rename on pack_mb_tokens()." into nextgenv2

9 years agoMerge "Fix dual filter type for high bit-depth" into nextgenv2
Jingning Han [Mon, 9 May 2016 22:06:09 +0000 (22:06 +0000)]
Merge "Fix dual filter type for high bit-depth" into nextgenv2

9 years agoRefine VP10 REFRESH_FRAME_CONTEXT_MODE
Yunqing Wang [Mon, 9 May 2016 21:20:50 +0000 (14:20 -0700)]
Refine VP10 REFRESH_FRAME_CONTEXT_MODE

In VP10, REFRESH_FRAME_CONTEXT_OFF mode is only set when the error
resillient mode is on. Instead of being used to decide how to update
the frame contexts, it is used to decide if or not to reset the
frame contexts.

To verify, ran borg test on lowres set. The result is neutral.
Overall PSNR: -0.006%; SSIM: -0.006%.

Change-Id: Ic48265cf7488e80c6f5aab3eef7ba1c273506419

9 years agoEdit ext-tx so it isn't doing redundant prunes
Sarah Parker [Mon, 9 May 2016 18:32:42 +0000 (11:32 -0700)]
Edit ext-tx so it isn't doing redundant prunes

The original pruning function was not taking into account
that certain tx sizes/block sizes use a reduced tx set.

Prune 1: -0.3% performance drop, 20% speedup on foreman video
Prune 2: -0.48% perfomance drop, 30% speedup on foreman video

Change-Id: I557e919d97a89f787b47b3c8579a080db57f91d0

9 years agoTurn on the use of upsampled refs for ext-refs
Zoe Liu [Mon, 9 May 2016 18:16:28 +0000 (11:16 -0700)]
Turn on the use of upsampled refs for ext-refs

Without this patch, the experiment of ext-refs showed almost no coding
gains compared to the baseline. This is because when ext-refs is on, the
use of upsampled reference is off.

With this patch, the ext-refs experiment works with the upsampled
references and shows coding gains in Overall PSNR as follows, with ~5%
slow down for encoding time:

lowres: Avg - -0.965;  BDRate - -0.844
derflr: Avg - -0.847;  BDRate - -0.669

Note that the previous patch a912c6ec314d816767a4c3eb4e5e1bddcc4c1186
that "Make LAST_FRAME always point to the newly coded frame in ext-refs"
made ext-refs work with the upsampled refereces.

Change-Id: Id79248d71760109fb9198af4f45718b17455555f

9 years agoRemove the ANS rename on pack_mb_tokens().
Alex Converse [Mon, 9 May 2016 19:02:01 +0000 (12:02 -0700)]
Remove the ANS rename on pack_mb_tokens().

This fixes the ans+var_tx combination.

Change-Id: I4c34edb1deac4475c97ce1907c1d6bdf23ce3fc0

9 years agoHBD hybrid transform 16x16 SSE4.1 optimization
Yi Luo [Mon, 9 May 2016 17:36:40 +0000 (10:36 -0700)]
HBD hybrid transform 16x16 SSE4.1 optimization

- Tx_type: DCT_DCT, DCT_ADST, ADST_DCT, ADST_ADST.
- Update vp10_fht16x16_test.cc to do bit-exact test against
  latest C version.
- HBD encoder speed improves ~1.8%.

Change-Id: Icfc799a212e5289bcf6cedcae3722032133a2bc6

9 years agoFix unit test failure due to ext-inter and dual filter
Jingning Han [Mon, 9 May 2016 15:59:47 +0000 (08:59 -0700)]
Fix unit test failure due to ext-inter and dual filter

Make the inter predictor use the right filter type to avoid
enc/dec mismatch.

Change-Id: I2aa416d50450188ec2057dca3338fa258314e562

9 years agoMerge "Add SSE2 versions of 128x128 vpx_sad*" into nextgenv2
Geza Lore [Mon, 9 May 2016 10:30:58 +0000 (10:30 +0000)]
Merge "Add SSE2 versions of 128x128 vpx_sad*" into nextgenv2

9 years agoMerge "Unbreak VP9 threading tests." into nextgenv2
Geza Lore [Mon, 9 May 2016 10:30:46 +0000 (10:30 +0000)]
Merge "Unbreak VP9 threading tests." into nextgenv2

9 years agoFix dual filter type for high bit-depth
Jingning Han [Sun, 8 May 2016 17:36:51 +0000 (10:36 -0700)]
Fix dual filter type for high bit-depth

This commit fixes the compiler error in high bit-depth inter
predictor when dual filter type experiment is turned on.

Change-Id: I404a76a246477f2fcffc38a3275007d5dfe229cd

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 agoMake type conversions explicit
Yaowu Xu [Fri, 6 May 2016 21:34:26 +0000 (14:34 -0700)]
Make type conversions explicit

This eliminates MSVC compiler warnings.

Change-Id: Id6ace2586ed7c6248366905b133448fe8ecbd53d

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