www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > > 充電吧
[導(dǎo)讀]低延時(shí)直播應(yīng)用直播應(yīng)用中,RTMP和HLS基本上可以覆蓋所有客戶端觀看,HLS主要是延時(shí)比較大,RTMP主要優(yōu)勢(shì)在于延時(shí)低。應(yīng)用場(chǎng)景低延時(shí)應(yīng)用場(chǎng)景包括:互動(dòng)式直播:譬如2013年大行其道的美女主播,游

低延時(shí)直播應(yīng)用

直播應(yīng)用中,RTMP和HLS基本上可以覆蓋所有客戶端觀看,HLS主要是延時(shí)比較大,RTMP主要優(yōu)勢(shì)在于延時(shí)低。

應(yīng)用場(chǎng)景

低延時(shí)應(yīng)用場(chǎng)景包括:

互動(dòng)式直播:譬如2013年大行其道的美女主播,游戲直播等等各種主播,流媒體分發(fā)給用戶觀看。用戶可以文字聊天和主播互動(dòng)。視頻會(huì)議:SRS的DEMO就有視頻會(huì)議應(yīng)用,我們要是有同事出差在外地,就用這個(gè)視頻會(huì)議開內(nèi)部會(huì)議。其實(shí)會(huì)議1秒延時(shí)無(wú)所謂,因?yàn)槿思抑v完話后,其他人需要思考,思考的延時(shí)也會(huì)在1秒左右。當(dāng)然如果用視頻會(huì)議吵架就不行。其他:監(jiān)控,直播也有些地方需要對(duì)延遲有要求,互聯(lián)網(wǎng)上RTMP協(xié)議的延遲基本上能夠滿足要求。 RTMP和延時(shí)

RTMP的特點(diǎn)如下:

Adobe支持得很好:RTMP實(shí)際上是現(xiàn)在編碼器輸出的工業(yè)標(biāo)準(zhǔn)協(xié)議,基本上所有的編碼器(攝像頭之類)都支持RTMP輸出。原因在于PC市場(chǎng)巨大,PC主要是Windows,Windows的瀏覽器基本上都支持flash,F(xiàn)lash又支持RTMP支持得灰常好。適合長(zhǎng)時(shí)間播放:因?yàn)镽TMP支持的很完善,所以能做到flash播放RTMP流長(zhǎng)時(shí)間不斷流,當(dāng)時(shí)測(cè)試是100萬(wàn)秒,即10天多可以連續(xù)播放。對(duì)于商用流媒體應(yīng)用,客戶端的穩(wěn)定性當(dāng)然也是必須的,否則最終用戶看不了還怎么玩?我就知道有個(gè)教育客戶,最初使用播放器播放http流,需要播放不同的文件,結(jié)果就總出問(wèn)題,如果換成服務(wù)器端將不同的文件轉(zhuǎn)換成RTMP流,客戶端就可以一直播放;該客戶走RTMP方案后,經(jīng)過(guò)CDN分發(fā),沒聽說(shuō)客戶端出問(wèn)題了。延遲較低:比起YY的那種UDP私有協(xié)議,RTMP算延遲大的(延遲在1-3秒),比起HTTP流的延時(shí)(一般在10秒以上)RTMP算低延時(shí)。一般的直播應(yīng)用,只要不是電話類對(duì)話的那種要求,RTMP延遲是可以接受的。在一般的視頻會(huì)議(參考SRS的視頻會(huì)議延時(shí))應(yīng)用中,RTMP延時(shí)也能接受,原因是別人在說(shuō)話的時(shí)候我們一般在聽,實(shí)際上1秒延時(shí)沒有關(guān)系,我們也要思考(話說(shuō)有些人的CPU處理速度還沒有這么快)。有累積延遲:技術(shù)一定要知道弱點(diǎn),RTMP有個(gè)弱點(diǎn)就是累積誤差,原因是RTMP基于TCP不會(huì)丟包。所以當(dāng)網(wǎng)絡(luò)狀態(tài)差時(shí),服務(wù)器會(huì)將包緩存起來(lái),導(dǎo)致累積的延遲;待網(wǎng)絡(luò)狀況好了,就一起發(fā)給客戶端。這個(gè)的對(duì)策就是,當(dāng)客戶端的緩沖區(qū)很大,就斷開重連。當(dāng)然SRS也提供配置。 HLS低延時(shí)

主要有人老是問(wèn)這個(gè)問(wèn)題,如何降低HLS延遲。

HLS解決延時(shí),就像是爬到楓樹上去捉魚,奇怪的是還有人喊,看那,有魚。你說(shuō)是怎么回事。

我只能說(shuō)你在參與謙哥的魔術(shù)表演,錯(cuò)覺罷了。

如果你真的確信有,請(qǐng)用實(shí)際測(cè)量的圖片來(lái)展示出來(lái),參考下面延遲的測(cè)量。

RTMP延遲的測(cè)量

如何測(cè)量延時(shí),是個(gè)很難的問(wèn)題,不過(guò)有個(gè)行之有效的方法,就是用手機(jī)的秒表,可以比較精確的對(duì)比延時(shí)。參考:RTMP延時(shí)測(cè)量

經(jīng)過(guò)測(cè)量發(fā)現(xiàn),在網(wǎng)絡(luò)狀況良好時(shí):

RTMP延時(shí)可以做到0.8秒左右(SRS也可以)。多級(jí)邊緣節(jié)點(diǎn)不會(huì)影響延遲(和SRS同源的某CDN的邊緣服務(wù)器可以做到)Nginx-Rtmp延遲有點(diǎn)大,估計(jì)是緩存的處理,多進(jìn)程通信導(dǎo)致?GOP是個(gè)硬指標(biāo),不過(guò)SRS可以關(guān)閉GOP的cache來(lái)避免這個(gè)影響,參考后面的配置方法。服務(wù)器性能太低,也會(huì)導(dǎo)致延遲變大,服務(wù)器來(lái)不及發(fā)送數(shù)據(jù)??蛻舳说木彌_區(qū)長(zhǎng)度也影響延遲。譬如flash客戶端的NetStream.bufferTime設(shè)置為10秒,那么延遲至少10秒以上。 GOP-Cache

什么是GOP?就是視頻流中兩個(gè)I幀的時(shí)間距離。

GOP有什么影響?Flash(解碼器)只有拿到GOP才能開始解碼播放。也就是說(shuō),服務(wù)器一般先給一個(gè)I幀給Flash。可惜問(wèn)題來(lái)了,假設(shè)GOP是10秒,也就是每隔10秒才有關(guān)鍵幀,如果用戶在第5秒時(shí)開始播放,會(huì)怎么樣?

第一種方案:等待下一個(gè)I幀,也就是說(shuō),再等5秒才開始給客戶端數(shù)據(jù)。這樣延遲就很低了,總是實(shí)時(shí)的流。問(wèn)題是:等待的這5秒,會(huì)黑屏,現(xiàn)象就是播放器卡在那里,什么也沒有,有些用戶可能以為死掉了,就會(huì)刷新頁(yè)面??傊承┛蛻魰?huì)認(rèn)為等待關(guān)鍵幀是個(gè)不可饒恕的錯(cuò)誤,延時(shí)有什么關(guān)系?我就希望能快速啟動(dòng)和播放視頻,最好打開就能放!

第二種方案:馬上開始放,放什么呢?你肯定知道了,放前一個(gè)I幀。也就是說(shuō),服務(wù)器需要總是cache一個(gè)gop,這樣客戶端上來(lái)就從前一個(gè)I幀開始播放,就可以快速啟動(dòng)了。問(wèn)題是:延遲自然就大了。

有沒有好的方案?有!至少有兩種:

編碼器調(diào)低GOP,譬如0.5秒一個(gè)GOP,這樣延遲也很低,也不用等待。壞處是編碼器壓縮率會(huì)降低,圖像質(zhì)量沒有那么好。服務(wù)器提供配置,可以選擇前面兩個(gè)方案之一:SRS就這么做,有個(gè)gop_cache配置項(xiàng),on就會(huì)馬上播放,off就低延遲。

SRS的配置項(xiàng):

#?the?listen?ports,?split?by?space.
listen??????????????1935;
vhost?__defaultVhost__?{
????#?whether?cache?the?last?gop.
????#?if?on,?cache?the?last?gop?and?dispatch?to?client,
????#???to?enable?fast?startup?for?client,?client?play?immediately.
????#?if?off,?send?the?latest?media?data?to?client,
????#???client?need?to?wait?for?the?next?Iframe?to?decode?and?show?the?video.
????#?set?to?off?if?requires?min?delay;
????#?set?to?on?if?requires?client?fast?startup.
????#?default:?on
????gop_cache???????on;
}

備注:參考conf/full.conf的min.delay.com配置。

累積延遲

除了GOP-Cache,還有一個(gè)有關(guān)系,就是累積延遲。SRS可以配置直播隊(duì)列的長(zhǎng)度,服務(wù)器會(huì)將數(shù)據(jù)放在直播隊(duì)列中,如果超過(guò)這個(gè)長(zhǎng)度就清空到最后一個(gè)I幀:

vhost?your_vhost?{
????#?the?max?live?queue?length?in?seconds.
????#?if?the?messages?in?the?queue?exceed?the?max?length,?
????#?drop?the?old?whole?gop.
????#?default:?30
????queue_length????10;
}

當(dāng)然這個(gè)不能配置太小,譬如GOP是1秒,queue_length是1秒,這樣會(huì)導(dǎo)致有1秒數(shù)據(jù)就清空,會(huì)導(dǎo)致跳躍。

有更好的方法?有的。延遲基本上就等于客戶端的緩沖區(qū)長(zhǎng)度,因?yàn)檠舆t大多由于網(wǎng)絡(luò)帶寬低,服務(wù)器緩存后一起發(fā)給客戶端,現(xiàn)象就是客戶端的緩沖區(qū)變大了,譬如NetStream.BufferLength=5秒,那么說(shuō)明緩沖區(qū)中至少有5秒數(shù)據(jù)。

處理累積延遲的最好方法,是客戶端檢測(cè)到緩沖區(qū)有很多數(shù)據(jù)了,如果可以的話,就重連服務(wù)器。當(dāng)然如果網(wǎng)絡(luò)一直不好,那就沒有辦法了。

低延時(shí)配置


考慮GOP-Cache和累積延遲,推薦的低延時(shí)配置如下(參考min.delay.com):

#?the?listen?ports,?split?by?space.
listen??????????????1935;
vhost?__defaultVhost__?{
????#?whether?cache?the?last?gop.
????#?if?on,?cache?the?last?gop?and?dispatch?to?client,
????#???to?enable?fast?startup?for?client,?client?play?immediately.
????#?if?off,?send?the?latest?media?data?to?client,
????#???client?need?to?wait?for?the?next?Iframe?to?decode?and?show?the?video.
????#?set?to?off?if?requires?min?delay;
????#?set?to?on?if?requires?client?fast?startup.
????#?default:?on
????gop_cache???????off;
????#?the?max?live?queue?length?in?seconds.
????#?if?the?messages?in?the?queue?exceed?the?max?length,?
????#?drop?the?old?whole?gop.
????#?default:?30
????queue_length????10;
}

當(dāng)然,服務(wù)器的性能也要考慮,不可以讓一個(gè)SRS進(jìn)程跑太高帶寬,一般CPU在80%以下不會(huì)影響延遲。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉