一般情況下,RTMP推流 +FLV播放的正常延遲在2-3s左右,若您的直播出現(xiàn)延遲時(shí)間過長(zhǎng)的現(xiàn)象,可參考以下方式進(jìn)行性能優(yōu)化。
GOP設(shè)置
GOP:(Group of Pictures)畫面組,一個(gè)GOP就是一組連續(xù)的畫面,每個(gè)畫面都是一幀,一個(gè)GOP就是大量幀的集合。直播的視頻數(shù)據(jù)流,其實(shí)是一系列的視頻幀率組件,包括I幀、P幀等。一個(gè)GOP就是以一個(gè)I幀,多個(gè)P幀開始。當(dāng)用戶第一次觀看的時(shí)候,播放器需要找到I幀才能開始播放,而播放器會(huì)到服務(wù)器尋找到最近的I幀反饋給用戶。因此,減少GOP幀的數(shù)量,能減少播放器加載GOP幀所用的時(shí)間。在直播推流端GOP一般建議設(shè)置為1~2s。
播流協(xié)議選擇
華為云 視頻直播 服務(wù)支持RTMP、HTTP-FLV和HLS三種播放協(xié)議。
RTMP協(xié)議:rtmp://播放域名/AppName/StreamName
FLV協(xié)議:http://播放域名/AppName/StreamName.flv
M3U8協(xié)議:http://播放域名/AppName/StreamName.m3u8

RTMP:其原理是將大塊的視頻幀和音頻幀“剁碎”,然后以小數(shù)據(jù)包的形式進(jìn)行傳輸,且支持加密,因此隱私性相對(duì)比較理想,但由于拆包組包的過程較復(fù)雜,所以在海量并發(fā)時(shí)也容易出現(xiàn)一些不可預(yù)期的穩(wěn)定性問題。
HLS:蘋果推出的流媒體協(xié)議,將視頻分成5-10秒的視頻小分片,然后用m3u8索引表進(jìn)行管理,由于客戶端下載到的視頻都是5-10秒的完整數(shù)據(jù),故視頻的流暢性很好。但一般播放器會(huì)在緩存3-4個(gè)分片后才啟動(dòng)播放,因此也引入了10-30s左右的延時(shí)。
HTTP-FLV:由Adobe公司主推,格式極其簡(jiǎn)單,只是在大塊的視頻幀和音視頻頭部加入一些標(biāo)記頭信息,在延遲表現(xiàn)和大規(guī)模并發(fā)方面都很成熟。但需要注意的是HTTP-FLV在手機(jī)瀏覽器上的支持非常有限。
因此,在降低延時(shí)方面,選擇HTTP-FLV作為播放協(xié)議能有效地降低時(shí)延。但HLS對(duì)瀏覽器兼容比較友好,且支持跨終端,所以HLS也是很多用戶的首選。
現(xiàn)在華為云828活動(dòng)火熱進(jìn)行中,新客直播流量包1TB111.5元/年,快來(lái)華為云一鍵開啟視頻直播加速~
版權(quán)聲明:本文章文字內(nèi)容來(lái)自第三方投稿,版權(quán)歸原始作者所有。本網(wǎng)站不擁有其版權(quán),也不承擔(dān)文字內(nèi)容、信息或資料帶來(lái)的版權(quán)歸屬問題或爭(zhēng)議。如有侵權(quán),請(qǐng)聯(lián)系contentedit@huawei.com,本網(wǎng)站有權(quán)在核實(shí)確屬侵權(quán)后,予以刪除文章。