]> granicus.if.org Git - libvpx/log
libvpx
8 years agoUse consistent paramemter type sandbox/yaowu@google.com/mergeaom
Yaowu Xu [Fri, 5 Aug 2016 23:00:09 +0000 (16:00 -0700)]
Use consistent paramemter type

Change-Id: I2ba5c9cb7e9ac6761ac18262564182039cfaad5b

8 years agovp9-highbitdepth -> vpx-highbitdepth
Yaowu Xu [Fri, 29 Jul 2016 20:17:22 +0000 (13:17 -0700)]
vp9-highbitdepth -> vpx-highbitdepth

Change-Id: I1e90cf7ab4bb02c0ef119b0bd1596771edefedff

8 years agoMerge "Code refactoring on Macros related to ref frame numbers" into nextgenv2
Zoe Liu [Fri, 5 Aug 2016 16:59:35 +0000 (16:59 +0000)]
Merge "Code refactoring on Macros related to ref frame numbers" into nextgenv2

8 years agoMerge "Make palette code faster: replace nested for loops by a single memcpy()."...
Urvang Joshi [Fri, 5 Aug 2016 00:20:11 +0000 (00:20 +0000)]
Merge "Make palette code faster: replace nested for loops by a single memcpy()." into nextgenv2

8 years agoMerge "Replace variants of 'vp8' and 'vp9' with 'vpx'" into nextgenv2
Yaowu Xu [Thu, 4 Aug 2016 23:48:59 +0000 (23:48 +0000)]
Merge "Replace variants of 'vp8' and 'vp9' with 'vpx'" into nextgenv2

8 years agoMerge changes Ic5ddba3c,Ibe7a3248 into nextgenv2
Yaowu Xu [Thu, 4 Aug 2016 23:27:35 +0000 (23:27 +0000)]
Merge changes Ic5ddba3c,Ibe7a3248 into nextgenv2

* changes:
  Fix a number of msvc warnings
  Reduce number of frames in lossless tests

8 years agoReplace variants of 'vp8' and 'vp9' with 'vpx'
Yaowu Xu [Thu, 4 Aug 2016 20:57:22 +0000 (13:57 -0700)]
Replace variants of 'vp8' and 'vp9' with 'vpx'

Change-Id: Id6cb96b0b15efdda63348d8bfe59fc0533c85ba1

8 years agoMake palette code faster: replace nested for loops by a single memcpy().
Urvang Joshi [Wed, 3 Aug 2016 23:42:11 +0000 (16:42 -0700)]
Make palette code faster: replace nested for loops by a single memcpy().

Change-Id: Ia14df45a35c98d680822454fbb8d1763884c1852

8 years agoFix a number of msvc warnings
Yaowu Xu [Wed, 3 Aug 2016 21:36:23 +0000 (14:36 -0700)]
Fix a number of msvc warnings

Change-Id: Ic5ddba3ca0c87245617b6dbc78c0f13dc952ce8b

8 years agoReduce number of frames in lossless tests
Yaowu Xu [Thu, 4 Aug 2016 21:36:29 +0000 (14:36 -0700)]
Reduce number of frames in lossless tests

This it to reduce the time necessary for these tests.

Change-Id: Ibe7a3248a6c45baf575af85fdffcffc557dd054b

8 years agovp10_inv_txfm2d_test: normalize max_error type
James Zern [Wed, 3 Aug 2016 02:54:17 +0000 (19:54 -0700)]
vp10_inv_txfm2d_test: normalize max_error type

quiets double -> int conversion warning

Change-Id: Ic860d187bc77e18b277eef28310feee1899cdbe6

8 years agoMerge ".clang-format: disable DerivePointerAlignment" into nextgenv2
James Zern [Thu, 4 Aug 2016 19:21:38 +0000 (19:21 +0000)]
Merge ".clang-format: disable DerivePointerAlignment" into nextgenv2

8 years agoMerge "more cleanup of vp8 and vp9" into nextgenv2
Yaowu Xu [Thu, 4 Aug 2016 18:56:46 +0000 (18:56 +0000)]
Merge "more cleanup of vp8 and vp9" into nextgenv2

8 years agoCode refactoring on Macros related to ref frame numbers
Zoe Liu [Wed, 3 Aug 2016 21:46:43 +0000 (14:46 -0700)]
Code refactoring on Macros related to ref frame numbers

We have renamed following Macros to avoid name confusion:

REFS_PER_FRAME --> INTER_REFS_PER_FRAME
(= ALTREF_FRAME - LAST_FRAME + 1)
MAX_REF_FRAMES --> TOTAL_REFS_PER_FRAME
(= ALTREF_FRAME - INTRA_FRAME + 1)

INTER_REFS_PER_FRAME specifies the maximum number of reference frames
that each Inter frame may use.
TOTAL_REFS_PER_FRAME is equal to INTER_REFS_PER_FRAME + 1, which
counts the INTRA_FRAME.

Further, at the encoder side, since REF_FRAMES specifies the maximum
number of the reference frames that the encoder may store, REF_FRAMES
is usually larger than INTER_REFS_PER_FRAME. For example, in the
ext-refs experiment, REF_FRAMES == 8, which allows the encoder to
store maximum 8 reference frames in the buffer, but
INTER_REFS_PER_FRAME equals to 6, which allows each Inter frame may
use up to 6 frames out of the 8 buffered frames as its references.
Hence, in order to explore the possibility to store more reference
frames in future patches, we modified a couple of array sizes to
accomodate the case that the number of buffered reference frames is
not always equal to the number of the references that are being used
by each Inter frame.

Change-Id: I19e42ef608946cc76ebfd3e965a05f4b9b93a0b3

8 years agoMerge "Adjust gm parameter computation to avoid mismatch" into nextgenv2
Sarah Parker [Wed, 3 Aug 2016 21:42:30 +0000 (21:42 +0000)]
Merge "Adjust gm parameter computation to avoid mismatch" into nextgenv2

8 years agoMerge "Cherry pick from AOMedia" into nextgenv2
Yaowu Xu [Wed, 3 Aug 2016 19:25:22 +0000 (19:25 +0000)]
Merge "Cherry pick from AOMedia" into nextgenv2

8 years agoMerge "Cherry pick from AOM:" into nextgenv2
Yaowu Xu [Wed, 3 Aug 2016 19:25:17 +0000 (19:25 +0000)]
Merge "Cherry pick from AOM:" into nextgenv2

8 years agomore cleanup of vp8 and vp9
Yaowu Xu [Wed, 3 Aug 2016 18:33:39 +0000 (11:33 -0700)]
more cleanup of vp8 and vp9

Change-Id: Ic90ebe6136f4b75645ba699d49c0bcb3764ddccf

8 years agoAdjust gm parameter computation to avoid mismatch
Sarah Parker [Tue, 2 Aug 2016 19:28:41 +0000 (12:28 -0700)]
Adjust gm parameter computation to avoid mismatch

The gm parameters need to have WARPED_PRECISION_BITS precision
until they are written to the bitstream because functions in
reconinter use these parameters before they are written to
the bitstream. Previously, the parameters weren't being converted
to WARPED_PRECISION_BITS until they were read from the bitstream
which causes an encode/decode mismatch.

Change-Id: I31e76e9d6f7d24df21af287a72f8c01f1997304d

8 years agoMerge "Fix a bug and a function name in EXT_INTRA experiment" into nextgenv2
Yue Chen [Wed, 3 Aug 2016 17:04:14 +0000 (17:04 +0000)]
Merge "Fix a bug and a function name in EXT_INTRA experiment" into nextgenv2

8 years agoCherry pick from AOMedia
Yaowu Xu [Fri, 29 Jul 2016 23:45:53 +0000 (16:45 -0700)]
Cherry pick from AOMedia

5b5fbad VP9LfSync->VP10LfSync
b752848 vp8_yv12 -> vpx_yv12
e5068cd VP9->VPX for reference frame flags

Change-Id: Ia36860499c81a5aca8cd6190e7370ec404c0df0f

8 years agoFix a bug and a function name in EXT_INTRA experiment
Yue Chen [Tue, 2 Aug 2016 22:18:44 +0000 (15:18 -0700)]
Fix a bug and a function name in EXT_INTRA experiment

(1) Apply ALLOW_FILTER_INTRA_MODES flag to the correct place, otherwise
there are bitstream mismatchs when it is 0.
(2) Rename pick_ext_intra_iframe() to pick_ext_intra_interframe().

Change-Id: Ic88c930de1d3f819750f0892df52bde55ae32a91

8 years agoCherry pick from AOM:
Yaowu Xu [Fri, 29 Jul 2016 22:38:55 +0000 (15:38 -0700)]
Cherry pick from AOM:

68e7e4d0 Remove VP9_CAP_POSTPROC
0738390c Remove vp9_temporal denoise
b89861a4 Remove vp9-postproc

Change-Id: I4ecaa0ac83a519c8174a494378fc23df610ff2a8

8 years agoDisable tests not applicable to VP10
Yaowu Xu [Mon, 1 Aug 2016 20:32:40 +0000 (13:32 -0700)]
Disable tests not applicable to VP10

As VP10 does not support multiple layers yet, we disable the ported
tests from VP9.

Change-Id: Ib7577c27e402ede481213b7a64ebee7576a025a5

8 years agoMerge "Use all possible intra ref pixels for blocks on frame boundary" into nextgenv2
Hui Su [Mon, 1 Aug 2016 17:29:09 +0000 (17:29 +0000)]
Merge "Use all possible intra ref pixels for blocks on frame boundary" into nextgenv2

8 years agoMerge "Cherry pick renaming changes from AOMedia branch" into nextgenv2
Yaowu Xu [Mon, 1 Aug 2016 17:16:06 +0000 (17:16 +0000)]
Merge "Cherry pick renaming changes from AOMedia branch" into nextgenv2

8 years agoMerge "Rename files with vp9_ prefix" into nextgenv2
Yaowu Xu [Mon, 1 Aug 2016 17:15:49 +0000 (17:15 +0000)]
Merge "Rename files with vp9_ prefix" into nextgenv2

8 years agoCherry pick renaming changes from AOMedia branch
Yaowu Xu [Fri, 29 Jul 2016 17:14:19 +0000 (10:14 -0700)]
Cherry pick renaming changes from AOMedia branch

Manually cherry-picked the following changes:
8c8d16de vp9 -> vpx in names
75b57d39 VP9_ -> VPX_ in function names
761a7088 VP9_INTERP_EXTEND -> VPX_INTERP_EXTEND
4273a52c VP9->VPX in border pixel macros
03568c31 VP9_FRAME_MARKER -> VPX_FRAME_MARKER
2334f51d VP9->VPX in fdct function names

Change-Id: Icc18dbf4b416dd0fa21033b3e19ab8a47c893508

8 years agoUse all possible intra ref pixels for blocks on frame boundary
hui su [Thu, 28 Jul 2016 17:44:58 +0000 (10:44 -0700)]
Use all possible intra ref pixels for blocks on frame boundary

Tested on lowres and midres, performance impact is neutral.

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

Change-Id: Idaccaf7da7b460e6201efd436c084be66b5d4ebd

8 years agoMerge "More vp8/vp9 clean up" into nextgenv2
Yaowu Xu [Fri, 29 Jul 2016 16:50:33 +0000 (16:50 +0000)]
Merge "More vp8/vp9 clean up" into nextgenv2

8 years agoRename files with vp9_ prefix
Yaowu Xu [Thu, 28 Jul 2016 18:51:48 +0000 (11:51 -0700)]
Rename files with vp9_ prefix

Change-Id: I9c51ae3a2af698efe32288b807f881385e19822b

8 years agoMore vp8/vp9 clean up
Yaowu Xu [Wed, 27 Jul 2016 22:52:42 +0000 (15:52 -0700)]
More vp8/vp9 clean up

Change-Id: I8101de20e873c19d03c7fd2977bc22003e395807

8 years agoFix a missing space
hui su [Thu, 28 Jul 2016 16:54:50 +0000 (09:54 -0700)]
Fix a missing space

Change-Id: I6a9ab351012b731308d6b4fc78c09744c6afb61a

8 years agoMerge "Separate frame context index for different frame types" into nextgenv2
Jingning Han [Thu, 28 Jul 2016 16:39:44 +0000 (16:39 +0000)]
Merge "Separate frame context index for different frame types" into nextgenv2

8 years agoRemove vp8, vp9 folders
Yaowu Xu [Mon, 25 Jul 2016 22:39:46 +0000 (15:39 -0700)]
Remove vp8, vp9 folders

Change-Id: I09b8acd22d031ece52e1fee18b998349bf1cf06b

8 years agoSeparate frame context index for different frame types
Jingning Han [Wed, 27 Jul 2016 16:12:53 +0000 (09:12 -0700)]
Separate frame context index for different frame types

This commit makes the encoder to use different frame context index
for different frame types. In the baseline setting, it sets the
frame context index of the overlay frame to be different from other
regular inter frames. In the ext-refs setting, it further allows
the backward reference frame to use a different index.

It improves the compression performance for both settings.

Baseline
lowres  0.12%

ext-refs
lowres  0.50%
midres  0.56%

Change-Id: I7c63ddec9fc296c56a86353cf2c661a740b97a97

8 years ago.clang-format: disable DerivePointerAlignment
James Zern [Tue, 26 Jul 2016 23:34:54 +0000 (16:34 -0700)]
.clang-format: disable DerivePointerAlignment

everything outside of third_party should follow 'PointerAlignment:
right' i.e., associate the '*' with the variable

+ add a note about the clang-format that generated this file

Change-Id: I13e3f4f5fb6e22a8fa7fc3d06879c995b7c41a39
(cherry picked from commit e4290800b21478a3f9548c58b4f15c5ba5393073)

8 years agoMerge "ext-intra: squeeze the derivative table" into nextgenv2
Hui Su [Tue, 26 Jul 2016 21:53:50 +0000 (21:53 +0000)]
Merge "ext-intra: squeeze the derivative table" into nextgenv2

8 years agoext-intra: squeeze the derivative table
hui su [Tue, 26 Jul 2016 01:08:08 +0000 (18:08 -0700)]
ext-intra: squeeze the derivative table

Reduce its size form 270x2 to 90.

Change-Id: Icaacc4258e43cdc19c6f06598fee17c3dd06d7e9

8 years agoMerge "Fix compilation error under Clang 4.0." into nextgenv2
Yaowu Xu [Tue, 26 Jul 2016 17:21:57 +0000 (17:21 +0000)]
Merge "Fix compilation error under Clang 4.0." into nextgenv2

8 years agoMerge "MinArfFreqTest: Don't leak video on failure." into nextgenv2
Yaowu Xu [Tue, 26 Jul 2016 17:21:46 +0000 (17:21 +0000)]
Merge "MinArfFreqTest: Don't leak video on failure." into nextgenv2

8 years agoMerge "blockiness_test: fix implicit float conversion" into nextgenv2
Yaowu Xu [Tue, 26 Jul 2016 17:21:37 +0000 (17:21 +0000)]
Merge "blockiness_test: fix implicit float conversion" into nextgenv2

8 years agoMerge "resize_test: fix implicit float->int conversion" into nextgenv2
Yaowu Xu [Tue, 26 Jul 2016 17:21:30 +0000 (17:21 +0000)]
Merge "resize_test: fix implicit float->int conversion" into nextgenv2

8 years agoMerge "Add VPX_SWAP macro" into nextgenv2
Yaowu Xu [Tue, 26 Jul 2016 17:21:22 +0000 (17:21 +0000)]
Merge "Add VPX_SWAP macro" into nextgenv2

8 years agoMerge "Make test encoder test driver less likely to leak on failure." into nextgenv2
Yaowu Xu [Tue, 26 Jul 2016 17:21:05 +0000 (17:21 +0000)]
Merge "Make test encoder test driver less likely to leak on failure." into nextgenv2

8 years agoMerge "Combine vpxcx_set_ref example for VP9 and VP10" into nextgenv2
Yunqing Wang [Tue, 26 Jul 2016 04:16:21 +0000 (04:16 +0000)]
Merge "Combine vpxcx_set_ref example for VP9 and VP10" into nextgenv2

8 years agoFix compilation error under Clang 4.0.
Ivan Krasin [Mon, 25 Jul 2016 19:11:02 +0000 (12:11 -0700)]
Fix compilation error under Clang 4.0.

The LLVM trunk has reached 4.0 and now __clang_major__ is not enough
to distinguish between old XCode Clang and the new 'real' Clang.
Using __apple_build_version__ allows to make this distinction.

BUG=chromium:631144

Change-Id: I0b6e46fddfe4f409c7b7e558bda34872e60ee2d9

8 years agoMinArfFreqTest: Don't leak video on failure.
Alex Converse [Thu, 21 Jul 2016 18:38:27 +0000 (11:38 -0700)]
MinArfFreqTest: Don't leak video on failure.

Change-Id: I250379f0ac8d4929c9032e7343290e2980fc2e77

8 years agoblockiness_test: fix implicit float conversion
James Zern [Fri, 22 Jul 2016 22:08:59 +0000 (15:08 -0700)]
blockiness_test: fix implicit float conversion

float->int as reported by -Wfloat-conversion

Change-Id: Icb0ecb9e2d54edb95813d9f2de34cb6c27b63cbd
(cherry picked from commit 5e2791b54da066cc8543c066813373c9274ff53f)

8 years agoresize_test: fix implicit float->int conversion
James Zern [Fri, 22 Jul 2016 20:11:07 +0000 (13:11 -0700)]
resize_test: fix implicit float->int conversion

Change-Id: I1efc16fa158740a06da719a1ea90c6dd6a182bb4
(cherry picked from commit 325bdddc38ad15cf7dd2bc618461a13cfb006812)

8 years agoAdd VPX_SWAP macro
Yury Gitman [Fri, 15 Jul 2016 17:32:04 +0000 (10:32 -0700)]
Add VPX_SWAP macro

Change-Id: I60e233eddef238ad918183392794084673f27d2d

8 years agoMake test encoder test driver less likely to leak on failure.
Alex Converse [Thu, 21 Jul 2016 18:36:41 +0000 (11:36 -0700)]
Make test encoder test driver less likely to leak on failure.

Individual tests still need to be updated.

Change-Id: Ic433d0f742e13560b136f136b72b2a9973970d78

8 years agoy4minput.c: correct empty loop formatting
James Zern [Wed, 20 Jul 2016 03:46:39 +0000 (20:46 -0700)]
y4minput.c: correct empty loop formatting

prefer {}s over ';'

Change-Id: I563fc82717e1deb4f42a40e03dca318c6adaa0c1

8 years agobuild/make/Makefile: add a 'test_*' default target
James Zern [Mon, 18 Jul 2016 23:30:58 +0000 (16:30 -0700)]
build/make/Makefile: add a 'test_*' default target

allows 'make test_libvpx', etc. some reworking of the makefiles would be
needed to avoid hard coding targets here.

Change-Id: I18982dbf691e7d36ab8bcf5934bab9340687b061
(cherry picked from commit 25085a6ac21fc8e2341b92e2f1f14d5a7fef30c6)

8 years agobuild/make/Makefile: remove default suffix rules
James Zern [Mon, 18 Jul 2016 23:30:40 +0000 (16:30 -0700)]
build/make/Makefile: remove default suffix rules

Change-Id: I15c8976c6478bf75ec617398f49461b310ab7569

8 years agoMerge "take II: variance_test partial clean-up" into nextgenv2
Yaowu Xu [Tue, 26 Jul 2016 04:02:36 +0000 (04:02 +0000)]
Merge "take II: variance_test partial clean-up" into nextgenv2

8 years agotake II: variance_test partial clean-up
skal [Thu, 14 Jul 2016 00:33:22 +0000 (17:33 -0700)]
take II: variance_test partial clean-up

remove some (but not all yet!) tuple mis-use, and revamp the code a lot.
Factorize some common chores into MainTestClass.

Change-Id: Id37b7330eebe80d19b9d12a454f24ff9be6b1116

8 years agoCombine vpxcx_set_ref example for VP9 and VP10
Yunqing Wang [Sat, 23 Jul 2016 00:14:22 +0000 (17:14 -0700)]
Combine vpxcx_set_ref example for VP9 and VP10

Modified the example so that the test script worked correctly. Also
included minor fixes.

Change-Id: If97525dd9b85004a07e91c384132eadae35cdbf8

8 years agoMerge "inline->INLINE: vpx_dsp/x86/blend_a64_vmask_sse4.c" into nextgenv2
Yaowu Xu [Mon, 25 Jul 2016 20:48:52 +0000 (20:48 +0000)]
Merge "inline->INLINE: vpx_dsp/x86/blend_a64_vmask_sse4.c" into nextgenv2

8 years agoMerge "Adjust adaptive_rd_thresh speed feature" into nextgenv2
Yunqing Wang [Mon, 25 Jul 2016 18:53:27 +0000 (18:53 +0000)]
Merge "Adjust adaptive_rd_thresh speed feature" into nextgenv2

8 years agoinline->INLINE: vpx_dsp/x86/blend_a64_vmask_sse4.c
Yaowu Xu [Mon, 25 Jul 2016 17:43:12 +0000 (10:43 -0700)]
inline->INLINE: vpx_dsp/x86/blend_a64_vmask_sse4.c

This fixes the build using MSVC.

Change-Id: I7788e28fd4f0c6ff3d405c4b4a2ff59eda3ba8b6

8 years agovp10/ratectrl.c: fix implicit float conversion
James Zern [Fri, 22 Jul 2016 20:23:10 +0000 (13:23 -0700)]
vp10/ratectrl.c: fix implicit float conversion

float->int as reported by -Wfloat-conversion

Change-Id: I3c55990821d922bda7a7600c00ae8d5dcc3cee94

8 years agord_pick_palette_intra_sbuv: fix implicit float conv
James Zern [Fri, 22 Jul 2016 20:21:55 +0000 (13:21 -0700)]
rd_pick_palette_intra_sbuv: fix implicit float conv

float->int as reported by -Wfloat-conversion

Change-Id: I9e3d6ce9dbb0689f214afc8d5950f209275e883d

8 years agoFix compiler errors in warped_motion.c
Sarah Parker [Fri, 22 Jul 2016 18:51:15 +0000 (11:51 -0700)]
Fix compiler errors in warped_motion.c

A few functions and variables were named incorrectly

Change-Id: Ib32fa459c51b9e9aad8bb107e1b689a96d98b368

8 years agoMerge "Restore vp10_default_scan_orders[]" into nextgenv2
James Zern [Fri, 22 Jul 2016 22:24:58 +0000 (22:24 +0000)]
Merge "Restore vp10_default_scan_orders[]" into nextgenv2

8 years agoAdjust adaptive_rd_thresh speed feature
Yunqing Wang [Thu, 21 Jul 2016 16:00:36 +0000 (09:00 -0700)]
Adjust adaptive_rd_thresh speed feature

Set adaptive_rd_thresh to 0 at speed 0. This allows a thorough mode
search, and eliminates a blocking artifact seen in an encoder test.

Borg test:
1. lowres
Overall PSNR: -0.135%; SSIM: -0.293%;
2. hdres
Overall PSNR: -0.122%; SSIM: -0.208%;
Encoder speed tests: 2% - 6% slower.

Change-Id: Ie7601cb8824df8f6f2ae0b2942bd938600f76990

8 years agoRestore vp10_default_scan_orders[]
Sarah Parker [Fri, 22 Jul 2016 18:29:31 +0000 (11:29 -0700)]
Restore vp10_default_scan_orders[]

vp10_default_scan_orders was removed in:
e5848de Rectangular transforms 4x8 & 8x4
This fixes compiler error in vp10_quantize_test.cc
Change-Id: I1b8a637e011f9426c3b41e61e00e3babc80defba

8 years agoadd .clang-format, based on Google style
James Zern [Thu, 14 Jul 2016 22:18:30 +0000 (15:18 -0700)]
add .clang-format, based on Google style

derived from clang-format 3.7.1; same as used in libaom

Change-Id: I8ea915a41d1f2ea3b0d4e4dab9ebc808e9116f11

8 years agoAdd and remove explicit type conversions
Yaowu Xu [Fri, 22 Jul 2016 17:04:06 +0000 (10:04 -0700)]
Add and remove explicit type conversions

Change-Id: I8b791fda7c64a0363549add99dc9fcae3b29beae

8 years agoFix compiling issues
Yaowu Xu [Fri, 22 Jul 2016 16:30:52 +0000 (09:30 -0700)]
Fix compiling issues

Change-Id: I530348b12a1c039842ce4e33d21046fe63878f19

8 years agoMerge "Add affine model to global motion" into nextgenv2
Sarah Parker [Thu, 21 Jul 2016 23:17:33 +0000 (23:17 +0000)]
Merge "Add affine model to global motion" into nextgenv2

8 years agoMerge "Rectangular transforms 4x8 & 8x4" into nextgenv2
Debargha Mukherjee [Thu, 21 Jul 2016 21:54:12 +0000 (21:54 +0000)]
Merge "Rectangular transforms 4x8 & 8x4" into nextgenv2

8 years agoAdd affine model to global motion
Sarah Parker [Thu, 21 Jul 2016 00:11:39 +0000 (17:11 -0700)]
Add affine model to global motion

Change-Id: I9cd355a3ea344ef66a61028efa25d94f54e7e2bd

8 years agoRectangular transforms 4x8 & 8x4
Debargha Mukherjee [Fri, 1 Jul 2016 19:57:14 +0000 (12:57 -0700)]
Rectangular transforms 4x8 & 8x4

Added a new expt rect-tx to be used in conjunction with ext-tx.
[rect-tx is a temporary config flag and will eventually be
merged into ext-tx once it works correctly with all other
experiments].

Added 4x8 and 8x4 tranforms for use initially with rectangular
sub8x8 y blocks as part of this experiment.

There is about a -0.2% BDRATE improvement on lowres, others pending.

When var-tx is on rectangular transforms are currently not used.
That will be enabled in a subsequent patch.

Change-Id: Iaf3f88ede2740ffe6a0ffb1ef5fc01a16cd0283a

8 years agoMerge "Cleanup x86inc leftovers" into nextgenv2
Yaowu Xu [Thu, 21 Jul 2016 02:51:27 +0000 (02:51 +0000)]
Merge "Cleanup x86inc leftovers" into nextgenv2

8 years agoMerge "HBD fast path quantization speed improvement" into nextgenv2
Yi Luo [Wed, 20 Jul 2016 22:48:52 +0000 (22:48 +0000)]
Merge "HBD fast path quantization speed improvement" into nextgenv2

8 years agoHBD fast path quantization speed improvement
Yi Luo [Fri, 15 Jul 2016 23:41:30 +0000 (16:41 -0700)]
HBD fast path quantization speed improvement

- HBD encoder speed improvement (SSE4.1):
  Enable CONFIG_VP9_HIGHBITDEPTH, on Xeon E5-2680,
  50 frames, park_joy_1080p, 12-bit,
  Encoding time reduces from 4846481 to 4177471 (ms)
- Add unit test to verify bit-exact and EOB calculation

Change-Id: I08e8ef3549ddad5ab36d86e78557df3b288537ea

8 years agoCleanup x86inc leftovers
Yaowu Xu [Wed, 20 Jul 2016 18:57:29 +0000 (11:57 -0700)]
Cleanup x86inc leftovers

Change-Id: I732d6942d56042a79c4259f775a6045fa95fbeff

8 years agomake signatures match for vp10_init_plane_quantizers
Pascal Massimino [Wed, 20 Jul 2016 13:27:36 +0000 (06:27 -0700)]
make signatures match for vp10_init_plane_quantizers

Change-Id: I1efbc91d0ca9183fe34692315307c00c4b346e73

8 years agoMerge "Change order of warped motion parameters" into nextgenv2
Sarah Parker [Tue, 19 Jul 2016 21:27:58 +0000 (21:27 +0000)]
Merge "Change order of warped motion parameters" into nextgenv2

8 years agoA small refactor on the rate controller
Zoe Liu [Tue, 19 Jul 2016 20:55:14 +0000 (13:55 -0700)]
A small refactor on the rate controller

Change-Id: Ie39e16de2457dd201121c62967e4ddaf5a05c33a

8 years agoMerge "fix vp10_convolve() signatures" into nextgenv2
James Zern [Tue, 19 Jul 2016 19:53:08 +0000 (19:53 +0000)]
Merge "fix vp10_convolve() signatures" into nextgenv2

8 years agoChange order of warped motion parameters
sarahparker [Mon, 18 Jul 2016 23:40:06 +0000 (16:40 -0700)]
Change order of warped motion parameters

This makes it easier to interface between global motion and warped motion

Change-Id: I850e0a383969a1973f03fb207f100713cda6bb51

8 years agoMerge "Extra round of subpel MV search around second best full-pixel MV" into nextgenv2
Hui Su [Tue, 19 Jul 2016 16:55:11 +0000 (16:55 +0000)]
Merge "Extra round of subpel MV search around second best full-pixel MV" into nextgenv2

8 years agoMerge "Allow OVERLAY frames to use the show_exsiting_frame flag" into nextgenv2
Wei-ting Lin [Tue, 19 Jul 2016 04:28:07 +0000 (04:28 +0000)]
Merge "Allow OVERLAY frames to use the show_exsiting_frame flag" into nextgenv2

8 years agoAdd global motion parameters to compressed header
Sarah Parker [Mon, 11 Jul 2016 18:47:55 +0000 (11:47 -0700)]
Add global motion parameters to compressed header

Currently nothing is implemented to compute GM parameters, this
just adds the capability to send them in the bitstream if they
were computed. Still need to implement the reconstruction
based on the parameters in reconinter.

Change-Id: I72aea3c6a9de9f5a40f96da76c82b54a52781fe2

8 years agoAllow OVERLAY frames to use the show_exsiting_frame flag
Wei-ting Lin [Tue, 12 Jul 2016 20:19:45 +0000 (13:19 -0700)]
Allow OVERLAY frames to use the show_exsiting_frame flag

ARF with zero strength temporal filter can be reused by setting the
show_existing_frame = 1, and in this case, there is no need to
refresh the reference frame buffer. However, we used the flag
"refresh_golden_frame" as the identifier for the starting point of a gf
group.

A new flags "is_arf_filter_off" is used to record if the filter with
strengrh zero is used.

Change-Id: I25971a760f6e1638d5147fe30488c48125512b1a

8 years agoMerge "Merge changes from libvpx/master by cherry-pick" into nextgenv2
Yaowu Xu [Mon, 18 Jul 2016 22:43:40 +0000 (22:43 +0000)]
Merge "Merge changes from libvpx/master by cherry-pick" into nextgenv2

8 years agoMerge "Add buf0, width, height fields to buf_2d" into nextgenv2
Sarah Parker [Mon, 18 Jul 2016 22:40:37 +0000 (22:40 +0000)]
Merge "Add buf0, width, height fields to buf_2d" into nextgenv2

8 years agoMerge "Align the quantizers for inter/inter modes in the first pass coding" into...
Jingning Han [Mon, 18 Jul 2016 21:54:05 +0000 (21:54 +0000)]
Merge "Align the quantizers for inter/inter modes in the first pass coding" into nextgenv2

8 years agoExtra round of subpel MV search around second best full-pixel MV
hui su [Mon, 11 Jul 2016 17:46:17 +0000 (10:46 -0700)]
Extra round of subpel MV search around second best full-pixel MV

Keep track of the best and second best full pixel motion vector
candidates, and do subpel search around both of them.

Compression improvement:
lowres 0.22%   midres 0.23%   hdres 0.18%

No noticeable encoding speed changes observed on lowres test clips.

Change-Id: I5f4df2a03d1db061cfdfdba6138b27e9ea91f089

8 years agoCorrect the experiment names for ext-refs
Zoe Liu [Mon, 18 Jul 2016 18:28:31 +0000 (11:28 -0700)]
Correct the experiment names for ext-refs

Change-Id: I83a2b22d12e4573453e2ad866c7ceb430ff062c6

8 years agoAdd buf0, width, height fields to buf_2d
Sarah Parker [Thu, 14 Jul 2016 23:50:00 +0000 (16:50 -0700)]
Add buf0, width, height fields to buf_2d

These are needed for the warping function in the global motion
experiment.

Change-Id: Iaab176d0c0b90f6b938e2bac48b24c07e87e3cd9

8 years agoMerge changes from libvpx/master by cherry-pick
Johann [Wed, 22 Jun 2016 23:08:10 +0000 (16:08 -0700)]
Merge changes from libvpx/master by cherry-pick

This commit bring all up-to-date changes from master that are
applicable to nextgenv2. Due to the remove VP10 code in master,
we had to cherry pick the following commits to get those changes:

Add default flags for arm64/armv8 builds

Allows building simple targets with sane default flags.

For example, using the Android arm64 toolchain from the NDK:
https://developer.android.com/ndk/guides/standalone_toolchain.html
./build/tools/make-standalone-toolchain.sh --arch=arm64 \
  --platform=android-24 --install-dir=/tmp/arm64
CROSS=/tmp/arm64/bin/aarch64-linux-android- \
  ~/libvpx/configure --target=arm64-linux-gcc --disable-multithread

BUG=webm:1143

vpx_lpf_horizontal_4_sse2: Remove dead load.

Change-Id: I51026c52baa1f0881fcd5b68e1fdf08a2dc0916e

Fail early when android target does not include --sdk-path

Change-Id: I07e7e63476a2e32e3aae123abdee8b7bbbdc6a8c

configure: clean up var style and set_all usage

Use quotes whenever possible and {} always for variables.

Replace multiple set_all calls with *able_feature().

Conflicts:
build/make/configure.sh

vp9-svc: Remove some unneeded code/comment.

datarate_test,DatarateTestLarge: normalize bits type

quiets a msvc warning:
conversion from 'const int64_t' to 'size_t', possible loss of data

mips added p6600 cpu support

Removed -funroll-loops

psnr.c: use int64_t for sum of differences

Since the values can be negative.

*.asm: normalize label format

add a trailing ':', though it's optional with the tools we support, it's
more common to use it to mark a label. this also quiets the
orphan-labels warning with nasm/yasm.

BUG=b/29583530

Prevent negative variance

Due to rounding, hbd variance may become negative. This commit put in
check and clamp of negative values to 0.

configure: remove old visual studio support (<2010)

BUG=b/29583530

Conflicts:
configure

configure: restore vs_version variable

inadvertently lost in the final patchset of:
078dff7 configure: remove old visual studio support (<2010)

this prevents an empty CONFIG_VS_VERSION and avoids make failure

Require x86inc.asm

Force enable x86inc.asm when building for x86. Previously there were
compatibility issues so a flag was added to simplify disabling this
code.

The known issues have been resolved and x86inc.asm is the preferred
abstraction layer (over x86_abi_support.asm).

BUG=b:29583530

convolve_test: fix byte offsets in hbd build

CONVERT_TO_BYTEPTR(x) was corrected in:
003a9d2 Port metric computation changes from nextgenv2
to use the more common (x) within the expansion. offsets should occur
after converting the pointer to the desired type.

+ factorized some common expressions

Conflicts:
test/convolve_test.cc

vpx_dsp: remove x86inc.asm distinction

BUG=b:29583530

Conflicts:
vpx_dsp/vpx_dsp.mk
vpx_dsp/vpx_dsp_rtcd_defs.pl
vpx_dsp/x86/highbd_variance_sse2.c
vpx_dsp/x86/variance_sse2.c

test: remove x86inc.asm distinction

BUG=b:29583530

Conflicts:
test/vp9_subtract_test.cc

configure: remove x86inc.asm distinction

BUG=b:29583530

Change-Id: I59a1192142e89a6a36b906f65a491a734e603617

Update vpx subpixel 1d filter ssse3 asm

Speed test shows the new vertical filters have degradation on Celeron
Chromebook. Added "X86_SUBPIX_VFILTER_PREFER_SLOW_CELERON" to control
the vertical filters activated code. Now just simply active the code
without degradation on Celeron. Later there should be 2 set of vertical
filters ssse3 functions, and let jump table to choose based on CPU type.

improve vpx_filter_block1d* based on replace paddsw+psrlw to pmulhrsw

Make set_reference control API work in VP9

Moved the API patch from NextGenv2. An example was included.
To try it, for example, run the following command:
$ examples/vpx_cx_set_ref vp9 352 288 in.yuv out.ivf 4 30

Conflicts:
examples.mk
examples/vpx_cx_set_ref.c
test/cx_set_ref.sh
vp9/decoder/vp9_decoder.c

deblock filter : moved from vp8 code branch

The deblocking filters used in vp8 have been moved to vpx_dsp for
use by both vp8 and vp9.

vpx_thread.[hc]: update webp source reference

+ drop the blob hash, the updated reference will be updated in the
commit message

BUG=b/29583578

vpx_thread: use native windows cond var if available

BUG=b/29583578

original webp change:

commit 110ad5835ecd66995d0e7f66dca1b90dea595f5a
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 19:49:58 2015 -0800

    thread: use native windows cond var if available

    Vista / Server 2008 and up. no speed difference observed.

100644 blob 4fc372b7bc6980a9ed3618c8cce5b67ed7b0f412 src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

vpx_thread: use InitializeCriticalSectionEx if available

BUG=b/29583578

original webp change:

commit 63fadc9ffacc77d4617526a50c696d21d558a70b
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 20:38:46 2015 -0800

    thread: use InitializeCriticalSectionEx if available

    Windows Vista / Server 2008 and up

100644 blob f84207d89b3a6bb98bfe8f3fa55cad72dfd061ff src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

vpx_thread: use WaitForSingleObjectEx if available

BUG=b/29583578

original webp change:

commit 0fd0e12bfe83f16ce4f1c038b251ccbc13c62ac2
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 20:40:26 2015 -0800

    thread: use WaitForSingleObjectEx if available

    Windows XP and up

100644 blob d58f74e5523dbc985fc531cf5f0833f1e9157cf0 src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

vpx_thread: use CreateThread for windows phone

BUG=b/29583578

original webp change:

commit d2afe974f9d751de144ef09d31255aea13b442c0
Author: James Zern <jzern@google.com>
Date:   Mon Nov 23 20:41:26 2015 -0800

    thread: use CreateThread for windows phone

    _beginthreadex is unavailable for winrt/uwp

    Change-Id: Ie7412a568278ac67f0047f1764e2521193d74d4d

100644 blob 93f7622797f05f6acc1126e8296c481d276e4047 src/utils/thread.c
100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h

vp9_postproc.c missing extern.

BUG=webm:1256

deblock: missing const on extern const.

postproc - move filling of noise buffer to vpx_dsp.

Fix encoder crashes for odd size input

clean-up vp9_intrapred_test

remove tuple and overkill VP9IntraPredBase class.

postproc: noise style fixes.

gtest-all.cc: quiet an unused variable warning

under windows / mingw builds

vp9_intrapred_test: follow-up cleanup

address few comments from ce050afaf3e288895c3bee4160336e2d2133b6ea

Change-Id: I3eece7efa9335f4210303993ef6c1857ad5c29c8

8 years agoAlign the quantizers for inter/inter modes in the first pass coding
Jingning Han [Mon, 18 Jul 2016 17:14:13 +0000 (10:14 -0700)]
Align the quantizers for inter/inter modes in the first pass coding

Use regular extended zero bin quantizer for both inter and intra
modes in the first pass. This doesn't affect lowres and midres
significantly, but would bring back 0.9% coding gains for hdres.

Change-Id: Ifa5977fa7b141fc5be595c0f3a4fc81a93f6606f

8 years agofix vp10_convolve() signatures
skal [Mon, 18 Jul 2016 15:32:43 +0000 (08:32 -0700)]
fix vp10_convolve() signatures

fortunately, the call site was calling the function with
the correct parameter order.

Change-Id: Ia48099c18288a2416c8b9a7062d2b8d417fd07df

8 years agoMerge "Merge branch 'master' into nextgenv2" into nextgenv2
Yaowu Xu [Fri, 15 Jul 2016 04:45:52 +0000 (04:45 +0000)]
Merge "Merge branch 'master' into nextgenv2" into nextgenv2

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Thu, 14 Jul 2016 17:57:35 +0000 (10:57 -0700)]
Merge branch 'master' into nextgenv2

Change-Id: Ia3c0f2103fd997613d9f16156795028f89f63265

8 years agoMerge "Add new_quant quantization in rdopt for 4x4 blocks and intra" into nextgenv2
Sarah Parker [Thu, 14 Jul 2016 22:15:32 +0000 (22:15 +0000)]
Merge "Add new_quant quantization in rdopt for 4x4 blocks and intra" into nextgenv2

8 years agoRemove unused zcoeff_blk
Debargha Mukherjee [Thu, 14 Jul 2016 19:28:21 +0000 (12:28 -0700)]
Remove unused zcoeff_blk

from PICK_MODE_CONTEXT and MACROBLOCK

Change-Id: I42f98ce51871948244bdcaaaeb3d0191622116ae