• Frank Barchard's avatar
    NV21ToRAW and NV12ToRAW functions added · 97b3990d
    Frank Barchard authored
    RAW is a big endian style RGB buffer with R first in memory, then G and B.
    Convert NV21 and NV12 to RAW format.
    
    Performance on SkylakeX for 720p with AVX2
    I420ToRAW_Opt (388 ms)
    H420ToRAW_Opt (371 ms)
    NV12ToRAW_Opt (341 ms)
    NV21ToRAW_Opt (339 ms)
    
    SSSE3
    I420ToRAW_Opt (507 ms)
    H420ToRAW_Opt (481 ms)
    NV12ToRAW_Opt (498 ms)
    NV21ToRAW_Opt (493 ms)
    
    C
    I420ToRAW_Opt (2287 ms)
    H420ToRAW_Opt (2246 ms)
    NV12ToRAW_Opt (2191 ms)
    NV21ToRAW_Opt (2204 ms)
    
    Performance on Pixel 2 for 720p
    out/Release/bin/run_libyuv_unittest -v -t 7200 --gtest_filter=*NV??ToR*Opt --libyuv_repeat=1000 --libyuv_width=1280 --libyuv_height=720
    LibYUVConvertTest.NV12ToRGB24_Opt (1739 ms)
    LibYUVConvertTest.NV21ToRGB24_Opt (1734 ms)
    LibYUVConvertTest.NV12ToRAW_Opt (1719 ms)
    LibYUVConvertTest.NV21ToRAW_Opt (1691 ms)
    LibYUVConvertTest.NV12ToRGB565_Opt (2152 ms)
    
    Bug: libyuv:778, b:117522975
    Test: add new NV21ToRAW and NV12ToRAW tests
    Change-Id: Ieabb68a2c6d8c26743e609c5696c81bb14fb253f
    Reviewed-on: https://chromium-review.googlesource.com/c/1272615
    Commit-Queue: Frank Barchard <fbarchard@chromium.org>
    Reviewed-by: 's avatarFrank Barchard <fbarchard@chromium.org>
    Reviewed-by: 's avatarMirko Bonadei <mbonadei@chromium.org>
    97b3990d
Name
Last commit
Last update
build_overrides Loading commit data...
docs Loading commit data...
include Loading commit data...
infra/config Loading commit data...
source Loading commit data...
tools_libyuv Loading commit data...
unit_test Loading commit data...
util Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
AUTHORS Loading commit data...
Android.bp Loading commit data...
Android.mk Loading commit data...
BUILD.gn Loading commit data...
CM_linux_packages.cmake Loading commit data...
CMakeLists.txt Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
OWNERS Loading commit data...
PATENTS Loading commit data...
PRESUBMIT.py Loading commit data...
README.chromium Loading commit data...
README.md Loading commit data...
cleanup_links.py Loading commit data...
codereview.settings Loading commit data...
download_vs_toolchain.py Loading commit data...
libyuv.gni Loading commit data...
linux.mk Loading commit data...
public.mk Loading commit data...
pylintrc Loading commit data...
winarm.mk Loading commit data...