Frank Barchard a7c87e19f0 add Intel Code Analyst markers
add macros to enable/disable code analyst around blocks of code.

Normally these macros should not be used, but if performance
details are wanted for intel code, enable them around the code
and then run via the iaca tool, available on the intel website.

BUG=libyuv:670
TEST=~/iaca-lin64/bin/iaca.sh -64 out/Release/libyuv_unittest
R=wangcheng@google.com

Review-Url: https://codereview.chromium.org/2626193002 .
2017-01-13 15:50:24 -08:00
build_overrides cherry picking changes needed for deps roll. 2016-10-25 15:54:59 -07:00
chromium Enable building with Native Client. 2016-04-12 06:40:04 +02:00
docs document GN for ios 2016-10-25 17:13:59 -07:00
include add Intel Code Analyst markers 2017-01-13 15:50:24 -08:00
source add Intel Code Analyst markers 2017-01-13 15:50:24 -08:00
third_party/gflags Roll chromium_revision 1d144ca7f86..2a818f5413 (375480:395512) 2016-05-24 11:41:04 +02:00
tools landmine to clobber old GYP build artifacts to enable moving to GN. 2016-10-18 08:56:41 +02:00
unit_test add Intel Code Analyst markers 2017-01-13 15:50:24 -08:00
util Libyuv MIPS DSPR2 optimizations. 2017-01-11 12:19:13 -08:00
.clang-format clang-format libyuv 2016-11-07 17:37:23 -08:00
.gitignore cherry picking changes needed for deps roll. 2016-10-25 15:54:59 -07:00
.gn Add GN files that need exec_script to list for win64 clang-cl 2016-10-12 12:46:22 -07:00
all.gyp Android support 2013-11-21 19:57:10 +00:00
Android.mk Add MSA optimized TransposeWx8_MSA and TransposeUVWx8_MSA functions 2016-12-15 10:06:01 +05:30
AUTHORS Adding AUTHORS file to libyuv 2011-11-01 20:44:21 +00:00
BUILD.gn Add MSA optimized TransposeWx8_MSA and TransposeUVWx8_MSA functions 2016-12-15 10:06:01 +05:30
CMakeLists.txt Add MSA optimized TransposeWx8_MSA and TransposeUVWx8_MSA functions 2016-12-15 10:06:01 +05:30
codereview.settings Remove references to svn version control. 2016-09-14 14:54:47 -07:00
DEPS Add landmine support 2016-10-17 15:37:47 +02:00
download_vs_toolchain.py Roll chromium_revision 260824:262938 + fix binutils. Since it's not possible to have platform-specific hooks executing, binutils must be downloaded for all platforms in order for the download.py hook to execute properly on non-unix platforms. 2014-04-11 23:40:41 +00:00
gyp_libyuv Skip running GYP if GYP_CHROMIUM_NO_ACTION is set in environment 2016-04-08 14:01:29 +02:00
gyp_libyuv.py Minor fixes to gyp_libyuv.py 2014-03-28 19:38:05 +00:00
libyuv_nacl.gyp NaCl/GYP: remove references to prep_toolchain from libyuv. prep_toolchain is now a no-op. 2015-04-22 17:42:21 +00:00
libyuv_test.gyp modified libyuv.gyp so that it no longer depends on libjpeg.gyp, which does not exist anymore. 2016-12-19 11:57:49 -08:00
libyuv.gni Add MIPS SIMD Arch (MSA) optimized MirrorRow function 2016-09-22 16:12:22 -07:00
libyuv.gyp modified libyuv.gyp so that it no longer depends on libjpeg.gyp, which does not exist anymore. 2016-12-19 11:57:49 -08:00
libyuv.gypi Add MSA optimized TransposeWx8_MSA and TransposeUVWx8_MSA functions 2016-12-15 10:06:01 +05:30
LICENSE Update Copyright notice to follow new chromium conventions. 2012-08-08 19:04:24 +00:00
LICENSE_THIRD_PARTY README.chromium license field for WebView and LICENSE_THIRD_PARTY to show files with special licenses. 2013-04-24 00:12:28 +00:00
linux.mk Remove -lc++ link and document -fno-exceptions 2016-07-06 16:02:17 -07:00
OWNERS Add new OWNERS and remove drover.properties. 2016-02-16 19:53:11 +01:00
PATENTS LibYuv: Adding PATENT and LICENSE files 2011-10-25 16:15:49 +00:00
PRESUBMIT.py PRESUBMIT: Remove GYP trybots 2016-10-18 07:54:36 +02:00
public.mk Android.mk moved into libyuv to central support 2012-09-19 07:27:17 +00:00
README.chromium add Intel Code Analyst markers 2017-01-13 15:50:24 -08:00
README.md Docs: Fix broken links from README.md 2016-03-15 17:38:14 -07:00
setup_links.py cherry picking changes needed for deps roll. 2016-10-25 15:54:59 -07:00
sync_chromium.py Enable building with Native Client. 2016-04-12 06:40:04 +02:00
winarm.mk Adds files and functions for rotate any, but does not hook them up to the caller. 2015-07-27 10:32:08 -07:00

libyuv is an open source project that includes YUV scaling and conversion functionality.

  • Scale YUV to prepare content for compression, with point, bilinear or box filter.
  • Convert to YUV from webcam formats.
  • Convert from YUV to formats for rendering/effects.
  • Rotate by 90/180/270 degrees to adjust for mobile devices in portrait mode.
  • Optimized for SSE2/SSSE3/AVX2 on x86/x64.
  • Optimized for Neon on Arm.
  • Optimized for DSP R2 on Mips.

Development

See [Getting started] 1 for instructions on how to get started developing.

You can also browse the [docs directory] 2 for more documentation.