summaryrefslogtreecommitdiff
path: root/libavcodec/h261.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/h261.c')
-rw-r--r--libavcodec/h261.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/h261.c b/libavcodec/h261.c
index f9e148455c..a823cc39bc 100644
--- a/libavcodec/h261.c
+++ b/libavcodec/h261.c
@@ -970,6 +970,10 @@ retry:
/* skip everything if we are in a hurry>=5 */
if(avctx->hurry_up>=5) return get_consumed_bytes(s, buf_size);
+ if( (avctx->skip_frame >= AVDISCARD_NONREF && s->pict_type==B_TYPE)
+ ||(avctx->skip_frame >= AVDISCARD_NONKEY && s->pict_type!=I_TYPE)
+ || avctx->skip_frame >= AVDISCARD_ALL)
+ return get_consumed_bytes(s, buf_size);
if(MPV_frame_start(s, avctx) < 0)
return -1;