MPEG-4 ALS decoder.
More...
#include <inttypes.h>
#include "avcodec.h"
#include "get_bits.h"
#include "unary.h"
#include "mpeg4audio.h"
#include "bgmc.h"
#include "bswapdsp.h"
#include "internal.h"
#include "mlz.h"
#include "libavutil/samplefmt.h"
#include "libavutil/crc.h"
#include "libavutil/softfloat_ieee754.h"
#include "libavutil/intfloat.h"
#include "libavutil/intreadwrite.h"
#include <stdint.h>
|
| #define | MISSING_ERR(cond, str, errval) |
| |
| #define | INTERLEAVE_OUTPUT(bps) |
| |
|
| enum | RA_Flag { RA_FLAG_NONE,
RA_FLAG_FRAMES,
RA_FLAG_HEADER
} |
| |
MPEG-4 ALS decoder.
- Author
- Thilo Borgmann <thilo.borgmann at mail.de>
§ INTERLEAVE_OUTPUT
| #define INTERLEAVE_OUTPUT |
( |
|
bps | ) |
|
Value:{ \
int##bps##_t *dest = (int##bps##_t*)frame->data[0]; \
shift = bps - ctx->avctx->bits_per_raw_sample; \
if (!ctx->cs_switch) { \
for (sample = 0; sample < ctx->cur_frame_length; sample++) \
for (c = 0; c < avctx->channels; c++) \
*dest++ = ctx->raw_samples[c][sample] << shift; \
} else { \
for (sample = 0; sample < ctx->cur_frame_length; sample++) \
for (c = 0; c < avctx->channels; c++) \
*dest++ = ctx->raw_samples[sconf->chan_pos[c]][sample] << shift; \
} \
}
§ MISSING_ERR
| #define MISSING_ERR |
( |
|
cond, |
|
|
|
str, |
|
|
|
errval |
|
) |
| |
Value:{ \
if (cond) { \
avpriv_report_missing_feature(ctx->avctx, \
str); \
error = errval; \
} \
}
§ ff_als_decoder
Initial value:= {
.name = "als",
.type = AVMEDIA_TYPE_AUDIO,
.id = AV_CODEC_ID_MP4ALS,
.init = decode_init,
.close = decode_end,
.decode = decode_frame,
.flush = flush,
}
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
#define AV_CODEC_CAP_SUBFRAMES
Codec can output multiple frames per AVPacket Normally demuxers return one frame at a time...
Definition: avcodec.h:1002
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:959