From 36a60fad6215db39e9cd9523e3425f64464046c7 Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Sat, 19 Nov 2011 01:15:40 +0100
Subject: [PATCH] lavf: cdg has large non keyframe segments and should thus be
 exempt from the non keyframe check in seeking. Improves seeking for cdg
 files.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
---
 libavformat/utils.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/utils.c b/libavformat/utils.c
index 1906b275368..35d85cbf3de 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -1823,7 +1823,7 @@ static int seek_frame_generic(AVFormatContext *s,
             if(stream_index == pkt.stream_index && pkt.dts > timestamp){
                 if(pkt.flags & AV_PKT_FLAG_KEY)
                     break;
-                if(nonkey++ > 1000){
+                if(nonkey++ > 1000 && st->codec->codec_id != CODEC_ID_CDGRAPHICS){
                     av_log(s, AV_LOG_ERROR,"seek_frame_generic failed as this stream seems to contain no keyframes after the target timestamp, %d non keyframes found\n", nonkey);
                     break;
                 }
-- 
GitLab