Dmitry Kovalev
d007446b3f
Replacing long block size enum values with shorter ones (2).
...
Change-Id: I428c4d42212b757112e3acfe5b81314cfbb5fd6b
2013-08-05 10:51:02 -07:00
Dmitry Kovalev
319867d71c
Merge "Cleaning up vp9_build_inter_predictor function."
2013-08-05 01:52:11 -07:00
Jim Bankoski
f703f98757
reworked find_mv_ref
...
This is an attempt at rewriting vp9_find_mv_refs_idx. I believe that it gains
about 1-2% decode speed
Change-Id: Ia5359c94ce9bb43b32652890e605e9a385485c1b
2013-08-03 20:25:55 -07:00
Dmitry Kovalev
7b50333e8f
Merge "Adding is_inter_block function."
2013-08-02 16:54:32 -07:00
Dmitry Kovalev
5f0a52faaf
Cleaning up vp9_build_inter_predictor function.
...
Change-Id: I94f6b4272b95ac101de6d10f048116ba065788b0
2013-08-02 16:53:18 -07:00
Dmitry Kovalev
603931e291
Merge "Changing function arg type from int_mv* to MV*."
2013-08-02 16:30:06 -07:00
Dmitry Kovalev
a6adc82e78
Merge "Cleanups around allow_high_precision_mv flag."
2013-08-02 16:27:05 -07:00
Dmitry Kovalev
680ec32d18
Adding is_inter_block function.
...
Using it instead of long unclear verbose check
"mbmi->ref_frame[0] != INTRA_FRAME".
Change-Id: I9c7b4b3797942fa962bf3ba7460fff3084beabe9
2013-08-02 16:25:33 -07:00
Dmitry Kovalev
769bcab3f5
Cleaning up set_contexts_on_border function.
...
Change-Id: I8f21c18b29f54b277fb1c167f278f109d9f3b996
2013-08-02 15:52:26 -07:00
Dmitry Kovalev
25b77e2569
Changing function arg type from int_mv* to MV*.
...
Change-Id: Ic878d31df2ce783a2c9a8c4bc9ed301ec8ffe25e
2013-08-02 15:26:32 -07:00
Dmitry Kovalev
5d86f3886d
Moving struct loop_filter_info from *.h to *.c file.
...
Change-Id: I3fe90eb40088a5b07bdc7d66d93ffe6ef99943d5
2013-08-02 11:53:49 -07:00
Johann
8ff58093f0
Merge "vp9: neon: convolve: replace some insns with simpler equivalents"
2013-08-02 11:28:31 -07:00
Johann
8bebfbf7c5
Merge "vp9: neon: convolve: simplify branching to C fallbacks"
2013-08-02 11:28:25 -07:00
Johann
7d14ce8ba5
Merge "vp9: neon: optimise loads in horiz convolve functions"
2013-08-02 11:28:04 -07:00
Johann
319b7dc283
Merge "vp9: neon: add vp9_mb_lpf_* functions"
2013-08-02 11:27:52 -07:00
Dmitry Kovalev
86053d3ae2
Cleanups around allow_high_precision_mv flag.
...
Change-Id: Ic07f5f8ffeaedd5b7513b464871f83afc82dcd5c
2013-08-02 11:21:16 -07:00
Dmitry Kovalev
b47153deed
Replacing long block size enum values with shorter ones.
...
Change-Id: I0e9329490828684a4fd46f540d89114cc68e8407
2013-08-02 10:48:27 -07:00
Mans Rullgard
355cb14dc7
vp9: neon: convolve: replace some insns with simpler equivalents
...
Change-Id: I5d6906772e6e6adf68d7f0fd5b8b5207a64a3a37
2013-08-02 08:11:28 -07:00
Mans Rullgard
2003468df8
vp9: neon: convolve: simplify branching to C fallbacks
...
Change-Id: Ic7cacd02d6dc9243ad8fc85082c5618a9d1e66dc
2013-08-02 08:11:25 -07:00
Mans Rullgard
5e2e78d024
vp9: neon: optimise loads in horiz convolve functions
...
Loading to single lanes in multiple registers is expensive since
it requires a read and write of each register which saturates
the register file access. Loading to single registers followed
by a separate transpose reduces this pressure.
Change-Id: I4cc35887ddbca80e5e635b50d2b1d158de9668ee
2013-08-02 08:11:08 -07:00
Mans Rullgard
d85ae87183
vp9: neon: add vp9_mb_lpf_* functions
...
Change-Id: I13e0880df234f15abc4cc7c57fe84488d5d46a75
2013-08-02 08:10:50 -07:00
Dmitry Kovalev
d91e9f4e36
Merge "Cleanup: replacing xd->seg with seg, and xd->lf with lf."
2013-08-01 23:17:17 -07:00
Dmitry Kovalev
4144fee9e9
Merge "Cleanup: reusing clamp_mv function."
2013-08-01 23:16:56 -07:00
Jingning Han
555bbd68c7
Merge "Remove unused vp9_short_idct10_32x32_add"
2013-08-01 15:41:35 -07:00
Dmitry Kovalev
741537f3ce
Cleanup: replacing xd->seg with seg, and xd->lf with lf.
...
Change-Id: I73b59d7699a8e7e7acd3bf8041cb6c98ce9ba4bf
2013-08-01 15:38:16 -07:00
Dmitry Kovalev
9f4f001ba5
Merge "Cleanup: removing unused function arguments."
2013-08-01 15:07:12 -07:00
Dmitry Kovalev
422d38bca1
Cleanup: reusing clamp_mv function.
...
Change-Id: I8715f08a3554bdb557c5f935f1dfbd671f18e766
2013-08-01 15:06:34 -07:00
Dmitry Kovalev
ddf02e323a
Merge "Nice looking motion vector clamping functions."
2013-08-01 14:50:14 -07:00
Deb Mukherjee
19d42de3ca
Merge "Adds a source variance computation function"
2013-08-01 14:18:43 -07:00
Dmitry Kovalev
0497b8d7cd
Merge "vp9_get_pred_context_intra_inter cleanup."
2013-08-01 14:15:53 -07:00
Dmitry Kovalev
ce8dedc353
Cleanup: removing unused function arguments.
...
Change-Id: I27471768980fc631916069f24bc7c482a5c9ca17
2013-08-01 13:41:38 -07:00
Dmitry Kovalev
b621e2d72e
Nice looking motion vector clamping functions.
...
Removing assign_and_clamp_mv function, making implementation of clamp_mv
and clamp_mv2 more clear and consistent.
Change-Id: Iecd08e1c1bf0379f8314ebe01811f8253f4ade58
2013-08-01 13:40:26 -07:00
Deb Mukherjee
dbea726daf
Adds a source variance computation function
...
Adds a function to compute source variance for various
sb_types to be used for pruning mode and partition searches.
[The existing activity measure function is currently specialized
for only 16x16 MBs and needs to be updated].
Change-Id: I22a41e6f1430184201487326fdbebb9b47e6fc24
2013-08-01 13:01:54 -07:00
Jingning Han
67719abde1
Remove unused vp9_short_idct10_32x32_add
...
The inverse 32x32 transform detects all zero entries and skips the
computations accordingly per 8 rows in the first 1-D operation. The
function vp9_short_idct10_32x32_add performs differently and is not
used anywhere, hence removed.
Change-Id: Ic4fad422debbde7b6b6ffed47c69fbd4268a906c
2013-08-01 12:45:16 -07:00
Jingning Han
56df76bf1b
Merge "Optimize 32x32 2D inverse DCT for speed-up"
2013-08-01 11:53:39 -07:00
Dmitry Kovalev
5b65246a71
Adding missing const to vp9_extra_bits array.
...
Change-Id: Icd128ab58719e0b9066bdfa66a5d0d427a84d6df
2013-07-31 18:51:18 -07:00
Dmitry Kovalev
fb3e78a73a
vp9_get_pred_context_intra_inter cleanup.
...
Change-Id: I8beeee4c020425175f7d5ec83be86afa7b95da1a
2013-07-31 18:33:04 -07:00
Jingning Han
9d67495f72
Optimize 32x32 2D inverse DCT for speed-up
...
This commit exploits the sparsity of quantized coefficient matrix.
It detects each 32x8 array and skip the corresponding inverse
transformation if all entries are zero.
For ped1080p at 8000 kbps, this on average reduces the runtime of
32x32 inverse 2D-DCT SSE2 function from 6256 cycles -> 5200
cycles. It makes the overall encoding process about 2% faster at
speed 0. The speed-up is more pronounceable for the decoding process.
Change-Id: If20056c3566bd117642a76f8884c83e8bc8efbcf
2013-07-31 17:13:31 -07:00
Dmitry Kovalev
9239e96536
Removing get_mi_{row, col} functions.
...
Passing mi_row and mi_col parameters to functions explicitly. Removing
unused xd argument from scale_mv function.
Change-Id: Icb4c495ec72d26fb066c14470d3ae0b741fbf18a
2013-07-31 14:06:55 -07:00
Dmitry Kovalev
8701bc11df
Consistent update for inter_mode probabilities.
...
Using inter-mode counts instead of inter-mode-tree branch counts inside
FRAME_COUNTS structure.
Change-Id: I60dde13af37d06146d7d15543311c1b5044e9e04
2013-07-30 18:06:34 -07:00
Adrian Grange
fbd73648dd
Merge "Cleanup typos, remove unnecessary lines, replace switch"
2013-07-30 12:59:46 -07:00
Adrian Grange
b30a06b930
Cleanup typos, remove unnecessary lines, replace switch
...
Removed unnecessary code lines, replaced switch with an if,
fixed spelling errors and formatting.
Change-Id: Ie48aa4604aa0ed48362ca359d792fb21b2ec1dc6
2013-07-30 12:10:32 -07:00
Jingning Han
5875d7a4a4
Merge "16x16 inverse 2D-DCT with DC only"
2013-07-29 15:29:25 -07:00
John Koleszar
9c6fafb25b
Merge "Remove unnecessary 64 byte alignment"
2013-07-29 15:09:15 -07:00
Jingning Han
a7c4de22e1
16x16 inverse 2D-DCT with DC only
...
This commit provides special handle on 16x16 inverse 2D-DCT, where
only DC coefficient is quantized to be non-zero value.
Change-Id: I7bf71be7fa13384fab453dc8742b5b50e77a277c
2013-07-29 14:45:53 -07:00
Dmitry Kovalev
828119d6ab
Renaming txfm to tx for consistency in some places.
...
Change-Id: I2a6a646570e2af66315e7c658d00d99f80c4b127
2013-07-29 14:35:55 -07:00
John Koleszar
a31effca75
Remove unnecessary 64 byte alignment
...
Fixes a warning on MSVS 2012 where the alignment of vp9_default_iscan_8x8
didn't match between its declaration and definition.
Change-Id: I1466a15635f4b22594d705d570b7e399bfb6cf21
2013-07-29 14:02:02 -07:00
Dmitry Kovalev
730a34416f
Renaming NB_TXFM_MODES constant to TX_MODES.
...
Change-Id: I10bf06e3a3d5271221ae6a42a36074d01d493039
2013-07-29 13:38:40 -07:00
Dmitry Kovalev
23391ea835
Renaming TX_SIZE_MAX_SB to TX_SIZES.
...
Change-Id: I6aa4191935aa93461a07c41b59fdae1eb5f5f107
2013-07-29 12:25:34 -07:00
Dmitry Kovalev
cc0ff7ecfa
Cleanup: replacing xd->mode_info_context with temp variable.
...
Change-Id: I5a3e83102784cabb918a5404405fcab99c5bb9b6
2013-07-26 19:05:37 -07:00