ffmpeg: prevent premature EOF in sub2video with nullptr AVSubtitles
authorJan Ekström <jeebjp@gmail.com>
Sat, 31 Mar 2018 16:39:07 +0000 (19:39 +0300)
committerJan Ekström <jeebjp@gmail.com>
Sun, 1 Apr 2018 10:56:31 +0000 (13:56 +0300)
commite760c12aeef608aa8b416664687b9aca3a2c6f68
tree9fc2124fb5f35b2e22a2abda2c5de81c3f93f211
parentbe502ec6cde004e1fa05643282939bf3a1507922
ffmpeg: prevent premature EOF in sub2video with nullptr AVSubtitles

With certain types of input and the filter chain getting re-initialized
or re-configured, multiple nullptr AVSubtitles can get pushed into
sub2video_update() in a row from sub2video_heartbeat.

This causes end_pts, and on the next round pts, to become INT64_MAX,
latter of which signals EOF in framesync, leading to complete loss of
subtitles from that point on.

Thus, check that the sub2video.end_pts is smaller than INT64_MAX
in a similar fashion to sub2video_flush before sending out the
nullptr AVSubtitle. This keeps premature EOFs from happening in
framesync and the subtitle overlay is kept past the filter chain
re-initializations/configurations.
fftools/ffmpeg.c