Age | Commit message (Collapse) | Author |
|
Change-Id: Icc34a00759c95b7b8ac356cdcc4adae848b61431
|
|
avoids -Wunused-function warnings when INLINE is set
Change-Id: I44d91eaa7efba7bc2427501fb9f63a93f32aaa7f
|
|
Made the definition of THREAD_FUNCTION consistent.
Change-Id: I1ac099484e201e359298ed16de0b81ec781075ce
|
|
This fixes the build errors with msvc.
Change-Id: Ie2716e4c15a1bacfb00a8d41ec3283d718af88fc
|
|
There are flaws in current implementation of VP8 multithreading encoder
and decoder as reported in the following issue:
https://code.google.com/p/chromium/issues/detail?id=158922
Although the data race warnings are harmless, and wouldn't cause real
problems while encoding and decoding videos, it is better to fix the
warnings so that VP8 code could pass the TSan test.
To synchronize the thread-shared data access and maintain the speed
(i.e. decoding speed), use multiple mutexes based on mb_rows to reduce
the number of synchronizations needed, make the reads and writes of
the shared data protected, and reduce the number of mb_col writes by
nsync times.
The decoder speed tests showed < 3% speed loss while using 2 ~ 4
threads.
Change-Id: Ie296defffcd86a693188b668270d811964227882
|
|
the loop filter level is transmitted as 6-bits + sign so needs to be clamped in
the delta + absolute case.
BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1224363
Change-Id: Icbdca4fdbf043466429bd5c9d59dbe913bf153bc
|
|
This experiment allows using full above/right edges for all transform
sizes whenever available (for d45/d63), and adds bottom/left edges for
d207.
See issue 1043.
Change-Id: I5cf7f345e783e8539bb6b6d2c9972fb1d6d0a78b
|
|
The x86 simd expects this. Identical alignment can be found in vp9
and vp10 also. Fixes crashes on 32bit x86 systems.
Change-Id: I229c88d8f696acbef5337c8fa9503528df4e1c40
|
|
I've added a few new functions (d45e, d63e, he, ve) to cover the
filtered h/v 4x4 predictors that are vp8-specific, the "correct"
d45 with the correctly filtered bottom-right pixel (as opposed to
the unfiltered version in vp9), and the "broken" d63 with weirdly
filtered bottom-right pixels (which is correctly filtered in vp9).
There may be a minor performance impact on all systems because we
have to do an extra copy of the Above pixel array to incorporate
the topleft pixel in the same array (thus fitting the vpx_dsp API).
In addition, armv6 will have a more serious performance impact b/c
I removed the armv6/vp8-specific assembly. I'm not sure anyone
cares...
Change-Id: I7f9e5ebee11d8e21aca2cd517a69eefc181b2e86
|
|
Change-Id: I936c2430c3c5b1e0ab5dec0a20110525e925b5e4
|
|
Change-Id: I2000820e0c04de2c975d370a0cf7145330289bb2
|
|
remove MIN/MAX defines in vp8/common/common.h
Change-Id: I41520f34af175e05b263ebd12198f4de29a967db
|
|
Mark functions in findnearmv.h, invtrans.h and setupintrarecon.h
with INLINE.
Hide function in postproc.h behind the same #if as it's callers.
Change-Id: Ic1e014a943d2aca280f137019218b9d4f1443d61
|
|
WebRTC builds with -Wunused-function do not like all the uses of onyx.h
Change-Id: Ic57cb143b48df9c9895f94b5f8f395c260fa7025
|
|
|
|
Change-Id: I914b456558edbdee5eefdfba731bc70d3d5f5d53
|
|
Avoid conflict with vpx_dsp version
Change-Id: I041b1532a9276400a5547de8dfed1de43ad4e83d
|
|
Change-Id: Ic61f30af12d1b01c1d5adc4e08bc20e20ad38027
|
|
Change-Id: Id0d7c19857e29b66c652c8cc1ab56b64e4fc0fa3
|
|
|
|
Chromium puts all the yasm output in the same directory. Looking at ways
to improve this but in the meantime get rid of collisions.
Change-Id: I923c5231d14e895ab96521eb89807ede868a0753
|
|
average improvement ~2x-3x
Change-Id: I6c17012c731fa4d56e0343f8de0df47b2dde289b
|
|
average improvement ~2x-3x
Change-Id: I05593bed583234dc7809aaec6cab82773a29505d
|
|
average improvement ~2x-3x
Change-Id: I30abf4c92cddcc9e87b7a40d4106076e1ec701c2
|
|
average improvement ~2x-3x
Change-Id: I6fc37191bf9cb5a67e1af9787d0d27659c17bdba
|
|
average improvement ~2x-4x
Change-Id: Id0bc600440f7ef53348f585ebadb1ac6869e9a00
|
|
average improvement ~2x-4x
Change-Id: I93abc15389649c169bb8b69127c0b95407d34692
|
|
average improvement ~3x-5x
Change-Id: Ia808ae56b118e0e1b293901447aa5a0f597b405b
|
|
average improvement ~3x-5x
Change-Id: I73306863e9bf172d5adc06b8dd54e43985d1e063
|
|
average improvement ~3x-4x
Change-Id: I8c0b3d5c86c9eb4f802b87c971864d2cfceeb7cc
|
|
average improvement ~2x-4x
Change-Id: I3af3ecced96c5b8e0cb811256e5089e28fe013a2
|
|
average improvement ~3x-5x
Change-Id: I5fd88cb088814be443d04be384b9fca99b22adef
|
|
average improvement ~2x-4x
Change-Id: I20c4f900ef95d99b18f9cf4db592cd352c2212eb
|
|
Change-Id: I66bf6720c396c89aa2d1fd26d5d52bf5d5e3dff1
|
|
|
|
This commit replaces the vp8_ prefixed subtract function with the
common vpx_subtract_block function. It removes redundant SIMD
optimization codes and unit tests.
Change-Id: I42e086c32c93c6125e452dcaa6ed04337fe028d9
|
|
average improvement ~2x-5x
Change-Id: I19e82f78772993bcd67fcf975fe180232172f86d
|
|
take 2. localize the function parameter to actually remove the warning
Change-Id: I23c02061b5e21b0b75bd33c26062d1e531df7b92
|
|
the vector used in vld*_lane_* should be initialized before use
Change-Id: Idce95354737915f6fb4e6b5e8980a050e953036d
|
|
the vector used in vld*_lane_* should be initialized before use
Change-Id: I6b791088479fec3bc021ca75cc2af5adcc39d954
|
|
only uint8 is required; each use only loads one value as a uint8
quiets a few type conversion warnings
Change-Id: I03dc0dc0eb01ac23a6e8673daa2b77c6c57bf1b0
|
|
There is a naming conflict in the chromium build system.
The rest of the variance functions will move to vpx_dsp soon.
Change-Id: Iff78da2aafb0d7380eda73e38d7dac72110a1e47
|
|
fails unit tests:
[ FAILED ] NEON/VP8SubpelVarianceTest.ExtremeRef/0, where GetParam() = (3, 3, 0x14e36d, 0)
[ FAILED ] NEON/VP8SubpelVarianceTest.Ref/0, where GetParam() = (3, 3, 0x14e36d, 0)
the tests were recently enabled in:
eb88b17 Make vp9 subpixel match vp8
the functions likely haven't changed since being converted from assembly
Change-Id: I6141717b111b8f735f436c160d74270af53ef722
|
|
Change-Id: I7a5e4e2632c3fa69d2a85a68fa9b418631caf09c
|
|
Clang adds alignment hints when casting up the loads/stores. Although
this should be safe for most paths, it's causing some crashes. Either
the source of the misalignment needs to be determined and adjusted or
the intrinsics need to be rewritten to avoid using the cast to load the
data.
BUG=817,892
Change-Id: Ia3aa824d6a4cd97e14325ff49dc730b6f85ec7e8
|
|
subpel functions will be moved in another patch.
Change-Id: Idb2e049bad0b9b32ac42cc7731cd6903de2826ce
|
|
silences missing prototype warnings
Change-Id: Ib62e4743532b871e63bc99732875fff20501b8ac
|
|
silences missing prototype warnings
Change-Id: I9f24a3214c832c982ca0dc5a032316eba48472ff
|
|
silences missing prototype warnings
Change-Id: I5ca198b56a5ff0cf5b93c89957526f243c04e9c8
|
|
+ include vp8_rtcd.h in copy_c.c
silences missing prototype warnings
Change-Id: Iecc279c695b08a26b231dedb41e3b84c551703f3
|