国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ffmpeg windows編譯及調(diào)試完整版

這篇具有很好參考價(jià)值的文章主要介紹了ffmpeg windows編譯及調(diào)試完整版。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

編譯

基礎(chǔ)環(huán)境準(zhǔn)備

依賴(lài)環(huán)境安裝

依賴(lài)庫(kù)安裝

X264

fdk-aac

X265

ffmpeg-4.3.6

調(diào)試

基礎(chǔ)項(xiàng)目環(huán)境搭建

VS2019項(xiàng)目創(chuàng)建

VS2019項(xiàng)目代碼

vs2019配置

VS2019調(diào)試


編譯

基礎(chǔ)環(huán)境準(zhǔn)備

1、安裝vs2019環(huán)境
2、安裝msys2工具
3、開(kāi)始菜單啟動(dòng)x86 Native Tools Command Prompt for VS2019
4、進(jìn)入msys2安裝目錄找到msys2_shell.cmd腳本,打開(kāi)修改?
?? ?rem set MSYS2_PATH_TYPE=inherit?刪掉rem,打開(kāi)環(huán)境變量的繼承
5、在第3步的終端里輸入msys2_shell.cmd -mingw32? 啟動(dòng)msys2的mingw32終端窗口
6、在窗口中敲cl正常執(zhí)行說(shuō)明VS2019的環(huán)境已經(jīng)繼承過(guò)來(lái)
如果是亂碼,則右擊終端窗口選擇
Options->Text->Locale選擇zh_CN
Options->Text->Character set->GBK

依賴(lài)環(huán)境安裝

pacman -S nasm
pacman -S yasm?? ?? ? ? ? ??#這兩個(gè)是匯編需要
pacman -S make cmake
pacman -S diffutils? ? ? ? ??#比較工具,ffmpeg?configure生成makefile時(shí)用到
pacman -S pkg-config? ? #找依賴(lài)使用
pacman -S git
無(wú)法翻墻則替換msys2數(shù)據(jù)源(類(lèi)似linux數(shù)據(jù)源):
ffmpeg windows編譯及調(diào)試完整版

依賴(lài)庫(kù)安裝

X264
使用上述方法進(jìn)入msys2終端
git下載源碼?? ??? ??? ?
CC=cl ./configure --enable-shared?--prefix=/usr/local? ?#指定編譯器和編成動(dòng)態(tài)鏈接庫(kù)
make -j8 && make install
fdk-aac

?(21條消息) Windows平臺(tái)下libfdk-aac庫(kù)的編譯方法_libfdk_aac_Jncryang的博客-CSDN博客文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-502039.html

git下載源碼到msys2家目錄,和x264放一起
version 2.0.1
進(jìn)入 x86 Native Tools Command Prompt for VS2019終端
nmake -f Makefile.vc
nmake -f Makefile.vc prefix=./install install
version 2.0.2
進(jìn)入 x86 Native Tools Command Prompt for VS2019終端
無(wú) Makefile.vc文件,執(zhí)行cmake .生成vs?sln項(xiàng)目文件,用vs打開(kāi)編譯
或者
使用msys2終端
pacman -S?autoconf?automake libtool
./autogen.sh
CC=cl ./configure --enable-shared --prefix=/usr/local ? ? #指定編譯器和編成動(dòng)態(tài)鏈接庫(kù)
make -j8 && make install
X265
git clone multicoreware / x265_git / wiki / Home — Bitbucket
/home/admin/x265_git/build/msys-cl
mv /usr/bin/cmake.exe /usr/bin/ccmake.exe? #不能使用msys2中的cmake要使用msvc中的cmake,默認(rèn)可能是/usr/bin/cmake,改個(gè)名就默認(rèn)編程vs2019的cmake了
./make-Makefiles.sh
nmake install? #可能會(huì)出錯(cuò)因?yàn)榭截愖罱K文件沒(méi)有c盤(pán)的權(quán)限 D:\msys64\home\admin\x265_git\build\msys-cl\ cmake_install.cmake中的路徑C盤(pán)
改成D盤(pán)就好了
拷貝D盤(pán)的編譯生成的數(shù)據(jù)全部拷貝放到msys2中的? /usr/local

ffmpeg-4.3.6

?CC=cl.exe ./configure --prefix=./install --toolchain=msvc --enable-shared --disable-programs --disable-ffplay --disable-ffmpeg --disable-ffprobe --enable-libx264 --enable-gpl --enable-libfdk-aac --enable-nonfree --enable-libx265
ERROR: libfdk_aac not found
ffbuild/config.log查看錯(cuò)誤日志(亂碼的話(huà)使用vscode 的gbk2312編碼方式)
pkg-config --cflags --libs fdk-aac發(fā)現(xiàn)找不到fdk-aac.pc
$ echo $PKG_CONFIG_PATH
/mingw32/lib/pkgconfig:/mingw32/share/pkgconfig
把/usr/local/lib/pkgconfig文件夾移動(dòng)到 /mingw32/lib/即可,或者改 PKG_CONFIG_PATH環(huán)境變量添加/usr/local/lib路徑
$ pkg-config.exe --cflags --libs fdk-aac
-I/usr/local/include -L/usr/local/lib -lfdk-aac
ERROR: libx264 not found?? 鏈接錯(cuò)誤沒(méi)找到libx264
libx264.lib.dll? ?改成??libx264.lib
ERROR: x265 not found using pkg-configx
libx265.lib? 改成??x265.lib
x265.pc中的路徑記得改成 prefix=/usr/local?之前默認(rèn)是C盤(pán)的(詳見(jiàn)X265?安裝說(shuō)明)
make -j8 && make install

調(diào)試

基礎(chǔ)項(xiàng)目環(huán)境搭建

創(chuàng)建以下目錄
ffmpeg windows編譯及調(diào)試完整版
bin/x86? ? ? 所有可執(zhí)行文件和dll文件??D:\msys64\home\admin\ffmpeg-4.3.6\install\bin中所有dll文件
include? ? ? 所有頭文件? ? ? ? ? ? ? ? ? ? ? ? D:\msys64\home\admin\ffmpeg-4.3.6\install\include
lib? ? ? ? ? ? ? 所有l(wèi)ib文件?? ??? ??? ?? ? ? ? ???D:\msys64\home\admin\ffmpeg-4.3.6\install\bin中所有l(wèi)ib文件
src? ? ? ? ? ? ?項(xiàng)目文件
tools? ? ? ? ? 源碼
doc? ? ? ? ? ? 文檔
上一章編譯windows ffmpeg文檔中的?最終輸出目錄
D:\msys64\home\admin\ffmpeg-4.3.6\install
lib和dll詳見(jiàn)博客
(22條消息) C/C++庫(kù)文件全了解(包含靜態(tài)庫(kù)、動(dòng)態(tài)庫(kù),包含windows、linux,包含dll、lib、so)_GT19930910的博客-CSDN博客

VS2019項(xiàng)目創(chuàng)建

vs2019創(chuàng)建新項(xiàng)目,空項(xiàng)目
位置指定上面的src,鉤子勾上

VS2019項(xiàng)目代碼

添加main.cpp
添加代碼
#include <iostream>
using namespace std;
extern "C"http://指定函數(shù)是c語(yǔ)言函數(shù),函數(shù)名不包含重載標(biāo)注
{
???????//引用ffmpeg頭文件
#include <libavcodec/avcodec.h>
}
//預(yù)處理指令導(dǎo)入庫(kù)
#pragma comment(lib, "avcodec.lib")
int main(int argc, char* argv[])
{
???????cout << "first ffmpeg" << endl;
???????cout << avcodec_configuration() << endl;
???????return 0;
}

vs2019配置

屬性-》c/c++-》常規(guī)-》附加包含目錄-》添加頭文件目錄? ..\..\include
屬性-》鏈接器-》常規(guī)-》附加庫(kù)目錄-》添加編譯lib文件目錄? ..\..\lib
屬性-》鏈接器-》輸入-》附加依賴(lài)項(xiàng)-》添加編譯需要的依賴(lài)lib? ? #此條與代碼中的#include <libavcodec/avcodec.h>選一項(xiàng)配置即可
屬性-》常規(guī)-》輸出目錄-》..\..\bin\x86?指定可執(zhí)行文件目錄,此目錄之前已經(jīng)放置好所有的dll運(yùn)行依賴(lài)庫(kù)

VS2019調(diào)試

調(diào)試avcodec_configuration()函數(shù),f11能進(jìn)入源碼,因?yàn)橛心J(rèn)的編譯環(huán)境
會(huì)進(jìn)入D:\msys64\home\admin\ffmpeg-4.3.6\源碼中
若是別的環(huán)境,沒(méi)有此編譯環(huán)境,需要把源碼拷貝到tools中
解決方案-》屬性-》調(diào)試源文件
添加D:\ffmpeg-lesson\tools\ffmpeg-4.3.6源碼目錄
D:\msys64\home\admin\ffmpeg-4.3.6\中搜索*.pdb全部拷貝到D:\ffmpeg-lesson\bin\x86中
全部重新構(gòu)建再次調(diào)試即可進(jìn)入D:\ffmpeg-lesson\tools\ffmpeg-4.3.6的源碼中

到了這里,關(guān)于ffmpeg windows編譯及調(diào)試完整版的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Windows下FFmpeg庫(kù)編譯安裝指南

    Windows下FFmpeg庫(kù)編譯安裝指南

    ? ? ? ? 之前在學(xué)習(xí)FFmpeg時(shí),都是網(wǎng)上零零散散的知識(shí)點(diǎn)拼湊起來(lái),沒(méi)有經(jīng)過(guò)系統(tǒng)地學(xué)習(xí),最近時(shí)間比較多,于是決定開(kāi)始深入學(xué)習(xí)FFmpeg,從自己動(dòng)手編譯源碼開(kāi)始。 本文記錄了在自己編譯過(guò)程中踩的坑,以及完整的編譯安裝流程, 建議先看踩過(guò)的坑里面最后一條 目錄 環(huán)境

    2024年02月13日
    瀏覽(54)
  • Windows配置編譯ffmpeg +音視頻地址

    Windows配置MinGW及MinGW-make使用實(shí)例 https://blog.csdn.net/Henoiiy/article/details/122550618 ffmpeg安裝遇錯(cuò):nasm/yasm not found or too old. Use --disable-x86asm for a crippled build. https://blog.csdn.net/sayyy/article/details/124337834https://blog.csdn.net/sayyy/article/details/124337834 詳細(xì)的FFmpeg編譯流程與腳本分析https://zhuanla

    2024年02月12日
    瀏覽(21)
  • 音視頻開(kāi)發(fā)三:Windows環(huán)境下FFmpeg編譯安裝

    音視頻開(kāi)發(fā)三:Windows環(huán)境下FFmpeg編譯安裝

    FFmpeg是一套可以用來(lái)記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的 開(kāi)源計(jì)算機(jī)程序 。采用LGPL或GPL許可證 。它提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案。它包含了非常先進(jìn)的音頻/視頻編解碼庫(kù)libavcodec。 FFmpeg在Linux平臺(tái)下開(kāi)發(fā),但它同樣也可以在其它操作系統(tǒng)環(huán)

    2024年02月04日
    瀏覽(39)
  • windows下msys2編譯64位的ffmpeg源碼

    windows下msys2編譯64位的ffmpeg源碼

    目前遇到過(guò)兩次需求,需要編譯ffmpeg源碼。網(wǎng)上下載的編譯好的源碼里面可能不全,很多時(shí)候需要自行編譯源碼。本文介紹自行編譯ffmpeg64位源碼(32位通過(guò)相似的方式為編譯成功,不知道原因) 環(huán)境: 2023.5.4下載的最新版msys2 ffmpeg 4.3.2源碼 windows操作系統(tǒng) 首先需要msys2軟件和

    2024年02月03日
    瀏覽(20)
  • 如何在Windows使用 ffmpeg 轉(zhuǎn)換整個(gè)目錄?以MP4轉(zhuǎn)MP3為例

    對(duì)于 Windows上鍵入命令如下: 在這里,我將所有 (.mp4) 文件轉(zhuǎn)換為 (.mp3) 文件。 只需打開(kāi) cmd,轉(zhuǎn)到所需的文件夾并鍵入命令。 快捷方式:(可選) 轉(zhuǎn)到 (.mp4) 文件所在的文件夾 按 Shift 并左鍵單擊并選擇“在此處打開(kāi) PowerShell 窗口” 或“在此處打開(kāi)命令提示符窗口” 鍵入“

    2023年04月08日
    瀏覽(25)
  • Clion配置C++程序用Android NDK編譯,并用真機(jī)遠(yuǎn)程調(diào)試(臨時(shí)目錄和termux)

    Clion配置C++程序用Android NDK編譯,并用真機(jī)遠(yuǎn)程調(diào)試(臨時(shí)目錄和termux)

    :ndk, clion, cmake, usb, tcp, ssh, remote debug, remote gdb debug, termux, tabby 假設(shè)已經(jīng)有了一個(gè)在windows下能正常編譯運(yùn)行的C++控制臺(tái)程序,本文僅說(shuō)明如何在windows下交叉編譯到android并調(diào)試。C++庫(kù)類(lèi)似。 要點(diǎn)提示: 對(duì)于unity用戶(hù),建議用unity 2022自帶的 ndk r23 。理論上可以用新版,但

    2024年02月21日
    瀏覽(72)
  • ffmpeg windows環(huán)境MinGW+msys2編譯so庫(kù)

    ffmpeg windows環(huán)境MinGW+msys2編譯so庫(kù)

    一定要把windows路徑的\\\"“換成”/\\\" –prefix 配置安裝路徑參數(shù) 配置交叉編譯參數(shù) 配置不需要生成相關(guān)工具 使用\\\"\\\"+enter可以換行輸入多行參數(shù)

    2024年02月11日
    瀏覽(71)
  • 2023最新Windows編譯ffmpeg詳細(xì)教程,附msys2詳細(xì)安裝配置教程

    2023最新Windows編譯ffmpeg詳細(xì)教程,附msys2詳細(xì)安裝配置教程

    msys2是一款跨平臺(tái)編譯套件,它模擬linux編譯環(huán)境,支持整合mingw32和mingw64,能很方便的在windows上對(duì)一些開(kāi)源的linux工程進(jìn)行編譯運(yùn)行。 類(lèi)似的跨平臺(tái)編譯套件有: msys , cygwin , mingw 優(yōu)勢(shì): 相對(duì)于 cygwin 和 msys 等環(huán)境,它支持 pacman 包管理器,這意味著你可以很方便的安裝所

    2024年02月13日
    瀏覽(23)
  • Windows NT 驅(qū)動(dòng)程序的編譯、安裝、調(diào)試

    Windows NT 驅(qū)動(dòng)程序的編譯、安裝、調(diào)試

    Windows 驅(qū)動(dòng)分為兩類(lèi),一類(lèi)是從 Windows NT 遺留下來(lái)的驅(qū)動(dòng)模型稱(chēng)為傳統(tǒng)的 Windows NT 驅(qū)動(dòng)程序模型,另一類(lèi)是 Windows 添加了電源管理后的 KMDF (WDM)驅(qū)動(dòng)程序。本文這里首先以最簡(jiǎn)單的 Windows NT 驅(qū)動(dòng)模型為例介紹 Windows 驅(qū)動(dòng)的簡(jiǎn)單編寫(xiě)、編譯、安裝及調(diào)試。 如果有學(xué)習(xí)過(guò) Linux

    2024年02月16日
    瀏覽(20)
  • 【Unity】 基礎(chǔ)入門(mén) 編譯錯(cuò)誤排查與調(diào)試方法

    【Unity】 基礎(chǔ)入門(mén) 編譯錯(cuò)誤排查與調(diào)試方法

    1、Win11系統(tǒng)不兼容部分unity版本 考慮換系統(tǒng)吧! 2、可能是系統(tǒng)權(quán)限問(wèn)題,訪(fǎng)問(wèn)不到部分路徑 一般是系統(tǒng)盤(pán)的文件因?yàn)橛脩?hù)賬戶(hù)授權(quán)的問(wèn)題,一些文件只有讀取沒(méi)有寫(xiě)入權(quán)限。 3、依賴(lài)配置問(wèn)題 系統(tǒng)環(huán)境配置問(wèn)題

    2024年02月11日
    瀏覽(19)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包