diff h263dec.c @ 2792:0a8c847ad5e7 libavcodec

skip_idct skip_frame skip_loop_filter
author michael
date Thu, 14 Jul 2005 21:39:36 +0000
parents 2b37bcabe608
children f3bc39da0cc4
line wrap: on
line diff
--- a/h263dec.c	Thu Jul 14 15:30:39 2005 +0000
+++ b/h263dec.c	Thu Jul 14 21:39:36 2005 +0000
@@ -673,6 +673,10 @@
     if(s->last_picture_ptr==NULL && (s->pict_type==B_TYPE || s->dropable)) return get_consumed_bytes(s, buf_size);
     /* skip b frames if we are in a hurry */
     if(avctx->hurry_up && s->pict_type==B_TYPE) 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);
     /* skip everything if we are in a hurry>=5 */
     if(avctx->hurry_up>=5) return get_consumed_bytes(s, buf_size);