366 Commits

Author SHA1 Message Date
fbarchard@google.com
793e5a06ff YUY2ToARGB_NEON in one step
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/964010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@468 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-03 15:12:48 +00:00
fbarchard@google.com
b883ce6e2c I411ToARGB_NEON and I444ToARGB_NEON port.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/964009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@467 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-02 21:37:41 +00:00
fbarchard@google.com
30859f75f2 Neon YToARGB and fix SSE2 to match C version
BUG=none
TEST=YToARGB_Opt
Review URL: https://webrtc-codereview.appspot.com/966007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@466 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-02 09:51:29 +00:00
fbarchard@google.com
00b69a2fe6 I400ToARGB_Neon optimized
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/935010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@465 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-02 06:03:28 +00:00
fbarchard@google.com
9f2d404145 Neon 1 step conversion of NV12 to RGB565
BUG=136
TEST=unittest on nv12
Review URL: https://webrtc-codereview.appspot.com/939011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@461 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-31 18:36:28 +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
4bfe1e0d6b Move any functions into their own file
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/936009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@458 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-30 20:01:41 +00:00
fbarchard@google.com
fe44ff6781 M420ToARGB use NV12ToARGB_Neon internals
BUG=138
TESTED=sudo LIBYUV_REPEAT=1000 nice --5 ./libyuv_unittest --gtest_filter=*M420* | sed 's/\(.*(\)\([0-9]*\)\( ms)\)/\2 - \1\2\3/g' | sort -rn | grep ms
Review URL: https://webrtc-codereview.appspot.com/935009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@456 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-30 01:02:43 +00:00
fbarchard@google.com
dbcabea057 move rgb565 wrapper to common so it wont inline
BUG=137
TEST=hammer builds
Review URL: https://webrtc-codereview.appspot.com/930006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@455 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-29 21:20:25 +00:00
fbarchard@google.com
708a11c21a Remove trailing spaces
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/937010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@454 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-29 20:57:53 +00:00
fbarchard@google.com
34d2344458 noinline attribute for apple
BUG=137
TEST=NONE
Review URL: https://webrtc-codereview.appspot.com/929010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@453 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-29 20:26:11 +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
1f399dfaf8 mips memcpy
BUG=126
TEST=local test by mips
Review URL: https://webrtc-codereview.appspot.com/932006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@448 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-26 20:44:40 +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
6bb9f53f4f Adding I400Mirror allows unittesting of YUV mirroring
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/928008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@446 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-25 20:34:42 +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
66fe097a2b Move compare modules into their own files, and scale for mips
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/920005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@434 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-22 16:18:53 +00:00
fbarchard@google.com
1982d2b877 mips scale optimization
BUG=126
TEST=NONE
Review URL: https://webrtc-codereview.appspot.com/918005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@432 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-20 16:37:36 +00:00
fbarchard@google.com
d39ce16ba0 Turn off rounding in YUV to RGB for NEON. This is to better match the C and SSSE3 versions.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/914005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@430 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-20 01:38:10 +00:00
fbarchard@google.com
3f467451cf Move compare low levels into their own files, for consistency with NEON.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/921004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@429 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-20 01:23:27 +00:00
fbarchard@google.com
0a6b7a6eb7 test rgb565 by converting to ARGB and then doing MSE
BUG=114
TEST=libyuvTest.I420ToRGB565_Any
Review URL: https://webrtc-codereview.appspot.com/919004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@428 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-19 20:10:47 +00:00
fbarchard@google.com
b7ae15a236 Neon optimized ARGBToY
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/916004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@427 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-19 08:25:48 +00:00
fbarchard@google.com
db694edfc2 SplitUV_Any variations for all CPUS.
BUG=126
TEST=convert tests NV12 with alignments
Review URL: https://webrtc-codereview.appspot.com/896007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@426 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-17 21:54:04 +00:00
fbarchard@google.com
1c396a3d7d MJPGSize function to query size.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/898004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@425 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-17 04:37:39 +00:00
fbarchard@google.com
02e48bf72b YUY2 for AVX2
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/887006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@424 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-17 02:27:11 +00:00
fbarchard@google.com
0908a701e9 ARGBToY_NEON for faster screencasts
BUG=107
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/892004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@423 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-16 22:34:07 +00:00
fbarchard@google.com
1ffd35fdbb Add a prestine copy of x86inc.asm for future yasm support
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/895004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@422 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-16 18:01:25 +00:00
fbarchard@google.com
de07146fa4 ifdef around mips detect code
BUG=none
TEST=build on x86 linux
Review URL: https://webrtc-codereview.appspot.com/889005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@421 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-16 08:38:44 +00:00
fbarchard@google.com
1bdcc4c3e3 rgb565 and argb1555 neon
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/881004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@420 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-15 17:46:59 +00:00
fbarchard@google.com
4862595764 More tests for NV12
BUG=none
TEST=*NV12*
Review URL: https://webrtc-codereview.appspot.com/885004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@419 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-14 07:19:31 +00:00
fbarchard@google.com
bb6bddc9fb Style fixes for mips version of SplitUV for nv12/21
BUG=126
TEST=lint passes and rotate_test and cpu_test on try bot pass.
Review URL: https://webrtc-codereview.appspot.com/884004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@418 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-14 06:41:17 +00:00
fbarchard@google.com
ca41005256 mips version of SplitUV for nv12/21
BUG=126
TEST=rotate_test and cpu_test updated
Review URL: https://webrtc-codereview.appspot.com/879005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@416 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-14 06:01:19 +00:00
fbarchard@google.com
c389e8e3b1 Convert ARGB to ARGB4444 with Neon
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/875004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@415 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-13 02:51:48 +00:00
fbarchard@google.com
179054b813 Zero out the cpuinfo to make valgrind happy.
BUG=91
TEST=build bot
Review URL: https://webrtc-codereview.appspot.com/860015

git-svn-id: http://libyuv.googlecode.com/svn/trunk@414 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-12 07:55:28 +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
fbarchard@google.com
df49992f50 RGBAToARGB_NEON fix.
BUG=none
TEST=RGBAToARGB
Review URL: https://webrtc-codereview.appspot.com/868013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@410 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-12 00:51:39 +00:00
fbarchard@google.com
c7277d08e8 Add convert_from_argb.h for all conversion functions from ARGB to something else.
BUG=none
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/857014

git-svn-id: http://libyuv.googlecode.com/svn/trunk@408 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-11 23:10:53 +00:00
fbarchard@google.com
0cbbdde3d5 memset v210 destination buffer to 0 to attempt valgrind fix.
BUG=91
TEST=I420ToV210
Review URL: https://webrtc-codereview.appspot.com/872008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@407 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-11 20:53:05 +00:00
fbarchard@google.com
ff6a756a09 V210 avoid cpuid which is failing valgrind
BUG=91
TEST=I420ToV210 unittest
Review URL: https://webrtc-codereview.appspot.com/855013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@406 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-11 20:21:45 +00:00
fbarchard@google.com
f658aebb7c ARGBToBayer ported to Neon and attempt V210 valgrind fix.
BUG=122
TEST=UNITTEST bayer
Review URL: https://webrtc-codereview.appspot.com/873011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@405 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-11 18:12:51 +00:00
fbarchard@google.com
4de0c439aa Enable SSE version of I420ToRAW/RGB24 for Linux/Mac/ChromeOS x86
BUG=116
TEST=xcodebuild/Release/libyuv_unittest --gtest_filter=*I420To*R*Opt
Review URL: https://webrtc-codereview.appspot.com/863015

git-svn-id: http://libyuv.googlecode.com/svn/trunk@402 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-11 01:25:46 +00:00
fbarchard@google.com
8d37dd5c20 Any conversions fix for RGB 3 bytes. Fix for overread valgrind. Avoid memcpy. Add _Any unittests for all conversions.
BUG=121
TEST=./libyuv_unittest --gtest_filter=*Any
Review URL: https://webrtc-codereview.appspot.com/873010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@401 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-11 00:07:30 +00:00
fbarchard@google.com
e91bdaca36 Move HalfRow to row_win and port to row_neon
BUG=118
TEST=libyuvTest.I420ToI422_OptVsC (247 ms)
Review URL: https://webrtc-codereview.appspot.com/855012

git-svn-id: http://libyuv.googlecode.com/svn/trunk@400 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-09 21:09:33 +00:00
fbarchard@google.com
827de16bb1 I422ToRGB24Row_SSSE3 in 1 pass. Internally converts to ARGB then packs down to RGB.
BUG=116
TEST=libyuv unittest
Review URL: https://webrtc-codereview.appspot.com/863013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@399 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-09 03:48:26 +00:00
fbarchard@google.com
6b5a8efff7 I400 invert support which fixes a valgrind bug
BUG=117
TEST=I400ToI400Invert_OptVsC
Review URL: https://webrtc-codereview.appspot.com/859010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@398 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-09 02:49:59 +00:00