ffmpeg/libavformat
Martin Storsjö 456e93bfdd dashenc: Adjust the start time of a segment to the end of the previous segment
This is the same adjustment that the mp4 muxer does to the start
timestamp of fragments, since the timestamp of a sample in an mp4
file is implicit from the sum of earlier sample durations.

This avoids gaps in the timeline (which can stop dash.js from
playing it back), and makes sure the timestamp on the segmenter
level matches what the mp4 muxer actually writes into the segments.

This is only an issue if the AVPacket duration of the last
packet of a segment doesn't point to the actual start timestamp
of the next packet (the first in the next segment).

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-12-17 09:43:08 +02:00
..
4xm.c 4xm: allocate extradata properly. 2014-05-18 10:19:35 +02:00
a64.c a64: Return correct error code on invalid data stream 2014-08-14 01:22:47 -07:00
aacdec.c aac: Register the mime type 2014-07-29 17:47:32 +02:00
ac3dec.c
adtsenc.c adts: Return more meaningful error codes 2014-08-21 04:25:48 -07:00
adxdec.c adxdec: get rid of an avpriv function 2014-07-09 13:37:18 +00:00
aea.c
aiff.h
aiffdec.c
aiffenc.c
allformats.c lavf: Add an MPEG-DASH ISOFF segmenting muxer 2014-11-17 16:17:07 +02:00
amr.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
anm.c
apc.c
ape.c
apetag.c apetag: Fix APE tag size check 2014-09-17 06:37:05 -07:00
apetag.h
asf.c
asf.h
asfcrypt.c
asfcrypt.h
asfdec.c
asfenc.c
assdec.c assdec: check av_new_packet return value 2014-10-29 16:54:43 +00:00
assenc.c
au.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
audiointerleave.c audiointerleave: check av_new_packet return value 2014-10-24 23:42:53 +01:00
audiointerleave.h
avc.c libavformat: Move avc mp4 startcode parsing to a shared file 2014-09-24 23:33:17 +03:00
avc.h libavformat: Move avc mp4 startcode parsing to a shared file 2014-09-24 23:33:17 +03:00
avformat.h lavf: Add an option for avoiding negative timestamps 2014-11-07 12:11:35 +02:00
avi.h
avidec.c Allow reading of growing avi files (currently being written) 2014-12-08 13:29:33 +00:00
avienc.c lavf: switch to AVStream.time_base as the hint for the muxer timebase 2014-06-18 15:12:34 +02:00
avio_internal.h
avio.c avio: fix sizeof argument 2014-10-20 10:38:38 +01:00
avio.h
aviobuf.c aviobuf: check context before using it 2014-10-20 10:38:38 +01:00
avisynth.c avisynth: set duration of audio streams 2014-05-16 14:41:02 +02:00
avlanguage.c
avlanguage.h
avs.c cosmetics: Write NULL pointer equality checks more compactly 2014-08-15 03:18:18 -07:00
bethsoftvid.c bethsoftvid: simplify return handling 2014-10-29 17:02:27 +00:00
bfi.c
bink.c
bmv.c
c93.c
caf.c
caf.h
cafdec.c caf: Give context structure a consistent name 2014-09-26 00:44:41 -07:00
cavsvideodec.c
cdg.c cdg: Forward error from avio_size() in read_header() function 2014-07-10 12:38:54 -07:00
cdxl.c
concat.c concat: K&R formatting cosmetics 2014-09-25 01:44:31 -07:00
crcenc.c
crypto.c
cutils.c lavf: Implement ff_brktimegm using gmtime_r 2014-10-26 00:14:54 +03:00
dashenc.c dashenc: Adjust the start time of a segment to the end of the previous segment 2014-12-17 09:43:08 +02:00
dauddec.c daud: split muxer and demuxer 2014-07-03 10:46:11 -07:00
daudenc.c daud: split muxer and demuxer 2014-07-03 10:46:11 -07:00
dfa.c
diracdec.c
dnxhddec.c
dsicin.c
dtsdec.c
dump.c dump: Update streams and chapters printout format 2014-10-08 18:17:49 +01:00
dv.c lavc: export DV profile API used by muxer/demuxer as public 2014-07-09 13:35:07 +00:00
dv.h
dvenc.c lavc: export DV profile API used by muxer/demuxer as public 2014-07-09 13:35:07 +00:00
dxa.c
eacdata.c
electronicarts.c electronicarts: set the framerate for TGQ/TQI 2014-08-22 11:15:20 +00:00
ffmeta.h
ffmetadec.c
ffmetaenc.c
file_open.c
file.c
filmstripdec.c filmstripdec: avoid integer overflow 2014-10-27 18:21:40 +00:00
filmstripenc.c lavf: switch to AVStream.time_base as the hint for the muxer timebase 2014-06-18 15:12:34 +02:00
flac_picture.c flac_picture: prevent a possible out of bound write 2014-10-24 23:42:53 +01:00
flac_picture.h
flacdec.c lavf: stop using avpriv_flac_parse_streaminfo() 2014-11-06 09:02:25 +01:00
flacenc_header.c flac muxer: support reading updated extradata from side data 2014-06-01 08:32:33 +02:00
flacenc.c flac muxer: support reading updated extradata from side data 2014-06-01 08:32:33 +02:00
flacenc.h flac muxer: support reading updated extradata from side data 2014-06-01 08:32:33 +02:00
flic.c
flv.h
flvdec.c flvdec: Document how the duration is retrieved at the end of the file 2014-11-24 23:34:30 +02:00
flvenc.c flvenc: Remove an unused variable 2014-11-22 22:10:52 +02:00
format.c avformat: use const char* instead of uint8_t* for AVProbeData.mime_type 2014-10-08 15:13:15 +01:00
framecrcenc.c
framehash.c lavf: switch to AVStream.time_base as the hint for the muxer timebase 2014-06-18 15:12:34 +02:00
g722.c
g723_1.c
gif.c
gopher.c
gsmdec.c
gxf.c
gxf.h
gxfenc.c
h261dec.c
h263dec.c
h264dec.c
hdsenc.c Revert "lavf: Don't try to update files atomically with renames on windows" 2014-11-27 09:29:47 +02:00
hevc.c
hevc.h
hevcdec.c
hls.c lavf: Use av_gettime_relative 2014-10-24 09:53:45 +03:00
hlsenc.c lavf: Set the stream time base hint properly for chained muxers 2014-10-06 23:30:52 +03:00
hlsproto.c lavf: Use av_gettime_relative 2014-10-24 09:53:45 +03:00
hnm.c
http.c cosmetics: Write NULL pointer inequality checks more compactly 2014-08-15 05:34:13 -07:00
http.h http: Use a constant for the supported header size 2014-07-22 16:38:26 +02:00
httpauth.c
httpauth.h
icecast.c Icecast: Send content-type in all cases 2014-11-15 09:15:39 +01:00
id3v1.c
id3v1.h
id3v2.c
id3v2.h
id3v2enc.c id3v2enc: use a case-insensitive comparison for APIC picture type 2014-07-03 18:40:37 +00:00
idcin.c idcin: fix return check 2014-10-20 10:38:37 +01:00
idroqdec.c
idroqenc.c
iff.c
ilbc.c
img2.c
img2dec.c img2dec: check av_new_packet return value 2014-10-24 23:42:53 +01:00
img2enc.c
ingenientdec.c
internal.h Revert "lavf: Don't try to update files atomically with renames on windows" 2014-11-27 09:29:47 +02:00
ipmovie.c
isom.c
isom.h mov: parse XMP metadata on demand 2014-12-08 13:53:30 +00:00
iss.c
iv8.c
ivfdec.c
ivfenc.c
jvdec.c
latmenc.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
libavformat.v
librtmp.c librtmp: append the correct field to the string 2014-11-18 00:38:26 +01:00
lmlm4.c lmlm4: K&R formatting cosmetics 2014-09-25 01:44:32 -07:00
log2_tab.c
lxfdec.c
m4vdec.c m4vdec: K&R formatting cosmetics 2014-09-25 01:58:51 -07:00
Makefile libavformat: Build hevc.o when building the RTP muxer 2014-12-09 16:09:37 +02:00
matroska.c matroskadec: parse stereo mode on decoding 2014-08-28 12:33:26 -04:00
matroska.h matroskadec: parse stereo mode on decoding 2014-08-28 12:33:26 -04:00
matroskadec.c matroskadec: Fix read-after-free in matroska_read_seek() 2014-12-15 15:46:34 +01:00
matroskaenc.c mkv: Validate ASS Start and End fields 2014-12-03 13:08:41 +00:00
md5enc.c
md5proto.c
metadata.c
metadata.h
mm.c
mmf.c
mms.c
mms.h
mmsh.c
mmst.c
mov_chan.c
mov_chan.h
mov.c mov: Fix handling of zero-length metadata values 2014-12-15 23:42:10 +02:00
movenc.c movenc: Expose the fragment index as an avoption 2014-11-26 09:58:13 +02:00
movenc.h movenc: Add a flag for indicating a discontinuous fragment 2014-11-26 09:56:56 +02:00
movenchint.c
mp3dec.c mp3: Tweak the probe scores 2014-12-07 21:50:47 +01:00
mp3enc.c Drop the unofficial extension prefix for MPEG and MPEG-TS formats 2014-12-02 15:28:22 +00:00
mpc8.c
mpc.c
mpeg.c
mpeg.h mpeg: Write H264 streams at offset 2 2014-08-26 03:43:13 +02:00
mpegenc.c mpegenc: prevent a NULL pointer dereference 2014-11-24 01:30:14 +00:00
mpegts.c mpegts: Allow custom max resync size 2014-09-03 02:38:03 +02:00
mpegts.h mpegts: Add HEVC definitions 2014-08-05 11:30:50 +02:00
mpegtsenc.c Drop the unofficial extension prefix for MPEG and MPEG-TS formats 2014-12-02 15:28:22 +00:00
mpegvideodec.c
mpjpeg.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
msnwc_tcp.c
mtv.c mtv: improve header check and avoid division by zero 2014-10-29 16:54:43 +00:00
mux.c lavf: Only initialize s->offset once when using avoid_negative_ts make_zero 2014-11-17 23:18:55 +02:00
mvdec.c
mvi.c
mxf.c mxf: Support AAC 2014-08-17 16:11:16 +02:00
mxf.h mxf: Add UID print helpers 2014-08-17 16:11:02 +02:00
mxfdec.c mxfdec: reduce loop bound in mxf_read_pixel_layout() 2014-10-27 19:08:02 +00:00
mxfenc.c Use gmtime_r instead of gmtime and localtime_r instead of localtime 2014-10-26 00:14:54 +03:00
mxg.c
ncdec.c
network.c
network.h libavformat: use MSG_NOSIGNAL when applicable 2014-08-25 10:49:14 +03:00
noproxy-test.c
nsvdec.c cosmetics: Write NULL pointer equality checks more compactly 2014-08-15 03:18:18 -07:00
nullenc.c
nut.c
nut.h nut: Support experimental NUT 4 features 2014-05-28 22:04:56 +02:00
nutdec.c nutdec: do not set has_b_frames 2014-11-06 09:05:37 +01:00
nutenc.c nutenc: check for negative index rather than assert 2014-10-21 14:37:48 +01:00
nuv.c
oggdec.c
oggdec.h ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes. 2014-08-13 16:25:19 +00:00
oggenc.c oggenc: accept only STREAMINFO extradata 2014-11-06 09:04:32 +01:00
oggparsecelt.c ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes. 2014-08-13 16:25:19 +00:00
oggparsedirac.c
oggparseflac.c lavf: stop using avpriv_flac_parse_streaminfo() 2014-11-06 09:02:25 +01:00
oggparseogm.c ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes. 2014-08-13 16:25:19 +00:00
oggparseopus.c ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes. 2014-08-13 16:25:19 +00:00
oggparseskeleton.c
oggparsespeex.c ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes. 2014-08-13 16:25:19 +00:00
oggparsetheora.c ogg: update event_flags with STREAM_/METADATA_UPDATED whenever metadata changes. 2014-08-13 16:25:19 +00:00
oggparsevorbis.c lavc,lavf: switch to the new vorbis parse API 2014-11-06 09:00:46 +01:00
oma.c
oma.h
omadec.c
omaenc.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
options_table.h lavf: Add an option for avoiding negative timestamps 2014-11-07 12:11:35 +02:00
options.c lavf: Only initialize s->offset once when using avoid_negative_ts make_zero 2014-11-17 23:18:55 +02:00
os_support.c
os_support.h lavf: Use MoveFileEx instead of rename/_wrename on windows 2014-11-27 09:29:29 +02:00
paf.c
pcm.c
pcm.h
pcmdec.c
pcmenc.c
pmpdec.c
psxstr.c
pva.c
qcp.c
qtpalette.h
r3d.c
rawdec.c latm: Do not give a score for a single instance 2014-12-07 13:15:03 +01:00
rawdec.h
rawenc.c Drop the unofficial extension prefix for MPEG and MPEG-TS formats 2014-12-02 15:28:22 +00:00
rawenc.h
rawvideodec.c
rdt.c rm: Use the correct codec_data_size signedness 2014-12-04 13:14:28 +00:00
rdt.h
replaygain.c
replaygain.h
riff.c riff: Support decoding png in avi (ImageJ) 2014-12-08 13:29:18 +00:00
riff.h riffenc: take an AVStream instead of an AVCodecContext 2014-06-18 15:03:55 +02:00
riffdec.c
riffenc.c riffenc: do not fall back on AVCodecContext.frame_size for MP3 2014-11-06 09:02:08 +01:00
rl2.c
rm.c
rm.h rm: Use the correct codec_data_size signedness 2014-12-04 13:14:28 +00:00
rmdec.c rm: Use the correct codec_data_size signedness 2014-12-04 13:14:28 +00:00
rmenc.c lavf: switch to AVStream.time_base as the hint for the muxer timebase 2014-06-18 15:12:34 +02:00
rmsipr.c
rmsipr.h
rpl.c
rso.c
rso.h
rsodec.c
rsoenc.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
rtmp.h
rtmpcrypt.c
rtmpcrypt.h
rtmpdh.c
rtmpdh.h
rtmphttp.c
rtmppkt.c rtmppkt: Make pkt->data reallocable 2014-11-28 09:59:28 +02:00
rtmppkt.h rtmppkt: Add method to read an AMF string that is not prefixed by its type 2014-06-01 23:30:33 +03:00
rtmpproto.c rtmpproto: Fix a typo in a comment 2014-11-28 20:56:45 +02:00
rtp.c
rtp.h
rtpdec_amr.c rtpdec: pass an AVFormatContext to ff_parse_fmtp() 2014-07-09 13:40:54 +00:00
rtpdec_asf.c
rtpdec_formats.h rtpdec_hevc: Drop a duplicated, nonstandard entry 2014-09-24 10:44:14 +03:00
rtpdec_g726.c
rtpdec_h263_rfc2190.c
rtpdec_h263.c
rtpdec_h264.c rtpdec: pass an AVFormatContext to ff_parse_fmtp() 2014-07-09 13:40:54 +00:00
rtpdec_hevc.c rtpdec_hevc: drop unnecessary check 2014-10-20 10:44:42 +01:00
rtpdec_ilbc.c rtpdec: pass an AVFormatContext to ff_parse_fmtp() 2014-07-09 13:40:54 +00:00
rtpdec_jpeg.c
rtpdec_latm.c rtpdec: pass an AVFormatContext to ff_parse_fmtp() 2014-07-09 13:40:54 +00:00
rtpdec_mpeg4.c rtpdec: pass an AVFormatContext to ff_parse_fmtp() 2014-07-09 13:40:54 +00:00
rtpdec_mpeg12.c
rtpdec_mpegts.c
rtpdec_qcelp.c
rtpdec_qdm2.c
rtpdec_qt.c
rtpdec_svq3.c
rtpdec_vp8.c
rtpdec_xiph.c rtpdec: pass an AVFormatContext to ff_parse_fmtp() 2014-07-09 13:40:54 +00:00
rtpdec.c lavf: Use av_gettime_relative 2014-10-24 09:53:45 +03:00
rtpdec.h rtpdec: pass an AVFormatContext to ff_parse_fmtp() 2014-07-09 13:40:54 +00:00
rtpenc_aac.c
rtpenc_amr.c
rtpenc_chain.c rtpenc_chain: Pass the initial time_base hint on to the chained muxer 2014-09-17 22:53:27 +03:00
rtpenc_chain.h
rtpenc_h263_rfc2190.c
rtpenc_h263.c
rtpenc_h264.c libavformat: Move avc mp4 startcode parsing to a shared file 2014-09-24 23:33:17 +03:00
rtpenc_hevc.c rtpenc: HEVC/H.265 support 2014-09-24 23:33:26 +03:00
rtpenc_jpeg.c rtpenc_jpeg: check for color_range too 2014-06-28 01:51:14 -04:00
rtpenc_latm.c
rtpenc_mpv.c
rtpenc_vp8.c
rtpenc_xiph.c
rtpenc.c rtpenc: HEVC/H.265 support 2014-09-24 23:33:26 +03:00
rtpenc.h rtpenc: HEVC/H.265 support 2014-09-24 23:33:26 +03:00
rtpproto.c rtpproto: Fix the input RTP data format check 2014-12-09 23:59:14 +02:00
rtpproto.h
rtsp.c rtsp: move the CONFIG_ macros to the beginning of the check 2014-12-02 15:28:22 +00:00
rtsp.h rtsp: Support tls-encapsulated RTSP 2014-10-10 16:29:06 +02:00
rtspcodes.h
rtspdec.c lavf: Use av_gettime_relative 2014-10-24 09:53:45 +03:00
rtspenc.c cosmetics: Write NULL pointer equality checks more compactly 2014-08-15 03:18:18 -07:00
sapdec.c
sapenc.c lavf: Use av_gettime_relative 2014-10-24 09:53:45 +03:00
sauce.c
sauce.h
sctp.c sctp: Use AVERROR_BUG instead of abort() 2014-10-10 16:29:06 +02:00
sdp.c sdp: Provide out of bound parameter sets for HEVC if extradata is set 2014-10-15 12:12:54 +03:00
seek-test.c
seek.c
seek.h
segafilm.c
segment.c lavf: Set the stream time base hint properly for chained muxers 2014-10-06 23:30:52 +03:00
sierravmd.c
siff.c
smacker.c
smjpeg.c
smjpeg.h
smjpegdec.c
smjpegenc.c
smoothstreamingenc.c Revert "lavf: Don't try to update files atomically with renames on windows" 2014-11-27 09:29:47 +02:00
smush.c
sol.c sol: simplify sol_codec_id() 2014-11-24 01:30:15 +00:00
sox.h
soxdec.c
soxenc.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
spdif.c
spdif.h
spdifdec.c
spdifenc.c
srtdec.c
srtp.c
srtp.h
srtpproto.c
swf.c
swf.h lavf: switch to AVStream.time_base as the hint for the muxer timebase 2014-06-18 15:12:34 +02:00
swfdec.c
swfenc.c lavf: switch to AVStream.time_base as the hint for the muxer timebase 2014-06-18 15:12:34 +02:00
takdec.c
tcp.c tcp: Add AVOption support 2014-10-10 16:29:07 +02:00
thp.c
tiertexseq.c
tls.c tls: Support passing old-style tcp options 2014-10-10 16:29:07 +02:00
tmv.c
tta.c
tty.c
txd.c
udp.c
unix.c libavformat: use MSG_NOSIGNAL when applicable 2014-08-25 10:49:14 +03:00
url-test.c
url.c cosmetics: Write NULL pointer inequality checks more compactly 2014-08-15 05:34:13 -07:00
url.h urlprotocol: remove unused url_interrupt_cb declaration 2014-10-18 05:01:20 +02:00
urldecode.c
urldecode.h
utils.c avformat: Make avformat_free_context handle NULL 2014-10-17 09:55:46 +01:00
vc1test.c vc1test: Check malloc call 2014-07-06 09:25:52 -07:00
vc1testenc.c
version.h mov: parse XMP metadata on demand 2014-12-08 13:53:30 +00:00
voc.c
voc.h
vocdec.c
vocenc.c lavf: add the notimestamps flag to the muxers missing it 2014-06-18 15:03:31 +02:00
vorbiscomment.c vorbiscomment: simplify API by using av_dict_count() 2014-05-28 07:54:54 +02:00
vorbiscomment.h vorbiscomment: simplify API by using av_dict_count() 2014-05-28 07:54:54 +02:00
vqf.c
wavdec.c
wavenc.c wavenc: use codec descriptors to get the codec name 2014-05-18 20:33:38 +02:00
wc3movie.c
westwood_aud.c
westwood_vqa.c
wtv.c Use gmtime_r instead of gmtime and localtime_r instead of localtime 2014-10-26 00:14:54 +03:00
wv.c
wv.h
wvdec.c
wvenc.c
xa.c
xmv.c
xwma.c xwma: Do not leak on failure path 2014-11-21 12:27:07 +00:00
yop.c yop: only set extradata size after it has been successfully allocated 2014-05-18 10:22:42 +02:00
yuv4mpeg.h yuv4mpeg: split the demuxer and muxer into separate files 2014-05-18 10:21:31 +02:00
yuv4mpegdec.c yuv4mpegdec: do not set coded_frame properties 2014-05-18 10:22:08 +02:00
yuv4mpegenc.c yuv4mpegenc: do not access AVCodecContext.coded_frame 2014-07-09 13:40:39 +00:00