Frank Barchard 196e2e72a3 Revert "Allow negative height when ConvertToI420/ARGB is called with NV12/NV21"
This reverts commit a8aa921c4614f9d6a0e8f3459648ca1ae75cdbe6.

Reason for revert: breaks a webrtc unittest on Windows.

https://bugs.chromium.org/p/webrtc/issues/detail?id=9263&can=2&start=0&num=100&q=&colspec=ID%20Pri%20M%20ReleaseBlock%20Component%20Status%20Owner%20Summary&groupby=&sort=

Original change's description:
> Allow negative height when ConvertToI420/ARGB is called with NV12/NV21
> 
> 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: Frank Barchard <fbarchard@chromium.org>

TBR=fbarchard@chromium.org,robert@bares.me

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: libyuv:446, chromium:9263, libyuv:801
Change-Id: I7c55b3fcb477f9754c249b9c2c54b24da2c29283
Reviewed-on: https://chromium-review.googlesource.com/1081267
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Weiyong Yao <braveyao@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2018-06-01 00:19:40 +00:00
..
compare_common.cc add const to casts 2018-04-13 22:52:52 +00:00
compare_gcc.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
compare_msa.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
compare_neon64.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
compare_neon.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
compare_win.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
compare.cc tidy applied with all cppcoreguidelines and google 2018-02-07 02:28:25 +00:00
convert_argb.cc NV21ToRGB24_AVX2 and SSSE3 2018-03-07 03:58:48 +00:00
convert_from_argb.cc add const to casts 2018-04-13 22:52:52 +00:00
convert_from.cc add const to casts 2018-04-13 22:52:52 +00:00
convert_jpeg.cc clang-tidy fix for MJPEGToI420 and MJPEGToARGB 2018-02-27 08:37:55 +00:00
convert_to_argb.cc Revert "Allow negative height when ConvertToI420/ARGB is called with NV12/NV21" 2018-06-01 00:19:40 +00:00
convert_to_i420.cc Revert "Allow negative height when ConvertToI420/ARGB is called with NV12/NV21" 2018-06-01 00:19:40 +00:00
convert.cc 10 bit YUV to 10 bit BGR 2018-02-15 22:44:36 +00:00
cpu_id.cc Add a method to force the CPU flags 2018-03-26 19:31:00 +00:00
mjpeg_decoder.cc 10 bit YUV to 10 bit BGR 2018-02-15 22:44:36 +00:00
mjpeg_validate.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
planar_functions.cc ByteToFloatRow_NEON to convert and scale bytes to floats 2018-02-24 00:34:07 +00:00
rotate_any.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
rotate_argb.cc clang-tidy and clang-format applied reland 2018-02-21 23:30:38 +00:00
rotate_common.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
rotate_gcc.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
rotate_msa.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
rotate_neon64.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
rotate_neon.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
rotate_win.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
rotate.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
row_any.cc ARGBExtractAlphaRow_Any_AVX2 fix pixel count mask 2018-05-11 07:13:58 +00:00
row_common.cc use attribute to alias for punning float to int 2018-04-13 19:20:52 +00:00
row_gcc.cc Disable AVX512 for iOS simulator xcode 9 builds. 2018-04-03 18:45:14 +00:00
row_msa.cc tidy applied with readability-inconsistent-declaration-parameter-name 2018-02-07 00:24:25 +00:00
row_neon64.cc ByteToFloatRow_NEON to convert and scale bytes to floats 2018-02-24 00:34:07 +00:00
row_neon.cc Pass float parameters via vector 2 float and "w" for scalar multiply. 2018-03-28 21:52:08 +00:00
row_win.cc tidy applied with readability-inconsistent-declaration-parameter-name 2018-02-07 00:24:25 +00:00
scale_any.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
scale_argb.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
scale_common.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
scale_gcc.cc I420ToYUY2_AVX2 port 2018-02-01 00:33:25 +00:00
scale_msa.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
scale_neon64.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00
scale_neon.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
scale_win.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
scale.cc tidy applied with readability-inconsistent-declaration-parameter-name 2018-02-07 00:24:25 +00:00
video_common.cc Lint cleanup after C99 change CL 2018-01-24 19:16:03 +00:00