mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2026-04-30 19:09:18 +08:00
Fix parameter names and comments for ARGB/BGRA/RGBA/ABGR functions
In all functions that start with ARGB, BGRA, RGBA or ABGR in the include/libyuv/ headers, make sure the parameter variable name has the same 4 letters, but lower case, and the comment before the function should have the same matching name. Then make sure the implementation in source/ folder has the same variable names. Change-Id: Idadbbbb993156eea16e318719f4888cb3bed5f6a Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/7760057 Reviewed-by: richard winterton <rrwinterton@gmail.com> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
This commit is contained in:
parent
893eacf9b4
commit
59ca5d8074
@ -1077,8 +1077,8 @@ int I420Interpolate(const uint8_t* src0_y,
|
||||
// Shuffle ARGB channel order. e.g. BGRA to ARGB.
|
||||
// shuffler is 16 bytes.
|
||||
LIBYUV_API
|
||||
int ARGBShuffle(const uint8_t* src_bgra,
|
||||
int src_stride_bgra,
|
||||
int ARGBShuffle(const uint8_t* src_argb,
|
||||
int src_stride_argb,
|
||||
uint8_t* dst_argb,
|
||||
int dst_stride_argb,
|
||||
const uint8_t* shuffler,
|
||||
|
||||
@ -1611,13 +1611,13 @@ void I422ToARGBRow_LASX(const uint8_t* src_y,
|
||||
void I422ToRGBARow_LSX(const uint8_t* src_y,
|
||||
const uint8_t* src_u,
|
||||
const uint8_t* src_v,
|
||||
uint8_t* dst_argb,
|
||||
uint8_t* dst_rgba,
|
||||
const struct YuvConstants* yuvconstants,
|
||||
int width);
|
||||
void I422ToRGBARow_LASX(const uint8_t* src_y,
|
||||
const uint8_t* src_u,
|
||||
const uint8_t* src_v,
|
||||
uint8_t* dst_argb,
|
||||
uint8_t* dst_rgba,
|
||||
const struct YuvConstants* yuvconstants,
|
||||
int width);
|
||||
void I422AlphaToARGBRow_LSX(const uint8_t* src_y,
|
||||
@ -1753,25 +1753,25 @@ void ARGBToYJRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void ARGBToYJRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void ARGBToYJRow_Any_AVX2(const uint8_t* src_ptr, uint8_t* dst_ptr, int width);
|
||||
void ABGRToYRow_SSSE3(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void ABGRToYRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void ABGRToYRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void ABGRToYRow_AVX512BW(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void ABGRToYRow_AVX2(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void ABGRToYJRow_SSSE3(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void ABGRToYJRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void ABGRToYJRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void ABGRToYJRow_AVX512BW(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void ABGRToYJRow_AVX2(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void ABGRToYJRow_AVX2(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void ABGRToYJRow_Any_AVX2(const uint8_t* src_ptr, uint8_t* dst_ptr, int width);
|
||||
void RGBAToYJRow_AVX2(const uint8_t* src_rgba, uint8_t* dst_y, int width);
|
||||
void RGBAToYJRow_Any_AVX2(const uint8_t* src_ptr, uint8_t* dst_ptr, int width);
|
||||
void RGBAToYJRow_SSSE3(const uint8_t* src_rgba, uint8_t* dst_y, int width);
|
||||
void RGBAToYJRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void RGBAToYJRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void RGBAToYJRow_AVX512BW(const uint8_t* src_rgba, uint8_t* dst_y, int width);
|
||||
void RGBAToYJRow_AVX2(const uint8_t* src_rgba, uint8_t* dst_y, int width);
|
||||
void BGRAToYRow_SSSE3(const uint8_t* src_bgra, uint8_t* dst_y, int width);
|
||||
void BGRAToYRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void BGRAToYRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void BGRAToYRow_AVX512BW(const uint8_t* src_bgra, uint8_t* dst_y, int width);
|
||||
void BGRAToYRow_AVX2(const uint8_t* src_bgra, uint8_t* dst_y, int width);
|
||||
void ABGRToYRow_SSSE3(const uint8_t* src_abgr, uint8_t* dst_y, int width);
|
||||
void RGBAToYRow_SSSE3(const uint8_t* src_rgba, uint8_t* dst_y, int width);
|
||||
void RGBAToYRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void RGBAToYRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void RGBAToYRow_AVX512BW(const uint8_t* src_rgba, uint8_t* dst_y, int width);
|
||||
void RGBAToYRow_AVX2(const uint8_t* src_rgba, uint8_t* dst_y, int width);
|
||||
void RGB24ToYRow_SSSE3(const uint8_t* src_rgb24, uint8_t* dst_y, int width);
|
||||
void RGB24ToYJRow_SSSE3(const uint8_t* src_rgb24, uint8_t* dst_yj, int width);
|
||||
void RAWToYRow_SSSE3(const uint8_t* src_raw, uint8_t* dst_y, int width);
|
||||
@ -1796,7 +1796,7 @@ void RGBAToYJRow_NEON_DotProd(const uint8_t* src_rgba,
|
||||
int width);
|
||||
void ARGBToYRow_RVV(const uint8_t* src_argb, uint8_t* dst_y, int width);
|
||||
void ARGBToYJRow_RVV(const uint8_t* src_argb, uint8_t* dst_yj, int width);
|
||||
void ABGRToYJRow_RVV(const uint8_t* src_rgba, uint8_t* dst_yj, int width);
|
||||
void ABGRToYJRow_RVV(const uint8_t* src_abgr, uint8_t* dst_yj, int width);
|
||||
void RGBAToYJRow_RVV(const uint8_t* src_rgba, uint8_t* dst_yj, int width);
|
||||
void ARGBToYRow_LSX(const uint8_t* src_argb0, uint8_t* dst_y, int width);
|
||||
void ARGBToYRow_LASX(const uint8_t* src_argb0, uint8_t* dst_y, int width);
|
||||
@ -4200,7 +4200,7 @@ void ARGBToARGB4444Row_LASX(const uint8_t* src_argb,
|
||||
|
||||
void ARGBToRAWRow_RVV(const uint8_t* src_argb, uint8_t* dst_raw, int width);
|
||||
void ARGBToABGRRow_RVV(const uint8_t* src_argb, uint8_t* dst_abgr, int width);
|
||||
void ARGBToBGRARow_RVV(const uint8_t* src_argb, uint8_t* dst_rgba, int width);
|
||||
void ARGBToBGRARow_RVV(const uint8_t* src_argb, uint8_t* dst_bgra, int width);
|
||||
void ARGBToRGBARow_RVV(const uint8_t* src_argb, uint8_t* dst_rgb, int width);
|
||||
void ARGBToRGB24Row_RVV(const uint8_t* src_argb, uint8_t* dst_rgb24, int width);
|
||||
|
||||
@ -4496,7 +4496,7 @@ void I422ToARGBRow_AVX512BW(const uint8_t* y_buf,
|
||||
void I422ToRGBARow_AVX2(const uint8_t* y_buf,
|
||||
const uint8_t* u_buf,
|
||||
const uint8_t* v_buf,
|
||||
uint8_t* dst_argb,
|
||||
uint8_t* dst_rgba,
|
||||
const struct YuvConstants* yuvconstants,
|
||||
int width);
|
||||
void I444ToARGBRow_SSSE3(const uint8_t* y_buf,
|
||||
|
||||
@ -772,7 +772,7 @@ static inline void I422ToARGB4444Row_SVE_SC(
|
||||
static inline void I422ToRGBARow_SVE_SC(const uint8_t* src_y,
|
||||
const uint8_t* src_u,
|
||||
const uint8_t* src_v,
|
||||
uint8_t* dst_argb,
|
||||
uint8_t* dst_rgba,
|
||||
const struct YuvConstants* yuvconstants,
|
||||
int width) STREAMING_COMPATIBLE {
|
||||
uint64_t vl;
|
||||
@ -790,8 +790,8 @@ static inline void I422ToRGBARow_SVE_SC(const uint8_t* src_y,
|
||||
"1: \n" //
|
||||
READYUV422_SVE I4XXTORGB_SVE RGBTORGBA8_SVE
|
||||
"subs %w[width], %w[width], %w[vl] \n"
|
||||
"st2h {z19.h, z20.h}, p1, [%[dst_argb]] \n"
|
||||
"add %[dst_argb], %[dst_argb], %[vl], lsl #2 \n"
|
||||
"st2h {z19.h, z20.h}, p1, [%[dst_rgba]] \n"
|
||||
"add %[dst_rgba], %[dst_rgba], %[vl], lsl #2 \n"
|
||||
"b.gt 1b \n"
|
||||
|
||||
// Calculate a predicate for the final iteration to deal with the tail.
|
||||
@ -801,13 +801,13 @@ static inline void I422ToRGBARow_SVE_SC(const uint8_t* src_y,
|
||||
|
||||
"whilelt p1.h, wzr, %w[width] \n" //
|
||||
READYUV422_SVE I4XXTORGB_SVE RGBTORGBA8_SVE
|
||||
"st2h {z19.h, z20.h}, p1, [%[dst_argb]] \n"
|
||||
"st2h {z19.h, z20.h}, p1, [%[dst_rgba]] \n"
|
||||
|
||||
"99: \n"
|
||||
: [src_y] "+r"(src_y), // %[src_y]
|
||||
[src_u] "+r"(src_u), // %[src_u]
|
||||
[src_v] "+r"(src_v), // %[src_v]
|
||||
[dst_argb] "+r"(dst_argb), // %[dst_argb]
|
||||
[dst_rgba] "+r"(dst_rgba), // %[dst_rgba]
|
||||
[width] "+r"(width), // %[width]
|
||||
[vl] "=&r"(vl) // %[vl]
|
||||
: [kUVCoeff] "r"(&yuvconstants->kUVCoeff), // %[kUVCoeff]
|
||||
|
||||
@ -3357,13 +3357,13 @@ int BGRAToARGB(const uint8_t* src_bgra,
|
||||
|
||||
// Convert ARGB to BGRA (same as BGRAToARGB).
|
||||
LIBYUV_API
|
||||
int ARGBToBGRA(const uint8_t* src_bgra,
|
||||
int src_stride_bgra,
|
||||
uint8_t* dst_argb,
|
||||
int dst_stride_argb,
|
||||
int ARGBToBGRA(const uint8_t* src_argb,
|
||||
int src_stride_argb,
|
||||
uint8_t* dst_bgra,
|
||||
int dst_stride_bgra,
|
||||
int width,
|
||||
int height) {
|
||||
return ARGBShuffle(src_bgra, src_stride_bgra, dst_argb, dst_stride_argb,
|
||||
return ARGBShuffle(src_argb, src_stride_argb, dst_bgra, dst_stride_bgra,
|
||||
(const uint8_t*)&kShuffleMaskBGRAToARGB, width, height);
|
||||
}
|
||||
|
||||
@ -3381,13 +3381,13 @@ int ABGRToARGB(const uint8_t* src_abgr,
|
||||
|
||||
// Convert ARGB to ABGR to (same as ABGRToARGB).
|
||||
LIBYUV_API
|
||||
int ARGBToABGR(const uint8_t* src_abgr,
|
||||
int src_stride_abgr,
|
||||
uint8_t* dst_argb,
|
||||
int dst_stride_argb,
|
||||
int ARGBToABGR(const uint8_t* src_argb,
|
||||
int src_stride_argb,
|
||||
uint8_t* dst_abgr,
|
||||
int dst_stride_abgr,
|
||||
int width,
|
||||
int height) {
|
||||
return ARGBShuffle(src_abgr, src_stride_abgr, dst_argb, dst_stride_argb,
|
||||
return ARGBShuffle(src_argb, src_stride_argb, dst_abgr, dst_stride_abgr,
|
||||
(const uint8_t*)&kShuffleMaskABGRToARGB, width, height);
|
||||
}
|
||||
|
||||
|
||||
@ -4519,30 +4519,30 @@ int I420Interpolate(const uint8_t* src0_y,
|
||||
|
||||
// Shuffle ARGB channel order. e.g. BGRA to ARGB.
|
||||
LIBYUV_API
|
||||
int ARGBShuffle(const uint8_t* src_bgra,
|
||||
int src_stride_bgra,
|
||||
int ARGBShuffle(const uint8_t* src_argb,
|
||||
int src_stride_argb,
|
||||
uint8_t* dst_argb,
|
||||
int dst_stride_argb,
|
||||
const uint8_t* shuffler,
|
||||
int width,
|
||||
int height) {
|
||||
int y;
|
||||
void (*ARGBShuffleRow)(const uint8_t* src_bgra, uint8_t* dst_argb,
|
||||
void (*ARGBShuffleRow)(const uint8_t* src_argb, uint8_t* dst_argb,
|
||||
const uint8_t* shuffler, int width) = ARGBShuffleRow_C;
|
||||
if (!src_bgra || !dst_argb || width <= 0 || height == 0) {
|
||||
if (!src_argb || !dst_argb || width <= 0 || height == 0) {
|
||||
return -1;
|
||||
}
|
||||
// Negative height means invert the image.
|
||||
if (height < 0) {
|
||||
height = -height;
|
||||
src_bgra = src_bgra + (height - 1) * src_stride_bgra;
|
||||
src_stride_bgra = -src_stride_bgra;
|
||||
src_argb = src_argb + (height - 1) * src_stride_argb;
|
||||
src_stride_argb = -src_stride_argb;
|
||||
}
|
||||
// Coalesce rows.
|
||||
if (src_stride_bgra == width * 4 && dst_stride_argb == width * 4) {
|
||||
if (src_stride_argb == width * 4 && dst_stride_argb == width * 4) {
|
||||
width *= height;
|
||||
height = 1;
|
||||
src_stride_bgra = dst_stride_argb = 0;
|
||||
src_stride_argb = dst_stride_argb = 0;
|
||||
}
|
||||
#if defined(HAS_ARGBSHUFFLEROW_SSSE3)
|
||||
if (TestCpuFlag(kCpuHasSSSE3)) {
|
||||
@ -4586,8 +4586,8 @@ int ARGBShuffle(const uint8_t* src_bgra,
|
||||
#endif
|
||||
|
||||
for (y = 0; y < height; ++y) {
|
||||
ARGBShuffleRow(src_bgra, dst_argb, shuffler, width);
|
||||
src_bgra += src_stride_bgra;
|
||||
ARGBShuffleRow(src_argb, dst_argb, shuffler, width);
|
||||
src_argb += src_stride_argb;
|
||||
dst_argb += dst_stride_argb;
|
||||
}
|
||||
return 0;
|
||||
|
||||
@ -1368,16 +1368,16 @@ void ARGBToYJRow_SSSE3(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
#ifdef HAS_ABGRTOYJROW_SSSE3
|
||||
// Convert 16 ABGR pixels (64 bytes) to 16 YJ values.
|
||||
// Same as ABGRToYRow but different coefficients, no add 16.
|
||||
void ABGRToYJRow_SSSE3(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_argb, dst_y, width, &kAbgrJPEGConstants);
|
||||
void ABGRToYJRow_SSSE3(const uint8_t* src_abgr, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_abgr, dst_y, width, &kAbgrJPEGConstants);
|
||||
}
|
||||
#endif // HAS_ABGRTOYJROW_SSSE3
|
||||
|
||||
#ifdef HAS_RGBATOYJROW_SSSE3
|
||||
// Convert 16 ARGB pixels (64 bytes) to 16 YJ values.
|
||||
// Convert 16 RGBA pixels (64 bytes) to 16 YJ values.
|
||||
// Same as ARGBToYRow but different coefficients, no add 16.
|
||||
void RGBAToYJRow_SSSE3(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_argb, dst_y, width, &kRgbaJPEGConstants);
|
||||
void RGBAToYJRow_SSSE3(const uint8_t* src_rgba, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_rgba, dst_y, width, &kRgbaJPEGConstants);
|
||||
}
|
||||
#endif // HAS_RGBATOYJROW_SSSE3
|
||||
|
||||
@ -1399,8 +1399,8 @@ void ARGBToYRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
#ifdef HAS_ABGRTOYROW_AVX2
|
||||
// Convert 32 ABGR pixels (128 bytes) to 32 Y values.
|
||||
#ifdef HAS_ARGBTOYROW_AVX2
|
||||
void ABGRToYRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_argb, dst_y, width, &kAbgrI601Constants);
|
||||
void ABGRToYRow_AVX2(const uint8_t* src_abgr, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_abgr, dst_y, width, &kAbgrI601Constants);
|
||||
}
|
||||
#endif
|
||||
#endif // HAS_ABGRTOYROW_AVX2
|
||||
@ -1418,8 +1418,8 @@ void ARGBToYJRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
#ifdef HAS_ABGRTOYJROW_AVX2
|
||||
// Convert 32 ABGR pixels (128 bytes) to 32 Y values.
|
||||
#ifdef HAS_ARGBTOYROW_AVX2
|
||||
void ABGRToYJRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_argb, dst_y, width, &kAbgrJPEGConstants);
|
||||
void ABGRToYJRow_AVX2(const uint8_t* src_abgr, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_abgr, dst_y, width, &kAbgrJPEGConstants);
|
||||
}
|
||||
#endif
|
||||
#endif // HAS_ABGRTOYJROW_AVX2
|
||||
@ -1427,8 +1427,8 @@ void ABGRToYJRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
#ifdef HAS_RGBATOYJROW_AVX2
|
||||
// Convert 32 ARGB pixels (128 bytes) to 32 Y values.
|
||||
#ifdef HAS_ARGBTOYROW_AVX2
|
||||
void RGBAToYJRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_argb, dst_y, width, &kRgbaJPEGConstants);
|
||||
void RGBAToYJRow_AVX2(const uint8_t* src_rgba, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_rgba, dst_y, width, &kRgbaJPEGConstants);
|
||||
}
|
||||
#endif
|
||||
#endif // HAS_RGBATOYJROW_AVX2
|
||||
@ -1953,14 +1953,14 @@ void ARGBToUV444Row_SSSE3(const uint8_t* src_argb,
|
||||
|
||||
|
||||
#ifdef HAS_ARGBTOYROW_AVX2
|
||||
void RGBAToYRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_argb, dst_y, width, &kRgbaI601Constants);
|
||||
void RGBAToYRow_AVX2(const uint8_t* src_rgba, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_rgba, dst_y, width, &kRgbaI601Constants);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_ARGBTOYROW_AVX2
|
||||
void BGRAToYRow_AVX2(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_argb, dst_y, width, &kBgraI601Constants);
|
||||
void BGRAToYRow_AVX2(const uint8_t* src_bgra, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX2(src_bgra, dst_y, width, &kBgraI601Constants);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1978,32 +1978,32 @@ void ARGBToYJRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
#endif
|
||||
|
||||
#ifdef HAS_ARGBTOYROW_AVX512BW
|
||||
void ABGRToYRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_argb, dst_y, width, &kAbgrI601Constants);
|
||||
void ABGRToYRow_AVX512BW(const uint8_t* src_abgr, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_abgr, dst_y, width, &kAbgrI601Constants);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_ARGBTOYROW_AVX512BW
|
||||
void ABGRToYJRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_argb, dst_y, width, &kAbgrJPEGConstants);
|
||||
void ABGRToYJRow_AVX512BW(const uint8_t* src_abgr, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_abgr, dst_y, width, &kAbgrJPEGConstants);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_ARGBTOYROW_AVX512BW
|
||||
void RGBAToYRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_argb, dst_y, width, &kRgbaI601Constants);
|
||||
void RGBAToYRow_AVX512BW(const uint8_t* src_rgba, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_rgba, dst_y, width, &kRgbaI601Constants);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_ARGBTOYROW_AVX512BW
|
||||
void RGBAToYJRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_argb, dst_y, width, &kRgbaJPEGConstants);
|
||||
void RGBAToYJRow_AVX512BW(const uint8_t* src_rgba, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_rgba, dst_y, width, &kRgbaJPEGConstants);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_ARGBTOYROW_AVX512BW
|
||||
void BGRAToYRow_AVX512BW(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_argb, dst_y, width, &kBgraI601Constants);
|
||||
void BGRAToYRow_AVX512BW(const uint8_t* src_bgra, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_AVX512BW(src_bgra, dst_y, width, &kBgraI601Constants);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -2157,16 +2157,16 @@ void ABGRToUVJRow_AVX2(const uint8_t* src_abgr,
|
||||
}
|
||||
#endif // HAS_ABGRTOUVJROW_AVX2
|
||||
|
||||
void BGRAToYRow_SSSE3(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_argb, dst_y, width, &kBgraI601Constants);
|
||||
void BGRAToYRow_SSSE3(const uint8_t* src_bgra, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_bgra, dst_y, width, &kBgraI601Constants);
|
||||
}
|
||||
|
||||
void ABGRToYRow_SSSE3(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_argb, dst_y, width, &kAbgrI601Constants);
|
||||
void ABGRToYRow_SSSE3(const uint8_t* src_abgr, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_abgr, dst_y, width, &kAbgrI601Constants);
|
||||
}
|
||||
|
||||
void RGBAToYRow_SSSE3(const uint8_t* src_argb, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_argb, dst_y, width, &kRgbaI601Constants);
|
||||
void RGBAToYRow_SSSE3(const uint8_t* src_rgba, uint8_t* dst_y, int width) {
|
||||
ARGBToYMatrixRow_SSSE3(src_rgba, dst_y, width, &kRgbaI601Constants);
|
||||
}
|
||||
|
||||
#if defined(HAS_I422TOARGBROW_SSSE3) || defined(HAS_I422TOARGBROW_AVX2)
|
||||
|
||||
@ -375,7 +375,7 @@ void I422ToARGBRow_LASX(const uint8_t* src_y,
|
||||
void I422ToRGBARow_LASX(const uint8_t* src_y,
|
||||
const uint8_t* src_u,
|
||||
const uint8_t* src_v,
|
||||
uint8_t* dst_argb,
|
||||
uint8_t* dst_rgba,
|
||||
const struct YuvConstants* yuvconstants,
|
||||
int width) {
|
||||
int x;
|
||||
@ -395,7 +395,7 @@ void I422ToRGBARow_LASX(const uint8_t* src_y,
|
||||
READYUV422_D(src_y, src_u, src_v, y, uv_l, uv_h);
|
||||
YUVTORGB_D(y, uv_l, uv_h, vec_ubvr, vec_ugvg, vec_yg, vec_yb, b_l, b_h, g_l,
|
||||
g_h, r_l, r_h);
|
||||
STOREARGB_D(r_l, r_h, g_l, g_h, b_l, b_h, alpha, alpha, dst_argb);
|
||||
STOREARGB_D(r_l, r_h, g_l, g_h, b_l, b_h, alpha, alpha, dst_rgba);
|
||||
src_y += 32;
|
||||
src_u += 16;
|
||||
src_v += 16;
|
||||
|
||||
@ -405,7 +405,7 @@ void I422ToARGBRow_LSX(const uint8_t* src_y,
|
||||
void I422ToRGBARow_LSX(const uint8_t* src_y,
|
||||
const uint8_t* src_u,
|
||||
const uint8_t* src_v,
|
||||
uint8_t* dst_argb,
|
||||
uint8_t* dst_rgba,
|
||||
const struct YuvConstants* yuvconstants,
|
||||
int width) {
|
||||
int x;
|
||||
@ -425,7 +425,7 @@ void I422ToRGBARow_LSX(const uint8_t* src_y,
|
||||
READYUV422_D(src_y, src_u, src_v, y, uv_l, uv_h);
|
||||
YUVTORGB_D(y, uv_l, uv_h, vec_ubvr, vec_ugvg, vec_yg, vec_yb, b_l, b_h, g_l,
|
||||
g_h, r_l, r_h);
|
||||
STOREARGB_D(r_l, r_h, g_l, g_h, b_l, b_h, alpha, alpha, dst_argb);
|
||||
STOREARGB_D(r_l, r_h, g_l, g_h, b_l, b_h, alpha, alpha, dst_rgba);
|
||||
src_y += 16;
|
||||
src_u += 8;
|
||||
src_v += 8;
|
||||
|
||||
@ -2014,7 +2014,7 @@ void ABGRToUVJRow_NEON(const uint8_t* src_abgr,
|
||||
uint8_t* dst_vj,
|
||||
int width) {
|
||||
asm volatile (
|
||||
"add %1, %0, %1 \n" // src_stride + src_argb
|
||||
"add %1, %0, %1 \n" // src_stride + src_abgr
|
||||
"vmov.s16 q10, #128 \n" // UB/VR 0.500 coefficient
|
||||
"vmov.s16 q11, #85 \n" // UG -0.33126 coefficient
|
||||
"vmov.s16 q12, #43 \n" // UR -0.16874 coefficient
|
||||
|
||||
@ -148,10 +148,10 @@ void I422ToARGB4444Row_SVE2(const uint8_t* src_y,
|
||||
void I422ToRGBARow_SVE2(const uint8_t* src_y,
|
||||
const uint8_t* src_u,
|
||||
const uint8_t* src_v,
|
||||
uint8_t* dst_argb,
|
||||
uint8_t* dst_rgba,
|
||||
const struct YuvConstants* yuvconstants,
|
||||
int width) {
|
||||
I422ToRGBARow_SVE_SC(src_y, src_u, src_v, dst_argb, yuvconstants, width);
|
||||
I422ToRGBARow_SVE_SC(src_y, src_u, src_v, dst_rgba, yuvconstants, width);
|
||||
}
|
||||
|
||||
void I422ToAR30Row_SVE2(const uint8_t* src_y,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user