android音視頻基礎(chǔ)知識(shí)

? ? ? ?今天很開心雀监,開始了我的第一篇技術(shù)博客了野哭,之前一直沒有寫博客在塔,一方面是感覺沒什么好寫的,自己也沒有什么好分享的拨黔,還有可能就是自己比較懶吧蛔溃;但是最近在一家新的公司學(xué)習(xí)到了好多,發(fā)現(xiàn)自己在總結(jié)方面的知識(shí)比較薄弱,所以為了鍛煉自己贺待,也給自己的技術(shù)做一個(gè)總結(jié)徽曲,上上周就做了個(gè)計(jì)劃一周寫一篇技術(shù)博客的,但是一直沒空寫麸塞,所以就拖到今天了秃臣,為什么是今天呢?因?yàn)镮G奪冠了哪工,哈哈奥此,好了,閑話不多說了雁比,開始我們今天的分享吧稚虎。

一、視頻的處理流程

視頻編碼的主要作用是將視頻像素?cái)?shù)據(jù)(RGB偎捎,YUV等)壓縮成為視頻碼流蠢终,從而降低視頻的數(shù)據(jù)量

當(dāng)前使用最多的視頻編碼方案就是H.264,因?yàn)檫@個(gè)編碼標(biāo)準(zhǔn)是當(dāng)前視頻編碼效率最高的

H.264僅僅是一個(gè)編碼標(biāo)準(zhǔn)鸭限,而不是一個(gè)具體的編碼器

下一代的編解碼標(biāo)準(zhǔn)就要數(shù)HEVC和VP9了蜕径。VP9是Google繼VP8之后推出的新一代標(biāo)準(zhǔn)。VP9和HEVC相比败京,要稍微遜色一些兜喻。

音頻編碼的主要作用是將音頻采樣數(shù)據(jù)(PCM等)壓縮成為音頻碼流,從而降低音頻的數(shù)據(jù)量

音頻編碼技術(shù)近期絕大部分的改動(dòng)都是在MP3的繼任者——AAC的基礎(chǔ)上完成的赡麦。

AAC是當(dāng)前音頻編碼效率最高的音頻編碼標(biāo)準(zhǔn)

現(xiàn)有網(wǎng)絡(luò)音視頻平臺(tái)視頻編碼基本都是用h.264 ,音頻編碼基本都是用AAC朴皆,點(diǎn)播平臺(tái)也是這樣

封裝格式就是把視頻數(shù)據(jù)和音頻數(shù)據(jù)打包成一個(gè)文件的規(guī)范(就是把視頻碼流和音頻碼流合成一個(gè)文件)

有些封裝格式支持的視音頻編碼標(biāo)準(zhǔn)十分廣泛,應(yīng)該算比較優(yōu)秀的封裝格式泛粹,比如MKV遂铡;而有些封裝格式支持的視音頻編碼標(biāo)準(zhǔn)很少,應(yīng)該屬于落后的封裝格式晶姊,比如RMVB扒接。

流媒體協(xié)議是服務(wù)器與客戶端之間通信遵循的規(guī)定,主要有HTTP们衙?钾怔、RTMP、RTSP蒙挑、RTMFP

HTTP將所有的數(shù)據(jù)作為文件做處理宗侦。http協(xié)議不是流媒體協(xié)議。

RTMP和RTSP協(xié)議是流媒體協(xié)議忆蚀。


這是現(xiàn)在直播平臺(tái)使用的參數(shù)對(duì)比矾利,流媒體協(xié)議為什么使用rtmp呢姑裂?

采用RTMP作為直播協(xié)議的好處在于其被Flash播放器支持。而Flash播放器如今已經(jīng)安裝在全球99%的電腦上男旗,并且與瀏覽器結(jié)合的很好舶斧。因此這種流媒體直播平臺(tái)可以實(shí)現(xiàn)“無插件直播”,極大的簡化了客戶端的操作剑肯。封裝格式捧毛,視頻編碼,音頻編碼方面让网,無一例外的使用了FLV + H.264 + AAC的組合。FLV是RTMP使用的封裝格式师痕,H.264是當(dāng)今實(shí)際應(yīng)用中編碼效率最高的視頻編碼標(biāo)準(zhǔn)溃睹,AAC則是當(dāng)今實(shí)際應(yīng)用中編碼效率最高的音頻編碼標(biāo)準(zhǔn)。視頻播放器方面胰坟,都使用了Flash播放器因篇。


可以看出,點(diǎn)播服務(wù)普遍采用了HTTP作為流媒體協(xié)議笔横,H.264作為視頻編碼格式竞滓,AAC作為音頻編碼格式。采用HTTP作為點(diǎn)播協(xié)議有以下兩點(diǎn)優(yōu)勢:一方面吹缔,HTTP是基于TCP協(xié)議的應(yīng)用層協(xié)議商佑,媒體傳輸過程中不會(huì)出現(xiàn)丟包等現(xiàn)象,從而保證了視頻的質(zhì)量厢塘;另一方面茶没,HTTP被絕大部分的Web服務(wù)器支持,因而流媒體服務(wù)機(jī)構(gòu)不必投資購買額外的流媒體服務(wù)器晚碾,從而節(jié)約了開支抓半。點(diǎn)播服務(wù)采用的封裝格式有多種:MP4,F(xiàn)LV格嘁,F(xiàn)4V等笛求,它們之間的區(qū)別不是很大。視頻編碼標(biāo)準(zhǔn)和音頻編碼標(biāo)準(zhǔn)是H.264和AAC糕簿。這兩種標(biāo)準(zhǔn)分別是當(dāng)今實(shí)際應(yīng)用中編碼效率最高的視頻標(biāo)準(zhǔn)和音頻標(biāo)準(zhǔn)探入。視頻播放器方面,無一例外的都使用了Flash播放器冶伞。

視頻播放器播放一個(gè)互聯(lián)網(wǎng)上的視頻文件新症,需要經(jīng)過以下幾個(gè)步驟:解協(xié)議,解封裝响禽,解碼視音頻徒爹,視音頻同步荚醒。如果播放本地文件則不需要解協(xié)議,為以下幾個(gè)步驟:解封裝隆嗅,解碼視音頻界阁,視音頻同步。他們的過程如圖所示胖喳。

解協(xié)議的作用泡躯,就是將流媒體協(xié)議的數(shù)據(jù),解析為標(biāo)準(zhǔn)的相應(yīng)的封裝格式數(shù)據(jù)丽焊。視音頻在網(wǎng)絡(luò)上傳播的時(shí)候较剃,常常采用各種流媒體協(xié)議,例如HTTP技健,RTMP写穴,或是MMS等等。這些協(xié)議在傳輸視音頻數(shù)據(jù)的同時(shí)雌贱,也會(huì)傳輸一些信令數(shù)據(jù)啊送。這些信令數(shù)據(jù)包括對(duì)播放的控制(播放,暫停欣孤,停止)馋没,或者對(duì)網(wǎng)絡(luò)狀態(tài)的描述等。解協(xié)議的過程中會(huì)去除掉信令數(shù)據(jù)而只保留視音頻數(shù)據(jù)降传。例如篷朵,采用RTMP協(xié)議傳輸?shù)臄?shù)據(jù),經(jīng)過解協(xié)議操作后搬瑰,輸出FLV格式的數(shù)據(jù)款票。

解封裝的作用,就是將輸入的封裝格式的數(shù)據(jù)泽论,分離成為音頻流壓縮編碼數(shù)據(jù)和視頻流壓縮編碼數(shù)據(jù)艾少。封裝格式種類很多,例如MP4翼悴,MKV缚够,RMVB,TS鹦赎,F(xiàn)LV谍椅,AVI等等,它的作用就是將已經(jīng)壓縮編碼的視頻數(shù)據(jù)和音頻數(shù)據(jù)按照一定的格式放到一起古话。例如雏吭,F(xiàn)LV格式的數(shù)據(jù),經(jīng)過解封裝操作后陪踩,輸出H.264編碼的視頻碼流和AAC編碼的音頻碼流杖们。

解碼的作用悉抵,就是將視頻/音頻壓縮編碼數(shù)據(jù),解碼成為非壓縮的視頻/音頻原始數(shù)據(jù)摘完。音頻的壓縮編碼標(biāo)準(zhǔn)包含AAC姥饰,MP3,AC-3等等孝治,視頻的壓縮編碼標(biāo)準(zhǔn)則包含H.264列粪,MPEG2,VC-1等等谈飒。解碼是整個(gè)系統(tǒng)中最重要也是最復(fù)雜的一個(gè)環(huán)節(jié)岂座。通過解碼,壓縮編碼的視頻數(shù)據(jù)輸出成為非壓縮的顏色數(shù)據(jù)步绸,例如YUV420P掺逼,RGB等等;壓縮編碼的音頻數(shù)據(jù)輸出成為非壓縮的音頻抽樣數(shù)據(jù)瓤介,例如PCM數(shù)據(jù)。

視音頻同步的作用赘那,就是根據(jù)解封裝模塊處理過程中獲取到的參數(shù)信息刑桑,同步解碼出來的視頻和音頻數(shù)據(jù),并將視頻音頻數(shù)據(jù)送至系統(tǒng)的顯卡和聲卡播放出來募舟。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末祠斧,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子拱礁,更是在濱河造成了極大的恐慌琢锋,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件呢灶,死亡現(xiàn)場離奇詭異吴超,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)鸯乃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人斜纪,你說我怎么就攤上這事徘铝。” “怎么了奖年?”我有些...
    開封第一講書人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵细诸,是天一觀的道長。 經(jīng)常有香客問我陋守,道長震贵,這世上最難降的妖魔是什么利赋? 我笑而不...
    開封第一講書人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮屏歹,結(jié)果婚禮上隐砸,老公的妹妹穿的比我還像新娘。我一直安慰自己蝙眶,他們只是感情好季希,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著幽纷,像睡著了一般式塌。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上友浸,一...
    開封第一講書人閱讀 49,007評(píng)論 1 284
  • 那天峰尝,我揣著相機(jī)與錄音,去河邊找鬼收恢。 笑死武学,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的伦意。 我是一名探鬼主播火窒,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼驮肉!你這毒婦竟也來了熏矿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤离钝,失蹤者是張志新(化名)和其女友劉穎票编,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體卵渴,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡慧域,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了奖恰。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吊趾。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖瑟啃,靈堂內(nèi)的尸體忽然破棺而出论泛,到底是詐尸還是另有隱情,我是刑警寧澤蛹屿,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布屁奏,位于F島的核電站,受9級(jí)特大地震影響错负,放射性物質(zhì)發(fā)生泄漏坟瓢。R本人自食惡果不足惜勇边,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望折联。 院中可真熱鬧粒褒,春花似錦、人聲如沸诚镰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽清笨。三九已至月杉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間抠艾,已是汗流浹背苛萎。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留检号,地道東北人腌歉。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像齐苛,于是被迫代替她去往敵國和親究履。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

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