summaryrefslogtreecommitdiff
path: root/libavformat/nutdec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-07-06 22:05:35 +0200
committerMichael Niedermayer <michaelni@gmx.at>2013-07-06 22:27:35 +0200
commit7f250502897e7af7d9912519c3251f89866feb04 (patch)
treeaed85325eae9e6dc2c0bc243591ebe77da15f1dd /libavformat/nutdec.c
parent8ca5d277d8a8e31365b0e9609114738db26bbc6a (diff)
nutdec: use ff_find_last_ts()
Fixes finding the duration for nut files that are truncated Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/nutdec.c')
-rw-r--r--libavformat/nutdec.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c
index 30bdefd933..13048fba97 100644
--- a/libavformat/nutdec.c
+++ b/libavformat/nutdec.c
@@ -586,14 +586,8 @@ static int64_t find_duration(NUTContext *nut, int64_t filesize)
AVFormatContext *s = nut->avf;
int64_t duration = 0;
- int64_t pos = FFMAX(0, filesize - 2*nut->max_distance);
- for(;;){
- int64_t ts = nut_read_timestamp(s, -1, &pos, INT64_MAX);
- if(ts < 0)
- break;
- duration = FFMAX(duration, ts);
- pos++;
- }
+ ff_find_last_ts(s, -1, &duration, NULL, nut_read_timestamp);
+
if(duration > 0)
s->duration_estimation_method = AVFMT_DURATION_FROM_PTS;
return duration;