Mercurial > libavformat.hg
changeset 465:83eb268d3b89 libavformat
100l (AVStream.duration)
author | michael |
---|---|
date | Mon, 24 May 2004 13:08:00 +0000 |
parents | 09e46bfc859c |
children | 0dd5b381fc9a |
files | avidec.c |
diffstat | 1 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/avidec.c Sun May 23 21:36:23 2004 +0000 +++ b/avidec.c Mon May 24 13:08:00 2004 +0000 @@ -209,7 +209,9 @@ get_le32(pb); /* start */ nb_frames = get_le32(pb); st->start_time = 0; - st->duration = nb_frames; + st->duration = av_rescale(nb_frames, + st->codec.frame_rate_base * AV_TIME_BASE, + st->codec.frame_rate); url_fskip(pb, size - 9 * 4); break; case MKTAG('a', 'u', 'd', 's'): @@ -239,7 +241,8 @@ ast->sample_size = get_le32(pb); /* sample ssize */ //av_log(NULL, AV_LOG_DEBUG, "%d %d %d %d\n", ast->scale, ast->rate, ast->sample_size, ast->start); st->start_time = 0; - st->duration = length; + if (ast->rate != 0) + st->duration = (int64_t)length * AV_TIME_BASE / ast->rate; url_fskip(pb, size - 12 * 4); } break;