mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 20:21:24 +00:00
tests: image: fix conversion from RGB to YUV.
Fix RGB to YUV conversion to preserve full data range.
This commit is contained in:
parent
73323ba76a
commit
dd6a0d87ff
1 changed files with 3 additions and 3 deletions
|
@ -276,9 +276,9 @@ static inline guint32 argb2yuv(guint32 color)
|
|||
const gint32 g = (color >> 8) & 0xff;
|
||||
const gint32 b = (color ) & 0xff;
|
||||
|
||||
const guint32 y = (( 263 * r + 516 * g + 100 * b) >> 10) + 16;
|
||||
const guint32 u = ((-152 * r - 298 * g + 450 * b) >> 10) + 128;
|
||||
const guint32 v = (( 450 * r - 376 * g - 73 * b) >> 10) + 128;
|
||||
const guint32 y = (( 306 * r + 601 * g + 116 * b) >> 10);
|
||||
const guint32 u = ((-172 * r - 339 * g + 512 * b) >> 10) + 128;
|
||||
const guint32 v = (( 512 * r - 428 * g - 83 * b) >> 10) + 128;
|
||||
|
||||
return (y << 16) | (u << 8) | v;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue