libavcodec/ra288.c File Reference

#include "avcodec.h"
#include "get_bits.h"
#include "ra288.h"
#include "lpc.h"
#include "celp_math.h"
#include "celp_filters.h"

Go to the source code of this file.

Data Structures

struct  RA288Context

Defines

#define ALT_BITSTREAM_READER_LE
#define MAX_BACKWARD_FILTER_ORDER   36
#define MAX_BACKWARD_FILTER_LEN   40
#define MAX_BACKWARD_FILTER_NONREC   35

Functions

static av_cold int ra288_decode_init (AVCodecContext *avctx)
static void apply_window (float *tgt, const float *m1, const float *m2, int n)
static void convolve (float *tgt, const float *src, int len, int n)
static void decode (RA288Context *ractx, float gain, int cb_coef)
static void do_hybrid_window (int order, int n, int non_rec, float *out, float *hist, float *out2, const float *window)
 Hybrid window filtering, see blocks 36 and 49 of the G.728 specification.
static void backward_filter (float *hist, float *rec, const float *window, float *lpc, const float *tab, int order, int n, int non_rec, int move_size)
 Backward synthesis filter, find the LPC coefficients from past speech data.
static int ra288_decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)

Variables

AVCodec ff_ra_288_decoder


Define Documentation

#define ALT_BITSTREAM_READER_LE

Definition at line 23 of file ra288.c.

#define MAX_BACKWARD_FILTER_LEN   40

Definition at line 31 of file ra288.c.

Referenced by do_hybrid_window().

#define MAX_BACKWARD_FILTER_NONREC   35

Definition at line 32 of file ra288.c.

Referenced by do_hybrid_window().

#define MAX_BACKWARD_FILTER_ORDER   36

Definition at line 30 of file ra288.c.

Referenced by backward_filter(), and do_hybrid_window().


Function Documentation

static void apply_window ( float *  tgt,
const float *  m1,
const float *  m2,
int  n 
) [static]

Definition at line 61 of file ra288.c.

static void backward_filter ( float *  hist,
float *  rec,
const float *  window,
float *  lpc,
const float *  tab,
int  order,
int  n,
int  non_rec,
int  move_size 
) [static]

Backward synthesis filter, find the LPC coefficients from past speech data.

Definition at line 148 of file ra288.c.

Referenced by ra288_decode_frame().

static void convolve ( float *  tgt,
const float *  src,
int  len,
int  n 
) [static]

Definition at line 67 of file ra288.c.

Referenced by do_hybrid_window().

static void decode ( RA288Context ractx,
float  gain,
int  cb_coef 
) [static]

Definition at line 74 of file ra288.c.

static void do_hybrid_window ( int  order,
int  n,
int  non_rec,
float *  out,
float *  hist,
float *  out2,
const float *  window 
) [static]

Hybrid window filtering, see blocks 36 and 49 of the G.728 specification.

Parameters:
order filter order
n input length
non_rec number of non-recursive samples
out filter output
hist pointer to the input history of the filter
out pointer to the non-recursive part of the output
out2 pointer to the recursive part of the output
window pointer to the windowing function table

Definition at line 123 of file ra288.c.

Referenced by backward_filter().

static int ra288_decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
AVPacket avpkt 
) [static]

Definition at line 162 of file ra288.c.

static av_cold int ra288_decode_init ( AVCodecContext avctx  )  [static]

Definition at line 55 of file ra288.c.


Variable Documentation

Initial value:

{
    "real_288",
    AVMEDIA_TYPE_AUDIO,
    CODEC_ID_RA_288,
    sizeof(RA288Context),
    ra288_decode_init,
    NULL,
    NULL,
    ra288_decode_frame,
    .long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
}

Definition at line 206 of file ra288.c.


Generated on Fri Oct 26 02:38:17 2012 for FFmpeg by  doxygen 1.5.8