X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fmovenc.h;h=22b883296aa1d0255e49c9cc803a9305d6372db0;hb=aeda1121c91395d1f0d434bc7f227423aa2ff97d;hp=2a40b2fb6128ab657934683098cc5d9ba68589a0;hpb=2ded57371abead879bcee56da5131e5fac0d17ef;p=ffmpeg diff --git a/libavformat/movenc.h b/libavformat/movenc.h index 2a40b2fb612..22b883296aa 100644 --- a/libavformat/movenc.h +++ b/libavformat/movenc.h @@ -73,6 +73,7 @@ typedef struct MOVFragmentInfo { int64_t time; int64_t duration; int64_t tfrf_offset; + int size; } MOVFragmentInfo; typedef struct MOVTrack { @@ -103,6 +104,8 @@ typedef struct MOVTrack { uint32_t tref_tag; int tref_id; ///< trackID of the referenced track int64_t start_dts; + int64_t start_cts; + int64_t end_pts; int hint_track; ///< the track that hints this track, -1 if no hint track is set int src_track; ///< the track that this hint track describes @@ -120,15 +123,18 @@ typedef struct MOVTrack { AVIOContext *mdat_buf; int64_t data_offset; int64_t frag_start; + int frag_discont; + int entries_flushed; int nb_frag_info; MOVFragmentInfo *frag_info; unsigned frag_info_capacity; struct { - int64_t struct_offset; int first_packet_seq; int first_packet_entry; + int first_packet_seen; + int first_frag_written; int packet_seq; int packet_entry; int slices; @@ -151,6 +157,7 @@ typedef struct MOVMuxContext { int iods_video_profile; int iods_audio_profile; + int moov_written; int fragments; int max_fragment_duration; int min_fragment_duration; @@ -159,7 +166,7 @@ typedef struct MOVMuxContext { AVIOContext *mdat_buf; int first_trun; - int64_t reserved_moov_pos; + int64_t reserved_header_pos; char *major_brand; @@ -167,6 +174,8 @@ typedef struct MOVMuxContext { AVFormatContext *fc; int use_editlist; + int frag_interleave; + int missing_duration_warned; } MOVMuxContext; #define FF_MOV_FLAG_RTP_HINT (1 << 0) @@ -181,6 +190,9 @@ typedef struct MOVMuxContext { #define FF_MOV_FLAG_DISABLE_CHPL (1 << 9) #define FF_MOV_FLAG_DEFAULT_BASE_MOOF (1 << 10) #define FF_MOV_FLAG_DASH (1 << 11) +#define FF_MOV_FLAG_FRAG_DISCONT (1 << 12) +#define FF_MOV_FLAG_DELAY_MOOV (1 << 13) +#define FF_MOV_FLAG_GLOBAL_SIDX (1 << 14) int ff_mov_write_packet(AVFormatContext *s, AVPacket *pkt);