FFmpeg
4.0
|
Opus SILK decoder. More...
Go to the source code of this file.
Data Structures | |
struct | SilkFrame |
struct | SilkContext |
Macros | |
#define | SILK_MAX_LAG (288 + LTP_ORDER / 2) |
Maximum residual history according to 4.2.7.6.1. More... | |
#define | LTP_ORDER 5 |
Order of the LTP filter. More... | |
Functions | |
static void | silk_stabilize_lsf (int16_t nlsf[16], int order, const uint16_t min_delta[17]) |
static int | silk_is_lpc_stable (const int16_t lpc[16], int order) |
static void | silk_lsp2poly (const int32_t lsp[16], int32_t pol[16], int half_order) |
static void | silk_lsf2lpc (const int16_t nlsf[16], float lpcf[16], int order) |
static void | silk_decode_lpc (SilkContext *s, SilkFrame *frame, OpusRangeCoder *rc, float lpc_leadin[16], float lpc[16], int *lpc_order, int *has_lpc_leadin, int voiced) |
static void | silk_count_children (OpusRangeCoder *rc, int model, int32_t total, int32_t child[2]) |
static void | silk_decode_excitation (SilkContext *s, OpusRangeCoder *rc, float *excitationf, int qoffset_high, int active, int voiced) |
static void | silk_decode_frame (SilkContext *s, OpusRangeCoder *rc, int frame_num, int channel, int coded_channels, int active, int active1) |
static void | silk_unmix_ms (SilkContext *s, float *l, float *r) |
static void | silk_flush_frame (SilkFrame *frame) |
int | ff_silk_decode_superframe (SilkContext *s, OpusRangeCoder *rc, float *output[2], enum OpusBandwidth bandwidth, int coded_channels, int duration_ms) |
Decode the LP layer of one Opus frame (which may correspond to several SILK frames). More... | |
void | ff_silk_free (SilkContext **ps) |
void | ff_silk_flush (SilkContext *s) |
int | ff_silk_init (AVCodecContext *avctx, SilkContext **ps, int output_channels) |
Opus SILK decoder.
Definition in file opus_silk.c.
#define SILK_MAX_LAG (288 + LTP_ORDER / 2) |
Maximum residual history according to 4.2.7.6.1.
Definition at line 501 of file opus_silk.c.
Referenced by silk_decode_frame().
#define LTP_ORDER 5 |
Order of the LTP filter.
Definition at line 504 of file opus_silk.c.
Referenced by silk_decode_frame().
|
inlinestatic |
Definition at line 65 of file opus_silk.c.
Referenced by silk_decode_lpc().
Definition at line 143 of file opus_silk.c.
Referenced by silk_lsf2lpc().
Definition at line 201 of file opus_silk.c.
Referenced by silk_lsf2lpc().
Definition at line 217 of file opus_silk.c.
Referenced by silk_decode_lpc().
|
inlinestatic |
Definition at line 302 of file opus_silk.c.
Referenced by silk_decode_frame().
|
inlinestatic |
Definition at line 399 of file opus_silk.c.
Referenced by silk_decode_excitation().
|
inlinestatic |
Definition at line 412 of file opus_silk.c.
Referenced by silk_decode_frame().
|
static |
Definition at line 506 of file opus_silk.c.
Referenced by ff_silk_decode_superframe().
|
static |
Definition at line 733 of file opus_silk.c.
Referenced by ff_silk_decode_superframe().
Definition at line 763 of file opus_silk.c.
Referenced by ff_silk_decode_superframe(), and ff_silk_flush().
int ff_silk_decode_superframe | ( | SilkContext * | s, |
OpusRangeCoder * | rc, | ||
float * | output[2], | ||
enum OpusBandwidth | bandwidth, | ||
int | coded_channels, | ||
int | duration_ms | ||
) |
Decode the LP layer of one Opus frame (which may correspond to several SILK frames).
Definition at line 781 of file opus_silk.c.
Referenced by opus_decode_frame().
void ff_silk_free | ( | SilkContext ** | ps | ) |
Definition at line 845 of file opus_silk.c.
Referenced by opus_decode_close().
void ff_silk_flush | ( | SilkContext * | s | ) |
Definition at line 850 of file opus_silk.c.
Referenced by ff_silk_init(), opus_decode_flush(), and opus_decode_frame().
int ff_silk_init | ( | AVCodecContext * | avctx, |
SilkContext ** | ps, | ||
int | output_channels | ||
) |
Definition at line 858 of file opus_silk.c.
Referenced by opus_decode_init().