Microsoft Visual Studio2019環境下搭建FFmpeg開發環境

參考鏈接

  • 《基于 FFmpeg + SDL 的視頻播放器的制作》課程的視頻_雷霄驊的博客-CSDN博客_雷霄驊ffmpeg視頻教程
  • 小學期課程資料 - 基于FFmpeg+SDL的視頻播放器的制作.zip_免費高速下載|百度網盤-分享無限制
  • 輔助參考鏈接
  • 使用VS2019創建項目,添加文件和庫地址_MY CUP OF TEA的博客-CSDN博客_vs添加庫文件
  • vcpkg安裝編譯ffmpeg_ピストル的博客-CSDN博客_vcpkg 編譯ffmpeg
  • Get started with vcpkg

Win安裝/配置ffmpeg

  • 安裝vcpkg,打開git軟件,克隆vcpkg
    • git clone https://github.com/Microsoft/vcpkg.git

?

  • 運行腳本生成vcpkg.exe可執行程序
    • .\vcpkg\bootstrap-vcpkg.bat
  • 安裝ffmpeg 需要進入文件夾下
    • ./vcpkg.exe install ffmpeg
    • 編譯完成,生成release和debug兩個版本

  • ?將下載的庫集成到全局中
  • ./vcpkg.exe integrate install

?

新建控制臺工程

  • 打開軟件
  • 創建新項目 -> 選擇控制臺應用 -> 下一步 -> 配置新項目(填寫項目的名稱和選擇項目的存儲路徑) -> 創建
  • 點擊 本地Windows調試器,進行初次調試,輸出“Hello World!” 表示項目創建成功

測試

  • ?C++編寫ffmpeg程序,引入頭文件,需要使用extern “C”,即以下代碼使用C語言進行編譯
  • 使用vcpkg管理ffmpeg的相關庫文件,并將庫集成到全局路徑,因此,軟件可以識別到ffmpeg的文件位置
  • 使用如下代碼進行測試,輸出 ffmpeg配置信息
// test_ffmpeg.cpp : 此文件包含 "main" 函數。程序執行將在此處開始并結束。
//#include <iostream>extern "C" {
#include "libavcodec/avcodec.h"
}
int main()
{std::cout << avcodec_configuration();
}// 運行程序: Ctrl + F5 或調試 >“開始執行(不調試)”菜單
// 調試程序: F5 或調試 >“開始調試”菜單// 入門使用技巧: 
//   1. 使用解決方案資源管理器窗口添加/管理文件
//   2. 使用團隊資源管理器窗口連接到源代碼管理
//   3. 使用輸出窗口查看生成輸出和其他消息
//   4. 使用錯誤列表窗口查看錯誤
//   5. 轉到“項目”>“添加新項”以創建新的代碼文件,或轉到“項目”>“添加現有項”以將現有代碼文件添加到項目
//   6. 將來,若要再次打開此項目,請轉到“文件”>“打開”>“項目”并選擇 .sln 文件

Microsoft Visual Studio2010環境下

  • 需要拷貝文件啥的,比較麻煩
  • 最新版的VS2019,使用vcpkg作為包管理工具,比較容易
  • 舊版本的同學可以參考如下教程

搭建FFmpeg開發環境

  • 在項目文件夾下創建include文件夾,將ffmpeg的頭文件(*.h),拷貝至include文件夾下

?

  • 在項目文件夾下創建lib文件夾,將ffmpeg的庫文件(*.lib),拷貝至lib文件夾下

?

  • 將動態庫文件(*.dll)拷貝至項目文件夾下

?項目配置

  • 選中項目,點擊右鍵,點擊屬性選項卡
  • 選擇 C/C++ -> 常規 -> 附加包含目錄,填寫include,所有配置完成之后點擊應用

  • ?點擊鏈接器,選擇常規,點擊附加庫目錄,輸入lib

  • ?輸入當前工程所依賴的所有庫的名稱? ?寫lib文件夾下的名稱
  • 點擊鏈接器,選擇輸入,找到附加依賴項,點擊編輯,輸入所有庫的名稱,點擊確定

??avcodec.lib;avdevice.lib;avfilter.lib;avformat.lib;avutil.lib;postproc.lib;swresample.lib;swscale.lib
  • 動態庫 不需要配置

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/446018.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/446018.shtml
英文地址,請注明出處:http://en.pswp.cn/news/446018.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue process.env獲取不到_從文檔開始,重學vue(下)源碼級別

此篇文章主要是從應用及源碼層面講解vue部分常用api,閱讀起來可能略有難度,新手可以看《從文檔開始,重學vue(上)》示例代碼均在vue-cli3中完成Vue.extend()可以使用 extend 創建一個子類,該方法通常用于構建全局組件,如彈框組件等,下面我們就用它來制作個全局alert組件吧首先我…

Microsoft Visual Studio2019環境下搭建SDL開發環境

參考鏈接 《基于 FFmpeg SDL 的視頻播放器的制作》課程的視頻_雷霄驊的博客-CSDN博客_雷霄驊ffmpeg視頻教程小學期課程資料 - 基于FFmpegSDL的視頻播放器的制作.zip_免費高速下載|百度網盤-分享無限制輔助參考鏈接VS自動鏈接到Windows上隨vcpkg安裝的SDL2庫 | 碼農俱樂部 - G…

不關注公眾號可以獲取openid嗎_微信公眾號粉絲遷移

目錄 [toc] 微信公眾號遷移 正常的公眾號遷移直接通過微信操作就可以&#xff0c;如下圖。但是因為udb數據里面存的是遷移前公眾號的openid以及unionid,需要自行獲取新舊openid以及unionid。 舊的用戶信息要在遷移之前獲取&#xff0c;第三步點擊同意之后就公眾號的接口就調不通…

建筑專業規范大全 2020版_房屋建筑工程現行規范標準目錄匯編(2020版)—建筑電氣...

房屋建筑工程現行規范標準目錄匯編(2020版)建筑電氣規范編號規范名稱GB 50034-2013建筑照明設計標準GB 50052-2009供配電系統設計規范GB 50053-201320kV及以下變電所設計規范GB 50057-2010建筑物防雷設計規范GB 50147-2010電氣裝置安裝工程 高壓電器施工及驗收規范GB 50148-201…

基于Microsoft Visual Studio2019環境編寫ffmpeg視頻解碼代碼

舊代碼 舊代碼使用了很多過時的API&#xff0c;這些API使用后&#xff0c;vs會報編譯器警告 (級別 3) C4996的錯誤即 函數被聲明為已否決 報 C4996的錯誤 // test_ffmpeg.cpp : 此文件包含 "main" 函數。程序執行將在此處開始并結束。 // #define SDL_MAIN_HANDLED …

16進制轉double dotnet_終于把計算機進制弄明白了!

And theres one thing that I need from you我只需要你為我做一-件事Can you come through, through待在我的身邊就好Through, yeah你可以撫慰一切不滿And theres one thing that I need from you你可以過來Can you come through?待在我的身邊嗎-comethruJeremy Zucker進制進制…

FFmpeg源代碼簡單分析-架構圖-解碼

參考鏈接 FFmpeg源代碼結構圖 - 解碼_雷霄驊的博客-CSDN博客_ffmpeg雷霄驊函數背景色 函數在圖中以方框的形式表現出來。不同的背景色標志了該函數不同的作用&#xff1a; 粉紅色背景函數&#xff1a;FFmpeg的API函數。白色背景的函數&#xff1a;FFmpeg的內部函數。黃色背景…

JUnit單元測試筆記

#01 JUnit簡介 1.在項目工程中的Library,add 一個JUnit的Jar包&#xff0c;按需要添加JUnit 3 或 JUnit 4&#xff08;分為被測試類與測試類較佳&#xff09;。 2.單元測試是由程序員完成的。 3.Java 5 之前的版本只能 用JUnit 4前的版本&#xff08;因為JUnit 4用到Java 5的…

jqery獲取每個月天數_三年級《年、月、日》單元重要知識點整理匯總,以及難點題型解析...

昨天給大家分享了《計算經過的時間》問題&#xff0c;今天給大家分享的是《年、月、日》單元中重要的幾個知識點&#xff0c;以及難點題型解析。知識點1 感知年、月、日一、結合生活實際&#xff0c;看看下面事情需要經過多少時間。跑完100米大約需要經過十幾(秒)。2.打一場籃球…

FFmpeg源代碼簡單分析-架構圖-編碼

參考鏈接 FFmpeg源代碼結構圖 - 編碼_雷霄驊的博客-CSDN博客_ffmpeg 源碼函數背景色 函數在圖中以方框的形式表現出來。不同的背景色標志了該函數不同的作用&#xff1a; 粉紅色背景函數&#xff1a;FFmpeg的API函數。白色背景的函數&#xff1a;FFmpeg的內部函數。黃色背景的…

為革命,保護視力——為Eclipse更換暗黑皮膚及編輯頁面的字體顏色主題

1.在Eclipse中的菜單欄的Help -> Eclipse Market 的 Search欄中輸入 Eclipse Moonrise UI Theme &#xff0c;之后自己執生啦&#xff08;確保上網配置正確&#xff09;。 2.與上面操作類似&#xff0c;輸入 Eclipse Color Theme&#xff0c;選擇安裝。 3.選擇菜單欄的Win…

python函數可以作為容器對象嗎_正確理解Python函數是第一類對象

正確理解 Python函數&#xff0c;能夠幫助我們更好地理解 Python 裝飾器、匿名函數(lambda)、函數式編程等高階技術。函數(Function)作為程序語言中不可或缺的一部分&#xff0c;太稀松平常了。但函數作為第一類對象(First-Class Object)卻是 Python 函數的一大特性。那到底什么…

FFmpeg源代碼簡單分析-通用- av_register_all()

參考鏈接 ffmpeg 源代碼簡單分析 &#xff1a; av_register_all()_雷霄驊的博客-CSDN博客_av_register_all()從學齡前開始解讀FFMPEG代碼 之 avcodec_register_all函數_zzyincsdn的博客-CSDN博客

@suppressWarnings(unchecked)及其相關屬性在Java中意思

首先suppressWarnings("unchecked")是JDK1.5中新加入的Annotation語法&#xff0c;用來壓制警告信息的。 編寫代碼時&#xff0c;有時會提示一些警告&#xff08;例如&#xff1a;使用已經廢棄的類&#xff0c;沒有加入泛型等&#xff09;&#xff0c;如果不想讓程序…

FFmpeg源代碼簡單分析-通用-avcodec_register_all()

參考鏈接 ffmpeg 源代碼簡單分析 &#xff1a; avcodec_register_all()_雷霄驊的博客-CSDN博客

pythonsklearn乳腺癌數據集_Python的Sklearn庫中的數據集

一、Sklearn介紹scikit-learn是Python語言開發的機器學習庫&#xff0c;一般簡稱為sklearn&#xff0c;目前算是通用機器學習算法庫中實現得比較完善的庫了。其完善之處不僅在于實現的算法多&#xff0c;還包括大量詳盡的文檔和示例。其文檔寫得通俗易懂&#xff0c;完全可以當…

FFmpeg源代碼簡單分析-通用- 內存的分配和釋放(av_malloc()、av_free()等)

參考鏈接 FFmpeg源代碼簡單分析&#xff1a;內存的分配和釋放&#xff08;av_malloc()、av_free()等&#xff09;_雷霄驊的博客-CSDN博客_av_malloc 內容介紹 內存操作的常見函數位于libavutil\mem.c中本文記錄最常使用的幾個函數&#xff1a; av_malloc()av_realloc()av_mal…

面試題——死鎖的實現

public class DeadLock {public static Object Chopstick_1 new Object();public static Object Chopstick_2 new Object();public static void main(String[] args) {final DeadLock deadLock new DeadLock();// 第一個線程 new Thread(new Runnable() {public void run()…

python回歸分析實驗_python線性回歸實驗

實驗算法python線性回歸實驗【實驗名稱】Python線性回歸實驗【實驗要求】掌握Python線性回歸模型應用過程&#xff0c;根據模型要求進行數據預處理&#xff0c;建模&#xff0c;評價與應用&#xff1b;【背景描述】線性回歸是利用數理統計中回歸分析&#xff0c;來確定兩種或兩…

FFmpeg源代碼簡單分析-通用-結構體分析-AVFormatContext

參考鏈接 FFMPEG結構體分析&#xff1a;AVFormatContext_雷霄驊的博客-CSDN博客_avformatcontext AVFormatContext AVFormatContext是包含碼流參數較多的結構體結構體的定義位于libavformat/avformat.h/*** Format I/O context.//格式化 I/O 上下文* New fields can be added…