SEGA CRI adx codecs.
More...
Go to the source code of this file.
|
| static int | adx_decode_header (AVCodecContext *avctx, const uint8_t *buf, int bufsize, int *header_size, int *coeff) |
| | Decode ADX stream header.
|
| |
| static av_cold int | adx_decode_init (AVCodecContext *avctx) |
| |
| static int | adx_decode (ADXContext *c, int16_t *out, int offset, const uint8_t *in, int ch) |
| | Decode 32 samples from 18 bytes.
|
| |
| static int | adx_decode_frame (AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *avpkt) |
| |
| static av_cold void | adx_decode_flush (AVCodecContext *avctx) |
| |
◆ adx_decode_header()
| static int adx_decode_header |
( |
AVCodecContext * | avctx, |
|
|
const uint8_t * | buf, |
|
|
int | bufsize, |
|
|
int * | header_size, |
|
|
int * | coeff ) |
|
static |
Decode ADX stream header.
Sets avctx->channels and avctx->sample_rate.
- Parameters
-
| avctx | codec context |
| buf | header data |
| bufsize | data size, should be at least 24 bytes |
| [out] | header_size | size of ADX header |
| [out] | coeff | 2 LPC coefficients, can be NULL |
- Returns
- data offset or negative error code if header is invalid
Definition at line 50 of file adxdec.c.
Referenced by adx_decode_frame(), and adx_decode_init().
◆ adx_decode_init()
◆ adx_decode()
| static int adx_decode |
( |
ADXContext * | c, |
|
|
int16_t * | out, |
|
|
int | offset, |
|
|
const uint8_t * | in, |
|
|
int | ch ) |
|
static |
Decode 32 samples from 18 bytes.
A 16-bit scalar value is applied to 32 residuals, which then have a 2nd-order LPC filter applied to it to form the output signal for a single channel.
Definition at line 130 of file adxdec.c.
Referenced by adx_decode_frame().
◆ adx_decode_frame()
◆ adx_decode_flush()
◆ ff_adpcm_adx_decoder
Initial value:= {
.p.name = "adpcm_adx",
}
#define FF_CODEC_DECODE_CB(func)
#define CODEC_LONG_NAME(str)
int(* init)(AVBSFContext *ctx)
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() or get_encode_buffer() for allocating buffers and supports custom allocators.
#define AV_CODEC_CAP_CHANNEL_CONF
Codec should fill in channel configuration and samplerate instead of container.
static av_cold void adx_decode_flush(AVCodecContext *avctx)
static int adx_decode_frame(AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *avpkt)
static av_cold int adx_decode_init(AVCodecContext *avctx)
Definition at line 262 of file adxdec.c.