FFmpeg  4.1.11
Data Structures | Macros | Functions | Variables
movenc.c File Reference
#include <stdint.h>
#include <inttypes.h>
#include "movenc.h"
#include "avformat.h"
#include "avio_internal.h"
#include "riff.h"
#include "avio.h"
#include "isom.h"
#include "av1.h"
#include "avc.h"
#include "libavcodec/ac3_parser_internal.h"
#include "libavcodec/dnxhddata.h"
#include "libavcodec/flac.h"
#include "libavcodec/get_bits.h"
#include "libavcodec/internal.h"
#include "libavcodec/put_bits.h"
#include "libavcodec/vc1_common.h"
#include "libavcodec/raw.h"
#include "internal.h"
#include "libavutil/avstring.h"
#include "libavutil/intfloat.h"
#include "libavutil/mathematics.h"
#include "libavutil/libm.h"
#include "libavutil/opt.h"
#include "libavutil/dict.h"
#include "libavutil/pixdesc.h"
#include "libavutil/stereo3d.h"
#include "libavutil/timecode.h"
#include "libavutil/color_utils.h"
#include "hevc.h"
#include "rtpenc.h"
#include "mov_chan.h"
#include "vpcc.h"

Go to the source code of this file.

Data Structures

struct  eac3_info
 

Macros

#define MOV_CLASS(flavor)
 
#define READ_BLOCK
 

Functions

static int get_moov_size (AVFormatContext *s)
 
static int utf8len (const uint8_t *b)
 
static int64_t update_size (AVIOContext *pb, int64_t pos)
 
static int co64_required (const MOVTrack *track)
 
static int is_cover_image (const AVStream *st)
 
static int rtp_hinting_needed (const AVStream *st)
 
static int mov_write_stco_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_stsz_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_stsc_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_stss_tag (AVIOContext *pb, MOVTrack *track, uint32_t flag)
 
static int mov_write_sdtp_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_amr_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_ac3_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_eac3_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_extradata_tag (AVIOContext *pb, MOVTrack *track)
 This function writes extradata "as is". More...
 
static int mov_write_enda_tag (AVIOContext *pb)
 
static int mov_write_enda_tag_be (AVIOContext *pb)
 
static void put_descr (AVIOContext *pb, int tag, unsigned int size)
 
static unsigned compute_avg_bitrate (MOVTrack *track)
 
static int mov_write_esds_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_pcm_le_gt16 (enum AVCodecID codec_id)
 
static int mov_pcm_be_gt16 (enum AVCodecID codec_id)
 
static int mov_write_ms_tag (AVFormatContext *s, AVIOContext *pb, MOVTrack *track)
 
static int mov_write_wfex_tag (AVFormatContext *s, AVIOContext *pb, MOVTrack *track)
 
static int mov_write_dfla_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_dops_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_chan_tag (AVFormatContext *s, AVIOContext *pb, MOVTrack *track)
 
static int mov_write_wave_tag (AVFormatContext *s, AVIOContext *pb, MOVTrack *track)
 
static int mov_write_dvc1_structs (MOVTrack *track, uint8_t *buf)
 
static int mov_write_dvc1_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_glbl_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_get_lpcm_flags (enum AVCodecID codec_id)
 Compute flags for 'lpcm' tag. More...
 
static int get_cluster_duration (MOVTrack *track, int cluster_idx)
 
static int get_samples_per_packet (MOVTrack *track)
 
static int mov_write_audio_tag (AVFormatContext *s, AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_write_d263_tag (AVIOContext *pb)
 
static int mov_write_av1c_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_avcc_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_vpcc_tag (AVFormatContext *s, AVIOContext *pb, MOVTrack *track)
 
static int mov_write_hvcc_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_avid_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_dpxe_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_get_dv_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static AVRational find_fps (AVFormatContext *s, AVStream *st)
 
static int defined_frame_rate (AVFormatContext *s, AVStream *st)
 
static int mov_get_mpeg2_xdcam_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_get_h264_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_get_dnxhd_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_get_rawvideo_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static unsigned int mov_get_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static unsigned int validate_codec_tag (const AVCodecTag *const *tags, unsigned int tag, int codec_id)
 
static unsigned int mov_find_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_write_uuid_tag_ipod (AVIOContext *pb)
 Write uuid atom. More...
 
static int mov_write_fiel_tag (AVIOContext *pb, MOVTrack *track, int field_order)
 
static int mov_write_subtitle_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_st3d_tag (AVIOContext *pb, AVStereo3D *stereo_3d)
 
static int mov_write_sv3d_tag (AVFormatContext *s, AVIOContext *pb, AVSphericalMapping *spherical_mapping)
 
static int mov_write_clap_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_pasp_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_gama_tag (AVIOContext *pb, MOVTrack *track, double gamma)
 
static int mov_write_colr_tag (AVIOContext *pb, MOVTrack *track)
 
static void find_compressor (char *compressor_name, int len, MOVTrack *track)
 
static int mov_write_video_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_write_rtp_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_source_reference_tag (AVIOContext *pb, MOVTrack *track, const char *reel_name)
 
static int mov_write_tmcd_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_gpmd_tag (AVIOContext *pb, const MOVTrack *track)
 
static int mov_write_stsd_tag (AVFormatContext *s, AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_write_ctts_tag (AVFormatContext *s, AVIOContext *pb, MOVTrack *track)
 
static int mov_write_stts_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_dref_tag (AVIOContext *pb)
 
static int mov_preroll_write_stbl_atoms (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_stbl_tag (AVFormatContext *s, AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_write_dinf_tag (AVIOContext *pb)
 
static int mov_write_nmhd_tag (AVIOContext *pb)
 
static int mov_write_tcmi_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_gmhd_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_smhd_tag (AVIOContext *pb)
 
static int mov_write_vmhd_tag (AVIOContext *pb)
 
static int is_clcp_track (MOVTrack *track)
 
static int mov_write_hdlr_tag (AVFormatContext *s, AVIOContext *pb, MOVTrack *track)
 
static int mov_write_hmhd_tag (AVIOContext *pb)
 
static int mov_write_minf_tag (AVFormatContext *s, AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_write_mdhd_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_write_mdia_tag (AVFormatContext *s, AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static void write_matrix (AVIOContext *pb, int16_t a, int16_t b, int16_t c, int16_t d, int16_t tx, int16_t ty)
 
static int mov_write_tkhd_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, AVStream *st)
 
static int mov_write_tapt_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_edts_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_write_tref_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_uuid_tag_psp (AVIOContext *pb, MOVTrack *mov)
 
static int mov_write_udta_sdp (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_track_metadata (AVIOContext *pb, AVStream *st, const char *tag, const char *str)
 
static int mov_write_track_udta_tag (AVIOContext *pb, MOVMuxContext *mov, AVStream *st)
 
static int mov_write_trak_tag (AVFormatContext *s, AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, AVStream *st)
 
static int mov_write_iods_tag (AVIOContext *pb, MOVMuxContext *mov)
 
static int mov_write_trex_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_mvex_tag (AVIOContext *pb, MOVMuxContext *mov)
 
static int mov_write_mvhd_tag (AVIOContext *pb, MOVMuxContext *mov)
 
static int mov_write_itunes_hdlr_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_string_data_tag (AVIOContext *pb, const char *data, int lang, int long_style)
 
static int mov_write_string_tag (AVIOContext *pb, const char *name, const char *value, int lang, int long_style)
 
static AVDictionaryEntryget_metadata_lang (AVFormatContext *s, const char *tag, int *lang)
 
static int mov_write_string_metadata (AVFormatContext *s, AVIOContext *pb, const char *name, const char *tag, int long_style)
 
static int mov_write_tmpo_tag (AVIOContext *pb, AVFormatContext *s)
 
static int mov_write_loci_tag (AVFormatContext *s, AVIOContext *pb)
 
static int mov_write_trkn_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s, int disc)
 
static int mov_write_int8_metadata (AVFormatContext *s, AVIOContext *pb, const char *name, const char *tag, int len)
 
static int mov_write_covr (AVIOContext *pb, AVFormatContext *s)
 
static int mov_write_ilst_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_mdta_hdlr_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_mdta_keys_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_mdta_ilst_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_meta_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_raw_metadata_tag (AVFormatContext *s, AVIOContext *pb, const char *name, const char *key)
 
static int ascii_to_wc (AVIOContext *pb, const uint8_t *b)
 
static uint16_t language_code (const char *str)
 
static int mov_write_3gp_udta_tag (AVIOContext *pb, AVFormatContext *s, const char *tag, const char *str)
 
static int mov_write_chpl_tag (AVIOContext *pb, AVFormatContext *s)
 
static int mov_write_udta_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static void mov_write_psp_udta_tag (AVIOContext *pb, const char *str, const char *lang, int type)
 
static int mov_write_uuidusmt_tag (AVIOContext *pb, AVFormatContext *s)
 
static void build_chunks (MOVTrack *trk)
 
static int mov_setup_track_ids (MOVMuxContext *mov, AVFormatContext *s)
 Assign track ids. More...
 
static int mov_write_moov_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static void param_write_int (AVIOContext *pb, const char *name, int value)
 
static void param_write_string (AVIOContext *pb, const char *name, const char *value)
 
static void param_write_hex (AVIOContext *pb, const char *name, const uint8_t *value, int len)
 
static int mov_write_isml_manifest (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_mfhd_tag (AVIOContext *pb, MOVMuxContext *mov)
 
static uint32_t get_sample_flags (MOVTrack *track, MOVIentry *entry)
 
static int mov_write_tfhd_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, int64_t moof_offset)
 
static int mov_write_trun_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, int moof_size, int first, int end)
 
static int mov_write_tfxd_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_tfrf_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, int entry)
 
static int mov_write_tfrf_tags (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track)
 
static int mov_add_tfra_entries (AVIOContext *pb, MOVMuxContext *mov, int tracks, int size)
 
static void mov_prune_frag_info (MOVMuxContext *mov, int tracks, int max)
 
static int mov_write_tfdt_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_traf_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, int64_t moof_offset, int moof_size)
 
static int mov_write_moof_tag_internal (AVIOContext *pb, MOVMuxContext *mov, int tracks, int moof_size)
 
static int mov_write_sidx_tag (AVIOContext *pb, MOVTrack *track, int ref_size, int total_sidx_size)
 
static int mov_write_sidx_tags (AVIOContext *pb, MOVMuxContext *mov, int tracks, int ref_size)
 
static int mov_write_prft_tag (AVIOContext *pb, MOVMuxContext *mov, int tracks)
 
static int mov_write_moof_tag (AVIOContext *pb, MOVMuxContext *mov, int tracks, int64_t mdat_size)
 
static int mov_write_tfra_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_mfra_tag (AVIOContext *pb, MOVMuxContext *mov)
 
static int mov_write_mdat_tag (AVIOContext *pb, MOVMuxContext *mov)
 
static int mov_write_ftyp_tag (AVIOContext *pb, AVFormatContext *s)
 
static int mov_write_uuidprof_tag (AVIOContext *pb, AVFormatContext *s)
 
static int mov_write_identification (AVIOContext *pb, AVFormatContext *s)
 
static int mov_parse_mpeg2_frame (AVPacket *pkt, uint32_t *flags)
 
static void mov_parse_vc1_frame (AVPacket *pkt, MOVTrack *trk)
 
static int mov_flush_fragment_interleaving (AVFormatContext *s, MOVTrack *track)
 
static int mov_flush_fragment (AVFormatContext *s, int force)
 
static int mov_auto_flush_fragment (AVFormatContext *s, int force)
 
static int check_pkt (AVFormatContext *s, AVPacket *pkt)
 
int ff_mov_write_packet (AVFormatContext *s, AVPacket *pkt)
 
static int mov_write_single_packet (AVFormatContext *s, AVPacket *pkt)
 
static int mov_write_subtitle_end_packet (AVFormatContext *s, int stream_index, int64_t dts)
 
static int mov_write_packet (AVFormatContext *s, AVPacket *pkt)
 
static int mov_create_chapter_track (AVFormatContext *s, int tracknum)
 
static int mov_check_timecode_track (AVFormatContext *s, AVTimecode *tc, int src_index, const char *tcstr)
 
static int mov_create_timecode_track (AVFormatContext *s, int index, int src_index, AVTimecode tc)
 
static void enable_tracks (AVFormatContext *s)
 
static void mov_free (AVFormatContext *s)
 
static uint32_t rgb_to_yuv (uint32_t rgb)
 
static int mov_create_dvd_sub_decoder_specific_info (MOVTrack *track, AVStream *st)
 
static int mov_init (AVFormatContext *s)
 
static int mov_write_header (AVFormatContext *s)
 
static int get_sidx_size (AVFormatContext *s)
 
static int compute_moov_size (AVFormatContext *s)
 
static int compute_sidx_size (AVFormatContext *s)
 
static int shift_data (AVFormatContext *s)
 
static int mov_write_trailer (AVFormatContext *s)
 
static int mov_check_bitstream (struct AVFormatContext *s, const AVPacket *pkt)
 

Variables

static const AVOption options []
 
struct {
   enum AVPixelFormat   pix_fmt
 
   uint32_t   tag
 
   unsigned   bps
 
mov_pix_fmt_tags []
 
static const AVCodecTag codec_cover_image_tags []
 
static const uint16_t fiel_data []
 
static const AVCodecTag codec_3gp_tags []
 
const AVCodecTag codec_mp4_tags []
 
const AVCodecTag codec_ism_tags []
 
static const AVCodecTag codec_ipod_tags []
 
static const AVCodecTag codec_f4v_tags []
 

Macro Definition Documentation

◆ MOV_CLASS

#define MOV_CLASS (   flavor)
Value:
static const AVClass flavor ## _muxer_class = {\
.class_name = #flavor " muxer",\
.item_name = av_default_item_name,\
.option = options,\
.version = LIBAVUTIL_VERSION_INT,\
};
#define LIBAVUTIL_VERSION_INT
Definition: version.h:85
const char * av_default_item_name(void *ptr)
Return the context name.
Definition: log.c:191
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
Definition: log.h:72
static const AVOption options[]
Definition: movenc.c:60
Describe the class of an AVClass context structure.
Definition: log.h:67

Definition at line 109 of file movenc.c.

◆ READ_BLOCK

#define READ_BLOCK
Value:
do { \
read_size[read_buf_id] = avio_read(read_pb, read_buf[read_buf_id], moov_size); \
read_buf_id ^= 1; \
} while (0)
int avio_read(AVIOContext *s, unsigned char *buf, int size)
Read size bytes from AVIOContext into buf.
Definition: aviobuf.c:647

Referenced by shift_data().

Function Documentation

◆ get_moov_size()

static int get_moov_size ( AVFormatContext s)
static

Definition at line 6488 of file movenc.c.

Referenced by compute_moov_size(), and mov_flush_fragment().

◆ utf8len()

static int utf8len ( const uint8_t b)
static

◆ update_size()

static int64_t update_size ( AVIOContext pb,
int64_t  pos 
)
static

◆ co64_required()

static int co64_required ( const MOVTrack track)
static

Definition at line 141 of file movenc.c.

Referenced by mov_write_stco_tag().

◆ is_cover_image()

static int is_cover_image ( const AVStream st)
static

◆ rtp_hinting_needed()

static int rtp_hinting_needed ( const AVStream st)
static

Definition at line 155 of file movenc.c.

Referenced by mov_init(), and mov_write_header().

◆ mov_write_stco_tag()

static int mov_write_stco_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 165 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_stsz_tag()

static int mov_write_stsz_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 189 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_stsc_tag()

static int mov_write_stsc_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 225 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_stss_tag()

static int mov_write_stss_tag ( AVIOContext pb,
MOVTrack track,
uint32_t  flag 
)
static

Definition at line 254 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_sdtp_tag()

static int mov_write_sdtp_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 278 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_amr_tag()

static int mov_write_amr_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 301 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

◆ mov_write_ac3_tag()

static int mov_write_ac3_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 315 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

◆ mov_write_eac3_tag()

static int mov_write_eac3_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 533 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

◆ mov_write_extradata_tag()

static int mov_write_extradata_tag ( AVIOContext pb,
MOVTrack track 
)
static

This function writes extradata "as is".

Extradata must be formatted like a valid atom (with size and tag).

Definition at line 585 of file movenc.c.

Referenced by mov_write_audio_tag(), mov_write_video_tag(), and mov_write_wave_tag().

◆ mov_write_enda_tag()

static int mov_write_enda_tag ( AVIOContext pb)
static

Definition at line 591 of file movenc.c.

Referenced by mov_write_wave_tag().

◆ mov_write_enda_tag_be()

static int mov_write_enda_tag_be ( AVIOContext pb)
static

Definition at line 599 of file movenc.c.

Referenced by mov_write_wave_tag().

◆ put_descr()

static void put_descr ( AVIOContext pb,
int  tag,
unsigned int  size 
)
static

Definition at line 607 of file movenc.c.

Referenced by mov_write_esds_tag(), and mov_write_iods_tag().

◆ compute_avg_bitrate()

static unsigned compute_avg_bitrate ( MOVTrack track)
static

Definition at line 616 of file movenc.c.

Referenced by mov_write_esds_tag().

◆ mov_write_esds_tag()

static int mov_write_esds_tag ( AVIOContext pb,
MOVTrack track 
)
static

◆ mov_pcm_le_gt16()

static int mov_pcm_le_gt16 ( enum AVCodecID  codec_id)
static

Definition at line 684 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

◆ mov_pcm_be_gt16()

static int mov_pcm_be_gt16 ( enum AVCodecID  codec_id)
static

Definition at line 692 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

◆ mov_write_ms_tag()

static int mov_write_ms_tag ( AVFormatContext s,
AVIOContext pb,
MOVTrack track 
)
static

Definition at line 700 of file movenc.c.

Referenced by mov_write_wave_tag().

◆ mov_write_wfex_tag()

static int mov_write_wfex_tag ( AVFormatContext s,
AVIOContext pb,
MOVTrack track 
)
static

Definition at line 712 of file movenc.c.

Referenced by mov_write_audio_tag().

◆ mov_write_dfla_tag()

static int mov_write_dfla_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 723 of file movenc.c.

Referenced by mov_write_audio_tag().

◆ mov_write_dops_tag()

static int mov_write_dops_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 743 of file movenc.c.

Referenced by mov_write_audio_tag().

◆ mov_write_chan_tag()

static int mov_write_chan_tag ( AVFormatContext s,
AVIOContext pb,
MOVTrack track 
)
static

Definition at line 766 of file movenc.c.

Referenced by mov_write_audio_tag().

◆ mov_write_wave_tag()

static int mov_write_wave_tag ( AVFormatContext s,
AVIOContext pb,
MOVTrack track 
)
static

Definition at line 794 of file movenc.c.

Referenced by mov_write_audio_tag().

◆ mov_write_dvc1_structs()

static int mov_write_dvc1_structs ( MOVTrack track,
uint8_t buf 
)
static

Definition at line 837 of file movenc.c.

Referenced by mov_write_dvc1_tag().

◆ mov_write_dvc1_tag()

static int mov_write_dvc1_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 920 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_glbl_tag()

static int mov_write_glbl_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 936 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_video_tag().

◆ mov_get_lpcm_flags()

static int mov_get_lpcm_flags ( enum AVCodecID  codec_id)
static

Compute flags for 'lpcm' tag.

See CoreAudioTypes and AudioStreamBasicDescription at Apple.

Definition at line 948 of file movenc.c.

Referenced by mov_write_audio_tag().

◆ get_cluster_duration()

static int get_cluster_duration ( MOVTrack track,
int  cluster_idx 
)
static

◆ get_samples_per_packet()

static int get_samples_per_packet ( MOVTrack track)
static

Definition at line 993 of file movenc.c.

Referenced by mov_write_audio_tag().

◆ mov_write_audio_tag()

static int mov_write_audio_tag ( AVFormatContext s,
AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 1014 of file movenc.c.

Referenced by mov_write_stsd_tag().

◆ mov_write_d263_tag()

static int mov_write_d263_tag ( AVIOContext pb)
static

Definition at line 1150 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_av1c_tag()

static int mov_write_av1c_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1162 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_avcc_tag()

static int mov_write_avcc_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1172 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_vpcc_tag()

static int mov_write_vpcc_tag ( AVFormatContext s,
AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1182 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_hvcc_tag()

static int mov_write_hvcc_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1194 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_avid_tag()

static int mov_write_avid_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1208 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_dpxe_tag()

static int mov_write_dpxe_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1291 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_get_dv_codec_tag()

static int mov_get_dv_codec_tag ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 1304 of file movenc.c.

Referenced by mov_get_codec_tag().

◆ find_fps()

static AVRational find_fps ( AVFormatContext s,
AVStream st 
)
static

◆ defined_frame_rate()

static int defined_frame_rate ( AVFormatContext s,
AVStream st 
)
static

◆ mov_get_mpeg2_xdcam_codec_tag()

static int mov_get_mpeg2_xdcam_codec_tag ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 1356 of file movenc.c.

Referenced by mov_get_codec_tag().

◆ mov_get_h264_codec_tag()

static int mov_get_h264_codec_tag ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 1418 of file movenc.c.

Referenced by mov_get_codec_tag().

◆ mov_get_dnxhd_codec_tag()

static int mov_get_dnxhd_codec_tag ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 1498 of file movenc.c.

Referenced by mov_get_codec_tag().

◆ mov_get_rawvideo_codec_tag()

static int mov_get_rawvideo_codec_tag ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 1507 of file movenc.c.

Referenced by mov_get_codec_tag().

◆ mov_get_codec_tag()

static unsigned int mov_get_codec_tag ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 1533 of file movenc.c.

Referenced by mov_find_codec_tag().

◆ validate_codec_tag()

static unsigned int validate_codec_tag ( const AVCodecTag *const *  tags,
unsigned int  tag,
int  codec_id 
)
static

Check that tag + id is in the table

Definition at line 1591 of file movenc.c.

Referenced by mov_find_codec_tag().

◆ mov_find_codec_tag()

static unsigned int mov_find_codec_tag ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 1611 of file movenc.c.

Referenced by mov_init().

◆ mov_write_uuid_tag_ipod()

static int mov_write_uuid_tag_ipod ( AVIOContext pb)
static

Write uuid atom.

Needed to make file play in iPods running newest firmware goes after avcC atom in moov.trak.mdia.minf.stbl.stsd.avc1

Definition at line 1634 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_fiel_tag()

static int mov_write_fiel_tag ( AVIOContext pb,
MOVTrack track,
int  field_order 
)
static

Definition at line 1650 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_subtitle_tag()

static int mov_write_subtitle_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1663 of file movenc.c.

Referenced by mov_write_stsd_tag().

◆ mov_write_st3d_tag()

static int mov_write_st3d_tag ( AVIOContext pb,
AVStereo3D stereo_3d 
)
static

Definition at line 1680 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_sv3d_tag()

static int mov_write_sv3d_tag ( AVFormatContext s,
AVIOContext pb,
AVSphericalMapping spherical_mapping 
)
static

Definition at line 1710 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_clap_tag()

static int mov_write_clap_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1768 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_pasp_tag()

static int mov_write_pasp_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1783 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_gama_tag()

static int mov_write_gama_tag ( AVIOContext pb,
MOVTrack track,
double  gamma 
)
static

Definition at line 1796 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_colr_tag()

static int mov_write_colr_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 1821 of file movenc.c.

Referenced by mov_write_video_tag().

◆ find_compressor()

static void find_compressor ( char *  compressor_name,
int  len,
MOVTrack track 
)
static

Definition at line 1902 of file movenc.c.

Referenced by mov_write_video_tag().

◆ mov_write_video_tag()

static int mov_write_video_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 1930 of file movenc.c.

Referenced by mov_write_stsd_tag().

◆ mov_write_rtp_tag()

static int mov_write_rtp_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2108 of file movenc.c.

Referenced by mov_write_stsd_tag().

◆ mov_write_source_reference_tag()

static int mov_write_source_reference_tag ( AVIOContext pb,
MOVTrack track,
const char *  reel_name 
)
static

Definition at line 2128 of file movenc.c.

Referenced by mov_write_tmcd_tag().

◆ mov_write_tmcd_tag()

static int mov_write_tmcd_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2147 of file movenc.c.

Referenced by mov_write_stsd_tag().

◆ mov_write_gpmd_tag()

static int mov_write_gpmd_tag ( AVIOContext pb,
const MOVTrack track 
)
static

Definition at line 2203 of file movenc.c.

Referenced by mov_write_stsd_tag().

◆ mov_write_stsd_tag()

static int mov_write_stsd_tag ( AVFormatContext s,
AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 2215 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_ctts_tag()

static int mov_write_ctts_tag ( AVFormatContext s,
AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2237 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_stts_tag()

static int mov_write_stts_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2278 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_dref_tag()

static int mov_write_dref_tag ( AVIOContext pb)
static

Definition at line 2323 of file movenc.c.

Referenced by mov_write_dinf_tag().

◆ mov_preroll_write_stbl_atoms()

static int mov_preroll_write_stbl_atoms ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2338 of file movenc.c.

Referenced by mov_write_stbl_tag().

◆ mov_write_stbl_tag()

static int mov_write_stbl_tag ( AVFormatContext s,
AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 2433 of file movenc.c.

Referenced by mov_write_minf_tag().

◆ mov_write_dinf_tag()

static int mov_write_dinf_tag ( AVIOContext pb)
static

Definition at line 2468 of file movenc.c.

Referenced by mov_write_minf_tag().

◆ mov_write_nmhd_tag()

static int mov_write_nmhd_tag ( AVIOContext pb)
static

Definition at line 2477 of file movenc.c.

Referenced by mov_write_minf_tag().

◆ mov_write_tcmi_tag()

static int mov_write_tcmi_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2485 of file movenc.c.

Referenced by mov_write_gmhd_tag().

◆ mov_write_gmhd_tag()

static int mov_write_gmhd_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2507 of file movenc.c.

Referenced by mov_write_minf_tag().

◆ mov_write_smhd_tag()

static int mov_write_smhd_tag ( AVIOContext pb)
static

Definition at line 2559 of file movenc.c.

Referenced by mov_write_minf_tag().

◆ mov_write_vmhd_tag()

static int mov_write_vmhd_tag ( AVIOContext pb)
static

Definition at line 2569 of file movenc.c.

Referenced by mov_write_minf_tag().

◆ is_clcp_track()

static int is_clcp_track ( MOVTrack track)
static

Definition at line 2578 of file movenc.c.

Referenced by mov_write_hdlr_tag(), mov_write_minf_tag(), and mov_write_trak_tag().

◆ mov_write_hdlr_tag()

static int mov_write_hdlr_tag ( AVFormatContext s,
AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2584 of file movenc.c.

Referenced by mov_write_mdia_tag(), and mov_write_minf_tag().

◆ mov_write_hmhd_tag()

static int mov_write_hmhd_tag ( AVIOContext pb)
static

Definition at line 2660 of file movenc.c.

Referenced by mov_write_minf_tag().

◆ mov_write_minf_tag()

static int mov_write_minf_tag ( AVFormatContext s,
AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 2675 of file movenc.c.

Referenced by mov_write_mdia_tag().

◆ mov_write_mdhd_tag()

static int mov_write_mdhd_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 2710 of file movenc.c.

Referenced by mov_write_mdia_tag().

◆ mov_write_mdia_tag()

static int mov_write_mdia_tag ( AVFormatContext s,
AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 2749 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ write_matrix()

static void write_matrix ( AVIOContext pb,
int16_t  a,
int16_t  b,
int16_t  c,
int16_t  d,
int16_t  tx,
int16_t  ty 
)
static

Definition at line 2768 of file movenc.c.

Referenced by mov_write_mvhd_tag(), and mov_write_tkhd_tag().

◆ mov_write_tkhd_tag()

static int mov_write_tkhd_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track,
AVStream st 
)
static

Definition at line 2782 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ mov_write_tapt_tag()

static int mov_write_tapt_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 2897 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ mov_write_edts_tag()

static int mov_write_edts_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 2929 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ mov_write_tref_tag()

static int mov_write_tref_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 3014 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ mov_write_uuid_tag_psp()

static int mov_write_uuid_tag_psp ( AVIOContext pb,
MOVTrack mov 
)
static

Definition at line 3025 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ mov_write_udta_sdp()

static int mov_write_udta_sdp ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 3043 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ mov_write_track_metadata()

static int mov_write_track_metadata ( AVIOContext pb,
AVStream st,
const char *  tag,
const char *  str 
)
static

Definition at line 3064 of file movenc.c.

Referenced by mov_write_track_udta_tag().

◆ mov_write_track_udta_tag()

static int mov_write_track_udta_tag ( AVIOContext pb,
MOVMuxContext mov,
AVStream st 
)
static

Definition at line 3078 of file movenc.c.

Referenced by mov_write_trak_tag().

◆ mov_write_trak_tag()

static int mov_write_trak_tag ( AVFormatContext s,
AVIOContext pb,
MOVMuxContext mov,
MOVTrack track,
AVStream st 
)
static

Definition at line 3105 of file movenc.c.

Referenced by mov_write_moov_tag().

◆ mov_write_iods_tag()

static int mov_write_iods_tag ( AVIOContext pb,
MOVMuxContext mov 
)
static

Definition at line 3158 of file movenc.c.

Referenced by mov_write_moov_tag().

◆ mov_write_trex_tag()

static int mov_write_trex_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 3187 of file movenc.c.

Referenced by mov_write_mvex_tag().

◆ mov_write_mvex_tag()

static int mov_write_mvex_tag ( AVIOContext pb,
MOVMuxContext mov 
)
static

Definition at line 3200 of file movenc.c.

Referenced by mov_write_moov_tag().

◆ mov_write_mvhd_tag()

static int mov_write_mvhd_tag ( AVIOContext pb,
MOVMuxContext mov 
)
static

Definition at line 3211 of file movenc.c.

Referenced by mov_write_moov_tag().

◆ mov_write_itunes_hdlr_tag()

static int mov_write_itunes_hdlr_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3271 of file movenc.c.

Referenced by mov_write_meta_tag().

◆ mov_write_string_data_tag()

static int mov_write_string_data_tag ( AVIOContext pb,
const char *  data,
int  lang,
int  long_style 
)
static

Definition at line 3287 of file movenc.c.

Referenced by mov_write_mdta_ilst_tag(), and mov_write_string_tag().

◆ mov_write_string_tag()

static int mov_write_string_tag ( AVIOContext pb,
const char *  name,
const char *  value,
int  lang,
int  long_style 
)
static

Definition at line 3307 of file movenc.c.

Referenced by mov_write_ilst_tag(), and mov_write_string_metadata().

◆ get_metadata_lang()

static AVDictionaryEntry* get_metadata_lang ( AVFormatContext s,
const char *  tag,
int lang 
)
static

Definition at line 3321 of file movenc.c.

Referenced by mov_write_loci_tag(), and mov_write_string_metadata().

◆ mov_write_string_metadata()

static int mov_write_string_metadata ( AVFormatContext s,
AVIOContext pb,
const char *  name,
const char *  tag,
int  long_style 
)
static

Definition at line 3346 of file movenc.c.

Referenced by mov_write_ilst_tag(), and mov_write_udta_tag().

◆ mov_write_tmpo_tag()

static int mov_write_tmpo_tag ( AVIOContext pb,
AVFormatContext s 
)
static

Definition at line 3358 of file movenc.c.

Referenced by mov_write_ilst_tag().

◆ mov_write_loci_tag()

static int mov_write_loci_tag ( AVFormatContext s,
AVIOContext pb 
)
static

Definition at line 3376 of file movenc.c.

Referenced by mov_write_udta_tag().

◆ mov_write_trkn_tag()

static int mov_write_trkn_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s,
int  disc 
)
static

Definition at line 3427 of file movenc.c.

Referenced by mov_write_ilst_tag().

◆ mov_write_int8_metadata()

static int mov_write_int8_metadata ( AVFormatContext s,
AVIOContext pb,
const char *  name,
const char *  tag,
int  len 
)
static

Definition at line 3454 of file movenc.c.

Referenced by mov_write_ilst_tag().

◆ mov_write_covr()

static int mov_write_covr ( AVIOContext pb,
AVFormatContext s 
)
static

Definition at line 3481 of file movenc.c.

Referenced by mov_write_ilst_tag().

◆ mov_write_ilst_tag()

static int mov_write_ilst_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3509 of file movenc.c.

Referenced by mov_write_meta_tag().

◆ mov_write_mdta_hdlr_tag()

static int mov_write_mdta_hdlr_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3549 of file movenc.c.

Referenced by mov_write_meta_tag().

◆ mov_write_mdta_keys_tag()

static int mov_write_mdta_keys_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3564 of file movenc.c.

Referenced by mov_write_meta_tag().

◆ mov_write_mdta_ilst_tag()

static int mov_write_mdta_ilst_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3592 of file movenc.c.

Referenced by mov_write_meta_tag().

◆ mov_write_meta_tag()

static int mov_write_meta_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3614 of file movenc.c.

Referenced by mov_write_udta_tag().

◆ mov_write_raw_metadata_tag()

static int mov_write_raw_metadata_tag ( AVFormatContext s,
AVIOContext pb,
const char *  name,
const char *  key 
)
static

Definition at line 3636 of file movenc.c.

Referenced by mov_write_udta_tag().

◆ ascii_to_wc()

static int ascii_to_wc ( AVIOContext pb,
const uint8_t b 
)
static

Definition at line 3656 of file movenc.c.

Referenced by mov_write_psp_udta_tag().

◆ language_code()

static uint16_t language_code ( const char *  str)
static

◆ mov_write_3gp_udta_tag()

static int mov_write_3gp_udta_tag ( AVIOContext pb,
AVFormatContext s,
const char *  tag,
const char *  str 
)
static

Definition at line 3674 of file movenc.c.

Referenced by mov_write_udta_tag().

◆ mov_write_chpl_tag()

static int mov_write_chpl_tag ( AVIOContext pb,
AVFormatContext s 
)
static

Definition at line 3696 of file movenc.c.

Referenced by mov_write_udta_tag().

◆ mov_write_udta_tag()

static int mov_write_udta_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3722 of file movenc.c.

Referenced by mov_write_moov_tag().

◆ mov_write_psp_udta_tag()

static void mov_write_psp_udta_tag ( AVIOContext pb,
const char *  str,
const char *  lang,
int  type 
)
static

Definition at line 3780 of file movenc.c.

Referenced by mov_write_uuidusmt_tag().

◆ mov_write_uuidusmt_tag()

static int mov_write_uuidusmt_tag ( AVIOContext pb,
AVFormatContext s 
)
static

Definition at line 3793 of file movenc.c.

Referenced by mov_write_moov_tag().

◆ build_chunks()

static void build_chunks ( MOVTrack trk)
static

Definition at line 3831 of file movenc.c.

Referenced by mov_write_moov_tag().

◆ mov_setup_track_ids()

static int mov_setup_track_ids ( MOVMuxContext mov,
AVFormatContext s 
)
static

Assign track ids.

If option "use_stream_ids_as_track_ids" is set, the stream ids are used as track ids.

This assumes mov->tracks and s->streams are in the same order and there are no gaps in either of them (so mov->tracks[n] refers to s->streams[n]).

As an exception, there can be more entries in s->streams than in mov->tracks, in which case new track ids are generated (starting after the largest found stream id).

Definition at line 3866 of file movenc.c.

Referenced by mov_write_isml_manifest(), and mov_write_moov_tag().

◆ mov_write_moov_tag()

static int mov_write_moov_tag ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3900 of file movenc.c.

Referenced by get_moov_size(), mov_flush_fragment(), mov_write_header(), and mov_write_trailer().

◆ param_write_int()

static void param_write_int ( AVIOContext pb,
const char *  name,
int  value 
)
static

Definition at line 3976 of file movenc.c.

Referenced by mov_write_isml_manifest().

◆ param_write_string()

static void param_write_string ( AVIOContext pb,
const char *  name,
const char *  value 
)
static

Definition at line 3981 of file movenc.c.

Referenced by mov_write_isml_manifest().

◆ param_write_hex()

static void param_write_hex ( AVIOContext pb,
const char *  name,
const uint8_t value,
int  len 
)
static

Definition at line 3986 of file movenc.c.

Referenced by mov_write_isml_manifest().

◆ mov_write_isml_manifest()

static int mov_write_isml_manifest ( AVIOContext pb,
MOVMuxContext mov,
AVFormatContext s 
)
static

Definition at line 3995 of file movenc.c.

Referenced by mov_write_header().

◆ mov_write_mfhd_tag()

static int mov_write_mfhd_tag ( AVIOContext pb,
MOVMuxContext mov 
)
static

Definition at line 4127 of file movenc.c.

Referenced by mov_write_moof_tag_internal().

◆ get_sample_flags()

static uint32_t get_sample_flags ( MOVTrack track,
MOVIentry entry 
)
static

Definition at line 4136 of file movenc.c.

Referenced by mov_write_tfhd_tag(), and mov_write_trun_tag().

◆ mov_write_tfhd_tag()

static int mov_write_tfhd_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track,
int64_t  moof_offset 
)
static

Definition at line 4142 of file movenc.c.

Referenced by mov_write_traf_tag().

◆ mov_write_trun_tag()

static int mov_write_trun_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track,
int  moof_size,
int  first,
int  end 
)
static

Definition at line 4202 of file movenc.c.

Referenced by mov_write_traf_tag().

◆ mov_write_tfxd_tag()

static int mov_write_tfxd_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 4258 of file movenc.c.

Referenced by mov_write_traf_tag().

◆ mov_write_tfrf_tag()

static int mov_write_tfrf_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track,
int  entry 
)
static

Definition at line 4279 of file movenc.c.

Referenced by mov_write_tfrf_tags().

◆ mov_write_tfrf_tags()

static int mov_write_tfrf_tags ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track 
)
static

Definition at line 4314 of file movenc.c.

Referenced by mov_add_tfra_entries().

◆ mov_add_tfra_entries()

static int mov_add_tfra_entries ( AVIOContext pb,
MOVMuxContext mov,
int  tracks,
int  size 
)
static

Definition at line 4328 of file movenc.c.

Referenced by mov_write_moof_tag().

◆ mov_prune_frag_info()

static void mov_prune_frag_info ( MOVMuxContext mov,
int  tracks,
int  max 
)
static

Definition at line 4368 of file movenc.c.

Referenced by mov_write_moof_tag().

◆ mov_write_tfdt_tag()

static int mov_write_tfdt_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 4382 of file movenc.c.

Referenced by mov_write_traf_tag().

◆ mov_write_traf_tag()

static int mov_write_traf_tag ( AVIOContext pb,
MOVMuxContext mov,
MOVTrack track,
int64_t  moof_offset,
int  moof_size 
)
static

Definition at line 4394 of file movenc.c.

Referenced by mov_write_moof_tag_internal().

◆ mov_write_moof_tag_internal()

static int mov_write_moof_tag_internal ( AVIOContext pb,
MOVMuxContext mov,
int  tracks,
int  moof_size 
)
static

Definition at line 4434 of file movenc.c.

Referenced by mov_write_moof_tag().

◆ mov_write_sidx_tag()

static int mov_write_sidx_tag ( AVIOContext pb,
MOVTrack track,
int  ref_size,
int  total_sidx_size 
)
static

Definition at line 4457 of file movenc.c.

Referenced by mov_write_sidx_tags().

◆ mov_write_sidx_tags()

static int mov_write_sidx_tags ( AVIOContext pb,
MOVMuxContext mov,
int  tracks,
int  ref_size 
)
static

Definition at line 4519 of file movenc.c.

Referenced by get_sidx_size(), mov_write_moof_tag(), and mov_write_trailer().

◆ mov_write_prft_tag()

static int mov_write_prft_tag ( AVIOContext pb,
MOVMuxContext mov,
int  tracks 
)
static

Definition at line 4554 of file movenc.c.

Referenced by mov_write_moof_tag().

◆ mov_write_moof_tag()

static int mov_write_moof_tag ( AVIOContext pb,
MOVMuxContext mov,
int  tracks,
int64_t  mdat_size 
)
static

Definition at line 4597 of file movenc.c.

Referenced by mov_flush_fragment().

◆ mov_write_tfra_tag()

static int mov_write_tfra_tag ( AVIOContext pb,
MOVTrack track 
)
static

Definition at line 4628 of file movenc.c.

Referenced by mov_write_mfra_tag().

◆ mov_write_mfra_tag()

static int mov_write_mfra_tag ( AVIOContext pb,
MOVMuxContext mov 
)
static

Definition at line 4652 of file movenc.c.

Referenced by mov_write_trailer().

◆ mov_write_mdat_tag()

static int mov_write_mdat_tag ( AVIOContext pb,
MOVMuxContext mov 
)
static

Definition at line 4678 of file movenc.c.

Referenced by mov_write_header().

◆ mov_write_ftyp_tag()

static int mov_write_ftyp_tag ( AVIOContext pb,
AVFormatContext s 
)
static

Definition at line 4690 of file movenc.c.

Referenced by mov_write_identification().

◆ mov_write_uuidprof_tag()

static int mov_write_uuidprof_tag ( AVIOContext pb,
AVFormatContext s 
)
static

Definition at line 4769 of file movenc.c.

Referenced by mov_write_identification().

◆ mov_write_identification()

static int mov_write_identification ( AVIOContext pb,
AVFormatContext s 
)
static

Definition at line 4840 of file movenc.c.

Referenced by mov_flush_fragment(), and mov_write_header().

◆ mov_parse_mpeg2_frame()

static int mov_parse_mpeg2_frame ( AVPacket pkt,
uint32_t *  flags 
)
static

Definition at line 4869 of file movenc.c.

Referenced by ff_mov_write_packet().

◆ mov_parse_vc1_frame()

static void mov_parse_vc1_frame ( AVPacket pkt,
MOVTrack trk 
)
static

Definition at line 4890 of file movenc.c.

Referenced by ff_mov_write_packet().

◆ mov_flush_fragment_interleaving()

static int mov_flush_fragment_interleaving ( AVFormatContext s,
MOVTrack track 
)
static

Definition at line 4950 of file movenc.c.

Referenced by ff_mov_write_packet(), and mov_flush_fragment().

◆ mov_flush_fragment()

static int mov_flush_fragment ( AVFormatContext s,
int  force 
)
static

Definition at line 4976 of file movenc.c.

Referenced by mov_auto_flush_fragment(), and mov_write_packet().

◆ mov_auto_flush_fragment()

static int mov_auto_flush_fragment ( AVFormatContext s,
int  force 
)
static

Definition at line 5186 of file movenc.c.

Referenced by mov_write_single_packet(), and mov_write_trailer().

◆ check_pkt()

static int check_pkt ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 5200 of file movenc.c.

Referenced by ff_mov_write_packet(), and mov_write_single_packet().

◆ ff_mov_write_packet()

int ff_mov_write_packet ( AVFormatContext s,
AVPacket pkt 
)

◆ mov_write_single_packet()

static int mov_write_single_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 5529 of file movenc.c.

Referenced by mov_write_packet(), and mov_write_subtitle_end_packet().

◆ mov_write_subtitle_end_packet()

static int mov_write_subtitle_end_packet ( AVFormatContext s,
int  stream_index,
int64_t  dts 
)
static

Definition at line 5614 of file movenc.c.

Referenced by mov_write_packet(), and mov_write_trailer().

◆ mov_write_packet()

static int mov_write_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 5635 of file movenc.c.

◆ mov_create_chapter_track()

static int mov_create_chapter_track ( AVFormatContext s,
int  tracknum 
)
static

Definition at line 5737 of file movenc.c.

Referenced by mov_write_header(), and mov_write_trailer().

◆ mov_check_timecode_track()

static int mov_check_timecode_track ( AVFormatContext s,
AVTimecode tc,
int  src_index,
const char *  tcstr 
)
static

Definition at line 5835 of file movenc.c.

Referenced by mov_init(), and mov_write_header().

◆ mov_create_timecode_track()

static int mov_create_timecode_track ( AVFormatContext s,
int  index,
int  src_index,
AVTimecode  tc 
)
static

Definition at line 5844 of file movenc.c.

Referenced by mov_write_header().

◆ enable_tracks()

static void enable_tracks ( AVFormatContext s)
static

Definition at line 5893 of file movenc.c.

Referenced by mov_init().

◆ mov_free()

static void mov_free ( AVFormatContext s)
static

Definition at line 5935 of file movenc.c.

◆ rgb_to_yuv()

static uint32_t rgb_to_yuv ( uint32_t  rgb)
static

Definition at line 5969 of file movenc.c.

Referenced by mov_create_dvd_sub_decoder_specific_info().

◆ mov_create_dvd_sub_decoder_specific_info()

static int mov_create_dvd_sub_decoder_specific_info ( MOVTrack track,
AVStream st 
)
static

Definition at line 5985 of file movenc.c.

Referenced by mov_write_header().

◆ mov_init()

static int mov_init ( AVFormatContext s)
static

Definition at line 6035 of file movenc.c.

◆ mov_write_header()

static int mov_write_header ( AVFormatContext s)
static

Definition at line 6347 of file movenc.c.

◆ get_sidx_size()

static int get_sidx_size ( AVFormatContext s)
static

Definition at line 6501 of file movenc.c.

Referenced by compute_sidx_size().

◆ compute_moov_size()

static int compute_moov_size ( AVFormatContext s)
static

Definition at line 6519 of file movenc.c.

Referenced by shift_data().

◆ compute_sidx_size()

static int compute_sidx_size ( AVFormatContext s)
static

Definition at line 6544 of file movenc.c.

Referenced by shift_data().

◆ shift_data()

static int shift_data ( AVFormatContext s)
static

Definition at line 6559 of file movenc.c.

Referenced by mov_write_trailer().

◆ mov_write_trailer()

static int mov_write_trailer ( AVFormatContext s)
static

Definition at line 6625 of file movenc.c.

◆ mov_check_bitstream()

static int mov_check_bitstream ( struct AVFormatContext s,
const AVPacket pkt 
)
static

Definition at line 6741 of file movenc.c.

Variable Documentation

◆ options

const AVOption options[]
static

Definition at line 60 of file movenc.c.

◆ pix_fmt

enum AVPixelFormat pix_fmt

Definition at line 1477 of file movenc.c.

Referenced by mov_get_rawvideo_codec_tag(), and mov_init().

◆ tag

uint32_t tag
Examples:
metadata.c, and remuxing.c.

Definition at line 1478 of file movenc.c.

Referenced by aac_encode_frame(), aal_read_packet(), add_input_streams(), aiff_read_header(), ape_read_header(), apng_find_chunk(), apng_probe(), apng_read_header(), apng_read_packet(), asf_write_header1(), av_codec_get_tag(), av_dict_set(), av_find_info_tag(), avformat_find_stream_info(), avformat_match_stream_specifier(), avi_extract_stream_metadata(), avi_load_index(), avi_read_header(), avi_read_idx1(), avi_read_nikon(), cfhd_decode(), check_tag(), copy_tag(), decode_aiff_header(), decode_frame_common(), decode_interframe_v4(), decode_interframe_v4a(), decompress_2(), decompress_5(), decompress_68(), dump_metadata(), dxa_read_header(), dxa_read_packet(), dxv_decode(), ea_read_packet(), eval_function(), ff_aac_ltp_insert_new_frame(), ff_mov_read_esds(), ff_mp4_read_dec_config_descr(), ff_vorbiscomment_length(), ff_vorbiscomment_write(), ffat_convert_layout(), ffat_init_encoder(), get_swf_tag(), guess_ni_flag(), gxf_material_tags(), gxf_track_tags(), hq_hqa_decode_frame(), id3v1_create_tag(), id3v1_set_string(), id3v2_check_write_tag(), id3v2_parse(), iff_read_header(), ircam_read_header(), ircam_write_header(), ivr_read_header(), lz_unpack(), main(), matroska_convert_tags(), mkv_write_codecprivate(), mkv_write_header(), mkv_write_simpletag(), mkv_write_stereo_mode(), mkv_write_tag(), mkv_write_tags(), mkv_write_track(), mmf_read_header(), mov_get_codec_tag(), mov_get_dnxhd_codec_tag(), mov_get_dv_codec_tag(), mov_get_h264_codec_tag(), mov_get_mpeg2_xdcam_codec_tag(), mov_get_rawvideo_codec_tag(), mov_probe(), mov_read_custom(), mov_read_meta(), mov_read_sv3d(), mov_read_udta_string(), mov_write_audio_tag(), mpc8_parse_seektable(), mpc8_read_header(), mpc8_read_packet(), mpegts_write_pmt(), mxf_parse_package_comments(), new_output_stream(), nuv_resync(), ogm_header(), parse_dsd_diin(), parse_dsd_prop(), parse_fragment(), parse_mp4_descr(), parse_multipart_header(), parse_video_info(), pmt_cb(), process_line(), put_meta(), put_swf_end_tag(), put_swf_tag(), qcp_read_packet(), qt_rtp_parse_packet(), rdt_load_mdpr(), read_chapter(), read_header(), read_moof_duration(), rfc4175_parse_format(), rm_read_header(), rv10_write_header(), sami_paragraph_to_ass(), set_codec_str(), set_spdif(), show_frame(), show_tags(), siff_probe(), siff_read_header(), skip_tag(), smjpeg_write_header(), sol_read_header(), swf_read_header(), swf_read_packet(), tiff_decode_tag(), validate_codec_tag(), vs2av_log(), write_metadata(), write_stream_codec_info(), write_table_entries_attrib(), write_table_redirector_legacy_attrib(), xan_decode_frame(), xwma_read_header(), yop_decode_frame(), and yop_paint_block().

◆ bps

unsigned bps

◆ mov_pix_fmt_tags

const { ... } mov_pix_fmt_tags[]
Initial value:
= {
{ AV_PIX_FMT_YUYV422, MKTAG('y','u','v','2'), 0 },
{ AV_PIX_FMT_YUYV422, MKTAG('y','u','v','s'), 0 },
{ AV_PIX_FMT_UYVY422, MKTAG('2','v','u','y'), 0 },
{ AV_PIX_FMT_RGB555BE,MKTAG('r','a','w',' '), 16 },
{ AV_PIX_FMT_RGB555LE,MKTAG('L','5','5','5'), 16 },
{ AV_PIX_FMT_RGB565LE,MKTAG('L','5','6','5'), 16 },
{ AV_PIX_FMT_RGB565BE,MKTAG('B','5','6','5'), 16 },
{ AV_PIX_FMT_GRAY16BE,MKTAG('b','1','6','g'), 16 },
{ AV_PIX_FMT_RGB24, MKTAG('r','a','w',' '), 24 },
{ AV_PIX_FMT_BGR24, MKTAG('2','4','B','G'), 24 },
{ AV_PIX_FMT_ARGB, MKTAG('r','a','w',' '), 32 },
{ AV_PIX_FMT_BGRA, MKTAG('B','G','R','A'), 32 },
{ AV_PIX_FMT_RGBA, MKTAG('R','G','B','A'), 32 },
{ AV_PIX_FMT_ABGR, MKTAG('A','B','G','R'), 32 },
{ AV_PIX_FMT_RGB48BE, MKTAG('b','4','8','r'), 48 },
}
packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
Definition: pixfmt.h:81
packed RGB 8:8:8, 24bpp, RGBRGB...
Definition: pixfmt.h:68
packed RGB 5:5:5, 16bpp, (msb)1X 5R 5G 5B(lsb), little-endian, X=unused/undefined ...
Definition: pixfmt.h:108
packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), little-endian
Definition: pixfmt.h:106
packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), big-endian
Definition: pixfmt.h:105
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
Definition: pixfmt.h:94
packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
Definition: pixfmt.h:95
packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
Definition: pixfmt.h:92
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
Definition: pixfmt.h:93
packed RGB 8:8:8, 24bpp, BGRBGR...
Definition: pixfmt.h:69
packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
Definition: pixfmt.h:67
Y , 16bpp, big-endian.
Definition: pixfmt.h:97
packed RGB 5:5:5, 16bpp, (msb)1X 5R 5G 5B(lsb), big-endian , X=unused/undefined
Definition: pixfmt.h:107
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big...
Definition: pixfmt.h:102
#define MKTAG(a, b, c, d)
Definition: common.h:366

Referenced by mov_get_rawvideo_codec_tag().

◆ codec_cover_image_tags

const AVCodecTag codec_cover_image_tags[]
static
Initial value:

Definition at line 1584 of file movenc.c.

◆ fiel_data

const uint16_t fiel_data[]
static
Initial value:
= {
0x0000, 0x0100, 0x0201, 0x0206, 0x0209, 0x020e
}

Definition at line 1646 of file movenc.c.

Referenced by mov_write_fiel_tag().

◆ codec_3gp_tags

const AVCodecTag codec_3gp_tags[]
static
Initial value:
= {
{ AV_CODEC_ID_H263, MKTAG('s','2','6','3') },
{ AV_CODEC_ID_H264, MKTAG('a','v','c','1') },
{ AV_CODEC_ID_MPEG4, MKTAG('m','p','4','v') },
{ AV_CODEC_ID_AAC, MKTAG('m','p','4','a') },
{ AV_CODEC_ID_AMR_NB, MKTAG('s','a','m','r') },
{ AV_CODEC_ID_AMR_WB, MKTAG('s','a','w','b') },
{ AV_CODEC_ID_MOV_TEXT, MKTAG('t','x','3','g') },
}
#define MKTAG(a, b, c, d)
Definition: common.h:366

Definition at line 6756 of file movenc.c.

◆ codec_mp4_tags

const AVCodecTag codec_mp4_tags[]

Definition at line 6767 of file movenc.c.

◆ codec_ism_tags

const AVCodecTag codec_ism_tags[]
Initial value:
= {
{ AV_CODEC_ID_WMAPRO , MKTAG('w', 'm', 'a', ' ') },
}
#define MKTAG(a, b, c, d)
Definition: common.h:366

Definition at line 6801 of file movenc.c.

◆ codec_ipod_tags

const AVCodecTag codec_ipod_tags[]
static
Initial value:
= {
{ AV_CODEC_ID_H264, MKTAG('a','v','c','1') },
{ AV_CODEC_ID_MPEG4, MKTAG('m','p','4','v') },
{ AV_CODEC_ID_AAC, MKTAG('m','p','4','a') },
{ AV_CODEC_ID_ALAC, MKTAG('a','l','a','c') },
{ AV_CODEC_ID_AC3, MKTAG('a','c','-','3') },
{ AV_CODEC_ID_MOV_TEXT, MKTAG('t','x','3','g') },
{ AV_CODEC_ID_MOV_TEXT, MKTAG('t','e','x','t') },
}
#define MKTAG(a, b, c, d)
Definition: common.h:366

Definition at line 6806 of file movenc.c.

◆ codec_f4v_tags

const AVCodecTag codec_f4v_tags[]
static
Initial value:
= {
{ AV_CODEC_ID_MP3, MKTAG('.','m','p','3') },
{ AV_CODEC_ID_AAC, MKTAG('m','p','4','a') },
{ AV_CODEC_ID_H264, MKTAG('a','v','c','1') },
{ AV_CODEC_ID_VP6A, MKTAG('V','P','6','A') },
{ AV_CODEC_ID_VP6F, MKTAG('V','P','6','F') },
}
preferred ID for decoding MPEG audio layer 1, 2 or 3
Definition: avcodec.h:559
#define MKTAG(a, b, c, d)
Definition: common.h:366

Definition at line 6817 of file movenc.c.