一、头文件
#include <libavutil/log.h>
二、常用函数
1、av_log_set_level
void av_log_set_level(int level);
该函数用于设置全局日志级别。
2、av_log
void av_log(void* avcl, int level, const char* fmt, ...);
该函数用于输出日志消息。avcl
参数是相关联的上下文指针,level
参数是日志级别,fmt
和后面的参数是格式化字符串及其参数。
3、av_log_set_callback
void av_log_set_callback(void (*callback)(void* ptr, int level, const char* fmt, va_list vl));
该函数用于设置自定义日志回调函数。callback
参数是一个函数指针,指向自定义的日志回调函数。
4、av_log_default_callback
void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl);
该函数是 FFmpeg 默认的日志回调函数。你可以在自定义日志回调中调用此函数,以保留默认的日志行为。
5、av_default_item_name
const char *av_default_item_name(void* ctx);
该函数返回一个描述性名称,用于日志输出。ctx
参数是上下文指针。
三、日志等级
AV_LOG_QUIET
(-8) 静默模式,不打印任何日志。AV_LOG_PANIC
(0) 表示发生致使程序崩溃的严重错误。AV_LOG_FATAL
(8) 严重错误,但程序可能不会立即崩溃。AV_LOG_ERROR
(16) 一般错误。AV_LOG_WARNING
(24) 警告信息,指示某些非关键性问题。AV_LOG_INFO
(32) 一般信息,用于通知用户程序运行状态。AV_LOG_VERBOSE
(40) 详细信息,提供更深入的编解码过程描述。AV_LOG_DEBUG
(48) 调试信息,为开发者提供详细的内部操作数据。AV_LOG_TRACE
(56) 跟踪信息,记录函数调用和数据流。