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

編譯視頻文字特效

發布時間: 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

熱點內容
不用internet打開ftp 發布:2025-05-15 23:06:00 瀏覽:153
sql字元串取數字 發布:2025-05-15 22:57:45 瀏覽:124
推薦編程課 發布:2025-05-15 22:34:12 瀏覽:618
表拒絕訪問 發布:2025-05-15 22:29:37 瀏覽:978
電腦怎樣解壓文件 發布:2025-05-15 22:25:32 瀏覽:439
dns伺服器怎麼看 發布:2025-05-15 22:17:27 瀏覽:151
3dm的壓縮包 發布:2025-05-15 22:09:23 瀏覽:662
和存儲字長 發布:2025-05-15 21:54:09 瀏覽:515
用什麼寫c語言 發布:2025-05-15 21:35:56 瀏覽:418
linux讀取u盤 發布:2025-05-15 21:32:13 瀏覽:508