567 Commits

Author SHA1 Message Date
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
f491a094c7 mips noexec stack for security safety
BUG=168
TESTED=untested
Review URL: https://webrtc-codereview.appspot.com/994006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@520 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-14 00:08:35 +00:00
fbarchard@google.com
308eb0c344 Do not allows the other elfs to run on the chimney stack
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/990004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@519 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-13 18:44:41 +00:00
fbarchard@google.com
578c88a9f7 ARGBShade Neon bug fix on alpha.
BUG=168
TESTED=./libyuv_unittest --gtest_filter=*Shade
Review URL: https://webrtc-codereview.appspot.com/985004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@516 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-12 19:27:29 +00:00
fbarchard@google.com
1b40d8caa2 disable shade_neon
BUG=168
TEST=TestShade
Review URL: https://webrtc-codereview.appspot.com/971021

git-svn-id: http://libyuv.googlecode.com/svn/trunk@515 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-12 01:49:52 +00:00
fbarchard@google.com
834b748d10 Remove ifdefs around each function for Neon and Mips since entire file requires SIMD.
BUG=none
TEST=lint and try bots
Review URL: https://webrtc-codereview.appspot.com/981004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@514 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-11 17:59:26 +00:00
fbarchard@google.com
b91b53481c ifdef to wrap mips
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/974012

git-svn-id: http://libyuv.googlecode.com/svn/trunk@513 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-12-11 17:27:33 +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
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
326a521aba unittest to scale to 1280x720 from whatever current LIBYUV_WIDTH and LIBYUV_HEIGHT are
BUG=none
TEST=libyuv_unittest --gtest_filter=*ScaleTo1280*
Review URL: https://webrtc-codereview.appspot.com/969011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@505 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-28 02:23:34 +00:00
fbarchard@google.com
d1cb453c6c Unittest each scaling filter separately for benchmarking purposes.
BUG=155
TEST=*Scale*
Review URL: https://webrtc-codereview.appspot.com/935022

git-svn-id: http://libyuv.googlecode.com/svn/trunk@504 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-26 23:09:45 +00:00
fbarchard@google.com
2580ccf64d Scale benchmark just the OPT and run C version once.
BUG=none
TEST=scale_test
Review URL: https://webrtc-codereview.appspot.com/929028

git-svn-id: http://libyuv.googlecode.com/svn/trunk@503 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-26 22:39:30 +00:00
fbarchard@google.com
95d845bd5b benchmark only the opt version of rotate.
BUG=155
TEST=sudo LIBYUV_REPEAT=1000 nice --5 ./libyuv_unittest --gtest_filter=*Rotate*
Review URL: https://webrtc-codereview.appspot.com/939029

git-svn-id: http://libyuv.googlecode.com/svn/trunk@502 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-26 19:10:35 +00:00
fbarchard@google.com
d6b94fde24 ARGBBlend_Neon take 2 - use 8 bit math to do q reg operations.
BUG=161
TEST=planar test
Review URL: https://webrtc-codereview.appspot.com/971004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@501 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-21 16:49:50 +00:00
fbarchard@google.com
579113950c check for interpolation of 0 and do a memcpy to avoid touching the row + 1 which may be one past the end of the buffer.
BUG=153
TEST=valgrind
Review URL: https://webrtc-codereview.appspot.com/930026

git-svn-id: http://libyuv.googlecode.com/svn/trunk@500 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-20 22:22:33 +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
dd3b137f5d ARGBBlend unaligned unittest
BUG=160
TEST=libyuvTest.ARGBBlend_Unaligned
Review URL: https://webrtc-codereview.appspot.com/935019

git-svn-id: http://libyuv.googlecode.com/svn/trunk@498 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-20 19:30:04 +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
958a0b0c19 lint cleanup
BUG=none
TEST=lint
Review URL: https://webrtc-codereview.appspot.com/931013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@496 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-17 00:00:23 +00:00
fbarchard@google.com
8ef9e0dc4d ifdef around stdint on android for x86 builds
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/930022

git-svn-id: http://libyuv.googlecode.com/svn/trunk@495 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-16 19:35:17 +00:00
fbarchard@google.com
8e50e619db ARGBScale_NEON
BUG=none
TEST=./libyuv_unittest --gtest_filter=*ARGBScale*
Review URL: https://webrtc-codereview.appspot.com/964016

git-svn-id: http://libyuv.googlecode.com/svn/trunk@494 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-16 19:32:16 +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
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
d985cf1f62 clamp maxy for first row of bilinear
BUG=153
TEST=none
Review URL: https://webrtc-codereview.appspot.com/934014

git-svn-id: http://libyuv.googlecode.com/svn/trunk@490 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-14 08:15:55 +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
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
66d16f4100 argb scale 2x upsample with specialization for 25/75%
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/938014

git-svn-id: http://libyuv.googlecode.com/svn/trunk@486 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-13 20:43:25 +00:00
fbarchard@google.com
f25ab6d8d9 scale to 2x with bilinear subpixel accuracy specialized to have 1/4 and 3/4 scale factors FilterRow.
BUG=none
TEST=libyuvTest.I420ToI444_Any
Review URL: https://webrtc-codereview.appspot.com/965021

git-svn-id: http://libyuv.googlecode.com/svn/trunk@485 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-13 19:09:37 +00:00
fbarchard@google.com
55d5b48e4d bilinear scale use fast 2 pass unless image is beyond row buffer size.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/965020

git-svn-id: http://libyuv.googlecode.com/svn/trunk@484 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-13 17:31:08 +00:00
fbarchard@google.com
e0b63e44e0 hook for cygwin and relax argbtoyuy2 for unittest flakey fail
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/966016

git-svn-id: http://libyuv.googlecode.com/svn/trunk@483 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-13 10:12:28 +00:00
fbarchard@google.com
48072f89af roll chromium deps to r167318
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/968004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@482 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-13 08:46:45 +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
dd2d512e5a 420 subsampler
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/935012

git-svn-id: http://libyuv.googlecode.com/svn/trunk@478 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-07 00:53:52 +00:00
fbarchard@google.com
76e851792c 411 subsampled
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/930013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@477 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-06 22:51:39 +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
c673f426de ARGBToI444 for Neon
BUG=none
TEST=libyuvTest.ARGBToI444_Opt
Review URL: https://webrtc-codereview.appspot.com/932013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@475 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-06 18:46:51 +00:00
fbarchard@google.com
c1f17f1843 quick rename bug fix
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/935011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@474 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-06 02:38:45 +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
4b4a32cb17 ARGB1555 to ARGB Neon optimized
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/965007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@472 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-06 01:56:52 +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
d8427fd50a quick fix for source check alignment
BUG=none
TEST=none

git-svn-id: http://libyuv.googlecode.com/svn/trunk@470 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-04 02:57:49 +00:00
fbarchard@google.com
6784e4b414 Fix unaligned access violation in YUY2ToARGB
BUG=none
TEST=build bot

git-svn-id: http://libyuv.googlecode.com/svn/trunk@469 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-04 02:12: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
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
f314467665 fix unused variable warning on windows for basic_types
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/928017

git-svn-id: http://libyuv.googlecode.com/svn/trunk@464 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-02 00:58:47 +00:00
fbarchard@google.com
daed763fd3 remove nolint from size tests
BUG=none
TEST=lint
Review URL: https://webrtc-codereview.appspot.com/930009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@463 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-02 00:36:33 +00:00
fbarchard@google.com
2cb7e512ee Change Mac to long long for int64
BUG=140
TESTED=libyuv_unittest.exe --gtest_filter=*Size*
Review URL: https://webrtc-codereview.appspot.com/932010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@462 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-01 21:11:42 +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
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
c074e88084 FourCC formats grouped, counted with comments
BUG=133
TEST=still builds
Review URL: https://webrtc-codereview.appspot.com/964006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@457 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-30 19:52:35 +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
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
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
b22871fe4f Fix valgrind error on I420ToNV12. Do any conversions first, and work toward fastest, which produces more stable results for the tests that matter.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/938005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@445 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-25 20:11:54 +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
d3728d9222 unittest simplify loop counter
BUG=none
TEST=planar unittests
Review URL: https://webrtc-codereview.appspot.com/935006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@443 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-25 17:12:41 +00:00
fbarchard@google.com
bd4fcb9877 Switch to 128x72 for default testing size when not benchmarking.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/935004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@442 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-24 19:52:14 +00:00
fbarchard@google.com
75f90ac315 Add unittest environment variables to set conversion width and height
BUG=none
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/932004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@439 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-24 17:43:51 +00:00
fbarchard@google.com
ffeec746eb Fix for NV12ToRGB565
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/924005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@438 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-23 15:27:47 +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
7411455932 Roll to new chrome for vs2012 builds and fix a warning on vs2012
BUG=125
TESTED=local build with gtest errors disabled
Review URL: https://webrtc-codereview.appspot.com/924004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@433 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-22 16:15:25 +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
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
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
c4163acb7b Additional rotate test
BUG=none
TEST=adds new test in rotate_test
Review URL: https://webrtc-codereview.appspot.com/883004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@417 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-14 06:02:28 +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
f09570d5e5 v210 unittest use 128 byte stride
BUG=91
TEST=libyuv unittest I420ToV210
Review URL: https://webrtc-codereview.appspot.com/867009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@404 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-11 08:30:08 +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
fbarchard@google.com
f6e4e14713 .neon suffix on neon files
BUG=108
TEST=none
Review URL: https://webrtc-codereview.appspot.com/867007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@397 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-09 00:41:57 +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
4807dea4e7 NV12ToARGBRow_NEON and SetRow8_NEON
BUG=115
TEST=./libyuv_unittest --gtest_filter=*NV12ToARGB*
Review URL: https://webrtc-codereview.appspot.com/869006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@395 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-08 10:16:13 +00:00
fbarchard@google.com
82069e7a71 pld and palign for performance consistency.
BUG=113
TEST=unittest run on linux neon
Review URL: https://webrtc-codereview.appspot.com/860008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@394 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-05 18:27:23 +00:00
fbarchard@google.com
c74fe98725 YUY2 16 pixels at a time is 2x faster
BUG=116
TEST=libyuv_unittest
Review URL: https://webrtc-codereview.appspot.com/870005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@393 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-05 12:00:07 +00:00
fbarchard@google.com
cc206dee46 Fix register used for YUY2 Neon
BUG=113
TEST=unittest
Review URL: https://webrtc-codereview.appspot.com/858008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@392 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-05 11:03:05 +00:00
fbarchard@google.com
a844b95688 YU12 has a normal fourcc instead of an alias, allowing code to treat it as different, if needed.
BUG=112
TEST=unittests still pass
Review URL: https://webrtc-codereview.appspot.com/864008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@391 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-04 21:04:27 +00:00
fbarchard@google.com
6d62980977 Android makefile allow armv6 without neon and x86.
BUG=110
TEST=android try bot
Review URL: https://webrtc-codereview.appspot.com/864007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@390 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-04 17:49:07 +00:00
fbarchard@google.com
6325869685 xgetbv instrinsic for 64 bit
BUG=106
TEST=untested
Review URL: https://webrtc-codereview.appspot.com/859005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@389 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 17:19:26 +00:00
fbarchard@google.com
8b826a65e6 Use emit for xgetbv on 32 bit.
BUG=106
TEST=none
Review URL: https://webrtc-codereview.appspot.com/863004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@388 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 16:45:48 +00:00
fbarchard@google.com
db11d893c2 Check destination alignment for Q420 format when using SSE2.
BUG=96
TEST=none
Review URL: https://webrtc-codereview.appspot.com/861004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@387 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 06:45:34 +00:00
fbarchard@google.com
d8a1435fe0 Q420 format redone using YUY2 assembly which supports NEON
BUG=96
TEST=local tests in talk do q420 testing on windows.
Review URL: https://webrtc-codereview.appspot.com/856006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@386 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 05:34:59 +00:00
fbarchard@google.com
c05b7c4981 NEON YUY2 Any functions enabled. Previously was inside an SSSE3 ifdef that disabled them
BUG=105
TEST=neon build bots
Review URL: https://webrtc-codereview.appspot.com/859004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@385 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 05:18:04 +00:00
fbarchard@google.com
7f4bbdee3b attribute visible for gcc but not APPLE
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/856005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@384 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 03:32:33 +00:00
fbarchard@google.com
2e4fccde02 fix ifdef elif in attribute
BUG=none
TEST=none

git-svn-id: http://libyuv.googlecode.com/svn/trunk@383 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 03:04:25 +00:00
fbarchard@google.com
2605e02178 Use no attribute on gcc unless using shared lib or making shared lib
BUG=none
TEST=none

git-svn-id: http://libyuv.googlecode.com/svn/trunk@382 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-01 02:59:58 +00:00
fbarchard@google.com
dd46dac03a ALIGNP test if ALIGNP is already defined to avoid a redefine. Allows new ALIGNP to coexist with old libjingle version of ALIGNP when integrating into chromium.
BUG=104
TEST=build chromium against libyuv
Review URL: https://webrtc-codereview.appspot.com/857004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@381 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-30 19:08:23 +00:00
fbarchard@google.com
c1daff11eb row.h nolint on header guard
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/853004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@380 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-27 22:02:58 +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
275913410d Redo register usage for Neon to avoid callee saved d8 - d15. Use d0 - d7 instead.
BUG=64
TEST=none
Review URL: https://webrtc-codereview.appspot.com/846005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@378 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-26 17:55:37 +00:00
fbarchard@google.com
aa4750f86d Move sub before store to avoid wait on core2.
BUG=101
TEST=none
Review URL: https://webrtc-codereview.appspot.com/846006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@377 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-26 17:04:51 +00:00
fbarchard@google.com
fb49764705 Use emit for xgetbv in vs2005
BUG=98
TEST=build with vs2005
Review URL: https://webrtc-codereview.appspot.com/845005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@375 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-26 00:10:54 +00:00
fbarchard@google.com
4c32b3a017 Port xgetbv to posix
BUG=98
TEST=none
Review URL: https://webrtc-codereview.appspot.com/848004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@374 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-25 23:46:44 +00:00
fbarchard@google.com
78070bc1ba Added CPUID change to detect AVX2.
BUG=98
TEST=none
Review URL: https://webrtc-codereview.appspot.com/839004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@373 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-25 19:13:04 +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
f0ada0e90b Pad source RGB buffer by 16 to allow overread in ARGBToRGB24
BUG=94
TEST=Build bots
Review URL: https://webrtc-codereview.appspot.com/827004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@370 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-21 01:00:40 +00:00
fbarchard@google.com
797e9ef871 5 RGB formats to ARGB ported to NEON
BUG=68
TEST=unittest
Review URL: https://webrtc-codereview.appspot.com/825004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@369 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-20 21:24:10 +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
6fd84a8a59 NV12 optimization turned back on now that unittest is fixed
BUG=55
TEST=unittest
Review URL: https://webrtc-codereview.appspot.com/813005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@366 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-19 07:35:45 +00:00
fbarchard@google.com
855c3a3d9e Android.mk moved into libyuv to central support
BUG=93
TEST=none
Review URL: https://webrtc-codereview.appspot.com/807005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@365 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-19 07:27:17 +00:00
fbarchard@google.com
2d61b7495d I422ToRGBARow_NEON optimized
BUG=78,93
TEST=android build bot
Review URL: https://webrtc-codereview.appspot.com/815004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@364 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-19 02:13:24 +00:00
fbarchard@google.com
7c4656317c cpuid on nonx86 has an unused parameter.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/814004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@363 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-18 23:37:23 +00:00
fbarchard@google.com
7781d943b0 Disable V210 unittest that fails valgrind, and some warning fixes for android.
BUG=91
TEST=try
Review URL: https://webrtc-codereview.appspot.com/813004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@362 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-18 22:58:34 +00:00
fbarchard@google.com
5625adfa12 Respect HAVE_JPEG and build cleanly
BUG=93
TEST=none
Review URL: https://webrtc-codereview.appspot.com/812004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@361 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-18 21:31:21 +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
25dc05858e RGBAToI420_SSSE3 and I420ToRGBA_SSSE3 implemented.
BUG=78
TESTED=gcl lint
Review URL: https://webrtc-codereview.appspot.com/796009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@359 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-18 05:35:30 +00:00
fbarchard@google.com
13f3894033 Fix for subsampling that caused a valgrind memcheck fail.
BUG=79
TEST=build bots should pass
Review URL: https://webrtc-codereview.appspot.com/806005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@358 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-17 21:19:34 +00:00
fbarchard@google.com
bc81e2dc05 Clean up line warnings on long lines mostly.
BUG=90
TEST=lint run on all source
Review URL: https://webrtc-codereview.appspot.com/795009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@357 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-17 19:49:15 +00:00
fbarchard@google.com
caba6c10fb Small fix for ABGR
BUG=78
TESTED=unittest
Review URL: https://webrtc-codereview.appspot.com/798009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@356 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-16 23:45:55 +00:00
fbarchard@google.com
d5a27f0533 RGBA to and from I420 with C implementation.
BUG=78
TEST=planar_test
Review URL: https://webrtc-codereview.appspot.com/798007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@355 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-16 23:27:29 +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
6ccda3d206 Add environment variable for tests to repeat for benchmarking purposes.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/796006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@352 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-14 15:35:34 +00:00
fbarchard@google.com
b8eabfea64 RGBAToARGB conversion. SSSE3 optimized.
BUG=78
TEST=RGBA unittests
Review URL: https://webrtc-codereview.appspot.com/788008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@351 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-14 06:59:31 +00:00
kjellander@google.com
1c5cab8e11 Added try server to codereview.settings.
Review URL: https://webrtc-codereview.appspot.com/776006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@350 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-13 20:09:31 +00:00
fbarchard@google.com
cded3e566b interpolate stores/restores an extra byte, so asan complains about the potential danger. This pads the buffer by 16, which is what the user is expected to do, for now at least.
BUG=81
TESTED=asan on unittests
Review URL: https://webrtc-codereview.appspot.com/799005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@349 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-13 11:19:00 +00:00
fbarchard@google.com
06f275cc44 a tsan build caused UYVY unittest to fail. This re-enables the test and fixes the bug.
BUG=80
TEST=unittest with tsan or use build bots
Review URL: https://webrtc-codereview.appspot.com/804004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@348 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-13 09:58:33 +00:00
fbarchard@google.com
008e5eb689 produce a warning if versions are slightly off.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/796004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@347 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-12 01:13:01 +00:00
fbarchard@google.com
bb757cdc24 Bump chromium revision to r154697 to pick up new yasm that fixes 2 build warnings.
BUG=84
TEST=libyuv builds and passes unittests
Review URL: https://webrtc-codereview.appspot.com/795005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@345 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-11 22:08:58 +00:00
fbarchard@google.com
853dc689bf Allow TextVersion to be with 5 of actual version. This allows a few changes without failing the unittest before version.h must be updated. Note that changes of documentation count.
BUG=none
TEST=TestVersion passes, even though this CL purposely does not update the version.
Review URL: https://webrtc-codereview.appspot.com/781007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@344 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-11 06:15:16 +00:00
fbarchard@google.com
93fdfd19fe llvm/clang does not support attribute optimize. Disable the OMITFP macro for llvm. #if defined(__APPLE__) || defined(__x86_64__) || defined(__llvm__)
BUG=83
TEST=webrtc build bots
Review URL: https://webrtc-codereview.appspot.com/787007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@342 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-10 21:20:10 +00:00
fbarchard@google.com
feb589f6ce Disable v210 test which fails under valgrind. 210 is a very uncommon format, but leverages UYVY, which also fails.
BUG=82
TEST=build bot
Review URL: https://webrtc-codereview.appspot.com/787006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@341 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-10 20:21:47 +00:00
fbarchard@google.com
78b2d9ae9b Disable 3 tests that fail valgrind memcheck, tsan and asan tests
BUG=79,80,81
TEST=none
Review URL: https://webrtc-codereview.appspot.com/789004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@340 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-10 19:50:09 +00:00
fbarchard@google.com
b8f820af71 make const int into int
BUG=none
TEST=lint
Review URL: https://webrtc-codereview.appspot.com/766007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@338 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-30 22:57:02 +00:00
fbarchard@google.com
26d088e770 Unittest fix 80 column limit
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/762007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@337 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-30 22:31:27 +00:00
fbarchard@google.com
de6eca3104 Change unittest to default to 1 iteration of each test. Can be change manually to 1000 for benchmarking purposes.
BUG=77
TEST=build\release\libyuv_unittest.exe
Review URL: https://webrtc-codereview.appspot.com/768006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@336 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-30 21:18:10 +00:00
fbarchard@google.com
d4164fb01a Clean up posix build of YUY2
BUG=76
TEST=build on osx/linux
Review URL: https://webrtc-codereview.appspot.com/762006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@335 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-30 20:42:01 +00:00
fbarchard@google.com
6343f22bb5 YUY2 and UYVY to ARGB had oversampling bug. This passes 0 for UV stride, avoiding the issue. A better solution would be a version of the conversions that does not do 2 rows subsampled. But the performance would only be slightly faster.
BUG=76
TEST=build\release\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=*UY*ToARGB*
Review URL: https://webrtc-codereview.appspot.com/773004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@333 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-30 08:30:38 +00:00
fbarchard@google.com
5ef7680eae Change size of V210 in unittest from 3 bytes to 45 / 16 bytes.
BUG=75
TEST=build\release\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=**V210*
Review URL: https://webrtc-codereview.appspot.com/762005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@332 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-29 23:51:38 +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
b1f5fae637 YUY2ToI420_OptVsC unittest added. As well as all other packed formats to I420.
BUG=71
TESTED=build\release\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=libyuvTest.*OptVsC
Review URL: https://webrtc-codereview.appspot.com/764004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@330 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-28 16:45:48 +00:00
fbarchard@google.com
051cef4a0a Compare util show version. (bug fix for Mac)
BUG=71
TESTED=xcodebuild -project libyuv_test.xcodeproj -configuration Release
Review URL: https://webrtc-codereview.appspot.com/745006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@326 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-27 19:57:46 +00:00
fbarchard@google.com
aeaefa8344 vqrdmulh takes 3 parameters and clang requires all 3 to be specified, not just 2.
BUG=72
TEST=none
Review URL: https://webrtc-codereview.appspot.com/744006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@325 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-23 04:11:25 +00:00
fbarchard@google.com
619ee4586b YUV_DISABLE_ASM for NEON
BUG=70
TEST=none
Review URL: https://webrtc-codereview.appspot.com/710013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@324 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-17 21:07:22 +00:00
fbarchard@google.com
41f24bf8ca Affine function in 64 bit Mac use movd instead of movq for xmm to gpr.
BUG=69
TEST=NONE
Review URL: https://webrtc-codereview.appspot.com/728011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@323 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-17 16:51:25 +00:00
fbarchard@google.com
f3181b3cf9 Fix aligned version of SSSE3 alpha blend and re-enable SSE2 alpha blend for performance evaluation on low end CPUs where pshufb is slow.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/728009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@322 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-15 18:57:18 +00:00
fbarchard@google.com
f877e71995 Alpha blend test alignment of source pointer and use movdqa aligned fetches.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/714010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@321 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-15 00:51:24 +00:00
fbarchard@google.com
e3cc76943e 4 pixel version of affine for gcc and aligned version of win.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/714007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@320 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-10 20:41:27 +00:00
fbarchard@google.com
845e94d1a7 Affine do 4 pixels at a time.
BUG=none
TEST=affine unitest
Review URL: https://webrtc-codereview.appspot.com/729005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@319 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-10 03:48:21 +00:00
fbarchard@google.com
749950d7fd Fix a warning on win64.. unused variable.
BUG=61,62
TEST=build 64 bit on windows
Review URL: https://webrtc-codereview.appspot.com/717011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@318 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-09 19:48:41 +00:00
fbarchard@google.com
7344440fb2 AffineRow for GCC.
BUG=62
TEST=planar_unittest
Review URL: https://webrtc-codereview.appspot.com/733004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@317 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-09 17:33:29 +00:00
fbarchard@google.com
2a95465795 HAVE_ARGBAFFINEROW_SSE2 macro
BUG=62
TEST=none
Review URL: https://webrtc-codereview.appspot.com/716006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@316 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-08 23:18:56 +00:00
fbarchard@google.com
92e51c7a69 ARGBAffineRow_C for non-SSE2 machine.
BUG=62
TEST=TestAffine unittest added to planar_test
Review URL: https://webrtc-codereview.appspot.com/731004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@315 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-08 21:29:34 +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
864f828a01 ARGBAffineRow_SSE2 function to copy pixels from a source with slope to a row of destination.
BUG=60
TEST=none
Review URL: https://webrtc-codereview.appspot.com/727004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@313 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-08 18:10:15 +00:00
fbarchard@google.com
4f10e97ff2 A compare utility that reports psnr, mse and hash values
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/709005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@312 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-27 17:59:09 +00:00
fbarchard@google.com
4f45c11aaf Allow use of the system libjpeg.
BUG=56
TEST=gentoo builds chromium with libyuv with system jpeg
Review URL: https://webrtc-codereview.appspot.com/699005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@311 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-24 18:32:05 +00:00
fbarchard@google.com
68f0d3df5e NV12ToARGB for linux appears to have a bug in the assembly so this disables the asm for posix. It still works on Windows. Unittests updated to show the amount of pixel difference.
BUG=55
TEST=out/Release/libyuv_unittest --gtest_filter=*
Review URL: https://webrtc-codereview.appspot.com/675008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@310 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-23 16:01:09 +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
c0d6dee4f3 Fix for ARGBColorTable x86 assembly. Sav
BUG=51
TEST=TestARGBColorTable
Review URL: https://webrtc-codereview.appspot.com/667011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@307 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-18 17:58:30 +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
4403be58ae remove space hash hash from unittests and add bpp enum
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/690004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@305 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-14 01:27:57 +00:00
fbarchard@google.com
8e01bfb420 Disable x86 color table optimization - fall back on C only
BUG=51
TESTED=warmify effect
Review URL: https://webrtc-codereview.appspot.com/673013

git-svn-id: http://libyuv.googlecode.com/svn/trunk@304 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-13 19:05:08 +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
05b5cf9610 move a macro and comment
BUG=49
TEST=untested
Review URL: https://webrtc-codereview.appspot.com/668012

git-svn-id: http://libyuv.googlecode.com/svn/trunk@302 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-13 01:16:28 +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
6398e1d4eb Port ARGBShade to Mac
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/679009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@299 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-07-11 19:12:32 +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
a537bbdc59 test some problematic scale factors
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/678006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@296 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-27 23:42:19 +00:00
fbarchard@google.com
f37f9a3542 Avoid lint warnings on header guards.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/668006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@295 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-27 23:40:23 +00:00
fbarchard@google.com
d51c342521 Rotate ARGB using a scale function that reads with step, combining to form 16 bytes at a time.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/674007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@294 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-26 23:46:25 +00:00
fbarchard@google.com
4d2cfd329a Change name of variable for mac because static cant be used so variables need to be unique.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/672006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@293 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-25 20:09:31 +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
8f439eac1d ARGBColorMatrixRow_SSSE3 use signed psraw instead of psrlw before doing pack
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/652009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@291 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-21 02:00:34 +00:00
fbarchard@google.com
d9eb63fc16 UNDER_ALLOCATED_HACK for scale that detects odd width and odd height were miscalculated and adjusts scaler for it.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/663007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@290 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-21 01:13:44 +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
794fe1236a alpha blend 4 pixel loop bug fix and blender C code match SSE for better testability and reference code for future optimized code.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/645008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@287 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-15 01:05:01 +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
4c416e8849 Fix for I444ToARGBRow_Unaligned_SSSE3, I422ToARGBRow_Unaligned_SSSE3, I411ToARGBRow_Unaligned_SSSE3 on Windows using movdqu instead of movdqa. break YUVTORGB into 2 macros - one to fetch pixels, another to do YUV conversion. Less duplicated source and lends itself to future YUV formats.
BUG=none
TEST=WebRtcVideoFrameTest.ConvertToARGBBufferStride
Review URL: https://webrtc-codereview.appspot.com/644004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@279 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-05 15:48:07 +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
b4a1182ffd Add LIBYUV_SVNREVISION macro and planar unittest fix/improvement
BUG=30
TESTED=libyuvTest.TestVersion
Review URL: https://webrtc-codereview.appspot.com/619007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@274 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-31 18:15:51 +00:00
fbarchard@google.com
7afffcc4d0 For cpu's with Neon, set arm as well. Make unittest allow testdata unaccessable but try proc/cpuinfo
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/610005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@273 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-30 18:30:03 +00:00
fbarchard@google.com
ab41581844 Change cpu id constants to hex to indicate they are flags. Reserve values for future flags. make unittest print in hex. Add environment variables to disable sse42 and avx.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/608006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@272 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-30 15:56:32 +00:00
fbarchard@google.com
4ae6b46ce1 Add SSE42 and AVX detect
BUG=none
TEST=libyuvTest.TestCpuHas
Review URL: https://webrtc-codereview.appspot.com/607006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@271 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-30 03:02:52 +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
9c02ba532f ARGBUnattenuateRow_C use same table as ARGBUnattenuateRow_SSE2. omit-frame-pointer for ScaleRowDown38_3_Int_NEON
BUG=35
TESTED=disable asm and run unittest on x86
Review URL: https://webrtc-codereview.appspot.com/585004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@268 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-17 22:49:31 +00:00
fbarchard@google.com
600587d1f0 Change scale 3/8 to use scratch registers for constants
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/576011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@267 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-15 05:41:56 +00:00
fbarchard@google.com
f2d84dddd2 scale ported to OSX for 32/64 bit. Required breaking up some functions into 2 or 3 asm inlines to set constants. Reworked storing of 6 bytes on all platforms for 3/4 scale by storing first 4 bytes and then storing last 4 bytes, overlapping 2, in order to stay within SSE2 registers.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/582004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@266 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-14 20:23:35 +00:00
fbarchard@google.com
68caaed871 Port Even ARGBScale to gcc
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/566010

git-svn-id: http://libyuv.googlecode.com/svn/trunk@264 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-09 22:52:23 +00:00
fbarchard@google.com
c7bd1dbea6 remove extra lea on gcc libyuv scale
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/562007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@263 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-09 21:55:02 +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
2e786a73ce Filter Rows in C fix
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/564005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@261 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-09 02:33:58 +00:00
fbarchard@google.com
8b14c5c4e4 Rewrite filtering for benefit of Mac as a single ASM block. Builds both 32 and 64 bit.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/577004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@260 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-09 00:41:13 +00:00
fbarchard@google.com
0b0e91792f libyuv::CpuId as function to reduce header dependencies
BUG=none
TEST=libyuv_unittest.exe  --gtest_catch_exceptions=0 --gtest_filter=*Cpu*
Review URL: https://webrtc-codereview.appspot.com/566007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@259 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-08 02:04:22 +00:00
fbarchard@google.com
d05ec087d9 expose __cpuid for gcc/visual c compatibility
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/574004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@258 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-07 22:36:39 +00:00
fbarchard@google.com
4e6c1fd42a scale_argb module for point and bilinear scaling of ARGB
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/549004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@256 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-03 06:17:44 +00:00
fbarchard@google.com
5bf29b59db p2align all loops, copy stride to local for scale, and copy last byte in bilinear more efficiently
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/547007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@255 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-02 00:10:16 +00:00
fbarchard@google.com
f906ae1360 scale to half size handle unaligned memory
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/543006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@254 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-01 00:30:51 +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
ebe9ae9b21 scale unrolled to 2 pixels for C code
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/520001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@249 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-24 06:01:18 +00:00
fbarchard@google.com
85ebc8e20b HashDjb2_SSE41 ported to gcc. gcc 4.5 required for pmulld instruction.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/506002

git-svn-id: http://libyuv.googlecode.com/svn/trunk@248 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-23 20:09:35 +00:00
fbarchard@google.com
c428470315 Scale fix for Neon
BUG=19
TEST=none
Review URL: https://webrtc-codereview.appspot.com/504002

git-svn-id: http://libyuv.googlecode.com/svn/trunk@247 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-22 15:00:50 +00:00
fbarchard@google.com
5e642d0ea7 Neon constants need address of not value
BUG=19
TEST=none
Review URL: https://webrtc-codereview.appspot.com/510002

git-svn-id: http://libyuv.googlecode.com/svn/trunk@246 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-21 01:04:46 +00:00
fbarchard@google.com
4660679ff3 fix missing asm and version
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/508003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@245 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-20 23:30:51 +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
96af870c8a Port Blend SSSE3 to gcc
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/491001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@239 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-06 18:22:27 +00:00
fbarchard@google.com
4d3bd8343b unaligned sse4 djb2 cleanup
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/486001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@238 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-06 00:27:09 +00:00