Clone this repo:
  1. ec9a878 Disable NV12ToARGB_SVE2 which fails the 'any' test by Frank Barchard · 7 hours ago main
  2. c1fe566 [AArch64] Use full vectors in ARGB4444To{Y,UV}Row_NEON by George Steed · 3 months ago
  3. 5bac99f [AArch64] Rework data loading in ScaleARGBFilterCols_NEON by George Steed · 8 weeks ago
  4. a425b55 [AArch64] Use full vectors in ARGB1555To{Y,UV}Row_NEON by George Steed · 3 months ago
  5. 3b3c7f0 Change inline to __asm__ for C by Frank Barchard · 34 hours 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.