FFmpeg
|
#include "config_components.h"
#include "avcodec.h"
#include "get_bits.h"
#include "bytestream.h"
#include "adpcm.h"
#include "adpcm_data.h"
#include "codec_internal.h"
#include "decode.h"
#include "libavutil/attributes.h"
Go to the source code of this file.
Data Structures | |
struct | ADPCMDecodeContext |
Macros | |
#define | CASE_0(codec_id, ...) |
#define | CASE_1(codec_id, ...) |
#define | CASE_2(enabled, codec_id, ...) CASE_ ## enabled(codec_id, __VA_ARGS__) |
#define | CASE_3(config, codec_id, ...) CASE_2(config, codec_id, __VA_ARGS__) |
#define | CASE(codec, ...) CASE_3(CONFIG_ ## codec ## _DECODER, AV_CODEC_ID_ ## codec, __VA_ARGS__) |
#define | DK3_GET_NEXT_NIBBLE() |
#define | ADPCM_DECODER_0(id_, sample_fmts_, name_, long_name_) |
#define | ADPCM_DECODER_1(id_, sample_fmts_, name_, long_name_) |
#define | ADPCM_DECODER_2(enabled, codec_id, name, sample_fmts, long_name) ADPCM_DECODER_ ## enabled(codec_id, name, sample_fmts, long_name) |
#define | ADPCM_DECODER_3(config, codec_id, name, sample_fmts, long_name) ADPCM_DECODER_2(config, codec_id, name, sample_fmts, long_name) |
#define | ADPCM_DECODER(codec, name, sample_fmts, long_name) |
Variables | |
static const int8_t | xa_adpcm_table [5][2] |
static const int16_t | afc_coeffs [2][16] |
static const int16_t | ea_adpcm_table [] |
static const int8_t | ima_cunning_index_table [9] |
static const int16_t | ima_cunning_step_table [61] |
static const int8_t | adpcm_index_table2 [4] |
static const int8_t | adpcm_index_table3 [8] |
static const int8_t | adpcm_index_table5 [32] |
static const int8_t *const | adpcm_index_tables [4] |
static const int16_t | mtaf_stepsize [32][16] |
static const int16_t | oki_step_table [49] |
static const int8_t | swf_index_tables [4][16] |
static const int8_t | zork_index_table [8] |
static const int8_t | mtf_index_table [16] |
static enum AVSampleFormat | sample_fmts_s16 [] |
static enum AVSampleFormat | sample_fmts_s16p [] |
static enum AVSampleFormat | sample_fmts_both [] |
ADPCM decoders Features and limitations:
Reference documents: http://wiki.multimedia.cx/index.php?title=Category:ADPCM_Audio_Codecs http://www.pcisys.net/~melanson/codecs/simpleaudio.html [dead] http://www.geocities.com/SiliconValley/8682/aud3.txt [dead] http://openquicktime.sourceforge.net/ XAnim sources (xa_codec.c) http://xanim.polter.net/ http://www.cs.ucla.edu/~leec/mediabench/applications.html [dead] SoX source code http://sox.sourceforge.net/
CD-ROM XA: http://ku-www.ss.titech.ac.jp/~yatsushi/xaadpcm.html [dead] vagpack & depack http://homepages.compuserve.de/bITmASTER32/psx-index.html [dead] readstr http://www.geocities.co.jp/Playtown/2004/
Definition in file adpcm.c.
#define CASE_1 | ( | codec_id, | |
... | |||
) |
#define CASE | ( | codec, | |
... | |||
) | CASE_3(CONFIG_ ## codec ## _DECODER, AV_CODEC_ID_ ## codec, __VA_ARGS__) |
#define DK3_GET_NEXT_NIBBLE | ( | ) |
#define ADPCM_DECODER_0 | ( | id_, | |
sample_fmts_, | |||
name_, | |||
long_name_ | |||
) |
#define ADPCM_DECODER_1 | ( | id_, | |
sample_fmts_, | |||
name_, | |||
long_name_ | |||
) |
#define ADPCM_DECODER_2 | ( | enabled, | |
codec_id, | |||
name, | |||
sample_fmts, | |||
long_name | |||
) | ADPCM_DECODER_ ## enabled(codec_id, name, sample_fmts, long_name) |
#define ADPCM_DECODER_3 | ( | config, | |
codec_id, | |||
name, | |||
sample_fmts, | |||
long_name | |||
) | ADPCM_DECODER_2(config, codec_id, name, sample_fmts, long_name) |
#define ADPCM_DECODER | ( | codec, | |
name, | |||
sample_fmts, | |||
long_name | |||
) |
|
static |
Definition at line 2545 of file adpcm.c.
Referenced by adpcm_decode_init().
|
static |
|
inlinestatic |
Definition at line 371 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 415 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 441 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 464 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 480 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 500 of file adpcm.c.
Referenced by adpcm_decode_frame().
int16_t ff_adpcm_ima_qt_expand_nibble | ( | ADPCMChannelStatus * | c, |
int | nibble | ||
) |
Definition at line 523 of file adpcm.c.
Referenced by adpcm_decode_frame(), and decode_frame().
|
inlinestatic |
Definition at line 549 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 568 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 589 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 610 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 630 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 644 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
inlinestatic |
Definition at line 653 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
Definition at line 688 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
Definition at line 776 of file adpcm.c.
Referenced by adpcm_decode_frame().
int16_t ff_adpcm_argo_expand_nibble | ( | ADPCMChannelStatus * | cs, |
int | nibble, | ||
int | shift, | ||
int | flag | ||
) |
Definition at line 834 of file adpcm.c.
Referenced by adpcm_decode_frame(), and adpcm_encode_frame().
|
static |
Definition at line 851 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
Definition at line 894 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
Definition at line 953 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
Get the number of samples (per channel) that will be decoded from the packet.
In one case, this is actually the maximum number of samples possible to decode with the given buf_size.
[out] | coded_samples | set to the number of samples as coded in the packet, or 0 if the codec does not encode the number of samples in each frame. |
[out] | approx_nb_samples | set to non-zero if the number of samples returned is an approximation. |
Definition at line 1028 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
|
static |
Definition at line 84 of file adpcm.c.
Referenced by adpcm_decode_frame(), and xa_decode().
|
static |
Definition at line 92 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
Definition at line 97 of file adpcm.c.
Referenced by adpcm_decode_frame().
|
static |
Definition at line 111 of file adpcm.c.
Referenced by adpcm_ima_cunning_expand_nibble().
|
static |
Definition at line 121 of file adpcm.c.
Referenced by adpcm_ima_cunning_expand_nibble().
|
static |
|
static |
|
static |
|
static |
Definition at line 145 of file adpcm.c.
Referenced by adpcm_ima_wav_expand_nibble().
|
static |
Definition at line 152 of file adpcm.c.
Referenced by adpcm_mtaf_expand_nibble().
|
static |
Definition at line 219 of file adpcm.c.
Referenced by adpcm_ima_oki_expand_nibble().
|
static |
Definition at line 228 of file adpcm.c.
Referenced by adpcm_swf_decode().
|
static |
Definition at line 235 of file adpcm.c.
Referenced by adpcm_zork_expand_nibble().
|
static |
Definition at line 239 of file adpcm.c.
Referenced by adpcm_ima_mtf_expand_nibble().
|
static |
|
static |
|
static |