Windows系統使用minGW+msys 編譯ffmpeg 0.5的全過程詳述

一.環境配置
1.下載并安裝 MinGW-5.1.4.exe (http://jaist.dl.sourceforge.net/sourcef … -5.1.4.exe),安裝時選中 g++, mingw make。建議安裝到c:/mingw.
2.下載并安裝 MSYS-1.0.11-rc-1.exe (http://jaist.dl.sourceforge.net/sourcef … 1-rc-1.exe),安裝結束時會以命令行方式提示輸入MinGW的安裝路徑,輸入c:/MinGW, msys建議安裝到c:/msys, 默認是c:/msys-1.0, 可以手動改為c:/msys。
3.下載gcc-4.3.2-tdm-1-core.zip (http://ftp3.ie.freebsd.org/pub/sourcefo … 1-core.zip),解壓后覆蓋到 c:/mingw 安裝目錄. minGW-5.1.4 默認安裝的版本是3.4.5.

二.下載 ffmpeg 0.5 (http://ffmpeg.mplayerhq.hu/releases/ffmpeg-0.5.tar.bz2)
1.解壓后拷貝到c:/msys/home/目錄下。 (C:/msys/home/ffmpeg-0.5)
2.用文本編輯器打開源碼目錄下的 configure (C:/msys/home/ffmpeg-0.5/configure) 文件,搜索兩處 pr 全部替換為 print。
3.運行c:/msys.bat,進入c:/msys/home/ffmpeg-0.5源碼目錄,創建release目錄 (madir release) 和 debug 目錄 (mkdir debug) 目錄,視需求編譯 release 或 debug 版本:
4. 進入c:/msys/home/ffmpeg-0.5/release 目錄下執行: ../configure --disable-static --enable-shared --enable-small --enable-memalign-hack --enable-gpl --extra-cflags=-I/local/include --extra-ldflags=-L/local/lib
5.或進入 c:/msys/home/ffmpeg-0.5/debug 目錄下執行: ../configure --disable-static --enable-shared --enable-memalign-hack --enable-gpl --extra-cflags=-I/local/include --extra-ldflags=-L/local/lib --enable-debug=3 --disable-optimizations --disable-stripping
6.make
7.make install

注:參數解釋
a.--extra-ldflags=-L<prefix>/lib --extra-cflags=-I<prefix>/include

? ? ? 如果你把庫安裝在了非gcc的缺省尋找路徑,你必須向FFmpeg的configure腳本傳遞這些路徑信息。
b.--enable-small

? ? ? ?optimize for size
c.--enable-nonfree
? ? ? ?Yes, FFmpeg recently changed the --enable-libfaac to require --enable-nonfree due to some inconsisent licensing
declarations in the faac source. You can also workaround this by not enabling AAC in the wizard. They have a
native AAC encoder in progress, but it is not ready and enabled yet.

三.支持x264 (--enable-libx264)
1. 下載 x264 原始碼(http://www.imagemagick.org/download/delegates/ffmpeg /x264-1024283.tar.bz2) (x264-snapshot-20100115-2245.tar.bz2這個源碼編譯不過,不知道為什么,有時間仔細研究研究。)
2.解壓后拷貝到c:/msys/home/目錄下 (c:/msys/home/x264-1024283)
3.進入c:/msys/home/x264-1024283 目錄下執行: ./configure --prefix=/usr/local --enable-shared --disable-asm
4.make
5.make install

四.支持xvid (--enable-libxvid)
1.下載 xvid 原始碼(http://www.imagemagick.org/download/delegates/ffmpeg/xvidcore-1.2.2.tar.bz2)
2.解壓后拷貝到c:/msys/home/目錄下 (c:/msys/home/xvidcore)
3.進入c:/msys/home/xvidcore/build/generic 目錄下執行: ./configure --prefix=/usr/local --enable-shared
4.make
5.make install

五.支持MP3 (--enable-libmp3lame)
1.下載 MP3 原始碼(http://www.imagemagick.org/download/delegates/ffmpeg/lame-398-2.tar.gz)
2.解壓后拷貝到c:/msys/home/目錄下 (c:/msys/home/lame-398-2)
3.進入c:/msys/home/lame-398-2 目錄下執行: ./configure --prefix=/usr/local --enable-shared
4.make
5.make install

六.支持FAAC (--enable-libfaac)
1.下載 FAAC 原始碼(http://www.imagemagick.org/download/delegates/ffmpeg/faac-1.28.tar.bz2)
2.解壓后拷貝到c:/msys/home/目錄下 (c:/msys/home/faac-1.28)
3.進入c:/msys/home/faac-1.28 目錄下執行./bootstrap
4../configure --prefix=/usr/local --enable-shared --without-mp4v2

(FAAC 無需編入 mp4 容器支持,封入 mp4 容器的工作由 ffmpeg 負責)
5.make
6.make install

七.支持FAAD (--enable-libfaad)
1.下載 FAAD 原始碼(http://www.imagemagick.org/download/delegates/ffmpeg/faad2-2.7.tar.bz2)
2.解壓后拷貝到c:/msys/home/目錄下 (c:/msys/home/faad2-2.7)
3.進入c:/msys/home/faad2-2.7 目錄下執行 autoreconf -vif
注:編譯FAAD需要使用autoreconf, 下載msysDTK-1.0.1.exe 安裝到c:/msys.
4../configure --prefix=/usr/local --enable-shared --without-mp4v2
5.make
6.make install

八.支持gsm (--enable-libgsm)
1.下載 gsm 原始碼(http://www.imagemagick.org/download/delegates/ffmpeg/gsm-1.0.13.tar.gz)
2.解壓后拷貝到c:/msys/home/目錄下 (c:/msys/home/gsm-1.0-pl13)
3.進入c:/msys/home/gsm-1.0-pl13 目錄下執行: ./configure --prefix=/usr/local --enable-shared
4.make
注:make編譯出錯(make: *** [bin/toast] Error 1), 忽視這個錯誤,不影響。
5.cp c:/msys/home/gsm-1.0-pl13lib/libgsm.a? c:/msys/local/lib
6.cp c:/msys/home/gsm-1.0-pl13lib/inc/gsm.h? c:/msys/local/include

九.libamr-nb (--enable-libamr-nb)
1.下載 libamr-nb 原始碼(http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.2.tar.bz2)
2.解壓后拷貝到c:/msys/home/目錄下 (C:/msys/home/amrnb-7.0.0.2)
3.下載26104-700.zip (http://www.3gpp.org/ftp/Specs/archive/2 … 04-700.zip), 將這個zip包放到c:/msys/home/amrnb-7.0.0.2 目錄下面
4.下載unzip-5.51-1-bin.zip (http://downloads.sourceforge.net/gnuwin … -1-bin.zip),解壓后將unzip.exe到/mingw/bin下。
5.進入c:/msys/home/amrnb-7.0.0.2 目錄下執行: ./configure --prefix=/usr/local --enable-shared
6.make
7.make install

十.libamr-wb (--enable-libamr-wb)
1.下載 libamr-wb 原始碼(http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.3.tar.bz2)
2.解壓后拷貝到c:/msys/home/目錄下 (C:/msys/home/amrwb-7.0.0.3)
3.下載26204-700.zip (http://www.3gpp.org/ftp/Specs/archive/2 … 04-700.zip), 將這個zip包放到c:/msys/home/amrwb-7.0.0.3 目錄下面
4.下載unzip-5.51-1-bin.zip (http://downloads.sourceforge.net/gnuwin … 工作,這里就不用做了)
5.進入c:/msys/home/amrwb-7.0.0.3 目錄下執行: ./configure --prefix=/usr/local --enable-shared
6.make
7.make install

十一.最后編譯ffmpeg 0.5
1.進入c:/msys/home/ffmpeg-0.5/release
2. ../configure --disable-static --enable-shared --enable-small --enable-memalign-hack --enable-gpl --extra-cflags=-I/local/include --extra-ldflags=-L/local/lib --enable-libgsm --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-nonfree --enable-libxvid --enable-libx264 --enable-libamr-nb --enable-libamr-wb
3.make
4.make install

?

十二. 編譯出lib 文件

以上方式默認不能編譯出 .lib文件。如果希望在vc++調用ffmpeg 庫,要用到相應的 .lib 文件。可以用以下方式編譯。

?

1.在msys.bat開頭添加一句話:call "C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/bin/VCVARS32.BAT"

根據自己vc7實際路徑修改以上路徑。在重復步驟十一。

先寫到這里,在以后的應用實踐中不斷補充。

2 Reply by 暈來暈去 2010-09-08 10:51:27

  • 暈來暈去
  • Administrator
  • Offline
  • Registered: 2010-05-26
  • Posts: 984

Re: Windows系統使用minGW+msys 編譯ffmpeg 0.5的全過程詳述 (轉)

http://hi.baidu.com/zorru/blog/item/ea3 … ae2cf.html
如何編譯FFMPEG(WIN,MINGW+MSYS)



如何編譯FFMPEG

一:配置
1:install MinGW 5.0.2
Download: http://prdownloads.sf.net/mingw/MinGW-5 … e?download

2:install MSYS 1.0.1
Download: http://prdownloads.sf.net/mingw/MSYS-1. … e?download

3:install MSYSDTK 1.0.1
Download: http://prdownloads.sf.net/mingw/msysDTK … e?download

4:install dos2unix.exe
Download: http://www.bastet.com/uddu.zip
extract, and place a copy of dos2unix.exe in C:/mingw/bin

5:install nasm.exe
Download: http://prdownloads.sourceforge.net/nasm … p?download
extract, rename nasmw.exe to nasm.exe and place a copy in C:/mingw/bin

二:裝載庫
1:libogg 1.1.3
download: http://downloads.xiph.org/releases/ogg/ … 1.3.tar.gz
./configure --disable-shared
make
make install

2:vorbis 1.1.2
download: http://downloads.xiph.org/releases/vorb … 1.2.tar.gz
./configure --disable-oggtest --disable-shared
--with-ogg-includes=/usr/local/include
--with-ogg-libraries=/usr/local/lib
make
make install

3:libfaac - faac-snapshot-20060329
download: cvs -z3 -d:pserver:anonymous at cvs.audiocoding.com:/cvsroot/faac co -P faac
dos2unix configure.in
./bootstrap
./configure --without-mp4v2
make
make install

4:libfaad - faad2-15092004.tar.gz
download: http://www.audiocoding.com/modules/mydo … amp;lid=19
modify line 308 of libfaad/common.h from:
#elif (defined(__i386__) && defined(__GNUC__))
to
#elif (defined(__i386__) && defined(__GNUC__) && !defined(__MINGW32__))
./bootstrap
./configure --with-drm
cd libfaad
make
make install

5:a52 - a52dec-0.7.5-cvs
download: cvs -z3 -d:pserver:anonymous at cvs.sourceforge.net:/cvsroot/liba52 co -P liba52
./configure
make
make install

6:mp3lame - lame-3.97b2
download: cvs -z3 -d:pserver:anonymous at cvs.sourceforge.net:/cvsroot/lame co -P lame
./configure --disable-shared
make
make install

7:libdts - libdts-0.0.2
./configure
make
make install

8:xvid - xvidcore-1.1.0
download: http://downloads.xvid.org/downloads/xvi … 1.0.tar.gz
cd build/generic
./configure --prefix=c:/mingw --disable-shared
make
make install
rm /c/mingw/lib/xvidcore.dll
mv /c/mingw/lib/xvidcore.a /c/mingw/lib/libxvidcore.a

9:libx264 - x264-snapshot-20060416-2245
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
./configure
make
make install

10:ffmpeg - ffmpeg-cvs-20060417
Download lastest version using cvs:
cvs -z3 -d:pserver:anonymous at mplayerhq.hu:/cvsroot/ffmpeg co -P ffmpeg
./configure --enable-faac --enable-faad --enable-a52 --enable-mp3lame
--enable-dts --enable-xvid --enable-x264 --enable-vorbis
--enable-libogg --enable-gpl --enable-pp --enable-mingw32
--enable-memalign-hack --disable-debug
--extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib
make
make install

附言:

(關于編譯器的問題)

1.可能沒有PR.EXE,(configure時候會用到這個工具)

A:下載unixutils,把其中的pr.exe拷到bin下面.下載地址 http://unxutils.sourceforge.net/

B:下載coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2,把其中的pr.exe拷到bin下面

2.可能要安裝bash-3.1.

3.LIB庫的產生:

msys.bat的最前面,把路徑替換成機器上vcvars32.bat實際存在的路徑,
機器上:"D:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/bin",
添加:call "D:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/bin/vcvars32.bat"

?

FFmpegwindows下的編譯,搭建mingw+msys環境[轉載,有改動]

ffmpeg,windows,編譯,mingw,msys

本帖最后由 終有時 于2010-9-14 07:40 PM 編輯

前段時間編譯了ffmpeg,由于需要生成在windows下的可執行文件,所以采用的是mingw+msys的環境。這個環境可以在windows下模擬一個linux終端,對linux下的makefile項目進行編譯,從而生成windows下的可執行文件和動靜態鏈接庫。
? ?? ?
對環境的搭建費了好大功夫,百度出來的文章基本上都是幾年前的,大家轉來轉去,就那一個版本,還很簡略,現在已經跟不上時代的步伐。好在終于找到一篇比較新的文章,內容非常詳細,根據它的步驟一步一步來就可以正常編譯ffmpeg,現在將這篇文章轉載讓大家看看。
? ?? ?
我根據此文章搭建好的環境壓縮放在了CSDN上,下載了之后解壓即可使用,免去了大家下載的麻煩,不過我沒有做對各種庫的添加支持,就是說我的環境已經做完了前面的11步,需要添加支持的直接從后面開始就可以了!
注:我把mingw放在了msys/1.0/目錄下。
mingw+msys
環境下載地址:
? ?? ?http://download.csdn.net/source/2634858


? ?? ?
以下內容轉自《MinGW下簡單編譯FFmpeg》,轉載時有改動。
? ?? ?
原文地址:http://jeremiah.blog.51cto.com/539865/126804
? ?? ?
由于原文中的資源下載鏈接現在大部分都已失效,有些資源還比較難找,本人就自己搜集下載并上傳到了CSDN上,可以直接下載。
編譯環境要求:
Msys: 1.0.10
MinGW:5.1.4
make: 3.81
gcc: 4.3.2
w32api: 3.13
SDL: 1.2.1
MinGW-Runtime: 3.15




一步步的來吧:
1. Minimal SYStem (MSYS)
安裝
下載MSYS-1.0.10.exe并安裝:
下載地址:http://download.csdn.net/source/2635337
安裝到c:/msys/1.0,臨近最后會出現個dos窗口,最后一句為:
Do you wish to continue with the post install? [yn ]
輸入n,結束安裝。


2. MSYS DTK (Developer Tool Kit)
安裝
下載msysDTK-1.0.1.exe并安裝:
下載地址:http://download.csdn.net/source/2635339
安裝到C:/msys/1.0,其他默認。


3.
升級下MSYS
下載msysCORE-1.0.11-bin.tar.gz
下載地址:http://download.csdn.net/source/2694777
解壓這個文件,將bin/mount.exe, msys-1.0.dll, ps.exe三個文件copyc:/msys/1.0/bin下面覆蓋下。


4.
升級下MSYSBASH
下載bash-3.1-MSYS-1.0.11-snapshot.tar.bz2
下載地址:http://download.csdn.net/source/2635711
解壓這個文件,將bin/bash.exe, sh.exe兩個文件copyc:/msys/1.0/bin


5. MinGW
安裝
下載mingw-5.1.4.exe并安裝:
下載地址:http://download.csdn.net/source/2635735
安裝,選擇download and install,下兩步之后選擇Candidate,不要選Current。選擇MinGW base tools (autoselected), g++ compiler, MinGW make; 安裝路徑為c:/msys/1.0/mingw。等待下載完了安裝吧。O(∩_∩)O……


5.2.
還原binutils-2.16.91
很多朋友需要用ffmpegdll來做開發。編譯的時候是用./configure --enable-memalign-hack --disable-static --enable-shared。但是最終編譯出來make install或者將相關的dll拷貝得到ffmepg同級目錄后,執行ffmpeg或者ffplay報錯:應用程序正常初始化失敗
經過google了許多資料,發現是binutils的版本問題。chinavideo論壇上面有的朋友說是mingw的版本問題,使用MinGW-3.1.0-1.exe會解決。Jeremiah經過試驗,發現不大行,從報錯的結果來看,MinGW-3.1.0-1.exe沒有自帶binutils。還是要自己安裝。而MinGW-5.1.4.execandidate選項會默認給我們安裝binutils-2.18.50-20080109-2.tar.gz。而這個binutils會最終導致應用程序正常初始化失敗的錯誤。
Jeremiah
和網友deepocean測試了nbinutils的版本,最后發現binutils-2.16.91-20050827-1.tar.gz是最適合的。其他的,ms不行!
下載地址:http://download.csdn.net/source/2635739
解壓到c:/msys/1.0/mingw,覆蓋原來的。


6.
配置fstab
copy C:/msys/etc/fstab.sample
fstab,確保以下對應:
#Win32_Path? ?? ?? ?? ? Mount_Point
c:/msys/1.0/mingw? ?? ?? ?/mingw




原始環境就搭建好了。可以啟動桌面上行的MSYS了。


7.
升級make
下載make-3.81.90-msys.rar
下載地址:http://download.csdn.net/source/2635746
解壓,復制make.exec:/msys/1.0/bin下,覆蓋原來的make
MSYS
中輸入make -v顯示的版本為3.81


8.
升級gcc
下載gcc-4.3.2-tdm-1-core.zip
下載地址:http://download.csdn.net/source/2635749
解壓到c:/msys/1.0/mingw,覆蓋原來的。
MSYS
中輸入gcc -v顯示的版本為4.3.2


9.
升級W32API
下載w32api-3.13-mingw32-dev.tar.gz
下載地址:http://download.csdn.net/source/2635754
解壓到c:/msys/1.0/mingw,覆蓋原來的。


10.
添加SDL
下載SDL-devel-1.2.11-mingw32.tar.gz
下載地址:http://download.csdn.net/source/2635755
解壓該軟件包;
lib下的所有文件復制到C:/msys/1.0/mingw/lib
include下的所有文件復制到C:/msys/1.0/mingw/include
bin下的i386-mingw32msvc-sdl-config復制到C:/msys/1.0/mingw/bin,并重命名為sdl-config
bin下的SDL.dll復制到C:/msys/1.0/mingw/bin


10.2
添加pr.exe
下載coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2:
下載地址:http://download.csdn.net/source/2635758
解壓,拷貝binpr.exec:/msys/1.0/bin下。


整體上的編譯環境就搭建好了。



11.
編譯FFmpeg
ffmpeg
下載地址:0.5版本:http://download.csdn.net/source/2635790
0.5.1
版本:http://download.csdn.net/source/2635791
0.5.2
版本:http://download.csdn.net/source/2635795
0.6
版本:http://download.csdn.net/source/2635797
copy
c:/msys/1.0/home/your_name下面(此路徑可根據自己喜好)。
解壓:tar xjvf ffmpeg-(根據版本).tar.bz2
vi
一個文件ffmpeg-conf.sh,內容為:
SDL_CFLAGS=/mingw/include
SDL_LIBS=/mingw/lib
./configure --enable-ffplay --enable-memalign-hack



執行./ffmpeg-conf.sh
執行make,應該不會有錯誤的。
執行ffplay filename就可以播放了。


12.
寫在編譯完之后
我們只是對ffmpeg進行了簡單的編譯,如果需要其他的功能還是去google吧。
編譯完了應該會出三個可執行文件:ffmpeg.exe, ffplay.exe, ffserver.exe, 但是我編譯完了只有前兩個,沒有ffserver.exe。因為MinGW里面少了關于ffserver用的網絡的相關的包。
參考http://bbs.chinavideo.org/viewthread.php?tid=95
單獨使用ffplay,需要將c:/msys/1.0/mingw/bin/SDL.dllffplay.exe放到相同的目錄下。
Ffmpeg
工程組的網站不錯http://www.ffmpeg.com.cn,它的論壇[url=http://bbs.chinavideo.org/index.php[/url]]http://bbs.chinavideo.org/index.php[/url]里面應該有不少關于FFmpeg的東西。


13. Msys
的編輯
以前很不喜歡這個系統,因為不能跟cmd或者其他linux的命令行一樣復制粘貼,去網上查了一下,發現可以的其實,只不過方式不一樣。
復制:選中一段文字,就將這段文字復制到剪貼板。
粘貼:shift+鼠標左鍵,就將剪貼板的內容粘貼到命令行了。

14. libamr庫加入
首先下載http://gd.tuwien.ac.at/gnu/mingw/wget-1.9.1-mingwPORT.tar.bz2,解壓wget.exe/mingw/bin下。
下載http://downloads.sourceforge.net/gnuwin32/unzip-5.51-1-bin.zip,解壓bin/unzip.exe/mingw/bin下。
下載兩個庫:
amrnb
http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.2.tar.bz2
amrwb
http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.3.tar.bz2
分別解壓到~下面。(~/home/yourname)。
下載http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-700.zip,將這個zip包放到~/amrnb-7.0.0.2下面。
下載http://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-700.zip,將這個zip包放到~/amrwb-7.0.0.3下面。
~/amrnb-7.0.0.2
~/amrwb-7.0.0.3下面分別執行:
./configure --disable-shared
make
make install



其中,--disable-shared將產生靜態庫,如需要動態庫,則不要加這個選項。
進入ffmpeg-0.5目錄,
保存以下腳本為ffmpeg-conf02.sh
SDL_CFLAGS=/mingw/include
SDL_LIBS=/mingw/lib
./configure --enable-ffplay --enable-memalign-hack --enable-libamr-nb --enable-libamr-wb --enable-nonfree --extra-ldflags=-L/usr/local/lib --extra-cflags=-I/usr/local/include


執行以下腳本:
rm -rf config.*
sh ffmpeg-conf02.sh
make




其中rm -rf config.*是為了確保config.h文件能被重寫。如果不刪除而是覆蓋的話,可能會有不能寫入覆蓋的情況,所以,每次重新從configure開始的編譯的話,還是執行下這個rm命令把configure產生的文件都干掉。
這樣編譯出來的ffplay就可以播放3gp文件了。(附件提供)


15. libmp3lame
庫加入
首先到lame-3.97.tar.gz (不要最新的版本3.98.2ms有些問題,說audio專碼的buffer不夠)
http://sourceforge.net/projects/lame/files/lame/lame-3.97.tar.gz/download
解壓到~下。
執行以下腳本:
./configure --disable-shared
make
make install



進入ffmpeg-0.5目錄,
保存以下腳本為ffmpeg-conf03.sh
SDL_CFLAGS=/mingw/include
SDL_LIBS=/mingw/lib
./configure --enable-ffplay --enable-static --disable-shared --enable-memalign-h
ack --enable-libamr-nb --enable-libamr-wb --enable-libmp3lame --enable-nonfree -
-extra-ldflags=-L/usr/local/lib --extra-cflags=-I/usr/local/include



執行以下腳本:
rm -rf config.*
sh ffmpeg-conf03.sh
make


make
后就可以使用ffmpegMP3的轉碼了
ffmpeg -i d:/video/01.avi -vcodec mpeg2video -acodec libmp3lame 01.mpg







16. libfaac
libfaad庫加入
下載faacfaad的源碼:
http://sourceforge.net/projects/faac/files/faac-src/faac-1.28.tar.bz2/download
http://sourceforge.net/projects/faac/files/faad2-src/faad2-2.7.tar.bz2/download
分別解壓到~下。
注釋掉faad2-2.7/frontend/main.c的第34行:
Windows系統使用minGW+msys?<wbr>編譯ffmpeg?<wbr>0.5的全過程詳述


分別執行:
./bootstrap
./configure --disable-shared --without-mp4v2
make
make install



進入ffmpeg-0.5目錄,
保存以下腳本為ffmpeg-conf04.sh
SDL_CFLAGS=/mingw/include
SDL_LIBS=/mingw/lib
./configure --enable-ffplay --enable-static --disable-shared --enable-memalign-h
ack --enable-libamr-nb --enable-libamr-wb --enable-libmp3lame --enable-libfaac -
-enable-libfaad --enable-gpl --enable-nonfree --extra-ldflags=-L/usr/local/lib -
-extra-cflags=-I/usr/local/include



執行以下腳本:
rm -rf config.*
sh ffmpeg-conf04.sh
make


make
后就ffmpeg就可以使用faacfaad了。



ffmpeg -i d:/video/02.mp3 -acodec libfaac 01.aac







17.
修改Msys的字體及背景色
用文本編輯器打開C:/Msys/msys.bat,如下:
if "x%MINGW32BGCOLOR%" == "x" set MINGW32BGCOLOR=Black
if "x%MINGW32FGCOLOR%" == "x" set MINGW32FGCOLOR=Yellow




start rxvt -backspacekey? ???-sl 2500 -fg %FGCOLOR% -bg %BGCOLOR% -sr -fn "Courier New-20" -tn msys -geometry 80x30 -e /bin/sh --login -i


其中上面的BlackYellow都是顏色。下面的-fn后面跟"字體-大小"80x30為每行80個字符,共顯示30行。這都是Jeremiah喜歡的設置。


18. x264
編碼支持

下載x264源碼需要用git
git clone git://git.videolan.org/x264.git


或者去http://www.videolan.org/developers/x264.html中,選You can browse the source on-line,點選最新的snapshot
Jeremiah
測試用的是http://git.videolan.org/?p=x264.git;a=snapshot;h=5d75a9bd5b942392c4ab64156a266eed64c0793f;sf=tgz


將源碼解壓到~下,執行



./configure --disable-asm --enable-shared
make
make install




進入ffmpeg-0.5目錄,
保存以下腳本為ffmpeg-conf04.sh
#this is enable amr mp3 aac aad x264
SDL_CFLAGS=/mingw/include
SDL_LIBS=/mingw/lib
./configure /
? ?? ?? ?? ?? ? --enable-ffplay /
? ?? ?? ?? ?? ? --enable-static /
? ?? ?? ?? ?? ? --disable-shared /
? ?? ?? ?? ?? ? --enable-memalign-hack /
? ?? ?? ?? ?? ? --enable-libamr-nb /
? ?? ?? ?? ?? ? --enable-libamr-wb /
? ?? ?? ?? ?? ? --enable-libmp3lame /
? ?? ?? ?? ?? ? --enable-libfaac /
? ?? ?? ?? ?? ? --enable-libfaad /
? ?? ?? ?? ?? ? --enable-gpl /
? ?? ?? ?? ?? ? --enable-nonfree /
? ?? ?? ?? ?? ? --enable-libx264 /
? ?? ?? ?? ?? ? --extra-ldflags=-L/usr/local/lib /
? ?? ?? ?? ?? ? --extra-cflags=-I/usr/local/include

執行以下腳本:
rm -rf config.*
sh ffmpeg-conf05.sh
make





make
成功后,使用x264,如下:
$ ffmpeg -i d:/01.avi -f psp -acodec libfaac -ab 94k -vcodec libx264 -cqp 28 -coder 1 -refs 3 -deblockalpha 1 -deblockbeta -1 -me_method umh -subq 9 -me_range 32 -trellis 2 -chromaoffset -2 -nr 0 -bf 2 -b_strategy 1 -bframebias 0 -directpred 3 -g 250 -i_qfactor 1.3 -b_qfactor 1.4 -flags2 +bpyramid+wpred+mixed_refs+8x8dct -er 2 -s 480x320 d:/01.mp4



參考網址:
http://wiki.videolan.org/Win32CompileMSYS
[url=http://www.cnblogs.com/sunlin886/archive/2007/03/18/678863.html[/url]]http://www.cnblogs.com/sunlin886/archive/2007/03/18/678863.html[/url]
http://hi.baidu.com/yeyingxian/blog/item/a03576d966b2892910df9b28.html

本文出自 Jeremiah的流媒體樂園博客,出處http://jeremiah.blog.51cto.com/539865/126804
轉載時有改動。

?

發表于 2010-8-29 11:38 PM| 只看該作者

?

?

搭建編譯FFmpegMinGW+MSYS 環境,只需敲兩三下鍵盤就能搞定。

http://www.ffmpegwindows.org/batchs

附件:您需要登錄才可以下載或查看附件。沒有帳號?注冊

FFVCL - FFmpeg for Delphi VCL Components / C++Builder / FFOCX - ActiveX OCX Controls / VB6 / VC6 / ...

?

?

16. libfaaclibfaad庫加入

我在這里進入 faad2-2.7 這個目錄執行到make時出錯.? ?

Administrator@282EEA0CCBC1410 ~/faad2-2.7
$ make
make??all-recursive
make[1]: Entering directory `/home/Administrator/faad2-2.7'
Making all in libfaad
make[2]: Entering directory `/home/Administrator/faad2-2.7/libfaad'
if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I..? ? -iquote ../include -g -O2 -MT bits.lo -MD -MP -MF ".deps/bits.Tpo" /
? ?? ?? ? -c -o bits.lo `test -f 'bits.c' || echo './'`bits.c; /
? ?? ???then mv ".deps/bits.Tpo" ".deps/bits.Plo"; /
? ?? ???else rm -f ".deps/bits.Tpo"; exit 1; /
? ?? ???fi
gcc -DHAVE_CONFIG_H -I. -I. -I.. -iquote ../include -g -O2 -MT bits.lo -MD -MP -MF .deps/bits.Tpo -c bits.c??-DDLL_EXPORT -DPIC -o .libs/bits.o
cc1.exe: error: unrecognized command line option "-iquote"
cc1.exe: ../include: No such file or directory
gcc.exe: ../include: linker input file unused because linking not done
make[2]: *** [bits.lo] Error 1
make[2]: Leaving directory `/home/Administrator/faad2-2.7/libfaad'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/Administrator/faad2-2.7'
make: *** [all] Error 2

TOP

?

解決了!

不過還是有問題

? ? --enable-libfaad /
在編譯ffmpeg,這個參數還是加不上去.

樓主提到的 amr-nb參數等加不上
./configure --help
后發現這兩個,但是加上后也報錯.
? ?--enable-libopencore-amrnb /
? ?--enable-libopencore-amrwb /

TOP

?

?

libmp3lame庫加入問題,
最近編譯最新的ffmpeg,發現要libmp3lame3.98.4,我不清楚如何卸載這些庫?刪掉就可以?

?

在windows平臺下編譯出libavcodec庫

前邊做了msys的環境搭建,在編譯ffmpeg時,還需要做以下的工作。
1. 整合系統,把
call "c:/Program Files/Microsoft Visual Studio 9.0/VC/bin/vcvars32.bat"加到d:/msys/msys.bat的最前邊。
2. 運行msys.bat后
切換到下載的ffmpeg目錄中,因為msys走的是類UNIX路徑,所以要按UNIX的方式切換路徑等。
如: cd /d/ffmpeg
3.用configure配置Makefile
./configure --enable-shared --disable-static --enable-memalign-hack
這樣是生成動態的編解碼庫,由于1 中加入了vcvars32.bat環境,故用這樣的模式才會生成具體的dll及lib等,否則vc下調用接口又會折騰了.
4.make
編譯ffmpeg整個項目
5. 在ffmpeg/libavcodec下就會有相應的dll,lib,而ffmpeg//libavformat下也會有相應的dll,lib.

?TAG windows ffmpeg libavcodec
發表于: 2009-05-18,修改于: 2009-05-29 21:05,已瀏覽577次,有評論0條 推薦 投訴


四、最新 完整FFMPEG 編譯詳解

2010_3_1最新完整 FFMPEG編譯詳解

[i=s] 本帖最后由 golocy 2010-3-1 05:23 PM編輯 [/i]

2010_3_1
最新 FFMPEG編譯詳解

在網上看了很多編譯詳解,都很零散。經過自己的編譯,解決一些BUG,在此分享自己的一些經驗...話不多說了!直接上貼。

第一步:準備編譯平臺。
需要 一個MinGW 一個 MSYS 安裝包 以及 MSYS_DTK.
? ?
當前最新是版本:
? ?MinGW5.1.6.exe? ? [url=http://sourceforge.net/projects/mingw/files/]
下載[/url]
? ?msysDTK-1.0.1.exe [url=http://downloads.sourceforge.net/mingw/msysDTK-1.0.1.exe]
下載[/url]
? ?Msys1.0.11.exe? ? [url=http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe]
下載[/url]
按照以上順序安裝
? ???
建議:(可選)
? ???
MinGw5.1.6安裝到 F:/MinGw (為了路徑簡短起見)
? ???
Msys1.0.11安裝到 F:/MinGw/Msys(為了方便起見)

有些機器不會在/MinGw/Msys/etc中產生正確的fstab文件,因此確保
/MinGw/Msys/etc
中具有一個fstab文件內容為:F:/MinGw /minwg??前者為你的MinGw安裝目錄后面對應MinGw目錄)

第二步:準備編譯工具
??
需要一些編譯工具,以便能夠編譯需要的庫。

1.
二進制工具(xx.exe文件)
??pr.exe
(在coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2包的bin目錄中)[url=http://sourceforge.net/projects/mingw/files /MSYS Base System/_obsolete/coreutils-5.97-MSYS-1.0.11-2/coreutils- 5.97-MSYS-1.0.11-snapshot.tar.bz2/download]下載[/url]
??
ffmpegconfigure執行需要用到)
??
復制到 MinGW/bin
注意:是MinGW目錄中的bin

??SDL
工具 [url=http://www.libsdl.org/docs.php]下載[/url] (ffmpeg需要用到)
??
在包中的四個目錄:bin lib include share一起復制到 MinGw 目錄下
??(bin
中包含 SDL.dll sdl-config)
??
sdl-config中修改第一行為 prefix=/mingw
??
[url=http://www.ffmpeg.com.cn/index.php/Ffplay使用事例]參考[/url]

??unzip.exe
工具 [url=unzip-5.51-1.exe][url=http://sourceforge.net/projects/gnuwin32 /files/unzip/]下載[/url][/url](安裝 libamrnb libamrwb需要用到)
??
解壓unzip-xxx-bin.zip后在bin 中復制 unzip.exe MinGw/Msys/bin
(注意:是 Msys目錄中的bin

??wget.exe
工具 [url=http://ftp.gnu.org/gnu/wget/]下載[/url](安裝 libamrnb libamrwb需要用到)
??
解壓后 bin 中拷貝 wget.exe MinGw/Msys/bin
(注意:是 Msys目錄中的bin

??git.exe
工具 下載(獲取x264庫需要用到)??安裝:

[url=http://msysgit.googlecode.com/files/Git-1.6.5.1-preview20091022.exe]Git-1.6.5.1-preview20091022.exe[/url]

2.
源碼安裝包(需要編譯安裝的工具包)
??autoconf [url=http://ftp.gnu.org/gnu/autoconf/]
下載[/url]
??automake [url=http://ftp.gnu.org/gnu/automake/]
下載[/url]
??libtool??[url=http://ftp.gnu.org/gnu/libtool/]
下載[/url]
??yasm? ???[url=http://www.tortall.net/projects/yasm/releases/yasm-0.8.0.tar.gz]
下載[/url]

??
下載最新版 然后解壓到 Msys目錄中的home/Administrator
??(
說明:以后需要執行'configure' 'make' 'make install' 命令來安裝的xx.tag.gz都解壓到Administrator以便控制臺中方面路勁的輸入

包的安裝:
舉例安裝 autoconf
??
Msys命令行中:

? ? cd autoconf
回車 (從 ~ 目錄 進入 autoconf 目錄)
? ? configure
回車 (執行配置文件)
? ? make
回車? ?? ?(開始編譯)
? ? make install
回車 (安裝)

安裝 automake包:動作同上,只是要進入automake 目錄.(cd automake)

第三步:準備一個線程庫(不準備編譯x264的可以跳過)
??pthread
??[url=ftp://sources.redhat.com/pub/pthreads-win32/pthreads- w32-2-8-0-release.tar.gz]下載[/url][url=http://ffmpeg.arrozcru.org/wiki/index.php?title=Pthreads]參考[/url]
??
解壓到MinGw/Msys/home/Administratorpthread
??
Msys命令行中:
? ???cd pthread
回車
? ???make GC
回車
??
然后在pthread中找到pthreadGC.dll 拷貝到 MinGw/bin MinGw/lib
??...............
找到pthread.h sched.h??拷貝到MinGw/include
??
(注意有個Bug 打開sched.h line:152 line154的兩個函數的參數類型pid_t 改成 int 這個Bug是自己遇到的,修改并不會影響任何功能,但并沒有官方驗證)

目前這里就配置好所有的編譯環境了!
? ?
以下是支持要編譯的編解碼庫:

//===== Mp3lame [url=http://sourceforge.net/projects/lame/files/lame/]
下載[/url]
解壓到 ~ 目錄 MinGw/Msys/home/Administrator)改名目錄為lame
Msys安裝:
? ?cd lame
回車
? ?configure --enalbe-shared
回車
? ?make
回車
? ?make install
回車

//===== faac
faad2 [url=http://www.audiocoding.com/downloads.html]下載[/url](兩個包)

faac
安裝:

faac-1.28 需要一個補丁[url=http://bbs.chinavideo.org/attachment.php?aid=368&k=bdbac83ed608d3697e25e985527c3b9c&t=1267424723&fid=11&sid=ab1ep/jU/kNhVRIt9st/5vPwWJxoQCf7uJGIj3A397qIkfc]faac-1.28.diff[/url]
解壓到 ~ 目錄 MinGw/Msys/home/Administrator)改名目錄為faac
把補丁放到 faac 目錄中
Msys安裝:
? ?cd faac
回車
? ?patch -p1 < faac-1.28.diff
回車
? ?bootstrap
回車
? ?configure --with-mp4v2 --enalbe-shared
回車
(不需要MP4 則第一個參數用--without-mp4v2 代替)
? ?make
回車
? ?make install
回車

faad
安裝:

faad2-2.7 需要一個補丁[url=http://bbs.chinavideo.org/attachment.php?aid=369&k=4624ab33cb734713942aafb25213926c&t=1267427156&fid=11&sid=3fa8T1Vt6ibnc+wFOLP4vp0CkKhIQj1NZ+Hpq3RhVaiUQPw]faad2-2.7.diff[/url]
解壓到 ~ 目錄 MinGw/Msys/home/Administrator)改名目錄為faad2
把補丁放到 faad2 目錄中
Msys安裝:
? ?cd faad2
回車
? ?patch -p1 < faad2-2.7.diff
回車
(也可以手動修改,注釋掉faad2/frontend/main.c
? ? line: 34
#define off_t __int64

? ?bootstrap
回車

? ?configure --with-mp4vip --enalbe-shared
回車
(第一個參數可選)

? ?configure
順利完成之后
? ???
libfaad/Makefile中修改:
? ?? ???
AM_CFLAGS = -iquote $(top_srcdir)/include
? ?? ???
改成:AM_CFLAGS = -I $(top_srcdir)/include
? ???
(這個是一個Bug修正以免出現:
? ?? ? cc1.exe: error: unrecognized command line option "-iquote"


? ?make
回車
? ?make install
回車
//===== amrnb
amrwb [url=http://www.penguin.cz/~utx/amr#download]下載[/url]
amrnb
安裝:
解壓到 ~ 目錄 MinGw/Msys/home/Administrator)改名目錄為amrnb
Msys安裝:
? ?cd amrnb
回車
? ?configure --enalbe-shared
回車
? ?make
回車
? ?make install
回車

amrwb
安裝:
解壓到 ~ 目錄 MinGw/Msys/home/Administrator)改名目錄為amrwb
Msys安裝:
? ?cd amrwb
回車
? ?configure --enalbe-shared
回車
? ?make
回車
? ?make install
回車

//===== xvidcore [url=http://www.xvid.org/Downloads.43.0.html]
下載[/url]
解壓到 ~ 目錄 MinGw/Msys/home/Administrator)改名目錄為xvid
Msys安裝:
? ?cd xvid/build/generic
回車
? ?configure --enalbe-shared
回車
? ?make
回車
? ?make install
回車

//===== H.264
??
下載x264庫:
? ?
Windows 的控制臺中輸入
C
/...>??cd F/mingw/msys/home/Administrator回車
(切換路徑到Administrator目錄)
F
/mingw/msys/home/Administrator > git clone git://git.videolan.org/vlc.git
這時x264包就會下載到mingw/msys/home/Administrator目錄中

Msys安裝:
? ?cd x264
回車
? ?configure --enalbe-shared
回車
? ?make
回車
? ?make install
回車

(
有個Bug,安裝后mingw/msys/local/include/x264.h
line
209 修改 int i_bframe_pyramid;int b_bframe_pyramid;保存)
//**************
到這里 有一些常用的編解碼庫了??下面來編譯FFMPEG
FFMPEG [url=http://www.ffmpeg.org/releases/ffmpeg-0.5.tar.bz2]
下載[/url]
解壓到 ~ 目錄 MinGw/Msys/home/Administrator)改名目錄為ffmpeg
(注意了,編譯x264需要修改一下 ffmpegconfigure
??
line 1996 :中的 x264_encoder_open加上一個x264版本號,可以從F:/MinGw
/msys/local/bin
中的libx264-xx.dll得知,這里編譯得到的是libx264-88.dll
所以??line 1996 :中的 x264_encoder_open 改為x264_encoder_open_88,以解決
編譯x264,編譯ffmpeg提示 libx264 not found.

ffmpeg目錄中新建一個文本文件 改名為cml (無擴展名)
編輯 cml
configure /
[size=3]--enable-ffplay /
--enable-static /
--enable-memalign-hack /
[/size][size=3]--enable-gpl / [/size]
[size=3]--enable-libmp3lame /
--enable-libfaac /
--enable-libfaad /
--enable-libx264 /
[/size][size=3]--enable-nonfree /??[/size][size=3]
--enable-libamr-nb /
--enable-libamr-wb / [/size]
[size=3]--extra-ldflags=-L/usr/local/lib /
--extra-cflags=-I/usr/local/include [/size]
保存.

Msys中輸入:
cml
回車
make
回車
make install
回車

大功告成! 不過xvid不能在ffmpeg編譯中使用--enable-shared參數
不然會報錯,你可以試試,如果可以,那就是我的機器問題!-愉快

xshzh 發表于2010-7-16 09:32 AM

查看完整版本: 2010_3_1最新完整 FFMPEG 編譯詳解

?

?

//

?

1、??? 用MinGw and Msys 編譯出 libx264.dll.a和 libx264-88.dll,
2、??? 然后重命名 libx264.dll.a 為 libx264.lib.
3、??? 在vs2005用 x264編碼器程序編譯,bebug版成功release crash.how create libx264.lib for vc2005?
4、??? .a可以進一步編譯成.dll庫。.lib不可以再編了,所以不能直接改。
5、??? 你需要把它編譯成libx264.dll庫
6、??? 或者將libx264.a放入mingw中和其他的庫一起編成.dll
7、???
8、??? 編譯FFMPEG,
FFMPEG在http://www.ffmpeg.org/releases/ffmpeg-0.5.tar.bz2下載,然后解壓到 ~ 目錄 (MinGw/Msys/home/Administrator)改名目錄為 ffmpeg(注意了,編譯x264庫 需要修改一下 ffmpeg的configure把 line 1996 :中的 x264_encoder_open加上一個x264版本號,可以從F:/MinGw/msys/local/bin中的libx264-xx.dll 得知,這里編譯得到的是libx264-88.dll所以把line 1996:中的 x264_encoder_open 改為 x264_encoder_open_88,以解決編譯x264后,編譯ffmpeg 提示 libx264 not found.)

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

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

相關文章

Liunx安裝gogs,mysql,jdk,tomcat等常用軟件

Liunx CentOS系統采用yum安裝Mysql 一.安裝mysql客戶端 yum -y install mysql 二.安裝mysql服務器端 [注意:由于CentOS7下的不自帶mysql-server,所以得先安裝資源包,步驟: 1.wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm (采用wget獲取必須有wge…

stm32單片機端口映射_STM32單片機的重映射與地址映射的使用方法及步驟

重映射STM32中對于一些端口的外設已經被其他引腳所使用&#xff0c;這是就需要用端口重映射來解決了&#xff0c;很方便。以USART1為例重映射的步驟為&#xff1a;打開重映射時鐘和USART重映射后的I/O口引腳時鐘&#xff0c;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_A…

python 第三方模塊 yaml - 處理 YAML (專門用來寫配置文件的語言)

markdown 的配置使用 Yaml —— Yet Another Markup Language &#xff1a;另一種標記語言。 簡介 YAML 是專門用來寫配置文件的語言&#xff0c;非常簡潔和強大&#xff0c;遠比 JSON 格式方便。 YAML在python語言中有PyYAML安裝包。 YAML 語言&#xff08;發音 /?jm?l/ &…

程序員 賺錢

業余編程賺錢 程序員的好方法 現在的人生活水平高了&#xff0c;開銷也大了&#xff0c;同時對于一些技術性人員來說有很多種&#xff0c;有些程序員自己開公司&#xff0c;開發自己的產品&#xff0c;年賺百萬&#xff0c;有些程序員還在給別人打工&#xff0c;每天累死累活的…

java合并單元格的快捷鍵_java poi合并單元格問題

使用poi導出的execl合并單元格&#xff0c;會出現下圖問題整個單元格看似合并了&#xff0c;但是文字沒有垂直居中&#xff0c;而且execl中所有的合并都會在第三行開始出現灰色分層樣式合并單元格偽代碼String upCompareField ""; //上一行的對比值for(int i 0; i …

webpack自動化構建腳本指令npm run dev/build

指令 為不同環境配置可執行指令&#xff0c;我們使用npm scripts方式&#xff0c;在package.json文件中配置執行指令&#xff1a; {"scripts": {"start": "cross-env NODE_ENVdev webpack-dev-server","build": "cross-env NODE_…

前端之 form 詳解

認識表單 在一個頁面上可以有多個form表單&#xff0c;但是向web服務器提交表單的時候&#xff0c;一次只可以提交一個表單。要聲明一個表單&#xff0c;只需要使用 form 標記來標明表單的開始和結束&#xff0c;若需要向服務器提交數據&#xff0c;則在form標簽中需要設置act…

代碼 優化 指南 實踐

C代碼優化方案 華中科技大學計算機學院 姓名&#xff1a; 王全明 QQ&#xff1a; 375288012 Email&#xff1a; quanming1119163.com 目錄 目錄 C代碼優化方案 1、選擇合適的算法和數據結構 2、使用盡量小的數據類型 3、減少運算的強度 &#xff08;1&…

.12-淺析webpack源碼之NodeWatchFileSystem模塊總覽

剩下一個watch模塊&#xff0c;這個模塊比較深&#xff0c;先大概過一下整體涉及內容再分部講解。 流程圖如下&#xff1a; NodeWatchFileSystem const Watchpack require("watchpack");class NodeWatchFileSystem {constructor(inputFileSystem) {this.inputFileSy…

Python 第三方模塊之 beautifulsoup(bs4)- 解析 HTML

簡單來說&#xff0c;Beautiful Soup是python的一個庫&#xff0c;最主要的功能是從網頁抓取數據。官方解釋如下&#xff1a;官網文檔 Beautiful Soup提供一些簡單的、python式的函數用來處理導航、搜索、修改分析樹等功能。 它是一個工具箱&#xff0c;通過解析文檔為用戶提供…

modal vue 關閉_Vue彈出框的優雅實踐

引言頁面引用彈出框組件是經常碰見的需求,如果強行將彈出框組件放入到頁面中,雖然功能上奏效但沒有實現組件與頁面間的解耦,非常不利于后期的維護和功能的擴展.下面舉個例子來說明一下這種做法的弊端.click"openModal()">點擊 :is_open"is_open" close…

Python 第三方模塊之 lxml - 解析 HTML 和 XML 文件

lxml是python的一個解析庫&#xff0c;支持HTML和XML的解析&#xff0c;支持XPath解析方式&#xff0c;而且解析效率非常高 XPath&#xff0c;全稱XML Path Language&#xff0c;即XML路徑語言&#xff0c;它是一門在XML文檔中查找信息的語言&#xff0c;它最初是用來搜尋XML文…

(轉)Linux下PS1、PS2、PS3、PS4使用詳解

Linux下PS1、PS2、PS3、PS4使用詳解 原文&#xff1a;http://www.linuxidc.com/Linux/2016-10/136597.htm 1、PS1——默認提示符 如下所示&#xff0c;可以通過修改Linux下的默認提示符&#xff0c;使其更加實用。在下面的例子中&#xff0c;默認的PS1的值是“\s-\v\$”,顯示出…

開放平臺大抉擇

開放平臺大抉擇之新浪SAE&#xff1a;為個人應用開發帶來福音 導讀&#xff1a;繼上期淘寶網副總裁王文彬從平臺功能特色、運營狀況等多方面分享了淘寶開放平臺的歷程和挑戰之后。國內另一家云平臺服務方的典型代表——Sina App Engine(簡稱SAE)&#xff0c;作為新浪研發中心于…

ip68級防水可以泡多久_iPhone8防水級別升級至IP68:能在1.5米深水中堅持30分鐘

1月15日&#xff0c;業界最新的泄密消息顯示&#xff0c;蘋果擬在今年推出的“iPhone 8”智能手機會是一款革命性的手機&#xff0c;功能和配置就不多說了。蘋果還將解決iPhone 7的一個重要缺陷&#xff0c;就是大大增強iPhone 8的防水性能&#xff0c;防水級別達IP68。《韓國先…

HTTP POST 發送數據的參數 application/x-www-form-urlencoded、multipart/form-data、text/plain

HTTP 簡介 HTTP/1.1 協議規定的 HTTP 請求方法有 OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT 這幾種。 其中 POST 一般用來向服務端提交數據&#xff0c;本文主要討論 POST 提交數據的幾種方式。 我們知道&#xff0c;HTTP 協議是以 ASCII 碼傳輸&#xff0c;建…

vue 二進制文件的下載(解決亂碼和解壓報錯)

問題描述&#xff1a;項目中使用的是vue框架進行開發&#xff0c;因為文件下載存在權限問題&#xff0c;所以并不能通過 a 鏈接的 href 屬性直接賦值 URL進行下載&#xff0c; &#xff08;如果你的文件沒有下載權限&#xff0c;可以直接通過href屬性賦值URL的方法進行文件下載…

Python 第三方模塊之 psutil - 獲取系統運行的進程和系統利用率信息

一、psutil模塊: 官方網址&#xff1a;http://pythonhosted.org/psutil/ 1.psutil是一個跨平臺庫(http://pythonhosted.org/psutil/)能夠輕松實現獲取系統運行的進程和系統利用率&#xff08;包括CPU、內存、磁盤、網絡等&#xff09;信息。它主要用來做系統監控&#xff0c;…

石頭機器人紅燈快閃_機器人集體“快閃”活動爆紅網絡 “我是AI”與您相約智能新時代...

原標題&#xff1a;機器人集體“快閃”活動爆紅網絡 “我是AI”與您相約智能新時代3月10日下午&#xff0c;天津科學技術館內&#xff0c;悠揚美妙的歌聲《我和我的祖國》突然響起&#xff0c;隨后50個身形矯健的阿爾法機器人伴隨著歌聲翩翩起舞&#xff0c;動作整齊、科技感十…

淺談云計算與數據中心計算

文/林仕鼎 云計算概念發端于Google和Amazon等超大規模的互聯網公司&#xff0c;隨著這些公司業務的成功&#xff0c;作為其支撐技術的云計算也得到了業界的高度認可和廣泛傳播。時至今日&#xff0c;云計算已被普遍認為是IT產業發展的新階段&#xff0c;從而被賦予了很多產業和…