summaryrefslogtreecommitdiff
path: root/libavutil/log.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2010-05-08 20:41:20 +0000
committerMichael Niedermayer <michaelni@gmx.at>2010-05-08 20:41:20 +0000
commit3fe1ec39c6eeba3348e3824df0d185525c321d57 (patch)
treeb3adbecf0ab4d8158bc9b7a9e7e6c7a5046aaab2 /libavutil/log.c
parentc12caa32b2d9fd8f76b4268a835731935b1cd794 (diff)
Add means to adjust the log level per context.
Originally committed as revision 23059 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavutil/log.c')
-rw-r--r--libavutil/log.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavutil/log.c b/libavutil/log.c
index 9a8b66ee4d..547287fc29 100644
--- a/libavutil/log.c
+++ b/libavutil/log.c
@@ -89,8 +89,11 @@ static void (*av_log_callback)(void*, int, const char*, va_list) = av_log_defaul
void av_log(void* avcl, int level, const char *fmt, ...)
{
+ AVClass* avc= avcl ? *(AVClass**)avcl : NULL;
va_list vl;
va_start(vl, fmt);
+ if(avc && avc->version >= (50<<16 | 15<<8 | 2) && avc->log_level_offset_offset && level>=AV_LOG_FATAL)
+ level += *(int*)(((uint8_t*)avcl) + avc->log_level_offset_offset);
av_vlog(avcl, level, fmt, vl);
va_end(vl);
}