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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

在windows下编译FFMPEG-最新2009版本

發布時間:2023/12/18 windows 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在windows下编译FFMPEG-最新2009版本 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉】在windows下編譯FFMPEG-最新2009版本 2010-11-17 18:50 大家可以看到,此篇之前有很多個版本的“在windows下編譯FFMPEG”,那些都是我在網上搜羅來的,在看了無數篇那些過期的、有借鑒價值的文章后,我終于成功在windows下編譯出了FFMPEG。

?????? 不得不說,前人的經驗還是很重要的,但是隨著時間的推移,很多東西都改變了,所以,現在把最新的編譯方法記下,以便后人借鑒。

?

1.首先還是要先安裝MSYS(注意,要先安裝MSYS,后安裝MINGW)

http://sourceforge.net/projects/mingw/files/這里下載一個最新版的exe文件就可以了,以前的可能要自己去下載一些亂七八糟的不知道是什么的,現在只需要到 MSYS base System 文件夾下下載一個最新的exe安裝文件,這個是minimum的安裝文件。

我下載的是MSYS-1.0.11.exe,我安裝在D盤。

?

2.安裝MINGW

(這里普及一下常識,其實MINGW里面包含有GCC的編譯器,但是我只安裝了MSYS,沒有安裝MINGW的時候,編譯的時候就會提示出錯,因為沒有GCC編譯器,所以,必須安裝MINGW就是這個原因)

網址與步驟1的一樣,然后到Automated MinGW Installer這個文件夾下面,下載最新的MINGW安裝文件,這個也是最小安裝文件。

PS:我不得不感嘆,隨著科技的發展,真是越來越好了,以前要自己一個一個下,現在是人家都全部打包好,讓你直接安裝就OK了。

注意:安裝MINGW的時候,要將其安裝在MSYS的MINGW目錄下。例如:當時我的安裝目錄是D:/msys,然后,進去的話,可以發現,里面有一個MINGW文件夾,但是里面是空的。在安裝MINGW的時候,將其指向該目錄就可以了,我的是D:/msys/1.0/mingw。

?

3. 整合MSYS和MINGW(此步驟借鑒前人,但稍有修改)

(1)修改 msys.bat:
?用文本編輯器打開D:/msys/1.0/msys.bat,由于打算要用MSVC++鏈接到FFmpeg的庫,
?所以需要有.lib文件才行,這些.lib文件可以使用微軟的工具中的lib命令產生,
?所以要預先安裝VC++。
?把下面一行加到msys.bat的最前面,把路徑替換成機器上vcvars32.bat實際存在的路徑,
?比如我的在“D:/Program Files/Microsoft Visual Studio 8/VC/bin”,
?于是就添加:

call "D:/Program Files/Microsoft Visual Studio 8/VC/bin/vcvars32.bat" (2)系統整合: 將D:/msys/1.0/etc/文件夾下的fstab.sample文件改名,改成fstab,然后,用文本編輯器打開fstab. 把這行:C:/mingw /mingw?改為:d:/msys/1.0/mingw /mingw32 在這個步驟中,大家要注意,并不是每個人的都是d:/msys/1.0/mingw /mingw32,也有可能是d:/msys/1.0/mingw /mingw,這個與版本有關,大家注意看自己的就OK了。 完成以上步驟,MSys+MinGW系統就配置完成了。 4.編譯(以下均摘自本博客中的版本三,不得不說版本三真的是挺好的了,編譯這個不僅有純FFMPEG的編譯,還有libavcodec的dll動態鏈接庫和libavcodec的lib靜態庫的編譯,太牛了~!!!) 首先通過MSys安裝目錄下的msys.bat啟動MSys,這時會出現一個命令行窗口,
它是一個運行著 bash 的rxvt程序。
這是一個在Windows上運行并且就像是在使用一個真正的Linux shell。
不過使用這個shell時需要注意:
1. 目錄名使用左斜杠來分割,而非Windows所使用的右斜杠;
(比如"D:/ffmpeg"而非D:/ffmpeg")。
2. 盤符(例如"C:/")可以從根目錄處訪問(像這樣"/C/"); 3. 文件名或目錄名中如果帶有空格,必須用雙引號括起(例如"/C/Program Files")。
  下面切換到存放FFmpeg源代碼的目錄,方法是輸入:cd /D/ffmpeg
  接下來要配置FFmpeg,這里先輸入:./configure --enable-memalign-hack
  --enable-memalign-hack選項是FFmpeg在Windows上編譯成功所必須指定的,
  待配置完成后,將回到命令提示符。
  如果沒有錯誤的話,就可以"make"具有基本功能的FFmpeg了,在提示符后輸入:make
  編譯的過程將持續很長時間。如果一切正常,結束后將返回提示符。
  這時程序已經編譯好了,在存放FFmpeg源代碼的目錄下可以找到ffmpeg.exe這個文件。
  如果希望把FFmpeg安裝到系統中,可以執行安裝步驟:"make install",
  這將會復制所有生成的重要文件到MSys的local文件夾下。
如果希望使用FFmpeg包含的libavcodec庫開發多媒體文件處理程序,還需要編譯libavcodec的dll動態鏈接庫,編譯過程和上述過程稍有差別,如下所述:
 首先切換到FFmpeg的源代碼目錄,
 在開始編譯前先使用"make distclean"清理上一次留下的中間文件(慎用!!之前的作者是說要用這個,我用完之后,電腦就崩潰了,重啟才OK,所以,大家慎用啊~!)
 然后向configure腳本多傳遞兩個參數:
 ./configure --enable-shared --disable-static --enable-memalign-hack
 如果沒有錯誤的話,在提示符后輸入:make
libavcodec的lib靜態庫,編譯過程和上述過程稍有差別,如下所述:
./configure --enable-static?--disable-shared?--enable-memalign-hack
如果沒有錯誤的話,在提示符后輸入:make
     
在FFmpeg目錄下有三個子目錄名字分別為:libavutil、libavcodec和libavformat;
如果在前述步驟中成功生成了動/靜態鏈接庫,例如我生成的是avcodec-51.lib、
avformat-51.lib 和 avutil-49.lib,MSVC++可以從這些文件中知道dll的導出函數。

總結

以上是生活随笔為你收集整理的在windows下编译FFMPEG-最新2009版本的全部內容,希望文章能夠幫你解決所遇到的問題。

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