man pages section 3: Multimedia Library Functions

Exit Print View

Updated: July 2014
 
 

mlib_SignalUpSample_S16S_S16S (3MLIB)

Name

mlib_SignalUpSample_S16_S16, mlib_SignalUpSample_S16S_S16S, mlib_SignalUpSample_F32_F32, mlib_SignalUpSample_F32S_F32S - signal upsampling

Synopsis

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

mlib_status mlib_SignalUpSample_S16_S16(mlib_s16 *dst, 
     const mlib_s16 *src, mlib_s32 factor, mlib_s32 phase, 
     mlib_s32 n);
mlib_status mlib_SignalUpSample_S16S_S16S(mlib_s16 *dst, 
     const mlib_s16 *src, mlib_s32 factor, mlib_s32 phase, 
     mlib_s32 n);
mlib_status mlib_SignalUpSample_F32_F32(mlib_f32 *dst, 
     const mlib_f32 *src, mlib_s32 factor, mlib_s32 phase, 
     mlib_s32 n);
mlib_status mlib_SignalUpSample_F32S_F32S(mlib_f32 *dst, 
     const mlib_f32 *src, mlib_s32 factor, mlib_s32 phase, 
     mlib_s32 n);

Description

Each of these functions performs upsampling.

For monaural signals, the following equation is used:

dst[i] = src[k]  if i == k*factor + phase
dst[i] = 0       if i != k*factor + phase

where k = 0, 1, ..., (n - 1); i = 0, 1, ..., (n*factor - 1).

For stereo signals, the following equation is used:

dst[2*i]     = src[2*k]      if i == k*factor + phase
dst[2*i]     = 0             if i != k*factor + phase

dst[2*i + 1] = src[2*k + 1]  if i == k*factor + phase
dst[2*i + 1] = 0             if i != k*factor + phase

where k = 0, 1, ..., (n - 1); i = 0, 1, ..., (n*factor - 1).

Parameters

Each of the functions takes the following arguments:

dst

Output signal array.

src

Input signal array.

factor

Factor by which to upsample. factor ≥ 1.

phase

Parameter that determines relative position of an input value, within the output signal. 0 ≤ phase < factor.

n

Number of samples in the input signal array.

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_SignalDownSample_S16_S16(3MLIB), attributes(5)