當前位置:首頁 » 編程軟體 » 編譯視頻文字特效

編譯視頻文字特效

發布時間: 2024-12-16 00:36:52

『壹』 ffmpeg編譯視頻加上字幕

ffmpeg編譯及使用ffmpeg編譯及使用

1 ffmpeg介紹

ffmpeg是音視頻的分離,轉換,編碼解碼及流媒體的完全解決方案,其中最重要的就是libavcodec庫。它被mplayer或者xine使用作為解碼器。還有,國內比較流行的播放器影音風暴或MyMPC的後端ffdshow也是使用ffmpeg的解碼庫的。

ffmpeg軟體包經編譯過後將生成三個可執行文件,ffmpeg,ffserver,ffplay。其中ffmpeg用於對媒體文件進行處理,ffserver是一個http的流媒體伺服器,ffplay是一個基於SDL的簡單播放器。

ffmpeg中有五個庫文件,libavcodec,libavformat,libavutil,libswscale,libpostproc,其中庫libavcodec,libavformat用於對媒體文件進行處理,如格式的轉換;libavutil是一個通用的小型函數庫,該庫中實現了CRC校驗碼的產生,128位整數數學,最大公約數,整數開方,整數取對數,內存分配,大端小端格式的轉換等功能;libswscale,libpostproc暫時不知道何用。

2 ffmpeg下載

最新的ffmpeg可以通過svn下載,SVN輔助的軟體有:

SubVersion,從 http://subversion.tigris.org/ 下載,支持linux

TortoiseSVN,從 http://tortoisesvn.tigris.org/ 下載,是很不錯的SVN客戶端程序,為windows外殼程序集成到windows資源管理器和文件管理系統的Subversion客戶端,用起來很方便。

subversion安裝,記住最好之前裝過apr和apr-util,在apache.org網站能下到

wget http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz

tar zvxf subversion-1.3.2.tar.gz

cd subversion-1.3.2

./configure --with-apr=/usr/local/apr-httpd --with-apr-util=/usr/local/apr-util-httpd/

make

make install

如果安裝了FC6,它已經帶了svn,不用裝了。

ffmpeg的下載:我們就可以通過svn命令獲取最新的ffmpeg,命令如下:

svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

3 ffmpeg支持庫的安裝

* xvid

xvid的獲取地址如下:

http://www.xvid.org/

wget http://downloads.xvid.org/downloads/xvidcore-1.1.3.tar.gz

配置編譯

for x86

#./configure --prefix=/usr/local

#make

#make install

for arm

#CC=arm-linux-gcc ./configure --prefix=/usr/local/arm/arm-linux --build=i686-pc-linux --host=arm-linux --target=arm-linux

#make

#make install

* x264

x264的獲取地址如下:

svn co svn://svn.videolan.org/x264/trunk x264

配置編譯

for x86

#./configure --enable-shared --prefix=/usr/local

#make

#make install

for arm

#CC=arm-linux-gcc ./configure --enable-pthread --enable-shared --host=arm-linux

--prefix=/usr/local/arm/arm-linux

#make

#make install

* 支持mp3

lame的獲取地址如下: http://lame.sourceforge.net/index.php

配置編譯

for x86

./configure --enable-shared --prefix=/usr/local

* 支持Ogg Vorbis:

* AC3和dts編碼的支持

libdts編譯參數

./configure --prefix=/usr

make

make install

* mpg4 aac格式支持,如果ffserver伺服器還針對手機用戶服務,所以,類似aac,mpg4鈴聲格式的支持,我們也得做。這里我們安裝faad2和faac就行,下載請到http://www.audiocoding.com/moles/mydownloads/,http://prdownloads.sourceforge.net/faac

FAAD2的編譯

cd faad2

autoreconf -vif

./configure --prefix=/usr --with-mp4v2 --enable-shared

make

make install

faac的編譯

cd faac

chmod +x bootstrap

./bootstrap

./configure --prefix=/usr --with-mp4v2 --enable-shared

make

make install

在編譯ffmpeg,在configure時加上--enable-amr_nb --enable-faad --enable-faac參數。

* 支持3gp格式,這也是現在好多手機支持的格式,所以也得支持編譯

編譯的時候加上--enable-amr_nb --enable-amr_wb參數就行,根據編譯系統的提示,所以我們得下載一些編譯3gp所需得文件。

源碼網址:http://www.3gpp.org/ftp/Specs

wget http://www.3gpp.org/ftp/Specs/ar ... 6.204/26204-510.zip

解壓以後把裡面的文件都拷貝到libavcodec/amrwb_float

wget http://www.3gpp.org/ftp/Specs/ar ... 6.104/26104-510.zip

解壓以後把裡面的文件都拷貝到libavcodec/amr_float

* ffmpeg支持VC1格式

微軟ASF格式的三個版本,WMV1,WMV2,WMV3分別對應MediaPlayer的版本7,8和9,所以很多時候會稱VC1為WMV3或 WMV9,都是它了,有時候在代碼里,也能看到稱呼它為VC9的。因為微軟還沒有正式公開這種格式,所以當前對VC1的支持還很不完善。本文基本是根據Multimedia Mike的一篇博客翻譯和完善而來。

(1) 首先要下載 SMPTE VC-1 reference decoder,這個組織是要收費的,可以從這里下載免費的。

(2) 在ffmpeg目錄下的libavcodec目錄下面,建立目錄libvc1。

(3) 將VC1_reference_decoder_release6/decoder/目錄中的*.c和*.h文件全部到libvc1目錄下。

(4) 將VC1_reference_decoder_release6/shared/目錄中的*.c和*.h文件全部到libvc1目錄下。

(5) 將 libvc1-makefile.txt放到libvc1下的Makefile文件。

(6) 將smpte-vc1.c文件放到libavcodec目錄下。

(7) 修改libavcodec目錄下的vc9.c,將文件最後的wmv3_decoder這個AVCodec的structure,用#if 0和#endif包含起來,也就是使它失效了。

(8) 修改libavcodec目錄下的allcodecs.c

熱點內容
蘋果6如何設開機密碼 發布:2024-12-16 02:43:24 瀏覽:606
linuxtcpip協議 發布:2024-12-16 02:29:38 瀏覽:713
迷失腳本 發布:2024-12-16 02:21:50 瀏覽:915
源碼家教程 發布:2024-12-16 02:20:25 瀏覽:881
華為手機安卓系統100什麼時候出來的 發布:2024-12-16 02:15:22 瀏覽:609
vivo安卓設置在哪裡 發布:2024-12-16 02:14:44 瀏覽:990
sql拷貝文件 發布:2024-12-16 02:10:32 瀏覽:488
phpajax刷新 發布:2024-12-16 02:09:54 瀏覽:951
安卓手機卡屏了怎麼關機 發布:2024-12-16 01:57:10 瀏覽:67
如何解壓編譯 發布:2024-12-16 01:36:23 瀏覽:465