自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

游戲?qū)崟r語音解決方案是怎么煉成的

開發(fā) 開發(fā)工具
今天,我們就一起來深度聊一聊,怎么針對游戲的應(yīng)用場景訂造游戲?qū)崟r語音解決方案。

孟子曰:“獨(dú)樂樂,不如與人樂樂;與少樂樂,不若與眾樂樂。”

如果孟子是游戲發(fā)燒友,那么他肯定說:“單機(jī)版不如聯(lián)網(wǎng)玩,獨(dú)自玩不若游戲語音開黑玩。”

在棋牌游戲中,一起打牌的玩家有吹牛嘮叨的社交需求。在MMORPG競技游戲中,一起并肩作戰(zhàn)的隊友有團(tuán)隊協(xié)同的通訊需求。實時游戲語音是網(wǎng)絡(luò)游戲的標(biāo)配,這早已經(jīng)是業(yè)界共識。

現(xiàn)在的問題是,不管是自行研發(fā)實時游戲語音方案,還是采用第三方游戲?qū)崟r語音SDK,都必須要先為游戲量身訂造一套解決方案。這套解決方案必須是和游戲本身的用戶需求、考量因素、及應(yīng)用場景緊密結(jié)合的。把通用的語音視頻通訊方案直接拿來給游戲用是不適合的。

今天,我們就一起來深度聊一聊,怎么針對游戲的應(yīng)用場景訂造游戲?qū)崟r語音解決方案。

人聲場景是指語音通訊中大部分或者全部時間都是人聲在說話的場景。典型的例子包括Skype網(wǎng)絡(luò)電話、和微信語音。音樂聲場景是指語音通訊中有相當(dāng)一部分內(nèi)容是涉及到音樂和表演等娛樂環(huán)節(jié)的場景。典型的例子包括花椒直播的連麥K歌海選賽。

游戲?qū)崟r語音的場景基本是人聲在說話?,F(xiàn)在,讓我們來了解一下人聲語音的特點(diǎn)。人類的聽力感知范圍是從20Hz到20kHz。這個頻寬范圍被劃分成四個頻寬類別:窄帶、寬帶、超寬帶和全帶。

頻寬范圍被劃分成四個頻寬類別:窄帶、寬帶、超寬帶和全帶

一、人類的聽力感知頻寬范圍的劃分

1. 窄帶(narrowband)

普通電話所覆蓋的頻寬,從300Hz到3.4kHz,對應(yīng)采樣率6.8kHz。普通電話的采樣率是8kHz,對應(yīng)頻寬4kHz,對于人聲語音是足夠的。

2. 寬帶(wideband)

從50Hz到7kH的頻寬,對應(yīng)采樣率14khz,可以很好地捕捉和還原人聲,然而對于音樂聲還是不夠的。這是在人聲語音通話場景下的所謂高清語音。

3. 超寬帶(super-wideband)

從50Hz到14kHz,對應(yīng)采樣率28kHz,基本可以覆蓋人聲和音樂聲,對于非專業(yè)音樂人的用戶來說,不管是人聲通話還是音樂直播,這樣的頻寬都是足夠的。

4. 全帶(fullband)

從20Hz到20kHz,對應(yīng)40kHz采樣率,全面覆蓋人類的聽覺范圍,能夠滿足音樂發(fā)燒友或者專業(yè)音樂人的需求。超過40Hz都可以稱作全帶語音。CD的采樣率就是44.1kHz。

因此,窄帶(narrowband)的音質(zhì)是能滿足游戲?qū)崟r語音的通訊需求的??紤]到游戲?qū)崟r語音和直播結(jié)合產(chǎn)生了一些新的玩法,比如說主播陪玩,或者游戲直播,對音質(zhì)的要求相對較高。寬帶(wideband)的音質(zhì)能滿足游戲加直播場景的需求。在這里,游戲語音的頻寬更多地要根據(jù)游戲運(yùn)營商的預(yù)算成本來確定,因為和頻寬直接相關(guān)的是碼率,碼率最終也就是成本。

二、考量四大因素

為游戲量身訂做實時游戲語音技術(shù)方案,要考量四大因素,從中找到平衡點(diǎn)。下圖是對四大因素進(jìn)行打分(1分最低,5分最高)而建立的雷達(dá)圖:

1. 成本

實時游戲語音數(shù)據(jù)的流量成本,一般由音頻流的按月峰值帶寬來表示。音頻流的帶寬,由每一路音頻流的碼率乘以音頻流并發(fā)數(shù)目而獲得。一路并發(fā)音頻流就代表一個活躍的在線用戶。對游戲運(yùn)營商來說,音頻流并發(fā)數(shù)目自然是越大越好。為了控制成本,只能從如何適當(dāng)?shù)亟档兔恳宦芬纛l流的碼率來下功夫。目的是在保證其它指標(biāo)能接受的情況下,音頻流的碼率越低越好。

2. 延遲時間

人聲語音信息從一個用戶經(jīng)過系統(tǒng)和網(wǎng)絡(luò)傳達(dá)另外一個用戶的單向延遲時間。一般來說,150毫秒以內(nèi)的延遲時間,人耳是識別不了的,實時溝通十分流暢。400毫秒的延遲時間是一個臨界點(diǎn),超過這個臨界點(diǎn)后,人耳就能感覺到比較明顯的延遲。

筆者在即構(gòu)科技參與過全球無死角網(wǎng)絡(luò)覆蓋測試,發(fā)現(xiàn)從中國一線城市到硅谷,RTT普遍就在160毫秒以上,單向就在80毫秒以上。 總的延遲時間還要加上編解碼本身的算法延遲、全鏈條上的計算延遲、和網(wǎng)絡(luò)損傷帶來的傳輸延遲等。因此,在全球范圍要獲得150毫秒內(nèi)的延遲是十分具有挑戰(zhàn)性的。畢竟,RTT顯示的單向基本延遲普遍也要80毫秒以上。

在游戲?qū)崟r語音中,保持較低的通話延遲十分關(guān)鍵。想象一下,在MOBA或者FPS中,戰(zhàn)斗正在火熱朝天地進(jìn)行著,一切都要用“說時遲那時快”來形容,隊友之間的配合協(xié)調(diào)(比如說加血)慢了一兩秒,帶來的直接后果,輕則是殆誤戰(zhàn)機(jī),重則是全軍覆沒。這是一個視用戶體驗為生命的游戲平臺所不能忍受的。

3. 音質(zhì)

從客觀的角度來看,語音的質(zhì)量由采樣率和碼率等因素決定。一般來說,采樣率越高音質(zhì)越好;保持采樣率不變,碼率越高音質(zhì)越好。從主觀的角度來看,語音的質(zhì)量由MOS主觀評估方法來鑒定,也要通過人耳聽感來衡量,畢竟最終是用戶的耳朵來裁定音質(zhì)好不好。

人耳對人聲的音質(zhì)的容忍度還是比較高的,而且不同的游戲和不同的場景對音質(zhì)也有不同的要求。因此,可以根據(jù)不同的游戲場景來調(diào)整音質(zhì)來讓用戶體驗達(dá)到最優(yōu)效果。在MMORPG、MOBA、和FPS等大型競技類游戲中,并發(fā)數(shù)是海量的,總共帶寬相當(dāng)高。因此,要適當(dāng)?shù)亟档鸵糍|(zhì),以其降低碼率來降低成本。在棋牌和狼人殺等節(jié)奏比較慢(很多時候沒人說話)且并發(fā)相對不高的休閑類游戲中,要適當(dāng)?shù)靥岣咭糍|(zhì)能提升用戶體驗。

和音質(zhì)最緊密相關(guān)的因素是成本,其次是延遲和系統(tǒng)影響。一般來說,音質(zhì)越好,碼率也會越高,成本也就越高。因此,音質(zhì)是一個可以微調(diào)的因素,用以達(dá)到適當(dāng)?shù)某杀酒胶恻c(diǎn)。

4. 系統(tǒng)影響

實時游戲語音SDK被游戲系統(tǒng)進(jìn)行端到端集成,在客戶端和游戲系統(tǒng)共用系統(tǒng)資源,包括CPU和內(nèi)存。在移動端,CPU和內(nèi)存資源對游戲系統(tǒng)來說十分緊缺。因此,實時游戲語音SDK首先要做到盡量節(jié)約CPU和內(nèi)存資源,再進(jìn)一步的要做到和游戲和諧共生,那就是在游戲系統(tǒng)消耗資源比較多的時候,實時游戲語音SDK要降低碼率和音質(zhì),優(yōu)先保障語音的可用性;在游戲系統(tǒng)消耗資源比較少的時候,實時游戲語音SDK要能提高碼率和音質(zhì),提高通話質(zhì)量。語音編解碼器的復(fù)雜度是影響移動終端CPU、內(nèi)存和電量消耗的一個重要因素,語音編解碼器的復(fù)雜度較低的話,消耗CPU、內(nèi)存和電量也就相對少一些。

三、實時語音的模式

在游戲協(xié)同和溝通中,實時語音通話包括三種模式:

1. 一對一私聊

社交關(guān)系比較緊密的兩個游戲用戶之間的一對一語音通話,通話的音質(zhì)要高而且延遲要低。

2. 多對多群聊

多個游戲用戶組隊語音開黑,每一個用戶都參與到群聊中,通話的流暢性要高而且延遲要低。

3. 多人群聊直播

類似多對多群聊,參與群聊的游戲用戶充當(dāng)指揮的角色,其它的游戲用戶充當(dāng)服從命令的角色,能收聽群聊語音,而不能推送語音。另外,在游戲直播中,主播直接參與到游戲語音群聊中,同時把游戲的實況直播給不參與游戲的觀眾收聽。在這種模式要求在群聊的少數(shù)幾個人之間的通話流暢和低延遲,在觀眾側(cè)保障通話的流暢就可以。

這三種實時游戲語音通話的模式對上述的四大因素:成本、延遲、音質(zhì)和系統(tǒng)影響都有不同的側(cè)重。除了要匹配這三種實時通話模式,還要匹配四種游戲語音場景。

四、游戲語音的場景

1. 競技游戲場景

包括MMORPG、MOBA、和FPS等類型的游戲,游戲的節(jié)奏極快,協(xié)同配合要求極高,系統(tǒng)資源也十分緊缺。實時游戲語音SDK要優(yōu)先保障流暢性和低延遲,適當(dāng)允許降低音質(zhì)。為了滿足這個場景的實時需求,推流和拉流都要經(jīng)過核心媒體服務(wù)器。

2. 休閑游戲場景

包括棋牌和狼人殺等類型的游戲,游戲的節(jié)奏比較慢,用戶輪流說話,用戶之間短暫的思考時間也是被接受的,系統(tǒng)資源占用率比較低。實時游戲語音SDK要優(yōu)先保障音質(zhì)和流暢性。在這種場景中,推流和拉流可以不經(jīng)過核心媒體服務(wù)器,而直接走CDN網(wǎng)絡(luò)。這種策略比較適合低成本的經(jīng)濟(jì)型方案。

3. 大型國戰(zhàn)場景

包括大型的MMORPG等類型的游戲,類似于競技游戲場景。區(qū)別在于充當(dāng)指揮角色的少數(shù)幾個人需要進(jìn)行快節(jié)奏的群聊,而其他的游戲用戶處于收聽狀態(tài)。在這種場景中,首先群聊的幾個人的音頻流要經(jīng)過核心媒體服務(wù)器,然后多路音頻流被混和成一路流,接著轉(zhuǎn)推到CDN網(wǎng)絡(luò),最后收聽模式的游戲用戶從CDN網(wǎng)絡(luò)拉流收聽。

五、選取音頻編解碼器

音頻編解碼器對游戲?qū)崟r語音方案的四大關(guān)鍵因素有重要的影響。音頻編碼器的類型、屬性和品質(zhì),決定了編出來的音頻流的碼率、算法延遲、頻寬、和音質(zhì);音頻編碼器的算法復(fù)雜度決定了對CPU、內(nèi)存、和電量的消耗程度。

因此,適合游戲?qū)崟r語音方案的音頻編解碼器具備以下四個特點(diǎn):

  • 碼率相對低,滿足成本可控的要求,一般不要超過16kbps。一個sample用1bit就能編好,那么8kHz采樣率(narrowband)對應(yīng)8kbps的碼率,16kHz采樣率(wideband)對應(yīng)16kbps的碼率。碼率的本質(zhì)就是成本。
  • 延遲時間要低到能滿足互動需求,一般不要超過300毫秒。
  • 算法復(fù)雜度要比較低,對系統(tǒng)CPU、內(nèi)存和電量消耗少,對游戲系統(tǒng)影響要盡量低。
  • 音質(zhì)可以適當(dāng)作出犧牲,以保障上面三個因素,8kHz采樣率對人聲場景是夠用的,16kHz采樣率可以提供高清語音。

下圖列舉一組主流的音頻編解碼器,展示了隨著碼率變化,音質(zhì)相應(yīng)變化的情況。這是基于編解碼器聽音測試的結(jié)果繪畫出來的,對選取音頻編解碼器有參考意義。根據(jù)上面的分析并且參照下圖,發(fā)現(xiàn)碼率低于16kbps的低碼率人聲編解碼器(speech codecs)包含:Opus(SILK),Speex,AMR-NB,AMR-WB,和iLBC。

下圖是另外一組主流的音頻編解碼器,展示了隨著碼率的變化,算法延遲時間相應(yīng)變化的情況。根據(jù)上面的分析并且參照下圖,發(fā)現(xiàn)算法延遲時間低于60毫秒,碼率低于16kbps的人聲編解碼器(speech codecs)包含:Opus(SILK)、Speex(NB,WB)、G.729、和G.729.1。

綜合上面的兩個圖,我們可以大致總結(jié),比較適合實時游戲語音的音頻編解碼器包含Opus(SILK)、Speex(NB,WB)、AMR-NB、AMR-WB、iLBC、G.729、和G.729.1。

沒有任何一個音頻編解碼器可以適合任何應(yīng)用場景。每一個音頻編解碼器都有自己的優(yōu)勢和劣勢,都有適合它發(fā)揮作用的應(yīng)用場景。在為游戲?qū)崟r語音方案選取語音編解碼器的時候,首先要梳理清楚該游戲場景的需求,然后根據(jù)需求去選取音頻編解碼器。

讓我們回顧一下前面討論過的游戲場景,分析如何針對游戲場景選取合適的語音編解碼器。

1. 競技游戲場景

包括MMORPG、MOBA、和FPS等類型的游戲,游戲中組隊的用戶需要每時每刻十分高頻地通話以協(xié)同作戰(zhàn),而且這種類型的游戲占用系統(tǒng)和網(wǎng)絡(luò)資源很多。這種場景對游戲?qū)崟r語音SDK的要求是碼率低、延遲低、和消耗低,音質(zhì)只要能保障溝通無阻就可以。因此,選取的音頻編解碼器要具備這些特點(diǎn):碼率低、算法延遲低、以及算法復(fù)雜度低。在這個前提下,再選取采樣率較高和MOS值較高的音頻編解碼器。上述提到的Codec2、Speex、和AMR-NB都比較適合競技游戲場景,建議對它們進(jìn)行進(jìn)一步測試對比。

有些休閑游戲的溝通節(jié)奏也相當(dāng)快,比如說馬東的米未傳媒最近推出的飯局狼人殺,在殺人游戲環(huán)節(jié)允許用戶插麥(插話),打破了傳統(tǒng)狼人殺輪流發(fā)言而不允許插話的規(guī)則。在這種情況下,飯局狼人殺雖然是休閑游戲場景,但是也應(yīng)該當(dāng)做競技游戲場景來處理。從技術(shù)的角度來說,選取的語音編解碼器就要優(yōu)先保障低延遲和流暢性,然后再考慮音質(zhì);另外,推拉流都要經(jīng)過核心媒體服務(wù)器,以此獲得比較低的延遲,插麥的效果才能保障。如果推流直接推送到CDN網(wǎng)絡(luò),插麥的延遲將會達(dá)到至少1到3秒,插話的體驗就會無法接受。

2. 休閑游戲場景

包括棋牌和狼人殺等類型的游戲,游戲中的用戶交流的節(jié)奏不快,允許一到兩秒的思考時間,而且這些游戲占用系統(tǒng)和網(wǎng)絡(luò)資源也不多。這種游戲場景的社交屬性比較強(qiáng),社交關(guān)系好的游戲用戶甚至?xí)M(jìn)行一對一私聊。休閑游戲場景對實時游戲語音SDK的要求是音質(zhì)比較好、碼率比較高;而延遲允許高一點(diǎn),系統(tǒng)消耗也允許多一點(diǎn)。因此,選取的音頻編解碼器就要具備這些特點(diǎn):采樣率較高、碼率較高、以及MOS值較高;在這個前提下,再選取算法延遲較低,和算法復(fù)雜度較低的音頻編解碼器。上述提到的Opus(SILK)、AMR-WB、Speex、和iLBC都比較適合休閑游戲場景,建議對它們進(jìn)行進(jìn)一步測試對比。

最近半年,休閑游戲的游戲?qū)崟r語音技術(shù)出現(xiàn)了一些新的玩法:有些游戲平臺在游戲?qū)崟r語音中增加了實時視頻。用戶可以有選擇性地在游戲?qū)崟r視頻中露臉,游戲平臺也通過一些機(jī)制去鼓勵用戶多在視頻中露臉。比如說奇虎360最近推出的萌萌(微博)狼人殺,又名花椒狼人殺(和花椒直播同樣是奇虎360的產(chǎn)品),就在游戲用戶輪到發(fā)言的時候,允許選擇是否全屏展示視頻。由于萌萌狼人殺采用了即構(gòu)科技的游戲?qū)崟r音視頻方案,因此筆者比較清楚此類方案的技術(shù)細(xì)節(jié)。從技術(shù)的角度來說,增加了視頻,必然會增加碼率(帶寬的開銷)。在弱網(wǎng)的情況下,丟包率會驟然增加,音視頻的質(zhì)量也會相應(yīng)下降,這時候要優(yōu)先保障語音通話。具體地說,要優(yōu)先保障語音的低延遲和流暢性,視頻和音質(zhì)可以稍微妥協(xié)。因此,在選用音頻編解碼器的時候,就要優(yōu)先考慮碼率低和延遲低的,甚至可以選用一套碼率低的和一套采樣率高的結(jié)合著使用,用以適應(yīng)不同的應(yīng)用場景和網(wǎng)絡(luò)條件。

3. 大型國戰(zhàn)場景

包括大型的MMORPG等類型的游戲,充當(dāng)指揮角色的一組游戲用戶的網(wǎng)絡(luò)溝通節(jié)奏其實和競技游戲場景是類似的,選取音頻編解碼器的原則也類似。除了Codec2、Speex、和AMR-NB以外,其實Opus(SILK)的覆蓋面很廣,建議也測試對比一下。

經(jīng)過幾輪測試和對比下來,你很可能會發(fā)現(xiàn),要結(jié)合使用一兩個編解碼器才能很好地滿足某個游戲場景的需求。最終,我們要做的是尋找碼率、延遲、復(fù)雜度、采樣率、和MOS值這幾個關(guān)鍵指標(biāo)的平衡點(diǎn)。畢竟這幾個指標(biāo)和我們最開始討論的四大要素:成本、延遲時間、系統(tǒng)影響、以及音質(zhì)是緊密相關(guān)的。

要針對具體的游戲場景訂造特定的解決方案,沒有任何一套方案是放諸四海皆準(zhǔn)的。要為具體的方案去配置特定的音視編解碼器,和推流、拉流、以及混流策略。甚至有些時候,在同一套游戲?qū)崟r語音解決方案中,要采用多個的音頻編解碼器來適應(yīng)不同的業(yè)務(wù)場景或者網(wǎng)絡(luò)狀況的需求。

六、結(jié)語

因此,做游戲?qū)崟r語音解決方案就是在游戲應(yīng)用場景和技術(shù)方法之間做匹配。只有深入地理解游戲應(yīng)用場景的需求,才能拿捏好如何選用語音編解碼器,如何部署媒體服務(wù)器資源,如何配置CDN網(wǎng)絡(luò)等,來打磨出一套符合游戲應(yīng)用場景需求的實時語音解決方案。

作者簡介:冼牛,即構(gòu)科技資深語音視頻專家,北京郵電大學(xué)計算機(jī)碩士,香港大學(xué)工商管理碩士,多年從事語音視頻云服務(wù)技術(shù)研究,專注互動直播技術(shù)、語音視頻社交和實時游戲語音。

【本文為51CTO專欄作者“冼牛”原創(chuàng)稿件,轉(zhuǎn)載請聯(lián)系原作者(微信號:xianniu1216)】

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2016-01-26 18:01:21

2009-10-15 10:39:31

綜合布線解決方案

2011-02-17 15:26:27

IADVoIPPPPoE

2017-11-09 18:52:22

華為

2017-07-13 10:04:20

云客服分析架構(gòu)

2016-01-06 14:43:21

2015-04-29 16:42:10

最強(qiáng)數(shù)字化醫(yī)院解決方案東華華為

2015-09-30 14:45:10

2011-05-04 16:33:09

游戲銷售Android Mar游戲

2024-08-02 09:36:03

2019-07-29 07:29:05

2018-09-05 10:14:32

小程序

2018-07-22 22:36:21

首席信息安全官CISO網(wǎng)絡(luò)風(fēng)險

2011-04-08 09:13:13

游戲跨平臺iOS

2009-12-16 09:40:21

Orcale數(shù)據(jù)集成實時BI

2011-10-09 09:36:45

項目經(jīng)理

2024-03-22 08:43:05

PythonWatchdog文件系統(tǒng)監(jiān)控工具

2018-12-03 12:13:21

Mellanox解決方案

2018-12-03 12:26:30

YADRO解決方案

2018-12-03 11:59:42

Inventec解決方案
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號