根据视频中的讲解,这个函数类似于是fprintf()函数的存在,但是在QT中fprintf()是打印不出任何东西出来的,如果你先打印需要fflush(stderr)方可输出。在QT中我们完全可以使用qDebug来代替。是下面是在linux系统中的使用。
步骤
- 头文件:
include <libavutil/log.h>
- 设置日志级别
av_log_set_level(AV_LOG_DEBUG);
那些需要打印出来,那些不用打印出来,比AV_LOG_DEBUG级别高的就会被打印出来。
- 打印日志
av_log(NULL,AV_LOG_INFO,”…%s\n”,op);
第一个参数可先忽略。
第二参数写要打印的日志级别。
第三参数和printf()函数的第一参数一致
第四参数和printf()函数的参数一致。
日志级别参数 | 排名 |
---|---|
AV_LOG_ERROR | 级别最高 |
AV_LOG_WARNING | 级别第二高 |
AV_LOG_INFO | 级别第三高 |
AV_LOG_DEBUG | 级别最低 |
- 示例代码
#include <stdio.h>
#include <libavutil/log.h>
int main(){
av_log_set_level(AV_LOG_DEBUG);
av_log(NULL,AV_LOG_INFO,"日志输出");//一般重要的环节都输出一下INFO
return 0;
}