日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

51Talk音视频技术实践和独特挑战

發布時間:2024/4/11 编程问答 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 51Talk音视频技术实践和独特挑战 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


本文來自51Talk技術總監陳靖在LiveVideoStackCon 2018熱身分享,并由LiveVideoStack整理而成。陳靖回顧了51Talk音視頻技術的演進路線,從最早的QQ、Skype到接入第三方SDK,最后實現大部分功能自研,每個階段都是根據業務需求、研發力量、資金投入等各種條件下的最優選擇。未來,51Talk還會繼續投入自研,完善功能。


文 / 陳靖

整理 / LiveVideoStack

直播回放:

https://www.baijiayun.com/web/playback/index?classid=18082262448202&session_id=201808230&token=DpL1OkBGTopt681rrJ0J_Til14FNfvQ1CRvJqOsq_lxVJRwV6ZuPCmxR_Yy7pAxb9GAzd3EEQgEKp0fXMnVKLQ


今天的分享內容主要分為下面四個部分:


1, 51Talk介紹

2, 音視頻發展歷程

3, 獨特的挑戰

4, 對策與問題


一、51Talk介紹


首先簡單介紹一下中國在線教育的用戶規模和市場規模等情況。



先看一下從2012年到2018年中國在線教育的用戶增長。從上圖中可以看出,從2012年到現在,用戶數量每年都會出現大幅度的增長,在用戶規模擴大的同時,其增長率也在逐年增加。今年預計用戶總規模會達到1.6億,這也就表示平均每十個人里就會有一個在線教育的用戶。


對應在線教育用戶數量的增長,在線教育的市場規模也在同步增長,如下圖:



從圖中可以看出,在2019年,預估市場規模的增長率是有所降低的,由于資本寒冬,預計明年大家要準備打一場硬仗。下面介紹一下在線教育的市場結構:



在線教育的市場結構主要分成四個部分,包括高等學歷在線教育、職業在線教育、中小學在線教育、企業E-learning,目前高等學歷在線教育和職業在線教育的占比正在逐年下降,中小學在線教育的占比則是逐年提高的,而企業的在線教育基本處于穩定的狀態。


51Talk是第一家上市的在線教育公司(2016年6月份),教育內容是英語口語。教育理念是“高頻”,我們認為英語口語類的在線教育內容在”高頻”的情況下才會更有效果,而“高頻”也就對應要求著“低價”,所以我們聘用的菲律賓老師多一些。隨著基礎消費的升級,也逐漸開始選擇少量的歐美老師用以滿足高端的用戶的需求。我們的業務模式除了1對1、1對N之外,還有公開課直播的形式。另外,我們的一個主要特點就是教材和技術均堅持自研,在整個在線教育行業里面,算是比較早進行嘗試的。在一定的情況下,當面對一些比較尖銳的挑戰時,自研是一條必須選擇的道路。


二、音視頻發展歷程



我們從2011年起開始做在線教育,基本上是沿著這條發展歷程走下來的。首先,我們嘗試使用的是Skype和QQ,由于老師一般都在國外,選擇讓老師或者學生裝上Skype/QQ來溝通是一種便捷的方式。但于此同時,存在一個很大的問題是沒有辦法知道上課是否成功以及效果如何,無法保證提供好的用戶服務。從2014年起,我們開始嘗試各種各樣的SDK,試過當時市面上很多主流的SDK,然而效果都不是很好。在2016年下半年的時候,我們開始了自研SDK道路,采用的是基于WebRTC的架構,現在已經基本上98%都是用的自己的SDK。對于下一代SDK,我們會加入更多音視頻算法的研發成果,因為我們這一代的算法SDK落地的情況并不是那么好,只能說相對比較穩定,能滿足當前的需求。


三、獨特的挑戰


1、客戶端平臺的選擇


在客戶端平臺的選擇上,超過90%的老師選擇使用Windows,其余使用的是MacOS;學生端使用的平臺有iOS、Andorid、Windows、MacOS,如下圖:



在前端的實現上就比較困難,因為必須支持所有這些平臺。Windows最讓人頭疼的是版本問題,而且在當前的環境下,尋找合適的Windows工程師也會比較困難。我們的競爭平臺有很多選擇直接用網頁來解決老師端的問題,這樣老師可以在Windows或MacOS任意進行選擇,不過網頁也存在其它問題,有一些特效和比較高端的東西可能就沒有辦法使用了。


2、老師端硬件的噩夢


我們的老師主要是來自菲律賓,而老師的硬件條件是其中一個很大的難題。下圖是菲律賓老師的硬件情況:



上圖是一個CPU跑分的圖,紅色箭頭指向的是我曾經在2012年用過的電腦的跑分,而這卻比將近70%多的老師的CPU都要好,可見老師端的硬件條件有多么的差,低配的電腦搭配的Windows系統也是很老的,電腦里還可能包含很多的病毒,這些都給我們的開發和客戶端帶來很大的挑戰。


3、極端的網絡環境


除了硬件方面的挑戰外,菲律賓的極端網絡情況也給我們帶來很大的困難。

?


上圖是我們記錄的一次網絡故障的的詳細網絡情況,峰值代表事故引起的高延遲,左邊為老師端的網絡情況,右邊為學生端的網絡情況。其中三條線分別表示千分之一、千分之五、百分之一,縱坐標為毫秒。可以看出有約有千分之一的老師,在發生事故時,延遲達到了4秒,即使是在未發生事故時,延遲也達到了2秒,這樣是很難進行交流的。


從菲律賓到香港的專線偶爾會出現事故,比如在去年年底,就曾經出現過專線斷掉超過三周的情況。另外,從老師端到菲律賓的服務器也有很高的延遲,當然通過在菲律賓一段時間的運營,事實上我們也找到了一些比較好的解決方法,而這個方法也算是我們其中一個核心競爭力。此外,我們在國內的核心節點僅有兩個,分布較少,邊緣節點也相對較少,但是未來一定會加大部署力度。現在有一些CDN廠商提供了一種叫做ODN的服務,通過花錢購買可以靈活的選節點來當作邊緣節點,相對比較靈活。


4、市場要求的個性化及人工智能


由于市場要求,我們需要用一些新的技術來吸引用戶,吸引小朋友,尤其現在是轉向青少年在線教育的市場,但這其中也有很多的挑戰。



為了吸引用戶,提升競爭力,我們會發展很多新的技術,自己研發或者跟其它公司進行合作。在上圖中,就是在人臉識別的基礎上加入了美顏以及一些道具,這里涉及到了AI技術,然后還有語音識別等。我們曾經與商湯進行了半年以上時間的合作,嘗試把商湯的技術用在老師端為老師進行美顏,但由于硬件環境差的問題,電腦調用商湯科技的接口就會崩潰,這就使得我們很難應用第三方的這些技術。


5、為什么自研?


數據顯示,我們的音視頻問題有80%以上出現在老師端,奇怪的是,相對來講老師是固定的,那么為什么會出現那么多問題呢?音視頻類問題無非有兩種原因,一種是電腦極其慢,CPU占用太多導致采集都跟不上,一種就是網絡的原因。由于老師數量較多且大部分使用的機器比較舊,可能每天都會有老師端的電腦出現故障,部分老師可能發現了問題但不會馬上解決,這種情況就需要自研怎樣才能快速發現有問題的老師端。另外,對于個性化技術,用第三方的技術可能導致無法與老師端電腦適配,因此也就對應要求我們進行自研。


四、對策與問題


1、對策


主要分為六個方面來說說我們所做的一些工作:


1)WebRTC


我們的客戶端是從Media Engine這一層來做的,相對來講比較底層;媒體轉發這一部分做的是簡化的SFU;編碼器選擇的是VP9,但是用VP9做直播會出現的問題是: CDN廠商對VP9的支持不成熟,現在支持的最好的還是H.264的編碼器。


2)對視頻體驗優化


首先,我們做了前景編碼和背景虛化,最簡單的做法就是結合人臉識別;對于SVC編碼,我們做了時域分層和空域分層,但空域分層沒有上線,因為根據現在的業務需求沒有特別大的視頻,在未來也許會用得上;對于視頻FEC部分,通常編碼一幀出來的結果會比較大,一個包放不下,這種情況下會拆分為幾個包,然后對其進行FEC,但我們的場景下做法會有不同,未來有機會可以單獨再做一次分享;最后是精彩片段提取,我們在流媒體框架加了一個錄制,錄制完成后,會根據一些語音、語速等截取一些比較好的片段。


3)對語音的優化


對語音的優化主要體現在前處理,包括降噪和回聲消除,降噪等。我們的降噪處理現在是跟第三方合作的,是結合人工智能進行降噪處理,但是回聲消除這塊就是只有我們自己做,沒有跟任何人合作,事實上我們曾經嘗試過第三方的回聲消除,但效果并不是特別好。另外一個是動態碼率,對于語音編碼會插入一些冗余,可能會是50%、一倍或者幾倍的冗余,如果在帶寬很小的情況下,插入冗余會導致體驗變差,而動態碼率的想法很簡單,如果丟包很少就不要插入太多冗余。


4)流媒體架構


這一部分包含基于旁路的錄制、監控、直播;對于錄制,以前是在客戶端完成,而現在是在服務端完成。


5)人工智能


主要包括人臉識別、語速檢測、口語打分等。

? ? ? ? ??

6)算法性能優化


算法性能的優化是我們比較強的一部分,我們有一些原來做DSP工作的同事,算法級和匯編級的優化都做得很好,所以說在人臉識別和語速檢測這塊都是自己做了SSE、Intrinsic、ARM優化,GPU這塊我們現在還沒做,未來如果有需要會去做的,此外,GPGPU如果未來有需要的話也可以做。


2、問題


接下來我們思考幾個這個行業里的問題:


1)技術能否徹底解決硬件和網絡問題?


對于音視頻技術或者說整個技術能不能徹底解決硬件和網絡的問題,事實上是很難的,大家想一想剛才提到的在老師端的那些大“坑”,實際上你會發現在這塊應該去結合運營去做,包括產品運營、老師運營、學生運營,這樣才能發揮技術最大的價值,比如說要想搞定老師的電腦,可能從國內搞一批二手電腦過去,直接把老師的電腦提升一個檔次,我們的競爭平臺就沒有這個煩惱,事實上,對于技術是很希望有強大的運營支持,能夠把我們有些特別大的坑或者沒有意義的工作直接給跳過,要不然真的浪費時間。


2)老師是員工還是用戶?


這個事實上是我們公司的一個問題,就是我們即把老師當成員工,也會把他當成用戶,當成用戶是因為老師的留存是一個重要的問題。然而如果把老師當成員工,事實上你必須對他有要求,要求更新電腦、網絡,家里裝的是幾兆寬帶等。


3)在線教育的產品到底是什么?


作為一個在線教育的公司,如何去思考在線教育的產品到底是什么呢?它是我們做出的音視頻平臺嗎?很多人都會說不是,也許一套好的教育流程、好的教育方法甚至好的老師才是在線教育這個行業一個最本質的產品,這就是為什么作為技術人員,有時會感覺到做的東西并不是公司最核心的,更多還是起到一個支撐作用,但是我還是呼吁大家更多的加入在線教育這個行業,這個行業真的是朝陽行業,有很大的潛力。現在在線教育的公司有兩種定位,一種是科技教育公司,一種是教育科技公司,如果你定位是教育科技公司,那么你的本質是科技公司,比如好未來給自己的定位就是那樣,這樣一來,我覺得他們的技術走的就會很快,因為技術本身會給自己提需求,決定要上哪些功能,因為技術人員知道這個功能是好的,是代表一個先進的技術;如果你定位成一個科技教育公司,那你的視角就完全不一樣了。


總結

以上是生活随笔為你收集整理的51Talk音视频技术实践和独特挑战的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。