Yunqing Wang [Wed, 13 Nov 2013 00:51:15 +0000 (16:51 -0800)]
Do horizontal loopfiltering in parallel
This patch followed "Rewrite filter_selectively_horiz for parallel
loopfiltering" commit, and added x86 SSE2 optimization to do
16-pixel filtering in parallel. Also, corrected the declaration
of aligned arrays. For 8-pixel-in-parallel case, improved the
calculation of the masks and filters. Updated the threshold loading
since the thresholds were already duplicated. Updated neon C functions
to call neon loopfilters twice.
Using tulip clip, tests showed it gave a ~1.5% decoder speed gain.
Change-Id: Id02638626ac27a4b0e0b09d71792a24c0499bd35
Dmitry Kovalev [Wed, 13 Nov 2013 18:01:05 +0000 (10:01 -0800)]
Merge "Optimizing set_contexts() function."
Yunqing Wang [Wed, 13 Nov 2013 17:40:14 +0000 (09:40 -0800)]
Merge "Use 1D array to store super block filter levels"
Johann [Wed, 13 Nov 2013 17:00:09 +0000 (09:00 -0800)]
Merge "mips dsp-ase r2 vp9 decoder intra module optimizations (rebase)"
Parag Salasakar [Wed, 13 Nov 2013 05:47:14 +0000 (11:17 +0530)]
mips dsp-ase r2 vp9 decoder intra module optimizations (rebase)
Change-Id: Ib27fc4f3dbe01fe8adfa04a61aaba21b3480e75c
Parag Salasakar [Wed, 13 Nov 2013 05:23:16 +0000 (10:53 +0530)]
mips dsp-ase r2 vp9 decoder loopfilter module optimizations (rebase)
Change-Id: Ia7f640ca395e8deaac5986f19d11ab18d85eec2d
Dmitry Kovalev [Wed, 13 Nov 2013 01:28:27 +0000 (17:28 -0800)]
Moving q_index from MACROBLOCKD to MACROBLOCK.
Moving because q_index is used only by encoder.
Change-Id: I0b96175614ed4fd3d76ee56a0ba36258e1e896f6
Jingning Han [Wed, 13 Nov 2013 02:11:41 +0000 (18:11 -0800)]
Merge "Enable dual buffer rd search and encoding scheme"
Jingning Han [Wed, 13 Nov 2013 02:11:34 +0000 (18:11 -0800)]
Merge "Add test vector for row/col tile decoding"
Dmitry Kovalev [Wed, 13 Nov 2013 00:57:30 +0000 (16:57 -0800)]
Merge "Calculating transform block offsets (x and y) only once."
Dmitry Kovalev [Wed, 13 Nov 2013 00:54:30 +0000 (16:54 -0800)]
Merge "Using max_tx_size instead of bsize when possible."
Dmitry Kovalev [Tue, 12 Nov 2013 23:59:28 +0000 (15:59 -0800)]
Merge "Moving {sb, mb, b, ab}_index from MACROBLOCKD to MACROBLOCK."
Dmitry Kovalev [Tue, 12 Nov 2013 23:48:07 +0000 (15:48 -0800)]
Merge "Adding const to tree pointer inside vp9_extra_bit struct."
Johann [Tue, 12 Nov 2013 23:30:00 +0000 (15:30 -0800)]
Merge "Added optimized vp9_idct32x32_34_add_dspr2"
Dmitry Kovalev [Tue, 12 Nov 2013 22:21:15 +0000 (14:21 -0800)]
Adding const to tree pointer inside vp9_extra_bit struct.
Change-Id: I60e02fa3de930ff1f969687ab5af93dee40d86ad
Joshua Litt [Mon, 11 Nov 2013 20:31:42 +0000 (12:31 -0800)]
Android.mk file for vpx unittests
These changes are to support automated regressions of vpx on android
new file: test/android/Android.mk
new file: test/android/README
new file: test/android/get_files.py
Change-Id: I52c8e9daf3676a3561badbe710ec3a16fed72abd
Dmitry Kovalev [Mon, 11 Nov 2013 22:54:01 +0000 (14:54 -0800)]
Calculating transform block offsets (x and y) only once.
Change-Id: I4b5106bdc08fd4551339b968c13428a8f43122e2
Yunqing Wang [Tue, 12 Nov 2013 20:01:25 +0000 (12:01 -0800)]
Use 1D array to store super block filter levels
As Jim suggested, 1D array was used to store filter levels instead
of 2D array. This used shift_y in setup_mask directly, and saved
few cycles.
Change-Id: If61ab298784861f1806b1cd396d4e4e2e0f097b9
Jingning Han [Mon, 11 Nov 2013 18:39:32 +0000 (10:39 -0800)]
Add test vector for row/col tile decoding
1920x1080
vp90-2-08-tile-4x4.webm
vp90-2-08-tile-4x4.webm.md5
vpxenc blue_sky_1080p25 --frame-parallel=0 \
--tile-columns=2 --tile-rows=2 \
--lossless=0 --error-resilient=0 \
--min-q=0 --max-q=30 --kf-min-dist=0 --kf-max-dist=9999 \
--cpu-used=0 --codec=vp9 -p 2 --good --fps=25/1 --limit=5
vp90-2-08-tile-4x1.webm
vp90-2-08-tile-4x1.webm.md5
vpxenc blue_sky_1080p25 --frame-parallel=0 \
--tile-columns=0 --tile-rows=2 \
--lossless=0 --error-resilient=0 \
--min-q=0 --max-q=30 --kf-min-dist=0 --kf-max-dist=9999 \
--cpu-used=0 --codec=vp9 -p 2 --good --fps=25/1 --limit=5
Change-Id: I77d0ccf9b721ae5cfa72781fe0d3c534ea43b756
Deb Mukherjee [Tue, 12 Nov 2013 19:22:21 +0000 (11:22 -0800)]
Merge "Removes conditional statements from band getting"
Johann [Tue, 12 Nov 2013 18:41:06 +0000 (10:41 -0800)]
Use lowercase 'b' to branch
iOS doesn't recognize B:
bad instruction `B idct32_pass_loop'
Change-Id: I3cf6aede4639f1d9efa97f7962fa287ba6feaaef
Yunqing Wang [Tue, 12 Nov 2013 18:20:49 +0000 (10:20 -0800)]
Merge "Rewrite filter_selectively_horiz for parallel loopfiltering"
Yunqing Wang [Tue, 12 Nov 2013 18:19:56 +0000 (10:19 -0800)]
Merge "Improve loopfilter function"
Deb Mukherjee [Wed, 6 Nov 2013 01:25:38 +0000 (17:25 -0800)]
Removes conditional statements from band getting
Implements scan order to band map with arrays in both the encoder
and decoder to remove conditional statements.
Encoding seems to be about 1% faster at speed 0, tested on football.
Decoding seems to be about 0.5-1% faster on a set of 25 videos.
Change-Id: Idb233ca0b9e0efd790e30880642e8717e1c5c8dd
Dmitry Kovalev [Tue, 12 Nov 2013 02:37:22 +0000 (18:37 -0800)]
Merge "Removing redundant assignment."
Jingning Han [Wed, 6 Nov 2013 05:07:08 +0000 (21:07 -0800)]
Enable dual buffer rd search and encoding scheme
This commit enables the dual buffer rate-distortion optimization
and encoding scheme. It stacks the original transform coefficients,
quantized levels, and reconstructed coefficients, in the rate-
distortion optimization search process, hence eliminates the need
to re-run residual generation, forward transform, and quantization
in the encoding stage.
Change-Id: I011bfad3a59a380a869ee552e91dae0394ec492e
Jingning Han [Tue, 12 Nov 2013 02:00:57 +0000 (18:00 -0800)]
Merge "Allocate dual buffer sets for encoding"
Dmitry Kovalev [Tue, 12 Nov 2013 01:39:43 +0000 (17:39 -0800)]
Removing redundant assignment.
xd->mi_8x8 is assigned inside set_offsets() for each prediction block.
Change-Id: I20e5974a9eaf105e5a04fc7f99b7a93bd50e3d0a
Yunqing Wang [Sat, 9 Nov 2013 00:12:04 +0000 (16:12 -0800)]
Rewrite filter_selectively_horiz for parallel loopfiltering
Added loop filter mask checking, and made the caller function
ready for implementation of parallel loopfiltering in horizontal
direction.
Next, we need to go through the loopfilter functions (both c and
optimized versions), and provide 16-byte wide loopfiltering for
each filter type.
Change-Id: Ifef47e7ef9086ebc2fd6ca7ede8f27c9bbf79e66
Tom Finegan [Tue, 12 Nov 2013 01:01:57 +0000 (17:01 -0800)]
Merge "vpxenc: clean up; move stats code out of vpxenc.c"
Dmitry Kovalev [Tue, 12 Nov 2013 00:34:39 +0000 (16:34 -0800)]
Merge "Cleaning up joint_motion_search function."
Tom Finegan [Fri, 8 Nov 2013 05:28:45 +0000 (21:28 -0800)]
vpxenc: clean up; move stats code out of vpxenc.c
Change-Id: I6b245ef5017c49373ba33e30f8fbf3d1b97409b5
Jingning Han [Fri, 1 Nov 2013 19:53:37 +0000 (12:53 -0700)]
Allocate dual buffer sets for encoding
Allocate memory space of dual buffer sets that store the coeff, qcoeff,
dqcoeff, and eobs. Connect the pointers of macroblock_plane and
macroblockd_plane to the actual buffer in use accordingly.
Change-Id: I2f0b5f482ca879fae39095013eaf8901db20a5a4
Jingning Han [Tue, 12 Nov 2013 00:09:16 +0000 (16:09 -0800)]
Merge "Decouple macroblockd_plane buffer usage"
Dmitry Kovalev [Tue, 12 Nov 2013 00:04:02 +0000 (16:04 -0800)]
Cleaning up joint_motion_search function.
Change-Id: I70a0878b23bda0ac3ff8733b4c96d5c636bc551c
Dmitry Kovalev [Mon, 11 Nov 2013 23:58:57 +0000 (15:58 -0800)]
Moving {sb, mb, b, ab}_index from MACROBLOCKD to MACROBLOCK.
We use {sb, mb, b, ab}_index only inside encoder, so moving them into
appropriate data structure.
Change-Id: Ib5c1036716354d9d321e11a60c1634c1cb8f9716
Ivan Maltz [Mon, 11 Nov 2013 23:52:42 +0000 (15:52 -0800)]
Merge "Fixed memory leak with svc_test.cc"
Jingning Han [Thu, 31 Oct 2013 19:21:49 +0000 (12:21 -0700)]
Decouple macroblockd_plane buffer usage
Make the macroblockd_plane contain dynamic buffer pointers instead
static pointers to the memory space allocated therein. The decoder
uses the buffer allocated in pbi, while encoder will use a dual
buffer approach for rate-distortion optimization search.
Change-Id: Ie6f24be2dcda35df7c15b4014e5ccf236fb3f76c
Ivan Maltz [Mon, 11 Nov 2013 21:55:34 +0000 (13:55 -0800)]
Fixed memory leak with svc_test.cc
was not calling vpx_codec_destroy and delete(decoder_) in TearDown
Change-Id: Iff4fd24a260223d224b3ea3287cdf0227405492f
hkuang [Mon, 11 Nov 2013 20:49:12 +0000 (12:49 -0800)]
Fix a bug in the assembly code.
Change-Id: Ic416e3f8a11e82ee298e6f709b2119a9ddf1e2f8
Dmitry Kovalev [Mon, 11 Nov 2013 20:27:42 +0000 (12:27 -0800)]
Merge "Replacing (raster_block >> tx_size) with (block >> (tx_size << 1))."
Tom Finegan [Mon, 11 Nov 2013 19:53:33 +0000 (11:53 -0800)]
Merge "vpx[dec|enc]: Clean up target OS based IO focused preproc abuse."
Tom Finegan [Mon, 11 Nov 2013 14:48:18 +0000 (06:48 -0800)]
vpx[dec|enc]: Clean up target OS based IO focused preproc abuse.
Relocate it to tools_common.h so we can stop duping this code
everywhere.
BUG=https://code.google.com/p/webm/issues/detail?id=660
Change-Id: If8aa49b74d297273cd9fd7006b2767837055a359
Dmitry Kovalev [Mon, 11 Nov 2013 19:12:06 +0000 (11:12 -0800)]
Merge "Localizing NEARESTMV special cases in the code."
Dmitry Kovalev [Mon, 11 Nov 2013 19:02:32 +0000 (11:02 -0800)]
Merge "Cleaning up vp9_quantize_b_c() function."
Dmitry Kovalev [Mon, 11 Nov 2013 19:01:35 +0000 (11:01 -0800)]
Merge "Cleaning up read_mv_probs() function."
Dmitry Kovalev [Mon, 11 Nov 2013 19:00:51 +0000 (11:00 -0800)]
Merge "Adding read_reference_mode() function."
Tom Finegan [Mon, 11 Nov 2013 15:57:42 +0000 (07:57 -0800)]
Merge "vpxenc: Remove support for IVF input."
Yaowu Xu [Sat, 9 Nov 2013 21:59:19 +0000 (13:59 -0800)]
Merge "[BITSTREAM]Fix row tile mode_info pointer setup"
Yaowu Xu [Fri, 8 Nov 2013 21:04:08 +0000 (13:04 -0800)]
[BITSTREAM]Fix row tile mode_info pointer setup
This commit fixes the assignment of mode_info pointer per tile. It
makes recognition of tiles in both row and column formats and properly
arrange the use of mode_info.
The bug was first introduced in
I6226456dd11f275fa991e4a7a930549da6675915
https://gerrit.chromium.org/gerrit/#/c/67492/
Change-Id: Ie12cd209f53241513728c461ee3d7b9599ddb860
Yaowu Xu [Sat, 9 Nov 2013 00:17:38 +0000 (16:17 -0800)]
Merge "Correct a couple of typos"
Tom Finegan [Fri, 8 Nov 2013 19:32:23 +0000 (11:32 -0800)]
vpxenc: Remove support for IVF input.
Change-Id: Ida0e1b2df89e992b8140672b70517d8623cf9ede
Dmitry Kovalev [Fri, 8 Nov 2013 20:44:56 +0000 (12:44 -0800)]
Optimizing set_contexts() function.
Inlining set_contexts_on_border() into set_contexts(). The only difference
is the additional check that "has_eob != 0" in addition to
"xd->mb_to_right_edge < 0" and "xd->mb_to_right_edge < 0". If has_eob == 0
then memset does the right thing and works faster.
Change-Id: I5206f767d729f758b14c667592b7034df4837d0e
Yaowu Xu [Fri, 8 Nov 2013 20:43:51 +0000 (12:43 -0800)]
Correct a couple of typos
Change-Id: Ic470c6c9ce27b615c9645b9cb0d67526417bc374
Yunqing Wang [Fri, 8 Nov 2013 20:00:36 +0000 (12:00 -0800)]
Merge "Improve vp9_idct4x4_1_add_sse2"
Yunqing Wang [Fri, 1 Nov 2013 21:08:54 +0000 (14:08 -0700)]
Improve loopfilter function
This patch continued the work done in "Rewrite loop_filter_info_n
struct"(commit:
00dbd369c70270428d56da6d15ea5486fc821c52) to further
improve loopfilter function.
1. Instead of storing pointers to thresholds, store loopfilter
levels within 64x64 SB;
2. Since loopfilter levels are already calculated in setup_mask,
we don't need call build_lfi to look up them again. Just save
loopfilter levels in setup_mask.
3. Reorganized and simplified filter_block_plane().
Tests showed a ~0.8% decoder speedup.
Change-Id: I723c7779738bbc2afcb9afa2c6f78580ee6c3af7
Yaowu Xu [Fri, 8 Nov 2013 19:11:39 +0000 (11:11 -0800)]
Merge "Disable zeroblock forcing for lossless coding mode"
Dmitry Kovalev [Fri, 8 Nov 2013 18:59:02 +0000 (10:59 -0800)]
Merge "Unifying tile decoding for both direct and inverse tile order."
Yaowu Xu [Fri, 8 Nov 2013 17:49:08 +0000 (09:49 -0800)]
Disable zeroblock forcing for lossless coding mode
This to make sure that prediction residue always get coded in lossless
mode.
This commit also fixed lossless unit test
Change-Id: I537726ee55328d4e4cf0a0196393a67e12bfcde1
Yunqing Wang [Fri, 8 Nov 2013 16:26:30 +0000 (08:26 -0800)]
Merge "Remove TEXTREL from 32bit encoder"
Paul Wilkins [Fri, 8 Nov 2013 12:24:51 +0000 (04:24 -0800)]
Merge "Removed unused rate parameter."
Dmitry Kovalev [Thu, 7 Nov 2013 02:51:01 +0000 (18:51 -0800)]
Replacing (raster_block >> tx_size) with (block >> (tx_size << 1)).
The new expression is much more logical than previous one. Surprisingly
both expressions give exactly the same set of dependent values
-- have_top, have_left, have_right -- in vp9_predict_intra_block.
Change-Id: I63eb1b592b8c37883b3a0dbb1f3daa271e446109
hkuang [Thu, 7 Nov 2013 22:42:29 +0000 (14:42 -0800)]
Merge "Add back vp9_short_idct32x32_1_add_neon which is deleted in cleanup I63df79a13cf62aa2c9360a7a26933c100f9ebda3."
Yunqing Wang [Wed, 6 Nov 2013 19:06:21 +0000 (11:06 -0800)]
Remove TEXTREL from 32bit encoder
This patch fixed the issue reported in "Issue 655: remove textrel's
from 32-bit vp9 encoder". The set of vp9_subpel_variance functions
that used x86inc.asm ABI didn't build correctly for 32bit PIC. The
fix was carefully done under the situation that there was not
enough registers.
After the change, we got
$ eu-findtextrel libvpx.so
eu-findtextrel: no text relocations reported in 'libvpx.so'
Change-Id: I1b176311dedaf48eaee0a1e777588043c97cea82
Jingning Han [Thu, 7 Nov 2013 19:39:04 +0000 (11:39 -0800)]
Merge "Fix the variable naming in encode_block"
Deb Mukherjee [Thu, 7 Nov 2013 17:40:07 +0000 (09:40 -0800)]
Merge "Miscelleneous changes in detokenize for speed"
Yaowu Xu [Thu, 7 Nov 2013 17:29:31 +0000 (09:29 -0800)]
Merge "disable avx/avx2 for old versions of MSVC"
Jingning Han [Wed, 6 Nov 2013 19:34:06 +0000 (11:34 -0800)]
Fix the variable naming in encode_block
The term x represents macroblock pointer across encode_block. Change
the two local variable names to avoid confusion.
Change-Id: Ic732e73023525d673c0a678ed2708ac1edf5a3f9
Paul Wilkins [Wed, 23 Oct 2013 14:10:59 +0000 (15:10 +0100)]
Removed unused rate parameter.
Change-Id: I6e4a266fdbad1d222eb45d45b67bbb82d091821a
Dmitry Kovalev [Thu, 7 Nov 2013 02:15:33 +0000 (18:15 -0800)]
Unifying tile decoding for both direct and inverse tile order.
Now tile decoding consists of two stages:
1. Find tile buffer start and its size, put this info into tile_buffers.
2. Decode each tile based on information from tile_buffers.
It seems that stage 1 can also be reused by multithreaded tile decoder.
Change-Id: If0cdaefdd6d10bb41c63561346c9ae4cfac081dd
Ivan Maltz [Thu, 7 Nov 2013 01:24:05 +0000 (17:24 -0800)]
Merge "Move SVC per-frame loop from sample app into libvpx proper"
Dmitry Kovalev [Thu, 7 Nov 2013 00:59:57 +0000 (16:59 -0800)]
Merge "Using pd->dqcoeff instead of pd->qcoeff in the decoder."
Dmitry Kovalev [Thu, 7 Nov 2013 00:14:45 +0000 (16:14 -0800)]
Using pd->dqcoeff instead of pd->qcoeff in the decoder.
It is more logical to use dqcoeff buffer to put there *dequantized*
transform coefficients (inside inverse_transform_block and
decode_coefs functions). Dequantization happens inside WRITE_COEF_CONTINUE
macro.
qcoeff buffer should be only used in the encoder for *quantized*
transform coefficients.
Change-Id: Ifd54bef272bbf5311ced6669c4f1079f998af5d7
Ivan Maltz [Wed, 23 Oct 2013 18:53:37 +0000 (11:53 -0700)]
Move SVC per-frame loop from sample app into libvpx proper
SVC multiple layer per frame encoding is invoked with vpx_svc_init and
vpx_svc_encode. These interfaces are designed to be invoked from ffmpeg.
Additional improvements:
- make dummy frame handling a bit more explicit
- fixed bug with single layer encodes
- track individual frame sizes and psnrs instead of averages
- parameterized quantizer, 16th scalefactors, more logging,
- enabled single layer encodes to generate baseline
- include new mode for 3 layer I frame with 5 total layers
Change-Id: I46cfa600d102e208c6af8acd6132e0cc25cda8d4
Dmitry Kovalev [Wed, 6 Nov 2013 22:18:33 +0000 (14:18 -0800)]
Merge "Replacing mi_{width,height}_log2 with num_8x8_blocks_{wide,high}_lookup."
Joshua Litt [Wed, 6 Nov 2013 21:37:19 +0000 (13:37 -0800)]
Merge "Allow test data path to be set by preprocessor symbol"
Dmitry Kovalev [Wed, 6 Nov 2013 21:34:23 +0000 (13:34 -0800)]
Replacing mi_{width,height}_log2 with num_8x8_blocks_{wide,high}_lookup.
Change-Id: I04c55daef89bca2b85cb7db0850f9b052abc5a7c
Deb Mukherjee [Wed, 6 Nov 2013 21:12:47 +0000 (13:12 -0800)]
Merge "Removes stack allocation of token_cache"
Joshua Litt [Mon, 4 Nov 2013 21:47:30 +0000 (13:47 -0800)]
Allow test data path to be set by preprocessor symbol
Change-Id: I19c482c7cba34db574b3f33178ba20aede49779e
Yaowu Xu [Wed, 6 Nov 2013 21:04:28 +0000 (13:04 -0800)]
Merge "Missing _ means no sse3 for vp9_h_predictor_32x32."
Yaowu Xu [Tue, 5 Nov 2013 22:45:55 +0000 (14:45 -0800)]
disable avx/avx2 for old versions of MSVC
Change-Id: Ifb40757c9c6b353482cfeef929af282ee0136c6c
Deb Mukherjee [Tue, 5 Nov 2013 19:19:27 +0000 (11:19 -0800)]
Removes stack allocation of token_cache
Removes stack-allocation of token_cache in the tokenize
function in the encoder.
Change-Id: Ifdbab76dc2b23384da0080d2e9390533e489db8c
Tom Finegan [Wed, 6 Nov 2013 18:02:31 +0000 (10:02 -0800)]
webmenc: Clean up the truly egregious style issues.
I'm sure I could do more, but I don't know how long this code has to
live. I think this at least makes the code a little easier to read and
understand.
Change-Id: I6ca76357f89468d4851a3d1826e7aefa498e51d1
Tom Finegan [Wed, 6 Nov 2013 19:30:25 +0000 (11:30 -0800)]
Merge "Move WebM writing support out of vpxenc.c."
Yaowu Xu [Wed, 6 Nov 2013 18:25:52 +0000 (10:25 -0800)]
Merge "optimize decode_bool operation"
Tom Finegan [Tue, 5 Nov 2013 18:02:18 +0000 (10:02 -0800)]
Move WebM writing support out of vpxenc.c.
This is mainly a clean up patchset. It moves the WebM writing support
out of vpxenc and into its own source file. Changes to tools_common and
vpxdec result from relocation of shared bits of code.
Change-Id: Iee55d3285f56e0a548f791094fb14c5ac5346a26
Paul Wilkins [Wed, 6 Nov 2013 13:57:55 +0000 (13:57 +0000)]
Missing _ means no sse3 for vp9_h_predictor_32x32.
Error in script means vp9_h_predictor_32x32 sse3 version
is not enabled.
Change-Id: Ia43672740da1ecdfb7fcd420490ef424b04accc4
Dmitry Kovalev [Wed, 6 Nov 2013 01:41:56 +0000 (17:41 -0800)]
Cleaning up vp9_quantize_b_c() function.
Change-Id: I42c75530a8c9cff68480657f074131e6b60d9fca
Dmitry Kovalev [Wed, 6 Nov 2013 01:36:43 +0000 (17:36 -0800)]
Using max_tx_size instead of bsize when possible.
Change-Id: I246364bc4270ca13aefb4bc3445bcf102b3170dc
Yaowu Xu [Wed, 6 Nov 2013 01:13:00 +0000 (17:13 -0800)]
Simply a macro
Change-Id: I1c0c1b92aab33b1e4321b8e584a934fe58e0b324
hkuang [Thu, 31 Oct 2013 17:06:23 +0000 (10:06 -0700)]
Add back vp9_short_idct32x32_1_add_neon which is deleted in
cleanup I63df79a13cf62aa2c9360a7a26933c100f9ebda3.
Change-Id: I034848cf05031618818f7df2e7f9c35102686948
Dmitry Kovalev [Tue, 5 Nov 2013 22:57:05 +0000 (14:57 -0800)]
Adding read_reference_mode() function.
Change-Id: I517ad7e1a48910f0d2e95feacd23f143d28b42d6
Dmitry Kovalev [Tue, 5 Nov 2013 22:43:35 +0000 (14:43 -0800)]
Cleaning up read_mv_probs() function.
Change-Id: I7a1e88b5977076e22736c0d6af1d4dcc19d39a6a
Dmitry Kovalev [Tue, 5 Nov 2013 22:28:43 +0000 (14:28 -0800)]
Merge "Removing old code."
Dmitry Kovalev [Tue, 5 Nov 2013 19:58:57 +0000 (11:58 -0800)]
Localizing NEARESTMV special cases in the code.
Removing special case handling from vp9_tree_probs_from_distribution(),
tree_merge_probs(), and vp9_tokens_from_tree_offset() functions. Replacing
inter_mode_offset() function with macro INTER_OFFSET which is used now for
vp9_inter_mode_tree definition.
Change-Id: Iff75a1499d460beb949ece543389c8754deaf178
Marco Paniconi [Tue, 5 Nov 2013 19:09:08 +0000 (11:09 -0800)]
Merge "Fixes to buffer update for temporal layers."
Dmitry Kovalev [Tue, 5 Nov 2013 18:59:04 +0000 (10:59 -0800)]
Merge "Unified approach for backward probability update."
Deb Mukherjee [Fri, 1 Nov 2013 23:01:52 +0000 (16:01 -0700)]
Miscelleneous changes in detokenize for speed
Changes to reduce branching in detokenization in order
to improve decode speed.
Change-Id: I23a74d072cc14d99f6fc054c1e6a72021e777903
Deb Mukherjee [Tue, 5 Nov 2013 00:34:18 +0000 (16:34 -0800)]
token_cache changes in decoder
Removes stack-alocation of token_cache in decode_coefs function
Seems to achieve about 1% decode speed improvement as tested on
25 480p videos.
Change-Id: I8e7eb3361fa09d9654dfad0677a6d606701fdc6e
Deb Mukherjee [Tue, 5 Nov 2013 17:29:31 +0000 (09:29 -0800)]
Merge "Remove one shot q experiment"