• <strike id="fdgpu"><input id="fdgpu"></input></strike>
    <label id="fdgpu"></label>
    <s id="fdgpu"><code id="fdgpu"></code></s>

  • <label id="fdgpu"></label>
  • <span id="fdgpu"><u id="fdgpu"></u></span>

    <s id="fdgpu"><sub id="fdgpu"></sub></s>
    您當前的位置是:  首頁(yè) > 新聞 > 文章精選 >
     首頁(yè) > 新聞 > 文章精選 >

    實(shí)時(shí)語(yǔ)音視頻通話(huà)SDK如何實(shí)現聽(tīng)聲辨位

    2017-11-07 16:17:38   作者:冼牛   來(lái)源:CTI論壇   評論:0  點(diǎn)擊:


      通過(guò)聽(tīng)聲音可以辨別聲源的位置,這是我們習以為常的生活認知。從技術(shù)的角度來(lái)說(shuō),聽(tīng)聲辨位其實(shí)真的一點(diǎn)都不簡(jiǎn)單。我們人類(lèi)應該感謝上天的造化,賦予我們一雙巧奪天工的耳朵,讓我們可以毫不費力地做到聽(tīng)聲辨位。在語(yǔ)音視頻實(shí)時(shí)通信的世界里,要實(shí)現聽(tīng)聲辨位,卻是要耗費一番心思的事情。
      雙耳效應
      關(guān)于人耳聽(tīng)聲辨位的原理,這里不再贅述。有需要了解的同學(xué)請自行搜索“雙耳效應”問(wèn)度娘。簡(jiǎn)單地來(lái)說(shuō),聽(tīng)聲辨位的基礎是左右耳朵從同一聲源獲得的聲音信息有細微的差別:
    1. 到達左右耳朵的時(shí)間不一樣
    2. 在左右耳朵空間上的相位不一樣
    3. 音色(頻率)不一樣
    4. 音級(波幅)不一樣
      人腦和雙耳就是根據這兩組聲音信息的細微區別,判斷出聲源的位置的。
      人類(lèi)的雙耳在自然環(huán)境進(jìn)行聽(tīng)聲辨位,已經(jīng)有過(guò)數百萬(wàn)年的實(shí)戰經(jīng)驗,以至于我們認為這是理所當然的事情。然而,隨著(zhù)科技的發(fā)展,我們習以為常的認知遇到了突而其來(lái)的挑戰。
      二十世紀初遇到的第一個(gè)有代表性的挑戰是留聲機。立體聲技術(shù)較好地為模擬聲音解決了立體音效的問(wèn)題。基礎的立體聲技術(shù)是采用兩個(gè)麥克風(fēng)進(jìn)行拾音,獲得兩組波形獨立的聲音信號,然后進(jìn)行獨立的處理,在播放的時(shí)候采用兩個(gè)揚聲器獨立地播放這兩組聲音信號。這樣,從播放端的角度來(lái)說(shuō),用戶(hù)聽(tīng)到的是聲音本身的立體音效和用戶(hù)周遭空間的立體音效的疊加,能夠達到聽(tīng)聲辨位的效果。
      二十一世紀的前二十年,語(yǔ)音視頻實(shí)時(shí)通信遇到了移動(dòng)互聯(lián)網(wǎng),立體聲技術(shù)也遇到技術(shù)限制。這些技術(shù)限制其實(shí)和應用場(chǎng)景有關(guān)系。
      聽(tīng)聲辨位的應用場(chǎng)景
      第一個(gè)要提的是游戲場(chǎng)景,如果不是最重要,也是最重要之一。游戲可以分為競技類(lèi)的和休閑類(lèi)的。兩類(lèi)游戲對聽(tīng)聲辨位的要求也不盡相同。
      競技類(lèi)的游戲,包括眾多玩家耳熟能詳的MMORPG、MOBA和FPS。玩過(guò)CS的同學(xué)都知道,在虛擬場(chǎng)景中是能聽(tīng)到周遭其它玩家的腳步聲的,聽(tīng)聲辨位很多時(shí)候比視野更加有效地幫助玩家判斷其它玩家在哪里,這往往是殺敵制勝和脫險保命的關(guān)鍵手段。現在實(shí)時(shí)游戲語(yǔ)音技術(shù)可以讓玩家在CS中和隊友一邊并肩作戰一邊對話(huà)溝通。如果玩家通過(guò)游戲語(yǔ)音通話(huà)判斷出隊友的位置和通過(guò)游戲系統聲音判斷出隊友的位置不一致,以至于造成判斷錯誤,在分秒必爭的虛擬槍?xiě)鹬校@可是致命的誤導。要讓游戲系統聲音反映的虛擬位置和游戲語(yǔ)音通話(huà)反映的虛擬位置一致,其實(shí)是蠻難的。游戲系統和游戲語(yǔ)音SDK是完全獨立和解耦的,游戲系統的聲音產(chǎn)生涉及到游戲服務(wù)器和客戶(hù)端的協(xié)同,游戲語(yǔ)音SDK的語(yǔ)音是從遠端用戶(hù)傳輸過(guò)來(lái),考慮到兩個(gè)獨立系統和網(wǎng)絡(luò )傳輸,兩個(gè)者之間的步調要保持一致是十分有挑戰的任務(wù)。
      休閑類(lèi)的游戲包括棋牌等人數較少節奏較慢的游戲,通過(guò)游戲語(yǔ)音邊玩邊聊天是一個(gè)剛性的社交需求。請各位閉眼想象,你和其它三個(gè)好友在線(xiàn)上打麻將,同時(shí)通過(guò)語(yǔ)音嘮叨家常。如果你能夠通過(guò)聽(tīng)左、右和前方三個(gè)人的聲音,分辨出他們就像是坐在你左、右和前方三個(gè)位置,音效體驗一下子就爆表了。狼人殺游戲更加不在話(huà)下,這種完全依托語(yǔ)音會(huì )話(huà)建立起來(lái)的社交游戲,如果能夠通過(guò)聽(tīng)聲音就能辨別出講話(huà)的人的方位,閉著(zhù)眼睛去感覺(jué),就像是一伙朋友圍著(zhù)圓桌面對面的玩狼人殺游戲呢。
      第二個(gè)對聽(tīng)聲辨位有需求的場(chǎng)景是在線(xiàn)教育的小班課堂。舉一個(gè)比較具體的例子,在線(xiàn)少兒英語(yǔ)小班課,應該是對線(xiàn)上互動(dòng)要求最高的一種在線(xiàn)課堂形態(tài),沒(méi)有之一。小朋友的注意力不容易集中,對課堂趣味性和互動(dòng)性的要求特別高。如果小朋友能夠通過(guò)聽(tīng)聲感覺(jué)到老師就坐在正前方講臺的位置,其它小朋友坐在前后座位各個(gè)方位,由遠而近多個(gè)距離層次都有小朋友,就像是在真實(shí)的擺滿(mǎn)書(shū)桌的教室里面的聲音效果一樣,這樣無(wú)疑是大大增強了小朋友的注意力集中程度。
      其它的一些應用場(chǎng)景,比如說(shuō)語(yǔ)音社交、視頻社交和互動(dòng)直播,聽(tīng)聲辨位的效果也會(huì )讓用戶(hù)感到驚艷。如果你加入houseparty的視頻聊天房間,能聽(tīng)到參加趴踢的朋友分布在你前后左右的各個(gè)位置,那種沉浸式的聽(tīng)音感覺(jué)會(huì )讓你像是整個(gè)人一下子投入到趴踢的人群中去。
      這些應用場(chǎng)景即構ZEGO都有豐富的客戶(hù)案例,即構ZEGO的聽(tīng)聲辨位技術(shù)能讓用戶(hù)在這些應用場(chǎng)景里獲得360度空間感的聽(tīng)聲體驗。然而,客戶(hù)越來(lái)越苛刻的需求,驅使著(zhù)即構ZEGO不斷的去打磨和升級其聽(tīng)聲辨位技術(shù),來(lái)給予用戶(hù)最優(yōu)的體驗。
      移動(dòng)終端的處理能力分秒不停地飛速發(fā)展,5G的推出如果不出意外也會(huì )在2019年到來(lái),加上VR/AR技術(shù)的日漸成熟,沉浸式的語(yǔ)音視頻實(shí)時(shí)互動(dòng)通信將會(huì )成為一種生活方式。當你帶著(zhù)VR頭顯,環(huán)顧360度都看到遠端的朋友的視頻影像的時(shí)候,你是不是也期待他們的聲音聽(tīng)起來(lái)也像是從他們看起來(lái)的那個(gè)位置傳過(guò)來(lái)一樣?到那時(shí)候,聽(tīng)聲辨位技術(shù)也會(huì )成為這種生活方式的必備支柱。
      硬件條件的限制
      上面對應用場(chǎng)景的展望和抒情有點(diǎn)太超前了,我們稍微回到2017年下半年的現實(shí)中來(lái)。雖然夢(mèng)想很美好,但是現實(shí)很殘酷,現在手機硬件條件還存在諸多限制。
      目前,絕大部分的手機采集聲音的麥克風(fēng)只有一個(gè)。當然有朋友反對說(shuō),iPhone不是有好幾個(gè)麥克風(fēng)嗎?其實(shí)采集語(yǔ)音的麥克風(fēng)還是只有一個(gè),其它的麥克風(fēng)是用來(lái)做噪聲抑制的。一個(gè)麥克風(fēng)采集到的聲音就是單聲道的,不會(huì )產(chǎn)生立體聲的效果,也就是不會(huì )讓你聽(tīng)聲音就能辨別出聲源的位置。
      目前,絕大部分的手機只有一個(gè)揚聲器,只有少數的手機是支持立體聲的。這里要區別分一下,打電話(huà)的時(shí)候聽(tīng)電話(huà)那個(gè)喇叭不是揚聲器,點(diǎn)了免提鍵后手機不需要貼到耳朵邊的時(shí)候發(fā)出聲音的那個(gè)喇叭才是揚聲器,播放音樂(lè )的時(shí)候發(fā)聲音的喇叭也就是揚聲器。既然只有一個(gè)揚聲器,那么不管聲音信號是不是立體聲的,播放出來(lái)的聲音效果都是單聲道的。在渲染的時(shí)候,應用程序把聲音數據放到一個(gè)緩沖區,操作系統把聲音數據取出來(lái)播放,如果只有一個(gè)揚聲器的話(huà),巧婦難為無(wú)米之炊,臣妾也表示辦不到,即使是立體聲信號也會(huì )被降級為單聲道播放。當然,耳機線(xiàn)有左右兩個(gè)喇叭,插入耳機線(xiàn)以后,手機就支持立體聲播放了。
      單聲道虛擬成立體聲
      如果發(fā)送端采用外部采集,采集的設備有兩個(gè)麥克風(fēng),或者本身就是立體聲麥克風(fēng),那么采集進(jìn)來(lái)的聲音信號就是立體聲的。立體聲信號包含兩組獨立的波形,由于這兩組波形有相關(guān)性,可以一起編碼傳輸,在接收端解碼以后再獨立地渲染,最終獲得立體聲的效果。
      如果發(fā)送端采用手機的唯一麥克風(fēng),采集進(jìn)來(lái)的聲音信號就是單聲道的。如果要在接收端獲得立體聲的效果,就要把單聲道的聲音信號虛擬成立體聲的。不是說(shuō)巧婦難為無(wú)米之炊嗎?這里也不完全是“無(wú)米”,畢竟還是有一組單聲道波形數據的。
      具體的做法是,首先對聲音傳播路徑進(jìn)行建模,然后輸入原始的波形數據,還有距離d和角度a兩個(gè)參數,模型會(huì )輸出兩個(gè)獨立的波形,代表左右聲道的聲音信號。這兩個(gè)波形和原始的波形作比較,在相位,音色和音調都有所調整,盡量地逼近原始波形在自然環(huán)境中傳播到用戶(hù)的左右耳朵后形成的兩個(gè)不同的波形。這兩個(gè)波形有相關(guān)性,因此一起編碼后的帶寬是小于每一個(gè)波形帶寬的兩倍。虛擬立體聲信號數據到達接收端以后,結果解碼就可以得到兩個(gè)獨立的波形聲音信號數據。如果是在手機揚聲器播放出來(lái),效果還是單聲道的,如果通過(guò)耳機播放出來(lái),就能呈現出立體聲的效果,用戶(hù)可以聽(tīng)出聲音的空間感,并且依此進(jìn)行聽(tīng)聲辨位。
      把單聲道波形虛擬成兩個(gè)獨立的立體聲波形,是在目前移動(dòng)端硬件限制條件下的一個(gè)技術(shù)處理手段。虛擬立體聲的處理可以在發(fā)送端進(jìn)行,也可以在接收端進(jìn)行。在哪里進(jìn)行虛擬化,要看具體的場(chǎng)景需要。如果有混音的需求,也就是要把語(yǔ)音信號和背景音樂(lè )混合在一起的話(huà),那么比較適合在發(fā)送端來(lái)做虛擬立體聲;如果沒(méi)有混音的需求,那么比較適合在接收端做虛擬立體聲。背景音樂(lè )一般是立體聲的,而且是在發(fā)送端輸入的。如果需要進(jìn)行混音,而混音必須要在發(fā)送端進(jìn)行,那么背景音樂(lè )和語(yǔ)音信號都要是立體聲才能對應得混合。因此,虛擬立體聲必須要發(fā)送端完成,然后虛擬出來(lái)的語(yǔ)音立體聲才能和背景音的立體聲混合,混合好以后再把立體聲信號進(jìn)行編碼傳輸,最后到了接收端解碼以后就可以把立體聲播放出來(lái)。如果不需要進(jìn)行混音,那么可以把單聲道聲音信號直接編碼發(fā)送,接收端收到后進(jìn)行解碼,再把單聲道聲音信號虛擬成立體聲,這樣傳輸的帶寬就可以做到最低。
      當互動(dòng)直播遇到立體聲
      隨著(zhù)硬件的快速更新?lián)Q代,在不遠的將來(lái),手機很可能會(huì )支持立體聲,擁有雙麥克風(fēng)(考慮到手機的物理尺寸較小,筆者嚴重懷疑雙麥克風(fēng)的效果)和雙揚聲器。也許你會(huì )覺(jué)得這是普大喜奔的好事情,再也不用費腦去搞虛擬立體聲了,然而有個(gè)現實(shí)要讓你心碎:即使手機支持立體聲,在進(jìn)行互動(dòng)直播或者互動(dòng)語(yǔ)音視頻通話(huà)的時(shí)候,手機依然只能采用單聲道采集,因此,還是要繼續搞虛擬立體聲,這是跑不掉的事情。為什么在互動(dòng)直播的時(shí)候只能采取單聲道而不能采取立體聲呢?下圖展示了使用立體聲手機進(jìn)行回聲消除的邏輯,大家看一下此圖就理解互動(dòng)直播不能采取立體聲的緣由了。
      參照上圖,我們看一下語(yǔ)音數據的是如何流動(dòng)的:
    • 遠端的左右兩個(gè)麥克風(fēng)分別采集左右聲道的語(yǔ)音數據;
    • 近端的左右兩個(gè)揚聲器分別播放左右聲道的語(yǔ)音數據;
    • 近端左邊的揚聲器發(fā)出的聲音經(jīng)過(guò)回聲饋路會(huì )被近端左右的兩個(gè)麥克風(fēng)采集進(jìn)去;
    • 近端右邊的揚聲器和#3同理;
    • 近端左邊的麥克風(fēng)采集進(jìn)來(lái)的聲音信號包括了左右兩個(gè)揚聲器產(chǎn)生的回聲;
    • 近端右邊的麥克風(fēng)和#5同理;
    • 對左邊麥克風(fēng)采集的聲音進(jìn)行回聲消除的時(shí)候,除了參考遠端左聲道聲音信號消除左邊揚聲器產(chǎn)生的回聲,還要參考遠端右聲道聲音信號消除右邊揚聲器產(chǎn)生的回聲;
    • 對右邊的麥克風(fēng)采集的聲音進(jìn)行回聲消除和7同理。
      也就是說(shuō),對左邊麥克風(fēng)采集進(jìn)來(lái)的聲音要消除左右兩個(gè)揚聲器產(chǎn)生的回聲,對右邊麥克風(fēng)采集進(jìn)來(lái)的聲音進(jìn)行回聲消除也同理,總共要進(jìn)行四次回聲消除,并且要從每一個(gè)麥克風(fēng)采集進(jìn)來(lái)的聲音信號里消除兩個(gè)揚聲器造成的回聲,計算量一下子變成單聲道情形的四倍,復雜度更是遠超四倍。同等條件下,立體聲回聲消除的效果比起單聲道回聲消除的效果差。目前業(yè)界的實(shí)踐表明,立體聲回聲消除的效果并不理想。因此,在涉及到互動(dòng)直播或者互動(dòng)語(yǔ)音視頻實(shí)時(shí)通話(huà)的場(chǎng)景,還是要使用單聲道采集和渲染比較能簡(jiǎn)單而且能保障效果。
      結語(yǔ)
      聽(tīng)聲辨位是人們在自然環(huán)境中習以為常的事情,語(yǔ)音視頻實(shí)時(shí)通信的愿景就是要在互聯(lián)網(wǎng)上完美地還原自然環(huán)境的通話(huà)場(chǎng)景,這也是即構ZEGO孜孜不倦地追求的使命。隨著(zhù)AR/VR的發(fā)展,沉浸式的語(yǔ)音和視頻消費方式成為常態(tài),在進(jìn)行語(yǔ)音視頻實(shí)時(shí)通話(huà)的時(shí)候,人們也會(huì )要求能夠做到聽(tīng)聲辨位,在游戲語(yǔ)音、語(yǔ)音社交、視頻社交、視頻會(huì )議和在線(xiàn)教育等場(chǎng)景,會(huì )有廣泛的需求和應用。
      作者介紹
      冼牛(微信xianniu1216,郵箱noahxian@zego.im,電話(huà)13266561305),即構科技資深語(yǔ)音視頻專(zhuān)家,北京郵電大學(xué)計算機碩士,香港大學(xué)工商管理碩士,多年從事語(yǔ)音視頻云服務(wù)技術(shù)研究,專(zhuān)注互動(dòng)直播技術(shù)、語(yǔ)音視頻社交和實(shí)時(shí)游戲語(yǔ)音。
    【免責聲明】本文僅代表作者本人觀(guān)點(diǎn),與CTI論壇無(wú)關(guān)。CTI論壇對文中陳述、觀(guān)點(diǎn)判斷保持中立,不對所包含內容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

    專(zhuān)題

    亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 马关县| 湖南省| 深州市| 漳平市| 马边| 阳春市| 承德市| 三门县| 景德镇市| 南部县| 岳阳市| 新余市| 衡东县| 南靖县| 海伦市| 达日县| 沂水县| 晋中市| 贵港市| 运城市| 于都县| 台山市| 兴安盟| 社旗县| 兰坪| 行唐县| 涡阳县| 永顺县| 晋城| 南安市| 平江县| 济源市| 江川县| 丹凤县| 城市| 吉木萨尔县| 读书| 东乡族自治县| 雅江县| 广州市| 平泉县| http://444 http://444 http://444 http://444 http://444 http://444