在 Visual Studio C++ 專案中使用 FFmpeg

  • 1585
  • 0

最近想用 FFmpeg 來做點事情,所以開始研究怎麼在 Visual Studio C++ 專案中使用 FFmpeg

這邊文章會教學如何開空專案,並呼叫一個 FFmpeg 中的函式,且可以成功編譯並執行

我的環境: Windows 10, Visual Studio 2017 

 

事前準備:

首先先去 https://ffmpeg.zeranoe.com/builds/ 下載必要的 include, lib 跟 dll 檔案

Version 選哪個都可以,為了方便 Architecture 選 Windows 32-bit;Linking 選項則是 Shared 跟 Dev 都要下載,因為 Shared 包含了 dll 檔案,而 Dev 是 C++ 標頭檔以及 lib

 

正文開始:

開個 C++ 的空白專案

 

建立一個 Source.cpp 檔案,不過現在會因為沒有加入 FFmpeg 的相依性而編譯失敗

#include <iostream>

extern "C"
{
#include "include\libavformat\avformat.h"
}

#pragma comment(lib, "avformat.lib")  

using namespace std;

int main()
{
	av_register_all();
	system("pause");
}

 

將剛剛下載的 dev 壓縮檔案解開,把裡面的 include 跟 lib 資料夾複製到 "專案" 資料夾裡面,特別注意是 "專案" 那層喔,不是 "方案" 那層,本文章中是 D:\Projects\FFmpegDemo\FFmpegDemo 裡面

將剛剛下載的 shared 壓縮檔案解開,把 bin 資料夾裡面的所有 dll 檔案複製到 "專案" 資料夾裡面,同上面

 

回到 Visual Studio

  1. 在專案按右鍵,屬性,在 C/C++ > 一般 >其他 Include 目錄填上 $(ProjectDir)\include
  2. 左邊連結器中 > 輸入 > 其他相依性最前面加上 $(ProjectDir)\lib\*.lib;
  3. 按下確定

 

這時候應該就可以成功編譯並執行了,就可以開始使用 FFmpeg 啦~