plc.h File Reference

Go to the source code of this file.

Classes

struct  plc_state_t

Defines

#define _SPANDSP_PLC_H_
#define PLC_PITCH_MIN   120
#define PLC_PITCH_MAX   40
#define PLC_PITCH_OVERLAP_MAX   (PLC_PITCH_MIN >> 2)
#define CORRELATION_SPAN   160
#define PLC_HISTORY_LEN   (CORRELATION_SPAN + PLC_PITCH_MIN)

Functions

int plc_rx (plc_state_t *s, int16_t amp[], int len)
 Process a block of received audio samples for PLC.
int plc_fillin (plc_state_t *s, int16_t amp[], int len)
 Fill-in a block of missing audio samples.
plc_state_tplc_init (plc_state_t *s)
 Initialise a PLC context.
int plc_free (plc_state_t *s)


Detailed Description


Define Documentation

#define CORRELATION_SPAN   160

The length over which the AMDF function looks for similarity (20 ms)

Referenced by plc_fillin().

#define PLC_HISTORY_LEN   (CORRELATION_SPAN + PLC_PITCH_MIN)

History buffer length. The buffer much also be at leat 1.25 times PLC_PITCH_MIN, but that is much smaller than the buffer needs to be for the pitch assessment.

Referenced by plc_fillin().

#define PLC_PITCH_MAX   40

Maximum allowed pitch (200 Hz)

Referenced by plc_fillin().

#define PLC_PITCH_MIN   120

Minimum allowed pitch (66 Hz)

Referenced by plc_fillin().

#define PLC_PITCH_OVERLAP_MAX   (PLC_PITCH_MIN >> 2)

Maximum pitch OLA window


Function Documentation

int plc_fillin ( plc_state_t s,
int16_t  amp[],
int  len 
)

Fill-in a block of missing audio samples.

Fill-in a block of missing audio samples.

Parameters:
s The packet loss concealer context.
amp The audio sample buffer.
len The number of samples to be synthesised.
Returns:
The number of samples synthesized.

References CORRELATION_SPAN, plc_state_t::history, plc_state_t::missing_samples, plc_state_t::pitch, plc_state_t::pitch_offset, plc_state_t::pitchbuf, PLC_HISTORY_LEN, PLC_PITCH_MAX, and PLC_PITCH_MIN.

int plc_free ( plc_state_t s  ) 

Free a packet loss concealer context.

Parameters:
s The packet loss concealer context.
Returns:
0 for OK.

plc_state_t* plc_init ( plc_state_t s  ) 

Initialise a PLC context.

Initialise a packet loss concealer context.

Parameters:
s The packet loss concealer context.
Returns:
A pointer to the the packet loss concealer context.

int plc_rx ( plc_state_t s,
int16_t  amp[],
int  len 
)

Process a block of received audio samples for PLC.

Process a block of received audio samples for PLC.

Parameters:
s The packet loss concealer context.
amp The audio sample buffer.
len The number of samples in the buffer.
Returns:
The number of samples in the buffer.

References plc_state_t::missing_samples, plc_state_t::pitch, plc_state_t::pitch_offset, and plc_state_t::pitchbuf.


Generated on Tue Oct 7 20:25:51 2008 for spandsp by  doxygen 1.5.6