208 Commits

Author SHA1 Message Date
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
c0d9c34690 Attenuate and Unattenuate Any variations for sse2, sss3 and avx2
BUG=190
TESTED=out\release\libyuv_unittest --gtest_filter=*Unatt*
Review URL: https://webrtc-codereview.appspot.com/1121005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@579 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-21 00:55:47 +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
d5ee3dc912 AVX2 Attenuate
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1101014

git-svn-id: http://libyuv.googlecode.com/svn/trunk@576 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-19 12:26:13 +00:00
fbarchard@google.com
a00da62e52 Add I422Copy and I444Copy
BUG=none
TEST=I422ToI422 and I444ToI444
Review URL: https://webrtc-codereview.appspot.com/1103009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@570 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-11 22:00:24 +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
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
8811289be7 Interpolate ported to SSE2
BUG=177
TEST=out\release\libyuv_unittest --gtest_filter=*
Review URL: https://webrtc-codereview.appspot.com/1060006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@549 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-22 19:16:07 +00:00
fbarchard@google.com
5b0f7e1132 Neon port of ARGBAdd and ARGBMultiply
BUG=175
TEST=out\release\libyuv_unittest --gtest_filter=*Add*
Review URL: https://webrtc-codereview.appspot.com/1051005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@545 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-21 08:42:59 +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
ba45bbff34 CopyPlane check for contiguous memory and treat image as width * height, 1 image.
BUG=176
TEST=I420ToI420
Review URL: https://webrtc-codereview.appspot.com/1021014

git-svn-id: http://libyuv.googlecode.com/svn/trunk@538 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-16 02:03:22 +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
734787584d I420ToV210 unittest enable
BUG=91
TEST=valgrind on unittests
Review URL: https://webrtc-codereview.appspot.com/1029009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@535 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-11 19:41:40 +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
62154e53a2 Color Matrix for Neon
BUG=176
TESTED=*Matrix*
Review URL: https://webrtc-codereview.appspot.com/966033

git-svn-id: http://libyuv.googlecode.com/svn/trunk@512 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-04 01:05:28 +00:00
fbarchard@google.com
c247625d7f Sepia NEON
BUG=167
TEST=*Sepia
Review URL: https://webrtc-codereview.appspot.com/968014

git-svn-id: http://libyuv.googlecode.com/svn/trunk@511 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-04 00:08:35 +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
ef60ab0db4 Quantize for Neon
BUG=167
TEST=./libyuv_unittest --gtest_filter=*Quantize
Review URL: https://webrtc-codereview.appspot.com/972010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@508 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-03 08:15:31 +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
8f506332af ARGBBlend_NEON
BUG=161
TEST=planar test
Review URL: https://webrtc-codereview.appspot.com/939022

git-svn-id: http://libyuv.googlecode.com/svn/trunk@499 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-20 20:49:39 +00:00
fbarchard@google.com
b5491759b4 Neon optimized argb filter row for bilinear scale and Effects Interpolate.
BUG=none
TEST=./libyuv_unittest --gtest_filter=*ARGBScale*
Review URL: https://webrtc-codereview.appspot.com/964017

git-svn-id: http://libyuv.googlecode.com/svn/trunk@497 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-20 09:44:46 +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
3e46444727 Mirror source to continuous destination with Neon
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/937020

git-svn-id: http://libyuv.googlecode.com/svn/trunk@488 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-14 02:03:49 +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
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
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
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
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
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
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
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
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
fbarchard@google.com
64ce0ab544 Move Neon source to its own files.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/860009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@396 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-09 00:05:29 +00:00
fbarchard@google.com
fc7314e86b Add exports to allow libyuv to be built as a shared lib.
BUG=99
TEST=shared lib builds without impact and unittests link against import lib.
Review URL: https://webrtc-codereview.appspot.com/844005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@379 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-27 02:17:51 +00:00
fbarchard@google.com
cad0ad303c I422ToRGBA, I422ToBGRA and I422ToABGR.
BUG=73
TEST=I422ToRGBA_OptVsC
Review URL: https://webrtc-codereview.appspot.com/819008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@372 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-23 15:37:39 +00:00
fbarchard@google.com
dddf94c343 YUY2 and UYVY conversions to I420 ported to NEON
BUG=64
TEST=untested
Review URL: https://webrtc-codereview.appspot.com/823007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@371 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-21 17:54:23 +00:00
fbarchard@google.com
5808cb22ce Neon optimized RAW (RGB big endian)
BUG=68
TEST=unittest on try bot
Review URL: https://webrtc-codereview.appspot.com/819005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@368 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-20 05:05:33 +00:00
fbarchard@google.com
64961c01b2 ARGBToRGBA_NEON and ARGBToRGB24_NEON
BUG=68
TEST=none
Review URL: https://webrtc-codereview.appspot.com/816004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@367 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-19 20:03:20 +00:00
fbarchard@google.com
142f6c4ed5 Move row.h to include and remove rotate_priv.h
BUG=93
TESTED=try server
Review URL: https://webrtc-codereview.appspot.com/811004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@360 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-18 20:56:51 +00:00
fbarchard@google.com
9bcc9a2535 ARGBInterpolateRow_SSSE3 for motion blur. Used to use bilinear row filter, which extrudes edges. This branches off the code so the extrude can be removed for Interpolate.
BUG=none
TEST=build\release\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=*
Review URL: https://webrtc-codereview.appspot.com/786007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@354 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-16 05:00:37 +00:00
fbarchard@google.com
a2cc341b6c ARGBToRGBA implemented as alias
BUG=78
TEST=unittest
Review URL: https://webrtc-codereview.appspot.com/788009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@353 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-14 18:09:41 +00:00
fbarchard@google.com
bf8b0f0e2b Bug fix for I420ToI400 and unittest all I420To packed formats. Most import of the new I420 tests is I420ToYUY2.
BUG=none
TEST=libyuvTest.I420ToI400_OptVsC
Review URL: https://webrtc-codereview.appspot.com/767004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@331 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-28 17:58:10 +00:00
fbarchard@google.com
b0c9797589 Update Copyright notice to follow new chromium conventions.
BUG=63
TEST=none
Review URL: https://webrtc-codereview.appspot.com/730004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@314 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-08 19:04:24 +00:00
fbarchard@google.com
eeac2903ef ARGBGrayTo takes source and destination pointers so caller does not need to make a copy of the image.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/696004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@308 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-18 18:54:32 +00:00
fbarchard@google.com
452472dfc4 Internals of scale use ptrdiff_t to allow ARGBInterpolate to use stride between 2 images.
BUG=53
TEST=none
Review URL: https://webrtc-codereview.appspot.com/695004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@306 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-16 22:58:35 +00:00
fbarchard@google.com
b50e0572f2 Save and restore last 16 bytes of filtered rows when used for ARGBInterpolate.
BUG=50
TEST=none
Review URL: https://webrtc-codereview.appspot.com/673012

git-svn-id: http://libyuv.googlecode.com/svn/trunk@303 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-13 01:58:53 +00:00
fbarchard@google.com
942ad1f5f4 SSE2 version of scale is suspected of having a bug, as it didnt work in ARGBInterpolate, while SSSE3 and C do. Until the result can be verified, SSE2 is disabled. This will hurt performance on Pentium4 and below.
BUG=49
TEST=none
Review URL: https://webrtc-codereview.appspot.com/672009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@301 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-13 00:55:11 +00:00
fbarchard@google.com
0d95d47757 ARGBInterpolate for blending 2 images with a fractional amount of each.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/670008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@300 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-12 03:28:09 +00:00
fbarchard@google.com
c4c578e327 Flat shade an ARGB image
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/683004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@298 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-10 23:44:29 +00:00
fbarchard@google.com
c4500c9f79 ConvertToARGB
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/673007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@297 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-09 19:49:45 +00:00
fbarchard@google.com
27d42c7ff6 Expose ARGB rotation using scale low levels
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/675004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@292 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-22 23:57:26 +00:00
fbarchard@google.com
81b804e35c ARGBQuantize to do a posterizing effect. Added random resolution unittest.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/654005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@289 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-20 02:15:01 +00:00
fbarchard@google.com
e442dc4c2a ARGBcolorMatrix for applying transforms such as grey and sepia in a more general form. Unittest does sepia for comparison.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/656004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@288 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-18 17:37:09 +00:00
fbarchard@google.com
ee2208885f Fix constant in rowposix, remove addrow and minor cleanups
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/637013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@286 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-14 00:07:56 +00:00
fbarchard@google.com
bac5f2c3ee ARGBBlend functions that handle any alignment and number of pixels
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/635011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@285 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-13 23:43:12 +00:00
fbarchard@google.com
133adc4647 followup cleanup for blur and make compilable with /clr
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/645007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@284 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-12 05:46:49 +00:00
fbarchard@google.com
f38aefef4b Blur use circular buffer of Cumulative Sums instead of full frame for better cache coherency.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/646008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@283 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-12 00:29:29 +00:00
fbarchard@google.com
f51e87912e Blur functions
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/633005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@282 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-10 02:40:04 +00:00
fbarchard@google.com
2d9fe08225 direct conversion from NV12 to ARGB
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/645004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@281 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-05 22:11:34 +00:00
fbarchard@google.com
7c8e16f82a Add MJPGToARGB conversion directly to ARGB
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/635006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@280 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-05 17:27:51 +00:00
fbarchard@google.com
43279ffda0 ARGBToI422 which is similar to ARGBToI420
BUG=none
TEST=libyuvTest.ARGBToI422_CvsOPT (836 ms)
Review URL: https://webrtc-codereview.appspot.com/637006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@278 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-05 02:09:39 +00:00
fbarchard@google.com
e214fe3f07 I411ToARGB doing 2 UV values with 8 Y values
BUG=40
TEST=planar_test
Review URL: https://webrtc-codereview.appspot.com/637005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@277 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-04 23:47:11 +00:00
fbarchard@google.com
6d6b7709f7 Fix RGB565ToARGB_SSE2. Expose rgb conversions. Low levels were already there for i420 to rgb, but rgb to rgb functions were not exposed. Added unittests.
BUG=none
TEST=planar unittests
Review URL: https://webrtc-codereview.appspot.com/632004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@276 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-04 15:29:15 +00:00
fbarchard@google.com
85869c87f3 UYVYToARGB and ARGBToRGB565 added for more ARGB support completeness.
BUG=38
TEST=none
Review URL: https://webrtc-codereview.appspot.com/624004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@275 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-01 05:44:36 +00:00
fbarchard@google.com
221e602f8a ARGBSepia planarfunction for converting a region of ARGB image to Sepia tone. ARGBGray optimized weaving of alpha value. 551 ms from 568 ms.
BUG=none
TEST=libyuv_unittest --gtest_filter=*ARGBSepia*
Review URL: https://webrtc-codereview.appspot.com/573008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@270 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-21 22:24:41 +00:00
fbarchard@google.com
ffaea7eee3 ARGBGray function for convertion a rectangle of ARGB to gray scale
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/582007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@269 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-18 19:43:59 +00:00
fbarchard@google.com
ca4749dd4d Scale Even sizes
BUG=none
TEST=build\release\libyuv_unittest.exe  --gtest_catch_exceptions=0 --gtest_filter=*ARGBScale*
Review URL: https://webrtc-codereview.appspot.com/570005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@262 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-09 20:27:10 +00:00
fbarchard@google.com
87e2390fd8 YUY2 directly to ARGB.
BUG=31
TEST=none
Review URL: https://webrtc-codereview.appspot.com/537003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@253 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-27 20:14:09 +00:00
fbarchard@google.com
5566302866 AddRow function to help implement box filter
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/527002

git-svn-id: http://libyuv.googlecode.com/svn/trunk@252 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-26 00:01:41 +00:00
fbarchard@google.com
5ff3a8fec5 ARGBBlendRow1_SSSE3 added to allow SSSE3 only alpha blending. Saves on SSE2 cpu dispatching
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/518002

git-svn-id: http://libyuv.googlecode.com/svn/trunk@251 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-24 19:43:45 +00:00
fbarchard@google.com
da5cc4274b Prune SSE2 code out when building specifically for SSSE3
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/517001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@250 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-24 06:01:32 +00:00
fbarchard@google.com
810cd91079 ARGBUnattenuateRow_SSE2 use reciprocal table and pmul
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/497001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@244 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-20 20:15:27 +00:00
fbarchard@google.com
f2c86d01cc SSSE3 version using pshufb for ARGBAttenuateRow_SSSE3
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/490011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@243 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-18 19:12:41 +00:00
fbarchard@google.com
8ed54222e7 Attenuation ported to SSE2
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/485009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@242 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-18 17:07:07 +00:00
fbarchard@google.com
f86ba32b9d Unattenuate using a reciprocal
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/487006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@241 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-18 00:35:55 +00:00
fbarchard@google.com
829e7ea402 ARGBAttenuate and ARGBUnattenuate for converting to/from attentuated ARGB
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/490008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@240 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-17 00:49:28 +00:00
fbarchard@google.com
c5d44a0c5e cpuid add sse41 and x86
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/485001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@236 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-05 20:39:42 +00:00
fbarchard@google.com
d2f4413d29 Remove old alpha blend, expose GetARGB2Blend, fix ComputeSumSquareErrorPlane on SSE2
BUG=29
TEST=none
Review URL: https://webrtc-codereview.appspot.com/469005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@234 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-04 21:53:27 +00:00
fbarchard@google.com
c757f308ea Alpha blend 2 sources and store to a destination. Useful for A under B blending.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/472005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@233 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-03 00:49:16 +00:00
fbarchard@google.com
952a507ca6 I420ToARGB without row buffer faster and unlimited in size. Uses SSSE3 unaligned for multiples of 8 and C for remainder
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/470001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@232 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-30 18:10:50 +00:00
fbarchard@google.com
5b22506b14 With an asm() away lint, this cleans up most remaining issues.
BUG=none
TEST=lint filename
Review URL: https://webrtc-codereview.appspot.com/464001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@230 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-29 02:19:26 +00:00
fbarchard@google.com
4f59bcc102 planarfunction build/lint fixes
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/460008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@223 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-26 17:11:27 +00:00
fbarchard@google.com
0ab5440693 lint cleanup of headers
BUG=none
TEST=gcl lint
Review URL: https://webrtc-codereview.appspot.com/459003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@221 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-23 21:17:22 +00:00
fbarchard@google.com
2b9c210803 lint fix test
BUG=none
TEST=gcl lint lintfix2
Review URL: https://webrtc-codereview.appspot.com/458003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@220 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-22 22:36:44 +00:00
fbarchard@google.com
8670b1ae04 SSSE3 version of alpha blender does pshufb instead of shift and 2 pshufw.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/446008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@219 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-19 16:50:03 +00:00
fbarchard@google.com
91ab139558 inline version of alpha blend
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/446006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@216 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-15 19:40:07 +00:00
fbarchard@google.com
18184fd19d switch looping to jg from ja to allow non-multiple of 16 to underflow to a negative
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/453001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@214 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-12 18:53:19 +00:00
fbarchard@google.com
1ff0357103 ARGBBlendRow to dispatch to sse2
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/447003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@213 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-12 18:24:15 +00:00
fbarchard@google.com
bd4a849bcb fix for nv21 u, v order, align all loops, and make addrows support 1 row
BUG=17
TEST=none
Review URL: https://webrtc-codereview.appspot.com/435004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@208 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-07 19:19:03 +00:00
fbarchard@google.com
fe9f4ad808 alphablend test for opaque and transparent
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/436005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@205 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-07 02:43:18 +00:00
fbarchard@google.com
965fb914ea alpha blend argb into argb
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/428009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@203 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-06 18:49:39 +00:00
fbarchard@google.com
2842f2536d safe for x86 and memset for arm
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/401005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@183 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-02-22 18:52:29 +00:00
fbarchard@google.com
19932f8dbc CopyRow instead of memcpy for copying planes
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/396008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@175 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-02-16 22:19:14 +00:00
fbarchard@google.com
2d11d43a6e shuffle functions so convert.h is all formats to I420 and convert_from.h is from I420 to all formats
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/395006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@174 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-02-16 02:50:39 +00:00
fbarchard@google.com
798197fc14 remove deprecated RGB24ToARGB, rename BG24ToARGB to RGB24ToARGB
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/392009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@172 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-02-14 18:17:12 +00:00
fbarchard@google.com
b95dbf2495 check pointer of last pixel and last pixel + 64 are in the same page.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/387006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@170 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-02-11 01:18:30 +00:00