mlib_VideoColorUYV444int_tmediaLimlib_VideoColorUYV444int_to_YUYV422int(3MLIB)NAMEmlib_VideoColorUYV444int_to_YUYV422int - convert UYV interleaved with
subsampling
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>
void mlib_VideoColorUYV444int_to_YUYV422int(mlib_u32 *YUYV,
const mlib_u8 *UYV,mlib_s32 w,mlib_s32 h,
mlib_s32 dlb, mlib_s32 slb);
DESCRIPTION
The UYV pixel stream is broken apart and recombined into a YUYV pixel
stream. All pixel components are 8-bit unsigned integers. The UYV buf‐
fer has dimensions w and h. Dimension w is assumed to be a multiple of
2. Adjacent U and V values are averaged to get the output U and V val‐
ues. The sequence of values in the input stream is U[r][c], Y[r][c],
V[r][c], U[r][c+1], Y[r][c+1], V[r][c+1], ...
The following equation is used:
YUYV[r][c/2] = (Y[r][c] << 24) |
(((U[r][c] + U[r][c+1]) / 2) << 16) |
(Y[r][c+1] << 8) |
(((V[r][c] + V[r][c+1]) / 2))
where r = 0, 1, 2, ..., h-1; and c = 0, 2, 4, ..., w-2.
PARAMETERS
The function takes the following arguments:
YUYV Pointer to output buffer.
UYV Pointer to input buffer.
w Image width in pixels.
h Image height in lines.
dlb Linebytes for output buffer.
slb Linebytes for input buffer.
RETURN VALUES
None.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Committed │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOmlib_VideoColorYUV444seq_to_YUYV422int(3MLIB), mlib_VideoCol‐
orYUV444int_to_YUYV422int(3MLIB), mlib_VideoCol‐
orYUV444seq_to_UYVY422int(3MLIB), mlib_VideoCol‐
orYUV444int_to_UYVY422int(3MLIB), mlib_VideoCol‐
orUYV444int_to_UYVY422int(3MLIB), attributes(5)SunOS 5.11mlib_VideoColorUYV444int_to_YUYV422int(3MLIB)