George Steed 237f39cb8c [AArch64] Add SME implementation of I444ToARGBRow
This is based on an unrolled version of the existing SVE2 code. The
implementation in this case is a pure streaming-SVE (SSVE)
implementation based on the existing SVE2 implementation, we do not use
the ZA tile.

Change-Id: I83d8e58aafd814125b3446fb1c9ec4a5fb56fe3e
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/5913882
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Justin Green <greenjustin@google.com>
2024-10-29 18:10:23 +00:00
build_overrides
docs
include [AArch64] Add SME implementation of I444ToARGBRow 2024-10-29 18:10:23 +00:00
infra/config
riscv_script
source [AArch64] Add SME implementation of I444ToARGBRow 2024-10-29 18:10:23 +00:00
tools_libyuv
unit_test
util
.clang-format
.gitignore
.gn
.vpython
.vpython3
Android.bp
Android.mk
AUTHORS
BUILD.gn
CM_linux_packages.cmake
CMakeLists.txt
codereview.settings
DEPS
DIR_METADATA
download_vs_toolchain.py
libyuv.gni
libyuv.gyp
libyuv.gypi
LICENSE
linux.mk
OWNERS
PATENTS
PRESUBMIT.py
public.mk
pylintrc
README.chromium
README.md
winarm.mk

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/SVE2/SME 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.