]> granicus.if.org Git - libvpx/log
libvpx
9 years agovp9_mv_pred: quiet a static analysis warning
James Zern [Wed, 18 Mar 2015 21:31:58 +0000 (14:31 -0700)]
vp9_mv_pred: quiet a static analysis warning

add an assert to validate pred_mv array size

Change-Id: I532b882b71e2baff3ac76e07ed133ec5a11bd0fc

9 years agoMerge changes Icc7da602,Id166bd8a
Johann [Wed, 18 Mar 2015 21:02:19 +0000 (14:02 -0700)]
Merge changes Icc7da602,Id166bd8a

* changes:
  Remove last remnants of obj_int_extract
  Initialize "corrupted" to zero

9 years agoOrder header files alphabetically
Adrian Grange [Wed, 18 Mar 2015 18:18:08 +0000 (11:18 -0700)]
Order header files alphabetically

Change-Id: I3e275544bff478849c1b5f3dcd5de950ee330d14

9 years agoRemove last remnants of obj_int_extract
Johann [Mon, 1 Dec 2014 19:59:11 +0000 (11:59 -0800)]
Remove last remnants of obj_int_extract

Change-Id: Icc7da6027763b5ed7cbfe70ffe271103ead59fe1

9 years agoInitialize "corrupted" to zero
Johann [Wed, 18 Mar 2015 18:01:28 +0000 (11:01 -0700)]
Initialize "corrupted" to zero

Because the call to vpx_codec_control at line 928 is now guarded by
!frame_parallel, 'corrupted' may not be set.

Change-Id: Id166bd8a8cdb5e5120fca1640011a3545f6e178a

9 years agoMerge "Add protection for codec interface name change."
Frank Galligan [Wed, 18 Mar 2015 16:51:07 +0000 (09:51 -0700)]
Merge "Add protection for codec interface name change."

9 years agoMerge "Fix the C version of column vector projection"
Jingning Han [Wed, 18 Mar 2015 05:53:49 +0000 (22:53 -0700)]
Merge "Fix the C version of column vector projection"

9 years agoFix the C version of column vector projection
Jingning Han [Wed, 18 Mar 2015 01:50:53 +0000 (18:50 -0700)]
Fix the C version of column vector projection

Make the C and SSE2 versions consistent.

Change-Id: I03c405d22a36bd1a97480efb96dc5af230667424

9 years agoUpdate to variance partition.
Marco [Mon, 16 Mar 2015 02:19:29 +0000 (19:19 -0700)]
Update to variance partition.

Use force_split to constrain the partition selection.
This is used because in the top-down approach to variance partition,
a block size may be selected even though one of its subblocks may have
high variance.

In this patch the selection of the 64x64 block size will only
be allowed if the variance of all the 32x32 subblocks are also below the threshold.

Stil testing, but some visual improvement for areas near slow moving boundary
can be seen. Metrics for RTC set increase by about ~0.5%.

Change-Id: Iab3e7b19bf70f534236f7a43fd873895a2bb261d

9 years agoMerge "Refactor set vbp thresholds function"
Yunqing Wang [Tue, 17 Mar 2015 23:05:53 +0000 (16:05 -0700)]
Merge "Refactor set vbp thresholds function"

9 years agoMerge "Remove unused ZBIN_BOOST macros"
Adrian Grange [Tue, 17 Mar 2015 22:13:12 +0000 (15:13 -0700)]
Merge "Remove unused ZBIN_BOOST macros"

9 years agoAdd protection for codec interface name change.
Frank Galligan [Mon, 16 Mar 2015 19:59:07 +0000 (12:59 -0700)]
Add protection for codec interface name change.

Change-Id: I9101cb1132aa580fc32fd47e8ac9d91d5b09e963

9 years agoRefactor set vbp thresholds function
Yunqing Wang [Tue, 17 Mar 2015 19:19:15 +0000 (12:19 -0700)]
Refactor set vbp thresholds function

Code refactoring.

Change-Id: I73b6fcc0444155ee46c1efa5253c1d608c6439cb

9 years agoRemove unused ZBIN_BOOST macros
Adrian Grange [Tue, 17 Mar 2015 18:53:58 +0000 (11:53 -0700)]
Remove unused ZBIN_BOOST macros

Change-Id: I5169155b20ea3676a6ce58ec77d6aeba07db29d9

9 years agoAdd frame parallel decode option to vpxdec.
hkuang [Fri, 6 Mar 2015 21:03:18 +0000 (13:03 -0800)]
Add frame parallel decode option to vpxdec.

Change-Id: I0ba02d501d65a2f219fa1bb87b8eb81f7e6ab332

9 years agoMerge "Remove duplicate clamping"
Yaowu Xu [Mon, 16 Mar 2015 23:56:10 +0000 (16:56 -0700)]
Merge "Remove duplicate clamping"

9 years agoMerge "Remove ineffective newmv skip checking from vp9_pick_inter_mode"
Jingning Han [Mon, 16 Mar 2015 23:43:43 +0000 (16:43 -0700)]
Merge "Remove ineffective newmv skip checking from vp9_pick_inter_mode"

9 years agoMerge "Simplify prediction filter search in rtc coding mode"
Jingning Han [Mon, 16 Mar 2015 23:43:26 +0000 (16:43 -0700)]
Merge "Simplify prediction filter search in rtc coding mode"

9 years agoMerge "Refactor column integral projection computation"
Jingning Han [Mon, 16 Mar 2015 23:43:11 +0000 (16:43 -0700)]
Merge "Refactor column integral projection computation"

9 years agoMerge "change the order of inter modes evaluated"
Yaowu Xu [Mon, 16 Mar 2015 23:14:34 +0000 (16:14 -0700)]
Merge "change the order of inter modes evaluated"

9 years agoRemove duplicate clamping
Yaowu Xu [Mon, 16 Mar 2015 22:19:37 +0000 (15:19 -0700)]
Remove duplicate clamping

The mvs are clamped in the vp9_find_best_ref_mvs() already.

Change-Id: I9bea5e35aef6007466fe7fca4bc2dc5c17e74222

9 years agoRemove ineffective newmv skip checking from vp9_pick_inter_mode
Jingning Han [Mon, 16 Mar 2015 22:05:01 +0000 (15:05 -0700)]
Remove ineffective newmv skip checking from vp9_pick_inter_mode

Change-Id: I41ee684cf113a7b5edf280183e51cb08b2e93cc4

9 years agoSimplify prediction filter search in rtc coding mode
Jingning Han [Mon, 16 Mar 2015 21:53:08 +0000 (14:53 -0700)]
Simplify prediction filter search in rtc coding mode

Reduce unnecessary fetch from MB_MODE_INFO.

Change-Id: Iff89b76d5e2774c00a564e902913a633fa2e1ea9

9 years agochange the order of inter modes evaluated
Yaowu Xu [Mon, 16 Mar 2015 19:49:30 +0000 (12:49 -0700)]
change the order of inter modes evaluated

Change-Id: I10c1ad23b110cf92cb026e895039c215c47abfd0

9 years agoMerge changes I67890f52,I33c72799
James Zern [Mon, 16 Mar 2015 19:28:46 +0000 (12:28 -0700)]
Merge changes I67890f52,I33c72799

* changes:
  usage.dox: fix encoder/decoder subpage list indent
  usage.dox: fix doxygen warnings in 1.8.x

9 years agoRefactor column integral projection computation
Jingning Han [Mon, 16 Mar 2015 19:03:31 +0000 (12:03 -0700)]
Refactor column integral projection computation

Move the scaling factor outside column projection. This avoids
repeated calculation of the same scaling factor. Profiling shows
that the percentage of vp9_int_pro_col_sse2 of overall cycles
goes from 2.29% down to 1.88%.

Change-Id: I5ac4e324ab2d7f33ba2de66dd2a12e04e04dfd66

9 years agoMerge "Fix indent in choose_partitioning"
Jingning Han [Mon, 16 Mar 2015 18:52:12 +0000 (11:52 -0700)]
Merge "Fix indent in choose_partitioning"

9 years agoFix indent in choose_partitioning
Jingning Han [Mon, 16 Mar 2015 18:01:00 +0000 (11:01 -0700)]
Fix indent in choose_partitioning

Change-Id: I4039f8ac75a9cfcc4d07abd0619d1379bb10fe51

9 years agovp9_pick_inter_mode(): minor optimizations
Yaowu Xu [Mon, 16 Mar 2015 16:42:33 +0000 (09:42 -0700)]
vp9_pick_inter_mode(): minor optimizations

1. remove duplicate initialization to mbmi->interp_filter.
2. move mv clamping into ref_frame loop instead of mode checking loop.
3. move the check if last frame is same as golden frame earlier to
avoid initialization of Golden reference related variables.

Change-Id: Idf2d05e19e94a24f69cc289687869fc71d2ff289

9 years agoMerge "Fix choose_partitioning threshold setup for speed -5"
Jingning Han [Sun, 15 Mar 2015 16:04:07 +0000 (09:04 -0700)]
Merge "Fix choose_partitioning threshold setup for speed -5"

9 years agoFix 1-step refinement search table
Jingning Han [Sat, 14 Mar 2015 17:51:46 +0000 (10:51 -0700)]
Fix 1-step refinement search table

Change-Id: I32f0bcb40c6e7ba63bfae487739ededd0b6b2dde

9 years agousage.dox: fix encoder/decoder subpage list indent
James Zern [Sat, 14 Mar 2015 01:52:11 +0000 (18:52 -0700)]
usage.dox: fix encoder/decoder subpage list indent

use \li to separate the list items contained in conditionals. this
avoids the encode page becoming a sub-item of decode; likely a problem
in <1.8.3.
+ fix encoder conditional, spelling error
+ correct encode page name to match decode 'Encoding'

Change-Id: I67890f52bed8e708bad63fb8819a074e0beff2ca

9 years agousage.dox: fix doxygen warnings in 1.8.x
James Zern [Sat, 14 Mar 2015 01:49:03 +0000 (18:49 -0700)]
usage.dox: fix doxygen warnings in 1.8.x

use \li to denote list items with \if.

fixes the following likely visible in <1.8.3:
usage.dox: warning: Invalid list item found
usage.dox: warning: End of list marker found without any preceding list items

Change-Id: I33c72799edf9f8866596ac8f79247050b8c75681

9 years agoFix choose_partitioning threshold setup for speed -5
Jingning Han [Fri, 13 Mar 2015 23:51:29 +0000 (16:51 -0700)]
Fix choose_partitioning threshold setup for speed -5

The compression performance of speed -5 is on average 12.6% better
than speed -6. At lower bit-rates, the gains are typically 20% or
more. For 2-thread encoding, the speed -5 takes about 1.6x time of
speed -6.

Change-Id: If7a73464a24d33e8f49b9533b51ec51c8da7fc80

9 years agoMerge "Fix comments for vpx_codec_enc_config_default()"
Yaowu Xu [Fri, 13 Mar 2015 22:56:56 +0000 (15:56 -0700)]
Merge "Fix comments for vpx_codec_enc_config_default()"

9 years agoFix comments for vpx_codec_enc_config_default()
Yaowu Xu [Fri, 13 Mar 2015 19:52:52 +0000 (12:52 -0700)]
Fix comments for vpx_codec_enc_config_default()

This makes clear that for end-usage, only 0 is supported currently.

Change-Id: I99795807c20df1d71b3c803e8d5f3b36583dcc85

9 years agoMerge "Provide information on codec controls"
Yaowu Xu [Fri, 13 Mar 2015 22:39:07 +0000 (15:39 -0700)]
Merge "Provide information on codec controls"

9 years agoMerge "Set default encode test driver to 1 column and 1 thread."
Frank Galligan [Fri, 13 Mar 2015 22:07:16 +0000 (15:07 -0700)]
Merge "Set default encode test driver to 1 column and 1 thread."

9 years agoMerge "Fix crash with vp9 denoiser on."
Marco [Fri, 13 Mar 2015 21:31:39 +0000 (14:31 -0700)]
Merge "Fix crash with vp9 denoiser on."

9 years agoMerge "Use sdx4df to do 1-step refinement"
Jingning Han [Fri, 13 Mar 2015 19:57:49 +0000 (12:57 -0700)]
Merge "Use sdx4df to do 1-step refinement"

9 years agoProvide information on codec controls
Yaowu Xu [Fri, 13 Mar 2015 16:42:57 +0000 (09:42 -0700)]
Provide information on codec controls

The commit updates the comments in vp8cx.h to make it clear which
codec support each of codec control functions.

Change-Id: Ibf876e289d4325bbb61ce19311da60d384624c2f

9 years agoFix crash with vp9 denoiser on.
Marco [Fri, 13 Mar 2015 00:19:43 +0000 (17:19 -0700)]
Fix crash with vp9 denoiser on.

Crash occured on very first key frame, because denoiser
temporal function was beng entered.

Updated denoiser unittest to set cpu_used from first frame,
and verified fix fixes the crash.

Change-Id: I3be1124b52846fbbe7248d2c3d6136e086c80bc1

9 years agoMerge "Lower bitrate threshold below which cyclic refresh is turned off."
Marco [Fri, 13 Mar 2015 17:31:35 +0000 (10:31 -0700)]
Merge "Lower bitrate threshold below which cyclic refresh is turned off."

9 years agoMerge "Reconcile active_map and cyclic refresh"
Alex Converse [Fri, 13 Mar 2015 17:20:15 +0000 (10:20 -0700)]
Merge "Reconcile active_map and cyclic refresh"

9 years agoMerge "Reset src buffer only once in vp9_int_pro_motion_estimation"
Jingning Han [Fri, 13 Mar 2015 16:56:00 +0000 (09:56 -0700)]
Merge "Reset src buffer only once in vp9_int_pro_motion_estimation"

9 years agoMerge "Reduce the number of full block SAD calls"
Jingning Han [Fri, 13 Mar 2015 16:55:52 +0000 (09:55 -0700)]
Merge "Reduce the number of full block SAD calls"

9 years agoUse sdx4df to do 1-step refinement
Jingning Han [Fri, 13 Mar 2015 16:53:15 +0000 (09:53 -0700)]
Use sdx4df to do 1-step refinement

Change-Id: Ie0c3ef3ae3aedf049b1a296de607730b79c12672

9 years agoLower bitrate threshold below which cyclic refresh is turned off.
Marco [Fri, 13 Mar 2015 16:36:22 +0000 (09:36 -0700)]
Lower bitrate threshold below which cyclic refresh is turned off.

Change-Id: Ib54ab11adf8178eec74f65388a89c8f912c7869a

9 years agoMerge "Shorten GF/arf interval in hard scenes."
paulwilkins [Fri, 13 Mar 2015 15:45:52 +0000 (08:45 -0700)]
Merge "Shorten GF/arf interval in hard scenes."

9 years agoSet default encode test driver to 1 column and 1 thread.
Frank Galligan [Mon, 9 Mar 2015 22:52:29 +0000 (15:52 -0700)]
Set default encode test driver to 1 column and 1 thread.

Change-Id: I70ee538609cefad76b8ce9b225bbf8d8447aff23

9 years agoMerge changes Ic54c88ec,I6f120b65
Yaowu Xu [Fri, 13 Mar 2015 04:27:04 +0000 (21:27 -0700)]
Merge changes Ic54c88ec,I6f120b65

* changes:
  Added comment for vp9 only codec controls
  Rename a vp9 only control with vp9e prefix

9 years agoReset src buffer only once in vp9_int_pro_motion_estimation
Jingning Han [Fri, 13 Mar 2015 01:46:40 +0000 (18:46 -0700)]
Reset src buffer only once in vp9_int_pro_motion_estimation

Change-Id: I5c96b6a25f9df60da65b7af7c92a921b611746e3

9 years agoMerge "vp9_pick_inter_mode(): Use single loop to evaluate inter modes"
Yaowu Xu [Fri, 13 Mar 2015 01:43:23 +0000 (18:43 -0700)]
Merge "vp9_pick_inter_mode(): Use single loop to evaluate inter modes"

9 years agoAdded comment for vp9 only codec controls
Yaowu Xu [Fri, 13 Mar 2015 01:14:43 +0000 (18:14 -0700)]
Added comment for vp9 only codec controls

Comments are updated to reflect that these controls apply to VP9 only,
thereby, to insure the document produced by doxygent to reflect the
same fact too.

Change-Id: Ic54c88ec066aa0ec4552d43dd4a7016e1f810f42

9 years agoRename a vp9 only control with vp9e prefix
Yaowu Xu [Fri, 13 Mar 2015 00:59:18 +0000 (17:59 -0700)]
Rename a vp9 only control with vp9e prefix

Also updated comments and doc to make it clear that the control is
supported in VP9 only.

Change-Id: I6f120b65135fc1185695e9e3dc29fbe0d430824b

9 years agoReduce the number of full block SAD calls
Jingning Han [Thu, 12 Mar 2015 23:18:12 +0000 (16:18 -0700)]
Reduce the number of full block SAD calls

This commit uses a 6-point 1-step refine motion search in the
integral projection based full pixel motion estimation, to replace
the current 9-point search.

It reduces runtime cost of speed -6 on some noisy clips, e.g.,
dark720p single thread
33314 b/f, 40.076 dB, 18231 ms ->
33307 b/f, 40.067 dB, 17768 ms

The compression performance for rtc set remains unchanged.

Change-Id: I194ea5a9ce52e5a10baeee36338633adc22f764c

9 years agoMerge "Minorly modify model_rd_for_sb_y function"
Yunqing Wang [Fri, 13 Mar 2015 00:16:48 +0000 (17:16 -0700)]
Merge "Minorly modify model_rd_for_sb_y function"

9 years agoMerge "Fix fdct8x8_quant ssse3 overflow issue"
Jingning Han [Thu, 12 Mar 2015 23:43:09 +0000 (16:43 -0700)]
Merge "Fix fdct8x8_quant ssse3 overflow issue"

9 years agoReconcile active_map and cyclic refresh
Alex Converse [Tue, 10 Mar 2015 23:08:17 +0000 (16:08 -0700)]
Reconcile active_map and cyclic refresh

Change-Id: Id7f8654aeeb20caa402bc822521b1d72c658f4f9

9 years agovp9_pick_inter_mode(): Use single loop to evaluate inter modes
Yaowu Xu [Wed, 11 Mar 2015 17:16:39 +0000 (10:16 -0700)]
vp9_pick_inter_mode(): Use single loop to evaluate inter modes

This commit changes to use single loop to evaluate all inter modes.
There is no impact on compression quality and speed, but allow future
experiment with the order of modes evaluated.

Change-Id: I71696ce1014cbe127e25e98710d835987f5ecc09

9 years agoMinorly modify model_rd_for_sb_y function
Yunqing Wang [Wed, 11 Mar 2015 18:31:47 +0000 (11:31 -0700)]
Minorly modify model_rd_for_sb_y function

Added a skip_dc check. If skip_dc = 1, we could eliminate calling
of vp9_model_rd_from_var_lapndz(). This gave slight PSNR & SSIM
gain(<0.1%), and no speed change.

Change-Id: If5ca733366148c86b98e196a00cc890f50e9a3e5

9 years agoFix fdct8x8_quant ssse3 overflow issue
Jingning Han [Thu, 12 Mar 2015 19:16:27 +0000 (12:16 -0700)]
Fix fdct8x8_quant ssse3 overflow issue

This resolves webm issue 968.

Change-Id: Ieb363129b1e135a561141c68211d413226aba754

9 years agoMerge "Some rate control adjustments to control overshoot"
Deb Mukherjee [Thu, 12 Mar 2015 18:10:59 +0000 (11:10 -0700)]
Merge "Some rate control adjustments to control overshoot"

9 years agoMerge "Prevent integer overflow in choose_partitioning"
Jingning Han [Thu, 12 Mar 2015 16:24:02 +0000 (09:24 -0700)]
Merge "Prevent integer overflow in choose_partitioning"

9 years agoMerge "Remove unnecessary speed feature checking"
Jingning Han [Thu, 12 Mar 2015 16:23:51 +0000 (09:23 -0700)]
Merge "Remove unnecessary speed feature checking"

9 years agoMerge "Apply fast motion search to golden reference frame"
Jingning Han [Thu, 12 Mar 2015 16:23:41 +0000 (09:23 -0700)]
Merge "Apply fast motion search to golden reference frame"

9 years agoMerge "Refactor to remove GLOBAL_MOTION"
Jingning Han [Thu, 12 Mar 2015 16:23:31 +0000 (09:23 -0700)]
Merge "Refactor to remove GLOBAL_MOTION"

9 years agoFix a typo introduced in #94401aff
Yaowu Xu [Thu, 12 Mar 2015 15:01:08 +0000 (08:01 -0700)]
Fix a typo introduced in #94401aff

This fixes all test vector failures

Change-Id: Ie1a9fe0f023f7a0c7e89eb55df1b40ff65302adc

9 years agoMerge "Fix visual studio build failure."
Marco [Thu, 12 Mar 2015 00:19:47 +0000 (17:19 -0700)]
Merge "Fix visual studio build failure."

9 years agoPrevent integer overflow in choose_partitioning
Jingning Han [Wed, 11 Mar 2015 23:29:13 +0000 (16:29 -0700)]
Prevent integer overflow in choose_partitioning

Re-arrange the multiplication and right shift operations to avoid
integer overflow in choose_partitioning.

Change-Id: Ib4005cafb410a67c1960486471d75b6ebe38c4e0

9 years agoMerge "Refactor the block decode code to make it simpler."
hkuang [Wed, 11 Mar 2015 23:19:14 +0000 (16:19 -0700)]
Merge "Refactor the block decode code to make it simpler."

9 years agoFix visual studio build failure.
Marco [Wed, 11 Mar 2015 23:11:35 +0000 (16:11 -0700)]
Fix visual studio build failure.

Change-Id: Ifeb14f945d0f0300eb7b21b38e5720ac1c11a6cf

9 years agoRemove unnecessary speed feature checking
Jingning Han [Wed, 11 Mar 2015 23:08:59 +0000 (16:08 -0700)]
Remove unnecessary speed feature checking

This commit removes the pred_mv_sad comparison from rtc motion
search, given that a stronger comparison has been done at the
mode search level to eliminate unlikely selected reference frames.

Change-Id: I49b8d24b2174303066fd8eff2102c0648f2869df

9 years agoMerge "Clamp rate correction factor after scaling it"
Adrian Grange [Wed, 11 Mar 2015 23:09:49 +0000 (16:09 -0700)]
Merge "Clamp rate correction factor after scaling it"

9 years agoApply fast motion search to golden reference frame
Jingning Han [Tue, 10 Mar 2015 01:55:38 +0000 (18:55 -0700)]
Apply fast motion search to golden reference frame

This commit enables the rtc coding mode to run integral projection
based motion search for golden reference frame. It improves the
speed -6 compression performance by 1.1% on average, 3.46% for
jimred_vga, 6.46% for tacomascmvvga, and 0.5% for vidyo clips. The
speed -6 is about 6% slower.

Change-Id: I0fe402ad2edf0149d0349ad304ab9b2abdf0c804

9 years agoRefactor to remove GLOBAL_MOTION
Jingning Han [Wed, 11 Mar 2015 22:44:26 +0000 (15:44 -0700)]
Refactor to remove GLOBAL_MOTION

Make the vp9_int_pro_motion_estimation() function return zero
motion vector if high bit depth is turned on, instead of removing
it from compiled codes.

Change-Id: Ia48f010eb590b2d517d5678c394110b326a1a95e

9 years agovpx_temporal_svc_encoder: Update some default settings.
Marco [Wed, 11 Mar 2015 21:07:34 +0000 (14:07 -0700)]
vpx_temporal_svc_encoder: Update some default settings.

Set flags=0 if layering_mode=0, and set static_thresh=1.

Change-Id: Id9874923b23966a2b1d0e83965add7d5c9d26d16

9 years agoRefactor the block decode code to make it simpler.
hkuang [Tue, 10 Mar 2015 22:37:12 +0000 (15:37 -0700)]
Refactor the block decode code to make it simpler.

Change-Id: I0f983cb821ad7ec6fbefe7895cb8124a8fa39df6

9 years agoMerge "Separate rd_thresh adaption by ref_frame"
Yaowu Xu [Wed, 11 Mar 2015 17:41:20 +0000 (10:41 -0700)]
Merge "Separate rd_thresh adaption by ref_frame"

9 years agoClamp rate correction factor after scaling it
Adrian Grange [Tue, 10 Mar 2015 19:04:59 +0000 (12:04 -0700)]
Clamp rate correction factor after scaling it

Added clamp on the rate correction factor after
it has been scaled.

Change-Id: I5d4b46a101987b43c5bcfd7e0bd1b7b4d53640a4

9 years agoShorten GF/arf interval in hard scenes.
paulwilkins [Fri, 6 Mar 2015 16:32:20 +0000 (16:32 +0000)]
Shorten GF/arf interval in hard scenes.

This patch accounts in the first pass stats for blocks that
while not coded as intra, are complex and have an intra error /
best error ratio below a threshold.

The modification shortens the GF arf interval for a particular
class of content that contains a lot of blocks matching the
above criteria. (In one short problem test sequence the average
interval dropped from about 14-15 to 10-11)

The change results in small net gains in metrics results for the
Yt(~0.2%) and yt-hd (~0.5%) sets and is approximately neutral
for the other test sets.

The change is currently shielded by a flag and off by default
pending verification that it does not cause other regressions
in tests on a wider YT test set.

Change-Id: I6b803daa6a4ac09a6f428fb3a18be1ecedd974b7

9 years agoSeparate rd_thresh adaption by ref_frame
Yaowu Xu [Wed, 11 Mar 2015 02:06:52 +0000 (19:06 -0700)]
Separate rd_thresh adaption by ref_frame

Only update the rd_thresh factors for modes sharing same reference
frame. This helps overall compression of 6 and 7 by .13% and .19%
respectively without any noticeable speed difference.

Change-Id: Idb3a3879512c5d7d0880034516079949290690c5

9 years agoSome rate control adjustments to control overshoot
Deb Mukherjee [Wed, 11 Mar 2015 00:25:10 +0000 (17:25 -0700)]
Some rate control adjustments to control overshoot

Some rate control adjustments to control overshoot
in the constrained quality mode.

Change-Id: I8907b9a883642d779009d0a138adfa6ba67e7f41

9 years agoMerge "Modify update golden reference update under aq-mode=3 mode."
Marco [Tue, 10 Mar 2015 18:48:10 +0000 (11:48 -0700)]
Merge "Modify update golden reference update under aq-mode=3 mode."

9 years agoModify update golden reference update under aq-mode=3 mode.
Marco [Fri, 6 Mar 2015 01:26:52 +0000 (17:26 -0800)]
Modify update golden reference update under aq-mode=3 mode.

For non-SVC 1 pass CBR: make the GF update interval a multiple of the
cyclic refresh period, and use encoding stats to prevent GF update at certain times.

Change-Id: I4c44cacc2f70f1d27391a47644837e1eaa065017

9 years agoMerge "Accumulate tx_totals counters in multi-threaded encoder"
Yunqing Wang [Tue, 10 Mar 2015 17:52:55 +0000 (10:52 -0700)]
Merge "Accumulate tx_totals counters in multi-threaded encoder"

9 years agoMerge "Enable using Golden reference in choose_partition()"
Yaowu Xu [Tue, 10 Mar 2015 17:48:52 +0000 (10:48 -0700)]
Merge "Enable using Golden reference in choose_partition()"

9 years agoMerge "Allow q adjustment for VPX_CQ and VPX_CBR."
paulwilkins [Tue, 10 Mar 2015 17:45:02 +0000 (10:45 -0700)]
Merge "Allow q adjustment for VPX_CQ and VPX_CBR."

9 years agoAccumulate tx_totals counters in multi-threaded encoder
Yunqing Wang [Tue, 10 Mar 2015 16:53:45 +0000 (09:53 -0700)]
Accumulate tx_totals counters in multi-threaded encoder

Tx_totals counters weren't handled correctly in multi-thread
case, which caused the mismatch while encoding using threads > 1.
This patch fixed that.

Change-Id: Ice9b0386f57175fb92a0bdcd5042686a3106246a

9 years agoFix vp9_compute_qdelta_by_rate loop behavior
Adrian Grange [Tue, 10 Mar 2015 16:14:54 +0000 (09:14 -0700)]
Fix vp9_compute_qdelta_by_rate loop behavior

The return value from vp9_compute_qdelta_by_rate, which is
a delta value for the quantizer, could never be 0 if
(qindex == rc->worst_quality).

This occurs because target_index was setup unconditionally
in the loop and yet the loop counter stopped at
(rc->worst_quality - 1).

Change-Id: I6b59cd9b5811ff33357e71cd7d814c5e53d291f2

9 years agoEnable using Golden reference in choose_partition()
Yaowu Xu [Fri, 6 Mar 2015 21:45:39 +0000 (13:45 -0800)]
Enable using Golden reference in choose_partition()

Choose_partition uses only the last frame as reference frame in making
partition decision, this commit adds the check on how well Golden
frame with (0,0) predicts the current block, and uses GF(0,0) as
basis for partition decision if it produces better prediction.

The commit improves rtc speed 6 and 7 encoding by 0.14% and 0.19%
respectively.

Change-Id: I156acf925bd6e0b586d48155d1940d27270a3915

9 years agoRefactor read_intra_frame_mode_info
Frank Galligan [Mon, 9 Mar 2015 23:25:01 +0000 (16:25 -0700)]
Refactor read_intra_frame_mode_info

Change-Id: I56b0614154408e8ec613784b2007374df00fbf17

9 years agoMerge "Don't waste time partitioning skip superblocks."
Alex Converse [Mon, 9 Mar 2015 20:02:16 +0000 (13:02 -0700)]
Merge "Don't waste time partitioning skip superblocks."

9 years agoMerge "Skip golden ref frame check when it is same as last ref frame"
Jingning Han [Mon, 9 Mar 2015 19:27:19 +0000 (12:27 -0700)]
Merge "Skip golden ref frame check when it is same as last ref frame"

9 years agoSkip golden ref frame check when it is same as last ref frame
Jingning Han [Mon, 9 Mar 2015 17:59:29 +0000 (10:59 -0700)]
Skip golden ref frame check when it is same as last ref frame

When golden reference frame is refreshed, the next frame has both
its last and golden reference frames point to the same reference
frame in real-time coding mode. Experiments suggest that using
two separate reference frames for frames right after golden refresh
frame does not provide further compression performance advantage.
This commit hence retains the current encoder implementation and
shuts off the mode search over golden reference frame in this case.

It makes the encoder run slightly faster at no coding performance
change.

Change-Id: I1561f7799253a10e675d05c63c1749fe9e85b472

9 years agoDon't waste time partitioning skip superblocks.
Alex Converse [Mon, 9 Mar 2015 17:45:38 +0000 (10:45 -0700)]
Don't waste time partitioning skip superblocks.

Force 64x64 partitioning when a whole superblock is SEGMENT_LVL_SKIP. This
drops encode times of screens mostly at rest by 20%.

Change-Id: Ieba554b0b8a0c1679aae784a8bd11f038ab942c3

9 years agoAllow q adjustment for VPX_CQ and VPX_CBR.
paulwilkins [Mon, 9 Mar 2015 17:12:33 +0000 (17:12 +0000)]
Allow q adjustment for VPX_CQ and VPX_CBR.

Adjustment previously only enabled in VBR mode.

This patch allows adjustment of min and max q for CBR
and adjustment of max q only for CQ mode.

Change-Id: Id5e583f3d50453cd544fc57249acacd946457482

9 years agoAdd aq-mode=3 to ethread test.
Marco [Fri, 6 Mar 2015 18:47:09 +0000 (10:47 -0800)]
Add aq-mode=3 to ethread test.

Change-Id: I619a2be502f1d2eb0ae746f7fcb465d19ddae048

9 years agoMerge "vp9_ethread: fix me consts initialization to support aq_mode=3 encoding"
Yunqing Wang [Mon, 9 Mar 2015 16:42:12 +0000 (09:42 -0700)]
Merge "vp9_ethread: fix me consts initialization to support aq_mode=3 encoding"

9 years agoMerge "Move pred_mv assign outside integral projection motion search"
Jingning Han [Mon, 9 Mar 2015 16:34:26 +0000 (09:34 -0700)]
Merge "Move pred_mv assign outside integral projection motion search"