Let SharpArgbToYuv caller pass in an RGB>YUV conversion matrix.

Change-Id: I4ed2dfc00ce63361abd49c693f31f307e0b0262f
This commit is contained in:
Maryla
2022-03-21 11:27:39 +01:00
parent 34bb332ca1
commit 7a68afaac5
3 changed files with 59 additions and 37 deletions

View File

@ -179,12 +179,12 @@ static int PreprocessARGB(const uint8_t* r_ptr,
const uint8_t* b_ptr,
int step, int rgb_stride,
WebPPicture* const picture) {
int ok = SharpArgbToYuv(r_ptr, g_ptr, b_ptr, step, rgb_stride, picture->y,
picture->y_stride, picture->u, picture->uv_stride,
picture->v, picture->uv_stride, picture->width,
picture->height);
const int ok = SharpYuvConvert(
r_ptr, g_ptr, b_ptr, step, rgb_stride, picture->y, picture->y_stride,
picture->u, picture->uv_stride, picture->v, picture->uv_stride,
picture->width, picture->height, SharpYuvGetWebpMatrix());
if (!ok) {
ok = WebPEncodingSetError(picture, VP8_ENC_ERROR_OUT_OF_MEMORY);
return WebPEncodingSetError(picture, VP8_ENC_ERROR_OUT_OF_MEMORY);
}
return ok;
}