594 Commits

Author SHA1 Message Date
fbarchard@google.com
e8df16bd7c Sobel use G channel for consistency on all CPUs, better performance and full range of 0 to 255.
BUG=201
TESTED=out\release\libyuv_unittest --gtest_filter=*Sobel*
Review URL: https://webrtc-codereview.appspot.com/1225004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@614 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-22 04:47:14 +00:00
fbarchard@google.com
30a96ede5b Makefile for psnr tool
BUG=204
TESTED=make
Review URL: https://webrtc-codereview.appspot.com/1215007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@613 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-21 01:06:33 +00:00
fbarchard@google.com
e424a9de7a PSNR standalone utility for SSIM and PSNR quality assessment.
BUG=204
TESTED=build\gyp_chromium -fninja -G msvs_version=2012 --depth=. libyuv_test.gyp & out\Release\psnr locally tested.
Review URL: https://webrtc-codereview.appspot.com/1216005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@612 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-20 23:37:19 +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
1e985bbc16 ARGBSobel
BUG=201
TEST=Sobel*
Review URL: https://webrtc-codereview.appspot.com/1221005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@609 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-19 19:23:44 +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
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
7d25fe2ddb bilinear scaling allow higher error for differences in SSSE3 7 bit math vs C/SSE2 15 bit math, when extreme scale factors are used.
BUG=200
TEST=*Scale* width LIBYUV_WIDTH=16 LIBYUV_HEIGHT=16
Review URL: https://webrtc-codereview.appspot.com/1197004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@606 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-13 18:33:41 +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
04de744106 fix for bayer unittest, transpose and rotate, and Ssim tolerance.
BUG=198
TESTED=*Bayer*
Review URL: https://webrtc-codereview.appspot.com/1194004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@604 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-13 01:52:21 +00:00
fbarchard@google.com
53c4fb4a75 fix odd width unittesting by rounding up to next subsample size.
BUG=198
TEST=set LIBYUV_WIDTH=31 and run unittest
Review URL: https://webrtc-codereview.appspot.com/1192004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@603 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-13 00:57:01 +00:00
fbarchard@google.com
a3956fc5f4 lint fix for Intel and YANY fix for Neon
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1161005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@602 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-12 23:22:32 +00:00
fbarchard@google.com
518833b983 Fix RGB565ToARGB_Any which uses SSE2 that requires ARGB alignment. Add row coalescing to convert_argb.cc. Improve coalescing on planar_functions.cc and convert_from_argb.cc. Use stride * 2 == width to test for even width. Apply coalescing to all functions that have same vertical subsampling.
BUG=197
TESTED=libyuv unittest passes where _Opt uses row coalescing.
Review URL: https://webrtc-codereview.appspot.com/1186004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@601 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-12 21:44:56 +00:00
fbarchard@google.com
4db105148e Fix white space (lint) and sort row.h defines
BUG=197
TEST=lint
Review URL: https://webrtc-codereview.appspot.com/1185004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@600 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-12 03:58:04 +00:00
fbarchard@google.com
805fefb9d8 Unattenutate with work around for vpgatherdd on avx2
BUG=none
TEST=ARGBUnattenuate*
Review URL: https://webrtc-codereview.appspot.com/1183004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@599 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-12 01:59:48 +00:00
fbarchard@google.com
11a524362d Coalesce rows
BUG=197
TESTED=out\release\libyuv_unittest --gtest_filter=*ARGBToI400*
Review URL: https://webrtc-codereview.appspot.com/1176004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@598 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-11 18:51:25 +00:00
fbarchard@google.com
4f4c8b544c clobber list fix for arm
BUG=196
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1172004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@597 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-09 00:32:37 +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
304a611d80 Unaligned version of ABGRToARGB for SSSE3
BUG=196
TESTED=libyuv_unittest --gtest_filter=*ABGRToARGB*
Review URL: https://webrtc-codereview.appspot.com/1166006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@595 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-07 21:48:02 +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
2610c06922 fix mirror macro
git-svn-id: http://libyuv.googlecode.com/svn/trunk@593 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-05 22:55:35 +00:00
fbarchard@google.com
2007dca6dc Mirror
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1162005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@592 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-05 22:40:55 +00:00
fbarchard@google.com
af08b9d193 Bump chromium dep to canary to resolve valgrind memcheck error
BUG=195
TEST=try bot
Review URL: https://webrtc-codereview.appspot.com/1162004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@591 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-05 08:00:34 +00:00
fbarchard@google.com
e1bb5d9430 AVX2 version of half rows.
BUG=none
TEST=out\release\libyuv_unittest.exe --gtest_filter=*I422ToI420*
Review URL: https://webrtc-codereview.appspot.com/1157004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@590 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-05 06:32:03 +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
f4951e7aee gcc scale fix and change tabs to spaces in gyps
BUG=177
TEST=try bots
Review URL: https://webrtc-codereview.appspot.com/1120009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@587 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-28 04:48:17 +00:00
fbarchard@google.com
155c76161a Add comments to gyp showing what the macros are for.
BUG=189
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1113007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@586 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-28 00:05:18 +00:00
fbarchard@google.com
14f657b44a SSE2 scale for ARGB and posix with specializations
BUG=177
TESTED=try bots
Review URL: https://webrtc-codereview.appspot.com/1115008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@585 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-27 06:38:41 +00:00
fbarchard@google.com
b3446fc50c ARGBmultiply re-enabled with shifts and narrow as 2 steps.
BUG=183
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1121008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@584 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-27 02:23:54 +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
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
c22cd5b209 Mips memcpy moved to row_mips.
BUG=191
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1127005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@580 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-23 09:39:56 +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
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
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
caf6e2470b remove vpermq from ARGBToUV
BUG=none
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/1107005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@575 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-15 18:33:20 +00:00
fbarchard@google.com
d8b73cacbe fix ARGBToI444 UV code to use signed math
BUG=148
TESTED=out\release\libyuv_unittest --gtest_filter=*ARGBToI444_Opt
Review URL: https://webrtc-codereview.appspot.com/1105008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@574 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-15 07:49:15 +00:00
fbarchard@google.com
408e574366 Use vmovd to avoid switch to sse mode
BUG=none
TEST=c:\intelsde\sde -hsw -- out\release\libyuv_unittest.exe --gtest_filter=*Psnr*
Review URL: https://webrtc-codereview.appspot.com/1097013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@573 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-14 19:03:30 +00:00
fbarchard@google.com
f3ad618d40 Sum of Square Error ported to AVX2
BUG=187
TEST=compare_unittest
Review URL: https://webrtc-codereview.appspot.com/1099009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@572 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-13 18:38:03 +00:00
fbarchard@google.com
5f8858665b Box filter start from 0,0. Fixes crash that overreads horizontally.
BUG=185
TEST=scale_test
Review URL: https://webrtc-codereview.appspot.com/1094009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@571 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-12 19:05:40 +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
c9562334d7 SplitUV 3 operand AVX2
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1105005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@568 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-10 03:42:51 +00:00
fbarchard@google.com
208280598e Remove vmovdqa from UV code
BUG=181
TESTED=c:\intelsde\sde -hsw -- out\release\libyuv_unittest.exe --gtest_filter=*ARGBToI420*
Review URL: https://webrtc-codereview.appspot.com/1091010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@567 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-08 23:27:22 +00:00
fbarchard@google.com
551d2b297e AVX2 version of ARGBToI420
BUG=181
TEST=unittest
Review URL: https://webrtc-codereview.appspot.com/1090005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@566 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-08 20:57:52 +00:00
fbarchard@google.com
8e26eada77 Fix for mutated registers on AVX2
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1090007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@565 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-08 02:29:21 +00:00
fbarchard@google.com
7d387f155a Roll chromium dep to r181357
BUG=none
TEST=try bots
Review URL: https://webrtc-codereview.appspot.com/1090006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@564 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-07 21:02:40 +00:00