[MPlayer-dev-eng] [BUGREPORT] + not quite related [PATCH]: -lavdopts debug issues

Jeff Clagg snacky at ikaruga.co.uk
Fri Jun 3 04:31:53 CEST 2005


-lavdopts debug's text output no longer works as of the following
change to libavcodec:
http://mplayerhq.hu/pipermail/ffmpeg-cvslog/2005-May/000281.html

I pointed this out on #mplayerdev and this is how Rich replied:

<dalias> mplayer needs to provide a callback for av_log to use
<dalias> the default one in libavcodec is not correct for mplayer
         because it calls fprintf itself
<dalias> rather than calling mp_msg
<dalias> if mplayer provides a callback, it can convert lavc log levels
<dalias> however this requires fixing mp_msg.c to have a vmp_msg
         function that takes its args as va_list rather than ...

Um... any volunteers?

The next issue is that the manpage is wrong and incomplete on some of
the lavdopts debug flags:

> debug=<value>
> [...]
> 32: motion vector

Doesn't seem to do anything, does it?

> 0x0040: motion vector visualization (use -noslices)

This is just wrong, see libavcodec/avcodec.h:1271, which reads:
#define FF_DEBUG_DCT_COEFF 0x00000040
Anyway, it doesn't seem to do anything either.

> 0x0080: macroblock (MB) skip

Breaks when you use any visualization options (motion vectors, qp or mb
type visualization). Whether anyone cares is another issue.

0x2000 (qp visualization) and 0x4000 (mb type visualization) aren't in
the man page; the attached patch fixes this plus uses better wording for
debug=16.

I left out fixing 0x0040 because I'm not positive my writeup would be
correct, and I don't even know how to try it out.
-------------- next part --------------
Index: mplayer.1
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/man/en/mplayer.1,v
retrieving revision 1.986
diff -u -r1.986 mplayer.1
--- mplayer.1	2 Jun 2005 23:14:15 -0000	1.986
+++ mplayer.1	3 Jun 2005 01:40:03 -0000
@@ -3229,7 +3229,7 @@
 .br
 8: macroblock (MB) type
 .br
-16: quantization parameter (QP)
+16: per-block quantization parameter (QP)
 .br
 32: motion vector
 .br
@@ -3246,6 +3246,10 @@
 0x0800: memory management control operations (H.264)
 .br
 0x1000: bugs
+.br
+0x2000: visualize quantization parameter (QP), lower QP are tinted more green
+.br
+0x4000: visualize block types
 .REss
 .IPs ec=<value>
 Set error concealment strategy.


More information about the MPlayer-dev-eng mailing list