130 Commits

Author SHA1 Message Date
fbarchard@google.com
b911428afd Adapt row interpolator to do YUV as well as ARGB without extrude so it can be used in I420Scale.
BUG=237
TEST=Scale*
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1587004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@710 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-30 23:42:27 +00:00
fbarchard@google.com
e25f991327 Fix for ARGBToI444 for arm
BUG=223
TEST=libyuv_unittest --gtest_filter=*I444ToARGB*
Review URL: https://webrtc-codereview.appspot.com/1353004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@680 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-25 18:04:17 +00:00
fbarchard@google.com
77b0af36e4 roll chromium deps to a known good release (lkgr) and fix indent lint issue.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1321008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@677 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-23 21:35:07 +00:00
fbarchard@google.com
50c33eb601 YuvPixel for llvm use byte clamping branchless instead of int expression.
BUG=221
TEST=I420To*R*
Review URL: https://webrtc-codereview.appspot.com/1313011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@676 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-23 07:06:45 +00:00
fbarchard@google.com
609dd85f7a Branchless clamping for llvm
BUG=221
TESTED=try
Review URL: https://webrtc-codereview.appspot.com/1329005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@675 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-23 01:25:33 +00:00
fbarchard@google.com
c751b68a78 fix for llvm max255 macro
BUG=none
TEST=libyuv_unittest --gtest_filter=*Add*
Review URL: https://webrtc-codereview.appspot.com/1346005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@671 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-19 19:45:36 +00:00
fbarchard@google.com
bb92acade0 Unaligned math effects.
BUG=none
TEST=Add*
Review URL: https://webrtc-codereview.appspot.com/1345004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@670 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-19 18:10:38 +00:00
fbarchard@google.com
fc264019de Underflow sub fix
BUG=none
TEST=ARGBSubtract_Unaligned

Review URL: https://webrtc-codereview.appspot.com/1328004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@667 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-16 02:44:10 +00:00
fbarchard@google.com
cd6056c01c InterpolateAny for unaligned and odd width interpolate. To be used in ARGBScaler in future.
BUG=208
TEST=ARGBInterpolate255_Unaligned
Review URL: https://webrtc-codereview.appspot.com/1324004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@662 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-15 03:05:08 +00:00
fbarchard@google.com
050b39a5cb Recomputed JPeg coefficients normalized to 128. Apply to ARGBGray function reusing YJ function/coefficients and rounding.
BUG=201
TESTED=Gray unittest improved
Review URL: https://webrtc-codereview.appspot.com/1269006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@629 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-01 20:07:14 +00:00
fbarchard@google.com
4e0d7cc2c6 Y coefficients for J420 need to be scaled by 255/219 to full range.
BUG=159
TESTED=out\release\libyuv_unittest --gtest_filter=*J*
Review URL: https://webrtc-codereview.appspot.com/1264004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@624 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-27 07:35:03 +00:00
fbarchard@google.com
cfaa66c041 ARGBToJ420 and ARGBToJ400 - Full range YUV Jpeg style.
BUG=159
TEST=*J4*
Review URL: https://webrtc-codereview.appspot.com/1243004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@622 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-26 09:14:46 +00:00
fbarchard@google.com
c93a137671 Replace Add+YToARGB with SobelRow
BUG=201
TEST=Sobel*
Review URL: https://webrtc-codereview.appspot.com/1217005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@611 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-19 23:51:09 +00:00
fbarchard@google.com
610e012d56 SobelXY which returns Sobel X, Sobel Y and Sobel as RGB values.
BUG=201
TEST=Sobel*
Review URL: https://webrtc-codereview.appspot.com/1210006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@610 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-19 22:24:06 +00:00
fbarchard@google.com
e1247eec94 Sobel functions
BUG=201
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1200004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@608 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-18 22:40:15 +00:00
fbarchard@google.com
1096543eaa ARGBShuffle AVX2
BUG=196
TESTED=BGRAToARGB*
Review URL: https://webrtc-codereview.appspot.com/1171006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@596 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-08 23:22:32 +00:00
fbarchard@google.com
9246ed0420 Remove a=0 special case in C and use table all the time, which will zero the rgb.
BUG=195
TESTED=out\release\libyuv_unittest --gtest_filter=*ten*
Review URL: https://webrtc-codereview.appspot.com/1158004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@589 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-05 06:05:05 +00:00
fbarchard@google.com
51d3e236cb AVX2 math functions for images
BUG=none
TEST=ARGBMultiply ARGBAdd and ARGBSubtract unittests.
Review URL: https://webrtc-codereview.appspot.com/1146006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@588 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-04 21:50:23 +00:00
fbarchard@google.com
83a63e65a6 Change YUV_DISABLE_ASM to LIBYUV_DISABLE_NEON, LIBYUV_DISABLE_MIPS, LIBYUV_DISABLE_X86
BUG=189
TESTED=try
Review URL: https://webrtc-codereview.appspot.com/1113006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@582 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-27 00:20:29 +00:00
fbarchard@google.com
787f827663 Unattenuate multiply alpha by 1.
BUG=190
TESTED=planar_test
Review URL: https://webrtc-codereview.appspot.com/1114005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@578 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-21 00:08:56 +00:00
fbarchard@google.com
3c7bb050bd Unattenuate AVX2
BUG=190
TEST=planar_test
Review URL: https://webrtc-codereview.appspot.com/1112004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@577 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-20 22:18:36 +00:00
fbarchard@google.com
d7c7bfac57 Fix lint error in mjpeg and remove unnecessary includes.
BUG=none
TEST=try bots
Review URL: https://webrtc-codereview.appspot.com/1078005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@555 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-28 05:08:14 +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
573a883dd6 Subtract 2 images.
BUG=179
TEST=planar unittest
Review URL: https://webrtc-codereview.appspot.com/1073004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@551 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-24 23:08:12 +00:00
fbarchard@google.com
83e1b17cc0 Add 2 ARGB Images together and store to destination
BUG=175
TEST=Add unittest
Review URL: https://webrtc-codereview.appspot.com/1049004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@543 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-18 23:03:56 +00:00
fbarchard@google.com
8fa7634994 Blend style multiple
BUG=175
TEST=Multiply unittest
Review URL: https://webrtc-codereview.appspot.com/1048004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@542 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-18 02:25:04 +00:00
fbarchard@google.com
8ec6033478 ARGBMultiply 2 images together
BUG=175
TEST=Out\release\libyuv_unittest --gtest_filter=*Mult*
Review URL: https://webrtc-codereview.appspot.com/1043004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@541 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-17 20:18:08 +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
82375d6de2 Neon version of Gray
BUG=176
TEST=./libyuv_unittest --gtest_filter=**Gray*
Review URL: https://webrtc-codereview.appspot.com/929039

git-svn-id: http://libyuv.googlecode.com/svn/trunk@510 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-03 23:33:00 +00:00
fbarchard@google.com
b94b139e86 Shade ported to Neon
BUG=167
TESTED=planar test Shade*
Review URL: https://webrtc-codereview.appspot.com/969014

git-svn-id: http://libyuv.googlecode.com/svn/trunk@509 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-03 20:36:40 +00:00
fbarchard@google.com
cb5262dbc5 scale by even amounts using Neon
BUG=156
TEST=./libyuv_unittest --gtest_filter=*ARGBScale*
Review URL: https://webrtc-codereview.appspot.com/930019

git-svn-id: http://libyuv.googlecode.com/svn/trunk@492 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-16 01:41:35 +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
752cb9e057 Some minor fixes for yuy2, r12 register, mask on any function.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/936023

git-svn-id: http://libyuv.googlecode.com/svn/trunk@489 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-14 05:46:56 +00:00
fbarchard@google.com
9573071950 Neon RGB24 to I420
BUG=none
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/965018

git-svn-id: http://libyuv.googlecode.com/svn/trunk@481 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-12 20:42:48 +00:00
fbarchard@google.com
522d757c92 Neon optimized ARGBToI444/422/411/420 Any variations, ARGB1555ToI420 Neon, ARGB4444ToI420
BUG=148
TEST=sudo LIBYUV_REPEAT=1000 nice --5 ./libyuv_unittest --gtest_filter=*R*ToI4* | sed 's/\(.*(\)\([0-9]*\)\( ms)\)/\2 - \1\2\3/g' | sort -rn | grep ms
Review URL: https://webrtc-codereview.appspot.com/936020

git-svn-id: http://libyuv.googlecode.com/svn/trunk@480 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-09 23:14:57 +00:00
fbarchard@google.com
f1daa3db65 Neon RGB To I420
BUG=none
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/936015

git-svn-id: http://libyuv.googlecode.com/svn/trunk@479 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-07 08:27:24 +00:00
fbarchard@google.com
c4f443f8fe ARGBToUV422Row_NEON
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/928018

git-svn-id: http://libyuv.googlecode.com/svn/trunk@476 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-06 20:58:24 +00:00
fbarchard@google.com
1dee625093 ARGB1555 and ARGB4444 to I420 Neon
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/965008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@473 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-06 02:14:23 +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
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
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
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
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