fbarchard@google.com c4e032c543 change Y multiplier and bias to compensate for 257/256 which makes YToARGB exactly match float math.
Histogram Before
hist            -3      -2      -1      0       1       2       3
red             0       0       1809408 13140736        1827072 0       0
green           0       0       1679912 13471329        1625975 0       0
blue            168448  994816  1876480 10655488        1893376 1006336 182272
Histogram After
hist            -3      -2      -1      0       1       2       3
red             0       0       558848  15632128        586240  0       0
green           0       0       209907  16350588        216721  0       0
blue            14848   642816  1989376 11363328        2053120 695040  18688
BUG=394
TESTED=more stringent luma tests
R=brucedawson@google.com

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

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1259 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-02-04 19:45:26 +00:00
..
compare_common.cc compare_common visual c port 2014-01-09 19:11:09 +00:00
compare_neon64.cc change vector range notation to a list of registers for clang compatibility. break compare into 2 neon files for consistency with other neon64 files. 2014-09-15 23:39:43 +00:00
compare_neon.cc change vector range notation to a list of registers for clang compatibility. break compare into 2 neon files for consistency with other neon64 files. 2014-09-15 23:39:43 +00:00
compare_posix.cc Move sub before branch for loops. 2014-11-20 21:14:27 +00:00
compare_win.cc Remove loop alignment for benefit of modern cpus that dont require alignment. 2014-11-24 21:26:22 +00:00
compare.cc ARGBDetect do 2 pixels at a time for improved performance. 2014-11-05 23:23:17 +00:00
convert_argb.cc YToARGB AVX2 port from SSE2 2015-02-03 01:35:11 +00:00
convert_from_argb.cc Add J422 support which is 2x1 subsampling with jpeg color space. 2015-01-14 19:16:01 +00:00
convert_from.cc 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. 2014-10-24 23:29:31 +00:00
convert_jpeg.cc libyuv::MJPGToI420() and libyuv::MJPGToARGB() return failure if callback to JPeg fails. 2014-01-28 03:08:59 +00:00
convert_to_argb.cc J420ToARGB jpeg variation of YUV color space to ARGB. 2014-12-29 19:17:53 +00:00
convert_to_i420.cc Conversion functions ported to C89 / Visual C. 2014-01-13 18:32:37 +00:00
convert.cc Move sub before branch for loops. 2014-11-20 21:14:27 +00:00
cpu_id.cc Change elif to endif and if to allow AVX2 as well as SSE2 in future changes instead of one or the other. 2014-10-16 20:47:22 +00:00
format_conversion.cc 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. 2014-10-24 23:29:31 +00:00
mjpeg_decoder.cc fix a lint warning about a space needed after && in ifdef 2014-08-18 23:22:20 +00:00
mjpeg_validate.cc Port a few functions to C 2014-01-06 22:37:28 +00:00
planar_functions.cc Change rectangle low level functions to use more conventional row functions including 'any' variations. Previously the yuv function SetPlane stored 32 bit values. Now a more conventional memset() style function is used for YUV that stores bytes. On Haswell a rep stosb is used for YUV. Overall benefit of this CL is improved performance for 'any' width, and simpler row assembly instead of full image assembly. Previously ARGBRect used a low level function that supported a rectangle in assembly. Now it uses a row function, and relies on row coalesce to combine into a single low level call. 2015-01-12 03:58:24 +00:00
rotate_argb.cc ARGBMirror use SSE2 pshufd instruction instead of SSSE3 pshufb. 2014-11-21 19:25:14 +00:00
rotate_mips.cc only enable mips assembly for old 32 bit abi. new 32 bit abi and 64 bit bit able remove t4 to t7 and add a4 to a7 2014-06-24 23:40:52 +00:00
rotate_neon64.cc Copy width to 64 bit register to work around clang 3.4 warning 2014-10-13 23:26:17 +00:00
rotate_neon.cc Change ifdefs for arm 32 and 64 bit so there will only be 32 bit in legacy mode. 2014-09-15 22:05:01 +00:00
rotate.cc Move sub before branch for loops. 2014-11-20 21:14:27 +00:00
row_any.cc YToARGB AVX2 port from SSE2 2015-02-03 01:35:11 +00:00
row_common.cc change Y multiplier and bias to compensate for 257/256 which makes YToARGB exactly match float math. 2015-02-04 19:45:26 +00:00
row_mips.cc 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. 2014-10-07 00:59:31 +00:00
row_neon64.cc Change rectangle low level functions to use more conventional row functions including 'any' variations. Previously the yuv function SetPlane stored 32 bit values. Now a more conventional memset() style function is used for YUV that stores bytes. On Haswell a rep stosb is used for YUV. Overall benefit of this CL is improved performance for 'any' width, and simpler row assembly instead of full image assembly. Previously ARGBRect used a low level function that supported a rectangle in assembly. Now it uses a row function, and relies on row coalesce to combine into a single low level call. 2015-01-12 03:58:24 +00:00
row_neon.cc Change rectangle low level functions to use more conventional row functions including 'any' variations. Previously the yuv function SetPlane stored 32 bit values. Now a more conventional memset() style function is used for YUV that stores bytes. On Haswell a rep stosb is used for YUV. Overall benefit of this CL is improved performance for 'any' width, and simpler row assembly instead of full image assembly. Previously ARGBRect used a low level function that supported a rectangle in assembly. Now it uses a row function, and relies on row coalesce to combine into a single low level call. 2015-01-12 03:58:24 +00:00
row_posix.cc change Y multiplier and bias to compensate for 257/256 which makes YToARGB exactly match float math. 2015-02-04 19:45:26 +00:00
row_win.cc change Y multiplier and bias to compensate for 257/256 which makes YToARGB exactly match float math. 2015-02-04 19:45:26 +00:00
row_x86.asm yasm ALIGN uppercase 2013-12-03 00:51:14 +00:00
scale_argb.cc 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. 2014-10-24 23:29:31 +00:00
scale_common.cc 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. 2014-10-24 23:29:31 +00:00
scale_mips.cc only enable mips assembly for old 32 bit abi. new 32 bit abi and 64 bit bit able remove t4 to t7 and add a4 to a7 2014-06-24 23:40:52 +00:00
scale_neon64.cc clear aarch64 related macro and fix bugs 2014-10-09 02:00:40 +00:00
scale_neon.cc Change ifdefs for arm 32 and 64 bit so there will only be 32 bit in legacy mode. 2014-09-15 22:05:01 +00:00
scale_posix.cc Move sub before branch for loops. 2014-11-20 21:14:27 +00:00
scale_win.cc Remove loop alignment for benefit of modern cpus that dont require alignment. 2014-11-24 21:26:22 +00:00
scale.cc 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. 2014-10-24 23:29:31 +00:00
video_common.cc Port a few functions to C 2014-01-06 22:37:28 +00:00
x86inc.asm Do not allows the other elfs to run on the chimney stack 2012-12-13 18:44:41 +00:00