Name | Synopsis | Description | Parameters | Return Values | Attributes | See Also
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> void mlib_VideoColorYUV411seq_to_YUYV422int(mlib_u32 *YUYV, const mlib_u8 *Y,const mlib_u8 *U, const mlib_u8 *V, mlib_s32 w, mlib_s32 h, mlib_s32 dlb, mlib_s32 ylb, mlib_s32 uvlb);
The Y, U, V pixel streams are combined into a YUYV pixel stream. All pixel components are 8-bit unsigned integers. The Y buffer has dimensions w and h. The U and V buffers have dimensions w/4 and h. Dimension w is assumed to be a multiple of 4. In each row, every 4 Y values use the same U and V values.
The following equation is used:
YUYV[r][c/2] = (Y[r][c] << 24) | (U[r][c/4] << 16) | (Y[r][c+1] << 8) | (V[r][c/4]) YUYV[r][c/2+1] = (Y[r][c+2] << 24) | (U[r][c/4] << 16) | (Y[r][c+3] << 8) | (V[r][c/4])
where r = 0, 2, 4, ..., h-2; and c = 0, 2, 4, ..., w-2.
The function takes the following arguments:
Pointer to output buffer.
Pointer to Y input buffer.
Pointer to U input buffer.
Pointer to V input buffer.
Image width in pixels.
Image height in lines.
Linebytes for YUYV buffer.
Linebytes for Y buffer.
Linebytes for U and V buffers.
None.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE |
ATTRIBUTE VALUE |
---|---|
Interface Stability |
Committed |
MT-Level |
MT-Safe |
mlib_VideoColorYUV420seq_to_YUYV422int(3MLIB), mlib_VideoColorYUV422seq_to_YUYV422int(3MLIB), mlib_VideoColorYUV420seq_to_UYVY422int(3MLIB), mlib_VideoColorYUV411seq_to_UYVY422int(3MLIB), mlib_VideoColorYUV422seq_to_UYVY422int(3MLIB), attributes(5)
Name | Synopsis | Description | Parameters | Return Values | Attributes | See Also