|
static unsigned int | decode_scalar (GetBitContext *gb, int k, int bps) |
|
static int | rice_decompress (ALACContext *alac, int32_t *output_buffer, int nb_samples, int bps, int rice_history_mult) |
|
static int | sign_only (int v) |
|
static void | lpc_prediction (int32_t *error_buffer, uint32_t *buffer_out, int nb_samples, int bps, int16_t *lpc_coefs, int lpc_order, int lpc_quant) |
|
static int | decode_element (AVCodecContext *avctx, AVFrame *frame, int ch_index, int channels) |
|
static int | alac_decode_frame (AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *avpkt) |
|
static av_cold int | alac_decode_close (AVCodecContext *avctx) |
|
static int | allocate_buffers (ALACContext *alac) |
|
static int | alac_set_info (ALACContext *alac) |
|
static av_cold int | alac_decode_init (AVCodecContext *avctx) |
|
ALAC (Apple Lossless Audio Codec) decoder
- Author
- 2005 David Hammerton
- See also
- http://crazney.net/programs/itunes/alac.html
Note: This decoder expects a 36-byte QuickTime atom to be passed through the extradata[_size] fields. This atom is tacked onto the end of an 'alac' stsd atom and has the following format:
32 bits atom size 32 bits tag ("alac") 32 bits tag version (0) 32 bits samples per frame (used when not set explicitly in the frames) 8 bits compatible version (0) 8 bits sample size 8 bits history mult (40) 8 bits initial history (10) 8 bits rice param limit (14) 8 bits channels 16 bits maxRun (255) 32 bits max coded frame size (0 means unknown) 32 bits average bitrate (0 means unknown) 32 bits samplerate
Definition in file alac.c.