#include "avcodec.h"#include "get_bits.h"#include "ra288.h"#include "lpc.h"#include "celp_math.h"#include "celp_filters.h"#include "dsputil.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 |
| #define | RA288_BLOCK_SIZE 5 |
| #define | RA288_BLOCKS_PER_FRAME 32 |
Functions | |
| static av_cold int | ra288_decode_init (AVCodecContext *avctx) |
| 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 (RA288Context *ractx, 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 (RA288Context *ractx, 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 *got_frame_ptr, AVPacket *avpkt) |
Variables | |
| AVCodec | ff_ra_288_decoder |
| #define MAX_BACKWARD_FILTER_LEN 40 |
| #define MAX_BACKWARD_FILTER_NONREC 35 |
| #define MAX_BACKWARD_FILTER_ORDER 36 |
| #define RA288_BLOCK_SIZE 5 |
| #define RA288_BLOCKS_PER_FRAME 32 |
| static void backward_filter | ( | RA288Context * | ractx, | |
| 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 157 of file ra288.c.
Referenced by ra288_decode_frame().
| static void convolve | ( | float * | tgt, | |
| const float * | src, | |||
| int | len, | |||
| int | n | |||
| ) | [static] |
| static void decode | ( | RA288Context * | ractx, | |
| float | gain, | |||
| int | cb_coef | |||
| ) | [static] |
| static void do_hybrid_window | ( | RA288Context * | ractx, | |
| 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.
| 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 129 of file ra288.c.
Referenced by backward_filter().
| static int ra288_decode_frame | ( | AVCodecContext * | avctx, | |
| void * | data, | |||
| int * | got_frame_ptr, | |||
| AVPacket * | avpkt | |||
| ) | [static] |
| static av_cold int ra288_decode_init | ( | AVCodecContext * | avctx | ) | [static] |
Initial value:
{
.name = "real_288",
.type = AVMEDIA_TYPE_AUDIO,
.id = CODEC_ID_RA_288,
.priv_data_size = sizeof(RA288Context),
.init = ra288_decode_init,
.decode = ra288_decode_frame,
.capabilities = CODEC_CAP_DR1,
.long_name = NULL_IF_CONFIG_SMALL("RealAudio 2.0 (28.8K)"),
}
1.5.8