platform/upstream/libvpx.git
9 years agoAdd dynamic range comment to hadamard_8x8()
Jingning Han [Fri, 12 Jun 2015 17:38:45 +0000 (10:38 -0700)]
Add dynamic range comment to hadamard_8x8()

Add comment to assist SIMD optimization.

Change-Id: I300d5a848e6e9947e451de2a871a88940703fc9f

9 years agoMerge "Allocate tile data adaptively to accommodate the frame size increase"
Yunqing Wang [Fri, 12 Jun 2015 15:49:39 +0000 (15:49 +0000)]
Merge "Allocate tile data adaptively to accommodate the frame size increase"

9 years agoMerge "test_intra_pred_speed: add ClearSystemState() call"
James Zern [Fri, 12 Jun 2015 06:27:44 +0000 (06:27 +0000)]
Merge "test_intra_pred_speed: add ClearSystemState() call"

9 years agovp9_filter: restore vp9_bilinear_filters alignment
James Zern [Thu, 11 Jun 2015 22:12:22 +0000 (15:12 -0700)]
vp9_filter: restore vp9_bilinear_filters alignment

the declaration containing the alignment in vp9_filter.h was removed in:
eb88b17 Make vp9 subpixel match vp8

fixes a crash in 32-bit builds

Change-Id: I9a97e6b4e8e94698e43ff79d0d8bb85043b73c61

9 years agoMerge "inline vp9_get_segdata()"
Scott LaVarnway [Thu, 11 Jun 2015 19:48:17 +0000 (19:48 +0000)]
Merge "inline vp9_get_segdata()"

9 years agoAllocate tile data adaptively to accommodate the frame size increase
Yunqing Wang [Thu, 11 Jun 2015 18:30:18 +0000 (11:30 -0700)]
Allocate tile data adaptively to accommodate the frame size increase

If the frame size increases, the tile data buffer needs to be
re-allocated according to the number of tiles existing in current
frame. This patch makes the multi-tile encoding work in spatial
SVC usage case, and partially solved WebM issue 1018.

Change-Id: I1ad6f33058cf5ce6f60ed5024455a709ca80c5ad

9 years agoinline vp9_get_segdata()
Scott LaVarnway [Thu, 11 Jun 2015 16:52:00 +0000 (09:52 -0700)]
inline vp9_get_segdata()

and change name.

Change-Id: I706645cf9d9dc04f1b3b6ac80df80edb7f101854

9 years agoMove adjustment of some CR parameters to existing function.
Marco [Wed, 10 Jun 2015 23:25:22 +0000 (16:25 -0700)]
Move adjustment of some CR parameters to existing function.

Refactor/no change in behavior.

Change-Id: Idb3c55b1304feaf689b90403f79bc96dba26f060

9 years agoMerge "inline vp9_segfeature_active()"
Scott LaVarnway [Thu, 11 Jun 2015 12:29:44 +0000 (12:29 +0000)]
Merge "inline vp9_segfeature_active()"

9 years agoinline vp9_segfeature_active()
Scott LaVarnway [Thu, 11 Jun 2015 11:20:55 +0000 (04:20 -0700)]
inline vp9_segfeature_active()

and changed name.

Change-Id: Ie023ca66cc2c823032f58d4faeb53fd1863c94f3

9 years agoMerge "mips msa vp9 intra-pred optimization"
Parag Salasakar [Thu, 11 Jun 2015 03:31:48 +0000 (03:31 +0000)]
Merge "mips msa vp9 intra-pred optimization"

9 years agotest_intra_pred_speed: add ClearSystemState() call
James Zern [Wed, 10 Jun 2015 19:44:07 +0000 (12:44 -0700)]
test_intra_pred_speed: add ClearSystemState() call

fixes instability; noticed on mingw

Change-Id: Idef4349339444ec84916e5fcd908ee9633d28aaa

9 years agoMerge "vp9_reconintra/d45_predictor: remove temp storage"
James Zern [Wed, 10 Jun 2015 19:23:56 +0000 (19:23 +0000)]
Merge "vp9_reconintra/d45_predictor: remove temp storage"

9 years agoMerge "test/android/Android.mk: fix build w/ENABLE_SHARED=0"
James Zern [Wed, 10 Jun 2015 19:22:41 +0000 (19:22 +0000)]
Merge "test/android/Android.mk: fix build w/ENABLE_SHARED=0"

9 years agoMerge changes I89a8440f,Ifa3926e1
James Zern [Wed, 10 Jun 2015 19:18:03 +0000 (19:18 +0000)]
Merge changes I89a8440f,Ifa3926e1

* changes:
  libs.mk: relocate TEST_INTRA_PRED_SPEED_OBJS init
  test_intra_pred_speed: remove #if w/in another macro

9 years agoMerge "Changes to active maxq calculation in two pass."
Paul Wilkins [Wed, 10 Jun 2015 13:33:52 +0000 (13:33 +0000)]
Merge "Changes to active maxq calculation in two pass."

9 years agoMerge "Reducing size of MODE_INFO struct"
Scott LaVarnway [Wed, 10 Jun 2015 13:15:18 +0000 (13:15 +0000)]
Merge "Reducing size of MODE_INFO struct"

9 years agolibs.mk: relocate TEST_INTRA_PRED_SPEED_OBJS init
James Zern [Wed, 10 Jun 2015 02:30:46 +0000 (19:30 -0700)]
libs.mk: relocate TEST_INTRA_PRED_SPEED_OBJS init

allows the visual studio project to be generated

Change-Id: I89a8440fb0bcaef11ff89dd967aa37bfe200758d

9 years agotest_intra_pred_speed: remove #if w/in another macro
James Zern [Wed, 10 Jun 2015 02:30:04 +0000 (19:30 -0700)]
test_intra_pred_speed: remove #if w/in another macro

fixes the compile under visual studio

Change-Id: Ifa3926e198af97d73250540c6d0ef692f5e354ff

9 years agotest/android/Android.mk: fix build w/ENABLE_SHARED=0
James Zern [Wed, 10 Jun 2015 02:27:20 +0000 (19:27 -0700)]
test/android/Android.mk: fix build w/ENABLE_SHARED=0

add a dependency on *_rtcd.h to ensure they're generated before
attempting to build the test files

Change-Id: Ibbbd1f6ea77912bfd297129e7c83b9a80923ea12

9 years agoMerge "Adjust some parameters for cyclic refresh for low bitrates."
Marco [Tue, 9 Jun 2015 23:22:28 +0000 (23:22 +0000)]
Merge "Adjust some parameters for cyclic refresh for low bitrates."

9 years agoAdjust some parameters for cyclic refresh for low bitrates.
Marco [Tue, 9 Jun 2015 21:58:32 +0000 (14:58 -0700)]
Adjust some parameters for cyclic refresh for low bitrates.

Reduce motion threshold and boost factor for second segment,
for low bitrates, at low resolutions for now.
This is to reduce the rate fluctuation/frame dropping that occurs
at these low bitrates.

Change-Id: Ia66c3be41831882fca8c1e4fe104f5ea8fbe7142

9 years agoMerge "Prevent dividing by 0 when target-bitrate is 0."
Debargha Mukherjee [Tue, 9 Jun 2015 17:03:21 +0000 (17:03 +0000)]
Merge "Prevent dividing by 0 when target-bitrate is 0."

9 years agoChanges to active maxq calculation in two pass.
Paul Wilkins [Wed, 3 Jun 2015 23:22:11 +0000 (00:22 +0100)]
Changes to active maxq calculation in two pass.

Some initial experiments into discounting dead zone
formating bars and intra skip blocks (common in some
types of animation and graphics) in the calculation of
the active max Q for each ARF/GF group.

TODO: check for vertical formating bars and validate the
horizontal bar at the bottom edge of the image.

As expected, this change as it stands, does not make much
difference for the natural videos in the std-hd and derf sets.
However, for the yt and yt hd set there is a significant rise
in the average PSNR with overall PSNR and SSIM remaining
neutral.

The mean rise for the YT-HD test set was > 6%. This is mainly
because the change allows Q to drop further on titles and
other graphics sections where spending a small number of
extra bits gives a sharp rise in PSNR.

Change-Id: I3f878ae91fc1854312d7ecf9fa792c17bc1aa6b7

9 years agoEnable more split modes for animated content.
Paul Wilkins [Fri, 29 May 2015 23:56:19 +0000 (00:56 +0100)]
Enable more split modes for animated content.

For content that is identified as likely to contain some
animation or graphics content, increase the availability
of split modes for good quality speeds 1-3.

On a problem test animation clip this improves metrics
results by about 0.25 db and makes a noticeable difference
visually. It also causes a small drop in file size (~0.5%) but
a rise in encode time of about 5-6% at speed  2.

For more normal content it should have no effect.

Change-Id: Ic4cd9a8de065af9f9402f4477a17442aebf0e439

9 years agoPrevent dividing by 0 when target-bitrate is 0.
Debargha Mukherjee [Mon, 8 Jun 2015 23:18:14 +0000 (16:18 -0700)]
Prevent dividing by 0 when target-bitrate is 0.

Change-Id: I05b7fb378b6b0c5f263e7839f96ba6830ee34fd2

9 years agoMerge "Animation and dead zone detection."
Paul Wilkins [Mon, 8 Jun 2015 14:26:05 +0000 (14:26 +0000)]
Merge "Animation and dead zone detection."

9 years agomips msa vp9 intra-pred optimization
Parag Salasakar [Fri, 5 Jun 2015 12:02:34 +0000 (17:32 +0530)]
mips msa vp9 intra-pred optimization

intra pred - average improvement ~2x-3x

Change-Id: Ie3f7d6eded5ecb7ed7ee506ba8e4d98f93803b09

9 years agoMerge "vpxdec: cosmetics: break some long lines"
James Zern [Sat, 6 Jun 2015 16:10:59 +0000 (16:10 +0000)]
Merge "vpxdec: cosmetics: break some long lines"

9 years agoMerge "vpxenc: relocate vp8/vp9 only options"
James Zern [Sat, 6 Jun 2015 16:10:18 +0000 (16:10 +0000)]
Merge "vpxenc: relocate vp8/vp9 only options"

9 years agoMerge "disable vp8_sub_pixel_variance8x8_neon"
James Zern [Sat, 6 Jun 2015 16:07:56 +0000 (16:07 +0000)]
Merge "disable vp8_sub_pixel_variance8x8_neon"

9 years agoMerge "vs/armv7: use -oldit armasm flag"
James Zern [Sat, 6 Jun 2015 03:24:34 +0000 (03:24 +0000)]
Merge "vs/armv7: use -oldit armasm flag"

9 years agodisable vp8_sub_pixel_variance8x8_neon
James Zern [Sat, 6 Jun 2015 02:59:53 +0000 (19:59 -0700)]
disable vp8_sub_pixel_variance8x8_neon

fails unit tests:
[  FAILED  ] NEON/VP8SubpelVarianceTest.ExtremeRef/0, where GetParam() = (3, 3, 0x14e36d, 0)
[  FAILED  ] NEON/VP8SubpelVarianceTest.Ref/0, where GetParam() = (3, 3, 0x14e36d, 0)

the tests were recently enabled in:
eb88b17 Make vp9 subpixel match vp8

the functions likely haven't changed since being converted from assembly

Change-Id: I6141717b111b8f735f436c160d74270af53ef722

9 years agovpxdec: cosmetics: break some long lines
James Zern [Fri, 5 Jun 2015 23:18:49 +0000 (16:18 -0700)]
vpxdec: cosmetics: break some long lines

Change-Id: I95827a6f5e585d2accbb8fc09501f2d38db585e4

9 years agovpxenc: relocate vp8/vp9 only options
James Zern [Fri, 5 Jun 2015 23:07:20 +0000 (16:07 -0700)]
vpxenc: relocate vp8/vp9 only options

move them under their respective config check to avoid some unused
variable warnings when disabled

Change-Id: Ic5e5280cf1bc1f56e8349676f0bedae4acef34ea

9 years agoOptimize the decode_partition. About 0.7% gain on N10.
hkuang [Wed, 6 May 2015 23:31:13 +0000 (16:31 -0700)]
Optimize the decode_partition. About 0.7% gain on N10.

Change-Id: Ia689c254bd2d4f274abcc451a9b758f62e3a2b1f

9 years agovs/armv7: use -oldit armasm flag
James Zern [Fri, 5 Jun 2015 22:21:10 +0000 (15:21 -0700)]
vs/armv7: use -oldit armasm flag

this quiets warnings from armv6 code [1].
from msdn [2]:
-oldit
Generate ARMv7-style IT blocks. By default, ARMv8-compatible IT blocks
are generated.

a new configuration would be needed for armv8 in any case as the neon
assembly is being built, so removing this should be harmless

[1] A4509: This form of conditional instruction is deprecated
[2] https://msdn.microsoft.com/en-us/library/hh873189.aspx

Change-Id: I4c3b838b52a87401c6daecd83d22ab148ed7c5d9

9 years agoMerge "vp9_reconintra: simplify d63_predictor"
James Zern [Fri, 5 Jun 2015 21:49:13 +0000 (21:49 +0000)]
Merge "vp9_reconintra: simplify d63_predictor"

9 years agoMerge "BUG FIX: Remove counts param"
Scott LaVarnway [Fri, 5 Jun 2015 20:04:25 +0000 (20:04 +0000)]
Merge "BUG FIX: Remove counts param"

9 years agoBUG FIX: Remove counts param
Scott LaVarnway [Fri, 5 Jun 2015 18:54:04 +0000 (11:54 -0700)]
BUG FIX: Remove counts param

member access within null pointer of type 'FRAME_COUNTS'

Change-Id: Id3bf75e0a6f2a1abf8522cf9fbb98b3a4443de38

9 years agoMerge "Add control to skip loop filter in VP9 decoder."
Frank Galligan [Fri, 5 Jun 2015 18:02:08 +0000 (18:02 +0000)]
Merge "Add control to skip loop filter in VP9 decoder."

9 years agoMerge "vpxenc: Add support for pixel aspect ratio."
Frank Galligan [Fri, 5 Jun 2015 18:01:51 +0000 (18:01 +0000)]
Merge "vpxenc: Add support for pixel aspect ratio."

9 years agoAdd control to skip loop filter in VP9 decoder.
Frank Galligan [Thu, 21 May 2015 18:49:11 +0000 (11:49 -0700)]
Add control to skip loop filter in VP9 decoder.

This control allows the application to skip the loop filter in the
decoder. This is an advanced control that should only be used in
extreme circumstances as it may introduce and accumulate decode
artifacts.

Change-Id: I278c65c60826f84c9141ebe06c6eeed3c2335fa8

9 years agovpxenc: Add support for pixel aspect ratio.
Frank Galligan [Mon, 1 Jun 2015 17:20:58 +0000 (10:20 -0700)]
vpxenc: Add support for pixel aspect ratio.

WebM files will adjust the display width and height according to the
input pixel aspect ratio. The default pixel aspect ratio is 1:1.

BUG=https://code.google.com/p/webm/issues/detail?id=1005

Change-Id: I23e0a601b7259fa9513cb86110c41b8437769808

9 years agoMerge "Duplicate reference variance code"
Johann [Fri, 5 Jun 2015 16:54:32 +0000 (16:54 +0000)]
Merge "Duplicate reference variance code"

9 years agoFix to spatial svc: set reference_frame masking.
Marco [Fri, 5 Jun 2015 00:05:11 +0000 (17:05 -0700)]
Fix to spatial svc: set reference_frame masking.

For real-time mode: keep reference_frame masking off
for spatial svc.

Change-Id: I15e123c06f67ea040172b8d4042a672f3525b9d8

9 years agoMerge "mips msa vp9 loopfilter 4, 8 optimization"
Parag Salasakar [Fri, 5 Jun 2015 05:32:17 +0000 (05:32 +0000)]
Merge "mips msa vp9 loopfilter 4, 8 optimization"

9 years agomips msa vp9 loopfilter 4, 8 optimization
Parag Salasakar [Fri, 5 Jun 2015 02:22:40 +0000 (07:52 +0530)]
mips msa vp9 loopfilter 4, 8 optimization

average improvement ~3x-4x

Change-Id: I59279293ce4b2a1e99bd10579ac97740e943643f

9 years agoMerge "Bugfx in setting layer framerate."
Marco [Fri, 5 Jun 2015 04:26:05 +0000 (04:26 +0000)]
Merge "Bugfx in setting layer framerate."

9 years agovp9_reconintra/d45_predictor: remove temp storage
James Zern [Fri, 5 Jun 2015 02:17:30 +0000 (19:17 -0700)]
vp9_reconintra/d45_predictor: remove temp storage

dst row 0 can be reused in the same way

Change-Id: Id977da62545dcc4a89cebbcbad90ba84f8ff5d6b

9 years agovp9_reconintra: simplify d63_predictor
James Zern [Thu, 4 Jun 2015 03:40:32 +0000 (20:40 -0700)]
vp9_reconintra: simplify d63_predictor

calculate the averages needed for even and odd rows once; this removes a
conditional from the inner loop
the final average calculated currently relies on above[] being extended,
it could be reduced to use
above[block_size - 2] + 3 * above[block_size - 1]

Change-Id: I70f5eac8d8a2a959c7114844a95826f445c3dd4d

9 years agoMerge "mips msa vp9 loopfilter 16 optimization"
Parag Salasakar [Fri, 5 Jun 2015 02:15:24 +0000 (02:15 +0000)]
Merge "mips msa vp9 loopfilter 16 optimization"

9 years agoMerge "vp9_reconintra: use AVG[23] consistently"
James Zern [Fri, 5 Jun 2015 02:15:22 +0000 (02:15 +0000)]
Merge "vp9_reconintra: use AVG[23] consistently"

9 years agoMerge "vp9_reconintra_neon_asm/tm4x4: simplify left load"
James Zern [Fri, 5 Jun 2015 01:46:38 +0000 (01:46 +0000)]
Merge "vp9_reconintra_neon_asm/tm4x4: simplify left load"

9 years agoMerge "vp9_reconintra: fix d45/d63 discrepancies"
James Zern [Thu, 4 Jun 2015 22:56:42 +0000 (22:56 +0000)]
Merge "vp9_reconintra: fix d45/d63 discrepancies"

9 years agoMerge "Remove cm parameter from vp9_decode_block_tokens() part 2"
Scott LaVarnway [Thu, 4 Jun 2015 22:20:53 +0000 (22:20 +0000)]
Merge "Remove cm parameter from vp9_decode_block_tokens() part 2"

9 years agovp9_reconintra: fix d45/d63 discrepancies
James Zern [Thu, 4 Jun 2015 20:05:29 +0000 (13:05 -0700)]
vp9_reconintra: fix d45/d63 discrepancies

the final index in rows 2, 3 differ from vp8

Change-Id: I0fcea907b4ab44e266c0f1fd77b290d2236b280a

9 years agoBugfx in setting layer framerate.
Marco [Thu, 4 Jun 2015 20:09:44 +0000 (13:09 -0700)]
Bugfx in setting layer framerate.

Index for ts_rate_decimator should be temporal layer (tl) index.

Change-Id: I0320b7f7ae987ef64fdfe7c45099e7978a8fef17

9 years agoMake vp9 the default codec for vpxenc
Yaowu Xu [Mon, 1 Jun 2015 16:13:59 +0000 (09:13 -0700)]
Make vp9 the default codec for vpxenc

Change-Id: Ic3b4f3c9a6d8f9b04efb8b5ee080880895063564

9 years agoReducing size of MODE_INFO struct
Scott LaVarnway [Tue, 2 Jun 2015 12:18:21 +0000 (05:18 -0700)]
Reducing size of MODE_INFO struct

Reduced size from 124 bytes to 104 bytes.  For decode only builds,
it is reduced to 68 bytes.

Change-Id: If9e6b92285459425fa086ab5a743d0a598a69de3

9 years agoRemove cm parameter from vp9_decode_block_tokens() part 2
Scott LaVarnway [Mon, 1 Jun 2015 15:18:27 +0000 (08:18 -0700)]
Remove cm parameter from vp9_decode_block_tokens() part 2

Change-Id: Iee24b6bb095f748333223e6036fc5c9d9e7e5f1c

9 years agoMerge "Remove counts param"
Scott LaVarnway [Thu, 4 Jun 2015 13:46:41 +0000 (13:46 +0000)]
Merge "Remove counts param"

9 years agomips msa vp9 loopfilter 16 optimization
Parag Salasakar [Thu, 4 Jun 2015 06:20:41 +0000 (11:50 +0530)]
mips msa vp9 loopfilter 16 optimization

average improvement ~3x-4x

Change-Id: I8ef263da6ebcf8f20aabaefeccf25a84640ba048

9 years agoMerge "Make vp9 subpixel match vp8"
Johann Koenig [Thu, 4 Jun 2015 06:16:12 +0000 (06:16 +0000)]
Merge "Make vp9 subpixel match vp8"

9 years agoMerge "mips msa vp9 convolve8 avg hv optimization"
Parag Salasakar [Thu, 4 Jun 2015 05:44:23 +0000 (05:44 +0000)]
Merge "mips msa vp9 convolve8 avg hv optimization"

9 years agoMake vp9 subpixel match vp8
Johann [Tue, 26 May 2015 18:30:25 +0000 (11:30 -0700)]
Make vp9 subpixel match vp8

The only difference between the two was that the vp9 function allowed
for every step in the bilinear filter (16 steps) while vp8 only allowed
for half of those. Since all the call sites in vp9 (<< 1) the input, it
only ever used the same steps as vp8.

This will allow moving the subpel variance to vpx_dsp with the rest of
the variance functions.

Change-Id: I6fa2509350a2dc610c46b3e15bde98a15a084b75

9 years agoMerge "Optimize the idct assembly code."
hkuang [Thu, 4 Jun 2015 04:32:09 +0000 (04:32 +0000)]
Merge "Optimize the idct assembly code."

9 years agovp9_reconintra: use AVG[23] consistently
James Zern [Thu, 4 Jun 2015 02:34:37 +0000 (19:34 -0700)]
vp9_reconintra: use AVG[23] consistently

Change-Id: Iab7215f82be0c0c831cd81b6f8091afc3710dd54

9 years agomips msa vp9 convolve8 avg hv optimization
Parag Salasakar [Thu, 4 Jun 2015 02:41:01 +0000 (08:11 +0530)]
mips msa vp9 convolve8 avg hv optimization

average improvement ~4x-6x

Change-Id: I7c8b4f2334491be8a859592606e568bc95d019aa

9 years agoMerge "vp9_reconintra: simplify d45_predictor"
James Zern [Thu, 4 Jun 2015 01:59:09 +0000 (01:59 +0000)]
Merge "vp9_reconintra: simplify d45_predictor"

9 years agoMerge changes from topic 'vp9-intra-pred'
James Zern [Thu, 4 Jun 2015 01:58:26 +0000 (01:58 +0000)]
Merge changes from topic 'vp9-intra-pred'

* changes:
  vp9_reconintra: specialize d135 4x4
  vp9_reconintra: specialize d117 4x4
  vp9_reconintra: specialize d207 4x4
  vp9_reconintra: specialize d153 4x4
  vp9_reconintra: specialize d63 4x4
  vp9_reconintra: specialize d45 4x4

9 years agoMerge "Remove ABI check for 1 pass CBR SVC."
Marco [Thu, 4 Jun 2015 01:53:43 +0000 (01:53 +0000)]
Merge "Remove ABI check for 1 pass CBR SVC."

9 years agovp9_reconintra_neon_asm/tm4x4: simplify left load
James Zern [Thu, 4 Jun 2015 01:51:13 +0000 (18:51 -0700)]
vp9_reconintra_neon_asm/tm4x4: simplify left load

use vld1.8 {d0[]}, [r0] rather than ldrb+vdup; mildly faster

Change-Id: Ia5ffc736bcb0f5497b7d9e55a93bf5a5f5f6928c

9 years agoMerge "mips msa vp9 convolve8 avg horiz optimization"
Parag Salasakar [Thu, 4 Jun 2015 01:16:18 +0000 (01:16 +0000)]
Merge "mips msa vp9 convolve8 avg horiz optimization"

9 years agoRemove ABI check for 1 pass CBR SVC.
Marco [Tue, 2 Jun 2015 17:23:03 +0000 (10:23 -0700)]
Remove ABI check for 1 pass CBR SVC.

Remove the ABI check for the controls needed for SVC 1 pass CBR mode.
Bump up the ABI version.

Change-Id: I35b79ee010e14af83c6d1e801d574deaaa2fc7eb

9 years agoOptimize the idct assembly code.
hkuang [Tue, 2 Jun 2015 00:10:33 +0000 (17:10 -0700)]
Optimize the idct assembly code.

Change-Id: Ia0ff859ff1c813dbe100e2f27b1ef78167483f4e

9 years agoAnimation and dead zone detection.
Paul Wilkins [Wed, 27 May 2015 00:37:18 +0000 (01:37 +0100)]
Animation and dead zone detection.

Adds code to detect dead zone bars at the top and bottom
of reformatted letterbox video (note that the code only
looks at the top of the image and assumes any dead zone
is symmetrical).  Use of this to adapt rate control etc.
will follow in a subsequent patch.

Also counts other blocks (excluding the dead zone) that
have no intra signal. The presence of a significant
number of such blocks can be used as a identify that the frame
may be artificial (e.g.  animation, screen capture, graphics).
This patch contains plumbing only and does not use
the signal.

Change-Id: I59bc93529cd4065416cef773e405fda3ae006a20

9 years agoFix to sample encoder: vpx_temporal_svc_encoder.c
Marco [Wed, 3 Jun 2015 20:52:44 +0000 (13:52 -0700)]
Fix to sample encoder: vpx_temporal_svc_encoder.c

vp8 uses ts_target_bitrate for layer settings.

Change-Id: Ie72477b549051396feebff87a3744fed04366bf4

9 years agoDuplicate reference variance code
Johann [Wed, 3 Jun 2015 20:23:27 +0000 (13:23 -0700)]
Duplicate reference variance code

Some places are using the unoptimized variance function. This was never
intended and does not fit into the optimization framework.

Change-Id: Id96238407aad03b0ffd4a46cd183555a026daedc

9 years agoRemove unused sub pixel mse
Johann [Wed, 3 Jun 2015 15:00:51 +0000 (08:00 -0700)]
Remove unused sub pixel mse

Change-Id: I7a5e4e2632c3fa69d2a85a68fa9b418631caf09c

9 years agomips msa vp9 convolve8 avg horiz optimization
Parag Salasakar [Wed, 3 Jun 2015 06:03:42 +0000 (11:33 +0530)]
mips msa vp9 convolve8 avg horiz optimization

average improvement ~5x-8x

Change-Id: I179a69ec620fbd69979bd128f05d18113618aab4

9 years agoMerge "mips msa vp9 convolve8 avg vert optimization"
Parag Salasakar [Wed, 3 Jun 2015 05:58:42 +0000 (05:58 +0000)]
Merge "mips msa vp9 convolve8 avg vert optimization"

9 years agoMerge "test-data.sha1: mark test data files as binary"
James Zern [Wed, 3 Jun 2015 05:49:42 +0000 (05:49 +0000)]
Merge "test-data.sha1: mark test data files as binary"

9 years agoMerge "Support building shared libraries on OS/2"
James Zern [Wed, 3 Jun 2015 05:47:43 +0000 (05:47 +0000)]
Merge "Support building shared libraries on OS/2"

9 years agotest-data.sha1: mark test data files as binary
KO Myung-Hun [Mon, 1 Jun 2015 02:35:47 +0000 (11:35 +0900)]
test-data.sha1: mark test data files as binary

Change-Id: Ie3605bf4c4fb16eb21186adbb4577c20a8027344

9 years agoSupport building shared libraries on OS/2
KO Myung-Hun [Fri, 8 Aug 2014 04:13:02 +0000 (13:13 +0900)]
Support building shared libraries on OS/2

Change-Id: I5750db0504cb69ead52f9f44bf583e693bffbb7e

9 years agomips msa vp9 convolve8 avg vert optimization
Parag Salasakar [Wed, 3 Jun 2015 04:25:25 +0000 (09:55 +0530)]
mips msa vp9 convolve8 avg vert optimization

average improvement ~4x-6x

Change-Id: Ia2e6f770da46416ebec31fdcea5cc7878879a9d9

9 years agoMerge "mips msa vp9 idct4x4 and iwht4x4 optimization"
Parag Salasakar [Wed, 3 Jun 2015 04:10:14 +0000 (04:10 +0000)]
Merge "mips msa vp9 idct4x4 and iwht4x4 optimization"

9 years agoMerge "Unify reference variance functions"
Johann [Wed, 3 Jun 2015 02:03:44 +0000 (02:03 +0000)]
Merge "Unify reference variance functions"

9 years agoUnify reference variance functions
Johann [Mon, 1 Jun 2015 20:03:30 +0000 (13:03 -0700)]
Unify reference variance functions

Use uint32_t for all output and make all functions static

Change-Id: I2c9c6f6310732dc53444607d1c1a268ac1ab83ba

9 years agoMerge "Disable neon bilinear 4x4"
Johann [Tue, 2 Jun 2015 21:44:13 +0000 (21:44 +0000)]
Merge "Disable neon bilinear 4x4"

9 years agoRemove counts param
Scott LaVarnway [Tue, 2 Jun 2015 16:06:00 +0000 (09:06 -0700)]
Remove counts param

Moved to MACROBLOCKD.

Change-Id: Icce765b334f2755f4fe2a4c39fb2ae2d7660d004

9 years agoVidyo patch: Rate control for SVC, 1 pass CBR mode.
Marco [Thu, 21 May 2015 23:15:37 +0000 (16:15 -0700)]
Vidyo patch: Rate control for SVC, 1 pass CBR mode.

-Make Rate control work for SVC 1 pass CBR mode.
-Added temporal layering mode.
-Fixed bug in non-rd variance partition.
-Modified/updated the sample encoders (vp9_spatial_svc_encoder, vpx_temporal_svc_encoder).
-Added datarate unittest(s) for 1 pass CBR SVC.

Change-Id: Ie94b1b68a56ea1267b5087c625e5df04def2ee48

9 years agomips msa vp9 idct4x4 and iwht4x4 optimization
Parag Salasakar [Tue, 2 Jun 2015 06:46:28 +0000 (12:16 +0530)]
mips msa vp9 idct4x4 and iwht4x4 optimization

average improvement ~3x-4x
moved assert to respective files

Change-Id: I6c915059d456a00bdd76fab0dd2eede8b6c6ea58

9 years agomips msa vp9 updated convolve horiz, vert, hv, copy, avg module
Parag Salasakar [Tue, 2 Jun 2015 04:59:56 +0000 (10:29 +0530)]
mips msa vp9 updated convolve horiz, vert, hv, copy, avg module

Updated sources according to improved version of common MSA macros.
Enabled respective convolve MSA hooks and tests.
Overall, this is just upgrading the code with styling changes.

Change-Id: If5ad6ef8ea7ca47feed6d2fc9f34f0f0e8b6694d

9 years agoMerge "mips msa vp9 updated idct 8x8, 16x16 and 32x32 module"
Parag Salasakar [Tue, 2 Jun 2015 04:48:01 +0000 (04:48 +0000)]
Merge "mips msa vp9 updated idct 8x8, 16x16 and 32x32 module"

9 years agoDisable neon bilinear 4x4
Johann [Mon, 1 Jun 2015 23:24:49 +0000 (16:24 -0700)]
Disable neon bilinear 4x4

Clang adds alignment hints when casting up the loads/stores. Although
this should be safe for most paths, it's causing some crashes. Either
the source of the misalignment needs to be determined and adjusted or
the intrinsics need to be rewritten to avoid using the cast to load the
data.

BUG=817,892

Change-Id: Ia3aa824d6a4cd97e14325ff49dc730b6f85ec7e8

9 years agoMerge "Adds subsecond frame rates to webm"
Johann Koenig [Mon, 1 Jun 2015 22:36:09 +0000 (22:36 +0000)]
Merge "Adds subsecond frame rates to webm"

9 years agoMerge changes from topic 'vp9-intra-pred'
James Zern [Mon, 1 Jun 2015 20:03:46 +0000 (20:03 +0000)]
Merge changes from topic 'vp9-intra-pred'

* changes:
  vp9_reconintra_neon/tm: improve above_left load
  vp9_reconintra_neon: cosmetics: normalize fn params

9 years agoMerge "vp9_reconintra_neon_asm/tm: simplify above_left load"
James Zern [Mon, 1 Jun 2015 20:01:37 +0000 (20:01 +0000)]
Merge "vp9_reconintra_neon_asm/tm: simplify above_left load"