FFmpeg
Data Structures | Macros | Functions | Variables
cafdec.c File Reference
#include <inttypes.h>
#include "avformat.h"
#include "demux.h"
#include "internal.h"
#include "isom.h"
#include "mov_chan.h"
#include "libavcodec/flac.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 (const 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

const FFInputFormat ff_caf_demuxer
 

Detailed Description

Core Audio Format demuxer

Definition in file cafdec.c.

Macro Definition Documentation

◆ ALAC_PREAMBLE

#define ALAC_PREAMBLE   12

◆ ALAC_HEADER

#define ALAC_HEADER   36

◆ ALAC_NEW_KUKI

#define ALAC_NEW_KUKI   24

◆ CAF_MAX_PKT_SIZE

#define CAF_MAX_PKT_SIZE   4096

Definition at line 425 of file cafdec.c.

Function Documentation

◆ probe()

static int probe ( const AVProbeData p)
static

Definition at line 53 of file cafdec.c.

◆ read_desc_chunk()

static int read_desc_chunk ( AVFormatContext s)
static

Read audio description chunk.

Definition at line 67 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 110 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 239 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 285 of file cafdec.c.

Referenced by read_header().

◆ read_header()

static int read_header ( AVFormatContext s)
static

Definition at line 301 of file cafdec.c.

◆ read_packet()

static int read_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 427 of file cafdec.c.

◆ read_seek()

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

Definition at line 484 of file cafdec.c.

Variable Documentation

◆ ff_caf_demuxer

const FFInputFormat ff_caf_demuxer
Initial value:
= {
.p.name = "caf",
.p.long_name = NULL_IF_CONFIG_SMALL("Apple CAF (Core Audio Format)"),
.p.codec_tag = ff_caf_codec_tags_list,
.priv_data_size = sizeof(CafContext),
}

Definition at line 518 of file cafdec.c.

read_header
static int read_header(AVFormatContext *s)
Definition: cafdec.c:301
read_seek
static int read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
Definition: cafdec.c:484
NULL_IF_CONFIG_SMALL
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
Definition: internal.h:106
CafContext
Definition: cafdec.c:41
ff_caf_codec_tags_list
const AVCodecTag *const ff_caf_codec_tags_list[]
Definition: caf.c:82
read_probe
static int read_probe(const AVProbeData *p)
Definition: cdg.c:30
read_packet
static int read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: cafdec.c:427
probe
static int probe(const AVProbeData *p)
Definition: cafdec.c:53