學習筆記|(二)FFMPEG準備

安裝方法1(慕課網)

在window上安裝ffmpeg最好的方式是安裝Cygwin,相當於是在windows上安裝一個虛擬機。
參考資料:
https://www.imooc.com/article/247113
http://www.cnblogs.com/feipeng8848/p/8555648.html
https://blog.csdn.net/Wu_qz/article/details/80807517

  • windos上安裝ffmpeg:

    • Cygwin官網下載 Cygwin 的可執行程序 setup-x86_64.exe。當然,它是 64位的,如果你現在還在用 32位的,那請在 Cygwin官網上找 32位對應的版本。
    • 安裝Cygwin
  • 安裝完Cynwin後,如果再要下載別的東西可能會比較麻煩,可以用apt-cyg解決:

①在Cygwin下執行下面的命令:
wget -c https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg
②執行:
install apt-cyg /bin

測試cygwin是否安裝成功:
運行cygwin,在彈出的命令行窗口輸入:cygcheck -c cygwin命令,會打印出當前cygwin的版本和運行狀態,如果status是ok的話,則cygwin運行正常。然後依次輸入gcc –version,g++ --version,make –version,gdb –version進行測試,如果都打印出版本信息和一些描述信息,非常高興的告訴你,你的cygwin安裝完成了

要裝某個包就可以用 apt-cyg instal xxx這樣來安裝了。

  • 編譯 yasm
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar zxvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make && sudo make install

問題:-bash: make: 未找到命令
解決:不用重新安裝cynwin。
①在http://ftp.gnu.org/gnu/make/網站上下載最新的make壓縮包,xxx.tar.gz;
②解壓後用cygwin命令進入根目錄(cd 目錄)後執行如下命令:
./configure
./build.sh
當前目錄生成make.exe文件
放入cygwin安裝目錄的bin文件夾下

問題:-bash: sudo: 未找到命令:
不用sudo了

  • 編譯 fdk-aac
wget https://jaist.dl.sourceforge.net/project/opencore-amr/fdk-aac/fdk-aac-0.1.6.tar.gz
tar xvf fdk-aac-0.1.6.tar.gz
cd fdk-aac-0.1.6
./configure
make && sudo make install
  • 安裝lame
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
tar -xzf lame-3.99.5.tar.gz
cd lame-3.99.5
./configure
make && sudo make install

問題1:
在Cygwin下安裝 lame的時候遇到執行 ./configure 失敗的情況。如 "error: cannot guess build type; you must sepcify one",對這個問題可以通過下面的步驟來解決:
1.安裝automake。可以通過 which automake來確認automake 是否已經安裝。如果沒有安裝,可以通使用 apt-cyg install automake進行安裝。
2.確認automake當前版本。可執行automake --version獲取當前automake的版本號。
3.將 lame目錄下的 config.guess文件替換爲 /usr/share/automake-version下的config.guess 文件。
4.此時,再執行./configure進就可以下成功了。



問題二:
make時出現 "error: '_O_BINARY' undeclared (first use in this function)"的錯誤,解決辦法如下:
1.打開出錯文件 vi ./frontend/lametime.c (C:\Users\Administrator\lame-3.99.5\frontend\lametime.c)
將下面這段代碼註釋掉
/*#elif defined __CYGWIN
setmod(fileno(fp), _O_BINARY);
*/
再執行make就可以成功了。

  • 安裝nasm
wget https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/nasm-2.13.03.tar.gz
tar xvf nasm-2.13.03.tar.gz
cd nasm-2.13.03
./configure
make && sudo make install
  • 安裝x264
wget http://mirror.yandex.ru/mirrors/ftp.videolan.org/x264/snapshots/last_x264.tar.bz2
bunzip2 last_x264.tar.bz2
tar -vxf last_x264.tar
cd last_x264
./configure --enable-static --enable-shared --disable-asm --disable-avs
make && sudo make install
  • 安裝ffmpeg
    從ffmpeg官網下載代碼編譯, 編譯方法如下:
wget -c https://ffmpeg.org/releases/ffmpeg-4.0.2.tar.bz2
bunzip2 ffmpeg-4.0.2.tar.bz2
tar -vxf ffmpeg-4.0.2.tar
cd ffmpeg-4.0.2
./configure --prefix=/usr/local/ffmpeg --enable-gpl --enable-small --arch=x86_64 --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-filter=delogo --enable-debug --disable-optimizations --enable-shared
make && make install

問題1:安裝ffmpeg的時候會出錯:找不到 fdk-aac庫
解決方案:https://ffmpeg.zeranoe.com/builds/ 從這個地址下載windows版的ffmpeg,下載解壓後,執行./configure,然後再執行make && make install
問題2:windows啓動ffmpeg時提示計算機中丟失cygwin1.dll:
1、如果您的系統提示"找不到cygwin1.dll"或"cygwin1.dll缺失" 或者"cygwin1.dll錯誤"等等,請不用擔心,請把cygwin1.dll下載到本機。
2、直接拷貝該文件到系統目錄裏:
   ①、Windows 95/98/Me系統,將cygwin1.dll複製到C:WindowsSystem目錄下。
   ②、Windows NT/2000系統,將cygwin1.dll複製到C:WINNTSystem32目錄下。
   ③、Windows XP/WIN7系統,將cygwin1.dll複製到C:WindowsSystem32目錄下。
3、開始-運行-輸入regsvr32 cygwin1.dll 回車即可解決錯誤提示
問題3:解決了問題2之後,可能還是打不開ffmpeg。

說明:
make 是編譯,這一步不需要 sudo ,僅僅make就可以了
make install 這個是將編譯後的文件安裝到系統,需要root權限所以需要使用 sudo 來完成。

安裝方法2(推薦使用):

參考資料:
https://blog.csdn.net/Chanssl/article/details/83050959

測試是否安裝成功:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章