FFmpeg  4.0
Data Structures | Macros | Functions | Variables
cafdec.c File Reference

Core Audio Format demuxer. More...

#include <inttypes.h>
#include "avformat.h"
#include "internal.h"
#include "isom.h"
#include "mov_chan.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/intfloat.h"
#include "libavutil/dict.h"
#include "caf.h"

Go to the source code of this file.

Data Structures

struct  CafContext
 

Macros

#define ALAC_PREAMBLE   12
 
#define ALAC_HEADER   36
 
#define ALAC_NEW_KUKI   24
 
#define CAF_MAX_PKT_SIZE   4096
 

Functions

static int probe (AVProbeData *p)
 
static int read_desc_chunk (AVFormatContext *s)
 Read audio description chunk. More...
 
static int read_kuki_chunk (AVFormatContext *s, int64_t size)
 Read magic cookie chunk. More...
 
static int read_pakt_chunk (AVFormatContext *s, int64_t size)
 Read packet table chunk. More...
 
static void read_info_chunk (AVFormatContext *s, int64_t size)
 Read information chunk. More...
 
static int read_header (AVFormatContext *s)
 
static int read_packet (AVFormatContext *s, AVPacket *pkt)
 
static int read_seek (AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
 

Variables

AVInputFormat ff_caf_demuxer
 

Detailed Description

Core Audio Format demuxer.

Definition in file cafdec.c.

Macro Definition Documentation

◆ ALAC_PREAMBLE

#define ALAC_PREAMBLE   12

Referenced by read_kuki_chunk().

◆ ALAC_HEADER

#define ALAC_HEADER   36

Referenced by read_kuki_chunk().

◆ ALAC_NEW_KUKI

#define ALAC_NEW_KUKI   24

Referenced by read_kuki_chunk().

◆ CAF_MAX_PKT_SIZE

#define CAF_MAX_PKT_SIZE   4096

Definition at line 355 of file cafdec.c.

Referenced by read_packet().

Function Documentation

◆ probe()

static int probe ( AVProbeData p)
static

Definition at line 51 of file cafdec.c.

◆ read_desc_chunk()

static int read_desc_chunk ( AVFormatContext s)
static

Read audio description chunk.

Definition at line 59 of file cafdec.c.

Referenced by read_header().

◆ read_kuki_chunk()

static int read_kuki_chunk ( AVFormatContext s,
int64_t  size 
)
static

Read magic cookie chunk.

Definition at line 99 of file cafdec.c.

Referenced by read_header().

◆ read_pakt_chunk()

static int read_pakt_chunk ( AVFormatContext s,
int64_t  size 
)
static

Read packet table chunk.

Definition at line 187 of file cafdec.c.

Referenced by read_header().

◆ read_info_chunk()

static void read_info_chunk ( AVFormatContext s,
int64_t  size 
)
static

Read information chunk.

Definition at line 223 of file cafdec.c.

Referenced by read_header().

◆ read_header()

static int read_header ( AVFormatContext s)
static

Definition at line 237 of file cafdec.c.

◆ read_packet()

static int read_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 357 of file cafdec.c.

◆ read_seek()

static int read_seek ( AVFormatContext s,
int  stream_index,
int64_t  timestamp,
int  flags 
)
static

Definition at line 413 of file cafdec.c.

Variable Documentation

◆ ff_caf_demuxer

AVInputFormat ff_caf_demuxer
Initial value:
= {
.name = "caf",
.long_name = NULL_IF_CONFIG_SMALL("Apple CAF (Core Audio Format)"),
.priv_data_size = sizeof(CafContext),
.codec_tag = (const AVCodecTag* const []){ ff_codec_caf_tags, 0 },
}
static int read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: cafdec.c:357
static int read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
Definition: cafdec.c:413
static int read_header(AVFormatContext *s)
Definition: cafdec.c:237
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
static int read_probe(AVProbeData *pd)
Definition: jvdec.c:55
static int probe(AVProbeData *p)
Definition: cafdec.c:51
const AVCodecTag ff_codec_caf_tags[]
Known codec tags for CAF.
Definition: caf.c:34

Definition at line 446 of file cafdec.c.