# mlib_videocoloruyv444int_to_uyvy422int(3mlib) [sunos man page]

```mlib_VideoColorUYV444int_to_UYVY422int(3MLIB)		    mediaLib Library Functions		     mlib_VideoColorUYV444int_to_UYVY422int(3MLIB)

NAME
mlib_VideoColorUYV444int_to_UYVY422int - convert UYV interleaved with subsampling

SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>

void mlib_VideoColorUYV444int_to_UYVY422int(mlib_u32 *UYVY, 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 UYVY pixel stream. All pixel components are 8-bit unsigned integers. The UYV
buffer 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
values. 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:

UYVY[r][c/2] = (((U[r][c] + U[r][c+1]) / 2) << 24) |
(Y[r][c] << 16) |
(((V[r][c] + V[r][c+1]) / 2) << 8) |
(Y[r][c+1])

where r = 0, 1, 2, ..., h-1; and c = 0, 2, 4, ..., w-2.

PARAMETERS
The function takes the following arguments:

UYVY	       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	     |Evolving			   |
+-----------------------------+-----------------------------+
|MT-Level		     |MT-Safe			   |
+-----------------------------+-----------------------------+

mlib_VideoColorYUV444seq_to_YUYV422int(3MLIB),		      mlib_VideoColorYUV444int_to_YUYV422int(3MLIB),		    mlib_VideoCol-
orYUV444seq_to_UYVY422int(3MLIB),       mlib_VideoColorYUV444int_to_UYVY422int(3MLIB),	    mlib_VideoColorUYV444int_to_YUYV422int(3MLIB),
attributes(5)

SunOS 5.10							    10 Nov 2004 		     mlib_VideoColorUYV444int_to_UYVY422int(3MLIB)```

## Check Out this Related Man Page

```mlib_VideoColorUYV444int_to_UYVY422int(3MLIB)		    mediaLib Library Functions		     mlib_VideoColorUYV444int_to_UYVY422int(3MLIB)

NAME
mlib_VideoColorUYV444int_to_UYVY422int - convert UYV interleaved with subsampling

SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>

void mlib_VideoColorUYV444int_to_UYVY422int(mlib_u32 *UYVY,
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 UYVY pixel stream. All pixel components are 8-bit unsigned integers. The UYV
buffer 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
values. 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:

UYVY[r][c/2] = (((U[r][c] + U[r][c+1]) / 2) << 24) |
(Y[r][c] << 16) |
(((V[r][c] + V[r][c+1]) / 2) << 8) |
(Y[r][c+1])

where r = 0, 1, 2, ..., h-1; and c = 0, 2, 4, ..., w-2.

PARAMETERS
The function takes the following arguments:

UYVY    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			   |
+-----------------------------+-----------------------------+