FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
movenc.c File Reference
#include <stdint.h>
#include "movenc.h"
#include "avformat.h"
#include "avio_internal.h"
#include "riff.h"
#include "avio.h"
#include "isom.h"
#include "avc.h"
#include "libavcodec/get_bits.h"
#include "libavcodec/put_bits.h"
#include "libavcodec/vc1.h"
#include "internal.h"
#include "libavutil/avstring.h"
#include "libavutil/intfloat.h"
#include "libavutil/mathematics.h"
#include "libavutil/opt.h"
#include "libavutil/dict.h"
#include "hevc.h"
#include "rtpenc.h"
#include "mov_chan.h"
#include <assert.h>

Go to the source code of this file.

Macros

#define MOV_CLASS(flavor)
 
#define READ_BLOCK
 

Functions

static int get_moov_size (AVFormatContext *s)
 
static int64_t update_size (AVIOContext *pb, int64_t pos)
 
static int supports_edts (MOVMuxContext *mov)
 
static int co64_required (const MOVTrack *track)
 
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_amr_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_ac3_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_extradata_tag (AVIOContext *pb, MOVTrack *track)
 This function writes extradata "as is".
 
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 (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_wfex_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_chan_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_wave_tag (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.
 
static int get_cluster_duration (MOVTrack *track, int cluster_idx)
 
static int get_samples_per_packet (MOVTrack *track)
 
static int mov_write_audio_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_d263_tag (AVIOContext *pb)
 
static int mov_write_avcc_tag (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 mp4_get_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int ipod_get_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_get_dv_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static AVRational find_fps (AVFormatContext *s, AVStream *st)
 
static int mov_get_mpeg2_xdcam_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_get_rawvideo_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_get_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_find_codec_tag (AVFormatContext *s, MOVTrack *track)
 
static int mov_write_uuid_tag_ipod (AVIOContext *pb)
 Write uuid atom.
 
static int mov_write_fiel_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_subtitle_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_pasp_tag (AVIOContext *pb, MOVTrack *track)
 
static void find_compressor (char *compressor_name, int len, MOVTrack *track)
 
static int mov_write_video_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_rtp_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_tmcd_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_stsd_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_ctts_tag (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_write_stbl_tag (AVIOContext *pb, 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 mov_write_hdlr_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_hmhd_tag (AVIOContext *pb)
 
static int mov_write_minf_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_mdhd_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_mdia_tag (AVIOContext *pb, 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, MOVTrack *track, AVStream *st)
 
static int mov_write_tapt_tag (AVIOContext *pb, MOVTrack *track)
 
static int mov_write_edts_tag (AVIOContext *pb, 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_trak_tag (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 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_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_ilst_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int mov_write_meta_tag (AVIOContext *pb, MOVMuxContext *mov, AVFormatContext *s)
 
static int utf8len (const uint8_t *b)
 
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_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)
 
static int mov_write_mfhd_tag (AVIOContext *pb, MOVMuxContext *mov)
 
static int mov_write_tfhd_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, int64_t moof_offset)
 
static uint32_t get_sample_flags (MOVTrack *track, MOVIentry *entry)
 
static int mov_write_trun_tag (AVIOContext *pb, MOVMuxContext *mov, MOVTrack *track, int moof_size)
 
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_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_moof_tag (AVIOContext *pb, MOVMuxContext *mov, int tracks)
 
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 void mov_write_uuidprof_tag (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, int fragment)
 
static int mov_flush_fragment (AVFormatContext *s)
 
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_create_timecode_track (AVFormatContext *s, int index, int src_index, const char *tcstr)
 
static void enable_tracks (AVFormatContext *s)
 
static void mov_free (AVFormatContext *s)
 
static int mov_write_header (AVFormatContext *s)
 
static int compute_moov_size (AVFormatContext *s)
 
static int shift_data (AVFormatContext *s)
 
static int mov_write_trailer (AVFormatContext *s)
 

Variables

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

Macro Definition Documentation

#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,\
};

Definition at line 74 of file movenc.c.

#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)

Referenced by shift_data().

Function Documentation

static int get_moov_size ( AVFormatContext *  s)
static

Definition at line 4050 of file movenc.c.

Referenced by compute_moov_size(), and mov_flush_fragment().

static int64_t update_size ( AVIOContext *  pb,
int64_t  pos 
)
static
static int supports_edts ( MOVMuxContext *  mov)
static

Definition at line 95 of file movenc.c.

Referenced by ff_mov_write_packet(), mov_write_header(), and mov_write_trak_tag().

static int co64_required ( const MOVTrack *  track)
static

Definition at line 101 of file movenc.c.

Referenced by mov_write_stco_tag().

static int mov_write_stco_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 109 of file movenc.c.

Referenced by mov_write_stbl_tag().

static int mov_write_stsz_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 133 of file movenc.c.

Referenced by mov_write_stbl_tag().

static int mov_write_stsc_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 169 of file movenc.c.

Referenced by mov_write_stbl_tag().

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

Definition at line 198 of file movenc.c.

Referenced by mov_write_stbl_tag().

static int mov_write_amr_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 221 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

static int mov_write_ac3_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 235 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_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 283 of file movenc.c.

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

static int mov_write_enda_tag ( AVIOContext *  pb)
static

Definition at line 289 of file movenc.c.

Referenced by mov_write_wave_tag().

static int mov_write_enda_tag_be ( AVIOContext *  pb)
static

Definition at line 297 of file movenc.c.

Referenced by mov_write_wave_tag().

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

Definition at line 305 of file movenc.c.

Referenced by mov_write_esds_tag(), and mov_write_iods_tag().

static unsigned compute_avg_bitrate ( MOVTrack *  track)
static

Definition at line 314 of file movenc.c.

Referenced by mov_write_esds_tag().

static int mov_write_esds_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 325 of file movenc.c.

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

static int mov_pcm_le_gt16 ( enum AVCodecID  codec_id)
static

Definition at line 377 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

static int mov_pcm_be_gt16 ( enum AVCodecID  codec_id)
static

Definition at line 385 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_wave_tag().

static int mov_write_ms_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 393 of file movenc.c.

Referenced by mov_write_wave_tag().

static int mov_write_wfex_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 403 of file movenc.c.

Referenced by mov_write_audio_tag().

static int mov_write_chan_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 412 of file movenc.c.

Referenced by mov_write_audio_tag().

static int mov_write_wave_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 437 of file movenc.c.

Referenced by mov_write_audio_tag().

static int mov_write_dvc1_structs ( MOVTrack *  track,
uint8_t *  buf 
)
static

Definition at line 478 of file movenc.c.

Referenced by mov_write_dvc1_tag(), and mov_write_trailer().

static int mov_write_dvc1_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 553 of file movenc.c.

Referenced by mov_write_video_tag().

static int mov_write_glbl_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 570 of file movenc.c.

Referenced by mov_write_audio_tag(), and mov_write_video_tag().

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 582 of file movenc.c.

Referenced by mov_write_audio_tag().

static int get_cluster_duration ( MOVTrack *  track,
int  cluster_idx 
)
static
static int get_samples_per_packet ( MOVTrack *  track)
static

Definition at line 627 of file movenc.c.

Referenced by mov_write_audio_tag().

static int mov_write_audio_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 648 of file movenc.c.

Referenced by mov_write_stsd_tag().

static int mov_write_d263_tag ( AVIOContext *  pb)
static

Definition at line 755 of file movenc.c.

Referenced by mov_write_video_tag().

static int mov_write_avcc_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 767 of file movenc.c.

Referenced by mov_write_video_tag().

static int mov_write_hvcc_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 777 of file movenc.c.

Referenced by mov_write_video_tag().

static int mov_write_avid_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 788 of file movenc.c.

Referenced by mov_write_video_tag().

static int mp4_get_codec_tag ( AVFormatContext *  s,
MOVTrack *  track 
)
static

Definition at line 835 of file movenc.c.

Referenced by mov_find_codec_tag().

static int ipod_get_codec_tag ( AVFormatContext *  s,
MOVTrack *  track 
)
static

Definition at line 865 of file movenc.c.

Referenced by mov_find_codec_tag().

static int mov_get_dv_codec_tag ( AVFormatContext *  s,
MOVTrack *  track 
)
static

Definition at line 882 of file movenc.c.

Referenced by mov_get_codec_tag().

static AVRational find_fps ( AVFormatContext *  s,
AVStream *  st 
)
static
static int mov_get_mpeg2_xdcam_codec_tag ( AVFormatContext *  s,
MOVTrack *  track 
)
static

Definition at line 920 of file movenc.c.

Referenced by mov_get_codec_tag().

static int mov_get_rawvideo_codec_tag ( AVFormatContext *  s,
MOVTrack *  track 
)
static

Definition at line 1004 of file movenc.c.

Referenced by mov_get_codec_tag().

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

Definition at line 1021 of file movenc.c.

Referenced by mov_find_codec_tag().

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

Definition at line 1082 of file movenc.c.

Referenced by mov_write_header().

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 1108 of file movenc.c.

Referenced by mov_write_video_tag().

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

Definition at line 1124 of file movenc.c.

Referenced by mov_write_video_tag().

static int mov_write_subtitle_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1137 of file movenc.c.

Referenced by mov_write_stsd_tag().

static int mov_write_pasp_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1152 of file movenc.c.

Referenced by mov_write_video_tag().

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

Definition at line 1165 of file movenc.c.

Referenced by mov_write_video_tag().

static int mov_write_video_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1191 of file movenc.c.

Referenced by mov_write_stsd_tag().

static int mov_write_rtp_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1274 of file movenc.c.

Referenced by mov_write_stsd_tag().

static int mov_write_tmcd_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1294 of file movenc.c.

Referenced by mov_write_stsd_tag().

static int mov_write_stsd_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1329 of file movenc.c.

Referenced by mov_write_stbl_tag().

static int mov_write_ctts_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1349 of file movenc.c.

Referenced by mov_write_stbl_tag().

static int mov_write_stts_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1383 of file movenc.c.

Referenced by mov_write_stbl_tag().

static int mov_write_dref_tag ( AVIOContext *  pb)
static

Definition at line 1424 of file movenc.c.

Referenced by mov_write_dinf_tag().

static int mov_write_stbl_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1439 of file movenc.c.

Referenced by mov_write_minf_tag().

static int mov_write_dinf_tag ( AVIOContext *  pb)
static

Definition at line 1461 of file movenc.c.

Referenced by mov_write_minf_tag().

static int mov_write_nmhd_tag ( AVIOContext *  pb)
static

Definition at line 1470 of file movenc.c.

Referenced by mov_write_minf_tag().

static int mov_write_tcmi_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1478 of file movenc.c.

Referenced by mov_write_gmhd_tag().

static int mov_write_gmhd_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1500 of file movenc.c.

Referenced by mov_write_minf_tag().

static int mov_write_smhd_tag ( AVIOContext *  pb)
static

Definition at line 1546 of file movenc.c.

Referenced by mov_write_minf_tag().

static int mov_write_vmhd_tag ( AVIOContext *  pb)
static

Definition at line 1556 of file movenc.c.

Referenced by mov_write_minf_tag().

static int mov_write_hdlr_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1565 of file movenc.c.

Referenced by mov_write_mdia_tag(), and mov_write_minf_tag().

static int mov_write_hmhd_tag ( AVIOContext *  pb)
static

Definition at line 1624 of file movenc.c.

Referenced by mov_write_minf_tag().

static int mov_write_minf_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1639 of file movenc.c.

Referenced by mov_write_mdia_tag().

static int mov_write_mdhd_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1666 of file movenc.c.

Referenced by mov_write_mdia_tag().

static int mov_write_mdia_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1702 of file movenc.c.

Referenced by mov_write_trak_tag().

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 1717 of file movenc.c.

Referenced by mov_write_mvhd_tag(), and mov_write_tkhd_tag().

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

Definition at line 1731 of file movenc.c.

Referenced by mov_write_trak_tag().

static int mov_write_tapt_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1806 of file movenc.c.

Referenced by mov_write_trak_tag().

static int mov_write_edts_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1838 of file movenc.c.

Referenced by mov_write_trak_tag().

static int mov_write_tref_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1889 of file movenc.c.

Referenced by mov_write_trak_tag().

static int mov_write_uuid_tag_psp ( AVIOContext *  pb,
MOVTrack *  mov 
)
static

Definition at line 1900 of file movenc.c.

Referenced by mov_write_trak_tag().

static int mov_write_udta_sdp ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1918 of file movenc.c.

Referenced by mov_write_trak_tag().

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

Definition at line 1939 of file movenc.c.

Referenced by mov_write_moov_tag().

static int mov_write_iods_tag ( AVIOContext *  pb,
MOVMuxContext *  mov 
)
static

Definition at line 1963 of file movenc.c.

Referenced by mov_write_moov_tag().

static int mov_write_trex_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 1992 of file movenc.c.

Referenced by mov_write_mvex_tag().

static int mov_write_mvex_tag ( AVIOContext *  pb,
MOVMuxContext *  mov 
)
static

Definition at line 2005 of file movenc.c.

Referenced by mov_write_moov_tag().

static int mov_write_mvhd_tag ( AVIOContext *  pb,
MOVMuxContext *  mov 
)
static

Definition at line 2016 of file movenc.c.

Referenced by mov_write_moov_tag().

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

Definition at line 2069 of file movenc.c.

Referenced by mov_write_meta_tag().

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

Definition at line 2085 of file movenc.c.

Referenced by 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 2105 of file movenc.c.

Referenced by mov_write_ilst_tag(), and 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 2119 of file movenc.c.

Referenced by mov_write_ilst_tag(), and mov_write_udta_tag().

static int mov_write_tmpo_tag ( AVIOContext *  pb,
AVFormatContext *  s 
)
static

Definition at line 2144 of file movenc.c.

Referenced by mov_write_ilst_tag().

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

Definition at line 2162 of file movenc.c.

Referenced by mov_write_ilst_tag().

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

Definition at line 2189 of file movenc.c.

Referenced by mov_write_ilst_tag().

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

Definition at line 2217 of file movenc.c.

Referenced by mov_write_meta_tag().

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

Definition at line 2253 of file movenc.c.

Referenced by mov_write_udta_tag().

static int utf8len ( const uint8_t *  b)
static

Definition at line 2267 of file movenc.c.

Referenced by mov_write_3gp_udta_tag(), and mov_write_psp_udta_tag().

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

Definition at line 2278 of file movenc.c.

Referenced by mov_write_psp_udta_tag().

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

Definition at line 2296 of file movenc.c.

Referenced by mov_write_udta_tag().

static int mov_write_chpl_tag ( AVIOContext *  pb,
AVFormatContext *  s 
)
static

Definition at line 2318 of file movenc.c.

Referenced by mov_write_udta_tag().

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

Definition at line 2344 of file movenc.c.

Referenced by mov_write_moov_tag().

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

Definition at line 2400 of file movenc.c.

Referenced by mov_write_uuidusmt_tag().

static int mov_write_uuidusmt_tag ( AVIOContext *  pb,
AVFormatContext *  s 
)
static

Definition at line 2413 of file movenc.c.

Referenced by mov_write_moov_tag().

static void build_chunks ( MOVTrack *  trk)
static

Definition at line 2450 of file movenc.c.

Referenced by mov_write_moov_tag().

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

Definition at line 2473 of file movenc.c.

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

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

Definition at line 2532 of file movenc.c.

Referenced by mov_write_isml_manifest().

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

Definition at line 2537 of file movenc.c.

Referenced by mov_write_isml_manifest().

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

Definition at line 2542 of file movenc.c.

Referenced by mov_write_isml_manifest().

static int mov_write_isml_manifest ( AVIOContext *  pb,
MOVMuxContext *  mov 
)
static

Definition at line 2551 of file movenc.c.

Referenced by mov_write_header().

static int mov_write_mfhd_tag ( AVIOContext *  pb,
MOVMuxContext *  mov 
)
static

Definition at line 2637 of file movenc.c.

Referenced by mov_write_moof_tag_internal().

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

Definition at line 2646 of file movenc.c.

Referenced by mov_write_traf_tag().

static uint32_t get_sample_flags ( MOVTrack *  track,
MOVIentry *  entry 
)
static

Definition at line 2697 of file movenc.c.

Referenced by mov_write_trun_tag().

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

Definition at line 2703 of file movenc.c.

Referenced by mov_write_traf_tag().

static int mov_write_tfxd_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 2753 of file movenc.c.

Referenced by mov_write_traf_tag().

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

Definition at line 2773 of file movenc.c.

Referenced by mov_write_tfrf_tags().

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

Definition at line 2808 of file movenc.c.

Referenced by mov_flush_fragment().

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

Definition at line 2822 of file movenc.c.

Referenced by 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 2849 of file movenc.c.

Referenced by mov_write_moof_tag().

static int mov_write_moof_tag ( AVIOContext *  pb,
MOVMuxContext *  mov,
int  tracks 
)
static

Definition at line 2871 of file movenc.c.

Referenced by mov_flush_fragment().

static int mov_write_tfra_tag ( AVIOContext *  pb,
MOVTrack *  track 
)
static

Definition at line 2883 of file movenc.c.

Referenced by mov_write_mfra_tag().

static int mov_write_mfra_tag ( AVIOContext *  pb,
MOVMuxContext *  mov 
)
static

Definition at line 2907 of file movenc.c.

Referenced by mov_write_trailer().

static int mov_write_mdat_tag ( AVIOContext *  pb,
MOVMuxContext *  mov 
)
static

Definition at line 2933 of file movenc.c.

Referenced by mov_write_header().

static int mov_write_ftyp_tag ( AVIOContext *  pb,
AVFormatContext *  s 
)
static

Definition at line 2945 of file movenc.c.

Referenced by mov_write_header().

static void mov_write_uuidprof_tag ( AVIOContext *  pb,
AVFormatContext *  s 
)
static

Definition at line 3010 of file movenc.c.

Referenced by mov_write_header().

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

Definition at line 3071 of file movenc.c.

Referenced by ff_mov_write_packet().

static void mov_parse_vc1_frame ( AVPacket *  pkt,
MOVTrack *  trk,
int  fragment 
)
static

Definition at line 3092 of file movenc.c.

Referenced by ff_mov_write_packet().

static int mov_flush_fragment ( AVFormatContext *  s)
static

Definition at line 3149 of file movenc.c.

Referenced by mov_write_packet(), mov_write_single_packet(), and mov_write_trailer().

int ff_mov_write_packet ( AVFormatContext *  s,
AVPacket *  pkt 
)
static int mov_write_single_packet ( AVFormatContext *  s,
AVPacket *  pkt 
)
static

Definition at line 3446 of file movenc.c.

Referenced by mov_write_packet(), and mov_write_subtitle_end_packet().

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

Definition at line 3474 of file movenc.c.

Referenced by mov_write_packet(), and mov_write_trailer().

static int mov_write_packet ( AVFormatContext *  s,
AVPacket *  pkt 
)
static

Definition at line 3495 of file movenc.c.

static int mov_create_chapter_track ( AVFormatContext *  s,
int  tracknum 
)
static

Definition at line 3544 of file movenc.c.

Referenced by mov_write_header(), and mov_write_trailer().

static int mov_create_timecode_track ( AVFormatContext *  s,
int  index,
int  src_index,
const char *  tcstr 
)
static

Definition at line 3636 of file movenc.c.

Referenced by mov_write_header().

static void enable_tracks ( AVFormatContext *  s)
static

Definition at line 3684 of file movenc.c.

Referenced by mov_write_header().

static void mov_free ( AVFormatContext *  s)
static

Definition at line 3723 of file movenc.c.

Referenced by mov_write_header(), and mov_write_trailer().

static int mov_write_header ( AVFormatContext *  s)
static

Definition at line 3749 of file movenc.c.

static int compute_moov_size ( AVFormatContext *  s)
static

Definition at line 4068 of file movenc.c.

Referenced by shift_data().

static int shift_data ( AVFormatContext *  s)
static

Definition at line 4093 of file movenc.c.

Referenced by mov_write_trailer().

static int mov_write_trailer ( AVFormatContext *  s)
static

Definition at line 4156 of file movenc.c.

Variable Documentation

const AVOption options[]
static
Initial value:
= {
{ "movflags", "MOV muxer flags", 0x42, AV_OPT_TYPE_FLAGS, {.i64 = 0}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "rtphint", "Add RTP hint tracks", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_RTP_HINT}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "moov_size", "maximum moov size so it can be placed at the begin", 0x42, AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, 0 },
{ "empty_moov", "Make the initial moov atom empty (not supported by QuickTime)", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_EMPTY_MOOV}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "frag_keyframe", "Fragment at video keyframes", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_FRAG_KEYFRAME}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "separate_moof", "Write separate moof/mdat atoms for each track", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_SEPARATE_MOOF}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "frag_custom", "Flush fragments on caller requests", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_FRAG_CUSTOM}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "isml", "Create a live smooth streaming feed (for pushing to a publishing point)", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_ISML}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "faststart", "Run a second pass to put the index (moov atom) at the beginning of the file", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_FASTSTART}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "omit_tfhd_offset", "Omit the base data offset in tfhd atoms", 0, AV_OPT_TYPE_CONST, {.i64 = FF_MOV_FLAG_OMIT_TFHD_OFFSET}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM, "movflags" },
{ "skip_iods", "Skip writing iods atom.", 0x42, AV_OPT_TYPE_INT, {.i64 = 1}, 0, 1, AV_OPT_FLAG_ENCODING_PARAM},
{ "iods_audio_profile", "iods audio profile atom.", 0x42, AV_OPT_TYPE_INT, {.i64 = -1}, -1, 255, AV_OPT_FLAG_ENCODING_PARAM},
{ "iods_video_profile", "iods video profile atom.", 0x42, AV_OPT_TYPE_INT, {.i64 = -1}, -1, 255, AV_OPT_FLAG_ENCODING_PARAM},
{ "frag_duration", "Maximum fragment duration", 0x42, AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
{ "min_frag_duration", "Minimum fragment duration", 0x42, AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
{ "frag_size", "Maximum fragment size", 0x42, AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
{ "ism_lookahead", "Number of lookahead entries for ISM files", 0x42, AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
{ "use_editlist", "use edit list", 0x42, AV_OPT_TYPE_INT, {.i64 = -1}, -1, 1, AV_OPT_FLAG_ENCODING_PARAM},
{ "video_track_timescale", "set timescale of all video tracks", 0x42, AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
{ "brand", "Override major brand", 0x42, AV_OPT_TYPE_STRING, {.str = NULL}, .flags = AV_OPT_FLAG_ENCODING_PARAM },
{ NULL },
}

Definition at line 49 of file movenc.c.

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') },
}

Definition at line 854 of file movenc.c.

enum AVPixelFormat pix_fmt

Definition at line 983 of file movenc.c.

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

Definition at line 984 of file movenc.c.

Referenced by aac_encode_frame(), add_input_streams(), aiff_read_header(), ape_read_header(), asf_write_header1(), av_codec_get_tag(), av_dict_set(), av_find_info_tag(), av_get_audio_frame_duration(), avformat_find_stream_info(), avi_load_index(), avi_read_header(), avi_read_idx1(), avi_read_nikon(), avi_stream2fourcc(), avi_write_header(), avi_write_idx1(), avi_write_ix(), avi_write_packet(), copy_tag(), decode_frame(), decode_interframe_v4(), decode_interframe_v4a(), dump_metadata(), dxa_read_header(), eval_function(), ff_mov_get_channel_layout_tag(), ff_mov_read_esds(), ff_mp4_read_dec_config_descr(), ff_vorbiscomment_length(), ff_vorbiscomment_write(), ffm_read_header(), flv_write_header(), get_swf_tag(), gxf_material_tags(), gxf_track_tags(), id3v1_create_tag(), id3v1_set_string(), id3v2_check_write_tag(), id3v2_parse(), ipod_get_codec_tag(), ircam_read_header(), ircam_write_header(), libschroedinger_decode_frame(), lz_unpack(), main(), matroska_convert_tags(), metasound_decode_init(), mkv_write_codecprivate(), mkv_write_header(), mkv_write_simpletag(), mkv_write_tag(), mkv_write_tracks(), mmf_read_header(), mov_find_codec_tag(), mov_get_codec_tag(), mov_get_dv_codec_tag(), mov_get_mpeg2_xdcam_codec_tag(), mov_get_rawvideo_codec_tag(), mov_probe(), mov_read_custom_metadata(), mov_read_meta(), mov_read_udta_string(), mov_write_audio_tag(), mp4_get_codec_tag(), mpc8_parse_seektable(), mpc8_read_header(), mpc8_read_packet(), new_output_stream(), nuv_resync(), ogm_header(), parse_fragment(), parse_mp4_descr(), 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(), rm_read_header(), rv10_write_header(), sami_paragraph_to_ass(), show_tags(), siff_probe(), siff_read_header(), smjpeg_write_header(), sol_read_header(), srt_to_ass(), swf_read_header(), swf_read_packet(), tiff_decode_tag(), validate_codec_tag(), vs_2_av_log_wrapper(), write_stream_codec_info(), write_table_entries_attrib(), write_table_redirector_legacy_attrib(), xan_decode_frame(), xv_write_header(), xwma_read_header(), yop_decode_frame(), and yop_paint_block().

unsigned bps
struct { ... } 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 },
}

Referenced by mov_get_rawvideo_codec_tag().

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') },
}

Definition at line 1062 of file movenc.c.

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') },
}

Definition at line 1073 of file movenc.c.

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

Definition at line 1120 of file movenc.c.

Referenced by mov_write_fiel_tag().