platform/upstream/libvpx.git
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 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 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 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 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"

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

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

9 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

9 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

9 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

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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 years agovariance_neon: add missing include
James Zern [Fri, 29 May 2015 06:38:53 +0000 (23:38 -0700)]
variance_neon: add missing include

vpx_ports/mem.h is necessary for MSVC __builtin_prefetch compatibility
macro

Change-Id: I210fad6c6b4545df1874d028b31f42018490b029

9 years agoFor non-rd pickmode: remove VAR_PARTITION condition.
Marco [Fri, 29 May 2015 00:21:00 +0000 (17:21 -0700)]
For non-rd pickmode: remove VAR_PARTITION condition.

Keep the logic, transform size based on cyclic refresh and bsize,
(that was conditioned on VAR_PARTITION conditions) the same
for all speeds in non-rd mode (speeds >= 5).

No change to speeds >=6.
Small improvement for speed 5, ~0.5/1.5% gain for avg psnr/ssim.

Change-Id: If9c5657f3d30efd3c7f147166bba7cb69ea55114

9 years agoMerge "[svc] Disable tiles for spatial svc case"
Minghai Shang [Thu, 28 May 2015 22:13:53 +0000 (22:13 +0000)]
Merge "[svc] Disable tiles for spatial svc case"

9 years agoMerge "Check size restrictions before running test vector"
Johann [Thu, 28 May 2015 22:01:53 +0000 (22:01 +0000)]
Merge "Check size restrictions before running test vector"

9 years agoMerge "Re-worked header files"
Scott LaVarnway [Thu, 28 May 2015 19:55:33 +0000 (19:55 +0000)]
Merge "Re-worked header files"

9 years agoMerge "Use correct parameters for NEON variance tests"
Johann [Thu, 28 May 2015 19:53:50 +0000 (19:53 +0000)]
Merge "Use correct parameters for NEON variance tests"

9 years agoMerge "Remove conversion warnings from hbd shifts"
Johann [Thu, 28 May 2015 19:39:32 +0000 (19:39 +0000)]
Merge "Remove conversion warnings from hbd shifts"

9 years agoMerge "Don't #define snprintf in VS 2015 or higher."
Johann [Thu, 28 May 2015 19:38:56 +0000 (19:38 +0000)]
Merge "Don't #define snprintf in VS 2015 or higher."

9 years agoUse correct parameters for NEON variance tests
Johann [Thu, 28 May 2015 18:28:06 +0000 (11:28 -0700)]
Use correct parameters for NEON variance tests

Change-Id: Ib2949d0a3e9273e7952bbf91956357c1138093f1

9 years agoMerge "Add error handling when running out of free frame buffers."
hkuang [Thu, 28 May 2015 17:40:58 +0000 (17:40 +0000)]
Merge "Add error handling when running out of free frame buffers."

9 years agoDon't #define snprintf in VS 2015 or higher.
Johann [Thu, 7 May 2015 23:41:33 +0000 (16:41 -0700)]
Don't #define snprintf in VS 2015 or higher.

In VS 2015 and higher snprintf is supplied and therefore vsnprintf
doesn't need to be defined. This also avoids problems caused by
_snprintf being different from snprintf.

This fixes a build break with VS 2015 and improves security.

Originally submitted via chromium by brucedawson@chromium.org
https://codereview.chromium.org/1055603003

Additionally break this MSVC-specific tweak to a new file, which will
become the home of all such MSVC-specific things.

This requires adding a dependency on msvc.h to every example which uses
args.c and tools_common.h

Change-Id: I35b5f8e7ea00f6627403aabc9ea79b0412557a99

9 years agoRemove conversion warnings from hbd shifts
Johann [Wed, 27 May 2015 21:37:31 +0000 (14:37 -0700)]
Remove conversion warnings from hbd shifts

ROUND_POWER_OF_TWO has some poor side effects when used
with [u]int64_t such as doing the shifting in 32bits.

Change-Id: Ic85a19765cd316fb43657cb21c86f35ceb772773

9 years agoCheck size restrictions before running test vector
Johann [Wed, 27 May 2015 22:27:34 +0000 (15:27 -0700)]
Check size restrictions before running test vector

Change-Id: I60ea7724e6ab06fc658f678c1b76d984a43f5a5e

9 years agoAdd error handling when running out of free frame buffers.
hkuang [Tue, 26 May 2015 18:52:10 +0000 (11:52 -0700)]
Add error handling when running out of free frame buffers.

Change-Id: If28b59b9521204a6e3aecedcf75932d76a752567

9 years agoMerge "Only use one 'END' per file"
Johann [Wed, 27 May 2015 20:34:21 +0000 (20:34 +0000)]
Merge "Only use one 'END' per file"

9 years agoMerge "[decoder] Optimize context buffer re-allocation"
Minghai Shang [Wed, 27 May 2015 20:24:29 +0000 (20:24 +0000)]
Merge "[decoder] Optimize context buffer re-allocation"

9 years agoNon-rd variance partition: Adjust thresholds for 1080p.
Marco [Wed, 27 May 2015 19:30:35 +0000 (12:30 -0700)]
Non-rd variance partition: Adjust thresholds for 1080p.

Increase the 32x32 split threshold, to allow for more 32x32
at expense of 16x16. Visually looks somewhat better.

Change-Id: Ia1439c3a0dc2d7933468b88bd59266fcd9f03505

9 years agoMerge "Correct case in Get4x4SSEFunc"
Johann [Wed, 27 May 2015 19:26:46 +0000 (19:26 +0000)]
Merge "Correct case in Get4x4SSEFunc"

9 years agoMerge "Refactor set_vbp_thresholds."
Marco [Wed, 27 May 2015 19:10:20 +0000 (19:10 +0000)]
Merge "Refactor set_vbp_thresholds."

9 years agoOnly use one 'END' per file
Johann [Wed, 27 May 2015 19:01:28 +0000 (12:01 -0700)]
Only use one 'END' per file

On visual studio builds the 'END' directive aggressively signals the end
of file.

Change-Id: I28714da32762ef5abcbaeb5a109fb02b80dd13ec

9 years agoCorrect case in Get4x4SSEFunc
Johann [Wed, 27 May 2015 18:38:43 +0000 (11:38 -0700)]
Correct case in Get4x4SSEFunc

Change-Id: Ie8a7508798fa8e65c579a77cedb8305cee4ddc81

9 years agoMerge "[svc] Make size of empty frame to be 16x16 all the time"
Minghai Shang [Wed, 27 May 2015 17:48:59 +0000 (17:48 +0000)]
Merge "[svc] Make size of empty frame to be 16x16 all the time"

9 years agoRefactor set_vbp_thresholds.
Marco [Thu, 21 May 2015 15:35:11 +0000 (08:35 -0700)]
Refactor set_vbp_thresholds.

Break out the setting of the block variance split thresholds,
since they are locally modified, e.g., based on local/segment qp.

No change in performance.

Change-Id: I0a3238e6dab05140657539fc4bd27ac5ff7a554e

9 years ago[svc] Make size of empty frame to be 16x16 all the time
Minghai Shang [Wed, 20 May 2015 23:43:27 +0000 (16:43 -0700)]
[svc] Make size of empty frame to be 16x16 all the time

Change-Id: Ibab09aa0e8c69cf5efea2f0ec035e5da9cc894b0

9 years agoMerge "Move variance functions to vpx_dsp"
Johann [Tue, 26 May 2015 23:02:10 +0000 (23:02 +0000)]
Merge "Move variance functions to vpx_dsp"

9 years agoMove variance functions to vpx_dsp
Johann [Fri, 15 May 2015 18:52:03 +0000 (11:52 -0700)]
Move variance functions to vpx_dsp

subpel functions will be moved in another patch.

Change-Id: Idb2e049bad0b9b32ac42cc7731cd6903de2826ce

9 years agoMerge "[svc] Turn on frame_parallel_decoding_mode"
Minghai Shang [Tue, 26 May 2015 17:50:42 +0000 (17:50 +0000)]
Merge "[svc] Turn on frame_parallel_decoding_mode"

9 years agoMerge "Fix integral projection motion search for frame resize"
Jingning Han [Tue, 26 May 2015 16:08:31 +0000 (16:08 +0000)]
Merge "Fix integral projection motion search for frame resize"

9 years agoMerge changes Ie15e301e,Ib070c79b
James Zern [Sat, 23 May 2015 17:47:51 +0000 (17:47 +0000)]
Merge changes Ie15e301e,Ib070c79b

* changes:
  vp9_reconintra_neon: cosmetics: reindent
  vp9_reconintra_neon: cosmetics: drop unneeded returns

9 years agovp9_reconintra_neon: cosmetics: reindent
James Zern [Sat, 23 May 2015 04:04:30 +0000 (21:04 -0700)]
vp9_reconintra_neon: cosmetics: reindent

Change-Id: Ie15e301e8f55cf928f42a03e53a8bb8b66d0e5d5

9 years agovp9_reconintra_neon: cosmetics: drop unneeded returns
James Zern [Sat, 23 May 2015 03:59:36 +0000 (20:59 -0700)]
vp9_reconintra_neon: cosmetics: drop unneeded returns

Change-Id: Ib070c79bdbb9c1f4e25af693d7056ec9f964c789

9 years agovp9: move ssse3 convolve fns to intrinsics file
James Zern [Thu, 21 May 2015 03:32:11 +0000 (20:32 -0700)]
vp9: move ssse3 convolve fns to intrinsics file

+ synchronize filter function signatures

this makes any intrinsics filters available for inlining and has the
side-effect of making those filters static, quieting missing-prototype
warnings.

Change-Id: I1908875caffa585bd4fc65aaf10d17a5e20cfb46

9 years agovp9: move avx2 convolve fns to intrinsics file
James Zern [Thu, 21 May 2015 03:32:11 +0000 (20:32 -0700)]
vp9: move avx2 convolve fns to intrinsics file

+ synchronize filter function signatures

this makes any intrinsics filters available for inlining and has the
side-effect of making those filters static, quieting missing-prototype
warnings.

Change-Id: I1cd55c9d52547793ad65aa90c7620f0e426edaa2

9 years agoadd vp9/common/x86/convolve.h
James Zern [Thu, 21 May 2015 03:14:30 +0000 (20:14 -0700)]
add vp9/common/x86/convolve.h

collect the vp9_convolve function definition macros there; this will
allow some relocation of functions from vp9_asm_stubs.c

Change-Id: Idadd117fa256dd48748379856973fd985b8204e8

9 years agoMerge "Remove unused "alt-tree-layout""
Johann [Fri, 22 May 2015 23:52:48 +0000 (23:52 +0000)]
Merge "Remove unused "alt-tree-layout""

9 years agoFix integral projection motion search for frame resize
Jingning Han [Fri, 22 May 2015 19:03:58 +0000 (12:03 -0700)]
Fix integral projection motion search for frame resize

This commit fixes the integral projection motion search crash when
frame resize is used. It fixes issue 994.

Change-Id: Ieeb52619121d7444f7d6b3d0cf09415f990d1506

9 years agovp9_subpixel_8t_intrin_ssse3: quiet vs9 warning
James Zern [Fri, 22 May 2015 19:05:02 +0000 (12:05 -0700)]
vp9_subpixel_8t_intrin_ssse3: quiet vs9 warning

reorder includes to avoid:
warning C4985: 'ceil': attributes not present on previous declaration.

this is the same workaround used in vp9/common/vp9_systemdependent.h

Change-Id: Ia10dd63de24f96fa1507a6179220e9d6ec774db6

9 years agoRemove unused "alt-tree-layout"
Johann [Fri, 22 May 2015 13:52:59 +0000 (06:52 -0700)]
Remove unused "alt-tree-layout"

Change-Id: Idddefb2fd3e4441421f61bd246479c627020a652

9 years agoRe-worked header files
Scott LaVarnway [Fri, 22 May 2015 18:19:51 +0000 (11:19 -0700)]
Re-worked header files

Various header/test files had to be re-worked in order to
build "Remove cm parameter from vp9_decode_block_tokens()".

This patch reverts the "Remove cm" part and only contains
the re-worked header files.

Change-Id: I520958a88d1991fee988a3c784d0eac40e117a32

9 years agoFix to visual studio build error.
Marco [Thu, 21 May 2015 21:07:21 +0000 (14:07 -0700)]
Fix to visual studio build error.

Change-Id: Ide080141ebc064584574c861fb324fe64cc572cc

9 years agoMerge "Fix issues with mixed ARF and GF groups."
paulwilkins [Thu, 21 May 2015 12:08:14 +0000 (12:08 +0000)]
Merge "Fix issues with mixed ARF and GF groups."

9 years agovp9_mvref_common.c: fix compile warning
James Zern [Wed, 20 May 2015 23:45:16 +0000 (16:45 -0700)]
vp9_mvref_common.c: fix compile warning

string literal to int within an assert

Change-Id: Ifd7acc717e01ee1bb3955ef830ec0d1645942459

9 years ago[svc] Disable tiles for spatial svc case
Minghai Shang [Wed, 20 May 2015 21:31:49 +0000 (14:31 -0700)]
[svc] Disable tiles for spatial svc case

Change-Id: I8655a6760ab61947c09f337ddd9f4c1baf803a56

9 years agovp8_drop_encodedframe_overshoot: fix to return setting.
Marco [Wed, 20 May 2015 19:20:17 +0000 (12:20 -0700)]
vp8_drop_encodedframe_overshoot: fix to return setting.

Make sure force_maxqp is set to 0 for return 0.

Change-Id: Ie7c57842637226e932a390e7080e5ebb99996da3

9 years ago[decoder] Optimize context buffer re-allocation
Minghai Shang [Wed, 20 May 2015 18:05:22 +0000 (11:05 -0700)]
[decoder] Optimize context buffer re-allocation

1. Check existing buffer sizes when re-allocate context buffers.
2. Don't need to set mi buffers to 0 during setup_mi.

Change-Id: I6b48b0e077a4d804312b605ad0dc34aec5795a6d

9 years ago[svc] Turn on frame_parallel_decoding_mode
Minghai Shang [Wed, 20 May 2015 17:56:48 +0000 (10:56 -0700)]
[svc] Turn on frame_parallel_decoding_mode

Change-Id: I33b0384ee87f83950e03be6c999bc5f193055fd3

9 years agoFast feedback of bits on undershoot.
paulwilkins [Thu, 7 May 2015 10:55:53 +0000 (11:55 +0100)]
Fast feedback of bits on undershoot.

This patch provides a partial rapid feedback of bits
resulting from extreme undershoot.

Some  improvement on some problem animated material
but in its current form only a small impact on the metrics results
of our standard test sets.

Change-Id: Ie03036ea8123bc2553437cb8c8c9e7a9fc5dac5d

9 years agoFix issues with mixed ARF and GF groups.
paulwilkins [Thu, 14 May 2015 16:16:36 +0000 (17:16 +0100)]
Fix issues with mixed ARF and GF groups.

This patch addresses two issues that can occur when the
encoder chooses to use a mixture of ARF and GF groups.

The first issue relates to a failure to reset the "ARF active" flag
correctly when transitioning from coding ARF groups to coding
GF groups. This caused some golden frames to be  encoded
with an incorrect bit rate target as if they were ARF overlay frames.

The second issue relates to the encoding of a single short GF group
just before a key frame.  Where the last group before a key frame
is an ARF group we expect the final frame before the key frame  to
be an low data rate overlay frame. However, when the last  group
is a GF group, the final frame before the key frame should be a normal
frame with a normal bit allocation. This issue had the potential to cause
a single poorly coded frame just before a key frame. If that key frame
were a forced key frame rather than a real scene cut, this might cause
pulsing.

Change-Id: Idf1eb5eaf63a231495a74de7899236e1ead9fb00

9 years agoVP8: For high overshoot, force drop frame and max-out QP.
Marco [Tue, 28 Apr 2015 15:29:48 +0000 (08:29 -0700)]
VP8: For high overshoot, force drop frame and max-out QP.

This allows rate control to react to content of current frame being encoded.
Enabling this feature via the setting: screen_content_mode = 2.

Change-Id: Ib2c6670551d96f4907495d5b7b76bb8c49e673db

9 years agoMerge "rename vp9_dct_impl_sse2.c to vp9_dct_sse2_impl.h"
James Zern [Tue, 19 May 2015 00:01:56 +0000 (00:01 +0000)]
Merge "rename vp9_dct_impl_sse2.c to vp9_dct_sse2_impl.h"

9 years agoMerge "rename vp9_dct32x32_sse2.c to vp9_dct32x32_sse2_impl.h"
James Zern [Tue, 19 May 2015 00:01:21 +0000 (00:01 +0000)]
Merge "rename vp9_dct32x32_sse2.c to vp9_dct32x32_sse2_impl.h"

9 years agoMerge "rename vp9_dct32x32_avx2.c to vp9_dct32x32_avx2_impl.h"
James Zern [Tue, 19 May 2015 00:01:05 +0000 (00:01 +0000)]
Merge "rename vp9_dct32x32_avx2.c to vp9_dct32x32_avx2_impl.h"

9 years agomd5_helper.h: fix type conversion warning
James Zern [Sun, 17 May 2015 18:21:22 +0000 (11:21 -0700)]
md5_helper.h: fix type conversion warning

add a cast in Add() from size_t -> uint32; quiets a visual studio build
warning

Change-Id: I0d87a3e460faf1fe2d4fb44df5f4042ef7500190

9 years agotest_intra_pred_speed: reuse test_libvpx's main()
James Zern [Sat, 16 May 2015 18:55:04 +0000 (11:55 -0700)]
test_intra_pred_speed: reuse test_libvpx's main()

this allows test_libvpx's simd caps check to be used; it also fixes a
link error on OS X with -fcommon.

Change-Id: I1a62a3e74ba06b8f3b37a22fcfdebf90c04ab289

9 years agotest_libvpx: add <arch>.* to negative filter
James Zern [Sat, 16 May 2015 18:52:59 +0000 (11:52 -0700)]
test_libvpx: add <arch>.* to negative filter

in addition to <arch>/*. this will pick up tests defined with TEST()
instead of INSTANTIATE_TEST_CASE_P()

Change-Id: I0917741baac89d9ce857f4d4aa53790e8a0c6c12

9 years agodec_build_inter_predictors: don't return a void fn
James Zern [Sat, 16 May 2015 17:33:57 +0000 (10:33 -0700)]
dec_build_inter_predictors: don't return a void fn

split call of extend_and_predict() and return, fixes visual studio build
warning since:
0a80164 Move mc_buf to cut down size of MACROBLOCKD.

Change-Id: I7cdf712941ef773a07f038539cb8080dc27861cd

9 years agorename vp9_dct_impl_sse2.c to vp9_dct_sse2_impl.h
James Zern [Fri, 15 May 2015 23:47:51 +0000 (16:47 -0700)]
rename vp9_dct_impl_sse2.c to vp9_dct_sse2_impl.h

this file shouldn't be built directly, it is included in vp9_dct_sse2.c
to create a non-high-bitdepth and a high-bitdepth version

silences missing prototype warnings for the unused FDCT* functions

Change-Id: Ide6ff8c24ab31bdb0f833260505ae33660a1ad5b

9 years agorename vp9_dct32x32_sse2.c to vp9_dct32x32_sse2_impl.h
James Zern [Fri, 15 May 2015 23:47:51 +0000 (16:47 -0700)]
rename vp9_dct32x32_sse2.c to vp9_dct32x32_sse2_impl.h

this file shouldn't be built directly, it is included in vp9_dct_sse2.c
to create a non-high-bitdepth and a high-bitdepth version

silences missing prototype warnings for the unused FDCT32x32* functions

Change-Id: I0e38f16dae5ea1728de184ee2c89287d48675c51

9 years agorename vp9_dct32x32_avx2.c to vp9_dct32x32_avx2_impl.h
James Zern [Fri, 15 May 2015 23:47:51 +0000 (16:47 -0700)]
rename vp9_dct32x32_avx2.c to vp9_dct32x32_avx2_impl.h

this file shouldn't be built directly, it is included in vp9_dct_avx2.c
to create a non-high-bitdepth and a high-bitdepth version

silences missing prototype warnings for the unused FDCT32x32* functions

Change-Id: I4c19935c0e035b393be513bde735e9a78064a494

9 years agoMerge "tests: add test_intra_pred_speed"
James Zern [Fri, 15 May 2015 23:34:06 +0000 (23:34 +0000)]
Merge "tests: add test_intra_pred_speed"

9 years agoMerge changes from topic 'missing-proto'
James Zern [Fri, 15 May 2015 23:08:14 +0000 (23:08 +0000)]
Merge changes from topic 'missing-proto'

* changes:
  vp9_subexp.h: add a missing prototype
  vp9: add some missing includes
  vp9 intrinsics: add vp9_rtcd include
  vp9: correct some function signatures
  vp9_variance_sse2: sync function signatures
  vp9/encoder: make some functions static
  vp9_dct_sse2: make some functions static
  vp9_decodeframe.c: make a function static

9 years agoMerge "Change tx_size_search_method setting for non-rd speed 5."
Marco [Fri, 15 May 2015 21:28:59 +0000 (21:28 +0000)]
Merge "Change tx_size_search_method setting for non-rd speed 5."

9 years agoChange tx_size_search_method setting for non-rd speed 5.
Marco [Fri, 15 May 2015 18:08:24 +0000 (11:08 -0700)]
Change tx_size_search_method setting for non-rd speed 5.

Use the same settting as in speed >=6.
This will use same logic for tx_size selecton as in speed >=6,
which limits the transform size and reduces ringing artifact.
Also metrics go up on average with this change: ~2% for PSNR, ~10% for SSIM.

Change-Id: Ia2d50db236ae1cc72f742bfa6c9ec5ea50ff0e0a

9 years agovp9_subexp.h: add a missing prototype
James Zern [Fri, 15 May 2015 03:33:48 +0000 (20:33 -0700)]
vp9_subexp.h: add a missing prototype

+ include the .h in the .c
silences missing prototype warnings

Change-Id: Ia87366dccb4bf4e9f2ffa5d3ab51ac6ca5488c91

9 years agovp9: add some missing includes
James Zern [Fri, 15 May 2015 03:21:01 +0000 (20:21 -0700)]
vp9: add some missing includes

mostly: <file>.c should include <file>.h
silences missing prototype warnings

Change-Id: Ic05ec32c6f7b2224b78825904d96d73aacad6000

9 years agovp9 intrinsics: add vp9_rtcd include
James Zern [Fri, 15 May 2015 03:08:03 +0000 (20:08 -0700)]
vp9 intrinsics: add vp9_rtcd include

silences a missing declaration warning

Change-Id: I59a34e1a1377cf3529b678d7ec0122bd43ab1bf1