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
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
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"
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"
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"
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
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
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
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
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
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
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
James Zern [Fri, 15 May 2015 23:34:06 +0000 (23:34 +0000)]
Merge "tests: add test_intra_pred_speed"
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
Marco [Fri, 15 May 2015 21:28:59 +0000 (21:28 +0000)]
Merge "Change 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
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
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
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
James Zern [Fri, 15 May 2015 03:18:45 +0000 (20:18 -0700)]
vp9: correct some function signatures
silences missing prototype warnings
Change-Id: Idaf68d83d2cb03847f3ee002c4d00c2ac79da604
James Zern [Fri, 15 May 2015 02:55:06 +0000 (19:55 -0700)]
vp9_variance_sse2: sync function signatures
+ include vp9_rtcd.h
silences missing prototype warnings
Change-Id: I77902f07a454029baad4fe5fe6fc37c65644e6f7
James Zern [Fri, 15 May 2015 03:22:50 +0000 (20:22 -0700)]
vp9/encoder: make some functions static
silences missing prototype warnings
Change-Id: I3338fcaa67b5dcdf6bf237e8b374db3befd18753
James Zern [Fri, 15 May 2015 02:56:51 +0000 (19:56 -0700)]
vp9_dct_sse2: make some functions static
silences missing prototype warnings
Change-Id: I773b6a6b5bd7c57db18c3b17c519534f80e131de
James Zern [Fri, 15 May 2015 02:49:53 +0000 (19:49 -0700)]
vp9_decodeframe.c: make a function static
silences a missing declaration warning
Change-Id: I2f49ebca9ba7a47f3c48f5fe919b90cd4114a9bc
Adrian Grange [Fri, 15 May 2015 17:36:41 +0000 (17:36 +0000)]
Merge "Fix illegal memory access when stream starts w/ invisible frame."
James Zern [Fri, 15 May 2015 17:19:49 +0000 (17:19 +0000)]
Merge changes from topic 'missing-proto'
* changes:
vp8/rdopt.h+onyx_int.h: add some missing prototypes
vp8: add some missing includes
vp8: make some functions static
vp8/common/variance*: add vp8_rtcd include
vp8_copy32xn: sync function signature
James Zern [Fri, 15 May 2015 17:17:12 +0000 (17:17 +0000)]
Merge changes from topic 'missing-proto'
* changes:
sad*_avx2.c: sync function signatures
vpx_scale: add missing rtcd + vpx_scale includes
James Zern [Fri, 15 May 2015 17:16:51 +0000 (17:16 +0000)]
Merge changes from topic 'missing-proto'
* changes:
fdct8x8_test: move functions to an anonymous namespace
md5_utils.c: make a function static
vpx_config.c: add vpx_codec include
Frank Galligan [Fri, 15 May 2015 15:20:37 +0000 (15:20 +0000)]
Merge "Move mc_buf to cut down size of MACROBLOCKD."
paulwilkins [Fri, 15 May 2015 09:17:17 +0000 (09:17 +0000)]
Merge "Revert "Skip the last frame update for some frame repeats.""
James Zern [Fri, 15 May 2015 03:31:56 +0000 (20:31 -0700)]
vp8/rdopt.h+onyx_int.h: add some missing prototypes
silences missing prototype warnings
Change-Id: Icd477e37b502205d0a60e7389e51b1ba17d8888e
James Zern [Fri, 15 May 2015 03:27:59 +0000 (20:27 -0700)]
vp8: add some missing includes
silences missing prototype warnings
Change-Id: Ib62e4743532b871e63bc99732875fff20501b8ac
James Zern [Fri, 15 May 2015 02:59:32 +0000 (19:59 -0700)]
vp8: make some functions static
silences missing prototype warnings
Change-Id: I9f24a3214c832c982ca0dc5a032316eba48472ff
James Zern [Fri, 15 May 2015 02:47:00 +0000 (19:47 -0700)]
vp8/common/variance*: add vp8_rtcd include
silences missing prototype warnings
Change-Id: I5ca198b56a5ff0cf5b93c89957526f243c04e9c8
James Zern [Fri, 15 May 2015 02:41:13 +0000 (19:41 -0700)]
vp8_copy32xn: sync function signature
+ include vp8_rtcd.h in copy_c.c
silences missing prototype warnings
Change-Id: Iecc279c695b08a26b231dedb41e3b84c551703f3
James Zern [Fri, 15 May 2015 02:52:43 +0000 (19:52 -0700)]
sad*_avx2.c: sync function signatures
+ include vpx_dsp_rtcd.h
silences missing prototype warnings
Change-Id: Ifa1780bcf72b1fa2b153025d0d78d91ad38774c3
James Zern [Fri, 15 May 2015 02:50:56 +0000 (19:50 -0700)]
vpx_scale: add missing rtcd + vpx_scale includes
silences missing prototype warnings
Change-Id: I33320f66c789b8c5c51d69f9dc0e017f9e06b0d0
James Zern [Fri, 15 May 2015 02:38:34 +0000 (19:38 -0700)]
fdct8x8_test: move functions to an anonymous namespace
silences missing declaration warnings
Change-Id: I9486c13c973df3d25fcdc2c3de9a0da783ce8fd6
James Zern [Fri, 15 May 2015 02:37:27 +0000 (19:37 -0700)]
md5_utils.c: make a function static
silences a missing prototype warning
Change-Id: I982c9c70e0e9f94a5201559300cadb8bd22441f9
James Zern [Fri, 15 May 2015 02:34:53 +0000 (19:34 -0700)]
vpx_config.c: add vpx_codec include
silences a missing prototype warning
Change-Id: I31a11c8390ae58e9a99ecc7cdf2a36334fac3f65
Frank Galligan [Wed, 29 Apr 2015 23:54:37 +0000 (16:54 -0700)]
Move mc_buf to cut down size of MACROBLOCKD.
Change-Id: Icea64b9e5632b41aaa7cd7018c501d6add9b7a7f
James Zern [Tue, 12 May 2015 02:36:59 +0000 (19:36 -0700)]
tests: add test_intra_pred_speed
useful for speed testing / verifying individual function optimizations;
currently tests non-high-bitdepth VP9 intra predictors
Change-Id: Ibd247765e43a31894697d43f1d39d312e0ba2090
Adrian Grange [Thu, 14 May 2015 22:44:50 +0000 (15:44 -0700)]
Fix illegal memory access when stream starts w/ invisible frame.
Add a check to make sure we have a decoded frame available
before copying its 'corrupt' flag.
(Originally submitted to the old repository by Alexander Voronov
as: https://gerrit.chromium.org/gerrit/#/c/74305/).
Change-Id: Iceb4686c785afb437b668015bf8818b18d60e0ce
Tom Finegan [Thu, 14 May 2015 20:47:42 +0000 (20:47 +0000)]
Merge "Remove BUILD_LIBVPX_SO variable from the build system."
Tom Finegan [Thu, 14 May 2015 19:08:05 +0000 (19:08 +0000)]
Merge "Remove the BUILD_LIBVPX variable from the build system."
Tom Finegan [Thu, 14 May 2015 18:20:34 +0000 (11:20 -0700)]
Remove BUILD_LIBVPX_SO variable from the build system.
Was just an additional layer of indirection for CONFIG_SHARED, so
use CONFIG_SHARED directly.
Change-Id: I7c022b9f926a63c2c5884def5f03dfd648329afc
Tom Finegan [Thu, 14 May 2015 17:46:44 +0000 (10:46 -0700)]
Remove the BUILD_LIBVPX variable from the build system.
Replace it with it's value (yes), which is constant.
Change-Id: Ifb0c0408a53ecadf81156da6a64fa583b2ada746
paulwilkins [Thu, 14 May 2015 16:16:36 +0000 (17:16 +0100)]
Revert "Skip the last frame update for some frame repeats."
Testing on another rate control patch reveals that in some
situations, where the encoder is flipping in and out of arf
mode, we get an encoder decoder mismatch.
Whilst it is still not clear why, skipping the last buffer
update seems to trigger the problem. Until I can establish
why, or if there is another underlying cause, I am reverting
this change.
This reverts commit
e5112b3ae3352c4c55fb31235305f3f80f4b8f7e.
Change-Id: I315c5200414de89458015823344b7367e9dd75ba
Johann [Wed, 13 May 2015 19:47:23 +0000 (19:47 +0000)]
Merge "Relocate memory operations for common code"
Johann [Tue, 12 May 2015 02:09:22 +0000 (19:09 -0700)]
Relocate memory operations for common code
With the sad functions, and hopefully the variance functions soon,
moving to the vpx_dsp location, place the defines used in the
reference C code in a common location.
Change-Id: I4c8ce7778eb38a0a3ee674d2f1c488eda01cfeca
Tom Finegan [Wed, 13 May 2015 18:16:09 +0000 (11:16 -0700)]
Avoid failed include when Makefile is processed with no target.
Basically just a warning, but disconcerting nonetheless. Removes this
output from the build:
Makefile:59: -x86_64-darwin13-gcc.mk: No such file or directory
Change-Id: Ibb379506352b2f613ef4a7b1ac47e9c95d0d1580
Tom Finegan [Wed, 13 May 2015 17:05:45 +0000 (17:05 +0000)]
Merge "Remove claims of universal target support from the build system."
Parag Salasakar [Wed, 13 May 2015 04:36:32 +0000 (04:36 +0000)]
Merge "mips msa vp9 idct 8x8 optimization"
Tom Finegan [Tue, 12 May 2015 22:33:40 +0000 (15:33 -0700)]
Remove claims of universal target support from the build system.
These targets no longer build (PPC support was removed from
libvpx). Remove the dead code and misleading help output.
BUG=https://code.google.com/p/webm/issues/detail?id=997
Change-Id: Ib35614806adeae970f3821da0d8dbcc54ab8d868
Yunqing Wang [Tue, 12 May 2015 23:33:30 +0000 (23:33 +0000)]
Merge "Remove unneeded variable declaration"
Yaowu Xu [Tue, 12 May 2015 23:20:35 +0000 (23:20 +0000)]
Merge "Protect new metric computation with use_highbitdepth flag"
Yaowu Xu [Tue, 12 May 2015 22:02:43 +0000 (15:02 -0700)]
Protect new metric computation with use_highbitdepth flag
The computation of new metrics is not supported yet in highbitdepth
mode. This commit adds protection to make sure the computation is
done only when highbitdepth is not on. This protection shall be
revised when support of highbitdpeth computation is added.
This resolves the encoder crash when configured with both
--enable-internal-stats
--enable-vp9-highbitdepth
Change-Id: Id9f4bcc4fa26d9ca0e9eabade83f3f88a5b212e6
Yunqing Wang [Tue, 12 May 2015 21:36:46 +0000 (14:36 -0700)]
Remove unneeded variable declaration
This patch fixed the following warning:
src\third_party\libvpx\source\libvpx\vp9\encoder\vp9_pickmode.c(1607) :
warning C6246: Local declaration of 'this_mode' hides declaration of the
same name in outer scope.
Change-Id: I1d93c4a47a13cb13089fec5bd61e8b58e6cd8d58
James Zern [Tue, 12 May 2015 21:10:42 +0000 (21:10 +0000)]
Merge "libs.mk: simplify test_libvpx target"
James Zern [Tue, 12 May 2015 19:02:05 +0000 (19:02 +0000)]
Merge changes from topic 'missing-proto'
* changes:
vpxenc: make some functions static
vpxdec: make some functions static
tools_common.h: fix get_vpx_decoder_count() proto
tools_common.h: fix get_vpx_encoder_count() proto
tools_common.h: fix usage_exit() prototype
Johann [Tue, 12 May 2015 18:44:24 +0000 (18:44 +0000)]
Merge "Remove reference to compatibility layer"
Adrian Grange [Tue, 12 May 2015 17:48:14 +0000 (17:48 +0000)]
Merge "Recompute tile params on frame resize"
Johann [Tue, 12 May 2015 17:40:13 +0000 (10:40 -0700)]
Remove reference to compatibility layer
The compatibility layer was removed before the 1.4.0 release.
Change-Id: I268513ee9b3a2640ec33c4a25a5c5614fee7b3b2
James Zern [Sat, 9 May 2015 17:42:58 +0000 (10:42 -0700)]
vpxenc: make some functions static
silences missing-prototype warnings
Change-Id: I641a61b21f9de135e59e3769a2063d5a94f34746
James Zern [Sat, 9 May 2015 17:42:31 +0000 (10:42 -0700)]
vpxdec: make some functions static
silences missing-prototype warnings
Change-Id: I080d2a24eeb6faa8c160683cc1fbf30d3b0b49e5
James Zern [Sat, 9 May 2015 17:41:54 +0000 (10:41 -0700)]
tools_common.h: fix get_vpx_decoder_count() proto
silences a missing-prototype warning
Change-Id: I99f8b4a9b7df836208e93170159733c5b5c2d881
James Zern [Sat, 9 May 2015 17:40:51 +0000 (10:40 -0700)]
tools_common.h: fix get_vpx_encoder_count() proto
silences a missing-prototype warning
Change-Id: Icf5c7f1f3e8ae9792276068fb3c0fd04b40fc7ad
James Zern [Sat, 9 May 2015 17:33:26 +0000 (10:33 -0700)]
tools_common.h: fix usage_exit() prototype
+ the definitions in the examples
silences a missing-prototype warning
Change-Id: I7c064cacd6d2073a6107de6c3e2cc46ef8a68411
James Zern [Tue, 12 May 2015 02:04:48 +0000 (19:04 -0700)]
libs.mk: simplify test_libvpx target
rename LIBVPX_TEST_BINS to LIBVPX_TEST_BIN and remove foreach usage.
this was a leftover from having multiple targets with their own (single)
object list; the use of LIBVPX_TEST_OBJS so widely makes extending these
loops difficult.
Change-Id: I61bda1b91acb43145609f04b8fe6e45ec4483e22
James Zern [Mon, 11 May 2015 23:48:58 +0000 (23:48 +0000)]
Merge "build_intra_predictors*: reduce above_data size"
Adrian Grange [Mon, 11 May 2015 22:47:48 +0000 (22:47 +0000)]
Merge "Reduce border extension by 1 line"
Adrian Grange [Mon, 11 May 2015 22:45:26 +0000 (15:45 -0700)]
Recompute tile params on frame resize
When the frame size changes we must recompute details
of the tile dimensions.
Change-Id: Ie519bd6da47b5cd43933c0bcfc0f2429bcb01986
Jingning Han [Mon, 11 May 2015 19:11:55 +0000 (19:11 +0000)]
Merge "Sort variables dependency in read_uncompressed_header"
Jingning Han [Mon, 11 May 2015 17:05:58 +0000 (10:05 -0700)]
Sort variables dependency in read_uncompressed_header
Remove a few repeated data structure reads from
read_uncompressed_header.
Change-Id: I6eb741b39f9415ad0aa4631dfbf4a1ace4eba56a
Marco [Mon, 11 May 2015 16:38:02 +0000 (09:38 -0700)]
Fix rate control issue with layers and aq-mode=3.
When aq-mode=3 is enabled, only for base layer frames should the
qp of the frame incorporate the segment delta-qp.
This was causing more rate mismatch for the enhancement layer frames
when running temporal layers with aq-mode=3 on.
Change-Id: I1c5e69d1ef8a51188af8696753c17fd8f67699b3
paulwilkins [Mon, 11 May 2015 12:28:44 +0000 (12:28 +0000)]
Merge "Skip the last frame update for some frame repeats."
James Zern [Sat, 9 May 2015 03:17:20 +0000 (20:17 -0700)]
build_intra_predictors*: reduce above_data size
currently this needs to be 2x (NEED_ABOVERIGHT) the size of the largest
block (32) + 1 (for above_left). reduce the buffer size from 128 + 16
(alignment) to 64 + 16.
Change-Id: Idaca1806c7e1214e9437de24e15edc2ebf18f95d
James Zern [Sat, 9 May 2015 00:53:54 +0000 (00:53 +0000)]
Merge "build_intra_predictors*: reduce left_col size"
hkuang [Fri, 8 May 2015 22:42:50 +0000 (15:42 -0700)]
Fix clang ioc warning due to NULL mi pointer.
The warning only happens in VP9 encoder's first pass due to src_mi
is not set up yet. But it will not fail the encoder as left_mi and
above_mi are not used in the first_pass and they will be set up again
in the second pass.
Change-Id: I0713b4660d71e229e196654cb0970ba6b1574f28
Johann Koenig [Fri, 8 May 2015 18:56:20 +0000 (18:56 +0000)]
Merge "Fix ndk build."
hkuang [Fri, 8 May 2015 17:26:29 +0000 (17:26 +0000)]
Merge "Add more sse2 code for intra prediction."
paulwilkins [Fri, 1 May 2015 15:04:52 +0000 (16:04 +0100)]
Skip the last frame update for some frame repeats.
Where a frame appears to be a repeat of an earlier
frame or frame buffer, but the first pass code
does not anticipate this (usually because it is matching
the GF or ARF buffer not the last frame buffer), do not
update the last frame buffer.
This helps ensure that the content of the last frame buffer
is kept "different" where possible, and not updated to
match the GF or ARF. This is particularly helpful in some
animated sequences where there are groups of repeating
frames. Here it has quite a big impact. However, in most
of our standard test clips it has little or no impact.
Change-Id: I77332ee1a69f9ffc0c6080bfeb811c43fd8828e6
Parag Salasakar [Fri, 8 May 2015 06:53:27 +0000 (12:23 +0530)]
mips msa vp9 idct 8x8 optimization
average improvement ~4x-6x
Change-Id: I5edf713721b9e24c7e0ce2e69d8fc3ecab625d91
Parag Salasakar [Fri, 8 May 2015 04:27:43 +0000 (04:27 +0000)]
Merge "mips msa vp9 idct 32x32 optimization"
Frank Galligan [Fri, 8 May 2015 01:22:29 +0000 (18:22 -0700)]
Fix ndk build.
Android.mk should depend on vpx_dsp_rtcd.h
Change-Id: Ib614af195a9574fd849c28b695f9f4b3b2bd125c
Johann [Thu, 7 May 2015 23:32:17 +0000 (23:32 +0000)]
Merge "Remove only remaining uses of 'fast_unaligned'"
James Zern [Thu, 7 May 2015 23:16:42 +0000 (16:16 -0700)]
build_intra_predictors*: reduce left_col size
this should only need to be the size of the largest block, i.e., 32, not
64.
Change-Id: Ib8cb2424771fdd2a64c55379597248b2722a5ceb
Johann [Thu, 7 May 2015 21:26:25 +0000 (14:26 -0700)]
Remove only remaining uses of 'fast_unaligned'
Use memcpy instead of casting.
Change-Id: Ieca725cc628883985bde23c7d742af8781c5dbb5
James Zern [Sat, 2 May 2015 20:24:16 +0000 (13:24 -0700)]
replace DECLARE_ALIGNED_ARRAY w/DECLARE_ALIGNED
this macro was used inconsistently and only differs in behavior from
DECLARE_ALIGNED when an alignment attribute is unavailable. this macro
is used with calls to assembly, while generic c-code doesn't rely on it,
so in a c-only build without an alignment attribute the code will
function as expected.
Change-Id: Ie9d06d4028c0de17c63b3a27e6c1b0491cc4ea79
Johann [Thu, 7 May 2015 18:33:05 +0000 (18:33 +0000)]
Merge "Move shared SAD code to vpx_dsp"
hkuang [Thu, 7 May 2015 15:51:10 +0000 (15:51 +0000)]
Merge "Remove an unnecessary check."
Marco [Thu, 7 May 2015 15:40:10 +0000 (15:40 +0000)]
Merge "Remvoe EIGHTTAP_SHARP filter check for non-rd mode."
paulwilkins [Thu, 7 May 2015 14:12:13 +0000 (14:12 +0000)]
Merge "Image size restriction to rd auto partition search."
Parag Salasakar [Wed, 6 May 2015 07:07:38 +0000 (12:37 +0530)]
mips msa vp9 idct 32x32 optimization
average improvement ~4x-6x
Change-Id: Idaba7e49fbd7f388caee0d73773ccf6e4807ef17
hkuang [Tue, 5 May 2015 22:21:28 +0000 (15:21 -0700)]
Add more sse2 code for intra prediction.
vp9_dc_left_predictor_16x16
vp9_dc_top_predictor_32x32
vp9_dc_left_predictor_32x32
vp9_dc_128_predictor_32x32
Change-Id: Ib9861deefd01c3527235b92ff6b3d571ef6b4bc6
Marco [Mon, 4 May 2015 23:54:12 +0000 (16:54 -0700)]
Remvoe EIGHTTAP_SHARP filter check for non-rd mode.
Using EIGHTTAP and EIGHTTAP_SMOOTH seem sufficient.
Hard to see any visual gain from allowing EIGHTTAP_SHARP, and it is
rarely selected.
PSNR/SSIM metrics go up by ~0.18/0.14%.
Change-Id: I96fa0d98f9321b913e3ebcd464d4ff3c63018791
Johann [Fri, 17 Apr 2015 20:11:38 +0000 (16:11 -0400)]
Move shared SAD code to vpx_dsp
Create a new component, vpx_dsp, for code that can be shared
between codecs. Move the SAD code into the component.
This reduces the size of vpxenc/dec by 36k on x86_64 builds.
Change-Id: I73f837ddaecac6b350bf757af0cfe19c4ab9327a
Adrian Grange [Wed, 6 May 2015 21:44:24 +0000 (14:44 -0700)]
Reduce border extension by 1 line
The code was using one row too many.
Change-Id: Ie0c05d02c22ae3d0d13d3b6565c40de3bc4fa17a
hkuang [Wed, 6 May 2015 21:15:00 +0000 (14:15 -0700)]
Remove an unnecessary check.
Change-Id: Id0f224ac4667dd173363b0f05711678448291d4e
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