Deb Mukherjee [Sat, 13 Sep 2014 11:11:50 +0000 (04:11 -0700)]
Visual Studio build (warning) fix
Explicit type casting to prevent warning.
Change-Id: Ib5be4ad6d4126d88f7c67d246bb085df1e813329
Deb Mukherjee [Tue, 2 Sep 2014 23:34:09 +0000 (16:34 -0700)]
Adds high bitdepth transform functions and tests
Adds various high bitdepth transform functions and tests.
Much of the changes are related to using typedefs tran_low_t
and tran_high_t for the final transform cofficients and intermediate
stages of the transform computation respectively rather than fixed
types int16_t/int. When vp9_highbitdepth configure flag is off,
these map tp int16_t/int32_t, but when the flag is on, they map
to int32_t/int64_t to make space for needed extra precision.
Change-Id: I3c56de79e15b904d6f655b62ffae170729befdd8
Deb Mukherjee [Fri, 5 Sep 2014 22:00:54 +0000 (15:00 -0700)]
Adds high bit depth sad and variance functions
Moves high bit depth sad/var functions from highbitdepth
branch to master.
Change-Id: If03845d8ef9c9c494e13350e7a587c289306b94d
Johann [Thu, 11 Sep 2014 23:02:41 +0000 (16:02 -0700)]
Merge "Allow specifying opt dependencies"
James Zern [Thu, 11 Sep 2014 22:39:19 +0000 (15:39 -0700)]
Merge "vp9_picklpf: search_filter_level: remove filt_err"
Minghai Shang [Thu, 11 Sep 2014 21:12:44 +0000 (14:12 -0700)]
Merge "[spatial svc] Remove handling frame and stats packets in the codec"
Johann [Wed, 10 Sep 2014 17:27:58 +0000 (10:27 -0700)]
Allow specifying opt dependencies
If optimizations use more than one cpu feature, allow
specifying them so that '--disable-X' still works
https://code.google.com/p/webm/issues/detail?id=854
Change-Id: I3108ea37b397371a2be84dd5f2380b304db23f18
Dmitry Kovalev [Thu, 11 Sep 2014 20:43:47 +0000 (13:43 -0700)]
Merge "Adding lossless encoding example."
Jingning Han [Thu, 11 Sep 2014 19:08:13 +0000 (12:08 -0700)]
Merge "Remove inter_mode_mask from rate-distortion search loop"
James Zern [Sat, 6 Sep 2014 20:35:37 +0000 (13:35 -0700)]
vp9_picklpf: search_filter_level: remove filt_err
inspect ss_err[] directly, removes an unnecessary assignment
Change-Id: I14db5e8e567e7e541a57fce73389ffe7651d5614
Minghai Shang [Thu, 11 Sep 2014 17:52:26 +0000 (10:52 -0700)]
[spatial svc] Remove handling frame and stats packets in the codec
1. svc_encodeframe.c will not handle frame or stats packets anymore.
The app will process them.
2. Remove APIs that related to these packets.
Change-Id: Id0d7f8b458dc09c6f77064c0878fd4e572db001b
Dmitry Kovalev [Wed, 10 Sep 2014 01:51:41 +0000 (18:51 -0700)]
Adding lossless encoding example.
Change-Id: Ib8498c3127c397b453beff140503b2aca0d11cfc
Jingning Han [Thu, 11 Sep 2014 18:15:35 +0000 (11:15 -0700)]
Merge "Move intra block size skip outside mode search loop"
Jingning Han [Thu, 11 Sep 2014 18:15:25 +0000 (11:15 -0700)]
Merge "Fix format in vp9_rd_pick_inter_mode_sub8x8"
Jingning Han [Thu, 11 Sep 2014 18:14:37 +0000 (11:14 -0700)]
Merge "Move overlay frame speed feature setting out of mode search loop"
Jingning Han [Thu, 11 Sep 2014 18:14:26 +0000 (11:14 -0700)]
Merge "Refactor to remove speed feature dependency on mode search order"
Minghai Shang [Thu, 11 Sep 2014 17:24:28 +0000 (10:24 -0700)]
Merge "[spatial svc]Add golden frame to first pass rate control"
Jingning Han [Thu, 11 Sep 2014 17:17:12 +0000 (10:17 -0700)]
Remove inter_mode_mask from rate-distortion search loop
This speed feature is used in real-time setting only. Remove the
related condition check in the rate-distortion optimization search
loop.
Change-Id: Iaacc1e268214634e6f95c5048c28a60cec6c42fc
Jingning Han [Thu, 11 Sep 2014 16:54:19 +0000 (09:54 -0700)]
Move intra block size skip outside mode search loop
Unify this speed feature in the ref_frame_skip_mask scheme.
Change-Id: I7ea5646da02d3ea643680c22d50dabd448d55a27
Jingning Han [Thu, 11 Sep 2014 16:27:30 +0000 (09:27 -0700)]
Fix format in vp9_rd_pick_inter_mode_sub8x8
Change-Id: I0da29c858c6c1eb5ef07cee8f599329f5a002da9
Jingning Han [Thu, 11 Sep 2014 02:42:51 +0000 (19:42 -0700)]
Move overlay frame speed feature setting out of mode search loop
Refactor overlay frame speed-up related function. Make it unified
with the ref_frame_skip_mask system and Move it out of the mode
search loop.
Change-Id: I0dde9baf44354f6ba00b4679cba02fa6a30c7316
JackyChen [Thu, 11 Sep 2014 01:08:59 +0000 (18:08 -0700)]
Merge "Fix the bug which made VP8 denoiser not bit-exact between C code and SSE code."
Minghai Shang [Fri, 5 Sep 2014 23:36:51 +0000 (16:36 -0700)]
[spatial svc]Add golden frame to first pass rate control
Change-Id: If3035f0e7dfcfe88c4bbf4eec66761e070476df0
Jingning Han [Wed, 10 Sep 2014 01:43:27 +0000 (18:43 -0700)]
Refactor to remove speed feature dependency on mode search order
This commit refactor the rate-distortion optimization search for
regular block sizes to remove the speed feature dependency on mode
search order.
Change-Id: Ied033ee484c2957e17baa7b6450b720fe7dd0e7d
James Zern [Thu, 11 Sep 2014 00:02:37 +0000 (17:02 -0700)]
Merge "vp9: wait for key/intra-only frame after corruption"
JackyChen [Wed, 10 Sep 2014 20:19:42 +0000 (13:19 -0700)]
Fix the bug which made VP8 denoiser not bit-exact between C code and SSE code.
This issue is found when the denoising mode is set to kDenoiserOnYUVAggressive.
Updated the C code to make it the same with SSE version.
I also changed several lines in VP9 denoiser for the code style.
Change-Id: I640d48cf946fe8c6a400e6e252107501d1e226d3
Jingning Han [Wed, 10 Sep 2014 21:46:19 +0000 (14:46 -0700)]
Merge "Fix a bug in vp9_rd_pick_inter_mode_sb"
Jingning Han [Wed, 10 Sep 2014 21:46:11 +0000 (14:46 -0700)]
Merge "Remove redundant ref frame pointer assignment"
Tom Finegan [Wed, 10 Sep 2014 18:10:29 +0000 (11:10 -0700)]
examples/twopass_encoder: Use good quality.
This speeds up the encode significantly. Also added a comment about using
best quality to keep new developers informed.
Change-Id: I04e8154d4b2c4cae07fe7cc9a71e707f649e9ed4
Jim Bankoski [Wed, 10 Sep 2014 13:33:51 +0000 (06:33 -0700)]
Merge "LoopFilterWorkerData: remove misleading 'const'"
James Zern [Wed, 10 Sep 2014 01:55:20 +0000 (18:55 -0700)]
vp9: wait for key/intra-only frame after corruption
don't bother decoding any further after receiving an earlier decode
error until a key/intra-only frame is encountered.
Change-Id: I381917b70d7a9e6f8d6de42e3d181bb113a4cec4
Dmitry Kovalev [Wed, 10 Sep 2014 01:24:12 +0000 (18:24 -0700)]
Merge "Removing legacy compatibility layer."
James Zern [Tue, 9 Sep 2014 23:50:28 +0000 (16:50 -0700)]
Merge changes If8887e1d,I36bfc9c8,I3d1e6c42
* changes:
vp9_dthread: simplify loop_filter_row_worker signature
simplify vp9_loop_filter_worker signature
vp9_decodeframe: simplify tile_work_hook signature
James Zern [Tue, 9 Sep 2014 23:48:43 +0000 (16:48 -0700)]
Merge changes I660c1b7f,Id3cdf6b6
* changes:
vp9_loop_filter_frame_mt: defer allocations
vp9_loop_filter_alloc: reorder parameters
Jingning Han [Tue, 9 Sep 2014 22:32:40 +0000 (15:32 -0700)]
Fix a bug in vp9_rd_pick_inter_mode_sb
This commit fixes a bug related to skipping intra mode checking, by
using a separate variable to store the best prediction error from
inter mode. It avoids unintentionally overwriting intra mode
rate-distortion cost, and hence affecting other speed features.
Change-Id: I99e12993339c84c8b4f597996b372012e5858fae
Jingning Han [Tue, 9 Sep 2014 22:10:00 +0000 (15:10 -0700)]
Remove redundant ref frame pointer assignment
Assigning selected reference frame pointer is done in the
encode_superblock function. No need to do this at the end of
rate-distortion optimization search.
Change-Id: I33fcede0fd304b4a4c4deef2d126d79546a9c070
Jingning Han [Tue, 9 Sep 2014 21:10:28 +0000 (14:10 -0700)]
Merge "Remove dependency of intra mode search skip check on mode order"
Jingning Han [Tue, 9 Sep 2014 21:10:19 +0000 (14:10 -0700)]
Merge "Replace best_mode_index table retrieve with fetching best_mbmode"
Yunqing Wang [Tue, 9 Sep 2014 21:06:02 +0000 (14:06 -0700)]
Merge "Remove the use of use_lastframe_partitioning at speed 4"
Johann [Tue, 9 Sep 2014 20:01:14 +0000 (13:01 -0700)]
Merge "Restructure ARM assumptions in cpudetect"
Dmitry Kovalev [Tue, 9 Sep 2014 19:50:23 +0000 (12:50 -0700)]
Merge "Cleaning up and speeding up vp9_idct32x32_1024_add_sse2()."
Jingning Han [Tue, 9 Sep 2014 19:30:47 +0000 (12:30 -0700)]
Remove dependency of intra mode search skip check on mode order
This commit refactors the vp9_rd_pick_inter_mode_sb function to
remove the intra mode early termination dependency on the mode
search order.
Change-Id: If6ac49aa7c530c7b9a5bd31b0ab84db83e192bec
Alex Converse [Tue, 9 Sep 2014 19:28:40 +0000 (12:28 -0700)]
Merge "Add an invalid file test for referencing a different color space."
Alex Converse [Tue, 9 Sep 2014 19:28:37 +0000 (12:28 -0700)]
Merge "BITSTREAM CLARIFICATION: Forbid referencing across color spaces."
Jingning Han [Tue, 9 Sep 2014 18:58:10 +0000 (11:58 -0700)]
Replace best_mode_index table retrieve with fetching best_mbmode
This commit allows the encoder to find current best prediction mode
state using best_mbmode, instead of fetching from the static mode
search table via best_mode_index.
Change-Id: Ibefeab83aed33a49c2be03e83f09153856ca4271
Johann [Tue, 9 Sep 2014 18:48:25 +0000 (11:48 -0700)]
Restructure ARM assumptions in cpudetect
Allow building for targets which have NEON but not EDSP or MEDIA.
Set HAS_NEON flag for builds which have neon assembly but not
intrinsics.
Change-Id: Ibfa81a8444a8c55d1d3209c533d1d70d2f809669
Yunqing Wang [Tue, 9 Sep 2014 17:18:55 +0000 (10:18 -0700)]
Remove the use of use_lastframe_partitioning at speed 4
The use of use_lastframe_partitioning is totally removed in good-
quality encoding. Its usage in real-time encoding needs to be
evaluated to see if it can be removed too.
The Borg tests at speed 4 showed:
stdhd set: 0.220% psnr gain, 0.166% ssim gain;
derf set: 0.329% psnr gain, 0.476% ssim gain.
Speed test on selected clips showed 1.54% speedup.(Worst case:
pedestrian_area_1080p25.y4m, speed loss: 1.5%)
Change-Id: I1c844d329b0b5678558439b887297c1be7ddab00
Marco [Tue, 9 Sep 2014 17:19:27 +0000 (10:19 -0700)]
Merge "vp8: Updates for adaptive denoiser mode."
Marco [Tue, 9 Sep 2014 16:11:55 +0000 (09:11 -0700)]
vp8: Updates for adaptive denoiser mode.
Add qp/bitrate condition, update some settings.
Change-Id: I1af0f102823a886393be063ad9d17d7564753cc7
Johann [Tue, 9 Sep 2014 15:20:00 +0000 (08:20 -0700)]
Move vp8_variance_halfpixvar16x16_*_neon definitions
These functions moved from 'neon_asm' to 'neon' in
9293d267d22def752366c9512be98f2d51fd2c15
Change-Id: I9cb5626c3eec96876a73fb18f2bfc982a5858edb
James Zern [Sun, 31 Aug 2014 03:33:52 +0000 (20:33 -0700)]
vp9_loop_filter_frame_mt: defer allocations
the code currently checks whether the allocation has been done instead
of allocating on the first frame.
since:
4f27202 vp9: fix crash in mt loopfilter w/corrupt file
this change defers the allocation until the loop filter is used.
Change-Id: I660c1b7f34e713a8dd9884483f01d23b9847366e
James Zern [Sun, 31 Aug 2014 02:01:25 +0000 (19:01 -0700)]
vp9_loop_filter_alloc: reorder parameters
VP9LfSync lf_sync is being operated on, make it the first parameter as
in dealloc
Change-Id: Id3cdf6b6a48157627780ae0d5d4b7dfa94a78078
James Zern [Tue, 9 Sep 2014 03:04:40 +0000 (20:04 -0700)]
LoopFilterWorkerData: remove misleading 'const'
'frame_buffer' is modified indirectly via 'planes'.
+ do the same for vp9_loop_filter_rows
Change-Id: Ibb7daa2e261064e4a5317a2969e3490e59891b82
James Zern [Sun, 31 Aug 2014 01:05:56 +0000 (18:05 -0700)]
vp9_dthread: simplify loop_filter_row_worker signature
use the type names directly in the function declaration rather than
(void *arg1, void *arg2)
Change-Id: If8887e1dbcdf84842783a92f91668bef6223c9e5
James Zern [Sun, 31 Aug 2014 01:05:56 +0000 (18:05 -0700)]
simplify vp9_loop_filter_worker signature
use the type names directly in the function declaration rather than
(void *arg1, void *arg2)
Change-Id: I36bfc9c886310ce370bf0ca7c679ebd6e95109cc
James Zern [Sun, 31 Aug 2014 01:05:56 +0000 (18:05 -0700)]
vp9_decodeframe: simplify tile_work_hook signature
use the type names directly in the function declaration rather than
(void *arg1, void *arg2)
Change-Id: I3d1e6c42d384d8e628d7f2075fa561c2c5e20749
James Zern [Tue, 9 Sep 2014 02:19:31 +0000 (19:19 -0700)]
Merge changes I4c74dcab,Ifbfc1422,I2450b485,Ibdb07f6d,I3737772f,Ic3be55ed
* changes:
vp9_pick_inter_mode: normalize some types
vp9_pick_inter_mode: cosmetics: localize var. defs
vp9_pick_inter_mode: cosmetics: add const
vp9_pick_inter_mode: cosmetics: fix indent
vp9_pickmode: move PRED_BUFFER definition to .c
vp9_pickmode: make vp9_pick_inter_mode() void
Yaowu Xu [Tue, 9 Sep 2014 01:10:20 +0000 (18:10 -0700)]
Merge "No longer use use_lastframe_partitioning speed feature"
Paul Wilkins [Mon, 8 Sep 2014 22:27:33 +0000 (15:27 -0700)]
Fix VS build issue.
Compile fails when CONFIG_INTERNAL_STATS
flag is set.
Change-Id: Iba7701c058169ca3fc0b9008619ac55a1fe1a8b6
Minghai Shang [Mon, 8 Sep 2014 20:10:21 +0000 (13:10 -0700)]
Merge "[spatial svc]Add layer bitrates options and clean up parsing options from string"
Johann [Mon, 8 Sep 2014 18:36:03 +0000 (11:36 -0700)]
Merge "Fixing Mac OS build."
Alex Converse [Thu, 4 Sep 2014 18:47:30 +0000 (11:47 -0700)]
Add an invalid file test for referencing a different color space.
Change-Id: I46472a524f5188b293332946be943bd15cfc8777
Alex Converse [Tue, 2 Sep 2014 19:25:44 +0000 (12:25 -0700)]
BITSTREAM CLARIFICATION: Forbid referencing across color spaces.
Check image format of reference frames.
Change-Id: I7d8d7f097ba547839ff9cec3880bd15a4948ee06
Johann [Mon, 8 Sep 2014 17:07:11 +0000 (10:07 -0700)]
Merge "vp8 encoder: remove vp8_yv12_copy_partial_frame_neon"
Yaowu Xu [Mon, 8 Sep 2014 16:17:21 +0000 (09:17 -0700)]
Merge "Fix a visual studio warning"
Jia Jia [Fri, 5 Sep 2014 06:10:52 +0000 (06:10 +0000)]
vp8 encoder: remove vp8_yv12_copy_partial_frame_neon
Use generic C implementation instead of neon-specific code
Change-Id: Ib322b4ece9cdbd4de76a9eed3d2e9fd1d8542406
Dmitry Kovalev [Mon, 8 Sep 2014 15:53:12 +0000 (08:53 -0700)]
Fixing Mac OS build.
Change-Id: Ifae8906185a868a07685eb7a7da2484af95e70a7
Jingning Han [Mon, 8 Sep 2014 15:51:05 +0000 (08:51 -0700)]
Merge "Enable adaptive motion search for ARF coding"
Dmitry Kovalev [Sun, 7 Sep 2014 08:30:38 +0000 (01:30 -0700)]
Merge "Replacing vp9_get_mb_ss_sse2 asm implementation with intrinsics."
James Zern [Sat, 6 Sep 2014 17:25:19 +0000 (10:25 -0700)]
libyuv: cherry-pick MSVC arm build fix
Issue
24479004: Fix building with MSVC for arm
https://webrtc-codereview.appspot.com/
24479004/
Change-Id: I758b33a21f46e46af6e58d83b7c045262ac9c7d9
Dmitry Kovalev [Sat, 6 Sep 2014 07:10:25 +0000 (00:10 -0700)]
Replacing vp9_get_mb_ss_sse2 asm implementation with intrinsics.
Change-Id: Ib4f5dd733eb2939b108070a01e83da5d9990bac0
James Zern [Sun, 17 Aug 2014 00:05:02 +0000 (17:05 -0700)]
vp9_pick_inter_mode: normalize some types
Change-Id: I4c74dcab6358817f03d3bc4d526006d241f0c10e
James Zern [Sat, 16 Aug 2014 23:58:31 +0000 (16:58 -0700)]
vp9_pick_inter_mode: cosmetics: localize var. defs
Change-Id: Ifbfc142291697a1847ef85ced0b0eb4d6dab161e
James Zern [Sat, 16 Aug 2014 23:55:25 +0000 (16:55 -0700)]
vp9_pick_inter_mode: cosmetics: add const
Change-Id: I2450b4856e48dbc4d5b938b2edcea0704f756c8e
James Zern [Sun, 17 Aug 2014 00:03:59 +0000 (17:03 -0700)]
vp9_pick_inter_mode: cosmetics: fix indent
+ delete a dead comment
Change-Id: Ibdb07f6dbdb30fc7888f6115ddc326fcec1157a7
James Zern [Sun, 17 Aug 2014 00:15:27 +0000 (17:15 -0700)]
vp9_pickmode: move PRED_BUFFER definition to .c
Change-Id: I3737772fe53f9885c82e2ac4c1af478ab951c16c
James Zern [Sat, 16 Aug 2014 23:47:44 +0000 (16:47 -0700)]
vp9_pickmode: make vp9_pick_inter_mode() void
the previous return value was constant and unused.
Change-Id: Ic3be55edb4a884448c7bb07977a80dfb58b7b940
Dmitry Kovalev [Fri, 5 Sep 2014 23:36:59 +0000 (16:36 -0700)]
Cleaning up and speeding up vp9_idct32x32_1024_add_sse2().
Change-Id: If91017b792572c9db6e257011ca307bef8428486
Dmitry Kovalev [Sat, 6 Sep 2014 01:11:08 +0000 (18:11 -0700)]
Merge "Removing postproc mmx code."
Yunqing Wang [Fri, 5 Sep 2014 22:44:52 +0000 (15:44 -0700)]
No longer use use_lastframe_partitioning speed feature
The speedup in rd_pick_partition() function makes it possible
to drop use_lastframe_partitioning feature. By doing that, we
achieve good PSNR gain with small speed loss. Also, this makes
encoding loop less complicated. The code cleanup patch will
follow.
Borg tests showed:
1. At speed 2,
stdhd set: 0.201% PSNR gain, 0.133% SSIM gain;
derf set: 0.262% PSNR gain, 0.276% SSIM gain.
2. At speed 3,
stdhd set: 0.139% PSNR gain, 0.109% SSIM gain;
derf set: 0.447% PSNR gain, 0.442% SSIM gain.
The average speed loss over selected test clips is within 1%
with the worst case of 4%.
Change-Id: Icfd2ded7869372b585a6972855d933b3d0280d90
Yunqing Wang [Fri, 5 Sep 2014 20:45:41 +0000 (13:45 -0700)]
Merge "Correct the mode decisions in special cases"
Minghai Shang [Thu, 4 Sep 2014 23:35:28 +0000 (16:35 -0700)]
[spatial svc]Add layer bitrates options and clean up parsing options from string
Change-Id: I6e8d3f08c8a8ce3555a498feba471ba9fec411c6
Dmitry Kovalev [Fri, 5 Sep 2014 19:03:36 +0000 (12:03 -0700)]
Merge "Initializing intra modes without vpx_once()."
James Zern [Fri, 5 Sep 2014 19:01:59 +0000 (12:01 -0700)]
Merge changes I7b9f40dc,I76e74f2e
* changes:
vp9: correct context buffer resize check
vp9: fail decode if block/frame refs are corrupt
Yunqing Wang [Thu, 4 Sep 2014 22:16:12 +0000 (15:16 -0700)]
Correct the mode decisions in special cases
The rate costs calculated for inter modes are not precise in some
cases, which causes NEWMV is chosen instead of NEARESTMV, NEARMV,
and ZEROMV. This patch added checks for these cases, and corrected
the mode decisions.
Borg tests at speed 3 showed:
1. stdhd set: 0.102% PSNR gain and 0.088% SSIM gain.
2. derf set: 0.147% PSNR gain and 0.132% SSIM gain.
No speed change.
Change-Id: I35d17684b89ad4734fb610942d707899146426db
James Zern [Fri, 5 Sep 2014 18:58:55 +0000 (11:58 -0700)]
Merge "fix x86-darwin* build"
James Zern [Fri, 5 Sep 2014 18:58:09 +0000 (11:58 -0700)]
Merge "vp9: skip loopfilter when the frame is corrupt"
Dmitry Kovalev [Fri, 5 Sep 2014 18:52:24 +0000 (11:52 -0700)]
Removing postproc mmx code.
Removed functions:
* vp9_post_proc_down_and_across_mmx
* vp9_mbpost_proc_down_mmx
* vp9_plane_add_noise_mmx
They all have sse2 equivalent.
Change-Id: I59c1fac12b7c96ca4538d455e4400c2b7875feff
Dmitry Kovalev [Fri, 5 Sep 2014 17:31:41 +0000 (10:31 -0700)]
Merge "Adding temp cpi var."
Jia Jia [Fri, 5 Sep 2014 05:02:22 +0000 (05:02 +0000)]
vp8 common: change 'HAVE_NEON_ASM' to 'HAVE_NEON' for compiling functions of NEON intrinsics.
Change-Id: I975e5eac16f8b623ff589f0ec072cdaff2183b04
James Zern [Fri, 5 Sep 2014 06:32:13 +0000 (23:32 -0700)]
fix x86-darwin* build
vp9_variance_sse2.c contains a mix of intrinsics and references to
assembly which uses x86inc.asm; it's conditionally included as a result.
Change-Id: I254451483a65881c0b8e18e27bf0c3ddef60c4ec
James Zern [Fri, 11 Jul 2014 07:05:57 +0000 (00:05 -0700)]
bilinearpredict_neon: fix type conversion warnings
make bifilter4_coeff[][] uint8_t, no values exceed this range and
they're loaded with vdup_n_u8().
Change-Id: I921983e9edd828d29820e40ac30a7801dbe0fb4f
James Zern [Thu, 4 Sep 2014 23:05:18 +0000 (16:05 -0700)]
vp9: correct context buffer resize check
allocations within vp9_alloc_context_buffers() rely on mi_rows/mi_cols
individually, use those to determine whether to realloc rather than
stride and stride * rows. this fixes a crash with some fuzzed files for
invalid accesses into last_frame_seg_map and above_context.
Change-Id: I7b9f40dcf170d443890f3bd2acd285507943c7d4
James Zern [Thu, 4 Sep 2014 22:11:45 +0000 (15:11 -0700)]
vp9: fail decode if block/frame refs are corrupt
proceeding using a corrupt (incompletely decoded) frame reference may
lead to incorrect assumptions about allocation sizes leading to a crash.
Change-Id: I76e74f2e1be127c2e2c7e1174bb3307497dfd23d
Dmitry Kovalev [Fri, 5 Sep 2014 00:28:22 +0000 (17:28 -0700)]
Merge "Removing sz member from vpx_codec_priv. "
Dmitry Kovalev [Fri, 5 Sep 2014 00:28:16 +0000 (17:28 -0700)]
Merge "Removing unused function prototypes."
Yaowu Xu [Thu, 4 Sep 2014 00:02:31 +0000 (17:02 -0700)]
Fix a visual studio warning
Change-Id: I7f935e61c8c0ade7893a5212701f07bb346d78cb
JackyChen [Thu, 4 Sep 2014 23:59:53 +0000 (16:59 -0700)]
Merge "Map motion magnitude in VP9 denoiser."
Jingning Han [Thu, 4 Sep 2014 23:09:14 +0000 (16:09 -0700)]
Enable adaptive motion search for ARF coding
This commit turns on adaptive motion search for ARF coding, in
addition to other normal inter frame coding. It improves the
average compression efficiency:
stdhd 0.1%
derf 0.04%
For the test sequences, the speed 3 runtime is reduced:
pedestrian 1080p 2000 kbps, 149932 ms -> 144580 ms, (3.3% speed-up)
bus CIF 1000 kbps, 8050 ms -> 7895 ms, (1.9%)
highway CIF 100 bkps, 45033 ms -> 44078 ms, (2.2%)
Change-Id: I5228565b609f99e8ae04f6140a2bf2b64a831d21
Jingning Han [Thu, 4 Sep 2014 23:09:07 +0000 (16:09 -0700)]
Merge "Speed up compound inter prediction mode check"