specific debug output support
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 4 Dec 2002 12:09:27 +0000 (12:09 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 4 Dec 2002 12:09:27 +0000 (12:09 +0000)
Originally committed as revision 1305 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/avcodec.h
libavcodec/h263.c

index e6c14afa0eeb88ab1a4c3e90b0bdf923ae72f477..287b17c09ecaa1b832b34cc61712478d8a35f8ad 100644 (file)
@@ -5,8 +5,8 @@
 
 #define LIBAVCODEC_VERSION_INT 0x000406
 #define LIBAVCODEC_VERSION     "0.4.6"
-#define LIBAVCODEC_BUILD       4641
-#define LIBAVCODEC_BUILD_STR   "4641"
+#define LIBAVCODEC_BUILD       4642
+#define LIBAVCODEC_BUILD_STR   "4642"
 
 enum CodecID {
     CODEC_ID_NONE, 
@@ -812,6 +812,20 @@ typedef struct AVCodecContext {
      * decoding: set by lavc
      */
     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;
 
 typedef struct AVCodec {
index caa1bf4552d4fa9489727ae95a074423b438963f..98b29ad0b4fa4a9f52dad104160d42bd01abb7b8 100644 (file)
@@ -4546,14 +4546,16 @@ static int decode_vop_header(MpegEncContext *s, GetBitContext *gb){
              s->b_code = get_bits(gb, 3);
          }else
              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", 
-    s->qscale, s->f_code, s->b_code, 
-    s->pict_type == I_TYPE ? "I" : (s->pict_type == P_TYPE ? "P" : (s->pict_type == B_TYPE ? "B" : "S")), 
-    gb->size,s->progressive_sequence, s->alternate_scan, s->top_field_first, 
-    s->quarter_sample, s->data_partitioning, s->resync_marker, s->num_sprite_warping_points,
-    s->sprite_warping_accuracy); 
-#endif
+
+         if(s->avctx->debug&FF_DEBUG_PICT_INFO){
+             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->qscale, s->f_code, s->b_code, 
+                 s->pict_type == I_TYPE ? "I" : (s->pict_type == P_TYPE ? "P" : (s->pict_type == B_TYPE ? "B" : "S")), 
+                 gb->size,s->progressive_sequence, s->alternate_scan, s->top_field_first, 
+                 s->quarter_sample, s->data_partitioning, s->resync_marker, s->num_sprite_warping_points,
+                 s->sprite_warping_accuracy); 
+         }
+
          if(!s->scalability){
              if (s->shape!=RECT_SHAPE && s->pict_type!=I_TYPE) {
                  skip_bits1(gb); // vop shape coding type