Commit Graph

15135 Commits

Author SHA1 Message Date
Marco
aff0a802e7 vp9-aq-mode=3: Reset cyclic refresh under config/external size change.
If the application changes frame size (external size changes),
and aq-mode=3 is on, reset the cyclic refresh.

Modify the TestExternalResize unittest (longer run with more resize
actions). Without this change an assert would be triggered on this
longer test.

Change-Id: I0eefd2cd7ffa0c557cca96ae30d607034a2599ce
2016-02-09 10:10:36 -08:00
Yaowu Xu
bb8eebc0e0 Merge "Set use_highbitdepth flag to either 1 or 0" 2016-02-09 16:57:28 +00:00
Scott LaVarnway
29e211886f Merge "BUG FIX: undefined reference to `vp9_scale_and_extend_frame_c'" 2016-02-09 14:52:04 +00:00
Yaowu Xu
5c327cb450 Set use_highbitdepth flag to either 1 or 0
This reduces the buffer allocation size for high bit depth buffers by
more than 70%.

Change-Id: Iab9007d9684e8ac30ce7fa94e61f038f01792fc5
2016-02-08 20:30:50 -08:00
Debargha Mukherjee
f28ea3e830 Explicitly set tx_type for sub8x8 blocks
Fixes an issue where the tx_type was not set correctly for
sub8x8 inter and intra blocks. In the current syntax, for
sub8x8 blocks, there is still a single tx_type that is
transmitted. Ideally, this should be searched for the best
rd performance, albeit at the expense of encode speed.
For now, we just set it to DCT_DCT. Previously it was left
incorrectly as what was used for the previous non sub8x8
block.

derflr: BDRATE -0.277%

Change-Id: If76ba903bfbfd4d374cf1ac7d1daee50e92f0edd
2016-02-08 16:11:53 -08:00
Scott LaVarnway
0840c6fb8f BUG FIX: undefined reference to `vp9_scale_and_extend_frame_c'
See https://bugs.chromium.org/p/webm/issues/detail?id=1145

Change-Id: I778ee07dc39a524e3f729bef47a7abeed51e0cee
2016-02-08 13:42:56 -08:00
Marco
2a3f994723 vp9-denoiser: Allow for checking skin for bsize <=32x32.
Change-Id: I6c99ac6fd3735e24cf668479c55bff313c0b4970
2016-02-08 13:01:38 -08:00
Jingning Han
f032c7eaed Merge "Account for sub8x8 block skip mode cost in RD decision" 2016-02-08 19:40:01 +00:00
Jingning Han
203bdd20fb Account for sub8x8 block skip mode cost in RD decision
Make this consistent with regular block size rate-distortion
optimization. It improves the compression performance:
derf    0.055%
hevcmr  0.129%

Change-Id: I112fe734f592c21bc7aa6efb7e3f269c4214ee7b
2016-02-08 10:18:51 -08:00
Jingning Han
ac6d40ece8 Clean up in vp9_rd_pick_inter_mode_sb
Use local variable.

Change-Id: I0d3df36cf4536958a0cda422f6c30da50f0e0bbf
2016-02-08 10:15:02 -08:00
James Zern
ba7ebbb35c vp8: fix build with mingw+pthreads
Change-Id: Icc34a00759c95b7b8ac356cdcc4adae848b61431
2016-02-05 21:08:45 -08:00
Marco
ae98a61e22 vp9-dynamic resize: On a resize trigger frame refresh alt_ref.
For 1 pass real-time mode. No change in behavior as only last
and golden are used as references in 1 pass real-time mode.

Change-Id: Ie4655014eee1a8b271542f29d74b2c6f7fed54c9
2016-02-05 16:32:49 -08:00
James Zern
05437805f7 intrapred/d135: flatten border results before storing
the results along the top and left border are then stored with a moving
window into the vector.
~40-67% faster on ARM, ~40-77+% on x86 depending on the block size.

Change-Id: Iab369aa2946a3ae4eb7290d512868fe5db92dbc8
2016-02-05 12:31:48 -08:00
Alex Converse
def519efb3 Fix an uninitialized warning.
Change-Id: I3ac1070df2948f6d8637ade7192400be53a7675c
2016-02-05 12:06:38 -08:00
James Zern
f7b4364cbb vp9_aq_cyclicrefresh: fix unused-function warning
delete apply_cyclic_refresh_bitrate(). unused since:
3472cbb vp9 aq-mode=3: Keep it on even at low bitrates.

Change-Id: I0fac9a31b59504e31000ac3a8f0b68e8d4320113
2016-02-05 11:56:51 -08:00
Marco Paniconi
85dccb6944 Merge "vp9 aq-mode=3: Keep it on even at low bitrates." 2016-02-05 16:38:41 +00:00
James Zern
693dcc86cf Merge "configure: enable -Wunused-function by default" 2016-02-05 02:45:56 +00:00
James Zern
ecd32d6faa Merge "Vidyo patch: Optimization for 1-to-2 downsampling and upsampling." 2016-02-05 02:36:03 +00:00
Marco
3472cbbd88 vp9 aq-mode=3: Keep it on even at low bitrates.
Change-Id: I6a27db6b9dbe3d8cb3d47ef30fbd52557171cadd
2016-02-04 17:31:10 -08:00
Scott LaVarnway
989c69303d Vidyo patch: Optimization for 1-to-2 downsampling and upsampling.
Change-Id: I9cc9780f506e025aea57485a9e21f0835faf173c
2016-02-04 14:50:26 -08:00
Zoe Liu
0f7dd40324 Define a macro to replace hardcoded values
The definition is for the number of frames to check to determine the
recent decay rate, further to determine the next key frame in the
first pass of the encoder.

Change-Id: Ic696d6eb518a86fa296842273cf8767ef0b0e27a
2016-02-04 05:33:22 -08:00
James Zern
771d276b27 configure: enable -Wunused-function by default
when INLINE is defined and mips is not being targeted. otherwise keep
the old --enable-extra-warnings behavior

Change-Id: Iba576edbe5fca03efa56ce99eee11f9cafc573ad
2016-02-03 23:07:20 -08:00
James Zern
f74e04cc62 fdct8x8_test:: quiet unused-function warning
in non-x86 builds

Change-Id: I9f6fa40d27f95a4afe92444f71c23dc9a15db466
2016-02-03 23:04:42 -08:00
James Zern
497b6744ea Merge changes from topic 'dead-code'
* changes:
  yv12config.c: remove dead CONFIG_ALPHA code
  vp9_encoder.c: remove unused macro
  vpx_mem.c: remove unused macro
  vp9_svc_layercontext.c: relocate a macro definition
  vp9_encoder.c: protect SNPRINT* macros w/CONFIG check
  vp9_aq_360.c: remove some unused macros
  vp9_diamond_search_sad_avx.c: rename (un)likely macros
  vp9_resize.c: add missing include
  vp9_aq_complexity.c: remove unused macros
  vp9_detokenize.c: remove unused macros
2016-02-04 06:25:44 +00:00
James Zern
b63788a116 Merge changes I1171e9c7,I77292e11,I1678ab48,Id7a2c345
* changes:
  dct16x16_test: quiet unused-function warning
  intrapred: protect functions w/CONFIG check x2
  dct32x32_test: remove unused function
  tests: quiet some warnings w/--disable-webm-io
2016-02-04 03:43:49 +00:00
Marco Paniconi
37c8f57318 Merge "vp9-skinmap. Some adjustments for model=1." 2016-02-03 23:34:07 +00:00
Marco
82148c02c1 vp9-skinmap. Some adjustments for model=1.
-use larger threshold on y (as in vp8).
-add distance threshold for each cluster
-use larger skin distance threshold for first cluster
-add some early exist checks.

Keep default setting to model=0.

Change-Id: I1044b99ade4bb1f215a860a019a4d84cee2f7715
2016-02-03 14:47:15 -08:00
Jingning Han
6f49e8a186 Merge "Use precise rate cost estimate for skip block mode" 2016-02-03 20:40:10 +00:00
Jingning Han
bcce658d31 Use precise rate cost estimate for skip block mode
It improves the compression performance of VP9 by 0.1% across all
test sets. No speed change is observed.

Change-Id: I59338c5c9e67bae22188f35fc3afbfe2a6bba6b0
2016-02-03 11:09:16 -08:00
Hui Su
2231d1063c Merge "Fix some interger overflow errors" 2016-02-03 18:12:26 +00:00
Hui Su
f22a0bc574 Merge "Add high bit depth args to arg list" 2016-02-03 05:49:35 +00:00
James Zern
81c165973e dct16x16_test: quiet unused-function warning
in non-x86 builds

Change-Id: I1171e9c7e7ea5bcdea70bf5e3d28b07d6bb5578f
2016-02-02 19:42:19 -08:00
James Zern
cdf1077d5a intrapred: protect functions w/CONFIG check x2
high-bitdepth version
d207e, d63e, d45e are only used with CONFIG_MISC_FIXES

Change-Id: I77292e11f51fd76d4127fd0027f876866bcf8675
2016-02-02 19:38:37 -08:00
James Zern
b0549839f6 dct32x32_test: remove unused function
idct32x32_8

Change-Id: I1678ab48639cc54be4c9294479de01beced9e1e9
2016-02-02 19:37:22 -08:00
James Zern
51906ad6e3 tests: quiet some warnings w/--disable-webm-io
unused-functions/variables

Change-Id: Id7a2c345442129d84ec1482e38fcdc4bc9eaad7d
2016-02-02 19:32:25 -08:00
hui su
06bcd852ad Add high bit depth args to arg list
So that their usage info. will show up with --help.

Change-Id: I8542240dcc98e8be29ac63d081f5abb932627cbf
2016-02-02 18:08:54 -08:00
James Zern
29b9461a5a yv12config.c: remove dead CONFIG_ALPHA code
the rest was removed with:
5926e7c Remove unfinished VP9 alpha channel.

Change-Id: I0c1d92765e5334e1380ad027b069b401e4ae9b8f
2016-02-02 18:06:05 -08:00
James Zern
fc110235ad vp9_encoder.c: remove unused macro
SHARP_FILTER_QTHRESH

unused since:
5373119 Merging in the Switchable interp experiment

Change-Id: I9ccc1883828babffd1886810b59aa16aca4766bf
2016-02-02 18:03:26 -08:00
James Zern
77d3775941 vpx_mem.c: remove unused macro
__VPX_MEM_C__

unused since:
f58011a vpx_mem: remove vpx_memset

Change-Id: I820c972c4165275ddf21c1687748409818a7f2af
2016-02-02 18:03:15 -08:00
James Zern
c9e057a9a0 vp9_svc_layercontext.c: relocate a macro definition
move SMALL_FRAME_FB_IDX closer to its first use. this is only used with
CONFIG_SPATIAL_SVC.

Change-Id: Ibf2b3e59a3aab2be2c3b3f89b4380ebe272e0ed6
2016-02-02 18:02:33 -08:00
James Zern
d6c66d4691 vp9_encoder.c: protect SNPRINT* macros w/CONFIG check
these are only used with CONFIG_INTERNAL_STATS

Change-Id: Ibbcefbdc1db79d93f75e5865289f9960a8c2358a
2016-02-02 18:02:32 -08:00
James Zern
d78ebb82f5 vp9_aq_360.c: remove some unused macros
ENERGY_MIN
ENERGY_MAX
ENERGY_SPAN
ENERGY_IN_BOUNDS

unused since first commit

Change-Id: I5507d36487aaee3e64f7a5fba582791ef9a533b0
2016-02-02 18:01:49 -08:00
James Zern
8647792975 vp9_diamond_search_sad_avx.c: rename (un)likely macros
avoid using '__' this is a reserved namespace for the compiler

Change-Id: I7d2be4dba2bdddc6f1010a16ad9e59a2e211b064
2016-02-02 18:01:49 -08:00
James Zern
8a515c16fd vp9_resize.c: add missing include
Change-Id: I429e3c80216102ed0a85ce348ecac0bf1e1e28eb
2016-02-02 18:01:49 -08:00
James Zern
59b560acef vp9_aq_complexity.c: remove unused macros
DEFAULT_COMPLEXITY
VAR_STRENGTH_STEP

unused since first commit

Change-Id: I4a47544098caf0d72e571633b7776146be88237c
2016-02-02 18:01:30 -08:00
James Zern
8ec0159159 vp9_detokenize.c: remove unused macros
LOW_VAL_CONTEXT_NODE
TWO_CONTEXT_NODE
THREE_CONTEXT_NODE
HIGH_LOW_CONTEXT_NODE
CAT_ONE_CONTEXT_NODE
CAT_THREEFOUR_CONTEXT_NODE
CAT_THREE_CONTEXT_NODE
CAT_FIVE_CONTEXT_NODE

unused since:
adaec4d Speeding up decode_coeffs().

Change-Id: Id07d2b0b76ff0ee6ef40d1b7a8e085e5e9e4aa8d
2016-02-02 18:00:46 -08:00
hui su
1c9b0918b3 Fix some interger overflow errors
Change-Id: I7e44bd952f28ce9925e8bdf6ee8ca2bb13de1b49
2016-02-02 17:32:15 -08:00
James Zern
dee831c484 Merge changes I4a365757,I14a3b328
* changes:
  vp10: remove unused (read|write)_uniform
  vp9_denoiser: mark total_adj_strong_thresh inline
2016-02-03 00:51:42 +00:00
Alex Converse
614f0727e4 Merge "Fix a signed overflow in vp9 motion cost." 2016-02-02 21:12:49 +00:00
Paul Wilkins
e062eb16fb Merge "Loop filter search resets on overlay frame." 2016-02-02 14:44:47 +00:00