Ubuntu FFMpeg開發日誌系統入門以及遇到的問題解決

FFMpeg日誌系統

1.添加頭文件

#include <libavutil/log.h>

2.設置打印日誌信息級別
當需要打印的日誌信息級別大於設置的級別的時候纔會打印

av_log_set_level(AV_LOG_DEBUG);
av_log_set_level(AV_LOG_INFO);
av_log_set_level(AV_LOG_WARN);
av_log_set_level(AV_LOG_ERROE);

3.打印日誌

av_log(NULL,AV_LOG_DEBUG,"Hello FFMpeg!\n")

4.編寫測試文件

#include <stdio.h>
#include <libavutil/log.h>

int main(int arg,char* argv[])
{
	av_log_set_level(AV_LOG_DEBUG);

	av_log(NULL,AV_LOG_DEBUG,"Hello,FFMpeg!\n");
	return 0;
}

5.編譯

gcc ffmpeg_log.c -o ffmpeg_log -lavutil
出現錯誤:ffmpeg_log.c:2:27: fatal error: libavutil/log.h: 沒有那個文件或目錄
compilation terminated.

(1)安裝pkg-config

apt install pkg-config

(2)gcc ffmpeg_log.c -o ffmpeg_log pkg-config --libs --cflags libavutil

出現新的錯誤:
Package libavutil was not found in the pkg-config search path.
Perhaps you should add the directory containing `libavutil.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libavutil' found
ffmpeg_log.c:2:27: fatal error: libavutil/log.h: 沒有那個文件或目錄
compilation terminated.

(3)配置環境變量

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/xxx/xxx/lib/pkgconfig
例如:我的ffmpeg在/usr/local/ffmpeg/下
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/ffmpeg/lib/pkgconfig 

(4)配合之完成後重新執行編譯

gcc ffmpeg_log.c -o ffmpeg_log `pkg-config --libs --cflags libavutil`

(5)沒有錯誤信息,成功!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章