溫馨提示:您當(dāng)前的瀏覽器版本過(guò)低,存在安全風(fēng)險(xiǎn),建議升級(jí)瀏覽器

  • ? 體驗(yàn)方維系列軟件產(chǎn)品
  • ? 了解最熱的互聯(lián)網(wǎng)資訊
熱門標(biāo)簽
百度地圖 百度地圖 百度地圖 百度地圖 百度地圖 百度地圖 百度地圖
最新資訊

視頻直播技術(shù)趨勢(shì)深度剖析|ECUG精粹系列

2017-03-15 4942

直播技術(shù)是當(dāng)下很受關(guān)注的技術(shù)領(lǐng)域,它開(kāi)啟全新的交互變革。目前,直播技術(shù)的現(xiàn)狀如何?它的技術(shù)細(xì)節(jié)有哪些?下一個(gè)趨勢(shì)會(huì)是什么?本文帶你詳細(xì)了解。

 

直播技術(shù)現(xiàn)狀

 

移動(dòng)直播的主流技術(shù)方案

移動(dòng)直播,PC 和移動(dòng)端不一樣,有很大差異。

 

現(xiàn)在手機(jī)的主流視頻參數(shù)是 360P 640×360 分辨率)、800kbps ,幀率 15-25fps ,延遲 3-6 秒(看到的主播和延遲),編碼方案基本上全是 H.264 ,軟編硬編都有,YY 自身也是軟硬編碼都有。前處理基本的思路都是基于 GPU 的美顏等特效。

 

主流的傳輸方案:上行是RTMP ,下行 FLV  over HTTP ,CDN 云服務(wù)負(fù)責(zé)轉(zhuǎn)發(fā)。當(dāng)然,也有個(gè)別的廠商不一樣,YY 就不一樣,YY 整個(gè)傳輸都是自己寫的,這和業(yè)界完全不同,原因是之前就是做語(yǔ)音傳輸?shù)模菚r(shí)一直是自己做傳輸層,由 UDP 來(lái)實(shí)現(xiàn)傳輸協(xié)議,做視頻的時(shí)候就延續(xù)過(guò)去的技術(shù)傳統(tǒng),所以跟主播廠商不一樣。當(dāng)然,YY支持標(biāo)準(zhǔn)協(xié)議。

 

當(dāng)前直播技術(shù)的困境

 

終端硬件的性能瓶頸

整個(gè)移動(dòng)直播最近兩年很火,曾經(jīng)開(kāi)玩笑稱這個(gè)行業(yè)是被 iPhone6 創(chuàng)造出來(lái)的,沒(méi)有 iPhone6 就沒(méi)有今天的移動(dòng)直播行業(yè)。為什么呢?因?yàn)樵?span lang="EN-US" style="font-size:16px;"> iPhone 之前的手機(jī)根本沒(méi)有辦法拿來(lái)做直播,電池太小、屏幕太小、CPU 主頻太低、性能太差、攝像頭也太差,iPhone 之前的手機(jī)都不能作為一個(gè)合格的直播手機(jī),自從 iPhone 這個(gè)劃時(shí)代的偉大產(chǎn)品出現(xiàn),創(chuàng)造出這個(gè)直播的行業(yè)。但是 iPhone 的性能也卡住了這個(gè)行業(yè)的技術(shù)上限,例如現(xiàn)在 iPhone7 發(fā)布,iPhone7 的性能上限就是整個(gè)行業(yè)各項(xiàng)技術(shù)指標(biāo)的上限,不可能超越它,YY 下一步技術(shù)指標(biāo)再進(jìn)步就只能指望 iPhone8 了。

 

傳輸寬帶的成本

 

算法缺乏成熟的開(kāi)源方案

算法是有的,但是都是從 PC 時(shí)代過(guò)來(lái)的算法,并沒(méi)有對(duì)手機(jī)做單獨(dú)的優(yōu)化,從設(shè)計(jì)之初并沒(méi)有考慮到移動(dòng)視頻或者視頻直播的場(chǎng)景,所以要做大量的改進(jìn)、優(yōu)化、定制。例如回聲消除,當(dāng)時(shí)考慮的是 PC 環(huán)境,對(duì)手機(jī)的環(huán)境適應(yīng)很差,這些需要自己去改。

 

優(yōu)質(zhì)的內(nèi)容制作技術(shù)和互聯(lián)網(wǎng)的鴻溝

優(yōu)質(zhì)內(nèi)容制作手段非常多,比如影視劇、電影電視、廣電部門的綜藝節(jié)目,制作成本相當(dāng)高,拍攝畫面清晰,畫面特效融合得非常好,創(chuàng)作廣電和互聯(lián)網(wǎng)內(nèi)容之間會(huì)產(chǎn)生鴻溝,傳統(tǒng)電視的東西怎么推到互聯(lián)網(wǎng)?他們之間只有很窄的通道即采集卡,輸出到采集卡,從 PC 反采集出去,變成能夠在互聯(lián)網(wǎng)上推流的東西。

 

廣電有嚴(yán)格的標(biāo)準(zhǔn)委員會(huì),有嚴(yán)格的執(zhí)行標(biāo)準(zhǔn),采購(gòu)商按照標(biāo)準(zhǔn)采購(gòu),但是到互聯(lián)網(wǎng)之后并沒(méi)有那么遵守標(biāo)準(zhǔn),或者說(shuō)壓根沒(méi)有什么標(biāo)準(zhǔn),沒(méi)有移動(dòng)直播標(biāo)準(zhǔn)委員會(huì)推廣移動(dòng)直播的標(biāo)準(zhǔn),各家直播出來(lái)的視頻甚至都不互聯(lián)互通。傳統(tǒng)廣電制作的優(yōu)秀內(nèi)容,過(guò)渡到互聯(lián)網(wǎng)這邊就會(huì)有各種各樣的麻煩。

 

直播質(zhì)量的幾個(gè)重要指標(biāo)

視頻畫質(zhì)

主觀畫質(zhì)和客觀畫質(zhì),都有相應(yīng)的算法。

美顏效果

卡頓率,主觀流暢性

有些視頻其實(shí)不卡,偶爾頓一下,或者顯得動(dòng)作不連貫,就是主觀流暢性。

編解碼性能功耗

音視頻延遲

音畫同步率

在唱歌的場(chǎng)景特別重要,口形和聲音對(duì)不上會(huì)認(rèn)為這個(gè)人在假唱。

主觀音質(zhì),PESQ ,POLQA

 

YY 的一些質(zhì)量?jī)?yōu)化成果

 

編碼優(yōu)化

開(kāi)源的項(xiàng)目其實(shí)并不是為移動(dòng)直播和視頻直播做設(shè)計(jì)的,在性能上有巨大的優(yōu)化空間。性能、畫質(zhì)、碼率不可能全部都要,YY 的思路是犧牲其中一項(xiàng)換另外兩項(xiàng)的提升。匯編優(yōu)化能產(chǎn)生一點(diǎn)效果,但是收益比較有限,開(kāi)源項(xiàng)目對(duì)手機(jī)的 SSE  NEON 指令等效果不錯(cuò),但是不會(huì)有太大的進(jìn)步。主要是犧牲少量畫質(zhì)可以換取性能大幅提升,犧牲碼率穩(wěn)定性換取平均碼率降低。在測(cè)試上,YY 更看重總體功耗測(cè)試。在手機(jī)上比較靠譜的是總功耗,即使用一段時(shí)間之后耗了多少電、發(fā)熱多少,這是比較靠譜的。

 

編碼算法性能優(yōu)化

算法的進(jìn)展,移動(dòng)直播主流的碼率是 800kbps ,YY 是針對(duì)800kbps 做的。中等運(yùn)動(dòng)是 800kbps ,優(yōu)化前PSNR 33.994,優(yōu)化后是 33.827,PSNR 降低 0.16% ,性能提升 39.6% ,PSNR降低 0.3 人眼才能看,0.16% 在主觀上是看不出來(lái)的,YY 用零點(diǎn)幾的 PSNR 畫質(zhì)的降低去換性能,編碼算法性能優(yōu)很明顯。

 

編碼性能測(cè)試

單獨(dú)運(yùn)行編碼器的性能不代表實(shí)際使用性能,CPU 占用率不代表實(shí)際功耗。也有人用硬件編碼,但是硬編碼沒(méi)有想象中提升的程度多,硬編碼性能的確比軟編碼好,但是功耗降低并不多。簡(jiǎn)單的對(duì)比測(cè)試,軟編和硬編 CPU 差得很多,軟編是 50% 、60%左右,硬編是 30% 、40% ,耗電相差 3% ,但是硬編畫質(zhì)損失不如軟便畫質(zhì)損失好,取舍權(quán)衡也很難。還是很期待下一代iPhone ,下一代 iPhone CPU 上去了,想嘗試用軟編。

 

美顏效果優(yōu)化的思路

最痛苦的是沒(méi)有評(píng)價(jià)函數(shù),做 IT 的一定要有評(píng)價(jià)函數(shù)。美顏沒(méi)有評(píng)價(jià)函數(shù),完全主觀感受,同一個(gè)東西找不同的人,會(huì)得出天壤之別的結(jié)論。做了一年不知道是否變好了。

 

有一個(gè)思路可以分享:

膚色區(qū)域檢測(cè),保持皮膚的顆粒質(zhì)感,有些開(kāi)源的做直播都帶美顏,磨皮做出來(lái)很虛假,像塑料,人的皮膚不那么平,需要人為地增加一點(diǎn)顆粒感。膚色調(diào)節(jié),人膚色白一點(diǎn)。基于人臉檢測(cè)的自動(dòng)曝光和自動(dòng)白平衡,手機(jī)上有這項(xiàng)功能,但是它不是針對(duì)人臉做的,YY 是基于人臉的自動(dòng)曝光和自動(dòng)白平衡,對(duì)人臉形狀微調(diào),其實(shí)就是瘦臉,可以達(dá)到輕微整形的效果,把下巴兩腮稍微細(xì)一點(diǎn),把人臉的形狀檢測(cè)出來(lái),把圖像一點(diǎn)點(diǎn)扭曲,達(dá)到一點(diǎn)瘦臉的效果。只不過(guò)不敢做得太多,做得太多就有點(diǎn)扭曲時(shí)空的效果,比如把手機(jī)往臉旁邊放一下,手機(jī)的平面是扭曲的。

 

延遲優(yōu)化

1. 編解碼延遲

延遲低總會(huì)有一些代價(jià),綜合考慮采用更小的 GOP ,最長(zhǎng)的時(shí)候 GOP 5 秒多,現(xiàn)在基本上是 2 秒的 GOP ,畫質(zhì)降一些。放棄B  frame ,盡量維持高幀率。

 

2. 接入延遲

接入頻道看屏幕的時(shí)候有一些延遲,涉及到視頻的細(xì)節(jié)。YY 在接入的一剎那音視頻同步放棄掉,不讓它音畫同步,放棄一兩秒音畫同步,把畫面盡量快地播儲(chǔ)量,后面用一個(gè)算法慢慢平滑地追平,用戶一般看不出來(lái)。

 

3. 緩沖延遲

自適應(yīng)低延遲抖動(dòng)緩沖算法,抖動(dòng)緩沖你要寫低延遲的就復(fù)雜,高延遲的好寫。

 

音視頻同步的測(cè)試方法

播放音視頻嚴(yán)格同步的脈沖視頻源,針對(duì)這個(gè)視頻閃一個(gè)白光的同時(shí)再“嘀”一聲,視頻畫面和發(fā)出來(lái)的聲音是完全同步的,把這個(gè)東西做視頻源再看播出來(lái)是否同步。YY 做了這樣一個(gè)設(shè)備,采集光信號(hào)、電信號(hào),把電信號(hào)轉(zhuǎn)成音頻信號(hào),輸入到采集設(shè)備中,原理很簡(jiǎn)單,跟音頻的電信號(hào)做對(duì)比。比出來(lái)的結(jié)果,只要兩個(gè)峰值是對(duì)在一起的,就說(shuō)明音畫同步,如果兩個(gè)峰值錯(cuò)開(kāi)了,即音畫不同步。花幾個(gè)月,把音畫同步壓在了 150 毫秒之內(nèi),廣電的電視音畫同步標(biāo)準(zhǔn)是 90 - 100 毫秒,超過(guò) 175 毫秒人類才能感知。

 

轉(zhuǎn)碼服務(wù)優(yōu)化

2015 年開(kāi)始,作為觀眾來(lái)說(shuō),移動(dòng)端的數(shù)目爆漲。整個(gè)用戶中 60% 用手機(jī)看直播,PC 只占 40% ,而且 PC 的數(shù)據(jù)還在萎縮,手機(jī)仍在增長(zhǎng)。手機(jī)的解碼能力和傳輸能力較低,要求高清內(nèi)容都必須提供轉(zhuǎn)碼,這個(gè)需求也是從 2015 年開(kāi)始爆發(fā)出來(lái)的。原來(lái)的轉(zhuǎn)碼服務(wù)很差,后來(lái)需求太多,只能優(yōu)化。

 

YY 現(xiàn)在的轉(zhuǎn)碼任務(wù)是 80 萬(wàn)/天。轉(zhuǎn)碼任務(wù)是,主播從開(kāi)播到結(jié)束算一個(gè)任務(wù),峰值并發(fā)轉(zhuǎn)碼是 1 萬(wàn)路左右,應(yīng)用 264 編碼優(yōu)化方案,替換 ffmpeg 和 ×264 的線程池,降低線程遷移概率,提高緩存命中率。ffmpeg 和 ×264 是很好的算法,但都是當(dāng)年為了單機(jī)而設(shè)計(jì)的,把十幾個(gè)任務(wù)放在一起,做了一個(gè)改動(dòng),把ffmpeg 和 ×264 換掉了。很有效果,有 20% 30% 的提升。

 

關(guān)于直播技術(shù)趨勢(shì)的思考

 

降低直播成本

未來(lái)兩三年直播成本會(huì)是一個(gè)大問(wèn)題。

提高直播傳輸質(zhì)量

傳輸質(zhì)量是一個(gè)問(wèn)題,碼流會(huì)越來(lái)越高,幀率也會(huì)越來(lái)越高,延遲也會(huì)越來(lái)越高。

強(qiáng)化內(nèi)容生產(chǎn)能力

 

直播成本

 

YY 寬帶成本呈直線上升,2016 年前三季度已經(jīng)突破 5 億。四季度財(cái)報(bào)一出來(lái),很有可能突破 7 億。這樣的帶寬成本上升,還伴隨著很多壓榨帶寬的手段、壓榨采購(gòu)價(jià)格,但是仍然抑制不住帶寬成本的指數(shù)型上升。

 

直播成本優(yōu)化

推動(dòng) HEVC 普及,2013 年年底已經(jīng)有了標(biāo)準(zhǔn)和解決方案,但是整個(gè)產(chǎn)業(yè)環(huán)境不夠成熟;改進(jìn)碼率控制,優(yōu)化特定場(chǎng)景的寬帶;傳輸服務(wù)規(guī)?;?,拉低平均成本?,F(xiàn)在的直播近似固定碼率,在流通方面有些壓榨空間,傳輸?shù)姆?wù)規(guī)模化,對(duì) YY 來(lái)說(shuō)不需要用 CDN ,但是其他直播是用 CDN ,未來(lái) CDN 會(huì)有一場(chǎng)價(jià)格戰(zhàn),通過(guò)合并產(chǎn)生幾家巨頭。規(guī)模越大,單位成本越低,現(xiàn)在 CDN 廠商也不少。

 

YY 所有傳輸?shù)膸捑勺约鹤觯约哼\(yùn)維機(jī)房,自己買機(jī)器。

 

HEVC 進(jìn)展

1. 全平臺(tái)的解決方案(除 Web 外)性能接近 H264

虎牙直播的個(gè)別頻道是 265 的,大概有幾百個(gè)頻道,YY 沒(méi)有全面開(kāi)。因?yàn)榫?span lang="EN-US" style="font-size:16px;"> 265 對(duì)直播的機(jī)器要求比較高,只開(kāi)了幾百個(gè),現(xiàn)在解碼的部分已經(jīng)接近 264 。

 

2. PC 端采用 nVidia Intel 編碼方案已經(jīng)成熟

移動(dòng)端編碼已經(jīng)有少量機(jī)型支持。比如高通 820 以后的芯片。

 

3. 部分第三方的軟編碼器在移動(dòng)端已經(jīng)可以做到360p 實(shí)時(shí)編碼,只是功耗還是過(guò)高,有待進(jìn)一步優(yōu)化

Ittiam 已經(jīng)被 Google 收了一部分,在安卓 5.0 以后的版本內(nèi)置了解碼器,相當(dāng)于開(kāi)源。南方千壹被金山云買了,目前在各項(xiàng)編解碼器的評(píng)估中基本上是世界第一。

 

4. 轉(zhuǎn)碼方案完全支持 HEVC 轉(zhuǎn) 264

 

直播上下行傳輸優(yōu)化

上行 RTMP 優(yōu)化,適應(yīng)弱網(wǎng)絡(luò)環(huán)境和移動(dòng)網(wǎng)格,比如 UDP  tunnel 等。對(duì)主播的網(wǎng)絡(luò)帶寬要求比較高。

 

轉(zhuǎn)發(fā)網(wǎng)絡(luò),DPDK ,智能路由等。YY 經(jīng)常在機(jī)房間轉(zhuǎn)大量的流量,在全國(guó)有幾十家機(jī)房,主播上行是一個(gè)機(jī)房,觀眾是另外一個(gè)機(jī)房,把視頻流量從這個(gè)機(jī)房運(yùn)到另一個(gè)機(jī)房,但是中國(guó)內(nèi)機(jī)房之間的網(wǎng)絡(luò)流量很糟糕,經(jīng)常遇到丟報(bào) 20% 、30% 的情況。所以,YY 自己做了一個(gè)智能路由,有兩三條路由可選,當(dāng)一條不行的時(shí)候趕緊切換,而且這種切換是下層做的,上游不能看見(jiàn),感覺(jué)卡了一下就好了。

 

下行 FLV  over  HTTP ,TCP 加速,為視頻直播優(yōu)化 TCP 擁塞控制。前一陣 Google 公開(kāi)了 BBR 的中塞控制,即使什么都不改也比原來(lái)好用。BBR 相當(dāng)于對(duì)所有的傳輸所做的,YY 會(huì)針對(duì)視頻做,現(xiàn)在能夠做到 20% 、30% 的丟包。

 

Web 端推進(jìn) H5  Video,用 FLV+MSE 替換 Flash Flash 基本上時(shí)日不多了,用一天少一天,因?yàn)?span lang="EN-US" style="font-size:16px;"> Flash 實(shí)在太多缺點(diǎn),也給 YY 惹了不少麻煩。

 

協(xié)議標(biāo)準(zhǔn)化可以讓直播內(nèi)容更開(kāi)放、更容易傳播。相信未來(lái)業(yè)界還是會(huì)走上標(biāo)準(zhǔn)化協(xié)議,YY  自身雖然有自身的協(xié)議,過(guò)去也支持了業(yè)界的標(biāo)準(zhǔn)協(xié)議,可以使用這些協(xié)議跟 YY 的傳輸層連接。

 

強(qiáng)化內(nèi)容生產(chǎn)能力

過(guò)去 YY 在內(nèi)容編碼、傳輸上花費(fèi)了很大力氣,但忽視了內(nèi)容的制作能力?,F(xiàn)在 YY 沒(méi)有一個(gè)靠譜的導(dǎo)播工具,要做多個(gè)視頻源切換、剪輯、疊加都沒(méi)有方便的工具。不過(guò) OBS 不錯(cuò),但是對(duì)于 YY 的直播來(lái)說(shuō)還是有不夠的地方。

 

提供強(qiáng)交互解決方案?,F(xiàn)在還不太有,現(xiàn)在的交互既聊天,再?gòu)?qiáng)一點(diǎn)的暫時(shí)沒(méi)有。

 

PGC 提供更強(qiáng)大的靈活的內(nèi)容生產(chǎn)方式?,F(xiàn)在的視頻直播一般是用戶拿手機(jī)或者電腦,全是UGC ,PGC 有很小的部分比例,原因是 PGC 還面臨很多內(nèi)容制作的困難。其他的內(nèi)容生產(chǎn)方式還包括多路內(nèi)容的實(shí)時(shí)調(diào)度、多人連線直播、專業(yè)印象設(shè)備接入,采集編碼推流的一體化便攜式的解決方案。

 

人臉檢測(cè)和標(biāo)定技術(shù)。優(yōu)化美顏效果和增強(qiáng)現(xiàn)實(shí)特效,人臉檢測(cè)沒(méi)有比較好的開(kāi)源方案,YY 自己在做,現(xiàn)在有第三方廠商提供一些商業(yè)化的方案,但是這些方案仍不夠成熟,還有改進(jìn)的空間。

 

連麥和異地解說(shuō)

兩個(gè)人都是高清和連麥,還是有些麻煩。直播體育賽事,異地解說(shuō),畫面得同步,解說(shuō)怎么跟畫面同步?傳統(tǒng)電視臺(tái)之所以能同步,因?yàn)榻庹f(shuō)員比你更早地看到了賽場(chǎng),把自己的聲音合成之后再給觀眾。所以,傳統(tǒng)的體育賽事解說(shuō)和畫面是同步的,但是對(duì)于互聯(lián)網(wǎng)直播很麻煩,主播所在地點(diǎn)不確定。

 

LiveU 類似的無(wú)線推流設(shè)備

這類設(shè)備沒(méi)有有線網(wǎng),只有 4G ,這套設(shè)備 20 多萬(wàn),而且還有服務(wù)費(fèi),成本降不下來(lái)。

 

基于人臉標(biāo)定的特效

增強(qiáng)現(xiàn)實(shí)特效,現(xiàn)在對(duì) CPU 、GPU 的消耗比較高。MSQRD在業(yè)界做得不錯(cuò),據(jù)說(shuō)被 Facebook 收購(gòu)了。

 

虛擬主播

現(xiàn)在有一些離線軟件已經(jīng)可以做到,比如 FaceRig 、 Live2D ,把人的表情和動(dòng)作投射到 3D 或者 2D 模型上,人只要出聲音即可。這個(gè)有解決方案,但是集成在直播中還是有一些事情要做,比如 VR 、 3D 、全景,解決方案有,技術(shù)原型也有,但是離真正上線仍然還有很多工程細(xì)節(jié)要解決。

 

用直播與世界對(duì)話

直播是互聯(lián)網(wǎng)新型的技術(shù)方式,是全新的視頻方式。之前發(fā)一個(gè)帖子什么時(shí)候看都行,但直播是一個(gè)實(shí)時(shí)的互聯(lián)網(wǎng),跟以前的傳播方式不一樣,是比較新生的事物,配套的產(chǎn)業(yè)技術(shù)仍有待完善。

 


點(diǎn)擊這里了解方維互動(dòng)直播系統(tǒng)

做你自己的直播

知識(shí)服務(wù)精細(xì)化運(yùn)營(yíng)的核心是什么?用戶標(biāo)簽化管理是重點(diǎn)!

微信新推“公眾號(hào)置頂”功能,你不得不知道的潛規(guī)則

VIP專線
18960894629(馬經(jīng)理)
15880086065(鄢經(jīng)理)
18149540797(荊經(jīng)理)
VIP專線
18960894629(馬經(jīng)理)
15880086065(鄢經(jīng)理)
18149540797(荊經(jīng)理)