Index: source/planar_functions.cc |
diff --git a/source/planar_functions.cc b/source/planar_functions.cc |
index 3cca5f48b2518478281627ddcce75f07c55484cf..2299ab8920a7e030a12f2e61f48e59c7b07930fa 100644 |
--- a/source/planar_functions.cc |
+++ b/source/planar_functions.cc |
@@ -287,9 +287,9 @@ int YUY2ToI422(const uint8* src_yuy2, int src_stride_yuy2, |
int width, int height) { |
int y; |
void (*YUY2ToUV422Row)(const uint8* src_yuy2, |
- uint8* dst_u, uint8* dst_v, int pix) = |
+ uint8* dst_u, uint8* dst_v, int width) = |
YUY2ToUV422Row_C; |
- void (*YUY2ToYRow)(const uint8* src_yuy2, uint8* dst_y, int pix) = |
+ void (*YUY2ToYRow)(const uint8* src_yuy2, uint8* dst_y, int width) = |
YUY2ToYRow_C; |
// Negative height means invert the image. |
if (height < 0) { |
@@ -359,10 +359,10 @@ int UYVYToI422(const uint8* src_uyvy, int src_stride_uyvy, |
int width, int height) { |
int y; |
void (*UYVYToUV422Row)(const uint8* src_uyvy, |
- uint8* dst_u, uint8* dst_v, int pix) = |
+ uint8* dst_u, uint8* dst_v, int width) = |
UYVYToUV422Row_C; |
void (*UYVYToYRow)(const uint8* src_uyvy, |
- uint8* dst_y, int pix) = UYVYToYRow_C; |
+ uint8* dst_y, int width) = UYVYToYRow_C; |
// Negative height means invert the image. |
if (height < 0) { |
height = -height; |
@@ -790,6 +790,7 @@ int I422ToBGRA(const uint8* src_y, int src_stride_y, |
const uint8* u_buf, |
const uint8* v_buf, |
uint8* rgb_buf, |
+ struct YuvConstants* yuvconstants, |
int width) = I422ToBGRARow_C; |
if (!src_y || !src_u || !src_v || |
!dst_bgra || |
@@ -846,7 +847,7 @@ int I422ToBGRA(const uint8* src_y, int src_stride_y, |
#endif |
for (y = 0; y < height; ++y) { |
- I422ToBGRARow(src_y, src_u, src_v, dst_bgra, width); |
+ I422ToBGRARow(src_y, src_u, src_v, dst_bgra, &kYuvConstants, width); |
dst_bgra += dst_stride_bgra; |
src_y += src_stride_y; |
src_u += src_stride_u; |
@@ -867,6 +868,7 @@ int I422ToABGR(const uint8* src_y, int src_stride_y, |
const uint8* u_buf, |
const uint8* v_buf, |
uint8* rgb_buf, |
+ struct YuvConstants* yuvconstants, |
int width) = I422ToABGRRow_C; |
if (!src_y || !src_u || !src_v || |
!dst_abgr || |
@@ -914,7 +916,7 @@ int I422ToABGR(const uint8* src_y, int src_stride_y, |
#endif |
for (y = 0; y < height; ++y) { |
- I422ToABGRRow(src_y, src_u, src_v, dst_abgr, width); |
+ I422ToABGRRow(src_y, src_u, src_v, dst_abgr, &kYuvConstants, width); |
dst_abgr += dst_stride_abgr; |
src_y += src_stride_y; |
src_u += src_stride_u; |
@@ -935,6 +937,7 @@ int I422ToRGBA(const uint8* src_y, int src_stride_y, |
const uint8* u_buf, |
const uint8* v_buf, |
uint8* rgb_buf, |
+ struct YuvConstants* yuvconstants, |
int width) = I422ToRGBARow_C; |
if (!src_y || !src_u || !src_v || |
!dst_rgba || |
@@ -982,7 +985,7 @@ int I422ToRGBA(const uint8* src_y, int src_stride_y, |
#endif |
for (y = 0; y < height; ++y) { |
- I422ToRGBARow(src_y, src_u, src_v, dst_rgba, width); |
+ I422ToRGBARow(src_y, src_u, src_v, dst_rgba, &kYuvConstants, width); |
dst_rgba += dst_stride_rgba; |
src_y += src_stride_y; |
src_u += src_stride_u; |
@@ -1001,6 +1004,7 @@ int NV12ToRGB565(const uint8* src_y, int src_stride_y, |
void (*NV12ToRGB565Row)(const uint8* y_buf, |
const uint8* uv_buf, |
uint8* rgb_buf, |
+ struct YuvConstants* yuvconstants, |
int width) = NV12ToRGB565Row_C; |
if (!src_y || !src_uv || !dst_rgb565 || |
width <= 0 || height == 0) { |
@@ -1038,7 +1042,7 @@ int NV12ToRGB565(const uint8* src_y, int src_stride_y, |
#endif |
for (y = 0; y < height; ++y) { |
- NV12ToRGB565Row(src_y, src_uv, dst_rgb565, width); |
+ NV12ToRGB565Row(src_y, src_uv, dst_rgb565, &kYuvConstants, width); |
dst_rgb565 += dst_stride_rgb565; |
src_y += src_stride_y; |
if (y & 1) { |
@@ -1055,10 +1059,11 @@ int NV21ToRGB565(const uint8* src_y, int src_stride_y, |
uint8* dst_rgb565, int dst_stride_rgb565, |
int width, int height) { |
int y; |
- void (*NV21ToRGB565Row)(const uint8* y_buf, |
+ void (*NV12ToRGB565Row)(const uint8* y_buf, |
const uint8* src_vu, |
uint8* rgb_buf, |
- int width) = NV21ToRGB565Row_C; |
+ struct YuvConstants* yuvconstants, |
+ int width) = NV12ToRGB565Row_C; |
if (!src_y || !src_vu || !dst_rgb565 || |
width <= 0 || height == 0) { |
return -1; |
@@ -1069,33 +1074,33 @@ int NV21ToRGB565(const uint8* src_y, int src_stride_y, |
dst_rgb565 = dst_rgb565 + (height - 1) * dst_stride_rgb565; |
dst_stride_rgb565 = -dst_stride_rgb565; |
} |
-#if defined(HAS_NV21TORGB565ROW_SSSE3) |
+#if defined(HAS_NV12TORGB565ROW_SSSE3) |
if (TestCpuFlag(kCpuHasSSSE3)) { |
- NV21ToRGB565Row = NV21ToRGB565Row_Any_SSSE3; |
+ NV12ToRGB565Row = NV12ToRGB565Row_Any_SSSE3; |
if (IS_ALIGNED(width, 8)) { |
- NV21ToRGB565Row = NV21ToRGB565Row_SSSE3; |
+ NV12ToRGB565Row = NV12ToRGB565Row_SSSE3; |
} |
} |
#endif |
-#if defined(HAS_NV21TORGB565ROW_AVX2) |
+#if defined(HAS_NV12TORGB565ROW_AVX2) |
if (TestCpuFlag(kCpuHasAVX2)) { |
- NV21ToRGB565Row = NV21ToRGB565Row_Any_AVX2; |
+ NV12ToRGB565Row = NV12ToRGB565Row_Any_AVX2; |
if (IS_ALIGNED(width, 16)) { |
- NV21ToRGB565Row = NV21ToRGB565Row_AVX2; |
+ NV12ToRGB565Row = NV12ToRGB565Row_AVX2; |
} |
} |
#endif |
-#if defined(HAS_NV21TORGB565ROW_NEON) |
+#if defined(HAS_NV12TORGB565ROW_NEON) |
if (TestCpuFlag(kCpuHasNEON)) { |
- NV21ToRGB565Row = NV21ToRGB565Row_Any_NEON; |
+ NV12ToRGB565Row = NV12ToRGB565Row_Any_NEON; |
if (IS_ALIGNED(width, 8)) { |
- NV21ToRGB565Row = NV21ToRGB565Row_NEON; |
+ NV12ToRGB565Row = NV12ToRGB565Row_NEON; |
} |
} |
#endif |
for (y = 0; y < height; ++y) { |
- NV21ToRGB565Row(src_y, src_vu, dst_rgb565, width); |
+ NV12ToRGB565Row(src_y, src_vu, dst_rgb565, &kYvuConstants, width); |
dst_rgb565 += dst_stride_rgb565; |
src_y += src_stride_y; |
if (y & 1) { |
@@ -1110,7 +1115,7 @@ void SetPlane(uint8* dst_y, int dst_stride_y, |
int width, int height, |
uint32 value) { |
int y; |
- void (*SetRow)(uint8* dst, uint8 value, int pix) = SetRow_C; |
+ void (*SetRow)(uint8* dst, uint8 value, int width) = SetRow_C; |
if (height < 0) { |
height = -height; |
dst_y = dst_y + (height - 1) * dst_stride_y; |
@@ -1186,7 +1191,7 @@ int ARGBRect(uint8* dst_argb, int dst_stride_argb, |
int width, int height, |
uint32 value) { |
int y; |
- void (*ARGBSetRow)(uint8* dst_argb, uint32 value, int pix) = ARGBSetRow_C; |
+ void (*ARGBSetRow)(uint8* dst_argb, uint32 value, int width) = ARGBSetRow_C; |
if (!dst_argb || |
width <= 0 || height == 0 || |
dst_x < 0 || dst_y < 0) { |
@@ -1909,7 +1914,7 @@ int ARGBShuffle(const uint8* src_bgra, int src_stride_bgra, |
const uint8* shuffler, int width, int height) { |
int y; |
void (*ARGBShuffleRow)(const uint8* src_bgra, uint8* dst_argb, |
- const uint8* shuffler, int pix) = ARGBShuffleRow_C; |
+ const uint8* shuffler, int width) = ARGBShuffleRow_C; |
if (!src_bgra || !dst_argb || |
width <= 0 || height == 0) { |
return -1; |
@@ -1976,7 +1981,7 @@ static int ARGBSobelize(const uint8* src_argb, int src_stride_argb, |
const uint8* src_sobely, |
uint8* dst, int width)) { |
int y; |
- void (*ARGBToYJRow)(const uint8* src_argb, uint8* dst_g, int pix) = |
+ void (*ARGBToYJRow)(const uint8* src_argb, uint8* dst_g, int width) = |
ARGBToYJRow_C; |
void (*SobelYRow)(const uint8* src_y0, const uint8* src_y1, |
uint8* dst_sobely, int width) = SobelYRow_C; |
@@ -2360,8 +2365,8 @@ int YUY2ToNV12(const uint8* src_yuy2, int src_stride_yuy2, |
int width, int height) { |
int y; |
int halfwidth = (width + 1) >> 1; |
- void (*SplitUVRow)(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix) = |
- SplitUVRow_C; |
+ void (*SplitUVRow)(const uint8* src_uv, uint8* dst_u, uint8* dst_v, |
+ int width) = SplitUVRow_C; |
void (*InterpolateRow)(uint8* dst_ptr, const uint8* src_ptr, |
ptrdiff_t src_stride, int dst_width, |
int source_y_fraction) = InterpolateRow_C; |
@@ -2464,8 +2469,8 @@ int UYVYToNV12(const uint8* src_uyvy, int src_stride_uyvy, |
int width, int height) { |
int y; |
int halfwidth = (width + 1) >> 1; |
- void (*SplitUVRow)(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix) = |
- SplitUVRow_C; |
+ void (*SplitUVRow)(const uint8* src_uv, uint8* dst_u, uint8* dst_v, |
+ int width) = SplitUVRow_C; |
void (*InterpolateRow)(uint8* dst_ptr, const uint8* src_ptr, |
ptrdiff_t src_stride, int dst_width, |
int source_y_fraction) = InterpolateRow_C; |