直播平臺開發(fā),常用流媒體和視頻傳遞方法
一、直播平臺開發(fā)關(guān)于流媒體的基礎(chǔ)知識
1.流媒體開發(fā),負(fù)責(zé)網(wǎng)絡(luò)層的傳輸,協(xié)議層負(fù)責(zé)網(wǎng)絡(luò)打包,封裝層負(fù)責(zé)編解碼數(shù)據(jù)的封裝,編碼層負(fù)責(zé)圖像、音頻壓縮
2.幀數(shù),每一幀代表一副靜止的畫面
3.GOP,畫面組,一個GOP就是一組連續(xù)的畫面,每個畫面都是一幀,一個GOP就是多個幀數(shù)的合集。直播平臺開發(fā)的直播數(shù)據(jù)中,其實就是在傳遞一組圖片,包括I幀、P幀、B幀等,當(dāng)用戶第一次觀看時,會尋找I幀,而播放器回到服務(wù)器尋找到最近的I幀反饋給用戶,因此GOP增加了端到端之間的延遲
4.碼率,圖片進(jìn)行壓縮后每秒顯示的數(shù)據(jù)量
5.幀率,每秒顯示的圖片數(shù),影響畫面流暢度,與畫面流暢度成正比,也就是說,幀率越大、畫面越流暢;幀率越小,畫面越卡。在游戲、直播平臺開發(fā)中,畫面幀數(shù)只要保持在30幀左右就不會覺得畫面卡頓,最低的幀數(shù)也要在16幀以上,再低了就會明顯感覺到畫面不流暢了
6.分辨率,圖片的尺寸,最常見的分辨率是1920x1080,指的是圖片的長度x寬度
7.視頻文件格式,文件的后綴代表了文件的格式,如avi、mp4等,根據(jù)格式不同,打開的方式也不同,為了方便用戶觀看,直播平臺開發(fā)會統(tǒng)一把視頻更改成mp4格式
?

二、直播平臺開發(fā)視頻傳遞方法
1.畫面采集,通過屏幕捕捉或手機攝像頭等設(shè)備進(jìn)行畫面采集
2.視頻處理,視頻最終是通過GPU一幀一幀的渲染到屏幕上,可以采用opengles對視頻幀進(jìn)行加工處理,從而達(dá)到不同的視頻效果
3.編碼,視頻壓縮編碼標(biāo)準(zhǔn),對視頻進(jìn)行壓縮的編碼技術(shù),比如H.264常用的視頻編碼技術(shù),將視頻像素數(shù)據(jù)壓縮成視頻碼流,從而降低視頻的數(shù)據(jù)量,不經(jīng)壓縮的視頻體積過大會影響傳輸?shù)乃俣?/p>
4.推流,常用的流媒體傳輸協(xié)議RTMP,足以應(yīng)對現(xiàn)在各個播放端口需要的播放協(xié)議,也是直播平臺開發(fā)最常用的傳輸協(xié)議
?

直播平臺開發(fā)用到的流媒體、視頻傳遞等方面的知識遠(yuǎn)不止這些,不過對想要初步了解直播平臺開發(fā)的運營商來說已經(jīng)足夠了。
聲明:以上內(nèi)容為云豹科技作者本人原創(chuàng),未經(jīng)作者本人同意,禁止轉(zhuǎn)載,否則將追究相關(guān)法律責(zé)任