Frank Barchard
|
f96890a0be
|
yuvconstants for all YUV to RGB conversion functions.
R=harryjin@google.com
BUG=libyuv:488
Review URL: https://codereview.chromium.org/1363503002 .
|
2015-09-22 10:26:03 -07:00 |
|
fbarchard@google.com
|
32ad6e0e12
|
Remove unused variable 'I422ToRGB565Row' that breaks osx builds.
BUG=426
TESTED=untested
Review URL: https://webrtc-codereview.appspot.com/48079004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1368 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-04-14 02:50:35 +00:00 |
|
fbarchard@google.com
|
0e4388aea3
|
I422ToRGB24 AVX2 and I422ToRAW
BUG=none
TESTED=I422ToRGB24 unittest
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/46619004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1337 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-03-17 17:25:27 +00:00 |
|
yang.zhang@arm.com
|
e246e6c18f
|
Add ARGBToRGB565DitherRow_NEON for ARM32/64
ARM32/64 NEON versions of ARGBToRGB565DitherRow_NEON are implemented.
BUG=407
TESTED=libyuvTest.* on ARM32/64 with Android
R=fbarchard@google.com
Change-Id: Ia689170fb39db964392e5e1113801592ab0628bf
Review URL: https://webrtc-codereview.appspot.com/49409004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1335 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-03-17 02:22:25 +00:00 |
|
fbarchard@google.com
|
24152b2435
|
Dither from I420 to RGB565 in 2 steps - I420ToARGB then ARGBToRGB565.
BUG=407
TESTED=untested
R=brucedawson@google.com, tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/48429004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1315 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-03-10 01:45:04 +00:00 |
|
fbarchard@google.com
|
446fa95587
|
I422ToRGB565, ARGB4444 and ARGB1555 for AVX2
BUG=403
TESTED=avx2 emulator
Review URL: https://webrtc-codereview.appspot.com/34359004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1293 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-02-24 23:14:46 +00:00 |
|
fbarchard@google.com
|
5ab38f9258
|
Remove Q420 fourcc support.
BUG=396
TESTED=local build of unittest builds and passes
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/39089004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1278 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-02-11 18:20:54 +00:00 |
|
fbarchard@google.com
|
0887315390
|
Remove bayer format support from libyuv. This format is very rare and used on legacy hardware. Its not well optimized and has bugs related to odd widths. Removing the format will allow tests to pass under more circumstances, run faster and allow focus on higher priority quality and performance issues.
BUG=301
TESTED=local unittests build/pass on windows gyp build.
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/38059004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1270 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-02-09 19:58:19 +00:00 |
|
fbarchard@google.com
|
9ed836b154
|
The 'Any' versions of functions can handle any width now, so remove the check from the calling code. This has 2 advantages - less code, and less overhead in calling function when any function is NOT used. Downside is more code for case where any is used.
BUG=373
TESTED=libyuv_unittest still passes
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/24129004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1143 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-24 23:29:31 +00:00 |
|
fbarchard@google.com
|
f2fa453b94
|
Port I422ToABGR to AVX2.
BUG=269
TESTED=intelsde on I422ToABGR
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/23149004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1138 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-23 17:20:22 +00:00 |
|
fbarchard@google.com
|
c000955bc0
|
Port I422ToRGBA to AVX.
BUG=269
TESTED=intelsde on I422ToRGBA
R=brucedawson@google.com
Review URL: https://webrtc-codereview.appspot.com/28769004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1136 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-22 22:41:39 +00:00 |
|
fbarchard@google.com
|
d81dddd3d0
|
port I420ToBGRA to AVX2.
BUG=269
TESTED=c:\intelsde\sde -ast -hsw -- out\release\libyuv_unittest.exe --gtest_filter=*I420ToBGRA*
R=brucedawson@google.com, harryjin@google.com, magjed@chromium.org
Review URL: https://webrtc-codereview.appspot.com/26869004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1127 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-20 19:35:55 +00:00 |
|
fbarchard@google.com
|
f713691a6f
|
Change elif to endif and if to allow AVX2 as well as SSE2 in future changes instead of one or the other.
BUG=none
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/30719004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1122 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-16 20:47:22 +00:00 |
|
fbarchard@google.com
|
ca308327d2
|
Remove unaligned functions, since most function support unaligned memory now. This reduces complexity and improves performance for unaligned cases because C code can be avoided, and overhead is less. Downside is old cpus (core2 and earlier) will be slower for aligned memory case. Except mips, which has alignment requirement, but remove unaligned variant.
BUG=365
TESTED=unittest builds and passes locally
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/24839004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1113 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-07 00:59:31 +00:00 |
|
fbarchard@google.com
|
8798e04075
|
Port conversion functions to c.
BUG=303
TESTED=cl /c /TC /Iinclude source\convert_from.cc source\convert_argb.cc source\convert_from_argb.cc
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/17909004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1030 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-07-08 18:44:57 +00:00 |
|
fbarchard@google.com
|
d9c9f37ac4
|
Conversions use malloc for row buffers.
BUG=296
TESTED=libyuv convert_test
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/6399004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@928 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-12-27 02:00:30 +00:00 |
|
fbarchard@google.com
|
99a1298c54
|
I444ToI420 etc use ScalePlane on Y to allow mirroring.
BUG=291
TESTED=unittests still pass.
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/4979004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@893 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-12-04 23:36:06 +00:00 |
|
fbarchard@google.com
|
a8e4dcb5d5
|
Use scaling for YUV to YUV.
BUG=none
TEST=I4*ToI4*
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/4969004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@892 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-12-04 20:31:53 +00:00 |
|
fbarchard@google.com
|
095f33d870
|
Coalesce rows by changing width/height and dropping into code instead of recursing. Improve coalesce by setting stride to 0 so it can be used even on odd width images. Reduce unittests to improve time to run emulators.
BUG=277
TEST=unittests all build and pass
R=ryanpetrie@google.com
Review URL: https://webrtc-codereview.appspot.com/2589004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@819 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-10-21 19:29:10 +00:00 |
|
fbarchard@google.com
|
37c0e648d2
|
Fix crash on wide images
BUG=239
TEST=LIBYUV_WIDTH=10000 out\release\libyuv_unittest
R=changjun.yang@intel.com, johannkoenig@google.com
Review URL: https://webrtc-codereview.appspot.com/1586006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@712 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-05-31 16:55:27 +00:00 |
|
fbarchard@google.com
|
c297d103f1
|
I420ToARGB for Haswell.
BUG=216
TEST=I420ToARGB
Review URL: https://webrtc-codereview.appspot.com/1314004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@660 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-04-12 07:26:24 +00:00 |
|
fbarchard@google.com
|
aa7988ff73
|
Enhanced Rep Mov String version of CopyRow for posix and use cpu detect for ERMS
BUG=213
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1306008
git-svn-id: http://libyuv.googlecode.com/svn/trunk@658 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-04-12 00:44:33 +00:00 |
|
fbarchard@google.com
|
9b4c00b908
|
Move vzeroupper to row functions to simplify caller and allow mix of avx2 and sse2. Impact reduced by row coalescing.
BUG=none
TEST=all tests pass with sde
Review URL: https://webrtc-codereview.appspot.com/1269009
git-svn-id: http://libyuv.googlecode.com/svn/trunk@641 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-04-04 05:54:59 +00:00 |
|
fbarchard@google.com
|
f8e9017685
|
switch toyuy2 from aligned to unaligned
BUG=211
TESTED=ToYUY2*
Review URL: https://webrtc-codereview.appspot.com/1274005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@633 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-04-02 21:18:12 +00:00 |
|
fbarchard@google.com
|
5ca144d214
|
NV12 to/from I420 coalesce rows for Y and UV independently.
BUG=197
TESTED=*NV12*_Opt
Review URL: https://webrtc-codereview.appspot.com/1201004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@607 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-03-14 17:57:47 +00:00 |
|
fbarchard@google.com
|
07a99dc278
|
Row coalesce convert_from.cc for I420ToNV12, YUY2ToI422, UYVYToI422
BUG=197
TESTED=I420ToNV12_Opt
Review URL: https://webrtc-codereview.appspot.com/1196004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@605 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-03-13 17:48:22 +00:00 |
|
fbarchard@google.com
|
51398e0be5
|
ARGBMirror AVX2
BUG=none
TEST=out\release\libyuv_unittest --gtest_filter=*ARGBMirror*
Review URL: https://webrtc-codereview.appspot.com/1159005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@594 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-03-06 00:57:48 +00:00 |
|
fbarchard@google.com
|
928483f397
|
Add I420ToNV12 and NV21 to convert from
BUG=178
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1127007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@581 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-02-26 03:00:31 +00:00 |
|
fbarchard@google.com
|
b444bae883
|
ARGBToI400 and ARGBToI411 using AVX2. YUY2ToI420 and UVYVToI420 use AVX2. CopyPlane use rep movsb for AVX2. CopyPlane2 use rep movsb for AVX2 and CopyPlane if strides match AVX2, which will do a single rep movsb for entire image if stride == width. MergeUV for I420ToNV12.
BUG=181
TESTED=unittests pass
Review URL: https://webrtc-codereview.appspot.com/1103007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@569 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-02-11 20:30:41 +00:00 |
|
fbarchard@google.com
|
92352b7081
|
mips optimized copy for all functions using CopyRows.
BUG=176
TEST=try bots
Review URL: https://webrtc-codereview.appspot.com/1074010
git-svn-id: http://libyuv.googlecode.com/svn/trunk@556 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-01-28 19:43:29 +00:00 |
|
fbarchard@google.com
|
cde587092f
|
Replace two spaces with one after .
BUG=none
TEST=lint
Review URL: https://webrtc-codereview.appspot.com/1063010
git-svn-id: http://libyuv.googlecode.com/svn/trunk@553 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-01-28 00:02:35 +00:00 |
|
fbarchard@google.com
|
9780dd4e81
|
Remove V210. Quality of this code is insufficient for libyuv. Unable to make V210 pass valgrind. Would require effort to add missing support and optimization.
BUG=91
TEST=valgrind
Review URL: https://webrtc-codereview.appspot.com/1021009
git-svn-id: http://libyuv.googlecode.com/svn/trunk@536 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-01-11 23:42:00 +00:00 |
|
fbarchard@google.com
|
ceee491c24
|
move READWORD and WRITEWORD into row_common along with row functions that use them
BUG=171
TEST=still builds
Review URL: https://webrtc-codereview.appspot.com/1021008
git-svn-id: http://libyuv.googlecode.com/svn/trunk@528 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-01-09 05:30:08 +00:00 |
|
fbarchard@google.com
|
3ae19cb834
|
Make 565 use big endian consistent read/write word for s390.
BUG=171
TESTED=unittests on x86 not impacted.
Review URL: https://webrtc-codereview.appspot.com/1022006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@524 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2013-01-07 06:50:53 +00:00 |
|
fbarchard@google.com
|
442b0ad0ac
|
Call CanonicalCode in convert functions and add unittest for function.
BUG=none
TEST=video_common_test added
Review URL: https://webrtc-codereview.appspot.com/1001007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@521 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-12-18 17:23:15 +00:00 |
|
fbarchard@google.com
|
f3a411834e
|
lint fixes
BUG=none
TEST=lint
Review URL: https://webrtc-codereview.appspot.com/964024
git-svn-id: http://libyuv.googlecode.com/svn/trunk@507 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-11-28 20:49:18 +00:00 |
|
fbarchard@google.com
|
1d160cb99f
|
Attenuate AGRB pixels NEON optimized
BUG=164
TEST=./libyuv_unittest --gtest_filter=*Atten*
Review URL: https://webrtc-codereview.appspot.com/937031
git-svn-id: http://libyuv.googlecode.com/svn/trunk@506 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-11-28 20:02:55 +00:00 |
|
fbarchard@google.com
|
4a86a836fc
|
On Neon remove aligned SplitUVRow
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/930020
git-svn-id: http://libyuv.googlecode.com/svn/trunk@493 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-11-16 02:51:31 +00:00 |
|
fbarchard@google.com
|
f08ac6bb09
|
Rename row functions so they are all SomethingRow_CPU
BUG=133
TEST=still builds
Review URL: https://webrtc-codereview.appspot.com/939020
git-svn-id: http://libyuv.googlecode.com/svn/trunk@491 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-11-15 00:21:14 +00:00 |
|
fbarchard@google.com
|
bdf7cb5914
|
RGB formats converted to YUV with Neon
BUG=none
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/936013
git-svn-id: http://libyuv.googlecode.com/svn/trunk@471 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-11-05 23:40:11 +00:00 |
|
fbarchard@google.com
|
11c6d32afc
|
I420ToARGB1555, I420ToARGB4444, I420ToRGB565, ARGBToARGB1555, ARGBToARGB4444, and ARGBToRGB565 done with shared macro for conversion in 1 step NEON.
BUG=139
TEST=libyuv_unittest --gtest_filter=*I420To*RGB???*_*
Review URL: https://webrtc-codereview.appspot.com/928013
git-svn-id: http://libyuv.googlecode.com/svn/trunk@460 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-30 23:12:34 +00:00 |
|
fbarchard@google.com
|
af1aa56f0b
|
Make I420ToARGB1555, I420ToARGB4444 and I420ToRGB565 call a single function per row, which may be implemented in assembly, but for now the function calls 2 functions internally.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/965006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@459 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-30 21:11:54 +00:00 |
|
fbarchard@google.com
|
15449263c4
|
NV12ToRGB565 use NV12ToARGB any row function
BUG=136
TEST=sudo LIBYUV_REPEAT=1000 nice --5 ./libyuv_unittest --gtest_filter=*565* | grep ms
Review URL: https://webrtc-codereview.appspot.com/965004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@452 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-29 16:24:53 +00:00 |
|
fbarchard@google.com
|
e0d8648b6a
|
MergeUV aligned and SplitUV cpu detect combined with width check.
BUG=none
TEST=libyuvTest.I420ToNV12_Any
Review URL: https://webrtc-codereview.appspot.com/937005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@451 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-27 19:07:55 +00:00 |
|
fbarchard@google.com
|
6c1b2d38c6
|
Mips port of libyuv. Includes functionality for convert, rotate, scale and memcpy.
BUG=126
TESTED=tested by mips
Review URL: https://webrtc-codereview.appspot.com/930005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@449 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-26 22:49:18 +00:00 |
|
fbarchard@google.com
|
1dafd444ba
|
MergeUV backport to SSE2
BUG=135
TESTED=unitest I420ToNV12
Review URL: https://webrtc-codereview.appspot.com/943006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@447 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-26 08:27:36 +00:00 |
|
fbarchard@google.com
|
d26b451472
|
I420ToNV12_Neon bug fix
BUG=135
TEST=/libyuv_unittest --gtest_filter=*NV*
Review URL: https://webrtc-codereview.appspot.com/939005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@444 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-25 19:24:59 +00:00 |
|
fbarchard@google.com
|
31d05032f7
|
I420ToYUY2_Any_Neon to handle odd sizes
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/922007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@437 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-23 09:04:37 +00:00 |
|
fbarchard@google.com
|
62a961bee7
|
Neon version of I420ToNV12 and I420ToNV21. NV21ToI420 added as function. CopyRow changed to vld4.8 to allow unaligned copy.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/922005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@435 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-22 17:24:50 +00:00 |
|
fbarchard@google.com
|
9de8867ab6
|
I422ToYUY2_NEON
BUG=none
TEST=convert_test *I422ToYUY2*
Review URL: https://webrtc-codereview.appspot.com/869008
git-svn-id: http://libyuv.googlecode.com/svn/trunk@413 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2012-10-12 06:23:33 +00:00 |
|