]> granicus.if.org Git - libvpx/log
libvpx
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"

10 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."

10 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

10 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."

10 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

10 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

10 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

10 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."

10 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"

10 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"

10 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"

10 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"

10 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

10 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

10 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

10 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

10 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

10 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"

10 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"

10 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

10 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."

10 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."

10 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

10 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

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

10 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

10 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"

10 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

10 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."

10 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

10 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"

10 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"

10 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"

10 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"

10 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"

10 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

10 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

10 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

10 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

10 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

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

10 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

10 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"

10 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"

10 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

10 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."

10 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

10 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

10 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"

10 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

10 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."

10 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

10 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"

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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"

10 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"

10 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"

10 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

10 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

10 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

10 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"

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

10 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

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

10 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

10 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

10 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

10 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

10 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"

10 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

10 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"

10 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

10 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"

10 years agoMerge "Cast variance reference output"
Johann [Mon, 1 Jun 2015 18:56:49 +0000 (18:56 +0000)]
Merge "Cast variance reference output"

10 years agoMerge "Fast feedback of bits on undershoot."
paulwilkins [Mon, 1 Jun 2015 18:15:09 +0000 (18:15 +0000)]
Merge "Fast feedback of bits on undershoot."

10 years agoCast variance reference output
Johann [Mon, 1 Jun 2015 17:53:46 +0000 (10:53 -0700)]
Cast variance reference output

The larger internal variables are required for the intermediates
but RoundHighBitDepth brings them down to uint32_t/unsigned int.

Fixes type warnings in visual studio.

Change-Id: I48d35284d6cbde330ccdc1f46b6215a645d5eb00

10 years agoAdds subsecond frame rates to webm
Johnny Klonaris [Mon, 1 Jun 2015 06:29:16 +0000 (23:29 -0700)]
Adds subsecond frame rates to webm

Numerator was being range checked against the
denominator - preventing any frame rate slower
than 1 fps.

I've tested this on a Mac using using ffmpeg and
results are comparable to mp4 and ogg files generated
at the same time.

Not yet tested on Windows.

Johnny Klonaris
google@jawknee.com

Change-Id: Idb358dbc2e7dc000037880ede4a1b0df248a42c8

10 years agomips msa vp9 updated idct 8x8, 16x16 and 32x32 module
Parag Salasakar [Mon, 1 Jun 2015 03:49:01 +0000 (09:19 +0530)]
mips msa vp9 updated idct 8x8, 16x16 and 32x32 module

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

Change-Id: I1f488ab2c741f6c622b7a855388a202168082209

10 years agovp9_reconintra: simplify d45_predictor
James Zern [Sat, 30 May 2015 17:21:15 +0000 (10:21 -0700)]
vp9_reconintra: simplify d45_predictor

only the immediate above right pixel is needed; 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_right

Change-Id: Ica4f2b8d25eec3ca1d6fa52ef0d4adc228eeea3f

10 years agovp9_reconintra: specialize d135 4x4
James Zern [Sat, 30 May 2015 03:05:57 +0000 (20:05 -0700)]
vp9_reconintra: specialize d135 4x4

based on webp's RD4()

Change-Id: I64c8f0a1325a8f201eaad39b396fae7a2d06efff

10 years agovp9_reconintra: specialize d117 4x4
James Zern [Sat, 30 May 2015 03:08:35 +0000 (20:08 -0700)]
vp9_reconintra: specialize d117 4x4

based on webp's VR4()

Change-Id: Ic8c0b8ed65a63772ca0a4321592880a5e8947db5

10 years agovp9_reconintra: specialize d207 4x4
James Zern [Sat, 30 May 2015 03:11:15 +0000 (20:11 -0700)]
vp9_reconintra: specialize d207 4x4

based on webp's HU4()

Change-Id: I2401ef307cd94e70cc7904f55954af04290c8af9

10 years agovp9_reconintra: specialize d153 4x4
James Zern [Sat, 30 May 2015 03:12:46 +0000 (20:12 -0700)]
vp9_reconintra: specialize d153 4x4

based on webp's HD4()

Change-Id: Icba1e21ec4b8f5026dc92e49741a68b059c8b9b1

10 years agovp9_reconintra: specialize d63 4x4
James Zern [Sat, 30 May 2015 03:09:51 +0000 (20:09 -0700)]
vp9_reconintra: specialize d63 4x4

based on webp's VL4()

Change-Id: Ibab962053843eae8752b4e74b6481a53bb034ae9

10 years agovp9_reconintra: specialize d45 4x4
James Zern [Sat, 30 May 2015 03:01:21 +0000 (20:01 -0700)]
vp9_reconintra: specialize d45 4x4

based on webp's LD4()

Change-Id: I74855d23ce73e1c6988fe08bf7c959b7a69b4abf

10 years agoMerge "mips msa vp9 updated macros and disable all MSA functions"
Parag Salasakar [Sat, 30 May 2015 02:52:25 +0000 (02:52 +0000)]
Merge "mips msa vp9 updated macros and disable all MSA functions"

10 years agovp9_reconintra_neon/tm: improve above_left load
James Zern [Sat, 30 May 2015 02:10:27 +0000 (19:10 -0700)]
vp9_reconintra_neon/tm: improve above_left load

use vld1?_dup_u8 over vdup?_n_u8, reduces general register use; mildly
faster

Change-Id: Ie0e4e550849a207b34b378541196b553c9f12011

10 years agovp9_reconintra_neon: cosmetics: normalize fn params
James Zern [Sat, 30 May 2015 02:01:39 +0000 (19:01 -0700)]
vp9_reconintra_neon: cosmetics: normalize fn params

s/y_stride/stride/

Change-Id: Ie98c3fe241dc240b653849eda356a8862bdd52f4

10 years agovp9_reconintra_neon_asm/tm: simplify above_left load
James Zern [Sat, 30 May 2015 01:56:16 +0000 (18:56 -0700)]
vp9_reconintra_neon_asm/tm: simplify above_left load

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

Change-Id: I5c24d49a90c2855c94395184774b289da8e9d5a7

10 years agoMerge changes from topic 'vp9-intra-pred'
James Zern [Sat, 30 May 2015 01:51:35 +0000 (01:51 +0000)]
Merge changes from topic 'vp9-intra-pred'

* changes:
  vp9_reconintra_neon: add DC 16x16 predictors
  vp9_reconintra_neon: add DC 8x8 predictors

10 years agovp9_reconintra_neon: add DC 16x16 predictors
James Zern [Thu, 28 May 2015 03:17:27 +0000 (20:17 -0700)]
vp9_reconintra_neon: add DC 16x16 predictors

85-89% faster over 20M pixels

Change-Id: I9b320ed6b9e67f27df738b84c8b43b65a93c50c2

10 years agovp9_reconintra_neon: add DC 8x8 predictors
James Zern [Thu, 28 May 2015 01:59:57 +0000 (18:59 -0700)]
vp9_reconintra_neon: add DC 8x8 predictors

~90% faster over 20M pixels

Change-Id: Iab791510cc57c8332c2f9a5da0ed50702e5f5763

10 years agomips msa vp9 updated macros and disable all MSA functions
Parag Salasakar [Thu, 28 May 2015 09:59:07 +0000 (15:29 +0530)]
mips msa vp9 updated macros and disable all MSA functions

Done little restructuring/styling changes to the sources like generic macro definitions, their use to reduce code lines, better code alignments etc.
Disabled all MSA hooks and tests

Change-Id: Ic6f2dce0b501f46b80c06c46c0fe2043d557b190