Mans Rullgard
635ba269be
vp9: neon: add vp9_convolve_copy_neon
...
Change-Id: I15adbbda15d1842e9f15f21878a5ffbb75c3c0c9
2013-08-14 16:27:55 +01:00
Paul Wilkins
26fead7ecf
Renaming in MB_MODE_INFO
...
The macro block mode info context originally contained an
entry for each 16x16 macroblock. In VP9 each entry refers
to an 8x8 region not a macro block, so the naming is misleading.
This first stage clean up changes the names of 3 entries in the
structure to remove the mb_ prefix.
TODO clean up the nomenclature more widely in respect of
mbmi and bmi.
Change-Id: Ia7305c6d0cb805dfe8cdc98dad21338f502e49c6
2013-08-14 12:47:52 +01:00
Paul Wilkins
54979b4350
Merge "Honor min_partition_size properly for non-square splits"
2013-08-14 04:45:18 -07:00
Guillaume Martres
3526f1cd5e
Get rid of bashisms in the main build scripts
...
The conversion was done with the help of the checkbashisms script
and https://wiki.ubuntu.com/DashAsBinSh .
Change-Id: Id64ecefb35c8d72302f343cd2ec442e7ef989d47
2013-08-13 18:48:35 -07:00
Guillaume Martres
fc50477082
Honor min_partition_size properly for non-square splits
...
Don't do vertical or horizontal splits if subsize < min_partition_size,
except for edge blocks where it makes sense.
Change-Id: I479aa66ba1838d227b5de8312d46be184a8d6401
2013-08-13 15:24:03 -07:00
Dmitry Kovalev
bcc8e9d9c6
Merge "Little cleanup inside decode_tile() function."
2013-08-13 14:43:10 -07:00
Guillaume Martres
ecb78b3e0c
Merge "Trivial clean up."
2013-08-13 12:40:37 -07:00
Jingning Han
7e0f88b6be
Use lookup table to find largest txfm size
...
Refactor choose_largest_txfm_size_ and make it find the largest
transform size via lookup table.
Change-Id: I685e0396d71111b599d5367ab1b9c934bd5490c8
2013-08-13 10:32:14 -07:00
Dmitry Kovalev
8105ce6dce
Merge "Using is_inter_block() instead of repetitive code."
2013-08-13 10:00:01 -07:00
Jingning Han
dc70fbe42d
Merge "Refactor model based tx search in super_block_yrd"
2013-08-13 08:48:49 -07:00
Paul Wilkins
5459f68d71
Trivial clean up.
...
Delete unused / commented out variable references.
Change-Id: Iaf20c0c3744f89adb296d153b516b5ea41b4f3b4
2013-08-13 13:26:18 +01:00
Paul Wilkins
8e35263bed
Merge "Honor min_partition_size properly"
2013-08-13 05:19:51 -07:00
Paul Wilkins
902f9c7cbd
Merge "Broken loop filter case."
2013-08-13 01:56:29 -07:00
Jingning Han
39fe235032
Merge "SSE2 high precision 32x32 forward DCT"
2013-08-12 23:03:47 -07:00
Dmitry Kovalev
2c7ae8c29a
Little cleanup inside decode_tile() function.
...
Change-Id: I3ed4beb59371fe21ca3e82253aa98e0cbd5e0630
2013-08-12 18:28:13 -07:00
Johann
4417c04531
Merge "vp9: neon: optimise convolve8_vert functions"
2013-08-12 17:54:47 -07:00
Johann
4cabbca4ce
Merge "vp9: neon: optimise convolve8_horiz functions"
2013-08-12 17:54:42 -07:00
Dmitry Kovalev
32006aadd8
Using is_inter_block() instead of repetitive code.
...
Change-Id: If0b04c476c34fb8c102c9f750d7fe5669a86a532
2013-08-12 17:42:14 -07:00
Jingning Han
78136edcdc
SSE2 high precision 32x32 forward DCT
...
Enable SSE2 implementation of high precision 32x32 forward DCT. The
intermediate stacks are of 32-bits. The run-time goes down from
32126 cycles to 13442 cycles.
Change-Id: Ib5ccafe3176c65bd6f2dbdef790bd47bbc880e56
2013-08-12 16:52:53 -07:00
Jingning Han
14cc7b319f
Refactor model based tx search in super_block_yrd
...
Remove unnecessary conditional branches in model-based transform
size search.
Change-Id: Ic862dc33ed6710a186f6248239dd5f09b5c19981
2013-08-12 16:34:48 -07:00
Dmitry Kovalev
b89eef8f82
Merge "Simplifying vp9_mvref_common.c."
2013-08-12 16:24:22 -07:00
Dmitry Kovalev
b214cd0dab
Merge "Removing foreach_predicted_block_uv function."
2013-08-12 15:54:01 -07:00
Dmitry Kovalev
98e3d73e16
Merge "Using MV* instead of int_mv* as argument of vp9_clamp_mv_min_max."
2013-08-12 15:53:25 -07:00
Dmitry Kovalev
1a5e6ffb02
Simplifying vp9_mvref_common.c.
...
Change-Id: I272df2e33fa05310466acf06c179728514dd7494
2013-08-12 15:52:08 -07:00
Dmitry Kovalev
9d5885b0ab
Quantization code cleanup.
...
Change-Id: I77b42418b852093f79260cbd880533a0bd86678f
2013-08-12 15:23:47 -07:00
Dmitry Kovalev
c66320b3e4
Merge "Entropy context related cleanups."
2013-08-12 15:18:24 -07:00
Dmitry Kovalev
bd1bc1d303
Merge "Making scaling code more clear."
2013-08-12 15:17:26 -07:00
Dmitry Kovalev
9a31d05e24
Removing unused convolve_avg_c function + cleanup.
...
Change-Id: Id2b126c6456627c25e4041a82e304d0151d951ba
2013-08-12 14:28:00 -07:00
Dmitry Kovalev
1aedfc992a
Using MV* instead of int_mv* as argument of vp9_clamp_mv_min_max.
...
Change-Id: I3c45916a9059f11b41e9d798e34ffee052969a44
2013-08-12 13:56:04 -07:00
Dmitry Kovalev
76d166e413
Removing foreach_predicted_block_uv function.
...
Adding function build_inter_predictors_for_planes to build inter
predictors for specified planes. This function allows to remove
condition "#if CONFIG_ALPHA" and use MAX_MB_PLANE for general case.
Renaming 'which_mv' local var to 'ref', and 'weight' argument to 'ref'.
Change-Id: I1a97160c9263006929d38953f266bc68e9c56c7d
2013-08-12 13:54:13 -07:00
Dmitry Kovalev
a72e269318
Making scaling code more clear.
...
Reusing existing functions, using constants instead of magic numbers.
Change-Id: Idc689ffba52c9a8b203fcf26bd67110ecb5635f9
2013-08-12 13:30:26 -07:00
Paul Wilkins
c3b5ef7600
Broken loop filter case.
...
Loop filter level moved to common but this case missed.
Change-Id: I7fcb557e46ef4ed8e2b5e9c3e82cb042b55bbd7f
2013-08-12 19:46:47 +01:00
Jingning Han
3984b41c87
Fix a compile failure in vp9_get_compressed_data
...
The lf struct is now with VP9_COMMON, instead of MACROBLOCKD.
Change-Id: Idfdd4f91f78f486078a138322d58bb61e93e1bc9
2013-08-12 11:42:17 -07:00
Dmitry Kovalev
8b0e6035a2
Entropy context related cleanups.
...
Adding set_skip_context() function used from both encoder and decoder.
Change-Id: Ia22cfad3211a00a63eb294f64f857b78f4aa9b85
2013-08-12 11:24:24 -07:00
Mans Rullgard
ad7021dd6c
vp9: neon: optimise convolve8_vert functions
...
Invert loops to operate vertically in the inner loop. This allows
removing redundant loads.
Also add preloading of data.
Change-Id: I4fa85c0ab1735bcb1dd6ea58937efac949172bdc
2013-08-12 15:37:48 +01:00
Dmitry Kovalev
097046ae28
Merge "Removing redundant code and function arguments."
2013-08-11 12:20:58 -07:00
Mans Rullgard
b84dc949c8
vp9: neon: optimise convolve8_horiz functions
...
Each iteration of the horizontal loop reuses 7 of the 11 source
values. Loading only the 4 new values saves some time.
Also add preload for source data.
Overall 4% faster on Chromebook.
Change-Id: I8f69e749f2b7f79e9734620dcee51dbfcd716b44
2013-08-11 16:21:55 +01:00
Dmitry Kovalev
3c43ec206c
Renaming BLOCK_SIZE_TYPES constant to BLOCK_SIZES.
...
There will be another change set to rename BLOCK_SIZE_TYPE enum to
BLOCK_SIZE.
Change-Id: I8d1dfc873d6186fa5e554262f5169e929978085e
2013-08-09 17:47:32 -07:00
Guillaume Martres
58b07a6f9d
Honor min_partition_size properly
...
It represents the minimum partition size, so don't split if
bsize == min_partition_size .
Change-Id: Id77c32d6afef7d2ddec0368eaae18fb13227d30e
2013-08-09 17:28:33 -07:00
Dmitry Kovalev
67fe9d17cb
Removing redundant code and function arguments.
...
Change-Id: Ia5cdda0f755befcd1e64397452c42cb7031ca574
2013-08-09 17:24:40 -07:00
Dmitry Kovalev
e7c5ca8983
Merge "Inlining 16 as a stride for BLOCK_OFFSET macro."
2013-08-09 17:22:46 -07:00
James Zern
ef101af8ae
Merge "vp9_rd_pick_inter_mode_sb: fix uninitialized value"
2013-08-09 17:13:32 -07:00
Dmitry Kovalev
f1559bdeaf
Inlining 16 as a stride for BLOCK_OFFSET macro.
...
Change-Id: I7f23d174eb089e5500f268a10db09648634c1b82
2013-08-09 16:40:05 -07:00
James Zern
f295774d43
vp9_rd_pick_inter_mode_sb: fix uninitialized value
...
'skippable' can remain unset and negatively affect later decisions
address one aspect of issue #599
Change-Id: Iffdf0ac2e49ac481c27dc27c87fa546d4167bb28
2013-08-09 16:26:22 -07:00
Dmitry Kovalev
125146034e
Merge "Using MV struct instead of int[2] array."
2013-08-09 15:33:08 -07:00
Dmitry Kovalev
cd0629fe68
Merge "Removing plane_block_{width, height}_log2by4 functions."
2013-08-09 15:26:51 -07:00
Dmitry Kovalev
ff7df102d9
Merge "Moving loopfilter struct to VP9_COMMON."
2013-08-09 15:23:00 -07:00
Dmitry Kovalev
816d6c989c
Moving loopfilter struct to VP9_COMMON.
...
Loop filter configuration doesn't belong to macroblock, so moving it from
MACROBLOCKD to VP9_COMMON. Also moving the declaration of loopfilter struct
from vp9_blockd.h to vp9_loopfilter.h.
Change-Id: I4b3e34be9623b47cda35f9b1f9951f8c5b1d5d28
2013-08-09 14:41:51 -07:00
Dmitry Kovalev
8ffe85ad00
Moving scale_factors and related code to separate files.
...
Change-Id: I531829e5aee2a4a7a112d528ecccbddf052d0e74
2013-08-09 14:07:09 -07:00
Scott LaVarnway
ace93a175d
Merge "Bug fix: call set_offsets before rd_auto_partition_range"
2013-08-09 12:30:52 -07:00