FFmpeg函式庫編譯
FFmpeg的官方網站:http://www.ffmpeg.org
編譯任何平台的FFmpeg事實上都是一項相當大的挑戰,因為相關連的函式庫數量相當多,而組合狀態也相當多,相依函式庫變動率也十分高。這裡說明的只是一般的設定及建議,如果您想要自行編譯FFmpeg,可能要多花一點時間來嘗試適合自己的組態。
FFmpeg on Windows
預先編譯好的FFmpeg on Windows的函式庫在:http://ffmpeg.zeranoe.com/builds可以找到。 我們建議您使用這個版本。下載完成後,我們建議您執行下列指令,用以保證產生的.lib檔是可以鏈結的:
x64架構
LIB /machine:x64 /def:avcodec-56.def /OUT:avcodec.lib |
重建完成以後,include內的檔案請複製到
CiosAudio/Platforms/Windows/FFmpeg/include
*.lib請複製到
CiosAudio/Platforms/Windows/FFmpeg/lib/x64
x86架構
LIB /machine:x86 /def:avcodec-56.def /OUT:avcodec.lib |
重建完成以後,include內的檔案請複製到
CiosAudio/Platforms/Windows/FFmpeg/include
*.lib請複製到
CiosAudio/Platforms/Windows/FFmpeg/lib/x86
FFmpeg on Mac OS X
Mac OS X平台上,我們建議您全部都編譯成靜態函式庫。編譯的方式:
export ARENA=/usr/local |
由於每台編譯的機器環境均不相同,編譯成應用程式時,如果缺少了某個函式庫,通常都出現許多錯誤訊息,您必須自行尋找缺少的項目,一般而言,詢問其他人的幫助並不太大。
這個版本編譯出來需要與以下的函式庫鏈結:
- CaCore
- avcodec
- avdevice
- avfilter
- avformat
- avutil
- swresample
- swscale
- postproc
- iconv
- z
- bz2
- pthread
- twolame
- mp3lame
- gsm
- wavpack
- ogg
- vorbis
- vorbisenc
- vorbisfile
- faac
Framework需要以下列表:
- CoreAudio
- CoreServices
- AudioUnit
- AudioToolBox
- CoreFoundation
- CoreVideo
- VideoDecodeAcceleration
- Accelerate
Two LAME
Two LAME的官方網址位於:http://www.twolame.org編譯的方式:
./configure --disable-shared --enable-static --prefix=/usr/local |
LAME
LAME的官方網址位於:http://lame.sourceforge.net編譯的方式:
./configure --disable-shared --enable-static --prefix=/usr/local |
GSM
GSM的官方網址位於:http://libgsm.sourcearchive.com編譯的方式:
make |
Wav Pack
Wav Pack的官方網址位於:http://www.wavpack.com編譯的方式:
./configure --disable-shared --enable-static --prefix=/usr/local |
ogg
ogg的官方網址位於:http://xiph.org/ogg編譯的方式:
./configure --disable-shared --enable-static --prefix=/usr/local |
vorbis
vorbis的官方網址位於:http://xiph.org/vorbis編譯的方式:
./configure --disable-shared --enable-static --prefix=/usr/local |
FAAC
FAAC的官方網址位於:http://www.audiocoding.com/faac.html編譯的方式:
./configure --disable-shared --enable-static --prefix=/usr/local |