cc [ flag... ] file... –lmlib [ library... ] #include <mlib.h> void mlib_VideoColorYUV422seq_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/2 and h. Dimensions w and h are assumed to be even. Similar to mlib_VideoColorYUV420seq_to_YUYV422int() except U and V are not sampled in the h direction.
The following equation is used:
YUYV[r][c/2] = (Y[r][c] << 24) | (U[r][c/2] << 16) | (Y[r][c+1] << 8) | (V[r][c/2])
where r = 0, 1, 2, ..., h-1; 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:
|
mlib_VideoColorYUV420seq_to_YUYV422int(3MLIB), mlib_VideoColorYUV411seq_to_YUYV422int(3MLIB), mlib_VideoColorYUV420seq_to_UYVY422int(3MLIB), mlib_VideoColorYUV411seq_to_UYVY422int(3MLIB), mlib_VideoColorYUV422seq_to_UYVY422int(3MLIB), attributes(5)