Commit 83988d58 authored by Martin Storsjö's avatar Martin Storsjö

movenc: Add support for writing fragmented mov files

Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
parent 6ca38568
......@@ -4,6 +4,7 @@ releases are sorted from youngest to oldest.
version <next>:
- XWD encoder and decoder
- Support for fragmentation in the mov/mp4 muxer
version 0.8:
......
This diff is collapsed.
......@@ -65,6 +65,11 @@ typedef struct {
HintSample *samples;
} HintSampleQueue;
typedef struct {
int64_t offset;
int64_t time;
} MOVFragmentInfo;
typedef struct MOVIndex {
int mode;
int entry;
......@@ -98,7 +103,19 @@ typedef struct MOVIndex {
int64_t cur_rtp_ts_unwrapped;
uint32_t max_packet_size;
int64_t default_duration;
uint32_t default_sample_flags;
uint32_t default_size;
HintSampleQueue sample_queue;
AVIOContext *mdat_buf;
int64_t moof_size_offset;
int64_t data_offset;
int64_t frag_start;
int nb_frag_info;
MOVFragmentInfo *frag_info;
} MOVTrack;
typedef struct MOVMuxContext {
......@@ -116,9 +133,17 @@ typedef struct MOVMuxContext {
int iods_skip;
int iods_video_profile;
int iods_audio_profile;
int fragments;
int max_fragment_duration;
int max_fragment_size;
} MOVMuxContext;
#define FF_MOV_FLAG_RTP_HINT 1
#define FF_MOV_FLAG_FRAGMENT 2
#define FF_MOV_FLAG_EMPTY_MOOV 4
#define FF_MOV_FLAG_FRAG_KEYFRAME 8
#define FF_MOV_FLAG_SEPARATE_MOOF 16
int ff_mov_write_packet(AVFormatContext *s, AVPacket *pkt);
......
......@@ -30,7 +30,7 @@
#include "libavutil/avutil.h"
#define LIBAVFORMAT_VERSION_MAJOR 53
#define LIBAVFORMAT_VERSION_MINOR 20
#define LIBAVFORMAT_VERSION_MINOR 21
#define LIBAVFORMAT_VERSION_MICRO 0
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment