當前位置:首頁 » 編程軟體 » vc編譯ffmpeg

vc編譯ffmpeg

發布時間: 2022-10-08 21:02:26

❶ 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

❷ 如何在vc程序中使用 ffmpeg 3.3.2

FFmpeg在Windows系統下的編譯過程,分四步:如下:1. 配置編譯環境2. 下載FFMPEG的代碼3. 編譯,獲取FFMPEG庫(頭文件,lib,和DLL)4. 在VC下配置,測試1. 配置編譯環境1)安裝MSys下載文件

❸ 如何在虛擬機中搭建ffmpeg

Static:只包含3個體積很大的exe
Shared:處理3個體積較小的exe之外,還包含了dll動態庫文件
Dev:只包含了開發用的頭文件*.h和導入庫文件*.lib
4.若只需要獲取到可執行文件,下載static版本下來即可。
5.若需要在VC上開發,需要同時下載Shared和Dev,因為我們再VC上開發需要Shared中的dll庫,Dev下的lib和h
6.Visual Studio 2013開發ffmpeg開發環境如下:
#創建項目工程
#在需要開發的項目的工程路徑下新增加include和lib兩個文件夾
#將Dev版本中的頭文件拷貝到新建的include目錄下。否則編譯的時候會提示找不到頭文件。

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:335
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:31
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:942
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:739
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:802
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:510
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:371