diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2012-01-04 19:48:02 -0800 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2012-01-05 07:17:01 -0800 |
commit | 2ba65879b5853b49bbefb75346fd73c8645bccea (patch) | |
tree | 01e78d33aa86024665b472cf3cde2465b0bb70fb /libswscale | |
parent | dff4af448dd49449e3efdd0bcee19a69855d8081 (diff) | |
download | ffmpeg-2ba65879b5853b49bbefb75346fd73c8645bccea.tar.gz |
swscale: remove unused U/V arguments from yuv2rgb_write().
Also document the function somewhat.
Diffstat (limited to 'libswscale')
-rw-r--r-- | libswscale/swscale.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/libswscale/swscale.c b/libswscale/swscale.c index 11bb7d6c3f..980fc4a401 100644 --- a/libswscale/swscale.c +++ b/libswscale/swscale.c @@ -884,9 +884,17 @@ YUV2PACKED16WRAPPER(yuv2, rgb48, rgb48le, PIX_FMT_RGB48LE) YUV2PACKED16WRAPPER(yuv2, rgb48, bgr48be, PIX_FMT_BGR48BE) YUV2PACKED16WRAPPER(yuv2, rgb48, bgr48le, PIX_FMT_BGR48LE) +/* + * Write out 2 RGB pixels in the target pixel format. This function takes a + * R/G/B LUT as generated by ff_yuv2rgb_c_init_tables(), which takes care of + * things like endianness conversion and shifting. The caller takes care of + * setting the correct offset in these tables from the chroma (U/V) values. + * This function then uses the luminance (Y1/Y2) values to write out the + * correct RGB values into the destination buffer. + */ static av_always_inline void yuv2rgb_write(uint8_t *_dest, int i, unsigned Y1, unsigned Y2, - unsigned U, unsigned V, unsigned A1, unsigned A2, + unsigned A1, unsigned A2, const void *_r, const void *_g, const void *_b, int y, enum PixelFormat target, int hasAlpha) { @@ -1053,7 +1061,7 @@ yuv2rgb_X_c_template(SwsContext *c, const int16_t *lumFilter, g = (c->table_gU[U] + c->table_gV[V]); b = c->table_bU[U]; - yuv2rgb_write(dest, i, Y1, Y2, U, V, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, + yuv2rgb_write(dest, i, Y1, Y2, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, r, g, b, y, target, hasAlpha); } } @@ -1089,7 +1097,7 @@ yuv2rgb_2_c_template(SwsContext *c, const int16_t *buf[2], A2 = (abuf0[i * 2 + 1] * yalpha1 + abuf1[i * 2 + 1] * yalpha) >> 19; } - yuv2rgb_write(dest, i, Y1, Y2, U, V, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, + yuv2rgb_write(dest, i, Y1, Y2, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, r, g, b, y, target, hasAlpha); } } @@ -1121,7 +1129,7 @@ yuv2rgb_1_c_template(SwsContext *c, const int16_t *buf0, A2 = abuf0[i * 2 + 1] >> 7; } - yuv2rgb_write(dest, i, Y1, Y2, U, V, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, + yuv2rgb_write(dest, i, Y1, Y2, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, r, g, b, y, target, hasAlpha); } } else { @@ -1140,7 +1148,7 @@ yuv2rgb_1_c_template(SwsContext *c, const int16_t *buf0, A2 = abuf0[i * 2 + 1] >> 7; } - yuv2rgb_write(dest, i, Y1, Y2, U, V, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, + yuv2rgb_write(dest, i, Y1, Y2, hasAlpha ? A1 : 0, hasAlpha ? A2 : 0, r, g, b, y, target, hasAlpha); } } |