webm/libvpx.git
30 hours agoMerge "resolve visual studio warnings around initializers" master
Jim Bankoski [Fri, 19 Dec 2014 23:18:04 +0000 (15:18 -0800)]
Merge "resolve visual studio warnings around initializers"

32 hours agoresolve visual studio warnings around initializers 28/73328/5
Jim Bankoski [Fri, 19 Dec 2014 15:50:54 +0000 (07:50 -0800)]
resolve visual studio warnings around initializers

Change-Id: Id2ad4fb24242f7ca8fa7a152f0889fded4113613

32 hours agoMerge "vp9_ethread: add the multi-threaded encoder unit tests"
Yunqing Wang [Fri, 19 Dec 2014 20:33:27 +0000 (12:33 -0800)]
Merge "vp9_ethread: add the multi-threaded encoder unit tests"

33 hours agoMerge "vpxdec: ignore GET_FRAME_CORRUPTED error w/--keep-going"
James Zern [Fri, 19 Dec 2014 19:51:19 +0000 (11:51 -0800)]
Merge "vpxdec: ignore GET_FRAME_CORRUPTED error w/--keep-going"

34 hours agoMerge "Add a guard on intra mode skip control for RTC mode"
Jingning Han [Fri, 19 Dec 2014 19:03:00 +0000 (11:03 -0800)]
Merge "Add a guard on intra mode skip control for RTC mode"

34 hours agoMerge "Remove ARF mode entries from THR_MODES array in non-RD mode"
Jingning Han [Fri, 19 Dec 2014 19:02:51 +0000 (11:02 -0800)]
Merge "Remove ARF mode entries from THR_MODES array in non-RD mode"

34 hours agoMerge "Rework mode search threshold update for RTC coding mode"
Jingning Han [Fri, 19 Dec 2014 19:02:40 +0000 (11:02 -0800)]
Merge "Rework mode search threshold update for RTC coding mode"

34 hours agoMerge "Properly store the tx_size of selected intra mode"
Jingning Han [Fri, 19 Dec 2014 19:02:37 +0000 (11:02 -0800)]
Merge "Properly store the tx_size of selected intra mode"

34 hours agoMerge "Fix including test file twice."
Frank Galligan [Fri, 19 Dec 2014 18:31:30 +0000 (10:31 -0800)]
Merge "Fix including test file twice."

37 hours agoMerge "Fix encode perf test"
Frank Galligan [Fri, 19 Dec 2014 16:11:36 +0000 (08:11 -0800)]
Merge "Fix encode perf test"

38 hours agoRevert "Removal of legacy zbin_extra / zbin_oq_value." 26/73326/1
Paul Wilkins [Fri, 19 Dec 2014 15:02:58 +0000 (15:02 +0000)]
Revert "Removal of legacy zbin_extra / zbin_oq_value."

This reverts commit e9b586e21bb899e247346e82bccf5afb42604910.

Change-Id: I5b36e6727da6c05278d97e2c37b80c109f79bed4

41 hours agoMerge "Removal of legacy zbin_extra / zbin_oq_value."
Paul Wilkins [Fri, 19 Dec 2014 11:37:02 +0000 (03:37 -0800)]
Merge "Removal of legacy zbin_extra / zbin_oq_value."

2 days agoMerge "make vp9 encoder static initializers thread safe"
James Zern [Fri, 19 Dec 2014 02:48:30 +0000 (18:48 -0800)]
Merge "make vp9 encoder static initializers thread safe"

2 days agoMerge "tests/examples.sh: skip env. check for filtered tests"
James Zern [Fri, 19 Dec 2014 02:36:49 +0000 (18:36 -0800)]
Merge "tests/examples.sh: skip env. check for filtered tests"

2 days agovp9_ethread: add the multi-threaded encoder unit tests 76/73276/8
Yunqing Wang [Tue, 16 Dec 2014 19:10:20 +0000 (11:10 -0800)]
vp9_ethread: add the multi-threaded encoder unit tests

The unit tests for VP9 multi-threaded encoder are added, which
carry out tests for all three modes(i.e. kTwoPassGood, kOnePassGood
and kRealTime), and speeds ranging from 1 to 8. A 1280x720 test
clip is used, which is encoded into multiple tiles. The number of
threads is num_of_tiles.

Change-Id: I04419eeca145ad841c9c527603668239a82e7fbd

2 days agoFix including test file twice. 21/73321/1
Frank Galligan [Fri, 19 Dec 2014 00:03:27 +0000 (16:03 -0800)]
Fix including test file twice.

The test file niklas_1280_720_30.yuv may be included twice.

Change-Id: I44512073e9e430a8e10fbce5afd62041e0edea17

2 days agomake vp9 encoder static initializers thread safe 04/73304/2
Jim Bankoski [Thu, 18 Dec 2014 23:50:46 +0000 (15:50 -0800)]
make vp9 encoder static initializers thread safe

Change-Id: If2d0888d13ebe52bc7c3b16f16319408a86ab6de

2 days agoFix encode perf test 20/73320/1
Frank Galligan [Thu, 18 Dec 2014 23:19:21 +0000 (15:19 -0800)]
Fix encode perf test

The accepted range changed to -8..8.
BUG:https://code.google.com/p/webm/issues/detail?id=901

Change-Id: I53ac80b58f4819b82c76db61db5dc476f821191f

2 days agoAdd a guard on intra mode skip control for RTC mode 16/73316/1
Jingning Han [Thu, 18 Dec 2014 19:54:13 +0000 (11:54 -0800)]
Add a guard on intra mode skip control for RTC mode

This commit adds a guard condition to the intra mode test skip
control in RTC coding mode. If all inter modes are skipped, force
the encoder to check intra mode. It avoids situations where the
encoder processes without properly assigning required mode
information.

Change-Id: Ibb349fee997d6584ce901d08b06e8df3ca9c01b1

2 days agoRemoval of legacy zbin_extra / zbin_oq_value. 94/73294/4
Paul Wilkins [Wed, 17 Dec 2014 16:26:30 +0000 (16:26 +0000)]
Removal of legacy zbin_extra / zbin_oq_value.

zbin extra / zbin_oq_value was widely passed around,
hence removal touches a lot of code.

Change-Id: Idc94359735b60c38a160e4385ae09d5ca8b6b8e5

2 days agoRemove mode dependent zbin boost. 93/73293/5
Paul Wilkins [Wed, 17 Dec 2014 15:35:23 +0000 (15:35 +0000)]
Remove mode dependent zbin boost.

Initial patch to remove get_zbin_mode_boost() and
cpi->zbin_mode_boost.

For now sets a dummy value of 0 for zbin extra pending
a further clean up patch.

Change-Id: I64a1e1eca2d39baa8ffb0871b515a0be05c9a6af

2 days agoMerge "Improve motion detection for low complexity regions."
Paul Wilkins [Thu, 18 Dec 2014 16:38:21 +0000 (08:38 -0800)]
Merge "Improve motion detection for low complexity regions."

3 days agovpxdec: ignore GET_FRAME_CORRUPTED error w/--keep-going 13/73313/1
James Zern [Thu, 18 Dec 2014 03:20:00 +0000 (19:20 -0800)]
vpxdec: ignore GET_FRAME_CORRUPTED error w/--keep-going

this function may return an error if no frame is available; --keep-going
is meant to test decoder resilience, so simply warn in this case.

Change-Id: I6e6aed3e78eca21cca80d7d8a06a1a244685ba29

3 days agotests/examples.sh: skip env. check for filtered tests 12/73312/1
James Zern [Thu, 18 Dec 2014 03:02:00 +0000 (19:02 -0800)]
tests/examples.sh: skip env. check for filtered tests

Change-Id: Ide670b00ae3ecd9e18f394905341bf793349f247

3 days agoLet YUV plane share the same dqcoeff buffer. 40/73240/4
hkuang [Fri, 12 Dec 2014 19:31:23 +0000 (11:31 -0800)]
Let YUV plane share the same dqcoeff buffer.

Remove unnecessary dqcoeff from macroblockd which reduce macroblockd
size by 16384 bytes.

Change-Id: Ia379a703b4fee81c8fd4698b52488a85a90c9bc2

3 days agoRemove ARF mode entries from THR_MODES array in non-RD mode 10/73310/1
Jingning Han [Thu, 18 Dec 2014 01:11:39 +0000 (17:11 -0800)]
Remove ARF mode entries from THR_MODES array in non-RD mode

The alternate reference frame is disabled in non-RD mode. No need
to keep the related entries in the THR_MODES array.

Change-Id: I53386f4bb1c6284f582801f27246c5edf55bc24b

3 days agoMerge "Corrected value range of --cpu-used for vp9"
Yaowu Xu [Thu, 18 Dec 2014 01:12:14 +0000 (17:12 -0800)]
Merge "Corrected value range of --cpu-used for vp9"

3 days agoRework mode search threshold update for RTC coding mode 09/73309/1
Jingning Han [Wed, 17 Dec 2014 22:26:00 +0000 (14:26 -0800)]
Rework mode search threshold update for RTC coding mode

In RTC coding mode, the alternate reference frame modes and compound
inter prediction modes are disabled. This commit reworks the
related mode search threshold update process to skip interacting
with these coding modes. It provides about 1.5% speed-up for speed
-6 on average.

vidyo1
16551 b/f, 40.451 dB, 6261 ms -> 16550 b/f, 40.459 dB, 6190 ms

nik720p
33316 b/f, 38.795 dB, 6335 ms -> 33310 b/f, 38.798 dB, 6237 ms

mmmoving
33265 b/f, 41.055 dB, 7176 ms -> 33267 b/f, 41.064 dB, 7084 ms

dark720
33329 b/f, 39.729 dB, 11235 ms -> 33331 b/f, 39.733 dB, 10731 ms

Change-Id: If2a4090a371cd28f579be219c013b972d7d9b97f

3 days agoCorrected value range of --cpu-used for vp9 08/73308/1
Yaowu Xu [Wed, 17 Dec 2014 23:15:33 +0000 (15:15 -0800)]
Corrected value range of --cpu-used for vp9

This commit removes undefined value options of cpu-used for VP9 and
changed vpxenc prompt to reflect the usable range of [-8,8]

Change-Id: Ib80fef3dbb6ec9aabac45ed13e8ab6fbaf94f55e

3 days agoMerge "Add rectangle block support for MFQE."
JackyChen [Wed, 17 Dec 2014 23:10:02 +0000 (15:10 -0800)]
Merge "Add rectangle block support for MFQE."

3 days agoMerge "Enhance the end to end psnr tests"
Deb Mukherjee [Wed, 17 Dec 2014 21:49:13 +0000 (13:49 -0800)]
Merge "Enhance the end to end psnr tests"

3 days agoEnhance the end to end psnr tests 59/73259/3
Deb Mukherjee [Mon, 15 Dec 2014 19:58:43 +0000 (11:58 -0800)]
Enhance the end to end psnr tests

Includes more speed settings and also real-time mode now.

Change-Id: I71c77c4a2471d715c61cc30db092aa053cf012e1

3 days agoMerge "Improve the libvpx encoder test driver"
Yunqing Wang [Wed, 17 Dec 2014 18:06:33 +0000 (10:06 -0800)]
Merge "Improve the libvpx encoder test driver"

3 days agoMerge "Use bit_depth in VP9Common as the flag of highbit."
JackyChen [Wed, 17 Dec 2014 17:30:32 +0000 (09:30 -0800)]
Merge "Use bit_depth in VP9Common as the flag of highbit."

3 days agoProperly store the tx_size of selected intra mode 84/73284/3
Jingning Han [Wed, 17 Dec 2014 00:02:58 +0000 (16:02 -0800)]
Properly store the tx_size of selected intra mode

Use a temporary variable to store the transform size associated
with the best intra mode and restore the mode_info if the overall
best mode is intra mode.

Change-Id: I2606e0061ad32f91b095462902b1eb734b128eea

3 days agoMerge "Remove reset mode_info array per frame"
Jingning Han [Wed, 17 Dec 2014 17:24:44 +0000 (09:24 -0800)]
Merge "Remove reset mode_info array per frame"

3 days agoMerge "Set second ref frame to be NONE in key frame coding"
Jingning Han [Wed, 17 Dec 2014 17:24:39 +0000 (09:24 -0800)]
Merge "Set second ref frame to be NONE in key frame coding"

3 days agoImprove the libvpx encoder test driver 47/73247/7
Yunqing Wang [Fri, 12 Dec 2014 22:34:30 +0000 (14:34 -0800)]
Improve the libvpx encoder test driver

The encoder initialization is called in EncodeFrame(). Therefore,
in the unit tests, the set control is done when video->frame() is 1.
This didn't cause problem since current tests mainly test lag_frame
> 0 case, or no encoding option that needs to allocate memory before
1st frame is used. If use lag_frame = 0 and encoding multiple tiles,
the unit tests crash. The issue is fixed by doing the initialization
before encoding frames.

Change-Id: I43102048f88448bcf27e9c60e0ec06c176b02e5c

3 days agoUse bit_depth in VP9Common as the flag of highbit. 81/73281/2
JackyChen [Tue, 16 Dec 2014 22:17:14 +0000 (14:17 -0800)]
Use bit_depth in VP9Common as the flag of highbit.

Change-Id: I881aefbe68f9c10bb4629a2a5ee1e42a225d5ab7

4 days agoVP9 common for ARMv8 by using NEON intrinsics 15 31/68931/15
James Yu [Sat, 8 Feb 2014 04:06:21 +0000 (12:06 +0800)]
VP9 common for ARMv8 by using NEON intrinsics 15

Re-write
- vp9_lpf_horizontal_4_dual_neon
in vp9_loopfilter_16_neon.c

Change-Id: Ie14f63d352f9564ad01db3939a61d91cf6d21a31
Signed-off-by: James Yu <james.yu@linaro.org>
4 days agoMerge "Use defines for inline and __builtin_prefetch"
Johann [Wed, 17 Dec 2014 02:04:04 +0000 (18:04 -0800)]
Merge "Use defines for inline and __builtin_prefetch"

4 days agoMerge "Fix intra mode update process in vp9_pick_inter_mode"
Jingning Han [Wed, 17 Dec 2014 01:04:04 +0000 (17:04 -0800)]
Merge "Fix intra mode update process in vp9_pick_inter_mode"

4 days agoAdd rectangle block support for MFQE. 77/73277/2
JackyChen [Tue, 16 Dec 2014 19:17:20 +0000 (11:17 -0800)]
Add rectangle block support for MFQE.

Only for the rectangle blocks larger than 16X16, SAD and Variance are
still based on the internal square blocks.

Change-Id: I3754da1b0254147313f86a0140dbf4f980f06a5a

4 days agoMerge "VP9 common for ARMv8 by using NEON intrinsics 16"
Johann [Wed, 17 Dec 2014 00:15:48 +0000 (16:15 -0800)]
Merge "VP9 common for ARMv8 by using NEON intrinsics 16"

4 days agoMerge "Allow building multi-res encoder with --shared"
Johann [Tue, 16 Dec 2014 23:54:36 +0000 (15:54 -0800)]
Merge "Allow building multi-res encoder with --shared"

4 days agoMerge "Silence -Werror=unused-parameter"
Johann [Tue, 16 Dec 2014 23:54:29 +0000 (15:54 -0800)]
Merge "Silence -Werror=unused-parameter"

4 days agoRemove reset mode_info array per frame 74/73274/2
Jingning Han [Tue, 16 Dec 2014 17:21:22 +0000 (09:21 -0800)]
Remove reset mode_info array per frame

The mode_info array was unnecessarily reset to zero every frame
when error resilient mode turned on, given that the mode info
values per block will be assigned during mode search stage.

This commit removes this reset operation. It reduces the runtime
cost on memset operation to 1/3. The overall speed -6 runtime is
reduced by 2%.

Change-Id: I32ecb73338d8995cc0c5147de09357364f13d45b

4 days agoSet second ref frame to be NONE in key frame coding 83/73283/1
Jingning Han [Tue, 16 Dec 2014 23:46:59 +0000 (15:46 -0800)]
Set second ref frame to be NONE in key frame coding

This commit explicitly set the second reference frame type to be
NONE in key frame coding mode. This fixes a subtle dependency of
reference motion vector used by next inter frame on mode_info
reset before key frame coding.

Change-Id: I5ff0359753fdc9992b0bfe889490f7a32d7d5f6a

4 days agoUse defines for inline and __builtin_prefetch 82/73282/2
Johann [Tue, 16 Dec 2014 23:08:16 +0000 (15:08 -0800)]
Use defines for inline and __builtin_prefetch

These were established for compatibility. Make sure to use them.

Most frequently they manifest as issues on Visual Studio builds.

Change-Id: I39d764d2eb341b999d7a6132cb44b2acfc511160

4 days agoMerge "Revert "Revert "Add support for setting byte alignment."""
Frank Galligan [Tue, 16 Dec 2014 23:14:17 +0000 (15:14 -0800)]
Merge "Revert "Revert "Add support for setting byte alignment."""

4 days agoVP9 common for ARMv8 by using NEON intrinsics 16 32/68932/13
James Yu [Sat, 8 Feb 2014 17:01:36 +0000 (01:01 +0800)]
VP9 common for ARMv8 by using NEON intrinsics 16

Add vp9_reconintra_neon.c
- vp9_v_predictor_4x4_neon
- vp9_v_predictor_8x8_neon
- vp9_v_predictor_16x16_neon
- vp9_v_predictor_32x32_neon
- vp9_h_predictor_4x4_neon
- vp9_h_predictor_8x8_neon
- vp9_h_predictor_16x16_neon
- vp9_h_predictor_32x32_neon
- vp9_tm_predictor_4x4_neon
- vp9_tm_predictor_8x8_neon
- vp9_tm_predictor_16x16_neon
- vp9_tm_predictor_32x32_neon

Change-Id: Ib5d54a4766a1b5127169045659974f33aa98376d
Signed-off-by: James Yu <james.yu@linaro.org>
4 days agoAllow building multi-res encoder with --shared 79/73279/1
Johann [Tue, 16 Dec 2014 20:47:53 +0000 (12:47 -0800)]
Allow building multi-res encoder with --shared

Export vpx_codec_enc_init_multi_ver so the vp8 multi res encoder example
can see it when building shared.

Change-Id: Ic5222b1b6d949f39c7e50c3bc58fb76bece2a3f1

4 days agoSilence -Werror=unused-parameter 78/73278/2
Johann [Tue, 16 Dec 2014 20:22:10 +0000 (12:22 -0800)]
Silence -Werror=unused-parameter

Cast away remaining issues so that new ones don't get lost in the noise.

Change-Id: Iacd6999b0686ce80f9835730d68db6382690fa92

4 days agoMerge "rtcd: handle armv7s architecture"
James Zern [Tue, 16 Dec 2014 20:22:55 +0000 (12:22 -0800)]
Merge "rtcd: handle armv7s architecture"

4 days agoVP9 common for ARMv8 by using NEON intrinsics 19 16/68916/13
James Yu [Wed, 15 Jan 2014 08:20:34 +0000 (16:20 +0800)]
VP9 common for ARMv8 by using NEON intrinsics 19

Delete vp9_dc_only_idct_add_neon.c

The function was merged with vp9_short_idct4x4_1_add (later
vp9_idct4x4_1_add) in d2de1ca and should have been deleted then.

Change-Id: Ie58ba3dd9dc7330a8f1238dd7dd71c9ed4639b94
Signed-off-by: James Yu <james.yu@linaro.org>
4 days agoMerge "Fixed MFQE crash issue for highbit depth."
JackyChen [Tue, 16 Dec 2014 19:12:03 +0000 (11:12 -0800)]
Merge "Fixed MFQE crash issue for highbit depth."

4 days agoFixed MFQE crash issue for highbit depth. 75/73275/1
JackyChen [Tue, 16 Dec 2014 18:02:47 +0000 (10:02 -0800)]
Fixed MFQE crash issue for highbit depth.

Check the flags, no MFQE for highbit now. Will add highbit support
latter.

Change-Id: I548c27593e0f47ab7f4c92b45f14fb037dc86591

4 days agoMerge "Initialize best_tx_size with invalid value"
Jingning Han [Tue, 16 Dec 2014 18:01:03 +0000 (10:01 -0800)]
Merge "Initialize best_tx_size with invalid value"

4 days agoMerge "Prevent decoder from using uninitialized entropy context."
Yaowu Xu [Tue, 16 Dec 2014 17:30:24 +0000 (09:30 -0800)]
Merge "Prevent decoder from using uninitialized entropy context."

4 days agoMerge "Use right shift to replace division in vp9_pick_inter_mode"
Jingning Han [Tue, 16 Dec 2014 17:26:51 +0000 (09:26 -0800)]
Merge "Use right shift to replace division in vp9_pick_inter_mode"

4 days agoImprove motion detection for low complexity regions. 21/73221/7
Paul Wilkins [Thu, 11 Dec 2014 16:22:03 +0000 (16:22 +0000)]
Improve motion detection for low complexity regions.

Where there is very subtle motion, especially when combined
with low spatial complexity, the codec sometimes fails to quickly
pick up the ambient motion field.

Once it has been established though the field propagates well using
Nearest and Near MV.

This patch looks specifically at the case where the Nearest and Near
have not been established as non zero vectors and in this case
discounts the cost of searching for a new vector in the rd code.

This will almost certainly have some implications in terms of encode
speed but it should be possible to mitigate the impact in a subsequent
using first pass stats and the local spatial complexity.

Average results for test sets approximately neutral.

Change-Id: I44a29e20f11f7ab10f8c93ffbdc50183d9801524

4 days agoMerge "Fix for crash in highbitdepth rt mode"
Debargha Mukherjee [Tue, 16 Dec 2014 14:41:54 +0000 (06:41 -0800)]
Merge "Fix for crash in highbitdepth rt mode"

4 days agoMerge "Fix the comments."
Jim Bankoski [Tue, 16 Dec 2014 14:25:01 +0000 (06:25 -0800)]
Merge "Fix the comments."

4 days agoFix for crash in highbitdepth rt mode 73/73273/1
Peter de Rivaz [Tue, 16 Dec 2014 10:55:49 +0000 (10:55 +0000)]
Fix for crash in highbitdepth rt mode

Change 72141 introduced a new use of vp9_avg_4x4.
This call needs to switch to using vp9_highbd_avg_4x4
when performing high bitdepth encodes.

Change-Id: I6a8ba4b62f8a75d0a917b365a55245e2f0438ea1

4 days agoMerge "iosbuild.sh: allow for out of tree builds"
James Zern [Tue, 16 Dec 2014 06:04:46 +0000 (22:04 -0800)]
Merge "iosbuild.sh: allow for out of tree builds"

5 days agoiosbuild.sh: allow for out of tree builds 71/73271/1
James Zern [Tue, 16 Dec 2014 02:41:46 +0000 (18:41 -0800)]
iosbuild.sh: allow for out of tree builds

Change-Id: Id89ed4a4153dd6e02380c4b8ae8ad6c1f8d21944

5 days agortcd: handle armv7s architecture 70/73270/1
James Zern [Tue, 16 Dec 2014 02:39:51 +0000 (18:39 -0800)]
rtcd: handle armv7s architecture

quiets build warnings about implicit (armv6) function declarations

Change-Id: I896a5ef3e367e5bb92777a60d34003eb3a040997

5 days agoFix intra mode update process in vp9_pick_inter_mode 69/73269/2
Jingning Han [Mon, 15 Dec 2014 22:43:07 +0000 (14:43 -0800)]
Fix intra mode update process in vp9_pick_inter_mode

When multiple intra modes are tested, the previous mode info
update process may overwrite the selected best intra mode and make
the final selection use an inter mode. This commit fixes this
issue by moving the mode_info reset outside the intra mode search
loop.

Change-Id: I15ed4288a6b3cb0832104a5e6d5d9a25cd1a5b2b

5 days agoMerge "VP9 common for ARMv8 by using NEON intrinsics 06"
Johann [Mon, 15 Dec 2014 22:49:33 +0000 (14:49 -0800)]
Merge "VP9 common for ARMv8 by using NEON intrinsics 06"

5 days agoMerge "VP9 common for ARMv8 by using NEON intrinsics 05"
Johann [Mon, 15 Dec 2014 22:48:53 +0000 (14:48 -0800)]
Merge "VP9 common for ARMv8 by using NEON intrinsics 05"

5 days agoMerge "Simplify rate-distortion modeling function"
Jingning Han [Mon, 15 Dec 2014 22:37:19 +0000 (14:37 -0800)]
Merge "Simplify rate-distortion modeling function"

5 days agoInitialize best_tx_size with invalid value 67/73267/2
Jingning Han [Mon, 15 Dec 2014 20:54:02 +0000 (12:54 -0800)]
Initialize best_tx_size with invalid value

If vp9_pick_inter_mode works properly, it should at least check
one coding mode and hence get best_tx_size assigned a valid value.
There is no need to initialize best_tx_size with a legitimate
value before starting the mode search.

Change-Id: Ic0496cd89672ea9c2c512a9bd1da952190af9cba

5 days agoUse right shift to replace division in vp9_pick_inter_mode 66/73266/1
Jingning Han [Mon, 15 Dec 2014 20:48:07 +0000 (12:48 -0800)]
Use right shift to replace division in vp9_pick_inter_mode

Make the variable reduction_fac log2 based and explicitly use
right shift when computing intra_cost_penalty.

Change-Id: I208f1fb879a02debb3b3fc64f9fd06260dcf1c86

5 days agoRevert "Revert "Add support for setting byte alignment."" 62/73262/1
Frank Galligan [Mon, 15 Dec 2014 20:00:09 +0000 (12:00 -0800)]
Revert "Revert "Add support for setting byte alignment.""

This reverts commit 91471d6aad285ff10e7582e485d8adadd1986fe2.

Fixes the compile issues if post_proc is enabled.

Change-Id: Ib40a15ce2c194f9b5adfa65a17ab01ddf60f5a59

5 days agoVP9 common for ARMv8 by using NEON intrinsics 06 22/68922/18
James Yu [Tue, 28 Jan 2014 17:31:07 +0000 (01:31 +0800)]
VP9 common for ARMv8 by using NEON intrinsics 06

Add vp9_iht8x8_add_neon.c
- vp9_iht8x8_64_add_neon

The assembly did not previously implement tx_type 0
BUG=716

Change-Id: Icfc99dd24f3d59047f9184a7d0c761ba7e3de934
Signed-off-by: James Yu <james.yu@linaro.org>
5 days agoVP9 common for ARMv8 by using NEON intrinsics 05 21/68921/16
James Yu [Mon, 27 Jan 2014 10:38:35 +0000 (18:38 +0800)]
VP9 common for ARMv8 by using NEON intrinsics 05

Add vp9_iht4x4_add_neon.c
- vp9_iht4x4_16_add_neon

The assembly did not previously implement tx_type 0
BUG=715

Change-Id: I60034d1568de034edba45c5cdd13f3d87dbc73b6
Signed-off-by: James Yu <james.yu@linaro.org>
5 days agoMerge "vp9/MACROBLOCKD: reorder struct members"
James Zern [Mon, 15 Dec 2014 19:54:51 +0000 (11:54 -0800)]
Merge "vp9/MACROBLOCKD: reorder struct members"

5 days agoSimplify rate-distortion modeling function 48/73248/3
Jingning Han [Fri, 12 Dec 2014 22:33:52 +0000 (14:33 -0800)]
Simplify rate-distortion modeling function

Use left shift to replace one multiplication. The computation
outcome remains identical.

Change-Id: I1e1737af0a245de0d2a2bde10f0c171477199fc1

5 days agoRevert "Add support for setting byte alignment." 57/73257/1
Paul Wilkins [Mon, 15 Dec 2014 11:52:55 +0000 (11:52 +0000)]
Revert "Add support for setting byte alignment."

Fails to compile. Bad calls to vp9_alloc_frame_buffer
and vp9_realloc_frame_buffer in postproc.c

This reverts commit 399823b6f50fb7465f62822d1395e2192e7b07fc.

Change-Id: I29f0e173f8e185d3a303cfdb17813e1eccb51e3a

7 days agoMerge "Fix a bug that break the vp8 fragment decoder."
hkuang [Sat, 13 Dec 2014 17:56:55 +0000 (09:56 -0800)]
Merge "Fix a bug that break the vp8 fragment decoder."

8 days agoiosbuild: add success/failure output 54/73254/1
James Zern [Sat, 13 Dec 2014 03:45:15 +0000 (19:45 -0800)]
iosbuild: add success/failure output

Change-Id: I84492f68752321f0266141666e2672ed2da5f509

8 days agovp9/MACROBLOCKD: reorder struct members 52/73252/1
James Zern [Sat, 13 Dec 2014 02:01:24 +0000 (18:01 -0800)]
vp9/MACROBLOCKD: reorder struct members

improves locality of reference

Change-Id: I0639b98bf38879f918173b3a1b25dd93090e88b4

8 days agoFix a bug that break the vp8 fragment decoder. 24/72224/12
hkuang [Thu, 20 Nov 2014 23:39:56 +0000 (15:39 -0800)]
Fix a bug that break the vp8 fragment decoder.

(issue #882).

Change-Id: I2ca7f96d390c4eaec0473c50cb01b903d0bd3ee6

8 days agoMerge "Optimize bit_read_buffer."
James Zern [Sat, 13 Dec 2014 00:29:42 +0000 (16:29 -0800)]
Merge "Optimize bit_read_buffer."

8 days agoMerge "vpxdec: Rename the libyuv scale wrapper."
Tom Finegan [Sat, 13 Dec 2014 00:14:57 +0000 (16:14 -0800)]
Merge "vpxdec: Rename the libyuv scale wrapper."

8 days agoMerge "iosbuild.sh: Add targets argument."
Tom Finegan [Sat, 13 Dec 2014 00:14:12 +0000 (16:14 -0800)]
Merge "iosbuild.sh: Add targets argument."

8 days agoMerge "Add support for setting byte alignment."
Frank Galligan [Fri, 12 Dec 2014 23:47:11 +0000 (15:47 -0800)]
Merge "Add support for setting byte alignment."

8 days agoOptimize bit_read_buffer. 46/73246/2
hkuang [Fri, 12 Dec 2014 21:54:40 +0000 (13:54 -0800)]
Optimize bit_read_buffer.

Change-Id: Iee43c34909deec9787b29c1c33672213b9f049df

8 days agoMerge "Remove redundant loads on 1d16_v8 filter."
James Zern [Fri, 12 Dec 2014 22:32:52 +0000 (14:32 -0800)]
Merge "Remove redundant loads on 1d16_v8 filter."

8 days agoMerge "Remove redundant loads on 1d8_v8 filter."
James Zern [Fri, 12 Dec 2014 22:32:26 +0000 (14:32 -0800)]
Merge "Remove redundant loads on 1d8_v8 filter."

8 days agoMerge "vp9: move encoder-only member from common"
James Zern [Fri, 12 Dec 2014 22:28:55 +0000 (14:28 -0800)]
Merge "vp9: move encoder-only member from common"

8 days agoMerge "don't set INLINE to 'always_inline'"
James Zern [Fri, 12 Dec 2014 22:28:20 +0000 (14:28 -0800)]
Merge "don't set INLINE to 'always_inline'"

8 days agoMerge changes Id6421838,I37499329
James Zern [Fri, 12 Dec 2014 22:27:56 +0000 (14:27 -0800)]
Merge changes Id6421838,I37499329

* changes:
  vp9: make postproc members depend on CONFIG_VP9_POSTPROC
  vp9_postproc: remove redundant CONFIG_* checks

8 days agoMerge "Allow for 4x4 prediction blocks for key frame, speed 6."
Marco [Fri, 12 Dec 2014 22:27:31 +0000 (14:27 -0800)]
Merge "Allow for 4x4 prediction blocks for key frame, speed 6."

8 days agoMerge "vp9_loopfilter_mmx: remove some unused tables"
James Zern [Fri, 12 Dec 2014 22:25:53 +0000 (14:25 -0800)]
Merge "vp9_loopfilter_mmx: remove some unused tables"

8 days agoMerge "x86_abi_support: set LIBVPX_RAND w/vp9-postproc"
James Zern [Fri, 12 Dec 2014 22:25:30 +0000 (14:25 -0800)]
Merge "x86_abi_support: set LIBVPX_RAND w/vp9-postproc"

8 days agoiosbuild.sh: Add targets argument. 43/73243/2
Tom Finegan [Fri, 12 Dec 2014 21:53:58 +0000 (13:53 -0800)]
iosbuild.sh: Add targets argument.

Allows override of default target list. Also added missing usage info
for --extra-configure-args, and removed last vestiges of armv6 support.

Change-Id: Ic0f14fffa0cbaea1bed371d38ff65e035bbe3273

8 days agoAdd support for setting byte alignment. 56/72156/12
Frank Galligan [Thu, 13 Nov 2014 20:28:34 +0000 (12:28 -0800)]
Add support for setting byte alignment.

Add support for setting byte alignment on the Y, U, and V plane of the
reference buffers. The byte alignment must be a power of 2, from 32 to
1024. A value of 0 sets legacy alignment.

Change-Id: I7c1399622f7aa68e123646369216b32047dda73d

8 days agoMerge "Remove unnecessary dqcoeff memset."
James Zern [Fri, 12 Dec 2014 20:16:32 +0000 (12:16 -0800)]
Merge "Remove unnecessary dqcoeff memset."

8 days agovpxdec: Rename the libyuv scale wrapper. 44/73244/1
Tom Finegan [Fri, 12 Dec 2014 19:57:04 +0000 (11:57 -0800)]
vpxdec: Rename the libyuv scale wrapper.

The other name was misleading: We do not export scaling support from
libvpx via vpx_im{g,age}*.

Change-Id: I8acb4ea0301f08c9bab557a4063ea35d147b4631