Commit Graph

10041 Commits

Author SHA1 Message Date
Johann
677fb5123e Revert "VP8 for ARMv8 by using NEON intrinsics 10"
This reverts commit c500fc22c1

There is an issue with gcc 4.6 in the Android NDK:
loopfiltersimpleverticaledge_neon.c: In function 'vp8_loop_filter_bvs_neon':
loopfiltersimpleverticaledge_neon.c:176:1: error: insn does not satisfy its constraints:

Change-Id: I95b6509d12f075890308914cc691b813d2e5cd9f
2014-05-06 14:28:00 -07:00
Johann
928ff03889 Revert "VP8 for ARMv8 by using NEON intrinsics 08"
This reverts commit a5d79f43b9

There is an issue with gcc 4.6 in the Android NDK:
loopfilter_neon.c: In function 'vp8_loop_filter_vertical_edge_y_neon':
loopfilter_neon.c:394:1: error: insn does not satisfy its constraints:

Change-Id: I2b8c6ee3fa595c152ac3a5c08dd79bd9770c7b52
2014-05-06 13:20:24 -07:00
Vignesh Venkatasubramanian
e39b9a66a3 webmdec: Fix visual studio warnings.
Fix a couple of visual studio warnings.

Change-Id: I161edf4b37f5ac2defbe6eb5b7e34d219b1f52d9
2014-05-06 11:18:44 -07:00
Vignesh Venkatasubramanian
51a1cbfed1 Merge "third_party/libwebm: pull from upstream" 2014-05-06 11:15:57 -07:00
Alex Converse
75d05d5ed4 Merge "Add an MMX fwht4x4" 2014-05-06 11:12:27 -07:00
Alex Converse
d922c7f1b0 Merge "Add test for 4x4 WHT." 2014-05-06 11:12:23 -07:00
Jingning Han
d289deb04c Merge "SSSE3 implementation of full inverse 8x8 2D-DCT" 2014-05-06 09:17:22 -07:00
Minghai Shang
5504b3c2f1 Merge "[spatial svc] Fix one extra frame count during flush" 2014-05-05 23:22:09 -07:00
Minghai Shang
07ce926107 Merge "[spatial svc] Use VPX_DL_GOOD_QUALITY for vp9_spatial_scalable_encoder" 2014-05-05 23:22:03 -07:00
Minghai Shang
e9f46ebd38 Merge "[spatial svc] No need to code full width and height for non key frame" 2014-05-05 23:21:53 -07:00
Dmitry Kovalev
3af5eab2c1 Merge "Cleaning up vp9_full_range_search_c() function." 2014-05-05 22:01:02 -07:00
Dmitry Kovalev
e8bbb3d9db Making vp9_get_sse_sum_{8x8, 16x16} static.
Change-Id: Ifb7937c977308c682986f0ce9645a0807d2aa46a
2014-05-05 19:12:38 -07:00
Dmitry Kovalev
ec234eb5e1 Merge "Moving costs from MACROBLOCK to VP9_COMP." 2014-05-05 19:10:25 -07:00
Dmitry Kovalev
a4533957b0 Merge "Cleaning up vp9_variance.c" 2014-05-05 19:09:57 -07:00
Yunqing Wang
a3c5a79426 Clean up full-pixel search calling code
Removed repetitive code.

Change-Id: Ib6adb6eaf7d4e3feeabb71651f4cc447974a925d
2014-05-05 17:44:13 -07:00
Adrian Grange
6b4efa493a Merge changes Ibfa447fe,I771809ba
* changes:
  Fix generic-gnu target build
  Fix rounding in ARNR calculation
2014-05-05 15:41:10 -07:00
Alex Converse
89fbf3de50 Add an MMX fwht4x4
7% faster encoding a desktop lossless at RT speed 4.

Change-Id: I41627f5b737752616b6512bb91a36ec45995bf64
2014-05-05 15:10:48 -07:00
Alex Converse
9f9f87c7f6 Add test for 4x4 WHT.
Change-Id: I97ba3152f9b44d23a74c6144809142810d07e368
2014-05-05 15:10:44 -07:00
Vignesh Venkatasubramanian
c3378771b3 third_party/libwebm: pull from upstream
Pulling libwebm from upstream

Changes from upstream:
249629d make Mkv(Reader|Writer)(FILE*) explicit
7f3cda4 mkvparser: fix a bunch of windows warnings
5c06178 Merge "clang-format on mkvparser.[ch]pp"
4df111e clang-format on mkvparser.[ch]pp
7b24501 clang-format re-run.
c6767b9 Change AlignTrailingComments to false in .clang-format
9097a06 Merge "muxer: Reject file if TrackType is never specified"
eddf974 Merge "clang-format on mkvmuxertypes.hpp and webmids.hpp"
def325c muxer: Reject file if TrackType is never specified
41f869c Merge "clang-format on webvttparser.(cc|h)"
fd0be37 clang-format on webvttparser.(cc|h)
207d8a1 Merge "clang-format on mkvmuxerutil.[ch]pp"
02429eb Merge "clang-format on mkvwriter.[ch]pp"
0cf7b1b Merge "clang-format on mkvreader.[ch]pp"
2e80fed Merge "clang-format on sample.cpp"
3402e12 Merge "clang-format on sample_muxer.cpp"
1a685db Merge "clang-format on sample_muxer_metadata.(cc|h)"
6634c7f Merge "clang-format on vttreader.cc"
7566004 Merge "clang-format on vttdemux.cc"
9915b84 clang-format on mkvreader.[ch]pp
7437254 clang-format on mkvmuxertypes.hpp and webmids.hpp
0d5a98c clang-format on sample_muxer.cpp
e3485c9 clang-format on vttdemux.cc
46cc823 clang-format on dumpvtt.cc
5218bd2 clang-format on vttreader.cc
1a0130d clang-format on sample_muxer_metadata.(cc|h)
867f189 clang-format on sample.cpp
4c7bec5 clang-format on mkvwriter.[ch]pp
9ead078 clang-format on mkvmuxerutil.[ch]pp
fb6b6e6 clang-format on mkvmuxer.[ch]pp
ce77592 Update .clang-format to allow short functions in one line
0a24fe4 Merge "Add support for DateUTC and DefaultDuration in MKV Muxer."
11d5b66 Merge "Add .clang-format"
a1a3b14 Add .clang-format
0fcec38 Add support for DateUTC and DefaultDuration in MKV Muxer.

Change-Id: Ia0ed161ffc3d63c2eba8ed145707ffe543617976
2014-05-05 14:03:06 -07:00
Johann
34843e9784 Merge "VP8 for ARMv8 by using NEON intrinsics 16" 2014-05-05 13:09:43 -07:00
Johann
ad42b09f2f Merge "VP8 for ARMv8 by using NEON intrinsics 15" 2014-05-05 13:09:12 -07:00
Adrian Grange
a7657056b6 Mark VP8E_SET_ARNR_TYPE as being deprecated
In a future release we plan to remove the
option of setting the ARNR filter type.

This patch marks this control as being deprecated
as advance warning that it will be removed from
the API at some point.

Change-Id: I5dcca804b44c7c93b1a10da7d69d19ba6061869c
2014-05-05 11:40:46 -07:00
Tom Finegan
f386d3960d Add test for postproc example.
Change-Id: I3446d2ebc23e6f1ed650dd5c82648041febe3c4d
2014-05-05 11:20:26 -07:00
Adrian Grange
93a8a1eb8c Fix generic-gnu target build
Added macro to conditionally compile some of the
post-processing functions only when CONFIG_POSTPROC
is defined.

This was causing the build for the generic-gnu target
to fail.

Change-Id: Ibfa447feceb7a0528135025f105be48f97e9965c
2014-05-05 11:00:43 -07:00
Adrian Grange
928b34e895 Fix rounding in ARNR calculation
The rounding of the ARNR filter output prior to
normalization by the filter strength was incorrect
when strength = 0.

In this case 1 << (strength - 1) would not create the
required rounding of 0, rather it would outrange. This
patch fixes this issue.

Change-Id: I771809ba34d6052b17d34c870ea11ff67b418dab
2014-05-05 11:00:43 -07:00
Jingning Han
52ae97b6aa SSSE3 implementation of full inverse 8x8 2D-DCT
This commit enables SSSE3 version full inverse 8x8 2D-DCT and
reconstruction. It makes the runtime of vp9_idct8x8_64_add down
from 256 cycles (SSE2) to 246 cycles.

Change-Id: I0600feac894d6a443a3c9d18daf34156d4e225c3
2014-05-05 10:49:27 -07:00
Johann
1b7291d52c Merge "VP8 for ARMv8 by using NEON intrinsics 14" 2014-05-05 07:08:08 -07:00
Johann
a7355f3bbb Merge changes Iaf7d6b0a,Iece0bf56
* changes:
  Use INLINE and include vpx_config.h instead of plain 'inline'
  Use vreinterpret instead of casting neon vector types
2014-05-05 05:36:54 -07:00
Scott LaVarnway
b259f52d4b Merge "Remove struct params from vp8_denoiser_filter" 2014-05-05 05:31:24 -07:00
Martin Storsjo
65f13afd7d Fix building for arm with Visual Studio 2013
The microsoft build tools explicitly disallow building for arm in
the "desktop" target configuration; one has to target "Windows
Store" apps (aka WinRT/Metro) or Windows Phone. In Visual Studio
2012, one could just pick the v110_wp80 toolset which made the
vcxproj files buildable. In Visual Studio 2013, picking the v120_wp81
toolset isn't enough - one has to configure the vcxproj files
as an "AppContainerApplication". This has the implication that
you can't just build a plain .exe (such as the examples) - an .exe
project would need to have an AppxManifest file. Therefore we can
only build the library itself.

If loaded into Visual Studio for Windows (the Windows Store/Phone
version of Visual Studio, not the Desktop one), the obj_int_extract
project is omitted since it's treated as incompatible. Building
from the command line with msbuild works fine though.

The armv7-win32-vs12 target was added as part of a638bdf4 even
though actual use of it hadn't been tested.

Change-Id: Iee8088252cf790317aeb6b417d29058225f1f629
2014-05-05 13:26:37 +03:00
Martin Storsjo
20babf6d9d Don't try to use getenv on windows phone/rt
The getenv function doesn't exist there. In Visual Studio 2012,
the function still existed in the link libraries even though
it was hidden in the headers, but in the 2013 version it has been
removed from the link libraries as well.

Change-Id: Iea6289a698fa1788e906f5aabb6fddda3675815b
2014-05-04 23:47:39 +03:00
Martin Storsjo
7afed9a1b6 Use INLINE and include vpx_config.h instead of plain 'inline'
This fixes compilation with MSVC.

Change-Id: Iaf7d6b0a0134968a6addf315fde6d852f298db8c
2014-05-04 22:42:13 +03:00
Martin Storsjo
dfb8fc917a Use vreinterpret instead of casting neon vector types
MSVC doesn't support casting neon vector types but requires using
vreinterpret.

Change-Id: Iece0bf5632567efd7f37f527abea38afeab4926d
2014-05-04 22:40:57 +03:00
James Yu
4ea9cf3e2d VP8 for ARMv8 by using NEON intrinsics 16
Add variance_neon.c
- vp8_variance16x16_neon
- vp8_variance16x8_neon
- vp8_variance8x16_neon
- vp8_variance8x8_neon

Change-Id: Idfb9c96134a1c6a696a98ce68b4f7ed593a00660
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 19:07:40 -07:00
James Yu
727af7cebe VP8 for ARMv8 by using NEON intrinsics 15
Add idct_dequant_0_2x_neon.c
- idct_dequant_0_2x_neon

Change-Id: I8e129172ef1b2517cf72ff267788921f1a792586
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 19:07:33 -07:00
James Yu
08e38f06db VP8 for ARMv8 by using NEON intrinsics 14
Add sixtappredict_neon.c
- vp8_sixtap_predict16x16_neon
- vp8_sixtap_predict8x8_neon
- vp8_sixtap_predict8x4_neon
- vp8_sixtap_predict4x4_neon

Change-Id: I3b02fce48ae2e6c6099041ba5ddd7b090f1463b9
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 19:07:12 -07:00
James Yu
18e9caad47 VP8 for ARMv8 by using NEON intrinsics 13
Add shortidct4x4llm_neon.c
- vp8_short_idct4x4llm_neon

Change-Id: I5a734bbffca8dacf8633c2b0ff07b98aa2f438ba
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 19:07:05 -07:00
Johann
140262d39f Merge "VP8 for ARMv8 by using NEON intrinsics 12" 2014-05-03 19:06:55 -07:00
Johann
0b12a40296 Merge "VP8 for ARMv8 by using NEON intrinsics 11" 2014-05-03 19:05:26 -07:00
Johann
8c7e798c9b Merge "VP8 for ARMv8 by using NEON intrinsics 10" 2014-05-03 19:04:57 -07:00
Johann
c1ba686064 Merge "VP8 for ARMv8 by using NEON intrinsics 09" 2014-05-03 19:04:18 -07:00
Johann
1b91fa8ac8 Merge "vp9 register checks only apply to vp9" 2014-05-03 19:03:39 -07:00
James Yu
feaf766bd0 VP8 for ARMv8 by using NEON intrinsics 12
Add sad_neon.c
- vp8_sad16x16_neon
- vp8_sad16x8_neon
- vp8_sad8x8_neon
- vp8_sad8x16_neon
- vp8_sad4x4_neon

Change-Id: I08eaae49ec03fb91b394354660a5df0367cea311
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 04:54:39 -07:00
James Yu
4a8336fa9d VP8 for ARMv8 by using NEON intrinsics 11
Add mbloopfilter_neon.c
- vp8_mbloop_filter_horizontal_edge_y_neon
- vp8_mbloop_filter_horizontal_edge_uv_neon
- vp8_mbloop_filter_vertical_edge_y_neon
- vp8_mbloop_filter_vertical_edge_uv_neon

Change-Id: Ia9084e0892d4d49412d9cf2b165a0f719f2382d7
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 04:54:33 -07:00
Johann
1d65b3be2a Merge "Remove asm_offsets dependency in quantize_b_ssse3" 2014-05-03 04:21:16 -07:00
James Yu
c500fc22c1 VP8 for ARMv8 by using NEON intrinsics 10
Add loopfiltersimpleverticaledge_neon.c
- vp8_loop_filter_bvs_neon
- vp8_loop_filter_mbvs_neon

Change-Id: I7cf0a161ad4ae37c881b94cc0122f895d3baae79
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 04:11:00 -07:00
James Yu
55c95f2d2c VP8 for ARMv8 by using NEON intrinsics 09
Add loopfiltersimplehorizontaledge_neon.c
- vp8_loop_filter_bhs_neon
- vp8_loop_filter_mbhs_neon

Change-Id: I77f9721b20585da8bf3869a3850ff0ae4b4bfeea
Signed-off-by: James Yu <james.yu@linaro.org>
2014-05-03 04:10:45 -07:00
Johann
cf2262c44c Merge "VP8 for ARMv8 by using NEON intrinsics 08" 2014-05-03 04:10:18 -07:00
Johann
fe437bc8f8 Merge "VP8 for ARMv8 by using NEON intrinsics 07" 2014-05-03 04:08:54 -07:00
Minghai Shang
0affa0eae5 [spatial svc] Fix one extra frame count during flush
Change-Id: Ia096aafa8aca4f9e58450c4b861393d8f0a15afe
2014-05-02 12:09:13 -07:00