(轉載)FFMPEG 源碼分析(-)

FFMPEG基本概念:

ffmpeg是一個開源的編解碼框架,它提供了一個音視頻錄製,解碼和編碼庫。FFMPEG是在linux下開發的,但也有windows下的編譯版本。 
ffmpeg項目由以下幾部分組成: 
ffmpeg 視頻文件轉換命令行工具,也支持經過實時電視卡抓取和編碼成視頻文件. 
ffserver 基於HTTP(RTSP正在開發中)用於實時廣播的多媒體服務器.也支持時間平移 
ffplay 用 SDL和FFmpeg庫開發的一個簡單的媒體播放器 
libavcodec 一個包含了所有FFmpeg音視頻編解碼器的庫.爲了保證最優性能和高可複用性,大多數編解碼器從頭開發的. 
libavformat 一個包含了所有的普通音視格式的解析器和產生器的庫.

FFMPEG和VLC關係:

在網上很多人都在問FFMPEG和VLC之間是什麼關係,網上有位同學的回答最爲精闢:“VLC VS FFmpeg == 汽車 VS 發動機” 
FFMPEG和libav的關係: 
libav是FFMPEG的開發人員中獨立出來一部分後創建的一個新的工程。當時是因爲在ffmpeg的開發郵件列表中經常會有不同的意見,並且產生爭論之後獨立出來。同時libav開發組將ffmpeg原有的圖標變爲自己的,同時ffmpeg重新開發了圖標:

Today FFmpeg has received the first legal threat in its existence. Its from a previous root admin of FFmpeg, who now is root admin of the Libav fork of FFmpeg. He claims copyright on the zigzag part of our logo. It has to be noted that he said 4 years ago Credit to whoever came up with the zigzag idea

Update May 31/June 1:We have replaced the logo with a better looking one drawn by Hervé Flores.

FFMPEG編譯:

FFMPEG的源碼可以從發下網站中獲取:http://www.ffmpeg.org/。 
編譯選項可以通過源碼中的configure來配置。 
如果要配置外包的包如libfaac,libx264等,可以通過--extra-cflags來指定頭文件的文件夾。可以通過--extra-cflags來指定第三方的庫文件的位置。如果要編譯動態庫則可用--enable-shared配置選項來實現。 
如果想編譯ffplay必須先安裝SDL庫。否則無法編譯出ffplay。 
而對於SDL庫的編譯則同其它linux下的安裝文件一樣。 
而對於第三方庫的安裝網上到處都有說明。

http://www.cnblogs.com/MaxIE/archive/2007/02/03/638863.html

發佈了28 篇原創文章 · 獲贊 6 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章