8622 Commits

Author SHA1 Message Date
Scott LaVarnway
2d040dd68c VP9: Refactor read_inter_block_mode_info() -- 2
Change-Id: I96d4764523b8d634eafb4cb3ed6eb3aee4052573
2016-02-09 15:36:01 -08:00
Scott LaVarnway
29e211886f Merge "BUG FIX: undefined reference to `vp9_scale_and_extend_frame_c'" 2016-02-09 14:52:04 +00: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
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
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
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
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
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
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
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
James Zern
724ba02f1b vp9_denoiser: mark total_adj_strong_thresh inline
avoids -Wunused-function warnings when INLINE is set

Change-Id: I14a3b32837d358516b7702a2fb804bec010bb5c6
2016-02-01 23:47:02 -08:00
Alex Converse
ad43a73883 Fix a signed overflow in vp9 motion cost.
Change-Id: I5975e3aede62202d8ee6ced33889350c0a56554a
2016-02-01 14:27:32 -08:00
Marco
734dc36173 vp9: Add flag to control usage of skin detection.
Set off as default; on for 1 pass cbr mode, speed >=5, non-screen-content.

Change-Id: I03f2497e4028b354fd83b8a7d0e072c2a6bec878
2016-02-01 11:57:56 -08:00
Marco Paniconi
f51dd8c2ac Merge "vp9 non-rd partition: Update condition on force_split for skin area." 2016-02-01 18:48:46 +00:00
Marco
9248689645 vp9 non-rd partition: Update condition on force_split for skin area.
Avoid low resolutions for now.

Change-Id: Ib3a7bb8716a033449b2afb216edd70897a280df9
2016-02-01 09:50:53 -08:00
Marco
dc2e97c900 vp9-denoiser bugfix: Disable postproc-denoiser under temporal denoising.
The postproc vp9_denoise() is a spatial denoise/blur function.
It was not intended to be used if temporal denoising is enabled.

Change-Id: I97d2dcb941e7cc49bbafce99d9286beb2693249d
2016-02-01 09:08:28 -08:00
Marco Paniconi
0a3593a555 Merge "vp9-noise estimate: Put check to avoid possible out of bounds." 2016-02-01 15:18:16 +00:00
Scott LaVarnway
0c60282786 Merge "VP9: Refactor read_inter_block_mode_info()" 2016-02-01 12:52:15 +00:00
Marco
9b24251c91 vp9-noise estimate: Put check to avoid possible out of bounds.
Put check to avoid possible out of bounds when looping
over the blocks to estimate noise level.
No change in behavior.

Change-Id: I4b7b19b7edee0ae1c35b9dc0700b1bf9b304d7f5
2016-01-31 22:29:51 -08:00
James Zern
8faccb709a Merge changes If13946e4,I61a1814d,I2ca9aa3c,I44d91eaa
* changes:
  intrapred: protect functions w/CONFIG check
  vp9_noise_estimate: protect copy_frame w/CONFIG check
  vp8_cx_iface: delete 3 unused functions
  vp8: mark intra_prediction_down_copy inline
2016-01-30 00:17:16 +00:00
Scott LaVarnway
d12f87cd07 VP9: Refactor read_inter_block_mode_info()
Change-Id: I8e6a1a1b6eec17d0076660b559f6fc120a78c538
2016-01-29 15:30:27 -08:00
hui su
580e815f3b Refactor prob_diff_update_savings_search_model
Change-Id: Icfab58e880285d5af00985dc20db2174a67d1fe8
2016-01-29 12:51:10 -08:00
Marco Paniconi
432136ef56 Merge "Fix failure with libvpx__unit_tests-multi-target" 2016-01-29 18:55:13 +00:00
Marco Paniconi
b9723c4be9 Merge "vp9-denoiser: Force increase_denoising = 0 for skin block." 2016-01-29 18:43:27 +00:00
Marco
72e3b5b2c5 Fix failure with libvpx__unit_tests-multi-target
Introduced in: https://chromium-review.googlesource.com/#/c/323215/
For now exclude the computation of vp_compute_skin_block for highbitdepth.

Change-Id: I18107a862c17ba869438ec3616a787bf173736c4
2016-01-29 10:05:08 -08:00
Marco
c9e984a858 vp9-denoiser: Force increase_denoising = 0 for skin block.
Change-Id: Ic5af41db58a3daad4103175b4b4b9300675020c0
2016-01-29 08:37:02 -08:00
Zoe Liu
bca1a350c9 Merge "Cleaned code in firstpass related to altref frame" 2016-01-29 16:31:41 +00:00