#include <inttypes.h>
#include "avcodec.h"
#include "mathops.h"
#include "lsp.h"
#include "celp_math.h"
Go to the source code of this file.
Defines | |
#define | FRAC_BITS 14 |
Functions | |
void | ff_acelp_reorder_lsf (int16_t *lsfq, int lsfq_min_distance, int lsfq_min, int lsfq_max, int lp_order) |
(I.F) means fixed-point value with F fractional and I integer bits | |
void | ff_acelp_lsf2lsp (int16_t *lsp, const int16_t *lsf, int lp_order) |
Convert LSF to LSP. | |
static void | lsp2poly (int *f, const int16_t *lsp, int lp_half_order) |
decodes polynomial coefficients from LSP | |
void | ff_acelp_lsp2lpc (int16_t *lp, const int16_t *lsp, int lp_half_order) |
LSP to LP conversion (3.2.6 of G.729). | |
void | ff_acelp_lp_decode (int16_t *lp_1st, int16_t *lp_2nd, const int16_t *lsp_2nd, const int16_t *lsp_prev, int lp_order) |
Interpolate LSP for the first subframe and convert LSP -> LP for both subframes (3.2.5 and 3.2.6 of G.729). |
#define FRAC_BITS 14 |
Definition at line 26 of file lsp.c.
Referenced by add_yblock(), compute_stereo(), decode_frame(), decode_init(), encode_frame(), ff_snow_inner_add_yblock(), gen_image(), get_block_rd(), get_dc(), imdct36(), int_cos(), lsp2poly(), main(), predict_slice(), predict_slice_buffered(), swf_write_header(), and swf_write_video().
void ff_acelp_lp_decode | ( | int16_t * | lp_1st, | |
int16_t * | lp_2nd, | |||
const int16_t * | lsp_2nd, | |||
const int16_t * | lsp_prev, | |||
int | lp_order | |||
) |
Interpolate LSP for the first subframe and convert LSP -> LP for both subframes (3.2.5 and 3.2.6 of G.729).
lp_1st | [out] decoded LP coefficients for first subframe (-0x8000 <= (3.12) < 0x8000) | |
lp_2nd | [out] decoded LP coefficients for second subframe (-0x8000 <= (3.12) < 0x8000) | |
lsp_2nd | LSP coefficients of the second subframe (-0x8000 <= (0.15) < 0x8000) | |
lsp_prev | LSP coefficients from the second subframe of the previous frame (-0x8000 <= (0.15) < 0x8000) | |
lp_order | LP filter order |
void ff_acelp_lsf2lsp | ( | int16_t * | lsp, | |
const int16_t * | lsf, | |||
int | lp_order | |||
) |
void ff_acelp_lsp2lpc | ( | int16_t * | lp, | |
const int16_t * | lsp, | |||
int | lp_half_order | |||
) |
LSP to LP conversion (3.2.6 of G.729).
lp | [out] decoded LP coefficients (-0x8000 <= (3.12) < 0x8000) | |
lsp | LSP coefficients (-0x8000 <= (0.15) < 0x8000) | |
lp_half_order | LP filter order, divided by 2 |
Definition at line 81 of file lsp.c.
Referenced by ff_acelp_lp_decode().
void ff_acelp_reorder_lsf | ( | int16_t * | lsfq, | |
int | lsfq_min_distance, | |||
int | lsfq_min, | |||
int | lsfq_max, | |||
int | lp_order | |||
) |
(I.F) means fixed-point value with F fractional and I integer bits
ensure a minimum distance between LSFs
lsfq | [in/out] LSF to check and adjust | |
lsfq_min_distance | minimum distance between LSFs | |
lsfq_min | minimum allowed LSF value | |
lsfq_max | maximum allowed LSF value | |
lp_order | LP filter order |
static void lsp2poly | ( | int * | f, | |
const int16_t * | lsp, | |||
int | lp_half_order | |||
) | [static] |
decodes polynomial coefficients from LSP
f | [out] decoded polynomial coefficients (-0x20000000 <= (3.22) <= 0x1fffffff) | |
lsp | LSP coefficients (-0x8000 <= (0.15) <= 0x7fff) |
Definition at line 64 of file lsp.c.
Referenced by ff_acelp_lsp2lpc().