specific debug output support

Originally committed as revision 1305 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Michael Niedermayer 22 years ago
parent ce3bcaeda1
commit c8c437bc23
  1. 18
      libavcodec/avcodec.h
  2. 18
      libavcodec/h263.c

@ -5,8 +5,8 @@
#define LIBAVCODEC_VERSION_INT 0x000406 #define LIBAVCODEC_VERSION_INT 0x000406
#define LIBAVCODEC_VERSION "0.4.6" #define LIBAVCODEC_VERSION "0.4.6"
#define LIBAVCODEC_BUILD 4641 #define LIBAVCODEC_BUILD 4642
#define LIBAVCODEC_BUILD_STR "4641" #define LIBAVCODEC_BUILD_STR "4642"
enum CodecID { enum CodecID {
CODEC_ID_NONE, CODEC_ID_NONE,
@ -812,6 +812,20 @@ typedef struct AVCodecContext {
* decoding: set by lavc * decoding: set by lavc
*/ */
AVVideoFrame *coded_picture; AVVideoFrame *coded_picture;
/**
* debug
* encoding: set by user.
* decoding: set by user.
*/
int debug;
#define FF_DEBUG_PICT_INFO 1
#define FF_DEBUG_RC 2
#define FF_DEBUG_BITSTREAM 4
#define FF_DEBUG_MB_TYPE 8
#define FF_DEBUG_QP 16
#define FF_DEBUG_MV 32
#define FF_DEBUG_VIS_MV 64
} AVCodecContext; } AVCodecContext;
typedef struct AVCodec { typedef struct AVCodec {

@ -4546,14 +4546,16 @@ static int decode_vop_header(MpegEncContext *s, GetBitContext *gb){
s->b_code = get_bits(gb, 3); s->b_code = get_bits(gb, 3);
}else }else
s->b_code=1; s->b_code=1;
#if 0
printf("qp:%d fc:%d bc:%d type:%s size:%d pro:%d alt:%d top:%d qpel:%d part:%d resync:%d w:%d a:%d\n", if(s->avctx->debug&FF_DEBUG_PICT_INFO){
s->qscale, s->f_code, s->b_code, printf("qp:%d fc:%d bc:%d type:%s size:%d pro:%d alt:%d top:%d qpel:%d part:%d resync:%d w:%d a:%d\n",
s->pict_type == I_TYPE ? "I" : (s->pict_type == P_TYPE ? "P" : (s->pict_type == B_TYPE ? "B" : "S")), s->qscale, s->f_code, s->b_code,
gb->size,s->progressive_sequence, s->alternate_scan, s->top_field_first, s->pict_type == I_TYPE ? "I" : (s->pict_type == P_TYPE ? "P" : (s->pict_type == B_TYPE ? "B" : "S")),
s->quarter_sample, s->data_partitioning, s->resync_marker, s->num_sprite_warping_points, gb->size,s->progressive_sequence, s->alternate_scan, s->top_field_first,
s->sprite_warping_accuracy); s->quarter_sample, s->data_partitioning, s->resync_marker, s->num_sprite_warping_points,
#endif s->sprite_warping_accuracy);
}
if(!s->scalability){ if(!s->scalability){
if (s->shape!=RECT_SHAPE && s->pict_type!=I_TYPE) { if (s->shape!=RECT_SHAPE && s->pict_type!=I_TYPE) {
skip_bits1(gb); // vop shape coding type skip_bits1(gb); // vop shape coding type

Loading…
Cancel
Save