Fix ffmpeg/libav logging (almost everything was being logged no matter

what the log level because many ffmpeg log messages have levels in
between the fixed values)
This commit is contained in:
ejurgensen 2013-12-26 23:06:34 +01:00
parent 02a73e3638
commit c8a631212c

View File

@ -140,17 +140,16 @@ logger_ffmpeg(void *ptr, int level, const char *fmt, va_list ap)
{ {
int severity; int severity;
/* Can't use a switch() because some definitions have the same value */ if (level <= AV_LOG_ERROR)
if ((level == AV_LOG_FATAL) || (level == AV_LOG_ERROR))
severity = E_LOG; severity = E_LOG;
else if ((level == AV_LOG_WARNING) || (level == AV_LOG_INFO) || (level == AV_LOG_VERBOSE)) else if (level <= AV_LOG_WARNING)
severity = E_WARN; severity = E_WARN;
else if (level == AV_LOG_DEBUG) else if (level <= AV_LOG_VERBOSE)
severity = E_INFO;
else if (level <= AV_LOG_DEBUG)
severity = E_DBG; severity = E_DBG;
else if (level == AV_LOG_QUIET)
severity = E_SPAM;
else else
severity = E_LOG; severity = E_SPAM;
vlogger(severity, L_FFMPEG, fmt, ap); vlogger(severity, L_FFMPEG, fmt, ap);
} }