FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
isom.h File Reference
#include "avio.h"
#include "internal.h"
#include "dv.h"

Go to the source code of this file.

Data Structures

struct  MOVStts
 
struct  MOVStsc
 
struct  MOVElst
 
struct  MOVDref
 
struct  MOVAtom
 
struct  MOVFragment
 
struct  MOVTrackExt
 
struct  MOVSbgp
 
struct  MOVFragmentIndexItem
 
struct  MOVFragmentIndex
 
struct  MOVStreamContext
 
struct  MOVContext
 

Macros

#define MP4ODescrTag   0x01
 
#define MP4IODescrTag   0x02
 
#define MP4ESDescrTag   0x03
 
#define MP4DecConfigDescrTag   0x04
 
#define MP4DecSpecificDescrTag   0x05
 
#define MP4SLDescrTag   0x06
 
#define MOV_TFHD_BASE_DATA_OFFSET   0x01
 
#define MOV_TFHD_STSD_ID   0x02
 
#define MOV_TFHD_DEFAULT_DURATION   0x08
 
#define MOV_TFHD_DEFAULT_SIZE   0x10
 
#define MOV_TFHD_DEFAULT_FLAGS   0x20
 
#define MOV_TFHD_DURATION_IS_EMPTY   0x010000
 
#define MOV_TFHD_DEFAULT_BASE_IS_MOOF   0x020000
 
#define MOV_TRUN_DATA_OFFSET   0x01
 
#define MOV_TRUN_FIRST_SAMPLE_FLAGS   0x04
 
#define MOV_TRUN_SAMPLE_DURATION   0x100
 
#define MOV_TRUN_SAMPLE_SIZE   0x200
 
#define MOV_TRUN_SAMPLE_FLAGS   0x400
 
#define MOV_TRUN_SAMPLE_CTS   0x800
 
#define MOV_FRAG_SAMPLE_FLAG_DEGRADATION_PRIORITY_MASK   0x0000ffff
 
#define MOV_FRAG_SAMPLE_FLAG_IS_NON_SYNC   0x00010000
 
#define MOV_FRAG_SAMPLE_FLAG_PADDING_MASK   0x000e0000
 
#define MOV_FRAG_SAMPLE_FLAG_REDUNDANCY_MASK   0x00300000
 
#define MOV_FRAG_SAMPLE_FLAG_DEPENDED_MASK   0x00c00000
 
#define MOV_FRAG_SAMPLE_FLAG_DEPENDS_MASK   0x03000000
 
#define MOV_FRAG_SAMPLE_FLAG_DEPENDS_NO   0x02000000
 
#define MOV_FRAG_SAMPLE_FLAG_DEPENDS_YES   0x01000000
 
#define MOV_TKHD_FLAG_ENABLED   0x0001
 
#define MOV_TKHD_FLAG_IN_MOVIE   0x0002
 
#define MOV_TKHD_FLAG_IN_PREVIEW   0x0004
 
#define MOV_TKHD_FLAG_IN_POSTER   0x0008
 
#define TAG_IS_AVCI(tag)
 
#define FF_MOV_FLAG_MFRA_AUTO   -1
 
#define FF_MOV_FLAG_MFRA_DTS   1
 
#define FF_MOV_FLAG_MFRA_PTS   2
 

Functions

int ff_mov_iso639_to_lang (const char lang[4], int mp4)
 
int ff_mov_lang_to_iso639 (unsigned code, char to[4])
 
int ff_mp4_read_descr_len (AVIOContext *pb)
 
int ff_mp4_read_descr (AVFormatContext *fc, AVIOContext *pb, int *tag)
 
int ff_mp4_read_dec_config_descr (AVFormatContext *fc, AVStream *st, AVIOContext *pb)
 
void ff_mp4_parse_es_descr (AVIOContext *pb, int *es_id)
 
int ff_mov_read_esds (AVFormatContext *fc, AVIOContext *pb)
 
enum AVCodecID ff_mov_get_lpcm_codec_id (int bps, int flags)
 Compute codec id for 'lpcm' tag. More...
 
int ff_mov_read_stsd_entries (MOVContext *c, AVIOContext *pb, int entries)
 
void ff_mov_write_chan (AVIOContext *pb, int64_t channel_layout)
 

Variables

const AVCodecTag ff_mp4_obj_type []
 
const AVCodecTag ff_codec_movvideo_tags []
 
const AVCodecTag ff_codec_movaudio_tags []
 
const AVCodecTag ff_codec_movsubtitle_tags []
 

Macro Definition Documentation

#define MP4ODescrTag   0x01

Definition at line 216 of file isom.h.

Referenced by parse_mp4_descr().

#define MP4IODescrTag   0x02

Definition at line 217 of file isom.h.

Referenced by mp4_read_iods(), and parse_mp4_descr().

#define MP4ESDescrTag   0x03

Definition at line 218 of file isom.h.

Referenced by ff_mov_read_esds(), and parse_mp4_descr().

#define MP4DecConfigDescrTag   0x04

Definition at line 219 of file isom.h.

Referenced by ff_mov_read_esds(), parse_mp4_descr(), and parse_MP4ESDescrTag().

#define MP4DecSpecificDescrTag   0x05

Definition at line 220 of file isom.h.

Referenced by ff_mp4_read_dec_config_descr().

#define MP4SLDescrTag   0x06

Definition at line 221 of file isom.h.

Referenced by parse_mp4_descr(), and parse_MP4ESDescrTag().

#define MOV_TFHD_BASE_DATA_OFFSET   0x01

Definition at line 223 of file isom.h.

Referenced by mov_read_tfhd(), mov_write_tfhd_tag(), and read_moof_duration().

#define MOV_TFHD_STSD_ID   0x02

Definition at line 224 of file isom.h.

Referenced by mov_read_tfhd(), and read_moof_duration().

#define MOV_TFHD_DEFAULT_DURATION   0x08

Definition at line 225 of file isom.h.

Referenced by mov_read_tfhd(), mov_write_tfhd_tag(), and read_moof_duration().

#define MOV_TFHD_DEFAULT_SIZE   0x10

Definition at line 226 of file isom.h.

Referenced by mov_read_tfhd(), and mov_write_tfhd_tag().

#define MOV_TFHD_DEFAULT_FLAGS   0x20

Definition at line 227 of file isom.h.

Referenced by mov_read_tfhd(), and mov_write_tfhd_tag().

#define MOV_TFHD_DURATION_IS_EMPTY   0x010000

Definition at line 228 of file isom.h.

Referenced by mov_write_tfhd_tag().

#define MOV_TFHD_DEFAULT_BASE_IS_MOOF   0x020000

Definition at line 229 of file isom.h.

Referenced by mov_read_tfhd(), and mov_write_tfhd_tag().

#define MOV_TRUN_DATA_OFFSET   0x01

Definition at line 231 of file isom.h.

Referenced by mov_read_trun(), mov_write_trun_tag(), and read_trun_duration().

#define MOV_TRUN_FIRST_SAMPLE_FLAGS   0x04

Definition at line 232 of file isom.h.

Referenced by mov_read_trun(), mov_write_trun_tag(), and read_trun_duration().

#define MOV_TRUN_SAMPLE_DURATION   0x100

Definition at line 233 of file isom.h.

Referenced by mov_read_trun(), mov_write_trun_tag(), and read_trun_duration().

#define MOV_TRUN_SAMPLE_SIZE   0x200

Definition at line 234 of file isom.h.

Referenced by mov_read_trun(), mov_write_trun_tag(), and read_trun_duration().

#define MOV_TRUN_SAMPLE_FLAGS   0x400

Definition at line 235 of file isom.h.

Referenced by mov_read_trun(), mov_write_trun_tag(), and read_trun_duration().

#define MOV_TRUN_SAMPLE_CTS   0x800

Definition at line 236 of file isom.h.

Referenced by mov_read_trun(), mov_write_trun_tag(), and read_trun_duration().

#define MOV_FRAG_SAMPLE_FLAG_DEGRADATION_PRIORITY_MASK   0x0000ffff

Definition at line 238 of file isom.h.

#define MOV_FRAG_SAMPLE_FLAG_IS_NON_SYNC   0x00010000

Definition at line 239 of file isom.h.

Referenced by get_sample_flags(), mov_read_trun(), and mov_write_tfhd_tag().

#define MOV_FRAG_SAMPLE_FLAG_PADDING_MASK   0x000e0000

Definition at line 240 of file isom.h.

#define MOV_FRAG_SAMPLE_FLAG_REDUNDANCY_MASK   0x00300000

Definition at line 241 of file isom.h.

#define MOV_FRAG_SAMPLE_FLAG_DEPENDED_MASK   0x00c00000

Definition at line 242 of file isom.h.

#define MOV_FRAG_SAMPLE_FLAG_DEPENDS_MASK   0x03000000

Definition at line 243 of file isom.h.

#define MOV_FRAG_SAMPLE_FLAG_DEPENDS_NO   0x02000000

Definition at line 245 of file isom.h.

Referenced by get_sample_flags(), and mov_write_tfhd_tag().

#define MOV_FRAG_SAMPLE_FLAG_DEPENDS_YES   0x01000000

Definition at line 246 of file isom.h.

Referenced by get_sample_flags(), mov_read_trun(), and mov_write_tfhd_tag().

#define MOV_TKHD_FLAG_ENABLED   0x0001

Definition at line 248 of file isom.h.

Referenced by mov_read_tkhd(), and mov_write_tkhd_tag().

#define MOV_TKHD_FLAG_IN_MOVIE   0x0002

Definition at line 249 of file isom.h.

Referenced by mov_write_tkhd_tag().

#define MOV_TKHD_FLAG_IN_PREVIEW   0x0004

Definition at line 250 of file isom.h.

#define MOV_TKHD_FLAG_IN_POSTER   0x0008

Definition at line 251 of file isom.h.

#define TAG_IS_AVCI (   tag)
Value:
((tag) == MKTAG('a', 'i', '5', 'p') || \
(tag) == MKTAG('a', 'i', '5', 'q') || \
(tag) == MKTAG('a', 'i', '5', '2') || \
(tag) == MKTAG('a', 'i', '5', '3') || \
(tag) == MKTAG('a', 'i', '5', '5') || \
(tag) == MKTAG('a', 'i', '5', '6') || \
(tag) == MKTAG('a', 'i', '1', 'p') || \
(tag) == MKTAG('a', 'i', '1', 'q') || \
(tag) == MKTAG('a', 'i', '1', '2') || \
(tag) == MKTAG('a', 'i', '1', '3') || \
(tag) == MKTAG('a', 'i', '1', '5') || \
(tag) == MKTAG('a', 'i', '1', '6') || \
(tag) == MKTAG('a', 'i', 'v', 'x') || \
(tag) == MKTAG('A', 'V', 'i', 'n'))
uint32_t tag
Definition: movenc.c:1334
#define MKTAG(a, b, c, d)
Definition: common.h:330

Definition at line 253 of file isom.h.

Referenced by ff_mov_write_packet(), mov_read_trak(), mov_write_header(), and mov_write_video_tag().

#define FF_MOV_FLAG_MFRA_AUTO   -1

Definition at line 276 of file isom.h.

Referenced by mov_read_free().

#define FF_MOV_FLAG_MFRA_DTS   1

Definition at line 277 of file isom.h.

#define FF_MOV_FLAG_MFRA_PTS   2

Definition at line 278 of file isom.h.

Referenced by mov_read_free(), and mov_read_trun().

Function Documentation

int ff_mov_iso639_to_lang ( const char  lang[4],
int  mp4 
)

Definition at line 355 of file isom.c.

Referenced by mov_write_header(), mov_write_string_data_tag(), and mov_write_string_metadata().

int ff_mov_lang_to_iso639 ( unsigned  code,
char  to[4] 
)

Definition at line 382 of file isom.c.

Referenced by mov_metadata_loci(), mov_read_mdhd(), and mov_read_udta_string().

int ff_mp4_read_descr_len ( AVIOContext pb)

Definition at line 404 of file isom.c.

Referenced by ff_mp4_read_descr(), and read_pakt_chunk().

int ff_mp4_read_descr ( AVFormatContext fc,
AVIOContext pb,
int *  tag 
)

Definition at line 417 of file isom.c.

Referenced by ff_mov_read_esds(), ff_mp4_read_dec_config_descr(), and parse_mp4_descr().

int ff_mp4_read_dec_config_descr ( AVFormatContext fc,
AVStream st,
AVIOContext pb 
)

Definition at line 451 of file isom.c.

Referenced by ff_mov_read_esds(), ff_parse_mpeg2_descriptor(), and m4sl_cb().

void ff_mp4_parse_es_descr ( AVIOContext pb,
int *  es_id 
)

Definition at line 426 of file isom.c.

Referenced by ff_mov_read_esds(), and parse_MP4ESDescrTag().

int ff_mov_read_esds ( AVFormatContext fc,
AVIOContext pb 
)

Definition at line 652 of file mov.c.

Referenced by mov_read_esds(), and read_kuki_chunk().

enum AVCodecID ff_mov_get_lpcm_codec_id ( int  bps,
int  flags 
)

Compute codec id for 'lpcm' tag.

See CoreAudioTypes and AudioStreamBasicDescription at Apple.

Definition at line 1612 of file mov.c.

Referenced by mov_parse_stsd_audio(), and read_desc_chunk().

int ff_mov_read_stsd_entries ( MOVContext c,
AVIOContext pb,
int  entries 
)

Definition at line 2099 of file mov.c.

Referenced by mov_read_stsd(), and qt_rtp_parse_packet().

void ff_mov_write_chan ( AVIOContext pb,
int64_t  channel_layout 
)

Definition at line 577 of file isom.c.

Referenced by aiff_write_header(), and caf_write_header().

Variable Documentation

const AVCodecTag ff_mp4_obj_type[]

Definition at line 34 of file isom.c.

Referenced by mov_write_esds_tag(), mp4_get_codec_tag(), and set_codec_str().

const AVCodecTag ff_codec_movvideo_tags[]
const AVCodecTag ff_codec_movaudio_tags[]
const AVCodecTag ff_codec_movsubtitle_tags[]

Definition at line 322 of file isom.c.

Referenced by mov_codec_id(), and mov_get_codec_tag().