113 Commits

Author SHA1 Message Date
yang.zhang@arm.com
5f609856de Add ScaleARGBFilterCols_NEON for ARM32/64
ARM32/64 NEON versions of ScaleARGBFilterCols_NEON are implemented.

BUG=319
TESTED=libyuvTest.* on ARM32/64 with Android
R=fbarchard@google.com

Change-Id: Ifea62bc25d846bf16cb51d13b408de7bf58dccd4

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1361 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-04-07 03:45:29 +00:00
fbarchard@google.com
8f0b32773c ARGBToUV AVX2 functions hooked up.
BUG=none
TESTED=RGB565ToI420
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1359 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-04-07 00:10:52 +00:00
yang.zhang@arm.com
f23d6222ac Add ScaleARGBCols_NEON for ARM32/64
ARM32/64 NEON versions of ScaleARGBCols_NEON are implemented.

BUG=319
TESTED=libyuvTest.* on ARM32/64 with Android
R=fbarchard@google.com

Change-Id: Id9ad97f7aa5d8a34cd55ace9e648cb6ff028efd9

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1351 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-03-31 03:03:05 +00:00
yang.zhang@arm.com
4d387fc619 Add ScaleARGBRowDown2Linear_NEON for ARM32/64
ARM32/64 NEON versions of ScaleARGBRowDown2Linear_NEON are implemented.

BUG=319
TESTED=libyuvTest.ARGBScale* on ARM32/64 with Android
R=fbarchard@google.com

Change-Id: Ife602c81b51aa36e0d56b9d628f278a24eed96f6

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1336 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-03-17 02:23:59 +00:00
fbarchard@google.com
1e4a14f410 scale avoid math overflow in fixed point for large images
BUG=410
TESTED=set LIBYUV_WIDTH=65536 out\release\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=libyuvTest.ScaleTo320x240_None
R=harryjin@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1320 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-03-10 22:30:47 +00:00
fbarchard@google.com
fd8054791c build fixe for InterpolateRow_MIPS_DSPR2
BUG=398
TESTED=untested
R=harryjin@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1268 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-02-07 01:01:30 +00:00
fbarchard@google.com
9ed836b154 The 'Any' versions of functions can handle any width now, so remove the check from the calling code. This has 2 advantages - less code, and less overhead in calling function when any function is NOT used. Downside is more code for case where any is used.
BUG=373
TESTED=libyuv_unittest still passes
R=harryjin@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1143 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-10-24 23:29:31 +00:00
fbarchard@google.com
f713691a6f Change elif to endif and if to allow AVX2 as well as SSE2 in future changes instead of one or the other.
BUG=none
TESTED=try bots
R=harryjin@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1122 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-10-16 20:47:22 +00:00
fbarchard@google.com
ca308327d2 Remove unaligned functions, since most function support unaligned memory now. This reduces complexity and improves performance for unaligned cases because C code can be avoided, and overhead is less. Downside is old cpus (core2 and earlier) will be slower for aligned memory case. Except mips, which has alignment requirement, but remove unaligned variant.
BUG=365
TESTED=unittest builds and passes locally
R=harryjin@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1113 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-10-07 00:59:31 +00:00
fbarchard@google.com
044f914c29 Change scale to unaligned movdqu.
BUG=365
TESTED=scale unittests
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1101 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-10-01 01:16:04 +00:00
fbarchard@google.com
efc5d9b930 Warning fix for implicite cast in scaling from int64 to int.
BUG=none
TESTED=local visual c build
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@985 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-18 22:23:15 +00:00
fbarchard@google.com
398de7d0be ARGBScale down bilinear clip to edge of image to avoid overread.
BUG=317
TESTED=drmemory out\debug\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=*ARGBScale*
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@984 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-18 21:39:42 +00:00
fbarchard@google.com
0283648407 ARGB Scale ported to C
BUG=303
TESTED=cl /c /TC /Iinclude source/scale_argb.cc
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@972 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-15 02:25:15 +00:00
fbarchard@google.com
5aa39953cc Port scale to C moving variable definitions to top of functions.
BUG=303
TESTED=gyp builds still build/pass.
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@962 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-11 04:59:01 +00:00
fbarchard@google.com
6700a27c97 Scale mirror bug fix.
BUG=304
TESTED=try
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@959 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-09 20:21:24 +00:00
fbarchard@google.com
1f923e3ea6 Declare parameters that are unused, since C does not let you give a type without name.
BUG=303
TEST=compile -x c

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@954 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-07 05:42:27 +00:00
fbarchard@google.com
db73518b19 use LIBYUV_BOOL instead of bool
BUG=303
TESTED=try
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@953 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-07 03:59:31 +00:00
fbarchard@google.com
a1f5254a95 Switch to c style casts for all source and includes.
BUG=303
TESTED=try
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@952 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-07 03:03:00 +00:00
fbarchard@google.com
a1b92bd744 Warning fixes for implicite casts that vs2012 complains about with higher warning levels
BUG=302
TESTED=hammer build
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@948 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-03 02:38:49 +00:00
fbarchard@google.com
c23b817eab 64 bit clip for argb scale down
BUG=302
TEST=out\release\libyuv_unittest --gtest_filter=*ARGBScaleDownClipBy3by4*
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@947 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-03 02:13:35 +00:00
fbarchard@google.com
909c76e317 point sample 64 bit column filter
BUG=302
TESTED=ARGBScaleClipTo320x240_None etc
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@946 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-03 02:03:07 +00:00
fbarchard@google.com
667de22fd3 clip by adjusting pointer
BUG=302
TEST=ARGBScaleDownClipBy2_None
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@945 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-03 01:43:21 +00:00
fbarchard@google.com
6dc80ab585 gargantuan width support on ARGBScale
BUG=302
TEST=libyuv ARGBScale tests with LIBYUV_WIDTH=90000
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@944 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-03 01:15:31 +00:00
fbarchard@google.com
6b6eb8cd36 lint fixes
BUG=none
TEST=LINT
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@929 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-27 02:09:58 +00:00
fbarchard@google.com
e86abbd244 Use malloc for row buffers in scalers removing size limitations.
BUG=296
TESTED=libyuvTest.Scale*
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@925 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-27 01:11:26 +00:00
fbarchard@google.com
dd2fca5f9c scale down 4
BUG=none
TEST=none
R=ryanpetrie@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@907 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-09 21:07:37 +00:00
fbarchard@google.com
5316f38375 clamp pointer to max row to avoid stepping off source image.
BUG=292
TESTED=BackgroundOverlayKernelTest.ProcessVideo_ForegroundBackground

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@905 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-08 21:13:09 +00:00
fbarchard@google.com
3f5a860be8 Swap x and dx to get slope right.
BUG=none
TEST=ARGBScaleClipFrom320x240_Bilinear
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@898 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-06 19:49:56 +00:00
fbarchard@google.com
980150f7f1 Compute slope considering filtering, mirror.
BUG=261
TEST=valgrind
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@896 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-06 18:13:46 +00:00
fbarchard@google.com
ec0cc5bb2d Function to switch filters to a simplier one based on scale factors.
BUG=none
TEST=untested
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@894 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-05 00:28:12 +00:00
fbarchard@google.com
dbe4814361 Move scale row functions to scale_win etc
BUG=none
TEST=untested
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@879 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-28 01:16:15 +00:00
fbarchard@google.com
e8c74b61d3 Faster point samplers using row functions and specialized 2x upsampler.
BUG=none
TEST=none
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@854 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-14 02:03:32 +00:00
fbarchard@google.com
a2311691c6 YUV scale up
BUG=none
TEST=libyuvTest.ScaleTo1280x720_Linear
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@853 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-13 21:16:17 +00:00
fbarchard@google.com
788f757016 Linear interpolation.
BUG=none
TEST=*Linear*
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@848 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-11 18:53:19 +00:00
fbarchard@google.com
67a0987dd9 Scale Up2 ported to NaCL.
BUG=none
TEST=none
R=nfullagar@chromium.org, nfullagar@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@846 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-07 20:35:17 +00:00
fbarchard@google.com
1428b37c2b Scale up by 2 unfiltered
BUG=none
TESTED=manual test with width/height set to half.
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@845 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-07 19:26:31 +00:00
fbarchard@google.com
f1b8e2a575 4 pixel sse2 point scaler for better use of SSE2 that can hold 4 coordinates.
BUG=none
TEST=*ARGBScaleFrom*None
R=tpsiaki@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@839 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-04 19:05:33 +00:00
fbarchard@google.com
6368c10c9c Add __declspec(safebuffers) to functions with arrays on stack that have explicit checks to avoid a redundent compiler stack check.
BUG=none
TEST=unitests pass
R=ryanpetrie@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@837 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-01 21:27:31 +00:00
fbarchard@google.com
1b2ff39cc8 Add space around each nacl macro for clang compatibility with -Wreserved-user-defined-literal
BUG=280
TESTED=try bots
R=nfullagar@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@825 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-10-24 20:12:36 +00:00
fbarchard@google.com
092099507e Sobel using max to get abs for SSE2
BUG=none
TEST=none
R=ryanpetrie@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@824 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-10-23 00:51:52 +00:00
fbarchard@google.com
2154de414c Port InterpolateRows to AVX2
BUG=264
TEST=ARGBInterpolate*
R=changjun.yang@intel.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@777 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-03 07:18:21 +00:00
fbarchard@google.com
5fcf38cfc8 Scale a plane. Before eating an airplane, remove the scales, then fry and serve with tartar sauce.
BUG=260
TEST=try serving with lemon.
R=wuwang@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@775 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-28 01:10:48 +00:00
fbarchard@google.com
c105bae792 Move header and rename function to more generic scaleplane
BUG=260
TEST=unittests
R=wuwang@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@774 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-28 00:31:08 +00:00
fbarchard@google.com
49bbc1b4f3 Move vertical scaler to common code.
BUG=260
TEST=unittests build/run
R=ryanpetrie@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@773 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-27 16:32:22 +00:00
fbarchard@google.com
d1f2ef310d Scale specialized for 50/50 vertically and check x is integer
BUG=260
TESTED=manual test with LIBYUV_HEIGHT=1440
R=wuwang@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@772 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-26 23:52:13 +00:00
fbarchard@google.com
3c11e185a8 Scale vertically only
BUG=260
TESTED=manually tested with LIBYUV_HEIGHT=270
R=dingkai@google.com, ryanpetrie@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@770 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-26 22:24:08 +00:00
fbarchard@google.com
fc34ac5bb2 Fix for ARGBScale nacl validator
BUG=253
TESTED=ncval.exe newlib/Release/nacltest_x86_64.nexe
R=nfullagar@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@767 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-19 22:29:33 +00:00
nfullagar@google.com
f6e1139921 Port scale_argb functions to Native Client.
BUG=253
TEST=libyuv_unittest,ncval,trybots
R=fbarchard@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@766 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-19 20:44:14 +00:00
fbarchard@google.com
d593876b16 Disable assembly for rotate and scale
BUG=253
TEST=validator
R=nfullagar@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@760 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 18:45:16 +00:00
fbarchard@google.com
d459f382fd Align branch targets for NaCL validator.
BUG=253
TEST=validator
R=johannkoenig@google.com, ryanpetrie@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@758 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 17:58:33 +00:00