Clone this repo:
  1. 95eed2b [AArch64] Add Neon dot-product implementation of HammingDistance by George Steed · 2 days ago main
  2. 6433029 [AArch64] Unroll SumSquareError_NEON_DotProd by George Steed · 21 hours ago
  3. f5882ed [AArch64] getauxval(AT_HWCAP{,2}) feature detection, attempt #2 by George Steed · 6 weeks ago
  4. 356232b [AArch64] Replace UQXTN{,2} with UZP2 in Convert16To8Row_NEON by George Steed · 6 weeks ago
  5. 4f52235 [AArch64] Replace SHRN{,2} pair by UZP2 in DivideRow_16_NEON by George Steed · 6 weeks ago

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.
  • Optimized for RVV on RISC-V.

Development

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

You can also browse the docs directory for more documentation.