man pages section 3: Multimedia Library Functions

Exit Print View

Updated: July 2014
 
 

mlib_VideoInterpY_S16_U8_16x16(3MLIB)

Name

mlib_VideoInterpY_S16_U8_16x16, mlib_VideoInterpY_S16_U8_16x8, mlib_VideoInterpY_S16_U8_8x16, mlib_VideoInterpY_S16_U8_8x8, mlib_VideoInterpY_S16_U8_8x4 - half-pixel interpolation in the Y direction

Synopsis

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

mlib_status mlib_VideoInterpY_S16_U8_16x16(mlib_s16 *mc_block,
     const mlib_u8 *ref_block, mlib_s32 frm_stride,
     mlib_s32 fld_stride);
mlib_status mlib_VideoInterpY_S16_U8_16x8(mlib_s16 *mc_block,
     const mlib_u8 *ref_block, mlib_s32 frm_stride,
     mlib_s32 fld_stride);
mlib_status mlib_VideoInterpY_S16_U8_8x16(mlib_s16 *mc_block,
     const mlib_u8 *ref_block, mlib_s32 frm_stride,
     mlib_s32 fld_stride);
mlib_status mlib_VideoInterpY_S16_U8_8x8(mlib_s16 *mc_block,
     const mlib_u8 *ref_block, mlib_s32 frm_stride,
     mlib_s32 fld_stride);
mlib_status mlib_VideoInterpY_S16_U8_8x4(mlib_s16 *mc_block,
     const mlib_u8 *ref_block, mlib_s32 frm_stride,
     mlib_s32 fld_stride);

Description

Each of these functions performs half-pixel interpolation in the Y direction for a reference block of data type mlib_u8 and a current block of data type mlib_s16. In this mode, the output of this function must be added to the IDCT output to reconstruct the block in the current frame. Thus, the stride applies only to the input reference block.

Parameters

Each of the functions takes the following arguments:

mc_block

Pointer to the motion-compensated reference block. mc_block must be 8-byte aligned.

ref_block

Pointer to the reference block.

frm_stride

Stride, in bytes, between adjacent rows in a frame in the reference block. frm_stride must be a multiple of eight.

fld_stride

Stride, in bytes, between adjacent rows in a field in the reference block. fld_stride must be a multiple of eight.

Return Values

Each of the functions returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
MT-Safe

See also

mlib_VideoAddBlock_U8_S16(3MLIB), mlib_VideoCopyRef_S16_U8(3MLIB), mlib_VideoCopyRef_S16_U8_16x16(3MLIB), mlib_VideoCopyRef_U8_U8(3MLIB), mlib_VideoCopyRef_U8_U8_16x16(3MLIB), mlib_VideoCopyRefAve_U8_U8(3MLIB), mlib_VideoCopyRefAve_U8_U8_16x16(3MLIB), mlib_VideoH263OverlappedMC_S16_U8(3MLIB), mlib_VideoH263OverlappedMC_U8_U8(3MLIB), mlib_VideoInterpAveX_U8_U8(3MLIB), mlib_VideoInterpAveX_U8_U8_16x16(3MLIB), mlib_VideoInterpAveXY_U8_U8(3MLIB), mlib_VideoInterpAveXY_U8_U8_16x16(3MLIB), mlib_VideoInterpAveY_U8_U8(3MLIB), mlib_VideoInterpAveY_U8_U8_16x16(3MLIB), mlib_VideoInterpX_S16_U8(3MLIB), mlib_VideoInterpX_S16_U8_16x16(3MLIB), mlib_VideoInterpX_U8_U8(3MLIB), mlib_VideoInterpXY_S16_U8(3MLIB), mlib_VideoInterpXY_S16_U8_16x16(3MLIB), mlib_VideoInterpXY_U8_U8(3MLIB), mlib_VideoInterpXY_U8_U8_16x16(3MLIB), mlib_VideoInterpY_S16_U8(3MLIB), mlib_VideoInterpY_U8_U8(3MLIB), mlib_VideoInterpY_U8_U8_16x16(3MLIB), mlib_VideoP64Decimate_U8_U8(3MLIB), mlib_VideoP64Loop_S16_U8(3MLIB), mlib_VideoP64Loop_U8_U8(3MLIB), attributes(5)