win32: LIBS += -L$$PWD/../ffmpeg-win32-dev/lib/ -lavutil win32: LIBS += -L$$PWD/../ffmpeg-win32-dev/lib/ -lavformat win32: LIBS += -L$$PWD/../ffmpeg-win32-dev/lib/ -lswresample win32: LIBS += -L$$PWD/../ffmpeg-win32-dev/lib/ -lswscale INCLUDEPATH += $$PWD/../ffmpeg-win32-dev/include DEPENDPATH += $$PWD/../ffmpeg-win32-dev/include
#include <libavutil/channel_layout.h> //用戶音頻聲道佈局操做
#include <libavutil/opt.h> //設置操做選項操做
#include <libavutil/mathematics.h> //用於數學相關操做
#include <libavutil/timestamp.h> //用於時間戳操做
#include <libavformat/avformat.h> //用於封裝與解封裝操做
#include <libswscale/swscale.h> //用於縮放、轉換顏色格式操做
#include <libswresample/swresample.h> //用於進行音頻採樣率操做
使用遇到錯誤:D:\ffmpeg\dev\include\libavutil\common.h:210: error: ‘UINT64_C’ was not declared in this scope 佈局
if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF)) return (int32_t)((a>>63) ^ 0x7FFFFFFF);this
解決方法:spa
1 在common.h文件中加入 2 #ifndef INT64_C 3 #define INT64_C(c) (c ## LL) 4 #define UINT64_C(c) (c ## ULL) 5 #endif
使用遇到錯誤D:\ffmpeg\dev\include\libavutil\common.h:32: error: #error missing -D__STDC_CONSTANT_MACROS / #define __STDC_CONSTANT_MACROS
#error missing -D__STDC_CONSTANT_MACROS / #define __STDC_CONSTANT_MACROS
解決辦法: .net
1 記住要加到error missing -D__STDC_CONSTANT_MACROS 的前面否則仍是找不到 2 #if defined __cplusplus 3 #define __STDC_CONSTANT_MACROS 4 #endif
注:以上相似#error missing -D__STDC_CONSTANT_MACROS 的錯誤均可以這樣處理。code
建議都在common.h文件裏聲明,以下orm
1 /////新增//////////// 2 #ifndef INT64_C 3 #define INT64_C(c) (c ## LL) 4 #define UINT64_C(c) (c ## ULL) 5 #endif 6 7 #if defined __cplusplus 8 #define __STDC_CONSTANT_MACROS //common.h中的錯誤 9 #define __STDC_FORMAT_MACROS //timestamp.h中的錯誤 10 #endif 11 12 /////////////////////
參考:https://blog.csdn.net/qq_36088602/article/details/77885023blog
解決方法:數學
#include <libavcodec/avcodec.h>it
#include <libavformat/avformat.h>form
引入頭文件由於實在cpp的環境下引入的,須要
extern "C"
{
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
}
切記 exterm後面必定要跟{}。
這樣寫
extern "C"
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
是沒有用的 這種是錯誤的。必定要帶{},不然仍是回報一樣的錯誤。參考:https://blog.csdn.net/qq_18144521/article/details/79608355