platform/upstream/libvpx.git
9 years agoMerge "mips msa vp9 copy and avg convolve optimization"
Parag Salasakar [Thu, 30 Apr 2015 04:39:11 +0000 (04:39 +0000)]
Merge "mips msa vp9 copy and avg convolve optimization"

9 years agoMerge "Disable ssse3 version idct16x16_256_add()"
Yaowu Xu [Thu, 30 Apr 2015 03:09:22 +0000 (03:09 +0000)]
Merge "Disable ssse3 version idct16x16_256_add()"

9 years agoDisable ssse3 version idct16x16_256_add()
Yaowu Xu [Wed, 29 Apr 2015 23:25:28 +0000 (16:25 -0700)]
Disable ssse3 version idct16x16_256_add()

The version is currently producing different result from c version
for some input. Disable the use of it for now to allow time for
investigation the source of mismatch.

Change-Id: Id039455494ee531db4886a9f1fa4761174ef6df3

9 years agoMerge "vpx_temporal_svc_encoder: Keep static_threshold off as default."
Marco [Wed, 29 Apr 2015 21:42:56 +0000 (21:42 +0000)]
Merge "vpx_temporal_svc_encoder: Keep static_threshold off as default."

9 years agovpx_temporal_svc_encoder: Keep static_threshold off as default.
Marco [Wed, 29 Apr 2015 21:40:07 +0000 (14:40 -0700)]
vpx_temporal_svc_encoder: Keep static_threshold off as default.

Change-Id: Iadb42041f08ac969cc0b6af6f15e30c8498db680

9 years agoMerge changes from topic 'vpx_mem-cruft'
James Zern [Wed, 29 Apr 2015 19:01:48 +0000 (19:01 +0000)]
Merge changes from topic 'vpx_mem-cruft'

* changes:
  vpx_mem: remove vpx_memset
  vpx_mem: remove vpx_memcpy
  vpx_mem: remove vpx_memmove

9 years agovpx_temporal_svc_encoder: Update some settings.
Marco [Wed, 29 Apr 2015 16:21:19 +0000 (09:21 -0700)]
vpx_temporal_svc_encoder: Update some settings.

Set denoiser off by default: should add this option to command line.

Change-Id: Iaecc94f5b5099feaacd7a5c415fc86eb68a2eea5

9 years agovpx_temporal_svc_encoder: Set static threshold to off by default.
Marco [Wed, 29 Apr 2015 15:36:00 +0000 (08:36 -0700)]
vpx_temporal_svc_encoder: Set static threshold to off by default.

Change-Id: I029484a5ffddcc3e518eeee609a6709b01cba146

9 years agomips msa vp9 copy and avg convolve optimization
Parag Salasakar [Mon, 27 Apr 2015 06:56:10 +0000 (12:26 +0530)]
mips msa vp9 copy and avg convolve optimization

average improvement ~3x-5x

Change-Id: I422e4c33ea7e6d6783ba40029438ccf21b0e76bb

9 years agovpx_mem: remove vpx_memset
James Zern [Fri, 24 Apr 2015 03:47:40 +0000 (20:47 -0700)]
vpx_mem: remove vpx_memset

vestigial. replace instances with memset() which they already were being
defined to.

Change-Id: Ie030cfaaa3e890dd92cf1a995fcb1927ba175201

9 years agovpx_mem: remove vpx_memcpy
James Zern [Fri, 24 Apr 2015 03:42:19 +0000 (20:42 -0700)]
vpx_mem: remove vpx_memcpy

vestigial. replace instances with memcpy() which they already were being
defined to.

Change-Id: Icfd1b0bc5d95b70efab91b9ae777ace1e81d2d7c

9 years agovpx_mem: remove vpx_memmove
James Zern [Fri, 24 Apr 2015 03:34:15 +0000 (20:34 -0700)]
vpx_mem: remove vpx_memmove

vestigial. replace instances with memmove() which they already were
being defined to.

Change-Id: If396d3f9e3cf79c0ee5d7429615ef3d6b2a34afa

9 years agoMerge "vpx_mem: remove REPLACE_BUILTIN_FUNCTIONS"
James Zern [Wed, 29 Apr 2015 02:58:38 +0000 (02:58 +0000)]
Merge "vpx_mem: remove REPLACE_BUILTIN_FUNCTIONS"

9 years agoMerge "x86_simd_caps: check max cpuid before testing AVX2"
James Zern [Tue, 28 Apr 2015 21:31:02 +0000 (21:31 +0000)]
Merge "x86_simd_caps: check max cpuid before testing AVX2"

9 years agoMerge "WIP: Use LUT for y_dequant/uv_dequant"
Frank Galligan [Tue, 28 Apr 2015 16:12:09 +0000 (16:12 +0000)]
Merge "WIP: Use LUT for y_dequant/uv_dequant"

9 years agoMerge "Fix debugmodes file to print modes and MVs correctly"
Yunqing Wang [Tue, 28 Apr 2015 15:47:45 +0000 (15:47 +0000)]
Merge "Fix debugmodes file to print modes and MVs correctly"

9 years agoWIP: Use LUT for y_dequant/uv_dequant
Scott LaVarnway [Tue, 28 Apr 2015 14:52:06 +0000 (07:52 -0700)]
WIP: Use LUT for y_dequant/uv_dequant

instead of calculating every block.

Change-Id: Ib19ff2546be8441f8755ae971ba2910f29412029

9 years agoFix debugmodes file to print modes and MVs correctly
Yunqing Wang [Tue, 28 Apr 2015 00:05:06 +0000 (17:05 -0700)]
Fix debugmodes file to print modes and MVs correctly

This patch fixed the issues in debugmodes file because of the recent
changes in MODE_INFO struct.

Change-Id: I4df83379ecc887c1f009d4a8329c9809c5b299d6

9 years agoMerge "PATENTS: fix a typo: constitutes -> constitute"
James Zern [Sat, 25 Apr 2015 06:06:07 +0000 (06:06 +0000)]
Merge "PATENTS: fix a typo: constitutes -> constitute"

9 years agoPATENTS: fix a typo: constitutes -> constitute
James Zern [Tue, 21 Apr 2015 03:56:20 +0000 (20:56 -0700)]
PATENTS: fix a typo: constitutes -> constitute

Change-Id: Ie54413818b7f731b8a48b719038e66c9744de81e

9 years agox86_simd_caps: check max cpuid before testing AVX2
James Zern [Sat, 25 Apr 2015 02:21:53 +0000 (19:21 -0700)]
x86_simd_caps: check max cpuid before testing AVX2

structured extended feature flags require eax = 7; avoids incorrectly
detecting avx2 on some older processors that support avx.

from [1]:
INPUT EAX = 0: Returns CPUID’s Highest Value for Basic Processor
Information and the Vendor Identification String

[1] http://www.intel.com/content/www/us/en/processors/processor-identification-cpuid-instruction-note.html

Change-Id: I6b4735b5f7b7729a815e428fca767d1e5a10bcab

9 years agoAdd validation of UV partition size
Yaowu Xu [Fri, 24 Apr 2015 15:22:13 +0000 (08:22 -0700)]
Add validation of UV partition size

For color sampling format other than 420, valid partion size in Y may
not work for UV plane. This commit adds validation of UV partition
size before select the partition choice.

This fixes a crash for real time encoding of 422 input.

Change-Id: I1fe3282accfd58625e8b5e6a4c8d2c84199751b6

9 years agovpx_mem: remove REPLACE_BUILTIN_FUNCTIONS
James Zern [Fri, 24 Apr 2015 03:31:59 +0000 (20:31 -0700)]
vpx_mem: remove REPLACE_BUILTIN_FUNCTIONS

vestigial. there are other ways to achieve this.

Change-Id: Ie977ce952527e596479df3084f331b694a682e39

9 years agovpx_mem: remove global function pointer
James Zern [Thu, 16 Apr 2015 22:44:18 +0000 (15:44 -0700)]
vpx_mem: remove global function pointer

vestigial.

Change-Id: I11389f660d0c5db8fa48bd355cbc3223fc3bcabb

9 years agovpx_mem: remove mem tracker
James Zern [Thu, 16 Apr 2015 22:37:33 +0000 (15:37 -0700)]
vpx_mem: remove mem tracker

vestigial. there are tools better suited for this

Change-Id: I7a72a2cfe32377f07c8cd0973ddb18842720a225

9 years agoMerge "vpx_mem: remove 'mem checks'"
Johann [Wed, 22 Apr 2015 20:09:47 +0000 (13:09 -0700)]
Merge "vpx_mem: remove 'mem checks'"

9 years agoMerge "vpx_mem: remove memory manager code"
Johann [Wed, 22 Apr 2015 20:09:39 +0000 (13:09 -0700)]
Merge "vpx_mem: remove memory manager code"

9 years agoAdds worst frame metrics for a bunch of metrics.
Jim Bankoski [Wed, 22 Apr 2015 13:45:56 +0000 (06:45 -0700)]
Adds worst frame metrics for a bunch of metrics.

Change-Id: Ieaccc36ed1bee024bb644a9cfaafdaaa65d31772

9 years agoMerge "Modified test for auto key frame detection."
paulwilkins [Wed, 22 Apr 2015 09:29:17 +0000 (02:29 -0700)]
Merge "Modified test for auto key frame detection."

9 years agoMerge "Limit arf interval for low fpf clips."
paulwilkins [Wed, 22 Apr 2015 09:25:38 +0000 (02:25 -0700)]
Merge "Limit arf interval for low fpf clips."

9 years agoMerge "mips msa vp9 convolve8 horiz optimization"
Parag Salasakar [Wed, 22 Apr 2015 05:08:25 +0000 (22:08 -0700)]
Merge "mips msa vp9 convolve8 horiz optimization"

9 years agoMerge "Adds a new temporal consistency metric to libvpx."
Jim Bankoski [Tue, 21 Apr 2015 23:11:11 +0000 (16:11 -0700)]
Merge "Adds a new temporal consistency metric to libvpx."

9 years agoMerge "Rename neon convolve avg file"
Johann [Tue, 21 Apr 2015 22:45:29 +0000 (15:45 -0700)]
Merge "Rename neon convolve avg file"

9 years agoRename neon convolve avg file
Johann [Tue, 21 Apr 2015 21:18:17 +0000 (14:18 -0700)]
Rename neon convolve avg file

Some build systems use just the basename for object files.

Change-Id: I333e1107ee866f3906cc46476ef8d04c6200a8a0

9 years agoRevert "Remove mi_grid_* structures."
Scott LaVarnway [Tue, 21 Apr 2015 12:36:58 +0000 (05:36 -0700)]
Revert "Remove mi_grid_* structures."

(see I3a05cf1610679fed26e0b2eadd315a9ae91afdd6)

For the test clip used, the decoder performance improved by ~2%.
This is also an intermediate step towards adding back the
mode_info streams.

Change-Id: Idddc4a3f46e4180fbebddc156c4bbf177d5c2e0d

9 years agoAdds a new temporal consistency metric to libvpx.
Jim Bankoski [Tue, 21 Apr 2015 17:05:37 +0000 (10:05 -0700)]
Adds a new temporal consistency metric to libvpx.

Change-Id: Id61699ebf57ae4f8af96a468740c852b2f45f8e1

9 years agoMerge "Resolve configuration conflict"
Yaowu Xu [Tue, 21 Apr 2015 15:00:49 +0000 (08:00 -0700)]
Merge "Resolve configuration conflict"

9 years agoModified test for auto key frame detection.
paulwilkins [Thu, 16 Apr 2015 10:15:36 +0000 (11:15 +0100)]
Modified test for auto key frame detection.

The existing test was triggering a lot of false positives on some types
of animated material with very plain backgrounds. These were triggering
code designed to catch key frames in letter box format clips.

This patch tightens up the criteria and imposes a minimum requirement
on the % blocks coded intra in the first pass and the ratio between the
% coded intra and the modified inter % after discounting neutral (flat)
blocks that are coded equally well either way.

On a particular problem animation clip this change eliminated a large
number of false positives including some cases where the old code
selected kf several times in a row. Marginal false negatives are less
damaging typically to compression and in the problem clip there are now
a couple of cases where "visual" scene cuts are ignored because of well
correlated content across the scene cut.

Replaced some magic numbers related to this with #defines and added
explanatory comments.

Change-Id: Ia3d304ac60eb7e4323e3817eaf83b4752cd63ecf

9 years agomips msa vp9 convolve8 horiz optimization
Parag Salasakar [Tue, 21 Apr 2015 06:57:32 +0000 (12:27 +0530)]
mips msa vp9 convolve8 horiz optimization

average improvement ~6x-8x

Change-Id: I7c91eec41aada3b0a5231dda7869b3b968f3ad18

9 years agoMerge "mips msa vp9 convolve8 hv optimization"
Parag Salasakar [Tue, 21 Apr 2015 06:39:24 +0000 (23:39 -0700)]
Merge "mips msa vp9 convolve8 hv optimization"

9 years agovpx_mem: remove 'mem checks'
James Zern [Thu, 16 Apr 2015 19:29:01 +0000 (12:29 -0700)]
vpx_mem: remove 'mem checks'

vestigial. there are tools better suited for this

Change-Id: I1d6f604452fbc62cb7523eec8d1f8a72a276d6b5

9 years agovpx_mem: remove memory manager code
James Zern [Thu, 16 Apr 2015 19:23:10 +0000 (12:23 -0700)]
vpx_mem: remove memory manager code

vestigial. the code is stale and couldn't be configured directly; there
are better ways to achieve this now

Change-Id: I5a9c62e099215588cd0d7e5ae002dfc77c21a895

9 years agomips msa vp9 convolve8 hv optimization
Parag Salasakar [Mon, 20 Apr 2015 05:26:51 +0000 (10:56 +0530)]
mips msa vp9 convolve8 hv optimization

average improvement ~5x-8x

Change-Id: I3214734cb3716e742907ce0d2d7a042d953df82b

9 years agoResolve configuration conflict
Yaowu Xu [Mon, 20 Apr 2015 23:44:12 +0000 (16:44 -0700)]
Resolve configuration conflict

Between --enable-internal-stats and --enable-vp9-highbitdepth

Change-Id: I36b741554e835033e69883270b6b0e5374a1aafa

9 years agoMove declaration before statement
Yaowu Xu [Mon, 20 Apr 2015 16:50:59 +0000 (09:50 -0700)]
Move declaration before statement

Change-Id: Ib64786fcc0d6dc11c4e66f5b7f3e93b2a4fcb664

9 years agoMerge "mips msa vp9 convolve8 vert optimization"
Parag Salasakar [Sun, 19 Apr 2015 06:39:25 +0000 (23:39 -0700)]
Merge "mips msa vp9 convolve8 vert optimization"

9 years agomips msa vp9 convolve8 vert optimization
Parag Salasakar [Thu, 16 Apr 2015 05:33:24 +0000 (11:03 +0530)]
mips msa vp9 convolve8 vert optimization

average improvement ~6x-10x

Change-Id: Ie3f3ab3a9005be84935919701e56b404e420affa

9 years agoMerge "Adds a blockiness metric to internal stats."
Jim Bankoski [Fri, 17 Apr 2015 23:06:26 +0000 (16:06 -0700)]
Merge "Adds a blockiness metric to internal stats."

9 years agoMerge "adds psnrhvs to internal stats."
Jim Bankoski [Fri, 17 Apr 2015 23:06:10 +0000 (16:06 -0700)]
Merge "adds psnrhvs to internal stats."

9 years agoMerge "Adds a fastssim metric to VPX internal stats."
Jim Bankoski [Fri, 17 Apr 2015 23:05:53 +0000 (16:05 -0700)]
Merge "Adds a fastssim metric to VPX internal stats."

9 years agoAdds a blockiness metric to internal stats.
Jim Bankoski [Fri, 17 Apr 2015 18:13:18 +0000 (11:13 -0700)]
Adds a blockiness metric to internal stats.

Change-Id: Iedceeb020492050063acf3fd2326f96c29db9ae5

9 years agoFix dependency of android vpx test application.
Frank Galligan [Fri, 17 Apr 2015 17:59:11 +0000 (10:59 -0700)]
Fix dependency of android vpx test application.

Change-Id: I32b7c92c89c9a2be0cf38e67a17266b9d3866154

9 years agoadds psnrhvs to internal stats.
Jim Bankoski [Fri, 17 Apr 2015 17:27:56 +0000 (10:27 -0700)]
adds psnrhvs to internal stats.

PSNR HVS is a human visual system weighted version of SNR that's
gained some popularity from academia and apparently better matches
MOS testing.

This code is borrowed from the Daala Project but uses our FDCT code.

Change-Id: Idd10fbc93129f7f4734946f6009f87d0f44cd2d7

9 years agoAdds a fastssim metric to VPX internal stats.
Jim Bankoski [Fri, 17 Apr 2015 17:23:24 +0000 (10:23 -0700)]
Adds a fastssim metric to VPX internal stats.

This code appeared in the Daala project first and was originally
committed by Nathan Egge.

Change-Id: Iadce416a091929c51b46637ebdec984cddcaf18c

9 years agoMerge "Remove unnecessary backup token stream pointer"
Jingning Han [Fri, 17 Apr 2015 16:13:53 +0000 (09:13 -0700)]
Merge "Remove unnecessary backup token stream pointer"

9 years agoRevert "Revert "Force_split on 16x16 blocks in variance partition.""
Marco Paniconi [Thu, 16 Apr 2015 00:48:20 +0000 (17:48 -0700)]
Revert "Revert "Force_split on 16x16 blocks in variance partition.""

This reverts commit 004b9d83e37d355f590a6976a27b7b845d19a869

Change-Id: I2f2d0bdb9368c2c07f1d29a69cd461267a3a8743

9 years agoRemove unnecessary backup token stream pointer
Jingning Han [Thu, 16 Apr 2015 23:40:34 +0000 (16:40 -0700)]
Remove unnecessary backup token stream pointer

When the tokenization is not taking effect, the tokenization
pointer remains unchanged. No need to re-assign the backup pointer
value.

Change-Id: I58fe1f6285aa3b4a88ceb864c11d5de8ac6235dd

9 years agoMerge "Fix multithread encode test"
Frank Galligan [Thu, 16 Apr 2015 23:00:54 +0000 (16:00 -0700)]
Merge "Fix multithread encode test"

9 years agoFix multithread encode test
Frank Galligan [Tue, 14 Apr 2015 22:01:56 +0000 (15:01 -0700)]
Fix multithread encode test

The multithread encode test was never actually setting more than
one thread.

Change-Id: Ie7a3b7b138e88344c943bffd544cf2b4aab866a9

9 years agoMerge "[svc] Fix syntax error when encoding multiple tiles."
Minghai Shang [Thu, 16 Apr 2015 20:43:44 +0000 (13:43 -0700)]
Merge "[svc] Fix syntax error when encoding multiple tiles."

9 years agoMerge "Use extern for *_rtcd() in test/test_libvpx.cc"
Johann [Thu, 16 Apr 2015 20:42:34 +0000 (13:42 -0700)]
Merge "Use extern for *_rtcd() in test/test_libvpx.cc"

9 years ago[svc] Fix syntax error when encoding multiple tiles.
Minghai Shang [Wed, 15 Apr 2015 21:59:17 +0000 (14:59 -0700)]
[svc] Fix syntax error when encoding multiple tiles.

Change-Id: Ia77b551415f3b3386e22a6c805f244f2d13fe3e3

9 years agoUse extern for *_rtcd() in test/test_libvpx.cc
Johann [Thu, 16 Apr 2015 18:51:22 +0000 (14:51 -0400)]
Use extern for *_rtcd() in test/test_libvpx.cc

This partially reverts commit 14ef4aeafb

Including the rtcd headers to get the function definitions causes
problems on VS9.

Change-Id: I780874d9e03af2d3124192ab0e3907301f22674c

9 years agoMerge "Android.mk: remove unnecessary -llog reference"
James Zern [Thu, 16 Apr 2015 19:00:11 +0000 (12:00 -0700)]
Merge "Android.mk: remove unnecessary -llog reference"

9 years agoLimit arf interval for low fpf clips.
paulwilkins [Thu, 16 Apr 2015 10:24:38 +0000 (11:24 +0100)]
Limit arf interval for low fpf clips.

This patch limits  the maximum arf interval length to
approximately half a second. In some low fps animations in
particular the existing code was selecting an overly long interval
which was hurting visual quality. For a sample problem test clip
(360P animation , 15fps, ~200Kbit/s) this change also improved
metrics by >0.5 db.

There may be some clips where this hurts metrics a little, but the
worst case impact visually is likely to be less than having an
interval that is much too long. On more normal material at 24
fps or higher, the impact is likely to be nil/minimal.

Change-Id: Id8b57413931a670c861213ea91d7cc596375a297

9 years agoMerge "mips msa configuration fix"
Parag Salasakar [Thu, 16 Apr 2015 04:17:13 +0000 (21:17 -0700)]
Merge "mips msa configuration fix"

9 years agoAndroid.mk: remove unnecessary -llog reference
James Zern [Thu, 16 Apr 2015 03:54:04 +0000 (20:54 -0700)]
Android.mk: remove unnecessary -llog reference

nothing is using android/log.h currently; also quiets a warning when
building a static lib:
Android NDK: WARNING:libvpx/build/make/Android.mk:vpx: LOCAL_LDLIBS is
always ignored for static libraries

Change-Id: I1469a5d6fca4f7338a4a82e26a03e60fc91d92ca

9 years agoMerge "Android.mk: add a flag to control shared/static lib"
James Zern [Thu, 16 Apr 2015 03:33:03 +0000 (20:33 -0700)]
Merge "Android.mk: add a flag to control shared/static lib"

9 years agoMerge "Fix Tsan errors"
Yunqing Wang [Wed, 15 Apr 2015 22:34:03 +0000 (15:34 -0700)]
Merge "Fix Tsan errors"

9 years agoFix Tsan errors
Yunqing Wang [Wed, 15 Apr 2015 17:49:07 +0000 (10:49 -0700)]
Fix Tsan errors

This patch fixed 2 reported Tsan errors while running VP9 real-time
encoder.

Change-Id: Ib0278fe802852862c3ce87c4a500e544d7089f67

9 years agoMerge "Reorganize *_rtcd() calling conventions"
Johann [Wed, 15 Apr 2015 19:27:59 +0000 (12:27 -0700)]
Merge "Reorganize *_rtcd() calling conventions"

9 years agoMerge "Allow specifying a different prefix in x86inc.asm"
Johann [Wed, 15 Apr 2015 19:12:58 +0000 (12:12 -0700)]
Merge "Allow specifying a different prefix in x86inc.asm"

9 years agoReorganize *_rtcd() calling conventions
Johann [Wed, 15 Apr 2015 13:27:00 +0000 (09:27 -0400)]
Reorganize *_rtcd() calling conventions

Change-Id: Ib1e17d8aae9b713b87f560ab5e49952ee2bfdcc2

9 years agoAllow specifying a different prefix in x86inc.asm
Johann [Tue, 14 Apr 2015 19:25:14 +0000 (15:25 -0400)]
Allow specifying a different prefix in x86inc.asm

Currently the prefix is forced to vp9 for any function using
x86inc.asm.

Change-Id: Icbca57ce68a52e743bdd7e9be86cfe8353f274c1

9 years agoMerge "Remove unused scaleopt.cpp"
Johann [Wed, 15 Apr 2015 13:36:45 +0000 (06:36 -0700)]
Merge "Remove unused scaleopt.cpp"

9 years agomips msa configuration fix
Parag Salasakar [Mon, 13 Apr 2015 08:43:07 +0000 (14:13 +0530)]
mips msa configuration fix

for big endian disable msa
removed -flax-vector-conversion flag
disable runtime_cpu_detect feature if enabled

Change-Id: Icd5130b733f2ddcdb94ffb6e4d170e6ca0f9832b

9 years agoRevert "Force_split on 16x16 blocks in variance partition."
Yunqing Wang [Tue, 14 Apr 2015 22:12:40 +0000 (15:12 -0700)]
Revert "Force_split on 16x16 blocks in variance partition."

This reverts commit eb8c667570aa83134c7db0690de9dbdde4d90291.
The patch caused mismatch while using multi-threads.

Change-Id: Icd646340af25b5d91e32f03ed3ea212e00e3e0be

9 years agoRemove unused scaleopt.cpp
Johann [Tue, 14 Apr 2015 20:59:30 +0000 (16:59 -0400)]
Remove unused scaleopt.cpp

Change-Id: Ibaeede61c128c73809332b9a853cd62b8d6d5325

9 years agoMerge "Force_split on 16x16 blocks in variance partition."
Marco [Tue, 14 Apr 2015 16:44:58 +0000 (09:44 -0700)]
Merge "Force_split on 16x16 blocks in variance partition."

9 years agoMerge "Remove unnecessary set postproc flags."
hkuang [Mon, 13 Apr 2015 21:33:43 +0000 (14:33 -0700)]
Merge "Remove unnecessary set postproc flags."

9 years agoForce_split on 16x16 blocks in variance partition.
Marco [Wed, 18 Mar 2015 20:55:19 +0000 (13:55 -0700)]
Force_split on 16x16 blocks in variance partition.

Force split on 16x16 block (to 8x8) based on the minmax over the 8x8 sub-blocks.

Also increase variance threshold for 32x32, and add exit condiiton in choose_partition
(with very safe threshold) based on sad used to select reference frame.

Some visual improvement near moving boundaries.
Average gain in psnr/ssim: ~0.6%, some clips go up ~1 or 2%.
Encoding time increase (due to more 8x8 blocks) from ~1-4%, depending on clip.

Change-Id: I4759bb181251ac41517cd45e326ce2997dadb577

9 years agoMerge "mips msa vp9 common headers added"
Parag Salasakar [Fri, 10 Apr 2015 04:50:15 +0000 (21:50 -0700)]
Merge "mips msa vp9 common headers added"

9 years agoMerge "Remove get_nonrd_var_based_fixed_partition function"
Jingning Han [Thu, 9 Apr 2015 21:45:19 +0000 (14:45 -0700)]
Merge "Remove get_nonrd_var_based_fixed_partition function"

9 years agoMerge "Compute prediction filter type cost only when needed"
Jingning Han [Thu, 9 Apr 2015 21:45:11 +0000 (14:45 -0700)]
Merge "Compute prediction filter type cost only when needed"

9 years agoMerge "SSSE3 assembly implementation of 8x8 Hadamard transform"
Jingning Han [Thu, 9 Apr 2015 18:16:11 +0000 (11:16 -0700)]
Merge "SSSE3 assembly implementation of 8x8 Hadamard transform"

9 years agoMerge "Remove unnecessary mv clamp with on demand border extension."
hkuang [Thu, 9 Apr 2015 17:08:06 +0000 (10:08 -0700)]
Merge "Remove unnecessary mv clamp with on demand border extension."

9 years agoRemove get_nonrd_var_based_fixed_partition function
Jingning Han [Thu, 9 Apr 2015 16:49:09 +0000 (09:49 -0700)]
Remove get_nonrd_var_based_fixed_partition function

This function has been replaced by other approaches and is not
in use now.

Change-Id: I387f45b5607d202539e482468ccc70e6c0f9341f

9 years agomips msa vp9 common headers added
Parag Salasakar [Wed, 25 Mar 2015 09:34:48 +0000 (15:04 +0530)]
mips msa vp9 common headers added

Change-Id: Ia31ada59172eb1818e1eb91009f83cbb1f581223

9 years agoAndroid.mk: add a flag to control shared/static lib
James Zern [Thu, 9 Apr 2015 04:03:36 +0000 (21:03 -0700)]
Android.mk: add a flag to control shared/static lib

ndk-build ENABLE_SHARED=1 ...

Change-Id: Idd64804b165d0d4bbfb0b242d6c4eee5e828dab4

9 years agoMerge "vpxdec.sh: fix vp9_webm_less_than_50_frames w/valgrind"
James Zern [Thu, 9 Apr 2015 04:01:34 +0000 (21:01 -0700)]
Merge "vpxdec.sh: fix vp9_webm_less_than_50_frames w/valgrind"

9 years agoRemove unnecessary mv clamp with on demand border extension.
hkuang [Mon, 6 Apr 2015 17:17:14 +0000 (10:17 -0700)]
Remove unnecessary mv clamp with on demand border extension.

Change-Id: Ia2956f06f409b9b0ca8320ca4c1ea5680e938402

9 years agoRefactor dec_build_inter_predictors
Frank Galligan [Sun, 22 Mar 2015 20:41:13 +0000 (13:41 -0700)]
Refactor dec_build_inter_predictors

Refactor the loops in dec_build_inter_predictors to try and decrease
the number of instructions. Limited testing saw about 1% perf
increase on x86 and about 0.67 % perf increase on Arm.

Change-Id: I69cfe6335bb562fbaaebf43fb3f5c5a2a28882a2

9 years agovpxdec.sh: fix vp9_webm_less_than_50_frames w/valgrind
James Zern [Wed, 8 Apr 2015 18:45:04 +0000 (11:45 -0700)]
vpxdec.sh: fix vp9_webm_less_than_50_frames w/valgrind

add a check for the status line to awk and better report failure given
the program output will be lost in this case

Change-Id: I1348a80108c81099d609f2e2227dd2c31bd8cd54

9 years agoMerge "Improve accuracy of rate control in CQ mode"
Debargha Mukherjee [Wed, 8 Apr 2015 17:48:17 +0000 (10:48 -0700)]
Merge "Improve accuracy of rate control in CQ mode"

9 years agoMerge "vp9_full_search_sadx[38]: align sad arrays"
James Zern [Wed, 8 Apr 2015 03:57:21 +0000 (20:57 -0700)]
Merge "vp9_full_search_sadx[38]: align sad arrays"

9 years agoMerge "Optimize the checking for transform skipping"
Yaowu Xu [Tue, 7 Apr 2015 23:29:51 +0000 (16:29 -0700)]
Merge "Optimize the checking for transform skipping"

9 years agoMerge "move ref_frame_cost computations into a function"
Yaowu Xu [Tue, 7 Apr 2015 23:29:45 +0000 (16:29 -0700)]
Merge "move ref_frame_cost computations into a function"

9 years agoImprove accuracy of rate control in CQ mode
Debargha Mukherjee [Tue, 7 Apr 2015 23:15:11 +0000 (16:15 -0700)]
Improve accuracy of rate control in CQ mode

Modifies a special handling that improves rate control accuracy in
the constrained quality mode, when the undershoot and overshoot
limits are set tighter.

Change-Id: If62103f0ef3ed1cac92807400678c93da50cf046

9 years agoMerge "Test loopfilters with count=2"
Yaowu Xu [Tue, 7 Apr 2015 23:08:25 +0000 (16:08 -0700)]
Merge "Test loopfilters with count=2"

9 years agovp9_full_search_sadx[38]: align sad arrays
James Zern [Tue, 7 Apr 2015 21:30:17 +0000 (14:30 -0700)]
vp9_full_search_sadx[38]: align sad arrays

the sse4 code expects 16-byte aligned arrays; vp8 already had a similar
change applied:
b2aa401 Align SAD output array to be 16-byte aligned

Change-Id: I5e902035e5a87e23309e151113f3c0d4a8372226