mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Add means to adjust the log level per context.
Originally committed as revision 23059 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
c12caa32b2
commit
3fe1ec39c6
@ -41,7 +41,7 @@
|
|||||||
|
|
||||||
#define LIBAVUTIL_VERSION_MAJOR 50
|
#define LIBAVUTIL_VERSION_MAJOR 50
|
||||||
#define LIBAVUTIL_VERSION_MINOR 15
|
#define LIBAVUTIL_VERSION_MINOR 15
|
||||||
#define LIBAVUTIL_VERSION_MICRO 1
|
#define LIBAVUTIL_VERSION_MICRO 2
|
||||||
|
|
||||||
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
|
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
|
||||||
LIBAVUTIL_VERSION_MINOR, \
|
LIBAVUTIL_VERSION_MINOR, \
|
||||||
|
@ -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, ...)
|
void av_log(void* avcl, int level, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
|
AVClass* avc= avcl ? *(AVClass**)avcl : NULL;
|
||||||
va_list vl;
|
va_list vl;
|
||||||
va_start(vl, fmt);
|
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);
|
av_vlog(avcl, level, fmt, vl);
|
||||||
va_end(vl);
|
va_end(vl);
|
||||||
}
|
}
|
||||||
|
@ -56,6 +56,12 @@ typedef struct {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
int version;
|
int version;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Offset in the structure where log_level_offset is stored.
|
||||||
|
* 0 means there is no such variable
|
||||||
|
*/
|
||||||
|
int log_level_offset_offset;
|
||||||
} AVClass;
|
} AVClass;
|
||||||
|
|
||||||
/* av_log API */
|
/* av_log API */
|
||||||
|
Loading…
Reference in New Issue
Block a user