日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

【C++ 语言】Visual Studio 配置 FFMPEG 开发环境 ( VS2019 CMake 环境安装 | 下载 FFMPEG 开发包 | 配置 FFMPEG )

發布時間:2025/6/17 c/c++ 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【C++ 语言】Visual Studio 配置 FFMPEG 开发环境 ( VS2019 CMake 环境安装 | 下载 FFMPEG 开发包 | 配置 FFMPEG ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

        • Visual Studio 2019 社區版 CMakeList 開發環境安裝
        • 創建 FFMPEG 配置項目
        • FFMPEG 開發包下載
        • FFMPEG 頭文件 靜態鏈接庫 ( .lib ) 動態鏈接庫 ( .dll ) 文件處理
        • Visual Studio Cmake 項目配置 FFMPEG
        • 包含 avcodec 庫并使用



Visual Studio 2019 社區版 CMakeList 開發環境安裝



配置該環境主要是配合 Android 進行開發 , 目前 Android 中調用 C/C++ 代碼使用的都是 CMake 構建項目 , 因此在次數 VS 中要使用 CMake 構建 FFMPEG 的開發環境 ;

先搭建基礎的開發環境 , 然后在配置 FFMPEG 源碼 ;

基礎開發環境搭建 , 博客地址 : https://hanshuliang.blog.csdn.net/article/details/98175395




創建 FFMPEG 配置項目



1.創建項目 : 打開 Visual Studio 后 , 點擊 “創建新項目” , 開始創建 CMake 項目 ;

2.選擇項目類型 : 選擇 CMake 項目類型 ;


3.輸入項目名稱 , 選擇項目位置 , 解決方案命名使用系統自動生成的 , 點擊 “創建” 按鈕 , 創建新項目 ;

4.進入代碼界面后 , 會自動生成解決方案 , 點擊運行測試項目是否完善 ;




FFMPEG 開發包下載



1.FFMPEG 官網地址 : http://ffmpeg.org/ , 在主頁中點擊 “Download” 下載按鈕 , 進入下載界面 ;

2.下載頁面鏈接 ( 默認 Linux ) : http://ffmpeg.org/download.html
在下面頁面中默認是 Linux 的下載項 , 由于要在 Windows 系統中的 Visual Studio 中搭建開發環境 , 這里我們選擇 Windows 下載項, 這里選擇 Windows 下載項;

3.Windows 下載頁 : http://ffmpeg.org/download.html#build-windows
在 Windows 下載頁面中 , 點擊 “Windows Builds” 鏈接 , 進入 Windows 開發包下載頁面 ;

4.FFMPEG Windows 開發包地址 : https://ffmpeg.zeranoe.com/builds/
在該界面中 , “Version” 選項下選擇要下載的 FFMPEG 版本 , 可以選擇一個穩定版本 , 也可以選擇最新版本 , 這里選擇最新的 2019年8月13日版本 , “Architecture” 下選擇要下載的架構 , 這里選擇 “Windows 64-bit” , “Linking” 選項下的三個 ( Static , Shared , Dev ) 都下載下來 ;

下載的文件為 :
ffmpeg-20190813-8cd96e1-win64-static.zip : 包含有 FFMPEG 文檔 ;
ffmpeg-20190813-8cd96e1-win64-shared.zip : 包含 .dll 動態鏈接庫 ;
ffmpeg-20190813-8cd96e1-win64-dev.zip : 包含相關頭文件和 lib 靜態鏈接庫 ;




FFMPEG 頭文件 靜態鏈接庫 ( .lib ) 動態鏈接庫 ( .dll ) 文件處理



1.頭文件和靜態鏈接庫 ( .lib ) 解壓拷貝

① 解壓 ffmpeg-20190813-8cd96e1-win64-dev.zip 文件 , 如下 :

② 將其中的 lib 和 include 目錄整體拷貝到 CMake 項目的源碼目錄下 ;

2.動態鏈接庫 ( .dll ) 解壓拷貝

① 將 ffmpeg-20190813-8cd96e1-win64-shared.zip 解壓 , 在 ffmpeg-20190813-8cd96e1-win64-shared/bin 目錄下有 8 個 .dll 文件 , 內容如下 :

② 將其拷貝到 C:\Windows\System32 目錄下 , 如下圖所示 :

下面是從 FFMPEG 官網下載的三個壓縮包 , 及其解壓后的目錄截圖 :




Visual Studio Cmake 項目配置 FFMPEG



執行該步驟前確保上個步驟執行完畢 ;
① 拷貝頭文件和靜態鏈接庫到項目源碼目錄中 ;
② 拷貝 8 個動態鏈接庫 ( .dll ) 到 C:\Windows\System32 中 ;

CMakeList.txt 配置 :

  • 1.要配置的文件 : 此處要配置的 CMake 配置文件是源碼路徑下的 CMakeList.txt 配置文件 , 不是項目根目錄下的配置文件 ;
  • 2.配置頭文件目錄 : 之前拷貝的 include 目錄到源碼目錄下 , include 目錄與該配置文件在同一個目錄 , 因此這里使用 “include” 相對路徑配置即可 ;
    • 相對路徑方案配置 : 直接配置 “include” 路徑 ;
    • 絕對路徑方案配置 : 這里也可以配置其絕對路徑 , “A:/develop/workspace/VS/002_FFMPEG/002_FFMPEG/include” ;
    • 注意點 : 配置路徑中不要使用拷貝出來的 “” , 需要修改成 “/” 作為文件分隔符 ;
#配置頭文件目錄 : 如果想要在寫代碼時調用 FFMPEG 中的函數 , 必須設置頭文件的查找位置 include_directories("include")
  • 3.配置庫文件目錄 : 這里也配置相對路徑 “lib” ;
#配置庫文件目錄 : 設置 lib 庫文件查找目錄 , 相當于 Java 中的 jar 包 link_directories("lib")
  • 4.配置 8 個 FFMPEG 庫鏈接 : 使用 target_link_libraries 配置 FFMPEG 的8個動態鏈接庫 , 注意該配置必須在解決方案配置之后 , 要先配置生成 002_FFMPEG 項目 , 然后配置該配置項 ;
#設置編譯鏈接的 FFMPEG 庫 , 需要把 FFMPEG 的庫都配置到下面 #注意 使用 002_FFMPEG 的前提是 , 該項目必須在 002_FFMPEG 配置后面進行配置 target_link_libraries(002_FFMPEG #本項目的解決方案名稱avcodec #音視頻編碼核心庫 , 用于音視頻或圖片編解碼avdevice #硬件采集 , 加速 , 顯示 庫avfilter #音視頻濾波器avformat #音視頻封裝格式生成或解析 avutil #該庫中封裝了一些公共的工具函數postproc #封裝了同步, 時間計算的簡單算法swresample #音視頻編解碼格式預設swscale #原始視頻格式轉換庫 )
  • 5.完整的 CMakeList.txt 配置文件 :
# CMakeList.txt: 002_FFMPEG 的 CMake 項目,在此處包括源代碼并定義 # 項目特定的邏輯。 # cmake_minimum_required (VERSION 3.8)#配置頭文件目錄 : 如果想要在寫代碼時調用 FFMPEG 中的函數 , 必須設置頭文件的查找位置 include_directories("include")#配置庫文件目錄 : 設置 lib 庫文件查找目錄 , 相當于 Java 中的 jar 包 link_directories("lib")# 將源代碼添加到此項目的可執行文件。 add_executable (002_FFMPEG "002_FFMPEG.cpp" "002_FFMPEG.h")#設置編譯鏈接的 FFMPEG 庫 , 需要把 FFMPEG 的庫都配置到下面 #注意 使用 002_FFMPEG 的前提是 , 該項目必須在 002_FFMPEG 配置后面進行配置 target_link_libraries(002_FFMPEG #本項目的解決方案名稱avcodec #音視頻編碼核心庫 , 用于音視頻或圖片編解碼avdevice #硬件采集 , 加速 , 顯示 庫avfilter #音視頻濾波器avformat #音視頻封裝格式生成或解析 avutil #該庫中封裝了一些公共的工具函數postproc #封裝了同步, 時間計算的簡單算法swresample #音視頻編解碼格式預設swscale #原始視頻格式轉換庫 )# TODO: 如有需要,請添加測試并安裝目標。


包含 avcodec 庫并使用



包含 avcodec 庫并使用 : 該庫是 FFMPEG 的核心庫 , 8 個動態鏈接庫之一 ;

  • 1.包含 avcodec 庫 頭文件 : 注意 C/C++ 兼容 , 該庫是 C 語言庫 , 需要在 extern “C”{} 中包含該庫 ;
extern "C" {#include <libavcodec/avcodec.h> }
  • 2.打印 avcodec 版本號 : 調用 av_version_info() 方法 , 即可獲取 avcodec 版本號 ;
//打印 avcodec 版本號cout << av_version_info() << endl;
  • 3.完整代碼 :
// 002_FFMPEG.cpp: 定義應用程序的入口點。 //#include "002_FFMPEG.h"using namespace std;extern "C" {#include <libavcodec/avcodec.h> }int main() {cout << "Hello FFMPEG。" << endl;//打印 avcodec 版本號cout << av_version_info() << endl;return 0; }
  • 4.執行結果 :
Hello FFMPEG。 N-94530-g8cd96e13ee


總結

以上是生活随笔為你收集整理的【C++ 语言】Visual Studio 配置 FFMPEG 开发环境 ( VS2019 CMake 环境安装 | 下载 FFMPEG 开发包 | 配置 FFMPEG )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。