diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c index ec6a660ad9..648541e2b5 100644 --- a/libavcodec/vc1.c +++ b/libavcodec/vc1.c @@ -781,7 +781,11 @@ int vc1_parse_frame_header_adv(VC1Context *v, GetBitContext* gb) if(v->interlace){ v->fcm = decode012(gb); - if(v->fcm) return -1; // interlaced frames/fields are not implemented + if(v->fcm){ + if(!v->warn_interlaced++) + av_log(v->s.avctx, AV_LOG_ERROR, "Interlaced frames/fields support is not implemented\n"); + return -1; + } } switch(get_unary(gb, 0, 4)) { case 0: diff --git a/libavcodec/vc1.h b/libavcodec/vc1.h index e90feb2984..d5f0e05465 100644 --- a/libavcodec/vc1.h +++ b/libavcodec/vc1.h @@ -312,6 +312,8 @@ typedef struct VC1Context{ uint8_t closed_entry; ///< Closed entry point flag (CLOSED_ENTRY syntax element) int parse_only; ///< Context is used within parser + + int warn_interlaced; } VC1Context; /** Find VC-1 marker in buffer