man pages section 3: Multimedia Library Functions

Exit Print View

Updated: July 2014
 
 

mlib_SignalAutoCorrel_F32 (3MLIB)

Name

mlib_SignalAutoCorrel_S16, mlib_SignalAutoCorrel_S16S, mlib_SignalAutoCorrel_F32, mlib_SignalAutoCorrel_F32S - signal auto-correlation

Synopsis

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

mlib_status mlib_SignalAutoCorrel_S16(mlib_d64 *correl, 
     const mlib_s16 *src, mlib_s32 disp, mlib_s32 n);
mlib_status mlib_SignalAutoCorrel_S16S(mlib_d64 *correl, 
     const mlib_s16 *src, mlib_s32 disp, mlib_s32 n);
mlib_status mlib_SignalAutoCorrel_F32(mlib_d64 *correl, 
     const mlib_f32 *src, mlib_s32 disp, mlib_s32 n);
mlib_status mlib_SignalAutoCorrel_F32S(mlib_d64 *correl, 
     const mlib_f32 *src, mlib_s32 disp, mlib_s32 n);

Description

Each of these functions performs auto-correlation.

For monaural signals, the following equation is used:

              1    n-d-1
correl[0] = ----- * SUM (src[i] * src[i + d])
            n - d   i=0

For stereo signals, the following equation is used:

              1    n-d-1
correl[0] = ----- * SUM (src[2*i] * src[2*(i + d)])
            n - d   i=0

              1    n-d-1
correl[1] = ----- * SUM (src[2*i + 1] * src[2*(i + d) + 1])
            n - d   i=0

where d = disp.

Parameters

Each of the functions takes the following arguments:

correl

Pointer to the auto-correlation array. In the stereo version, correl[0] contains the auto-correlation of channel 0, and correl[1] contains the auto-correlation of channel 1.

src

Source signal array.

disp

Displacement. 0 ≤ disp < n.

n

Number of samples in the source 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_SignalCrossCorrel_S16(3MLIB), attributes(5)