FFmpeg
Classes | Macros | Typedefs | Variables
atrac1.c File Reference

ATRAC1 compatible decoder. More...

#include <math.h>
#include <stddef.h>
#include <stdio.h>
#include "libavutil/float_dsp.h"
#include "avcodec.h"
#include "get_bits.h"
#include "fft.h"
#include "internal.h"
#include "sinewin.h"
#include "atrac.h"
#include "atrac1data.h"

Classes

struct  AT1SUCtx
 Sound unit struct, one unit is used per channel. More...
 
struct  AT1Ctx
 The atrac1 context, holds all needed parameters for decoding. More...
 

Macros

#define AT1_MAX_BFU   52
 max number of block floating units in a sound unit
 
#define AT1_SU_SIZE   212
 number of bytes in a sound unit
 
#define AT1_SU_SAMPLES   512
 number of samples in a sound unit
 
#define AT1_FRAME_SIZE   AT1_SU_SIZE * 2
 
#define AT1_SU_MAX_BITS   AT1_SU_SIZE * 8
 
#define AT1_MAX_CHANNELS   2
 
#define AT1_QMF_BANDS   3
 
#define IDX_LOW_BAND   0
 
#define IDX_MID_BAND   1
 
#define IDX_HIGH_BAND   2
 

Typedefs

typedef struct AT1SUCtx AT1SUCtx
 Sound unit struct, one unit is used per channel.
 
typedef struct AT1Ctx AT1Ctx
 The atrac1 context, holds all needed parameters for decoding.
 

Variables

AVCodec ff_atrac1_decoder
 

Detailed Description

ATRAC1 compatible decoder.

This decoder handles raw ATRAC1 data and probably SDDS data.

Variable Documentation

§ ff_atrac1_decoder

AVCodec ff_atrac1_decoder
Initial value:
= {
.name = "atrac1",
.long_name = NULL_IF_CONFIG_SMALL("ATRAC1 (Adaptive TRansform Acoustic Coding)"),
.type = AVMEDIA_TYPE_AUDIO,
.id = AV_CODEC_ID_ATRAC1,
.priv_data_size = sizeof(AT1Ctx),
.init = atrac1_decode_init,
.close = atrac1_decode_end,
.decode = atrac1_decode_frame,
.capabilities = AV_CODEC_CAP_DR1,
.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP,
AV_SAMPLE_FMT_NONE },
}
float, planar
Definition: samplefmt.h:69
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
AVSampleFormat
Audio sample formats.
Definition: samplefmt.h:58
struct AT1Ctx AT1Ctx
The atrac1 context, holds all needed parameters for decoding.
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:959