Mercurial > libavformat.hg
comparison movenc.h @ 6014:b66058698117 libavformat
Use a heuristic for describing the RTP packets using sample data
author | mstorsjo |
---|---|
date | Tue, 18 May 2010 19:48:25 +0000 |
parents | 332ad5f30c0e |
children |
comparison
equal
deleted
inserted
replaced
6013:332ad5f30c0e | 6014:b66058698117 |
---|---|
49 #define MOV_SYNC_SAMPLE 0x0001 | 49 #define MOV_SYNC_SAMPLE 0x0001 |
50 #define MOV_PARTIAL_SYNC_SAMPLE 0x0002 | 50 #define MOV_PARTIAL_SYNC_SAMPLE 0x0002 |
51 uint32_t flags; | 51 uint32_t flags; |
52 } MOVIentry; | 52 } MOVIentry; |
53 | 53 |
54 typedef struct HintSample { | |
55 uint8_t *data; | |
56 int size; | |
57 int sample_number; | |
58 int offset; | |
59 int own_data; | |
60 } HintSample; | |
61 | |
62 typedef struct { | |
63 int size; | |
64 int len; | |
65 HintSample *samples; | |
66 } HintSampleQueue; | |
67 | |
54 typedef struct MOVIndex { | 68 typedef struct MOVIndex { |
55 int mode; | 69 int mode; |
56 int entry; | 70 int entry; |
57 unsigned timescale; | 71 unsigned timescale; |
58 uint64_t time; | 72 uint64_t time; |
80 int src_track; ///< the track that this hint track describes | 94 int src_track; ///< the track that this hint track describes |
81 AVFormatContext *rtp_ctx; ///< the format context for the hinting rtp muxer | 95 AVFormatContext *rtp_ctx; ///< the format context for the hinting rtp muxer |
82 uint32_t prev_rtp_ts; | 96 uint32_t prev_rtp_ts; |
83 int64_t cur_rtp_ts_unwrapped; | 97 int64_t cur_rtp_ts_unwrapped; |
84 uint32_t max_packet_size; | 98 uint32_t max_packet_size; |
99 | |
100 HintSampleQueue sample_queue; | |
85 } MOVTrack; | 101 } MOVTrack; |
86 | 102 |
87 typedef struct MOVMuxContext { | 103 typedef struct MOVMuxContext { |
88 int mode; | 104 int mode; |
89 int64_t time; | 105 int64_t time; |