1. 10 Oct, 2018 1 commit
    • 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
  2. 08 Oct, 2018 1 commit
  3. 05 Oct, 2018 1 commit
  4. 03 Oct, 2018 1 commit
  5. 04 Sep, 2018 2 commits
  6. 17 Aug, 2018 1 commit
  7. 16 Aug, 2018 1 commit
  8. 14 Aug, 2018 2 commits
  9. 13 Aug, 2018 1 commit
  10. 11 Aug, 2018 1 commit
  11. 10 Aug, 2018 6 commits
  12. 09 Aug, 2018 1 commit
  13. 08 Aug, 2018 1 commit
  14. 06 Aug, 2018 1 commit
  15. 03 Aug, 2018 1 commit
  16. 02 Aug, 2018 1 commit
  17. 31 Jul, 2018 2 commits
  18. 20 Jul, 2018 1 commit
  19. 09 Jul, 2018 1 commit
  20. 04 Jul, 2018 1 commit
    • Frank Barchard's avatar
      msa use void * for loads · 9ac881f4
      Frank Barchard authored
      the built in __msa_ld_b() expects a void * without const.
      Cast pointers to void * to avoid build warning.
      
      TBR=johannkoenig@google.com
      Bug: libyuv:805
      Change-Id: Iabc4820ecf4a3a7dcb0063e67ce276ae2a4f0501
      Tested: gn gen out/Release "--args=is_debug=false target_os=\"android\" target_cpu=\"mips64el\" mips_arch_variant=\"r6\" mips_use_msa=true is_component_build=true is_clang=true"
      ninja -v -C out/Release libyuv_unittest
      Reviewed-on: https://chromium-review.googlesource.com/1125400
      Commit-Queue: Frank Barchard <fbarchard@chromium.org>
      Reviewed-by: 's avatarFrank Barchard <fbarchard@chromium.org>
      9ac881f4
  21. 29 Jun, 2018 1 commit
    • Johann's avatar
      xcode: disable avx512 support · 8b458d5b
      Johann authored
      xcode reports clang version 9. It does not appear to support inline
      assembly using avx512 instructions.
      
      Tested with cmake libyuv on Mac. Fails without this patch.
      
      BUG=libyuv:789
      8b458d5b
  22. 26 Jun, 2018 1 commit
  23. 20 Jun, 2018 2 commits
  24. 16 Jun, 2018 1 commit
  25. 15 Jun, 2018 1 commit
  26. 12 Jun, 2018 1 commit
  27. 01 Jun, 2018 1 commit
  28. 11 May, 2018 1 commit
  29. 19 Apr, 2018 1 commit
    • Robert Bares's avatar
      Allow negative height when ConvertToI420/ARGB is called with NV12/NV21 · a8aa921c
      Robert Bares authored
      ConvertToI420 and ConvertToARGB support the use of a negative height
      parameter to flip the image vertically. When converting from NV12 or
      NV21 this parameter was misinterpreted, resulting in invalid output.
      This CL introduces the use of abs_src_height to correctly calculate
      the location of the source UV plane.
      
      The sign of crop_height is not used, to reduce confusion ConvertToI420
      and ConvertToARGB no longer accept negative crop height.
      
      Unit tests for Android420ToI420 are updated to fix miscalculation of
      src_stride_uv, fix incorrect pixel strides, and to test inversion.
      New unit tests are included to test inversion for ConvertToARGB,
      ConvertToI420, Android420ToARGB, and Android420ToABGR.
      For consistency the test NV12Crop is renamed ConvertToI420_NV12_Crop.
      
      Bug: libyuv:446
      Test: out/Release/libyuv_unittest --gtest_filter=*.ConvertTo*:*.Android420To*
      Change-Id: Idc98e62671cb30272cfa7e24fafbc8b73712f7c6
      Reviewed-on: https://chromium-review.googlesource.com/994074
      Commit-Queue: Frank Barchard <fbarchard@chromium.org>
      Reviewed-by: 's avatarFrank Barchard <fbarchard@chromium.org>
      a8aa921c
  30. 18 Apr, 2018 1 commit
  31. 13 Apr, 2018 1 commit