Frank Barchard bb3180ae80 Add I420ToAR30 10 bit RGB
For more complete support of AR30 format, add I420ToAR30 allowing
the new RGB 10 bit format to be used from standard 8 bit I420 format.

Bug: libyuv:751
Test: I420ToAR30 unittest added
Change-Id: Ia8b0857447408bd6adab485158ce5f38d6dc2faa
Reviewed-on: https://chromium-review.googlesource.com/823243
Reviewed-by: Weiyong Yao <braveyao@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2017-12-12 23:40:58 +00:00
build_overrides Remove deprecated macOS SDK overrides. 2017-07-20 22:26:41 +00:00
docs H010ToAR30 and H010ToARGB optimized YUV buffering 2017-12-08 18:55:03 +00:00
include Add I420ToAR30 10 bit RGB 2017-12-12 23:40:58 +00:00
infra/config Remove Rietveld CQ config. 2017-10-12 06:43:30 +00:00
source Add I420ToAR30 10 bit RGB 2017-12-12 23:40:58 +00:00
tools_libyuv kjellander -> phoglund in OWNERS 2017-10-09 11:40:28 +00:00
unit_test Add I420ToAR30 10 bit RGB 2017-12-12 23:40:58 +00:00
util Add comment in Makefile OpenMP for MacOS 2017-12-05 18:53:45 +00:00
.clang-format clang-format libyuv 2016-11-07 17:37:23 -08:00
.gitignore Rename convert to yuvconvert to avoid name clash with linux util 2017-04-06 18:58:42 +00:00
.gn Override compiler to c++11 2017-09-15 21:45:47 +00:00
.vpython Add psutil to vpython dependencies (used on builder bots) 2017-09-07 07:21:25 +00:00
all.gyp Android support 2013-11-21 19:57:10 +00:00
Android.bp Use -Werror in external/libyuv/files 2017-11-01 17:30:10 +00:00
Android.mk Add MSA optimized HammingDistance and SumSquareError functions 2017-09-05 21:32:33 +00:00
AUTHORS Adding AUTHORS file to libyuv 2011-11-01 20:44:21 +00:00
BUILD.gn Using all_dependent_configs to pass libyuv_config around. 2017-12-12 13:39:42 +00:00
cleanup_links.py Use DEPS for all dependencies + add PRESUBMIT.py 2017-02-03 11:36:53 +00:00
CM_linux_packages.cmake Add installer builds to cmake for linux 2017-01-26 23:05:17 +00:00
CMakeLists.txt Rename convert to yuvconvert to avoid name clash with linux util 2017-04-06 18:58:42 +00:00
codereview.settings Make Gerrit the default for libyuv code reviews 2017-01-24 18:34:48 +00:00
DEPS Roll chromium_revision 9e319197e5..ff3b31782d (502732:503850) 2017-09-22 21:50:47 +00: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 Use DEPS for all dependencies + add PRESUBMIT.py 2017-02-03 11:36:53 +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 Fix data races in libyuv::TestCpuFlag(). 2017-05-24 02:09:03 +00:00
libyuv.gni Add MIPS SIMD Arch (MSA) optimized MirrorRow function 2016-09-22 16:12:22 -07:00
libyuv.gyp Rename mips source files to dspr2. 2017-01-27 23:11:43 +00:00
libyuv.gypi Add MSA optimized HammingDistance and SumSquareError functions 2017-09-05 21:32:33 +00:00
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 Re-enable x86 assembly without requiring -msse2 2017-11-09 00:51:06 +00:00
OWNERS Remove kjellander@ and torbjorng@ from OWNERS. 2017-09-26 18:48:09 +00:00
PATENTS LibYuv: Adding PATENT and LICENSE files 2011-10-25 16:15:49 +00:00
PRESUBMIT.py Use DEPS for all dependencies + add PRESUBMIT.py 2017-02-03 11:36:53 +00:00
public.mk Android.mk moved into libyuv to central support 2012-09-19 07:27:17 +00:00
pylintrc Use DEPS for all dependencies + add PRESUBMIT.py 2017-02-03 11:36:53 +00:00
README.chromium H010ToAR30 and H010ToARGB optimized YUV buffering 2017-12-08 18:55:03 +00:00
README.md Docs: Fix broken links from README.md 2016-03-15 17:38:14 -07: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.