Remove M420 and refactor NV12ToI420

M420 is a row biplanar variation of NV12 supported on Microsoft webcams.
The code was hardcoded to bt.601 and should be jpeg, but the format is
very old and rare.  Is a variation on NV12, so if someone needs it, it
can be re-implemented easily.

Bug: libyuv:858
Change-Id: I246167dba3c190cc76af741b8e91e58e68fde28f
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2212608
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
14 files changed
tree: 8291181d14ec46e7b9ef8357b000bb885db8c0db
  1. build_overrides/
  2. docs/
  3. include/
  4. source/
  5. tools_libyuv/
  6. unit_test/
  7. util/
  8. .clang-format
  9. .gitignore
  10. .gn
  11. .vpython
  12. Android.bp
  13. Android.mk
  14. AUTHORS
  15. BUILD.gn
  16. cleanup_links.py
  17. CM_linux_packages.cmake
  18. CMakeLists.txt
  19. codereview.settings
  20. DEPS
  21. download_vs_toolchain.py
  22. libyuv.gni
  23. LICENSE
  24. linux.mk
  25. OWNERS
  26. PATENTS
  27. PRESUBMIT.py
  28. public.mk
  29. pylintrc
  30. README.chromium
  31. README.md
  32. winarm.mk
README.md

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.