Commit e3fd263f authored by Carl Eugen Hoyos's avatar Carl Eugen Hoyos

Show duration for large asf files as written in the file header.

Fixes ticket #3428.
parent 29fc468d
......@@ -372,7 +372,8 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
if (!(asf->hdr.flags & 0x01)) { // if we aren't streaming...
int64_t fsize = avio_size(pb);
if (fsize <= 0 || (int64_t)asf->hdr.file_size <= 0 || FFABS(fsize - (int64_t)asf->hdr.file_size) < 10000)
if (fsize <= 0 || (int64_t)asf->hdr.file_size <= 0 ||
FFABS(fsize - (int64_t)asf->hdr.file_size) / (float)FFMIN(fsize, asf->hdr.file_size) < 0.05)
st->duration = asf->hdr.play_time /
(10000000 / 1000) - start_time;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment