Frank Barchard 413a8d8041 Add AYUVToNV12 and NV21ToNV12
BUG=libyuv:832
TESTED=out/Release/libyuv_unittest --gtest_filter=*ToNV12* --libyuv_width=1280 --libyuv_height=720 --libyuv_repeat=1000 --libyuv_flags=-1 --libyuv_cpu_info=-1

R=rrwinterton@gmail.com

Change-Id: Id03b4613211fb6a6e163d10daa7c692fe31e36d8
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1560080
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2019-04-12 17:48:45 +00:00
build_overrides Make libyuv use the hermetic xcode toolchain. 2018-03-20 08:28:33 +00:00
docs Documentation update for GYP and envionment variables 2018-09-04 19:45:41 +00:00
include Add AYUVToNV12 and NV21ToNV12 2019-04-12 17:48:45 +00:00
source Add AYUVToNV12 and NV21ToNV12 2019-04-12 17:48:45 +00:00
tools_libyuv roll_deps: Add TBR so autoroller can land changes 2018-10-30 14:53:25 +00:00
unit_test Add AYUVToNV12 and NV21ToNV12 2019-04-12 17:48:45 +00:00
util Add AYUVToNV12 and NV21ToNV12 2019-04-12 17:48: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 Pin ios_deployment_target = "10.0" to unblock DEPS roll 2018-11-01 10:07:43 +00:00
.vpython [vpython]: Add pypiwin32 2018-07-31 19:31:36 +00:00
Android.bp MMI ifdef guards and add source to various build files. 2018-08-03 18:37:23 +00:00
Android.mk MMI ifdef guards and add source to various build files. 2018-08-03 18:37:23 +00:00
AUTHORS Revert "Allow negative height when ConvertToI420/ARGB is called with NV12/NV21" 2018-06-01 00:19:40 +00:00
BUILD.gn libyuv:loongson optimize compare/row/scale/rotate files with mmi. 2018-07-20 22:53:04 +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 Make the gflags library optional in the CMake build 2018-03-31 00:40:15 +00:00
codereview.settings Make Gerrit the default for libyuv code reviews 2017-01-24 18:34:48 +00:00
DEPS Migrate android SDK path to third_party/android_sdk/public for libyuv 2019-04-01 18:30:35 +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
libyuv.gni libyuv:loongson optimize compare/row/scale/rotate files with mmi. 2018-07-20 22:53:04 +00:00
LICENSE Update Copyright notice to follow new chromium conventions. 2012-08-08 19:04:24 +00:00
linux.mk MMI ifdef guards and add source to various build files. 2018-08-03 18:37:23 +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 use unix line endings 2018-06-20 23:19:59 +00:00
pylintrc Use DEPS for all dependencies + add PRESUBMIT.py 2017-02-03 11:36:53 +00:00
README.chromium Add AYUVToNV12 and NV21ToNV12 2019-04-12 17:48:45 +00:00
README.md README: fix doc links 2018-08-13 18:28:55 +00: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 for compression.
  • Convert to RGB formats for rendering/effects.
  • Rotate by 90/180/270 degrees to adjust for mobile devices in portrait mode.
  • Optimized for SSSE3/AVX2 on x86/x64.
  • Optimized for Neon on Arm.
  • Optimized for MSA on Mips.

Development

See Getting started for instructions on how to get started developing.

You can also browse the docs directory for more documentation.