summaryrefslogtreecommitdiff
path: root/libavformat/utils.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-07-02 23:23:33 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-07-02 23:23:33 +0200
commita08efa2e3640ef0445032022c0b392376c58bd99 (patch)
treee24638ed299edf9275df1039e14b8a2c87d3178c /libavformat/utils.c
parent4e9e0700fb8fd89b565032e6f049b91014ec1f3c (diff)
has_decode_delay_been_guessed: tighten up the heuristic.
This adds the minimum delay needed with the current decoder to recognize the reorder buffer size for the reference bitstreams. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/utils.c')
-rw-r--r--libavformat/utils.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 67616af661..70f8d46aae 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -2292,7 +2292,10 @@ static int has_decode_delay_been_guessed(AVStream *st)
#endif
if(st->codec->has_b_frames<3)
return st->info->nb_decoded_frames >= 6;
- return st->info->nb_decoded_frames >= 20;
+ else if(st->codec->has_b_frames<4)
+ return st->info->nb_decoded_frames >= 18;
+ else
+ return st->info->nb_decoded_frames >= 20;
}
/* returns 1 or 0 if or if not decoded data was returned, or a negative error */