1.ffmpeg簡介


1 簡介

2 分析

2.1 大體分析

ffmpeg對媒體文件的總體操作方法為:media file---->demux (解復(fù)用)---->解碼 (decode) ---->YUV/RGB數(shù)據(jù)切黔。

2.2 名詞說明

2.2.1 解復(fù)用

解復(fù)用就是從音視頻信號源中分流出不同的音頻和視頻流晶府。其要達(dá)到的效果就是如下所示:
-----------media data------------------
| -------------------------------|
video streams -------------Audio streams

針對解復(fù)用,也有三種不同的手段:

  • 直接模式

直接從信號源獲取相應(yīng)的音頻或者視頻數(shù)據(jù)。

  • 索引模式

直接模式中如果不包含幀位置元數(shù)據(jù)的信息(或者收錄的實(shí)時流文件),就不能進(jìn)行seek。

  • 緩存模式

解復(fù)用音視頻數(shù)據(jù)妻枕,分別進(jìn)行緩存,然后通過相應(yīng)數(shù)據(jù)流接口獲取數(shù)據(jù)她肯。網(wǎng)絡(luò)流的解復(fù)用使用該種模式佳头。

2.3 協(xié)議說明

2.3.1 RTMP

英文全稱:Real Time Messaging Protocol,也就是實(shí)時消息傳輸晴氨。該協(xié)議基于TCP康嘉,是一個協(xié)議族,包括RTMP基本協(xié)議及RTMPT/RTMPS/RTMPE等多種變種籽前。

3 使用ffmpeg

3.1 編譯安裝

3.1.1 下載SDL

SDL的官方網(wǎng)址為:鏈接
下載到的源碼為:SDL-1.2.15.zip

 $ unzip SDL-1.2.15.zip
 $ cd SDL-1.2.15/
 $  ./configure --prefix=/usr
 $ make
 $ sudo make install

如果提示找不到SDL.h等亭珍,可以在Makefile中添加上:

CFLGAS =-I/usr/include/SDL

關(guān)于最新版本的SDL2.0.5,是不建議安裝的枝哄,因?yàn)樗隽艘恍└囊蘩妫诰幾gffmpeg,使用ffplay的時候挠锥,會出錯众羡。

這里提供從SDL1到SDL2的遷移方法:參看鏈接

note:
在單獨(dú)使用sdl2的時候,如果報錯no avaliable video device等蓖租,需要安裝:

$ sudo apt-get intall xorg-dev
$ ldconfig

3.1.2 下載ffmpeg

ffmpeg的下載地址:鏈接
下載到的源碼為: ffmpeg-3.1.1.tar.bz2

$ tar jxvf ffmpeg-3.1.1.tar.bz2

到config.mak下修改幾行:

 1) 528 !HAVE_SDL=yes改為HAVE_SDL=yes
 2) 648 !CONFIG_SDL=yes改為CONFIG_SDL=yes
 3) 691 !CONFIG_FFPLAY=yes改為CONFIG_FFPLAY=yes
 $ cd ffmpeg-3.1.1/
 $ make
 $ sudo make install

若報錯:


需要安裝yasm

則需要安裝yasm粱侣,可以下載相關(guān)內(nèi)容:下載鏈接
下面的步驟是編譯yasm:

tar xzf yasm-1.3.0.tar.gz cd yasm-1.3.0/
./configure make
$ sudo make install

然后再回到ffmpeg目錄下羊壹,執(zhí)行:

./configure make
$ sudo make install

如果在使用./ffplay的時候,報如下錯誤:

ffplay報錯

這個主要是由于沒有在桌面系統(tǒng)上執(zhí)行命令的原因齐婴。

播放視頻文件油猫,也如以上命令行執(zhí)行方式。

好了柠偶,到這一步情妖,就可以簡單的播放音視頻文件了。

4 編譯ffmpeg4.1

編譯ffmpeg-4.1诱担,如果要編譯工具ffplay毡证,需要做一些修改。
1.修改Makefile该肴,添加如下內(nèi)容

CFLAGS = -I/usr/include/SDL2 -fPIC
LDFLAGS = -L/usr/lib

2.選擇SDL2情竹,并安裝成功。

3.修改ffbuild/config.mak匀哄,將gcc修改為c99秦效。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市涎嚼,隨后出現(xiàn)的幾起案子阱州,更是在濱河造成了極大的恐慌,老刑警劉巖法梯,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件苔货,死亡現(xiàn)場離奇詭異,居然都是意外死亡立哑,警方通過查閱死者的電腦和手機(jī)夜惭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來铛绰,“玉大人诈茧,你說我怎么就攤上這事∥骊” “怎么了敢会?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長这嚣。 經(jīng)常有香客問我鸥昏,道長,這世上最難降的妖魔是什么姐帚? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任吏垮,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘惫皱。我一直安慰自己像樊,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布旅敷。 她就那樣靜靜地躺著,像睡著了一般颤霎。 火紅的嫁衣襯著肌膚如雪媳谁。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天友酱,我揣著相機(jī)與錄音晴音,去河邊找鬼。 笑死缔杉,一個胖子當(dāng)著我的面吹牛锤躁,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播或详,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼系羞,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了霸琴?” 一聲冷哼從身側(cè)響起椒振,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎梧乘,沒想到半個月后澎迎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡选调,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年夹供,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仁堪。...
    茶點(diǎn)故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡哮洽,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出枝笨,到底是詐尸還是另有隱情袁铐,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布横浑,位于F島的核電站剔桨,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏徙融。R本人自食惡果不足惜洒缀,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧树绩,春花似錦萨脑、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至瘫俊,卻和暖如春鹊杖,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背扛芽。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工骂蓖, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人川尖。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓登下,卻偏偏與公主長得像,于是被迫代替她去往敵國和親叮喳。 傳聞我的和親對象是個殘疾皇子被芳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,941評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 教程一:視頻截圖(Tutorial 01: Making Screencaps) 首先我們需要了解視頻文件的一些基...
    90后的思維閱讀 4,698評論 0 3
  • 以下內(nèi)容翻譯自FFmpeg/Wiki/CompilationGuide/MacOSX 原網(wǎng)址可能需要翻墻 在OS ...
    Mr_龍0615閱讀 13,271評論 3 14
  • 最近因?yàn)橐纛l處理的研究,音頻開發(fā),但是有一個難題就是怎么解析與提取音頻的數(shù)據(jù),于是就找到了FFmpeg嘲更】鹬樱基本上只...
    知曰閱讀 231,955評論 9 96
  • 安裝ffmpeg所需要的包 yum install autoconf automake gcc gcc-c++ g...
    李神奇閱讀 3,481評論 0 2
  • 讀史,像是把兒時聽過的故事都串了起來赋朦,不僅揭下了傳說的面紗篓冲,而且體會到一種真實(shí)的無力感,以及面對史實(shí)的悵然宠哄。 比方...
    更向遠(yuǎn)行閱讀 447評論 0 1