From 48f27b78f4bcb26fc214f8815427e615adbfda40 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 8 Apr 2015 19:55:04 +0200 Subject: [PATCH] microdvd: do not export framerate hint as subtitle packet MicroDVD has a "hack" for specifying the video framerate the subtitle was authored against. The demuxer reads this hint correctly, but didn't skip it correctly. This was not noticed, because the exported packet has its duration set to 0, making it invisible (depending on the API user's rendering logic). Signed-off-by: Michael Niedermayer --- libavformat/microdvddec.c | 1 + tests/ref/fate/sub-microdvd | 13 ++++++------- tests/ref/fate/sub-microdvd-remux | Bin 436 -> 416 bytes 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/libavformat/microdvddec.c b/libavformat/microdvddec.c index ce3433cf25..a3839051a4 100644 --- a/libavformat/microdvddec.c +++ b/libavformat/microdvddec.c @@ -112,6 +112,7 @@ static int microdvd_read_header(AVFormatContext *s) && frame <= 1 && fps > 3 && fps < 100) { pts_info = av_d2q(fps, 100000); has_real_fps = 1; + continue; } if (!st->codec->extradata && sscanf(line, "{DEFAULT}{}%c", &c) == 1) { st->codec->extradata = av_strdup(line + 11); diff --git a/tests/ref/fate/sub-microdvd b/tests/ref/fate/sub-microdvd index f0eb331823..4a2e00cc82 100644 --- a/tests/ref/fate/sub-microdvd +++ b/tests/ref/fate/sub-microdvd @@ -7,13 +7,12 @@ PlayResY: 288 [V4+ Styles] Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding Style: Default,Comic Sans MS,30,&H123456,&H123456,&H0,&H0,0,0,0,0,100,100,0,0,1,1,0,2,10,10,10,0 - -[Events] -Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text -Dialogue: 0,0:00:00.00,0:00:40.00,Default,,0,0,0,,25.000 FPS -Dialogue: 0,0:00:40.00,0:00:52.00,Default,,0,0,0,,{\c&H345678&}foo{\c}\N{\c&HABCDEF&}bar{\c}\Nbla -Dialogue: 0,0:00:52.00,0:00:56.00,Default,,0,0,0,,{\u1}{\s1}{\i1}{\b1}italic bold underline strike{\s0}{\u0}\Nitalic bold no-underline no-strike -Dialogue: 0,0:00:56.00,0:01:00.00,Default,,0,0,0,,back to + +[Events] +Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text +Dialogue: 0,0:00:40.00,0:00:52.00,Default,,0,0,0,,{\c&H345678&}foo{\c}\N{\c&HABCDEF&}bar{\c}\Nbla +Dialogue: 0,0:00:52.00,0:00:56.00,Default,,0,0,0,,{\u1}{\s1}{\i1}{\b1}italic bold underline strike{\s0}{\u0}\Nitalic bold no-underline no-strike +Dialogue: 0,0:00:56.00,0:01:00.00,Default,,0,0,0,,back to Dialogue: 0,0:01:00.00,0:01:04.00,Default,,0,0,0,,the future Dialogue: 0,0:01:20.00,0:01:24.92,Default,,0,0,0,,{\pos(10,20)}Some more crazy stuff Dialogue: 0,0:02:14.00,0:02:15.60,Default,,0,0,0,,this subtitle... diff --git a/tests/ref/fate/sub-microdvd-remux b/tests/ref/fate/sub-microdvd-remux index 7cbab62c3e8adda33c25c6ce82bcb07331efa86e..a71da99031fdc4bff13ea7124c046e761a650dc8 100644 GIT binary patch delta 10 RcmdnOynuOv{zm6QMgSE31AqVk delta 30 kcmZ3$yoGs!zOX@UwV{E5L9LOg9*|OS3kc@gs8_@Y0EJHo9RL6T