diff --git a/libavformat/utils.c b/libavformat/utils.c
index 1906b275368c9f3e194657c7925631ba3e5bf33f..35d85cbf3decdd0dc853c3482e2ac8fd6521d50e 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;
                 }