diff options
author | wm4 <wm4@nowhere> | 2014-06-18 00:18:37 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-06-18 01:57:57 +0200 |
commit | c48dd85821445d701caa02d2b619294e4982d62b (patch) | |
tree | db2d2b48e7cc23d903e3b82139b358cc8d223ba2 /ta/ta_talloc.h | |
parent | a28e2a7432f68e4a5db96cce8cbaa859327c4527 (diff) | |
download | mpv-c48dd85821445d701caa02d2b619294e4982d62b.tar.bz2 mpv-c48dd85821445d701caa02d2b619294e4982d62b.tar.xz |
sd_lavc: improve bitmap subtitle timing
Until now, bitmap subtitles were decoded at "some" point, and then
simply replaced the old subtitle. Although the subtitle is selected
by time (PTS), it could happen that a subtitle was replaced too early.
One consequence is that this might lead to flicker even if the
subtitles are timed to follow each other without a gap (although most
subtitles are explicitly timed to introduce such a gap). With this
commit the past 4 subtitles are kept (instead of 1), so that the
correct one can be picked by time. This should fix the aforementioned
cases, but more importantly will allow demuxing/decoding and video
display to be somewhat asynchronous.
Still missing: somehow making sure the correct range of decoded
subtitles is available, instead of just passing along whatever comes
from the demuxer, and hoping that 4 queued subtitles are enough. But it
should certainly be good enough for now.
This removes a check that resets the subtitles if the PTS is 5 minutes
before the end of the current subtitle; this is probably not needed.
Diffstat (limited to 'ta/ta_talloc.h')
0 files changed, 0 insertions, 0 deletions