[FFmpeg-devel] [PATCH] ffmpeg: prevent premature EOF in sub2video with nullptr AVSubtitles

Michael Niedermayer michael at niedermayer.cc
Thu Mar 29 13:14:39 EEST 2018


On Thu, Mar 29, 2018 at 12:53:18AM +0300, Jan Ekström wrote:
> From: Jan Ekström <jan.ekstrom at aminocom.com>
> 
> With some streams multiple nullptr AVSubtitles can get pushed
> into sub2video_update() in a row.
> 
> 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, utilize the previous sub2video.end_pts as both the pts and
> end_pts in case a nullptr AVSubtitle is received. This lets further
> incoming subtitle packets be properly processed, as EOF is not hit
> in framesync.
> 
> Signed-off-by: Jan Ekström <jan.ekstrom at aminocom.com>
> ---
>  fftools/ffmpeg.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)

this breaks fate-sub2video

TEST    sub2video
--- ./tests/ref/fate/sub2video	2018-03-29 02:30:48.095578219 +0200
+++ tests/data/fate/sub2video	2018-03-29 12:13:25.191428538 +0200
@@ -68,7 +68,8 @@
 0,        258,        258,        1,   518400, 0x34cdddee
 0,        269,        269,        1,   518400, 0xbab197ea
 1,   53910000,   53910000,  2696000,     2095, 0x61bb15ed, F=0x0
-0,        270,        270,        1,   518400, 0x4db4ce51
+0,        270,        270,        1,   518400, 0xbab197ea
+0,        271,        271,        1,   518400, 0x4db4ce51
 0,        283,        283,        1,   518400, 0xbab197ea
 1,   56663000,   56663000,  1262000,     1013, 0xc9ae89b7, F=0x0
 0,        284,        284,        1,   518400, 0xe6bc0ea9
@@ -137,7 +138,7 @@
 1,  168049000,  168049000,  1900000,     1312, 0x0bf20e8d, F=0x0
 0,        850,        850,        1,   518400, 0xbab197ea
 1,  170035000,  170035000,  1524000,     1279, 0xb6c2dafe, F=0x0
-0,        851,        851,        1,   518400, 0x8780239e
+0,        851,        851,        1,   518400, 0xbab197ea
 0,        858,        858,        1,   518400, 0xbab197ea
 0,        861,        861,        1,   518400, 0x6eb72347
 1,  172203000,  172203000,  1695000,     1826, 0x9a1ac769, F=0x0
@@ -161,7 +162,8 @@
 0,        976,        976,        1,   518400, 0x923d1ce7
 0,        981,        981,        1,   518400, 0xbab197ea
 1,  196361000,  196361000,  1524000,     1715, 0x695ca41e, F=0x0
-0,        982,        982,        1,   518400, 0x6e652cd2
+0,        982,        982,        1,   518400, 0xbab197ea
+0,        983,        983,        1,   518400, 0x6e652cd2
 0,        989,        989,        1,   518400, 0xbab197ea
 1,  197946000,  197946000,  1160000,      789, 0xc63a189e, F=0x0
 0,        990,        990,        1,   518400, 0x25113966
Test sub2video failed. Look at tests/data/fate/sub2video.err for details.
make: *** [fate-sub2video] Error 1

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Many things microsoft did are stupid, but not doing something just because
microsoft did it is even more stupid. If everything ms did were stupid they
would be bankrupt already.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20180329/671a2e7b/attachment.sig>


More information about the ffmpeg-devel mailing list