diff options
author | laaz <laaz@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-10-09 00:18:20 +0000 |
---|---|---|
committer | laaz <laaz@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-10-09 00:18:20 +0000 |
commit | a86edc5af938d62d60af928288066f19bba1ed85 (patch) | |
tree | 5cd614cefd37769ef48cae830daf974bcce2ab13 /subreader.c | |
parent | 031c6bf512614d3097ecd17c30eb9c2022804a9a (diff) | |
download | mpv-a86edc5af938d62d60af928288066f19bba1ed85.tar.bz2 mpv-a86edc5af938d62d60af928288066f19bba1ed85.tar.xz |
ssa worx fine. Testers needed :)))
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2141 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'subreader.c')
-rw-r--r-- | subreader.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/subreader.c b/subreader.c index 23a70ad983..e93f0989f1 100644 --- a/subreader.c +++ b/subreader.c @@ -307,15 +307,21 @@ subtitle *sub_read_line_ssa(FILE *fd,subtitle *current) { hour2, min2, sec2, hunsec2, nothing; char line[1000], - line2[1000]; + line3[1000], + *line2; do { if (!fgets (line, 1000, fd)) return NULL; } while (sscanf (line, "Dialogue: Marked=%d,%d:%d:%d.%d,%d:%d:%d.%d," - "*Default,%d,%d,%d,%d,,%[^\n\r]", ¬hing, &hour1, &min1, - &sec1, &hunsec1, - &hour2, &min2, &sec2, &hunsec2, ¬hing, - ¬hing, ¬hing, ¬hing, line2) < 14); - current->lines=1; + "%[^\n\r]", ¬hing, + &hour1, &min1, &sec1, &hunsec1, + &hour2, &min2, &sec2, &hunsec2, + line3) < 9); + line2=strstr(line3,",,"); + if (!line2) return NULL; + line2 ++; + line2 ++; + + current->lines=1; // ez a kiraly!!! current->start = 360000*hour1 + 6000*min1 + 100*sec1 + hunsec1; current->end = 360000*hour2 + 6000*min2 + 100*sec2 + hunsec2; current->text[0]=(char *) malloc(strlen(line2)+1); |