FFmpeg
|
#include "libavutil/channel_layout.h"
#include "avcodec.h"
#include "codec_internal.h"
#include "decode.h"
#include "get_bits.h"
#include "ilbcdata.h"
Go to the source code of this file.
Data Structures | |
struct | ILBCFrame |
struct | ILBCContext |
Macros | |
#define | LPC_N_20MS 1 |
#define | LPC_N_30MS 2 |
#define | LPC_N_MAX 2 |
#define | LSF_NSPLIT 3 |
#define | NASUB_MAX 4 |
#define | LPC_FILTERORDER 10 |
#define | NSUB_MAX 6 |
#define | SUBL 40 |
#define | ST_MEM_L_TBL 85 |
#define | MEM_LF_TBL 147 |
#define | STATE_SHORT_LEN_20MS 57 |
#define | STATE_SHORT_LEN_30MS 58 |
#define | BLOCKL_MAX 240 |
#define | CB_MEML 147 |
#define | CB_NSTAGES 3 |
#define | CB_HALFFILTERLEN 4 |
#define | CB_FILTERLEN 8 |
#define | ENH_NBLOCKS_TOT 8 |
#define | ENH_BLOCKL 80 |
#define | ENH_BUFL (ENH_NBLOCKS_TOT)*ENH_BLOCKL |
#define | ENH_BUFL_FILTEROVERHEAD 3 |
#define | BLOCKL_MAX 240 |
#define | NSUB_20MS 4 |
#define | NSUB_30MS 6 |
#define | NSUB_MAX 6 |
#define | NASUB_20MS 2 |
#define | NASUB_30MS 4 |
#define | NASUB_MAX 4 |
#define | STATE_LEN 80 |
#define | STATE_SHORT_LEN_30MS 58 |
#define | STATE_SHORT_LEN_20MS 57 |
#define | SPL_MUL_16_16(a, b) ((int32_t) (((int16_t)(a)) * ((int16_t)(b)))) |
#define | SPL_MUL_16_16_RSFT(a, b, c) (SPL_MUL_16_16(a, b) >> (c)) |
#define | SPL_SHIFT_W32(x, c) (((c) >= 0) ? ((x) << (c)) : ((x) >> (-(c)))) |
Functions | |
static int | unpack_frame (ILBCContext *s, const uint8_t *buf, int size) |
static void | index_conv (int16_t *index) |
static void | lsf_dequantization (int16_t *lsfdeq, int16_t *index, int16_t lpc_n) |
static void | lsf_check_stability (int16_t *lsf, int dim, int nb_vectors) |
static void | lsf_interpolate (int16_t *out, const int16_t *in1, const int16_t *in2, int16_t coef, int size) |
static void | lsf2lsp (const int16_t *lsf, int16_t *lsp, int order) |
static void | get_lsp_poly (const int16_t *lsp, int32_t *f) |
static void | lsf2poly (int16_t *a, const int16_t *lsf) |
static void | lsp_interpolate2polydec (int16_t *a, const int16_t *lsf1, const int16_t *lsf2, int coef, int length) |
static void | bw_expand (int16_t *out, const int16_t *in, const int16_t *coef, int length) |
static void | lsp_interpolate (int16_t *syntdenum, int16_t *weightdenum, const int16_t *lsfdeq, int16_t length, ILBCContext *s) |
static void | filter_mafq12 (const int16_t *in_ptr, int16_t *out_ptr, const int16_t *B, int16_t B_length, int16_t length) |
static void | filter_arfq12 (const int16_t *data_in, int16_t *data_out, const int16_t *coefficients, int coefficients_length, int data_length) |
static void | state_construct (int16_t ifm, const int16_t *idx, const int16_t *synt_denum, int16_t *Out_fix, int16_t len) |
static int16_t | gain_dequantization (int index, int max_in, int stage) |
static void | vector_rmultiplication (int16_t *out, const int16_t *in, const int16_t *win, int length, int shift) |
static void | vector_multiplication (int16_t *out, const int16_t *in, const int16_t *win, int length, int shift) |
static void | add_vector_and_shift (int16_t *out, const int16_t *in1, const int16_t *in2, int length, int shift) |
static void | create_augmented_vector (int index, const int16_t *buffer, int16_t *cbVec) |
static void | get_codebook (int16_t *cbvec, int16_t *mem, int16_t index, int16_t lMem, int16_t cbveclen) |
static void | construct_vector (int16_t *decvector, const int16_t *index, const int16_t *gain_index, int16_t *mem, int16_t lMem, int16_t veclen) |
static void | reverse_memcpy (int16_t *dest, const int16_t *source, int length) |
static void | decode_residual (ILBCContext *s, ILBCFrame *encbits, int16_t *decresidual, const int16_t *syntdenum) |
static int16_t | max_abs_value_w16 (const int16_t *vector, int length) |
static int16_t | get_size_in_bits (uint32_t n) |
static int32_t | scale_dot_product (const int16_t *v1, const int16_t *v2, int length, int scaling) |
static void | correlation (int32_t *corr, int32_t *ener, const int16_t *buffer, int16_t lag, int16_t blen, int16_t srange, int16_t scale) |
static int16_t | norm_w32 (int32_t a) |
static int32_t | div_w32_w16 (int32_t num, int16_t den) |
static void | do_plc (int16_t *plc_residual, int16_t *plc_lpc, int16_t PLI, const int16_t *decresidual, const int16_t *lpc, int16_t inlag, ILBCContext *s) |
static int | xcorr_coeff (const int16_t *target, const int16_t *regressor, int16_t subl, int16_t searchLen, int16_t offset, int16_t step) |
static void | hp_output (int16_t *signal, const int16_t *ba, int16_t *y, int16_t *x, int16_t len) |
static int | ilbc_decode_frame (AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *avpkt) |
static av_cold int | ilbc_decode_init (AVCodecContext *avctx) |
Variables | |
const FFCodec | ff_ilbc_decoder |
#define ENH_BUFL (ENH_NBLOCKS_TOT)*ENH_BLOCKL |
|
static |
Definition at line 129 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
Definition at line 272 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
Definition at line 285 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
Definition at line 313 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
Definition at line 336 of file ilbcdec.c.
Referenced by lsp_interpolate2polydec().
|
static |
Definition at line 346 of file ilbcdec.c.
Referenced by lsf2poly().
|
static |
Definition at line 369 of file ilbcdec.c.
Referenced by lsf2poly().
|
static |
Definition at line 396 of file ilbcdec.c.
Referenced by lsp_interpolate2polydec().
|
static |
Definition at line 423 of file ilbcdec.c.
Referenced by lsp_interpolate().
|
static |
Definition at line 432 of file ilbcdec.c.
Referenced by lsp_interpolate().
|
static |
Definition at line 441 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
Definition at line 483 of file ilbcdec.c.
Referenced by get_codebook(), and state_construct().
|
static |
Definition at line 503 of file ilbcdec.c.
Referenced by ilbc_decode_frame(), and state_construct().
|
static |
Definition at line 525 of file ilbcdec.c.
Referenced by decode_residual().
Definition at line 605 of file ilbcdec.c.
Referenced by construct_vector().
|
static |
Definition at line 612 of file ilbcdec.c.
Referenced by create_augmented_vector().
|
static |
Definition at line 620 of file ilbcdec.c.
Referenced by create_augmented_vector().
|
static |
Definition at line 628 of file ilbcdec.c.
Referenced by create_augmented_vector().
|
static |
Definition at line 636 of file ilbcdec.c.
Referenced by get_codebook().
|
static |
Definition at line 651 of file ilbcdec.c.
Referenced by construct_vector().
|
static |
Definition at line 720 of file ilbcdec.c.
Referenced by decode_residual().
|
static |
Definition at line 759 of file ilbcdec.c.
Referenced by decode_residual().
|
static |
Definition at line 769 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
Definition at line 870 of file ilbcdec.c.
Referenced by do_plc(), and xcorr_coeff().
|
static |
|
static |
Definition at line 907 of file ilbcdec.c.
Referenced by correlation(), do_plc(), and xcorr_coeff().
|
static |
Definition at line 917 of file ilbcdec.c.
Referenced by do_plc(), and yae_align().
|
static |
Definition at line 933 of file ilbcdec.c.
Referenced by do_plc(), and xcorr_coeff().
|
static |
Definition at line 952 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
Definition at line 1200 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
Definition at line 1311 of file ilbcdec.c.
Referenced by ilbc_decode_frame().
|
static |
|
static |
const FFCodec ff_ilbc_decoder |