dashenc: Adjust the start time of a segment to the end of the previous segment
authorMartin Storsjö <martin@martin.st>
Fri, 28 Nov 2014 08:43:53 +0000 (10:43 +0200)
committerMartin Storsjö <martin@martin.st>
Wed, 17 Dec 2014 07:43:08 +0000 (09:43 +0200)
commit456e93bfdd4cbc5e995dea415019abd0703d0e16
treee239b8e90bb1646998c7813f01c6bbff8cebd4bb
parent2f628d5943c12389c07d652d23d3916997f9f0f6
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>
libavformat/dashenc.c