FFmpeg
Data Structures | Macros | Functions | Variables
mov.c File Reference
#include "config_components.h"
#include <inttypes.h>
#include <limits.h>
#include <stdint.h>
#include "libavutil/attributes.h"
#include "libavutil/bprint.h"
#include "libavutil/channel_layout.h"
#include "libavutil/dict_internal.h"
#include "libavutil/internal.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/intfloat.h"
#include "libavutil/mathematics.h"
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/dict.h"
#include "libavutil/display.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavutil/aes.h"
#include "libavutil/aes_ctr.h"
#include "libavutil/pixdesc.h"
#include "libavutil/sha.h"
#include "libavutil/spherical.h"
#include "libavutil/stereo3d.h"
#include "libavutil/timecode.h"
#include "libavutil/uuid.h"
#include "libavcodec/ac3tab.h"
#include "libavcodec/flac.h"
#include "libavcodec/hevc/hevc.h"
#include "libavcodec/mpegaudiodecheader.h"
#include "libavcodec/mlp_parse.h"
#include "avformat.h"
#include "internal.h"
#include "avio_internal.h"
#include "demux.h"
#include "iamf_parse.h"
#include "iamf_reader.h"
#include "dovi_isom.h"
#include "riff.h"
#include "isom.h"
#include "libavcodec/get_bits.h"
#include "id3v1.h"
#include "mov_chan.h"
#include "replaygain.h"
#include "qtpalette.h"

Go to the source code of this file.

Data Structures

struct  MOVParseTableEntry
 

Macros

#define MIN_DATA_ENTRY_BOX_SIZE   12
 
#define DDTS_SIZE   20
 
#define DRM_BLOB_SIZE   56
 
#define ALAC_EXTRADATA_SIZE   36
 
#define MAX_REORDER_DELAY   16
 
#define IS_MATRIX_IDENT(matrix)
 
#define OFFSET(x)   offsetof(MOVContext, x)
 
#define FLAGS   AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_DECODING_PARAM
 

Functions

static int mov_read_default (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_mfra (MOVContext *c, AVIOContext *f)
 
static void mov_free_stream_context (AVFormatContext *s, AVStream *st)
 
static int64_t add_ctts_entry (MOVCtts **ctts_data, unsigned int *ctts_count, unsigned int *allocated_size, int count, int offset)
 Append a new ctts entry to ctts_data. More...
 
static int mov_metadata_track_or_disc_number (MOVContext *c, AVIOContext *pb, unsigned len, const char *key)
 
static int mov_metadata_int8_bypass_padding (MOVContext *c, AVIOContext *pb, unsigned len, const char *key)
 
static int mov_metadata_int8_no_padding (MOVContext *c, AVIOContext *pb, unsigned len, const char *key)
 
static int mov_metadata_gnre (MOVContext *c, AVIOContext *pb, unsigned len, const char *key)
 
static int mov_read_mac_string (MOVContext *c, AVIOContext *pb, int len, char *dst, int dstlen)
 
static HEIFItemheif_cur_item (MOVContext *c)
 Get the current item in the parsing process. More...
 
static AVStreamget_curr_st (MOVContext *c)
 Get the current stream in the parsing process. More...
 
static int mov_read_covr (MOVContext *c, AVIOContext *pb, int type, int len)
 
static int mov_metadata_loci (MOVContext *c, AVIOContext *pb, unsigned len)
 
static int mov_metadata_hmmt (MOVContext *c, AVIOContext *pb, unsigned len)
 
static int mov_read_udta_string (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_chpl (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_dref (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_hdlr (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_esds (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_dac3 (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_dec3 (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_ddts (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_chan (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_chnl (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_wfex (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_clap (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_pasp (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_mdat (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_adrm (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_aaxc_crypto (MOVContext *c)
 
static int aax_filter (uint8_t *input, int size, MOVContext *c)
 
static int mov_read_ftyp (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_moov (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static MOVFragmentStreamInfoget_frag_stream_info (MOVFragmentIndex *frag_index, int index, int id)
 
static void set_frag_stream (MOVFragmentIndex *frag_index, int id)
 
static MOVFragmentStreamInfoget_current_frag_stream_info (MOVFragmentIndex *frag_index)
 
static int search_frag_moof_offset (MOVFragmentIndex *frag_index, int64_t offset)
 
static int64_t get_stream_info_time (MOVFragmentStreamInfo *frag_stream_info)
 
static int64_t get_frag_time (AVFormatContext *s, AVStream *dst_st, MOVFragmentIndex *frag_index, int index)
 
static int search_frag_timestamp (AVFormatContext *s, MOVFragmentIndex *frag_index, AVStream *st, int64_t timestamp)
 
static int update_frag_index (MOVContext *c, int64_t offset)
 
static void fix_frag_index_entries (MOVFragmentIndex *frag_index, int index, int id, int entries)
 
static int mov_read_moof (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static void mov_metadata_creation_time (MOVContext *c, AVIOContext *pb, AVDictionary **metadata, int version)
 
static int mov_read_mdhd (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_mvhd (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static void set_last_stream_little_endian (AVFormatContext *fc)
 
static int mov_read_enda (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_pcmc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_colr (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_fiel (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_realloc_extradata (AVCodecParameters *par, MOVAtom atom)
 
static int64_t mov_read_atom_into_extradata (MOVContext *c, AVIOContext *pb, MOVAtom atom, AVCodecParameters *par, uint8_t *buf)
 
static int mov_read_extradata (MOVContext *c, AVIOContext *pb, MOVAtom atom, enum AVCodecID codec_id)
 
static int mov_read_alac (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_avss (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_jp2h (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_dpxe (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_avid (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_targa_y216 (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_ares (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_aclr (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_svq3 (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_wave (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_glbl (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 This function reads atom content and puts data in extradata without tag nor size unlike mov_read_extradata. More...
 
static int mov_read_dvc1 (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_sbas (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_strf (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 An strf atom is a BITMAPINFOHEADER struct. More...
 
static int mov_read_stco (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_codec_id (AVStream *st, uint32_t format)
 
static void mov_parse_stsd_video (MOVContext *c, AVIOContext *pb, AVStream *st, MOVStreamContext *sc)
 
static void mov_parse_stsd_audio (MOVContext *c, AVIOContext *pb, AVStream *st, MOVStreamContext *sc)
 
static void mov_parse_stsd_subtitle (MOVContext *c, AVIOContext *pb, AVStream *st, MOVStreamContext *sc, int64_t size)
 
static uint32_t yuv_to_rgba (uint32_t ycbcr)
 
static int mov_rewrite_dvd_sub_extradata (AVStream *st)
 
static int mov_parse_stsd_data (MOVContext *c, AVIOContext *pb, AVStream *st, MOVStreamContext *sc, int64_t size)
 
static int mov_finalize_stsd_codec (MOVContext *c, AVIOContext *pb, AVStream *st, MOVStreamContext *sc)
 
static int mov_skip_multiple_stsd (MOVContext *c, AVIOContext *pb, int codec_tag, int format, int64_t size)
 
int ff_mov_read_stsd_entries (MOVContext *c, AVIOContext *pb, int entries)
 
static int mov_read_stsd (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_stsc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_stsc_index_valid (unsigned int index, unsigned int count)
 
static int64_t mov_get_stsc_samples (MOVStreamContext *sc, unsigned int index)
 
static int mov_read_stps (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_stss (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_stsz (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_stts (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_sdtp (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static void mov_update_dts_shift (MOVStreamContext *sc, int duration, void *logctx)
 
static int mov_read_ctts (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_sgpd (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_sbgp (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int get_edit_list_entry (MOVContext *mov, const MOVStreamContext *msc, unsigned int edit_list_index, int64_t *edit_list_media_time, int64_t *edit_list_duration, int64_t global_timescale)
 Get ith edit list entry (media time, duration). More...
 
static int find_prev_closest_index (AVStream *st, AVIndexEntry *e_old, int nb_old, MOVStts *stts_data, int64_t stts_count, MOVCtts *ctts_data, int64_t ctts_count, int64_t timestamp_pts, int flag, int64_t *index, int64_t *stts_index, int64_t *stts_sample, int64_t *ctts_index, int64_t *ctts_sample)
 Find the closest previous frame to the timestamp_pts, in e_old index entries. More...
 
static int64_t add_index_entry (AVStream *st, int64_t pos, int64_t timestamp, int size, int distance, int flags)
 Add index entry with the given values, to the end of ffstream(st)->index_entries. More...
 
static void fix_index_entry_timestamps (AVStream *st, int end_index, int64_t end_ts, int64_t *frame_duration_buffer, int frame_duration_buffer_size)
 Rewrite timestamps of index entries in the range [end_index - frame_duration_buffer_size, end_index) by subtracting end_ts successively by the amounts given in frame_duration_buffer. More...
 
static int64_t add_stts_entry (MOVStts **stts_data, unsigned int *stts_count, unsigned int *allocated_size, int count, int duration)
 
static void mov_estimate_video_delay (MOVContext *c, AVStream *st)
 
static void mov_current_sample_inc (MOVStreamContext *sc)
 
static void mov_current_sample_dec (MOVStreamContext *sc)
 
static void mov_current_sample_set (MOVStreamContext *sc, int current_sample)
 
static void mov_fix_index (MOVContext *mov, AVStream *st)
 Fix ffstream(st)->index_entries, so that it contains only the entries (and the entries which are needed to decode them) that fall in the edit list time ranges. More...
 
static uint32_t get_sgpd_sync_index (const MOVStreamContext *sc, int nal_unit_type)
 
static int build_open_gop_key_points (AVStream *st)
 
static void mov_build_index (MOVContext *mov, AVStream *st)
 
static int test_same_origin (const char *src, const char *ref)
 
static int mov_open_dref (MOVContext *c, AVIOContext **pb, const char *src, MOVDref *ref)
 
static void fix_timescale (MOVContext *c, MOVStreamContext *sc)
 
static int mov_read_trak (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_ilst (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_keys (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_custom (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int heif_add_stream (MOVContext *c, HEIFItem *item)
 
static int mov_read_meta (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_tkhd (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_tfhd (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_chap (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_trex (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_tfdt (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_trun (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_sidx (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_wide (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_cmov (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_elst (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_tmcd (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_vpcc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_smdm (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_mdcv (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_coll (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_clli (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_amve (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_st3d (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_sv3d (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_vexu_proj (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_eyes (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_vexu (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_hfov (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_parse_uuid_spherical (MOVStreamContext *sc, AVIOContext *pb, size_t len)
 
static int mov_read_uuid (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_free (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_frma (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int get_current_encryption_info (MOVContext *c, MOVEncryptionIndex **encryption_index, MOVStreamContext **sc)
 Gets the current encryption info and associated current stream context. More...
 
static int mov_read_sample_encryption_info (MOVContext *c, AVIOContext *pb, MOVStreamContext *sc, AVEncryptionInfo **sample, int use_subsamples)
 
static int mov_read_senc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_parse_auxiliary_info (MOVContext *c, MOVStreamContext *sc, AVIOContext *pb, MOVEncryptionIndex *encryption_index)
 
static int mov_read_saiz (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_saio (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_pssh (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_schm (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_tenc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_dfla (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int cenc_scheme_decrypt (MOVContext *c, MOVStreamContext *sc, AVEncryptionInfo *sample, uint8_t *input, int size)
 
static int cbc1_scheme_decrypt (MOVContext *c, MOVStreamContext *sc, AVEncryptionInfo *sample, uint8_t *input, int size)
 
static int cens_scheme_decrypt (MOVContext *c, MOVStreamContext *sc, AVEncryptionInfo *sample, uint8_t *input, int size)
 
static int cbcs_scheme_decrypt (MOVContext *c, MOVStreamContext *sc, AVEncryptionInfo *sample, uint8_t *input, int size)
 
static int cenc_decrypt (MOVContext *c, MOVStreamContext *sc, AVEncryptionInfo *sample, uint8_t *input, int size)
 
static MOVFragmentStreamInfoget_frag_stream_info_from_pkt (MOVFragmentIndex *frag_index, AVPacket *pkt, int id)
 
static int cenc_filter (MOVContext *mov, AVStream *st, MOVStreamContext *sc, AVPacket *pkt, int current_index)
 
static int mov_read_dops (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_dmlp (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_dvcc_dvvc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_lhvc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_kind (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_SA3D (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_SAND (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int rb_size (AVIOContext *pb, int64_t *value, int size)
 
static int mov_read_pitm (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_idat (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_iloc (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_infe (MOVContext *c, AVIOContext *pb, MOVAtom atom, int idx)
 
static int mov_read_iinf (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_iref_dimg (MOVContext *c, AVIOContext *pb, int version)
 
static int mov_read_iref_thmb (MOVContext *c, AVIOContext *pb, int version)
 
static int mov_read_iref (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_ispe (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_irot (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_imir (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_read_iprp (MOVContext *c, AVIOContext *pb, MOVAtom atom)
 
static int mov_probe (const AVProbeData *p)
 
static void mov_read_chapters (AVFormatContext *s)
 
static int parse_timecode_in_framenum_format (AVFormatContext *s, AVStream *st, int64_t value, int flags)
 
static int mov_read_rtmd_track (AVFormatContext *s, AVStream *st)
 
static int mov_read_timecode_track (AVFormatContext *s, AVStream *st)
 
static void mov_free_encryption_index (MOVEncryptionIndex **index)
 
static int mov_read_close (AVFormatContext *s)
 
static int tmcd_is_referenced (AVFormatContext *s, int tmcd_id)
 
static void export_orphan_timecode (AVFormatContext *s)
 
static int read_tfra (MOVContext *mov, AVIOContext *f)
 
static int set_icc_profile_from_item (AVPacketSideData **coded_side_data, int *nb_coded_side_data, const HEIFItem *item)
 
static int set_display_matrix_from_item (AVPacketSideData **coded_side_data, int *nb_coded_side_data, const HEIFItem *item)
 
static int read_image_grid (AVFormatContext *s, const HEIFGrid *grid, AVStreamGroupTileGrid *tile_grid)
 
static int read_image_iovl (AVFormatContext *s, const HEIFGrid *grid, AVStreamGroupTileGrid *tile_grid)
 
static int mov_parse_tiles (AVFormatContext *s)
 
static int mov_parse_heif_items (AVFormatContext *s)
 
static AVStreammov_find_reference_track (AVFormatContext *s, AVStream *st, int first_index)
 
static int mov_parse_lcevc_streams (AVFormatContext *s)
 
static int mov_read_header (AVFormatContext *s)
 
static AVIndexEntrymov_find_next_sample (AVFormatContext *s, AVStream **st)
 
static int should_retry (AVIOContext *pb, int error_code)
 
static int mov_switch_root (AVFormatContext *s, int64_t target, int index)
 
static int mov_change_extradata (AVStream *st, AVPacket *pkt)
 
static int get_eia608_packet (AVIOContext *pb, AVPacket *pkt, int size)
 
static int mov_finalize_packet (AVFormatContext *s, AVStream *st, AVIndexEntry *sample, int64_t current_index, AVPacket *pkt)
 
static int mov_read_packet (AVFormatContext *s, AVPacket *pkt)
 
static int mov_seek_fragment (AVFormatContext *s, AVStream *st, int64_t timestamp)
 
static int is_open_key_sample (const MOVStreamContext *sc, int sample)
 
static int can_seek_to_key_sample (AVStream *st, int sample, int64_t requested_pts)
 
static int mov_seek_stream (AVFormatContext *s, AVStream *st, int64_t timestamp, int flags)
 
static int64_t mov_get_skip_samples (AVStream *st, int sample)
 
static int mov_read_seek (AVFormatContext *s, int stream_index, int64_t sample_time, int flags)
 

Variables

static const uint32_t mac_to_unicode [128]
 
static const MOVParseTableEntry mov_default_parse_table []
 
static const AVOption mov_options []
 
static const AVClass mov_class
 
const FFInputFormat ff_mov_demuxer
 

Macro Definition Documentation

◆ MIN_DATA_ENTRY_BOX_SIZE

#define MIN_DATA_ENTRY_BOX_SIZE   12

Definition at line 631 of file mov.c.

◆ DDTS_SIZE

#define DDTS_SIZE   20

◆ DRM_BLOB_SIZE

#define DRM_BLOB_SIZE   56

Definition at line 1368 of file mov.c.

◆ ALAC_EXTRADATA_SIZE

#define ALAC_EXTRADATA_SIZE   36

◆ MAX_REORDER_DELAY

#define MAX_REORDER_DELAY   16

Definition at line 4154 of file mov.c.

◆ IS_MATRIX_IDENT

#define IS_MATRIX_IDENT (   matrix)
Value:
( (matrix)[0][0] == (1 << 16) && \
(matrix)[1][1] == (1 << 16) && \
(matrix)[2][2] == (1 << 30) && \
!(matrix)[0][1] && !(matrix)[0][2] && \
!(matrix)[1][0] && !(matrix)[1][2] && \
!(matrix)[2][0] && !(matrix)[2][1])

Definition at line 5572 of file mov.c.

◆ OFFSET

#define OFFSET (   x)    offsetof(MOVContext, x)

Definition at line 11320 of file mov.c.

◆ FLAGS

Definition at line 11321 of file mov.c.

Function Documentation

◆ mov_read_default()

static int mov_read_default ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

◆ mov_read_mfra()

static int mov_read_mfra ( MOVContext c,
AVIOContext f 
)
static

Definition at line 10062 of file mov.c.

Referenced by mov_read_moof().

◆ mov_free_stream_context()

static void mov_free_stream_context ( AVFormatContext s,
AVStream st 
)
static

Definition at line 9859 of file mov.c.

Referenced by mov_read_close(), and mov_read_iinf().

◆ add_ctts_entry()

static int64_t add_ctts_entry ( MOVCtts **  ctts_data,
unsigned int *  ctts_count,
unsigned int *  allocated_size,
int  count,
int  offset 
)
static

Append a new ctts entry to ctts_data.

Returns the new ctts_count if successful, else returns -1.

Definition at line 4127 of file mov.c.

Referenced by mov_build_index(), mov_fix_index(), and mov_read_ctts().

◆ mov_metadata_track_or_disc_number()

static int mov_metadata_track_or_disc_number ( MOVContext c,
AVIOContext pb,
unsigned  len,
const char *  key 
)
static

Definition at line 92 of file mov.c.

Referenced by mov_read_udta_string().

◆ mov_metadata_int8_bypass_padding()

static int mov_metadata_int8_bypass_padding ( MOVContext c,
AVIOContext pb,
unsigned  len,
const char *  key 
)
static

Definition at line 112 of file mov.c.

Referenced by mov_read_udta_string().

◆ mov_metadata_int8_no_padding()

static int mov_metadata_int8_no_padding ( MOVContext c,
AVIOContext pb,
unsigned  len,
const char *  key 
)
static

Definition at line 126 of file mov.c.

Referenced by mov_read_udta_string().

◆ mov_metadata_gnre()

static int mov_metadata_gnre ( MOVContext c,
AVIOContext pb,
unsigned  len,
const char *  key 
)
static

Definition at line 135 of file mov.c.

Referenced by mov_read_udta_string().

◆ mov_read_mac_string()

static int mov_read_mac_string ( MOVContext c,
AVIOContext pb,
int  len,
char *  dst,
int  dstlen 
)
static

Definition at line 170 of file mov.c.

Referenced by mov_parse_stsd_video(), and mov_read_udta_string().

◆ heif_cur_item()

static HEIFItem* heif_cur_item ( MOVContext c)
static

Get the current item in the parsing process.

Definition at line 195 of file mov.c.

Referenced by get_curr_st(), mov_read_clap(), mov_read_colr(), mov_read_imir(), mov_read_irot(), and mov_read_ispe().

◆ get_curr_st()

static AVStream* get_curr_st ( MOVContext c)
static

Get the current stream in the parsing process.

This can either be the latest stream added to the context, or the stream referenced by an item.

Definition at line 214 of file mov.c.

Referenced by mov_read_clap(), mov_read_colr(), and mov_read_glbl().

◆ mov_read_covr()

static int mov_read_covr ( MOVContext c,
AVIOContext pb,
int  type,
int  len 
)
static

Definition at line 232 of file mov.c.

Referenced by mov_read_udta_string().

◆ mov_metadata_loci()

static int mov_metadata_loci ( MOVContext c,
AVIOContext pb,
unsigned  len 
)
static

Definition at line 275 of file mov.c.

Referenced by mov_read_udta_string().

◆ mov_metadata_hmmt()

static int mov_metadata_hmmt ( MOVContext c,
AVIOContext pb,
unsigned  len 
)
static

Definition at line 325 of file mov.c.

Referenced by mov_read_udta_string().

◆ mov_read_udta_string()

static int mov_read_udta_string ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 346 of file mov.c.

Referenced by mov_read_default().

◆ mov_read_chpl()

static int mov_read_chpl ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 593 of file mov.c.

◆ mov_read_dref()

static int mov_read_dref ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 632 of file mov.c.

◆ mov_read_hdlr()

static int mov_read_hdlr ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 776 of file mov.c.

◆ mov_read_esds()

static int mov_read_esds ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 842 of file mov.c.

◆ mov_read_dac3()

static int mov_read_dac3 ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 847 of file mov.c.

◆ mov_read_dec3()

static int mov_read_dec3 ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1072 of file mov.c.

◆ mov_read_ddts()

static int mov_read_ddts ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1115 of file mov.c.

◆ mov_read_chan()

static int mov_read_chan ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1168 of file mov.c.

◆ mov_read_chnl()

static int mov_read_chnl ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1187 of file mov.c.

◆ mov_read_wfex()

static int mov_read_wfex ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1219 of file mov.c.

◆ mov_read_clap()

static int mov_read_clap ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1234 of file mov.c.

◆ mov_read_pasp()

static int mov_read_pasp ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1338 of file mov.c.

◆ mov_read_mdat()

static int mov_read_mdat ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1360 of file mov.c.

Referenced by mov_read_wide().

◆ mov_read_adrm()

static int mov_read_adrm ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1370 of file mov.c.

◆ mov_aaxc_crypto()

static int mov_aaxc_crypto ( MOVContext c)
static

Definition at line 1469 of file mov.c.

Referenced by mov_read_ftyp().

◆ aax_filter()

static int aax_filter ( uint8_t *  input,
int  size,
MOVContext c 
)
static

Definition at line 1494 of file mov.c.

Referenced by mov_read_packet().

◆ mov_read_ftyp()

static int mov_read_ftyp ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1508 of file mov.c.

◆ mov_read_moov()

static int mov_read_moov ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1556 of file mov.c.

◆ get_frag_stream_info()

static MOVFragmentStreamInfo* get_frag_stream_info ( MOVFragmentIndex frag_index,
int  index,
int  id 
)
static

◆ set_frag_stream()

static void set_frag_stream ( MOVFragmentIndex frag_index,
int  id 
)
static

Definition at line 1593 of file mov.c.

Referenced by mov_read_tfhd().

◆ get_current_frag_stream_info()

static MOVFragmentStreamInfo* get_current_frag_stream_info ( MOVFragmentIndex frag_index)
static

Definition at line 1613 of file mov.c.

Referenced by get_current_encryption_info(), mov_read_tfdt(), mov_read_tfhd(), and mov_read_trun().

◆ search_frag_moof_offset()

static int search_frag_moof_offset ( MOVFragmentIndex frag_index,
int64_t  offset 
)
static

Definition at line 1629 of file mov.c.

Referenced by mov_switch_root(), and update_frag_index().

◆ get_stream_info_time()

static int64_t get_stream_info_time ( MOVFragmentStreamInfo frag_stream_info)
static

Definition at line 1653 of file mov.c.

Referenced by get_frag_time().

◆ get_frag_time()

static int64_t get_frag_time ( AVFormatContext s,
AVStream dst_st,
MOVFragmentIndex frag_index,
int  index 
)
static

Definition at line 1663 of file mov.c.

Referenced by search_frag_timestamp().

◆ search_frag_timestamp()

static int search_frag_timestamp ( AVFormatContext s,
MOVFragmentIndex frag_index,
AVStream st,
int64_t  timestamp 
)
static

Definition at line 1701 of file mov.c.

Referenced by mov_seek_fragment().

◆ update_frag_index()

static int update_frag_index ( MOVContext c,
int64_t  offset 
)
static

Definition at line 1726 of file mov.c.

Referenced by mov_read_moof(), mov_read_sidx(), and read_tfra().

◆ fix_frag_index_entries()

static void fix_frag_index_entries ( MOVFragmentIndex frag_index,
int  index,
int  id,
int  entries 
)
static

Definition at line 1787 of file mov.c.

Referenced by mov_read_trun().

◆ mov_read_moof()

static int mov_read_moof ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1802 of file mov.c.

◆ mov_metadata_creation_time()

static void mov_metadata_creation_time ( MOVContext c,
AVIOContext pb,
AVDictionary **  metadata,
int  version 
)
static

Definition at line 1828 of file mov.c.

Referenced by mov_read_mdhd(), and mov_read_mvhd().

◆ mov_read_mdhd()

static int mov_read_mdhd ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1858 of file mov.c.

◆ mov_read_mvhd()

static int mov_read_mvhd ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1904 of file mov.c.

◆ set_last_stream_little_endian()

static void set_last_stream_little_endian ( AVFormatContext fc)
static

Definition at line 1943 of file mov.c.

Referenced by mov_read_enda(), and mov_read_pcmc().

◆ mov_read_enda()

static int mov_read_enda ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1972 of file mov.c.

◆ mov_read_pcmc()

static int mov_read_pcmc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 1981 of file mov.c.

◆ mov_read_colr()

static int mov_read_colr ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2058 of file mov.c.

◆ mov_read_fiel()

static int mov_read_fiel ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2140 of file mov.c.

◆ mov_realloc_extradata()

static int mov_realloc_extradata ( AVCodecParameters par,
MOVAtom  atom 
)
static

Definition at line 2174 of file mov.c.

Referenced by mov_read_aclr(), mov_read_extradata(), and mov_read_lhvc().

◆ mov_read_atom_into_extradata()

static int64_t mov_read_atom_into_extradata ( MOVContext c,
AVIOContext pb,
MOVAtom  atom,
AVCodecParameters par,
uint8_t *  buf 
)
static

Definition at line 2189 of file mov.c.

Referenced by mov_read_aclr(), and mov_read_extradata().

◆ mov_read_extradata()

static int mov_read_extradata ( MOVContext c,
AVIOContext pb,
MOVAtom  atom,
enum AVCodecID  codec_id 
)
static

◆ mov_read_alac()

static int mov_read_alac ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2237 of file mov.c.

◆ mov_read_avss()

static int mov_read_avss ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2242 of file mov.c.

◆ mov_read_jp2h()

static int mov_read_jp2h ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2247 of file mov.c.

◆ mov_read_dpxe()

static int mov_read_dpxe ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2252 of file mov.c.

◆ mov_read_avid()

static int mov_read_avid ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2257 of file mov.c.

Referenced by mov_read_ares().

◆ mov_read_targa_y216()

static int mov_read_targa_y216 ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2265 of file mov.c.

◆ mov_read_ares()

static int mov_read_ares ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2279 of file mov.c.

◆ mov_read_aclr()

static int mov_read_aclr ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2322 of file mov.c.

◆ mov_read_svq3()

static int mov_read_svq3 ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2365 of file mov.c.

◆ mov_read_wave()

static int mov_read_wave ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2370 of file mov.c.

◆ mov_read_glbl()

static int mov_read_glbl ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

This function reads atom content and puts data in extradata without tag nor size unlike mov_read_extradata.

Definition at line 2427 of file mov.c.

Referenced by mov_parse_stsd_subtitle().

◆ mov_read_dvc1()

static int mov_read_dvc1 ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2473 of file mov.c.

◆ mov_read_sbas()

static int mov_read_sbas ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2498 of file mov.c.

◆ mov_read_strf()

static int mov_read_strf ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

An strf atom is a BITMAPINFOHEADER struct.

This struct is 40 bytes itself, but can have extradata appended at the end after the 40 bytes belonging to the struct.

Definition at line 2527 of file mov.c.

◆ mov_read_stco()

static int mov_read_stco ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 2549 of file mov.c.

◆ mov_codec_id()

static int mov_codec_id ( AVStream st,
uint32_t  format 
)
static

◆ mov_parse_stsd_video()

static void mov_parse_stsd_video ( MOVContext c,
AVIOContext pb,
AVStream st,
MOVStreamContext sc 
)
static

Definition at line 2654 of file mov.c.

Referenced by ff_mov_read_stsd_entries().

◆ mov_parse_stsd_audio()

static void mov_parse_stsd_audio ( MOVContext c,
AVIOContext pb,
AVStream st,
MOVStreamContext sc 
)
static

Definition at line 2712 of file mov.c.

Referenced by ff_mov_read_stsd_entries().

◆ mov_parse_stsd_subtitle()

static void mov_parse_stsd_subtitle ( MOVContext c,
AVIOContext pb,
AVStream st,
MOVStreamContext sc,
int64_t  size 
)
static

Definition at line 2829 of file mov.c.

Referenced by ff_mov_read_stsd_entries().

◆ yuv_to_rgba()

static uint32_t yuv_to_rgba ( uint32_t  ycbcr)
static

Definition at line 2845 of file mov.c.

Referenced by mov_rewrite_dvd_sub_extradata().

◆ mov_rewrite_dvd_sub_extradata()

static int mov_rewrite_dvd_sub_extradata ( AVStream st)
static

Definition at line 2861 of file mov.c.

Referenced by mov_read_header().

◆ mov_parse_stsd_data()

static int mov_parse_stsd_data ( MOVContext c,
AVIOContext pb,
AVStream st,
MOVStreamContext sc,
int64_t  size 
)
static

Definition at line 2893 of file mov.c.

Referenced by ff_mov_read_stsd_entries().

◆ mov_finalize_stsd_codec()

static int mov_finalize_stsd_codec ( MOVContext c,
AVIOContext pb,
AVStream st,
MOVStreamContext sc 
)
static

Definition at line 2939 of file mov.c.

Referenced by mov_read_stsd().

◆ mov_skip_multiple_stsd()

static int mov_skip_multiple_stsd ( MOVContext c,
AVIOContext pb,
int  codec_tag,
int  format,
int64_t  size 
)
static

Definition at line 3039 of file mov.c.

Referenced by ff_mov_read_stsd_entries().

◆ ff_mov_read_stsd_entries()

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

Definition at line 3065 of file mov.c.

Referenced by mov_read_stsd(), and qt_rtp_parse_packet().

◆ mov_read_stsd()

static int mov_read_stsd ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3162 of file mov.c.

◆ mov_read_stsc()

static int mov_read_stsc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3227 of file mov.c.

◆ mov_stsc_index_valid()

static int mov_stsc_index_valid ( unsigned int  index,
unsigned int  count 
)
inlinestatic

Definition at line 3307 of file mov.c.

Referenced by mov_build_index(), mov_finalize_packet(), and mov_get_stsc_samples().

◆ mov_get_stsc_samples()

static int64_t mov_get_stsc_samples ( MOVStreamContext sc,
unsigned int  index 
)
inlinestatic

Definition at line 3313 of file mov.c.

Referenced by mov_finalize_packet(), and mov_seek_stream().

◆ mov_read_stps()

static int mov_read_stps ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3328 of file mov.c.

◆ mov_read_stss()

static int mov_read_stss ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3369 of file mov.c.

◆ mov_read_stsz()

static int mov_read_stsz ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3424 of file mov.c.

◆ mov_read_stts()

static int mov_read_stts ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3517 of file mov.c.

◆ mov_read_sdtp()

static int mov_read_sdtp ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3637 of file mov.c.

◆ mov_update_dts_shift()

static void mov_update_dts_shift ( MOVStreamContext sc,
int  duration,
void *  logctx 
)
static

Definition at line 3671 of file mov.c.

Referenced by mov_read_ctts(), and mov_read_trun().

◆ mov_read_ctts()

static int mov_read_ctts ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3682 of file mov.c.

◆ mov_read_sgpd()

static int mov_read_sgpd ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3753 of file mov.c.

◆ mov_read_sbgp()

static int mov_read_sbgp ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 3809 of file mov.c.

◆ get_edit_list_entry()

static int get_edit_list_entry ( MOVContext mov,
const MOVStreamContext msc,
unsigned int  edit_list_index,
int64_t edit_list_media_time,
int64_t edit_list_duration,
int64_t  global_timescale 
)
static

Get ith edit list entry (media time, duration).

Definition at line 3870 of file mov.c.

Referenced by mov_fix_index().

◆ find_prev_closest_index()

static int find_prev_closest_index ( AVStream st,
AVIndexEntry e_old,
int  nb_old,
MOVStts stts_data,
int64_t  stts_count,
MOVCtts ctts_data,
int64_t  ctts_count,
int64_t  timestamp_pts,
int  flag,
int64_t index,
int64_t stts_index,
int64_t stts_sample,
int64_t ctts_index,
int64_t ctts_sample 
)
static

Find the closest previous frame to the timestamp_pts, in e_old index entries.

Searching for just any frame / just key frames can be controlled by last argument 'flag'. Note that if ctts_data is not NULL, we will always search for a key frame irrespective of the value of 'flag'. If we don't find any keyframe, we will return the first frame of the video.

Here the timestamp_pts is considered to be a presentation timestamp and the timestamp of index entries are considered to be decoding timestamps.

Returns 0 if successful in finding a frame, else returns -1. Places the found index corresponding output arg.

If ctts_old is not NULL, then refines the searched entry by searching backwards from the found timestamp, to find the frame with correct PTS.

Places the found ctts_index and ctts_sample in corresponding output args.

Definition at line 3916 of file mov.c.

Referenced by mov_fix_index().

◆ add_index_entry()

static int64_t add_index_entry ( AVStream st,
int64_t  pos,
int64_t  timestamp,
int  size,
int  distance,
int  flags 
)
static

Add index entry with the given values, to the end of ffstream(st)->index_entries.

Returns the new size ffstream(st)->index_entries if successful, else returns -1.

This function is similar to ff_add_index_entry in libavformat/utils.c except that here we are always unconditionally adding an index entry to the end, instead of searching the entries list and skipping the add if there is an existing entry with the same timestamp. This is needed because the mov_fix_index calls this func with the same unincremented timestamp for successive discarded frames.

Definition at line 4043 of file mov.c.

Referenced by mov_fix_index().

◆ fix_index_entry_timestamps()

static void fix_index_entry_timestamps ( AVStream st,
int  end_index,
int64_t  end_ts,
int64_t frame_duration_buffer,
int  frame_duration_buffer_size 
)
static

Rewrite timestamps of index entries in the range [end_index - frame_duration_buffer_size, end_index) by subtracting end_ts successively by the amounts given in frame_duration_buffer.

Definition at line 4084 of file mov.c.

Referenced by mov_fix_index().

◆ add_stts_entry()

static int64_t add_stts_entry ( MOVStts **  stts_data,
unsigned int *  stts_count,
unsigned int *  allocated_size,
int  count,
int  duration 
)
static

Definition at line 4096 of file mov.c.

Referenced by mov_build_index(), and mov_fix_index().

◆ mov_estimate_video_delay()

static void mov_estimate_video_delay ( MOVContext c,
AVStream st 
)
static

Definition at line 4155 of file mov.c.

Referenced by mov_build_index().

◆ mov_current_sample_inc()

static void mov_current_sample_inc ( MOVStreamContext sc)
static

Definition at line 4211 of file mov.c.

Referenced by mov_read_packet(), and mov_read_seek().

◆ mov_current_sample_dec()

static void mov_current_sample_dec ( MOVStreamContext sc)
static

Definition at line 4223 of file mov.c.

Referenced by mov_read_packet().

◆ mov_current_sample_set()

static void mov_current_sample_set ( MOVStreamContext sc,
int  current_sample 
)
static

Definition at line 4235 of file mov.c.

Referenced by mov_read_packet(), mov_read_seek(), and mov_seek_stream().

◆ mov_fix_index()

static void mov_fix_index ( MOVContext mov,
AVStream st 
)
static

Fix ffstream(st)->index_entries, so that it contains only the entries (and the entries which are needed to decode them) that fall in the edit list time ranges.

Also fixes the timestamps of the index entries to match the timeline specified the edit lists.

Definition at line 4263 of file mov.c.

Referenced by mov_build_index().

◆ get_sgpd_sync_index()

static uint32_t get_sgpd_sync_index ( const MOVStreamContext sc,
int  nal_unit_type 
)
static

Definition at line 4610 of file mov.c.

Referenced by build_open_gop_key_points().

◆ build_open_gop_key_points()

static int build_open_gop_key_points ( AVStream st)
static

Definition at line 4618 of file mov.c.

Referenced by mov_build_index().

◆ mov_build_index()

static void mov_build_index ( MOVContext mov,
AVStream st 
)
static

Definition at line 4681 of file mov.c.

Referenced by mov_parse_heif_items(), and mov_read_trak().

◆ test_same_origin()

static int test_same_origin ( const char *  src,
const char *  ref 
)
static

Definition at line 5035 of file mov.c.

Referenced by mov_open_dref().

◆ mov_open_dref()

static int mov_open_dref ( MOVContext c,
AVIOContext **  pb,
const char *  src,
MOVDref ref 
)
static

Definition at line 5064 of file mov.c.

Referenced by mov_read_trak().

◆ fix_timescale()

static void fix_timescale ( MOVContext c,
MOVStreamContext sc 
)
static

Definition at line 5136 of file mov.c.

Referenced by mov_read_header(), and mov_read_trak().

◆ mov_read_trak()

static int mov_read_trak ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5192 of file mov.c.

◆ mov_read_ilst()

static int mov_read_ilst ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5361 of file mov.c.

◆ mov_read_keys()

static int mov_read_keys ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5370 of file mov.c.

Referenced by mov_read_default().

◆ mov_read_custom()

static int mov_read_custom ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5416 of file mov.c.

◆ heif_add_stream()

static int heif_add_stream ( MOVContext c,
HEIFItem item 
)
static

Definition at line 5497 of file mov.c.

Referenced by mov_read_infe().

◆ mov_read_meta()

static int mov_read_meta ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5554 of file mov.c.

◆ mov_read_tkhd()

static int mov_read_tkhd ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5580 of file mov.c.

◆ mov_read_tfhd()

static int mov_read_tfhd ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5685 of file mov.c.

◆ mov_read_chap()

static int mov_read_chap ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5732 of file mov.c.

◆ mov_read_trex()

static int mov_read_trex ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5753 of file mov.c.

◆ mov_read_tfdt()

static int mov_read_tfdt ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5779 of file mov.c.

◆ mov_read_trun()

static int mov_read_trun ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 5818 of file mov.c.

◆ mov_read_sidx()

static int mov_read_sidx ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6146 of file mov.c.

◆ mov_read_wide()

static int mov_read_wide ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6284 of file mov.c.

◆ mov_read_cmov()

static int mov_read_cmov ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6304 of file mov.c.

◆ mov_read_elst()

static int mov_read_elst ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6357 of file mov.c.

◆ mov_read_tmcd()

static int mov_read_tmcd ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6426 of file mov.c.

◆ mov_read_vpcc()

static int mov_read_vpcc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6437 of file mov.c.

◆ mov_read_smdm()

static int mov_read_smdm ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6481 of file mov.c.

◆ mov_read_mdcv()

static int mov_read_mdcv ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6528 of file mov.c.

◆ mov_read_coll()

static int mov_read_coll ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6572 of file mov.c.

◆ mov_read_clli()

static int mov_read_clli ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6609 of file mov.c.

◆ mov_read_amve()

static int mov_read_amve ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6638 of file mov.c.

◆ mov_read_st3d()

static int mov_read_st3d ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6663 of file mov.c.

◆ mov_read_sv3d()

static int mov_read_sv3d ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6710 of file mov.c.

◆ mov_read_vexu_proj()

static int mov_read_vexu_proj ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6847 of file mov.c.

Referenced by mov_read_vexu().

◆ mov_read_eyes()

static int mov_read_eyes ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 6909 of file mov.c.

Referenced by mov_read_vexu().

◆ mov_read_vexu()

static int mov_read_vexu ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7083 of file mov.c.

◆ mov_read_hfov()

static int mov_read_hfov ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7137 of file mov.c.

◆ mov_parse_uuid_spherical()

static int mov_parse_uuid_spherical ( MOVStreamContext sc,
AVIOContext pb,
size_t  len 
)
static

Definition at line 7166 of file mov.c.

Referenced by mov_read_uuid().

◆ mov_read_uuid()

static int mov_read_uuid ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7229 of file mov.c.

◆ mov_read_free()

static int mov_read_free ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7334 of file mov.c.

◆ mov_read_frma()

static int mov_read_frma ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7356 of file mov.c.

◆ get_current_encryption_info()

static int get_current_encryption_info ( MOVContext c,
MOVEncryptionIndex **  encryption_index,
MOVStreamContext **  sc 
)
static

Gets the current encryption info and associated current stream context.

If we are parsing a track fragment, this will return the specific encryption info for this fragment; otherwise this will return the global encryption info for the current stream.

Definition at line 7403 of file mov.c.

Referenced by mov_read_saio(), mov_read_saiz(), and mov_read_senc().

◆ mov_read_sample_encryption_info()

static int mov_read_sample_encryption_info ( MOVContext c,
AVIOContext pb,
MOVStreamContext sc,
AVEncryptionInfo **  sample,
int  use_subsamples 
)
static

Definition at line 7454 of file mov.c.

Referenced by mov_parse_auxiliary_info(), and mov_read_senc().

◆ mov_read_senc()

static int mov_read_senc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7508 of file mov.c.

◆ mov_parse_auxiliary_info()

static int mov_parse_auxiliary_info ( MOVContext c,
MOVStreamContext sc,
AVIOContext pb,
MOVEncryptionIndex encryption_index 
)
static

Definition at line 7564 of file mov.c.

Referenced by mov_read_saio(), and mov_read_saiz().

◆ mov_read_saiz()

static int mov_read_saiz ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7626 of file mov.c.

◆ mov_read_saio()

static int mov_read_saio ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7710 of file mov.c.

◆ mov_read_pssh()

static int mov_read_pssh ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7805 of file mov.c.

◆ mov_read_schm()

static int mov_read_schm ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7926 of file mov.c.

◆ mov_read_tenc()

static int mov_read_tenc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 7957 of file mov.c.

◆ mov_read_dfla()

static int mov_read_dfla ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8028 of file mov.c.

◆ cenc_scheme_decrypt()

static int cenc_scheme_decrypt ( MOVContext c,
MOVStreamContext sc,
AVEncryptionInfo sample,
uint8_t *  input,
int  size 
)
static

Definition at line 8068 of file mov.c.

Referenced by cenc_decrypt().

◆ cbc1_scheme_decrypt()

static int cbc1_scheme_decrypt ( MOVContext c,
MOVStreamContext sc,
AVEncryptionInfo sample,
uint8_t *  input,
int  size 
)
static

Definition at line 8121 of file mov.c.

Referenced by cenc_decrypt().

◆ cens_scheme_decrypt()

static int cens_scheme_decrypt ( MOVContext c,
MOVStreamContext sc,
AVEncryptionInfo sample,
uint8_t *  input,
int  size 
)
static

Definition at line 8181 of file mov.c.

Referenced by cenc_decrypt().

◆ cbcs_scheme_decrypt()

static int cbcs_scheme_decrypt ( MOVContext c,
MOVStreamContext sc,
AVEncryptionInfo sample,
uint8_t *  input,
int  size 
)
static

Definition at line 8246 of file mov.c.

Referenced by cenc_decrypt().

◆ cenc_decrypt()

static int cenc_decrypt ( MOVContext c,
MOVStreamContext sc,
AVEncryptionInfo sample,
uint8_t *  input,
int  size 
)
static

Definition at line 8312 of file mov.c.

Referenced by cenc_filter().

◆ get_frag_stream_info_from_pkt()

static MOVFragmentStreamInfo* get_frag_stream_info_from_pkt ( MOVFragmentIndex frag_index,
AVPacket pkt,
int  id 
)
static

Definition at line 8328 of file mov.c.

Referenced by cenc_filter().

◆ cenc_filter()

static int cenc_filter ( MOVContext mov,
AVStream st,
MOVStreamContext sc,
AVPacket pkt,
int  current_index 
)
static

Definition at line 8353 of file mov.c.

Referenced by mov_read_packet().

◆ mov_read_dops()

static int mov_read_dops ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8423 of file mov.c.

◆ mov_read_dmlp()

static int mov_read_dmlp ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8472 of file mov.c.

◆ mov_read_dvcc_dvvc()

static int mov_read_dvcc_dvvc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8507 of file mov.c.

◆ mov_read_lhvc()

static int mov_read_lhvc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8527 of file mov.c.

◆ mov_read_kind()

static int mov_read_kind ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8576 of file mov.c.

◆ mov_read_SA3D()

static int mov_read_SA3D ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8665 of file mov.c.

◆ mov_read_SAND()

static int mov_read_SAND ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8755 of file mov.c.

◆ rb_size()

static int rb_size ( AVIOContext pb,
int64_t value,
int  size 
)
static

Definition at line 8781 of file mov.c.

Referenced by mov_read_iloc().

◆ mov_read_pitm()

static int mov_read_pitm ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8800 of file mov.c.

◆ mov_read_idat()

static int mov_read_idat ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8808 of file mov.c.

◆ mov_read_iloc()

static int mov_read_iloc ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8814 of file mov.c.

◆ mov_read_infe()

static int mov_read_infe ( MOVContext c,
AVIOContext pb,
MOVAtom  atom,
int  idx 
)
static

Definition at line 8899 of file mov.c.

Referenced by mov_read_iinf().

◆ mov_read_iinf()

static int mov_read_iinf ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 8964 of file mov.c.

◆ mov_read_iref_dimg()

static int mov_read_iref_dimg ( MOVContext c,
AVIOContext pb,
int  version 
)
static

Definition at line 9024 of file mov.c.

Referenced by mov_read_iref().

◆ mov_read_iref_thmb()

static int mov_read_iref_thmb ( MOVContext c,
AVIOContext pb,
int  version 
)
static

Definition at line 9083 of file mov.c.

Referenced by mov_read_iref().

◆ mov_read_iref()

static int mov_read_iref ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 9107 of file mov.c.

◆ mov_read_ispe()

static int mov_read_ispe ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 9145 of file mov.c.

◆ mov_read_irot()

static int mov_read_irot ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 9167 of file mov.c.

◆ mov_read_imir()

static int mov_read_imir ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 9187 of file mov.c.

◆ mov_read_iprp()

static int mov_read_iprp ( MOVContext c,
AVIOContext pb,
MOVAtom  atom 
)
static

Definition at line 9206 of file mov.c.

◆ mov_probe()

static int mov_probe ( const AVProbeData p)
static

Definition at line 9567 of file mov.c.

◆ mov_read_chapters()

static void mov_read_chapters ( AVFormatContext s)
static

Definition at line 9661 of file mov.c.

Referenced by mov_read_header().

◆ parse_timecode_in_framenum_format()

static int parse_timecode_in_framenum_format ( AVFormatContext s,
AVStream st,
int64_t  value,
int  flags 
)
static

Definition at line 9760 of file mov.c.

Referenced by mov_read_timecode_track().

◆ mov_read_rtmd_track()

static int mov_read_rtmd_track ( AVFormatContext s,
AVStream st 
)
static

Definition at line 9774 of file mov.c.

Referenced by mov_read_header().

◆ mov_read_timecode_track()

static int mov_read_timecode_track ( AVFormatContext s,
AVStream st 
)
static

Definition at line 9800 of file mov.c.

Referenced by mov_read_header().

◆ mov_free_encryption_index()

static void mov_free_encryption_index ( MOVEncryptionIndex **  index)
static

Definition at line 9847 of file mov.c.

Referenced by mov_free_stream_context(), and mov_read_close().

◆ mov_read_close()

static int mov_read_close ( AVFormatContext s)
static

Definition at line 9920 of file mov.c.

◆ tmcd_is_referenced()

static int tmcd_is_referenced ( AVFormatContext s,
int  tmcd_id 
)
static

Definition at line 9973 of file mov.c.

Referenced by export_orphan_timecode().

◆ export_orphan_timecode()

static void export_orphan_timecode ( AVFormatContext s)
static

Definition at line 9989 of file mov.c.

Referenced by mov_read_header().

◆ read_tfra()

static int read_tfra ( MOVContext mov,
AVIOContext f 
)
static

Definition at line 10007 of file mov.c.

Referenced by mov_read_mfra().

◆ set_icc_profile_from_item()

static int set_icc_profile_from_item ( AVPacketSideData **  coded_side_data,
int *  nb_coded_side_data,
const HEIFItem item 
)
static

Definition at line 10108 of file mov.c.

Referenced by read_image_grid(), and read_image_iovl().

◆ set_display_matrix_from_item()

static int set_display_matrix_from_item ( AVPacketSideData **  coded_side_data,
int *  nb_coded_side_data,
const HEIFItem item 
)
static

Definition at line 10122 of file mov.c.

Referenced by mov_parse_heif_items(), read_image_grid(), and read_image_iovl().

◆ read_image_grid()

static int read_image_grid ( AVFormatContext s,
const HEIFGrid grid,
AVStreamGroupTileGrid tile_grid 
)
static

Definition at line 10143 of file mov.c.

Referenced by mov_parse_tiles().

◆ read_image_iovl()

static int read_image_iovl ( AVFormatContext s,
const HEIFGrid grid,
AVStreamGroupTileGrid tile_grid 
)
static

Definition at line 10242 of file mov.c.

Referenced by mov_parse_tiles().

◆ mov_parse_tiles()

static int mov_parse_tiles ( AVFormatContext s)
static

Definition at line 10324 of file mov.c.

Referenced by mov_parse_heif_items().

◆ mov_parse_heif_items()

static int mov_parse_heif_items ( AVFormatContext s)
static

Definition at line 10408 of file mov.c.

Referenced by mov_read_header().

◆ mov_find_reference_track()

static AVStream* mov_find_reference_track ( AVFormatContext s,
AVStream st,
int  first_index 
)
static

Definition at line 10469 of file mov.c.

Referenced by mov_parse_lcevc_streams().

◆ mov_parse_lcevc_streams()

static int mov_parse_lcevc_streams ( AVFormatContext s)
static

Definition at line 10484 of file mov.c.

Referenced by mov_read_header().

◆ mov_read_header()

static int mov_read_header ( AVFormatContext s)
static

Definition at line 10534 of file mov.c.

◆ mov_find_next_sample()

static AVIndexEntry* mov_find_next_sample ( AVFormatContext s,
AVStream **  st 
)
static

Definition at line 10751 of file mov.c.

Referenced by mov_read_packet(), and mov_read_seek().

◆ should_retry()

static int should_retry ( AVIOContext pb,
int  error_code 
)
static

Definition at line 10781 of file mov.c.

Referenced by mov_read_packet().

◆ mov_switch_root()

static int mov_switch_root ( AVFormatContext s,
int64_t  target,
int  index 
)
static

Definition at line 10788 of file mov.c.

Referenced by mov_read_packet(), and mov_seek_fragment().

◆ mov_change_extradata()

static int mov_change_extradata ( AVStream st,
AVPacket pkt 
)
static

Definition at line 10824 of file mov.c.

Referenced by mov_finalize_packet().

◆ get_eia608_packet()

static int get_eia608_packet ( AVIOContext pb,
AVPacket pkt,
int  size 
)
static

Definition at line 10848 of file mov.c.

Referenced by mov_read_packet().

◆ mov_finalize_packet()

static int mov_finalize_packet ( AVFormatContext s,
AVStream st,
AVIndexEntry sample,
int64_t  current_index,
AVPacket pkt 
)
static

Definition at line 10869 of file mov.c.

Referenced by mov_read_packet().

◆ mov_read_packet()

static int mov_read_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 10940 of file mov.c.

◆ mov_seek_fragment()

static int mov_seek_fragment ( AVFormatContext s,
AVStream st,
int64_t  timestamp 
)
static

Definition at line 11100 of file mov.c.

Referenced by mov_seek_stream().

◆ is_open_key_sample()

static int is_open_key_sample ( const MOVStreamContext sc,
int  sample 
)
static

Definition at line 11119 of file mov.c.

Referenced by can_seek_to_key_sample().

◆ can_seek_to_key_sample()

static int can_seek_to_key_sample ( AVStream st,
int  sample,
int64_t  requested_pts 
)
static

Definition at line 11136 of file mov.c.

Referenced by mov_seek_stream().

◆ mov_seek_stream()

static int mov_seek_stream ( AVFormatContext s,
AVStream st,
int64_t  timestamp,
int  flags 
)
static

Definition at line 11162 of file mov.c.

Referenced by mov_read_seek().

◆ mov_get_skip_samples()

static int64_t mov_get_skip_samples ( AVStream st,
int  sample 
)
static

Definition at line 11247 of file mov.c.

Referenced by mov_read_seek().

◆ mov_read_seek()

static int mov_read_seek ( AVFormatContext s,
int  stream_index,
int64_t  sample_time,
int  flags 
)
static

Definition at line 11264 of file mov.c.

Variable Documentation

◆ mac_to_unicode

const uint32_t mac_to_unicode[128]
static
Initial value:
= {
0x00C4,0x00C5,0x00C7,0x00C9,0x00D1,0x00D6,0x00DC,0x00E1,
0x00E0,0x00E2,0x00E4,0x00E3,0x00E5,0x00E7,0x00E9,0x00E8,
0x00EA,0x00EB,0x00ED,0x00EC,0x00EE,0x00EF,0x00F1,0x00F3,
0x00F2,0x00F4,0x00F6,0x00F5,0x00FA,0x00F9,0x00FB,0x00FC,
0x2020,0x00B0,0x00A2,0x00A3,0x00A7,0x2022,0x00B6,0x00DF,
0x00AE,0x00A9,0x2122,0x00B4,0x00A8,0x2260,0x00C6,0x00D8,
0x221E,0x00B1,0x2264,0x2265,0x00A5,0x00B5,0x2202,0x2211,
0x220F,0x03C0,0x222B,0x00AA,0x00BA,0x03A9,0x00E6,0x00F8,
0x00BF,0x00A1,0x00AC,0x221A,0x0192,0x2248,0x2206,0x00AB,
0x00BB,0x2026,0x00A0,0x00C0,0x00C3,0x00D5,0x0152,0x0153,
0x2013,0x2014,0x201C,0x201D,0x2018,0x2019,0x00F7,0x25CA,
0x00FF,0x0178,0x2044,0x20AC,0x2039,0x203A,0xFB01,0xFB02,
0x2021,0x00B7,0x201A,0x201E,0x2030,0x00C2,0x00CA,0x00C1,
0x00CB,0x00C8,0x00CD,0x00CE,0x00CF,0x00CC,0x00D3,0x00D4,
0xF8FF,0x00D2,0x00DA,0x00DB,0x00D9,0x0131,0x02C6,0x02DC,
0x00AF,0x02D8,0x02D9,0x02DA,0x00B8,0x02DD,0x02DB,0x02C7,
}

Definition at line 151 of file mov.c.

Referenced by mov_read_mac_string().

◆ mov_default_parse_table

const MOVParseTableEntry mov_default_parse_table[]
static

Definition at line 9317 of file mov.c.

Referenced by mov_read_default().

◆ mov_options

const AVOption mov_options[]
static

Definition at line 11322 of file mov.c.

◆ mov_class

const AVClass mov_class
static
Initial value:
= {
.class_name = "mov,mp4,m4a,3gp,3g2,mj2",
.item_name = av_default_item_name,
.option = mov_options,
}

Definition at line 11375 of file mov.c.

◆ ff_mov_demuxer

const FFInputFormat ff_mov_demuxer
Initial value:
= {
.p.name = "mov,mp4,m4a,3gp,3g2,mj2",
.p.long_name = NULL_IF_CONFIG_SMALL("QuickTime / MOV"),
.p.priv_class = &mov_class,
.p.extensions = "mov,mp4,m4a,3gp,3g2,mj2,psp,m4b,ism,ismv,isma,f4v,avif,heic,heif",
.priv_data_size = sizeof(MOVContext),
.flags_internal = FF_INFMT_FLAG_INIT_CLEANUP,
}

Definition at line 11382 of file mov.c.

AVFMT_NO_BYTE_SEEK
#define AVFMT_NO_BYTE_SEEK
Format does not allow seeking by bytes.
Definition: avformat.h:487
AVFMT_SHOW_IDS
#define AVFMT_SHOW_IDS
Show format stream IDs numbers.
Definition: avformat.h:477
mov_class
static const AVClass mov_class
Definition: mov.c:11375
mov_options
static const AVOption mov_options[]
Definition: mov.c:11322
matrix
Definition: vc1dsp.c:43
AVFMT_SEEK_TO_PTS
#define AVFMT_SEEK_TO_PTS
Seeking is based on PTS.
Definition: avformat.h:503
read_seek
static int read_seek(AVFormatContext *ctx, int stream_index, int64_t timestamp, int flags)
Definition: libcdio.c:151
read_close
static av_cold int read_close(AVFormatContext *ctx)
Definition: libcdio.c:143
MOVContext
Definition: isom.h:305
read_packet
static int read_packet(void *opaque, uint8_t *buf, int buf_size)
Definition: avio_read_callback.c:42
mov_read_close
static int mov_read_close(AVFormatContext *s)
Definition: mov.c:9920
FF_INFMT_FLAG_INIT_CLEANUP
#define FF_INFMT_FLAG_INIT_CLEANUP
For an FFInputFormat with this flag set read_close() needs to be called by the caller upon read_heade...
Definition: demux.h:35
LIBAVUTIL_VERSION_INT
#define LIBAVUTIL_VERSION_INT
Definition: version.h:85
read_header
static int read_header(FFV1Context *f)
Definition: ffv1dec.c:540
mov_probe
static int mov_probe(const AVProbeData *p)
Definition: mov.c:9567
av_default_item_name
const char * av_default_item_name(void *ptr)
Return the context name.
Definition: log.c:237
mov_read_header
static int mov_read_header(AVFormatContext *s)
Definition: mov.c:10534
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:94
mov_read_packet
static int mov_read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: mov.c:10940
mov_read_seek
static int mov_read_seek(AVFormatContext *s, int stream_index, int64_t sample_time, int flags)
Definition: mov.c:11264
read_probe
static int read_probe(const AVProbeData *p)
Definition: cdg.c:30