vs編譯ffmpeg
㈠ 如何編譯wince平台能使用的ffmpeg庫
如何編譯wince平台能使用的ffmpeg庫
在configure ffmpeg工程時,如果不特別指定,默認fdshow設備是被支持的,但編譯後卻沒有.可以查看configure的日誌文件,會發現找不到一些依賴的頭文件.
所以最終編譯出來的ffmpeg.exe, 用ffmpeg -formats來看,在indev一項中,一般只有vfwcap,而沒有dsh
㈡ vs2013 怎麼編譯 ffmpeg
. 下載FFMPEG源碼,下載地址:http://ffmpeg.zeranoe.com/builds/;
2. 下載MinGW安裝器,嫌毀皮下載地址:http://www.mingw.org/;下載完成芹差後安裝,安裝完成後點運行,標記上以下幾項:
然後在Installation菜單下點擊Apply Changes(mingw32-gcc-g++不用選擇);
3. 下載yasm,下載地址: http://yasm.tortall.NET/ ;下載後改名為yasm.exe,復制到C:/MinGW/msys/1.0/bin目錄下;
4. 配置C:/MinGW/msys/1.0/msys.bat,在此文件的最前面(@echo off之後)添加一行如下內容:
call "D:\Program Files(x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat" (依實際安裝路徑修改路徑);
5.重命名 C:/MinGW/msys/1.0/bin/link.exe 為link_renamed.exe (依實際安裝選擇路徑),這一步是防止這個link.exe與vc的link.exe發生沖突,編譯完成後可修改回余睜來;
6. 配置編譯,雙擊msys.bat,轉到FFMPEG源代碼根目錄下,可運行 ./configure --help查看編譯配置選項,我使用的選項為:
靜態庫:./configure --enable-static --prefix=./vs2013_build --enable-debug --toolchain=msvc
動態庫:./configure --enable-shared --prefix=./vs2013_build --enable-debug --toolchain=msv
㈢ 如何用vs08編譯ffmpeg / 藍訊
放到MSYS環境里配置,生成config.h文件。mingw gcc是能順利編譯通過整個項目的,並生成最新版的ffmpeg。
建立vc6工程,把相關代碼都加入到工程中。由於在vc生成的obj都在一個目錄下,所以需要修改文件名,讓其不重名。
安裝intel compiler 11編譯器,單獨提取其icl.exe及相關include目錄,替換掉vc6自帶的cl.exe, 在工程設置里加上/Qstd=c99,用於支持C99語法。
安裝intel compiler 10編譯器,單獨提取lib目錄,因為此版本調試庫的結構能完美支持vc6的調試信息。
在vc6的options里設置include/exe/lib查找目錄,指向intel編譯器。
開始修改代碼,添加C99的相關linux頭文件, 用於支持vc6, (unistd.h, stdint.h, inttypes.h, getopt.h)
添加C99和linux的相關實現代碼,ffmpeg需要用到: getopt_long, strtoll, gettimeofday, atoll, usleep等
修改windows的相關兼容代碼,GetWindowLongPtr -> GetWindowLong, GWLP_USERDATA
去除硬體加速libavcodec代碼,和依賴庫代碼。選擇所需要的模塊,修改相關的allcodec.c, alldevices.c, allfilters.c, allformats.c
加上鏈接庫,sdl.lib, winmm.lib, dxguid.lib, wsock32.lib
在os_support.c里,把<winsock2.h>移動到文件最前面。
如果是ffmpeg, 已經能順利編譯了。如果是ffplay,還需要編譯靜態sdl, 並鏈接。
㈣ 如何將ffmpeg在windows編譯和使用
如下:
1. 配置編譯環境
2. 下載FFMPEG的代碼
3. 編譯,獲取FFMPEG庫(頭文件,lib,和DLL)
4. 在VC下配置,測試
1. 配置編譯環境
1)安裝MSys
下載文件:
bash-3.1-MSYS-1.0.11-snapshot.tar.bz2
msysCORE-1.0.11-20080826.tar.gz
解壓msysCORE-1.0.11-20080826.tar.gz,比如解壓到X:\msys(以下內容都使用該路徑描述,X為你安裝的盤符)。
解壓bash-3.1-MSYS-1.0.11-snapshot.tar.bz2,產生一個名為bash-3.1的目錄,在該目錄下有一個子目錄名為bin,其他的目錄不需要關心。復制bin目錄中的所有文件到D:\msys\bin,提示是否要覆蓋sh.exe的時候,選擇是。
到「D:\msys\postinstall」目錄下執行pi.bat,在出現的提示中輸入n回車後(這個不搞錯了),按任意鍵退出即可。
2)安裝MinGW
下載文件:
binutils-2.20-1-mingw32-bin.tar.gz
(binutils-2.19.1-mingw32-bin.tar.gz)
gcc-core-3.4.5-20060117-3.tar.gz
gcc-g++-3.4.5-20060117-3.tar.gz
w32api-3.13-mingw32-dev.tar.gz
mingwrt-3.16-mingw32-dev.tar.gz
(mingwrt-3.15.2-mingw32-dev.tar.gz)
mingwrt-3.16-mingw32-dll.tar.gz
(mingwrt-3.15.2-mingw32-dll.tar.gz)
把它們全部解壓到X:\msys\mingw。
3)修改「msys.bat」
用文本編輯器打開D:\msys\msys.bat,由於打算用MSVC++編譯程序,所以需要有.lib文件才能鏈接到FFmpeg的庫,這些.lib文件可以使用微軟的工具鏈中lib命令產生。為此,機器上必須已經安裝了微軟的Visual Studio或是Visual C++。把下面一行加到msys.bat的最前面,把路徑替換成機器上vcvars32.bat實際存在的路徑,比如我的在「D:\program files\Microsoft Visual Studio 8\VC\bin」,於是就添加:
call "D:\program files\Microsoft Visual Studio 8\VC\bin"
4)系統整合
復制D:\msys\etc\fstab.sample為X:\msys\etc\fstab,用文本編輯器打開D:\msys\etc\fstab編輯。(需要使用一個支持Unix換行風格的編輯器,比如Notepad++),把下面這行:
D:/mingw /mingw
改為:
D:/msys/mingw /mingw
注意:改的這個目錄為mingw你所安裝的目錄,所以按本文來講是這個目錄。如果你安裝不目錄不同,就要改成你所安裝的目錄。
完成以上步驟,MSys+MinGW系統就配置完成了。
2. 下載FFMPEG的代碼
下載代碼的辦法由兩個,一個就是用svn 下載下來。我覺得哪怕你知道svn是啥,也不用這個方法,因為太慢了。一個文件一個文件下,最關鍵SVN對應的地址是國外,都不知道什麼才能全部下完。另外一個直接下一個代碼的壓縮包。
㈤ 如何用vs08編譯ffmpeg
可以到派梁官方位置去下載
Shared —> DLL檔案需要給執行檔用的
Dev —> include/lib 你在編譯的時候需要用到
把 include / lib 加入相關的VC設定
需要sample code(范常式式 找找 doc/example/avcodec.c)
如果你改成cpp以下需要注意:
前面需要加上,避免頃旁C/C++的沖突.
轉載,僅塵乎運供參考。
㈥ ffmpeg在win8下面要怎麼編譯,需要安裝什麼
我現在下型談的ffmpeg是github最新版的 使賣物用mingw-get-setup.exe默認的配置的mingw和msys vc是vs2010版的 就這卜配碰些。
㈦ FFmpeg 編譯參數簡單整理
以下參數使用--enable-foo啟用或使用--disable-foo禁用時使用--e/d-代替。
其他的可更改優化方案:AltiVec、3DNow! 、MMX、MMX2、SSE、SSE3、armv5te、armv6、armv6t2、ARM VFP、iwmmxt、MMI、neon、VIS
使用--enable-foo啟用或使用--disable-foo禁用需要的功能插件,使用--e/d-代替。某些部件(如decoder)enable時需要明確指明,例:--enable-decoder=libdavs2。
註:打開與啟用非等同
其他默認開啟但可以關閉的部分:ffmpeg、ffprobe、ffplay、ffserver、avdevice、avcodec、avcore、avformat、swscale、特定部件(如某個編解碼器等)
可選擇禁用的編碼:AAN DCT、DCT、Golomb、FFT、Golomb、LPC、MDCT、RDFT、VAAPI、VDPAU、DXVA2
㈧ 如何在windows中編譯ffmpeg 2.6.1以及 NVENC硬編碼的嘗試
4)然後在mingw的控制台中進入ffmpeg源碼目錄,並執行梁御孝命橡稿令:./configure --enable-memalign-hack 生成編譯時所需的Makefile文件。然後執行 make 命令,就可以生成相應的exe文件,如ffmpeg.exe、 ffplay_g.exe、拆州ffmpeg_g.exe 等。
㈨ 記一次FFmpeg的編譯過程的坑
參考文章: iOS開發 - 超詳細集成 FFmpeg 步驟
iOS集成FFmpeg及視頻格式轉碼
以下是在編譯過程孫拍余遇到的問題:
1.編譯出現以下錯誤信息.
xcrun -sdk iphoneos clang is unable to create an executable file.
C compiler test failed.
Ifyou think configure made a mistake, make sure you are using the latestversion from Git.Ifthe latest version fails, report the problem to [email protected] mailinglistorIRC#ffmpeg on irc.freenode.net.Includethe log file"config.log"proced by configureasthis will helpsolve the problem.
問賀橡題鏈接: https://github.com/kewlbear/FFmpeg-iOS-build-script/issues/119
這時只需執行以下命令即可:
sudo xcode-select --switch /Applications/Xcode.app
2.'libavcodec/avcodec.h' file not found 說是找不到
因該是 headerSearchPath 裡面的路徑添加的不對.
一種寫法:
$(SRCROOT)/FFmpeg_iOS/FFmpeg/include
這個寫法 我這邊 不得行.
第二中寫法:
$(SRCROOT)/$(PRODUCT_NAME)/FFmpeg-iOS/include
我的項目里則滾面這個可以使用