Граф коммитов

20318 Коммитов

Автор SHA1 Сообщение Дата
Sarah Parker 13d0662b9b Reduce the number of bits sent for global translation model
When a global translation model is found, the only 3 bits
of precision are used for the motion parameters. This case
uses a smaller precision than the translation parameters
in a global model that is rotzoom or greater.
Change-Id: Ic972e9edf46e301f2894cce2b723960d0297c8e8
2017-04-05 17:34:44 +00:00
Thomas Davies 4ba27d0162 Add default CDF table for dual filter.
This fixes errors with EC_ADAPT where the CDF tables
are not built from 8-bit probabilities.

Change-Id: I2a35eef3d37503a8011db4089e11ba4da14bbf34
2017-04-05 16:27:49 +00:00
Steinar Midtskogen 8ff52fccfa CDEF: Add damping to dering
high-latency, cpu-used=0:
   PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
-0.1650 |  0.2545 |  0.2977 |  -0.0423 | -0.0947 | -0.0725 |    -0.0365

low-latency, cpu-used=0:
   PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
-0.4006 |  0.0501 | -0.0108 |  -0.1790 | -0.1660 | -0.1992 |    -0.2135

low latency, cpu-used=4:
   PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
-0.5508 | -0.2445 | -0.2762 |  -0.1981 | -0.2878 | -0.2228 |    -0.3733

Change-Id: Ia20df28c8bbb6182215b02016053af33bd498145
2017-04-05 14:53:02 +00:00
Debargha Mukherjee 1d18460fab Reduce precision bis between shears
Change-Id: I89e981c9396c7a1ba8051d65036a16692da94d0d
2017-04-05 14:28:00 +00:00
James Zern 0d749d6009 args.c: fix range check in int/uint
this also clears the remaining -Wshorten-64-to-32 warnings in this file.
the previous patch ported from libvpx was incomplete due to:
d3a7576fb Add compiler flag -Wsign-compare

Change-Id: I105fa2342073dfa8bd0619b4282435fb6568f5c9
2017-04-05 05:46:17 +00:00
Jingning Han 223b90e5db Deprecate token check in level map coding scheme
Change-Id: I4038d971455626c4c8e93b9b83e9155c5170349e
2017-04-05 05:01:17 +00:00
Jingning Han 94652b8950 Rework the level map based txb encoding loop
This commit integrates the level map coding within cb4x4 framework.

Change-Id: Ied9721df0a7ffd21d1d69d68759d91b6c320c179
2017-04-05 05:01:17 +00:00
Jingning Han 480ee02e8a Initialize level map prob models in cb4x4
Change-Id: I5dec82552b41a5523155b2dea9e05ce69fba4917
2017-04-05 05:01:17 +00:00
Jingning Han 7e25fe6aac Use tx_size table in level map coding functions
Change-Id: I215c4bed9ba5c7f4fc93533249610217de14ce54
2017-04-05 05:01:17 +00:00
Yushin Cho ac4535c80c Change PVQ's skip_dir symbols to use dyadic and ec_adapt adaptation
Change-Id: Idfe23c1aef5d080567094af6e87d65bda3835ae5
2017-04-04 19:54:26 -07:00
Yushin Cho b9802238ea Change PVQ's K=1 symbols to use dyadic and ec_adapt adaptation
Change-Id: I7b855a68c5fedda4e34bfcbbabafa9ba52c09735
2017-04-04 19:54:26 -07:00
Yushin Cho a0d6f117ff Change PVQ's partition split symbols to use dyadic and ec_adapt adaptation
Change-Id: I2fd1d6f32b1b395dfdbe556b96dddf65f3cabbbe
2017-04-05 02:10:26 +00:00
Yushin Cho 0077927b15 Change PVQ's skip symbols to use dyadic and ec_adapt adaptation
Change-Id: I4f7d37af84220971a839f4f8f42aafa1adeb04e4
2017-04-05 02:10:10 +00:00
Tristan Matthews 4d5182ced2 analyzer: show padding
Change-Id: Ia79346bcee77c20def193dc790da665d425539de
2017-04-05 01:12:54 +00:00
Jingning Han 529ec3c95b Silience a compiler warning in build_inter_predictors()
Remove the unused variable when cb4x4 is enabled.

Change-Id: I0d4d9ebd989cf90b9373d9989dd5e78b93d59e25
2017-04-04 23:59:36 +00:00
Angie Chiang 50910f60e5 Empty the dst buffer before inv txfm when PVQ on
Change-Id: I35b2b69e3937e70a7923ba76735f035f366de27f
2017-04-04 20:51:19 +00:00
Angie Chiang 576055313f Move PVQ flag checking into av1_optimize_b
Change-Id: I00554b925c0a870e766bc116c6d9cb02bd47a101
2017-04-04 20:51:19 +00:00
Angie Chiang 6a71ad1f92 Reduce the config branch of NEW_QUANT
Change-Id: I785a0fbef18adf7cbdbd4f09117d132c7fe69156
2017-04-04 20:51:19 +00:00
Debargha Mukherjee f2f3bcd849 Reduce precision in find_affine_int()
Reduces precision in find_affine_int() function. Makes the maximum
mv allowed 512 from 1024.
Negligible impact on coding efficiency.

Change-Id: I76d4c6824528e3f940d1275fe0bd22d71015a8d0
2017-04-04 19:48:56 +00:00
Cheng Chen 01add69970 Fix TX64X64 bug in quantization
Change-Id: I4b77388fa49e29a8302fe8c3276471e8156ce2d5
2017-04-04 18:13:52 +00:00
Angie Chiang 41fffae6e5 Use av1_inverse_transform_block() in rdopt.c
This will make the code cleaner

Change-Id: I94622b696b0a8d51d28dbbe29c767a62942bc5f3
2017-04-04 17:37:39 +00:00
Sarah Parker 91eb798b8f Fix mismatch in global-motion experiment
This was introduced in 72e2e982ee

Change-Id: Ia4d0a0606a518964d5f6f257874f8f3d5b4d651b
2017-04-04 17:26:41 +00:00
Jean-Marc Valin 283ecdd29f Joint chroma search
high-latency, cpu=0:
  PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
0.0817 | -0.4672 | -0.6651 |   0.1043 | 0.0968 |  0.1063 |    -0.1847

low-latency, cpu=0:
  PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
0.0860 | -0.7110 | -0.7393 |   0.1018 | 0.0946 |  0.1800 |    -0.1537

low-latency, cpu=4:
  PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
0.0097 | -0.8022 | -0.7514 |  -0.0115 | 0.0621 | -0.0092 |    -0.3804

Change-Id: I5c2eced295598771c7a74ec15a5f0eb84d872cc9
2017-04-04 16:54:14 +00:00
Yunqing Wang 1e64e70b5f Fix forward transform compilation errors
BUG=aomedia:395

Change-Id: I381f16e66e2540c9bf24727abf8915a3850dcc92
2017-04-04 16:25:55 +00:00
Sean Purser-Haskell 05a12ea97f Refactored warp_filter_test to allow reuse by external tests.
Change-Id: Id32a6a21ffda48ef16b027b55f9082614f389003
2017-04-04 16:16:06 +00:00
Thomas Davies c1a13998dc Exclude decode_to_md5 test from examples.sh.
Running this test in Jenkins causes all but trivial changesets to
fail unless the hash is changed. Other changes in master
can meanwhile cause the hash to be out of date by the time
of merge even if it is changed, so rebases of previously
passing changesets will then fail again.

Change-Id: I4ee5010ceec85da7eedd8ada2d171f64a92491c1
2017-04-04 15:53:58 +00:00
Jingning Han ba50232673 Make copy_dering_16bit_to_16bit parameters consistent with od_dering
This commit fixes a residual parameter set conflicts in function
copy_dering_16bit_to_16bit(), due to the change of cb4x4 support
approach in cdef to better respect od_dering.c as a codec
independent file.

Change-Id: I7e2295cf6a083729077374b13836909bb611d573
2017-04-04 14:28:50 +00:00
Thomas Davies eb649729bf Enable new_tokenset by default and fix experiment compatibility.
Change-Id: Ifd55343b701eb753537b9711abd377adcedde8ec
2017-04-04 11:18:21 +01:00
Jean-Marc Valin 1d4568c00d
od_filter_dering_direction() no longer returns the total change
Change-Id: Ibe19f4422324680b0d3132eab79bdc035911d79d
2017-04-04 00:57:56 -04:00
Jean-Marc Valin be26e03d6e
Saving 3 instructions per line from od_filter_dering_direction_8x8()
Change-Id: I7ca73e03ed171b57a05dd1fd5957906e11b66728
2017-04-04 00:57:56 -04:00
Urvang Joshi c07b23de18 RTCD defs: refactor intra prediction protos.
Change-Id: I0f4576522a07597dbb04089b02ca1fae67075ba4
2017-04-03 23:15:42 +00:00
Angie Chiang d92d4bf40a Add av1_inverse_transform_block
Move most of the code of inverse_transform_block to
av1_inverse_transform_block such that encoder can use the
function as well.

Use av1_inverse_transform_block in av1_encoder_block_intra.
This will make the code cleaner.

Change-Id: I84dbeef2c65e252910606dbea446ce43165d504c
2017-04-03 23:12:22 +00:00
Angie Chiang f87e43f522 Add av1_subtract_txb()
This will simplify the code flow in av1_subtract_txb()

Change-Id: I575da4a74f435b5862d2a848bdedae9856672121
2017-04-03 23:12:22 +00:00
Angie Chiang 3d005e4cc6 Add av1_predict_intra_block_facade
A simpler interface for intra block prediction

Change-Id: I97e3f385746928d87999e6862b1d71a197df0302
2017-04-03 23:12:22 +00:00
Angie Chiang 19407b5273 Add subtract_block()
This function help us merge subtract block code in
av1_subtract_plane and av1_encode_block_intra.

Change-Id: Ie793d88a218f1082c6fe28900a521f461e34d564
2017-04-03 23:12:22 +00:00
Alex Converse 0ec34d2cea inspect: Fix build with CDEF disabled
Change-Id: I463d01ecf0ef2d666c38f9dec510b8b0b1eecadc
2017-04-03 14:56:02 -07:00
Alex Converse 2b9d19d201 unpoison_partition_ctx: Move the fake context to the end
It's less invasive and helps make future changes easier.

Change-Id: I0f858462f14109ace4d76a31daeac4289c94bc6e
2017-04-03 21:30:17 +00:00
Thomas Davies 493623ea84 Enable ec_adapt by default and fix experiment compatibilities.
EXT_TILE: allocate variables on the heap due to the potentially
large number of tiles.

ANS: initialise tile contexts.

EXT_INTER, MOTION_VAR, WARPED_MOTION: fix compilation.

Change-Id: I43a9d01c2442d97b6a8875712f77d932dce3740d
2017-04-03 20:55:45 +00:00
Thomas Davies f14853ded6 NEW_TOKENSET: Initialise tail probabilities correctly.
A bug, but no change to BDR.

Change-Id: I17fbe836fd72d148a4f0608fcff7e2fbcaf75eb0
2017-04-03 20:55:26 +00:00
Sarah Parker adb28aaf37 Fix compiler errors with motion-var + ncobmc
Change-Id: Idae4934424b3e0c2de659e3f55ea6a47b5b4ceab
2017-04-03 11:12:09 -07:00
Steinar Midtskogen 9c1d2440e5 Improve od_dering_simd_sse4_1
Change-Id: I6173dfb181777343d254aef880a8c9d379206556
2017-04-03 17:17:42 +00:00
Steinar Midtskogen 9b501e194e CLPF: Replace v128_shr_n_s8 with v128_cmplt_s8 for sign extraction
On x86 there is no direct v128_shr_n_s8 equivalent, so
v128_cmplt_s8(a, v128_zero()) is much better than v128_shr_n_s8(a, 7).
Should have no impact on NEON.

Also replace v256_from_v128(v128_from_v64(a, b), v128_from_v64(c, d))
with v256_from_v64(a, b, c, d).

Change-Id: I711e3cb250689089d7b5336a294e9d6bdd998445
2017-04-03 17:17:42 +00:00
Jean-Marc Valin ad424477ee Fix CDEF strength search
Previous code was using options selected for N=8 rather than the chosen
number of options.

low-latency, cpu=4:

  PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
0.0077 |  0.0286 | -0.1166 |  -0.0059 | -0.0479 |  0.0025 |    -0.0101

Properly save the best strengths

Change-Id: I629e929c2bc7a0a9592a9e49bfd7898d95174235
2017-04-03 15:22:37 +00:00
Michael Bebenita 0955881a35 Add CDEF support to inspection API
Change-Id: I46101bf22f38a642850b875fb333e7c6b9c1d5b8
2017-04-03 12:20:28 +00:00
Steinar Midtskogen f8abdb031f Improve unit tests for CDEF
Add boundary testing for both dering and CLPF.  Also add a CDEF prefix
to make it easy to select all CDEF tests.

Change-Id: Icd4fa4d778889cff1fd4a4e01c2b901703a431d3
2017-04-03 09:11:07 +02:00
Steinar Midtskogen bab3d6ac28 Make SIMD CLPF functions test for boundaries correctly
Change-Id: I416ab6976702f7840f7ef1d86f737d51fa07ebbc
2017-04-03 07:04:56 +00:00
Steinar Midtskogen 34c8038ec5 CLPF unit test: Only test damping values that are actually used
Change-Id: I1320b9e2f57363686340f066e5366be385daa493
2017-04-03 09:03:13 +02:00
Steinar Midtskogen a2fa9ee3a4 Improve SSE2 implementation of v64_abs_s8 and v128_abs_s8
Change-Id: I5243432106c2456f1220adb9d8f24ae5e4249748
2017-04-03 08:59:23 +02:00
Steinar Midtskogen 6033fb853d Add v64_abs_s8, v128_abs_s8 and v256_abs_s8
Change-Id: I529509e4e997ba123799a3a581d20624d75cf582
2017-04-02 21:45:46 +02:00
Steinar Midtskogen 569c7b91e4 CLPF: Add architecture postfix to the name of static functions
This makes it clear when profiling that the correct SIMD optimised
function is run.

Change-Id: I35d69b3611f40650a85f1973c4010453b2bf5a53
2017-04-02 18:23:08 +00:00