diff options
author | Aurelien Jacobs <aurel@gnuage.org> | 2008-09-28 22:55:28 +0000 |
---|---|---|
committer | Aurelien Jacobs <aurel@gnuage.org> | 2008-09-28 22:55:28 +0000 |
commit | e7d4b7431d441ef75abce5582a62394c2b0c830d (patch) | |
tree | 2b4b8b8f6162bc56003f7593e685a6ff1b839d1a /libavformat | |
parent | e43d7a18d8c4f116500d8c99beb52fa9fe92e6d1 (diff) | |
download | ffmpeg-e7d4b7431d441ef75abce5582a62394c2b0c830d.tar.gz |
matroskadec: pass duration as parameter of matroska_fix_ass_packet()
Originally committed as revision 15452 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat')
-rw-r--r-- | libavformat/matroskadec.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 479330727a..22f70ae87a 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -934,7 +934,7 @@ static int matroska_decode_buffer(uint8_t** buf, int* buf_size, } static void matroska_fix_ass_packet(MatroskaDemuxContext *matroska, - AVPacket *pkt) + AVPacket *pkt, uint64_t display_duration) { char *line, *layer, *ptr = pkt->data, *end = ptr+pkt->size; for (; *ptr!=',' && ptr<end-1; ptr++); @@ -942,7 +942,7 @@ static void matroska_fix_ass_packet(MatroskaDemuxContext *matroska, layer = ++ptr; for (; *ptr!=',' && ptr<end-1; ptr++); if (*ptr == ',') { - int64_t end_pts = pkt->pts + pkt->convergence_duration; + int64_t end_pts = pkt->pts + display_duration; int sc = matroska->time_scale * pkt->pts / 10000000; int ec = matroska->time_scale * end_pts / 10000000; int sh, sm, ss, eh, em, es, len; @@ -1627,7 +1627,7 @@ static int matroska_parse_block(MatroskaDemuxContext *matroska, uint8_t *data, pkt->duration = duration; if (st->codec->codec_id == CODEC_ID_SSA) - matroska_fix_ass_packet(matroska, pkt); + matroska_fix_ass_packet(matroska, pkt, duration); dynarray_add(&matroska->packets, &matroska->num_packets, pkt); } |