FFmpeg
|
#include <math.h>
#include <stdint.h>
#include "libavutil/common.h"
#include "libavutil/float_dsp.h"
#include "avcodec.h"
#include "fft.h"
#include "internal.h"
Go to the source code of this file.
Data Structures | |
struct | TwinVQFrameMode |
Parameters and tables that are different for each frame type. More... | |
struct | TwinVQFrameData |
struct | TwinVQModeTab |
Parameters and tables that are different for every combination of bitrate/sample rate. More... | |
struct | TwinVQContext |
Macros | |
#define | TWINVQ_PPC_SHAPE_CB_SIZE 64 |
#define | TWINVQ_PPC_SHAPE_LEN_MAX 60 |
#define | TWINVQ_SUB_AMP_MAX 4500.0 |
#define | TWINVQ_MULAW_MU 100.0 |
#define | TWINVQ_GAIN_BITS 8 |
#define | TWINVQ_AMP_MAX 13000.0 |
#define | TWINVQ_SUB_GAIN_BITS 5 |
#define | TWINVQ_WINDOW_TYPE_BITS 4 |
#define | TWINVQ_PGAIN_MU 200 |
#define | TWINVQ_LSP_COEFS_MAX 20 |
#define | TWINVQ_LSP_SPLIT_MAX 4 |
#define | TWINVQ_CHANNELS_MAX 2 |
#define | TWINVQ_SUBBLOCKS_MAX 16 |
#define | TWINVQ_BARK_N_COEF_MAX 4 |
Enumerations | |
enum | TwinVQCodec { TWINVQ_CODEC_VQF, TWINVQ_CODEC_METASOUND } |
enum | TwinVQFrameType { TWINVQ_FT_SHORT = 0, TWINVQ_FT_MEDIUM, TWINVQ_FT_LONG, TWINVQ_FT_PPC } |
Functions | |
static void | twinvq_memset_float (float *buf, float val, int size) |
static float | twinvq_mulawinv (float y, float clip, float mu) |
int | ff_twinvq_decode_frame (AVCodecContext *avctx, void *data, int *got_frame_ptr, AVPacket *avpkt) |
av_cold int | ff_twinvq_decode_close (AVCodecContext *avctx) |
av_cold int | ff_twinvq_decode_init (AVCodecContext *avctx) |
Variables | |
enum TwinVQFrameType | ff_twinvq_wtype_to_ftype_table [] |
#define TWINVQ_PPC_SHAPE_CB_SIZE 64 |
Definition at line 46 of file twinvq.h.
Referenced by read_and_decode_spectrum().
#define TWINVQ_PPC_SHAPE_LEN_MAX 60 |
Definition at line 47 of file twinvq.h.
Referenced by read_and_decode_spectrum().
#define TWINVQ_SUB_AMP_MAX 4500.0 |
Definition at line 48 of file twinvq.h.
Referenced by dec_gain().
#define TWINVQ_MULAW_MU 100.0 |
Definition at line 49 of file twinvq.h.
Referenced by dec_gain().
#define TWINVQ_GAIN_BITS 8 |
Definition at line 50 of file twinvq.h.
Referenced by dec_gain(), init_bitstream_params(), metasound_read_bitstream(), and twinvq_read_bitstream().
#define TWINVQ_AMP_MAX 13000.0 |
Definition at line 51 of file twinvq.h.
Referenced by dec_gain().
#define TWINVQ_SUB_GAIN_BITS 5 |
Definition at line 52 of file twinvq.h.
Referenced by dec_gain(), init_bitstream_params(), metasound_read_bitstream(), and twinvq_read_bitstream().
#define TWINVQ_WINDOW_TYPE_BITS 4 |
Definition at line 53 of file twinvq.h.
Referenced by init_bitstream_params(), metasound_read_bitstream(), and twinvq_read_bitstream().
#define TWINVQ_PGAIN_MU 200 |
Definition at line 54 of file twinvq.h.
Referenced by decode_ppc().
#define TWINVQ_LSP_COEFS_MAX 20 |
Definition at line 55 of file twinvq.h.
Referenced by read_and_decode_spectrum().
#define TWINVQ_CHANNELS_MAX 2 |
Definition at line 57 of file twinvq.h.
Referenced by metasound_decode_init(), read_and_decode_spectrum(), and twinvq_decode_init().
#define TWINVQ_SUBBLOCKS_MAX 16 |
Definition at line 58 of file twinvq.h.
Referenced by read_and_decode_spectrum().
enum TwinVQCodec |
enum TwinVQFrameType |
|
inlinestatic |
Definition at line 181 of file twinvq.h.
Referenced by dec_bark_env(), eval_lpcenv_2parts(), and ff_twinvq_decode_init().
|
inlinestatic |
Definition at line 187 of file twinvq.h.
Referenced by dec_gain(), and decode_ppc().
int ff_twinvq_decode_frame | ( | AVCodecContext * | avctx, |
void * | data, | ||
int * | got_frame_ptr, | ||
AVPacket * | avpkt | ||
) |
av_cold int ff_twinvq_decode_close | ( | AVCodecContext * | avctx | ) |
Definition at line 739 of file twinvq.c.
Referenced by ff_twinvq_decode_init().
av_cold int ff_twinvq_decode_init | ( | AVCodecContext * | avctx | ) |
Definition at line 757 of file twinvq.c.
Referenced by metasound_decode_init(), and twinvq_decode_init().
enum TwinVQFrameType ff_twinvq_wtype_to_ftype_table[] |
Definition at line 467 of file twinvq.c.
Referenced by metasound_read_bitstream(), and twinvq_read_bitstream().