首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

FFmpeg初级开发(一)之日志信息

2024-12-20 来源:化拓教育网

从今天开始更一系列关于FFmpeg初级开发系列的文章,更完这一系列之后再写一些FFmpeg深入开发的文章,一点一点的深入,将FFmpeg开发呈现给读者阅读,希望能帮到想学FFmpeg的同学,我们一起成长,一起进步。
FFmpeg初级开发包括:

1. FFmpeg日志Log;
2. FFmpeg文件操作;
3. FFmpeg目录和List操作;
4. FFmpeg流处理;
5. FFmpeg Meta信息;
6. FFmpeg抽取音频数据;
7. FFmpeg抽取视频H264数据;
8. FFmpeg格式转换;
9. FFmpeg音视频裁剪。

那么我们今天来说一说FFmpeg的日志系统。
FFmpeg的日志系统非常简单,一般通过3个步骤就能将日志打印出来。

1. 引入头文件:include <libavutil/log.h>
2. 设置日志级别:av_log_set_level(AV_LOG_DEBUG)
3. 使用打印语句:av_log(NULL, AV_LOG_DEBUG, "……%s\n", log)  类似于printf打印语句

通过以上三步就能打印出来日志信息。

这里要注意的是日志的级别是:

AV_LOG_DEBUG;
AV_LOG_INFO;
AV_LOG_WARNING;
AV_LOG_ERROR;

从上到下,LOG的级别由弱变强。

下面我们写几行代码来举个例子:

新建一个ffmpegLog.c文件

#include<stdio.h>
#include<libavutil/log.h>
int main(int argc, char* argv[]){
    av_log_set_level(AV_LOG_DEBUG);
    av_log(NULL, AV_LOG_DEBUG, "Print log info!\n");
    return 0;
}

注:编译的时候需要连接libavutil库,

编译语句:clang -g -o ffmpegLog ffmpegLog.c -lavutil
然后运行:./ffmpegLog

得到打印的Log信息"Print log info"

通过上面简单的3步就可以打印出来你想要的Log信息,在我们日后做FFmpeg开发的时候可以在需要打印Log信息的地方加入Log语句来打印信息。

显示全文