platform/upstream/libvpx.git
9 years agoMerge "Image size restriction to rd auto partition search."
paulwilkins [Thu, 7 May 2015 14:12:13 +0000 (14:12 +0000)]
Merge "Image size restriction to rd auto partition search."

9 years agoCorrect the inter prediction coordinate calculation which greatly reduced the
hkuang [Wed, 6 May 2015 17:55:56 +0000 (10:55 -0700)]
Correct the inter prediction coordinate calculation which greatly reduced the
times of border extension.

Change-Id: I8e5bd590cc696ee71cfe1f4cc66c12fb24aaf44e

9 years agoMerge "Optimize the read_partition."
hkuang [Wed, 6 May 2015 17:29:51 +0000 (17:29 +0000)]
Merge "Optimize the read_partition."

9 years agoMerge "Add intra mode early termination in non-rd mode"
Yunqing Wang [Wed, 6 May 2015 17:12:10 +0000 (17:12 +0000)]
Merge "Add intra mode early termination in non-rd mode"

9 years agoMerge "mips msa vp9 idct 16x16 optimization"
Parag Salasakar [Wed, 6 May 2015 06:40:54 +0000 (06:40 +0000)]
Merge "mips msa vp9 idct 16x16 optimization"

9 years agoAdd intra mode early termination in non-rd mode
Yunqing Wang [Fri, 1 May 2015 20:20:50 +0000 (13:20 -0700)]
Add intra mode early termination in non-rd mode

Added the intra mode early termination in order to
speed up the mode search in non-rd case since we
started to include more intra modes in the search
list. Borg tests(rtc set) showed a 0.048% PSNR gain
and 0.061 SSIM gain. No speed change.

Change-Id: I6f255fe534dc50b736e6a66a726ad458eb9b4443

9 years agoOptimize the read_partition.
hkuang [Fri, 1 May 2015 19:35:08 +0000 (12:35 -0700)]
Optimize the read_partition.

Change-Id: I5a796425ce5706824a2fc17c6f24f983c5b9e43b

9 years agofix and enable vp9_dc_128_predictor_16x16
James Zern [Tue, 5 May 2015 18:40:13 +0000 (11:40 -0700)]
fix and enable vp9_dc_128_predictor_16x16

widen the loads and stores to 128-bit.

this was added, but not enabled in:
493a857 Add some sse2 code for intra prediction.

Change-Id: I277d7db608a7db7d75cc0bde86f48fa66ad487e4

9 years agoMerge "Add some sse2 code for intra prediction."
hkuang [Tue, 5 May 2015 17:11:06 +0000 (17:11 +0000)]
Merge "Add some sse2 code for intra prediction."

9 years agoMerge "Remove CONSTRAIN_NEIGHBORING_MIN_MAX."
paulwilkins [Tue, 5 May 2015 09:32:09 +0000 (09:32 +0000)]
Merge "Remove CONSTRAIN_NEIGHBORING_MIN_MAX."

9 years agoMerge "Adjust ARF min and max interval."
paulwilkins [Tue, 5 May 2015 09:31:37 +0000 (09:31 +0000)]
Merge "Adjust ARF min and max interval."

9 years agomips msa vp9 idct 16x16 optimization
Parag Salasakar [Mon, 4 May 2015 08:15:55 +0000 (13:45 +0530)]
mips msa vp9 idct 16x16 optimization

average improvement ~4x-6x

Change-Id: I55e95b7f2ba403dff11813958dc7c73a900dd022

9 years agoAllow for H and V intra modes for non-rd mode.
Marco [Thu, 30 Apr 2015 18:39:02 +0000 (11:39 -0700)]
Allow for H and V intra modes for non-rd mode.

For non-rd mode (speed >=5): use mask based on prediction block size, and
(for non-screen content mode) allow for checking horiz and vert intra modes
for blocks sizes < 16x16.

Avg psnr/ssim metrics go up by about ~0.2%.

Only allowing H/V intra on block sizes below 16x16 for now, to keep
encoding time increase very small, and also when allowing H/V on 16x16 blocks,
metrics went down on a few clips which need to be further examined.

Change-Id: I8ae0bc8cb2a964f9709612c76c5661acaab1381e

9 years agovp9_idct_intrin_sse2: cosmetics: reindent
James Zern [Fri, 1 May 2015 22:52:23 +0000 (15:52 -0700)]
vp9_idct_intrin_sse2: cosmetics: reindent

+ fix some whitespace

Change-Id: Id61b739282014288a7e5d3c17a9d6448d9d4cda2

9 years agoMerge "Reduce intra_cost_penalty for BLOCK_8X8"
Yunqing Wang [Fri, 1 May 2015 18:29:38 +0000 (18:29 +0000)]
Merge "Reduce intra_cost_penalty for BLOCK_8X8"

9 years agoMerge "Adjust the vbp early termination threshold slightly"
Yunqing Wang [Fri, 1 May 2015 18:29:24 +0000 (18:29 +0000)]
Merge "Adjust the vbp early termination threshold slightly"

9 years agoFIX: Use correct above/left in read_intra_frame_mode_info
Scott LaVarnway [Fri, 1 May 2015 15:23:47 +0000 (08:23 -0700)]
FIX:  Use correct above/left in read_intra_frame_mode_info

Should be using xd->above_mi and xd->left_mi.

Change-Id: Ifab83512db5491a955a3ed44a2d6e3b25b5ae5a5

9 years agoImage size restriction to rd auto partition search.
paulwilkins [Fri, 1 May 2015 12:45:43 +0000 (13:45 +0100)]
Image size restriction to rd auto partition search.

Impose a limit on the rd auto partition search based on
the image format. Smaller formats require that the search
includes includes a smaller minimum block size.

This change is intended to mitigate the visual impact of
ringing in some problem clips, for smaller image formats.

Change-Id: Ie039e5f599ee079bbef5d272f3e40e2e27d8f97b

9 years agoRemove CONSTRAIN_NEIGHBORING_MIN_MAX.
paulwilkins [Fri, 1 May 2015 10:31:13 +0000 (11:31 +0100)]
Remove CONSTRAIN_NEIGHBORING_MIN_MAX.

Remove one of the auto partition size cases.
This case can behaves badly in some types of animated content
and was only used for the rd encode path. A subsequent patch
will add additional checks to help further improve visual quality.

Change-Id: I0ebd8da3d45ab8501afa45d7959ced8c2d60ee4e

9 years agoAdjust ARF min and max interval.
paulwilkins [Thu, 30 Apr 2015 13:24:28 +0000 (14:24 +0100)]
Adjust ARF min and max interval.

Previously limit on max interval  set to 0.5 seconds.
Though this helped some low frame rate material it
appears to be a bit too aggressive for some 24 and 25 fps
content. This patch relaxes the limit to 0.75 seconds.

The patch also adds a new minimum interval variable
to replace the current hard wired value. This allows us
to impose a limit on the maximum number of primary
arfs per second for high frame rate (e.g. 50 & 60fps)
content. This is to address concerns regarding playback
performance on some platforms if there is a high base
frame rate and very frequent arfs.

Change-Id: I373e8b6b2a8ef522eced6c6d2cceb234ff763fcf

9 years agovp9: RECON_AND_STORE4X4: remove dest offset
James Zern [Sat, 25 Apr 2015 22:59:58 +0000 (15:59 -0700)]
vp9: RECON_AND_STORE4X4: remove dest offset

offsetting by a variable stride prevents instruction reordering,
resulting in poor assembly

Change-Id: Id62d6b3299cdd23f8c44f97b630abf4fea241446

9 years agovp9_idct_intrin_*: RECON_AND_STORE: remove dest offset
James Zern [Sat, 25 Apr 2015 05:33:17 +0000 (22:33 -0700)]
vp9_idct_intrin_*: RECON_AND_STORE: remove dest offset

offsetting by a variable stride prevents instruction reordering,
resulting in poor assembly.
additionally reroll 16x16/32x32 loops to reduce register spill with this
new format

Change-Id: I0635b8ba21ecdb88116e927dbdab53acdf256e11

9 years agoMerge "Remove vp9_idct16x16_10_add_ssse3()"
Yaowu Xu [Thu, 30 Apr 2015 23:13:33 +0000 (23:13 +0000)]
Merge "Remove vp9_idct16x16_10_add_ssse3()"

9 years agoMerge "vp9_decodeframe: simplify compare_tile_buffers"
James Zern [Thu, 30 Apr 2015 23:05:42 +0000 (23:05 +0000)]
Merge "vp9_decodeframe: simplify compare_tile_buffers"

9 years agoAdd some sse2 code for intra prediction.
hkuang [Thu, 30 Apr 2015 22:42:57 +0000 (15:42 -0700)]
Add some sse2 code for intra prediction.

Change-Id: I16c0a62e52dab62837c547345df31e7518620ed4

9 years agoReduce intra_cost_penalty for BLOCK_8X8
Yunqing Wang [Thu, 30 Apr 2015 18:03:06 +0000 (11:03 -0700)]
Reduce intra_cost_penalty for BLOCK_8X8

This patch reduced the BLOCK_8X8's intra_cost_penalty, which
allows 8x8 blocks to conduct intra mode search. Borg test
result(rtc set): 0.077% PSNR gain, 0.228% SSIM gain. No speed
changes.

Change-Id: Icfe90c4f6969de24bda8ecacbd3da50330bf22b2

9 years agoRemove vp9_idct16x16_10_add_ssse3()
Yaowu Xu [Thu, 30 Apr 2015 16:01:49 +0000 (09:01 -0700)]
Remove vp9_idct16x16_10_add_ssse3()

The rotation computation using 2X of cos(pi/16) has a potential to
overflow 32 bit, this commit disable the function to allow further
investigation and optimization.

Change-Id: I4a9803bc71303d459cb1ec5bbd7c4aaf8968e5cf

9 years agoMerge "Improve golden frame refreshing in non-rd mode"
Yunqing Wang [Thu, 30 Apr 2015 15:57:53 +0000 (15:57 +0000)]
Merge "Improve golden frame refreshing in non-rd mode"

9 years agoAdjust the vbp early termination threshold slightly
Yunqing Wang [Mon, 27 Apr 2015 19:40:00 +0000 (12:40 -0700)]
Adjust the vbp early termination threshold slightly

Calculated cpi->vbp_threshold_sad from this frame's dequant value.
The encoding quality and speed didn't change much. Borg test
result: PSNR: -0.002%, SSIM: -0.003%.

Change-Id: I97c9826986f39582f29910d637d08a69c90afdee

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 agovp9_decodeframe: simplify compare_tile_buffers
James Zern [Wed, 22 Apr 2015 05:48:24 +0000 (22:48 -0700)]
vp9_decodeframe: simplify compare_tile_buffers

return the difference between the 2 buffer sizes rather than exactly
-1/0/1.

Change-Id: Idf1ccff7088b31845470bcc71bea5927b0598cc7

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 agoImprove golden frame refreshing in non-rd mode
Yunqing Wang [Fri, 24 Apr 2015 19:12:17 +0000 (12:12 -0700)]
Improve golden frame refreshing in non-rd mode

The default golden frame interval was doubled. After encoding a
frame, the background motion was measured. If the motion was high,
the current frame was set as the golden frame. Currently, the
changes were applied only while aq-mode 3 was on.

Borg tests(rtc set) showed a 0.226% PSNR gain and 0.312% SSIM gain.
No speed changes.

Change-Id: Id1e2793cc5be37e8a9bacec1380af6f36182f9b1

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"