抖音网红王大炮|美国股市实时行情|212事件视频在线|色偷偷AV亚洲男人的天堂|青青青在线免费|污草莓樱桃丝瓜绿巨人秋榴莲|3根一起会坏掉的好痛

400-887-1095

?
直播技術(shù)原理

一般來(lái)說(shuō),我們常把視頻直播的流程可以分為如下幾步:


采集 —>處理—>編碼和封裝—>傳輸(推流到服務(wù)器、服務(wù)器流分發(fā))—>播放器流播放


簡(jiǎn)單描述起來(lái)就是:主播端把音視頻數(shù)據(jù)采集編碼后通過(guò)CDN網(wǎng)絡(luò)傳送到觀眾端,觀眾進(jìn)行觀看。之前我常拿網(wǎng)絡(luò)購(gòu)物舉例子,視頻直播就相當(dāng)于是把圖像數(shù)據(jù)打包,從一個(gè)地方運(yùn)輸?shù)搅硪粋€(gè)地方。


下面我們就從各個(gè)環(huán)節(jié)簡(jiǎn)單說(shuō)一下技術(shù)原理:


音視頻采集

采集是整個(gè)視頻直播過(guò)程的第一個(gè)環(huán)節(jié),它從系統(tǒng)的采集設(shè)備中獲取原始視頻數(shù)據(jù),將其輸出到下一個(gè)環(huán)節(jié)。視頻的采集涉及兩方面數(shù)據(jù)的采集:音頻采集和圖像采集。


音頻采集


音頻的采集過(guò)程主要通過(guò)設(shè)備將環(huán)境中的模擬信號(hào)采集成 PCM 編碼的原始數(shù)據(jù),然后編碼壓縮成MP3,AAC,HE-AAC,Opus,F(xiàn)LAC,Vorbis (Ogg),Speex 和 AMR等等格式的數(shù)據(jù)分發(fā)出去。音頻采集和編碼主要面臨的挑戰(zhàn)在于:延時(shí)敏感、卡頓敏感、噪聲消除(Denoise)、回聲消除(AEC)、靜音檢測(cè)(VAD)和各種混音算法等。


圖像采集


圖像的采集過(guò)程主要由攝像頭等設(shè)備拍攝成 YUV 編碼的原始數(shù)據(jù),然后經(jīng)過(guò)編碼壓縮成 MP4、3GP、AVI、MKV、WMV、MPG、VOB、FLV、SWF、MOV、RMVB 和 WebM 等等格式的數(shù)據(jù)分發(fā)出去。圖像采集和編碼面臨的主要挑戰(zhàn)在于:設(shè)備兼容性差、延時(shí)敏感、卡頓敏感以及各種對(duì)圖像的處理操作如美顏和水印等。


處理

音視頻數(shù)據(jù)完成采集之后,為了達(dá)到相應(yīng)的現(xiàn)場(chǎng)效果,使視頻畫(huà)面更加的優(yōu)美往往需要加上一些額外的效果。





例如,現(xiàn)在常見(jiàn)的泛娛樂(lè)直播祛斑美顏功能就是必不可少的一項(xiàng)功能,有的還需要加上聲音的一些混淆處理讓音效更加的豐富,滿足直播現(xiàn)場(chǎng)需要的效果。還有的要加logo水印等等,這些都是在編碼壓縮前進(jìn)行處理完成的。


編碼封裝


對(duì)流媒體傳輸來(lái)說(shuō),編碼非常重要,編碼性能、編碼速度和編碼壓縮比會(huì)直接影響整個(gè)流媒體傳輸?shù)挠脩趔w驗(yàn)和傳輸成本。


為什么要編碼?

原始視頻數(shù)據(jù)存儲(chǔ)空間大,而經(jīng)過(guò) H.264 編碼壓縮之后,視頻文件的大小變得非常小,占用帶寬傳輸也很小,滿足了實(shí)時(shí)傳輸?shù)男枨蟆H绻粌H進(jìn)行編碼原始數(shù)據(jù)文件過(guò)于龐大,難以傳輸,更別提無(wú)卡頓、低延遲的直播了。所以從視頻采集傳感器采集來(lái)的原始視頻勢(shì)必要經(jīng)過(guò)視頻編碼。







為什么編碼之后原有的視頻數(shù)據(jù)會(huì)變得這么小呢?其實(shí),這里的核心技術(shù)原理就是去冗余。


視頻圖像數(shù)據(jù)有極強(qiáng)的相關(guān)性,也就是說(shuō)有大量的冗余信息。其中冗余信息可分為空域冗余信息和時(shí)域冗余信息,編碼技術(shù)就是將數(shù)據(jù)中的冗余信息去掉(去除數(shù)據(jù)之間的相關(guān)性)。


(注:H.264是視頻編碼器的一種,常見(jiàn)的有H.264、HEVC/H.265 、VP8 、VP9 、FFmpeg 等)


封裝就是用什么樣容器來(lái)裝編碼之后的數(shù)據(jù),就像物流運(yùn)輸一樣是選用長(zhǎng)方形盒子還是正方形或者是圓形的一樣。目前,流媒體傳輸中主要采用的就是 FLV 和 MPEG2-TS 格式。


視頻直播技術(shù)編碼封裝之后在主播端的任務(wù)基本就完成了


官方微信 關(guān)閉