一種輕量級的多方會議混音方法和裝置製造方法
2023-06-02 13:54:31
一種輕量級的多方會議混音方法和裝置製造方法
【專利摘要】一種輕量級的多方會議混音方法和裝置,1)客戶端採用AMR編碼器對語音進行編碼後得到語音PCM數據及數據長度,對編碼後的語音PCM數據採用分幀處理,計算每幀語音能量值,並結合該幀語音能量值及其數據長度來確定該幀為語音幀或非語音幀,從而統計出語音PCM數據中語音幀的概率值;2)伺服器端通過接收到的語音概率值選出當前的語音概率值最高的兩個發言者的語音流,並根據這兩個語音概率值大小決定是否使用疊加原理將選出的最多兩路語音流進行混音,最後轉發混音後的語音包。該方法巧妙地彌補了手機等便攜小設備計算能力弱的缺陷,同時又大大降低了伺服器進行混音操作的計算量,可廣泛應用在多媒體多方會議系統中。
【專利說明】一種輕量級的多方會議混音方法和裝置
【技術領域】
[0001]本發明涉及多方會議通信領域技術,特別是一種輕量級的多方會議混音方法和裝置。
【背景技術】
[0002]多方視頻會議系統中,混音是一項重要技術。混音是將多個音頻源的音頻根據音頻疊加原理混合為一路音頻輸出,使音頻的接收者感覺到多人會議交流的效果。
[0003]混音可以實現在媒體控制器即伺服器端,也可以實現在終端即客戶端。
[0004]直接在伺服器端實現,即客戶端把各自的音頻數據PCM語音信號通過編碼器編碼,然後發送給伺服器端,伺服器先將多個音頻源的音頻解碼,然後根據音頻疊加原理混合為一路音頻再編碼輸出,使音頻的接收者感覺到多人會議交流的效果。但是由於伺服器端需要多路解碼,同時最後又要編碼,因此計算量和時間複雜度均較大,導致延時也較大。這也就限制了該方案的應用範圍。
[0005]直接在終端實現混音,即客戶端把音頻數據PCM語音信號通過編碼器編碼,發送給伺服器端,伺服器端將各個終端即客戶端的音頻,發送到除源端以外的所有終端,各個終端對所有接收到的音頻流進行合成。混音的計算壓力在各個終端,這種方案會對網絡造成更大的壓力。一來終端的計算量增大,這對於一些計算能力較弱的移動終端,無法承擔混音計算的壓力。二來每個終端的語音包都要轉發給除源端以外的終端,佔用網絡帶寬資源。
[0006]還有一些方案,不需要編碼和解碼,終端直接把語音包發給伺服器端,然後伺服器端進行混音。由於終端沒有對語音包進行編碼就直接發包,嚴重佔用網絡帶寬。
【發明內容】
[0007]本發明的主要目的在於針對多方會議的實際應用需求,同時兼顧手機等便攜小設備的個性特徵,提出一種新穎而簡單的快速實時的輕量級的多方會議混音方法和裝置。
[0008]本發明採用如下技術方案:
[0009]一種輕量級的多方會議混音方法,其特徵在於:1)客戶端採用AMR編碼器對語音進行編碼後得到語音PCM數據及數據長度,對編碼後的語音PCM數據採用分幀處理,計算每幀語音能量值,並結合該幀語音能量值及其數據長度來確定該幀為語音幀或非語音幀,從而統計出語音PCM數據中語音幀的概率值;2)伺服器端通過接收到的語音概率值選出當前的語音概率值最高的兩個發言者的語音流,並根據這兩個語音概率值大小決定是否使用疊加原理將選出的最多兩路語音流進行混音,最後轉發混音後的語音包。
[0010]優選的,預先設定:客戶端每隔一段時間抓取到一幀語音信號,每幀語音信號包括m個採樣值,每個採樣值的能量為^ ;設定統計窗口包括連續的η幀語音信號,當前幀的能量相對參考值為;步驟I)具體包括如下:
[0011]1.1)客戶端輸入語音PCM數據及AMR編碼後的輸出長度,計算當前幀語音PCM數
m
據的能量值E: E-Zr*r/=1.9
[0012]1.2)判斷AMR編碼後的當前幀輸出長度是否等於31,若是,則記錄該幀的能量值,作為語音能量參考值,判定該幀為語音幀並加入統計窗口內,進入步驟1.4);若否,則記錄該幀的能量值,作為非語音能量參考值,進入步驟1.3);
[0013]1.3)判斷當前幀能量值是否大於其能量相對參考值Erefw,若是,則判定該幀為語音幀,若否,則判定該幀為非語音幀;加入新的統計窗口內,進入步驟1.4)
[0014]1.4)判斷統計窗口是否已滿,若是,則計算統計窗口內語音幀的佔比,表示成O到100的語音概率值;若否,則進入下一幀,跳至步驟1.1);
[0015]優選的,設定當前幀的前η個連續幀的非語音能量參考值的最大值為Entjise,而語音能量參考值的最大值表示為Evtjise,則當前幀的能量相對參考值用如下公式計算:
[0016]Erefer = Enoise+ (Evoice-Enoise) /10。
[0017]優選的,步驟2)具體如下:
[0018]2.1)伺服器接收客戶端發送過來的語音概率值,選出語音概率值最高的兩條語音流Fl、F2,其語音概率值分別為Ρ1、Ρ2,Ρ1>Ρ2 ;
[0019]2.2)判斷PD2P2是否成立,若是,則只將?1對應的語音流輸出;若否,則將這兩條語音流進行混音後輸出。
[0020]一種輕量級的多方會議混音裝置,包括客戶端和伺服器,其特徵在於:
[0021]客戶端包括:用於對語音進行編碼得到語音PCM數據及數據長度的AMR編碼器、用於計算編碼後的語音PCM數據的每幀語音能量值的語音能量計算裝置、結合語音能量值及其數據長度來確定該幀為語音幀或非語音幀的判定裝置,及統計出語音PCM數據的統計窗口中語音幀的概率值的統計裝置;
[0022]伺服器包括:用於接收語音概率值並選出當前的語音概率值最高的兩個發言者的語音流的接收選擇裝置,根據這兩個語音概率值大小決定是否使用疊加原理將選出的最多兩路語音流進行混音的混音裝置,及轉發語音包的發送裝置。
[0023]由上述對本發明的描述可知,與現有技術相比,本發明具有如下有益效果:
[0024]1、採用概率分析的方法,客戶端對語音流進行分析,伺服器端利用接收到的語音概率值進行決策,充分利用伺服器端與客戶端的資源,讓其共同分擔計算壓力,算法簡單、易實現、可擴展性好;
[0025]2、伺服器端和客戶端的計算壓力小,反應時間快。在客戶端方面,只需要進行AMR編碼,並計算每個數據幀的能量值,以及判斷每幀數據是語音、靜音還是噪音,在伺服器端方面,只需要比較每個客戶端的語音概率值,大多數時候不需要進行混音編碼操作,最多只需要對2路語音進行混音。
[0026]3、應用範圍廣,可適應PDA、手機等輕量級設備的應用。
【專利附圖】
【附圖說明】
[0027]圖1為本發明客戶端工作流程圖;
[0028]圖2為本發明伺服器工作流程圖。
【具體實施方式】
[0029]以下通過【具體實施方式】對本發明作進一步的描述。
[0030]針對多方會議的實際應用需求,同時兼顧手機等便攜小設備的個性特徵,提出一種新穎而簡單的快速實時的輕量級的多方會議混音方法。該方案的基本思想是,根據會議發言的特徵,絕大多數情況下,只有一個人在發言,最多兩個人同時發言,其他都是聽眾。因此,本發明在伺服器端最多選擇發言概率最高的兩路語音進行混音,並將混音後的語音發送給客戶端,從而客戶端不需要做混音,同時伺服器端的混音計算量也不大。
[0031]一種輕量級的多方會議混音方法,預先設定:客戶端每隔20ms抓取到一幀語音信號,每幀語音信號包括160個採樣值,每個採樣值的能量為ri;設定統計窗口包括連續的20幀語音信號,當前幀的能量相對參考值為EMfOT。設定當前幀的前20個連續幀的非語音能量參考值的最大值為Entjise,而語音能量參考值的最大值表示為EVise,則當前幀的能量相對參考值用如下公式計算:
[0032]Erefer — Enoise+(Evoice_Enoise)/10。
[0033]其中,若當前幀為會話開始後首個20幀中的某I幀,例如第2幀,則用之前的I幀能量值作為能量相對參考值,若是第3幀,就用前面的1、2幀的對應值帶入公式中進行計算,以此類推。
[0034]包括如下步驟:
[0035]I)客戶端採用AMR編碼器對語音進行編碼後得到語音PCM數據及數據長度,對編碼後的語音PCM數據採用分幀處理,計算每幀語音能量值,並結合該幀語音能量值及其數據長度來確定該幀為語音幀或非語音幀,從而統計出語音PCM數據中語音幀的概率值。AMR編碼器對語音PCM數據編碼後,獲得編碼後的數據以及數據長度,數據長度用nsize表示。根據AMR編碼輸出的規則,nsize只有三個取值,當nsize為I時,為靜音狀態;insize為6時,為噪音狀態;當nsize為31時,為語音狀態。但是,這種劃分方法並不準確,當nsize為31時,基本上為語音狀態,但當nsize為6時,卻有可能也是語音狀態。因此,當nsize為6時,需要綜合分析PCM數據的能量值。參照圖1,流程如下
[0036]1.1)客戶端輸入語音PCM數據及AMR編碼後的輸出長度,計算當前幀語音PCM數
160
據的能量值E: E=Y/,'r./=1
O
[0037]1.2)判斷AMR編碼後的當前幀輸出長度是否等於31,若是,則記錄該幀的能量值,作為語音能量參考值,判定該幀為語音幀並加入統計窗口內,進入步驟1.4);若否,則記錄該幀的能量值,作為非語音能量參考值,進入步驟1.3);
[0038]1.3)判斷該幀能量值是否大於能量相對參考值EMf?,若是,則判定該幀為語音幀,若否,則判定該幀為非語音幀;加入統計窗口內,進入步驟1.4)
[0039]1.4)判斷統計窗口是否已滿,若是,則計算統計窗口內語音幀的佔比,表示成O到100的語音概率值;若否,則進入下一幀,跳至步驟1.1);
[0040]2)伺服器端通過接收到的語音概率值選出當前的語音概率值最高的兩個發言者的語音流,並根據這兩個語音概率值大小決定是否使用疊加原理將選出的最多兩路語音流進行混音,最後轉發混音後的語音包。具體的,參照圖2,流程如下:
[0041]2.1)伺服器接收客戶端發送過來的語音概率值,選出語音概率值最高的兩條語音流F1、F2,其語音概率值分別為P1、P2,P1>P2 ;
[0042]2.2)判斷PD2P2是否成立,若是,則只將P1對應的語音流輸出;若否,則將這兩條語音流進行混音後輸出。
[0043]本發明還提出一種輕量級的多方會議混音裝置,包括客戶端和伺服器。
[0044]客戶端包括:用於對語音進行編碼得到語音PCM數據及數據長度的AMR編碼器、用於計算編碼後的語音PCM數據的每幀語音能量值的語音能量計算裝置、結合語音能量值及其數據長度來確定該幀為語音幀或非語音幀的判定裝置,及統計出語音PCM數據的統計窗口中語音幀的概率值的統計裝置。
[0045]伺服器包括:用於接收語音概率值並選出當前的語音概率值最高的兩個發言者的語音流的接收選擇裝置,根據這兩個語音概率值大小決定是否使用疊加原理將選出的最多兩路語音流進行混音的混音裝置,及轉發語音包的發送裝置。
[0046]該裝置在客戶端進行編碼,並結合語音能量值和AMR編碼數據大小兩個因素來區分語音幀和非語音幀,從而統計出其語音概率值。伺服器端,由語音概率值決策出當前發言者(最多兩個)的語音流,並使用疊加原理將選出的最多兩路流進行混音,最後轉發混音後的語音包。該方法巧妙地彌補了手機等便攜小設備計算能力弱的缺陷,同時又大大降低了伺服器進行混音操作的計算量,可廣泛應用在多媒體多方會議系統中。
[0047]上述僅為本發明的【具體實施方式】,但本發明的設計構思並不局限於此,凡利用此構思對本發明進行非實質性的改動,均應屬於侵犯本發明保護範圍的行為。
【權利要求】
1.一種輕量級的多方會議混音方法,其特徵在於:1)客戶端採用AMR編碼器對語音進行編碼後得到語音PCM數據及數據長度,對編碼後的語音PCM數據採用分幀處理,計算每幀語音能量值,並結合該幀語音能量值及其數據長度來確定該幀為語音幀或非語音幀,從而統計出語音PCM數據中語音幀的概率值;2)伺服器端通過接收到的語音概率值選出當前的語音概率值最高的兩個發言者的語音流,並根據這兩個語音概率值大小決定是否使用疊加原理將選出的最多兩路語音流進行混音,最後轉發混音後的語音包。
2.如權利要求1所述的一種輕量級的多方會議混音方法,其特徵在於:預先設定:客戶端每隔一段時間抓取到一幀語音信號,每幀語音信號包括m個採樣值,每個採樣值的能量為A ;設定統計窗口包括連續的η幀語音信號,當前幀的能量相對參考值為Erete ;步驟I)具體包括如下: 1.D客戶端輸入語音PCM數據及AMR編碼後的輸出長度,計算當前幀語音PCM數據的
m能量值Ε: ε=Σ!:*}:
i^l.1.2)判斷AMR編碼後的當前幀輸出長度是否等於31,若是,則記錄該幀的能量值,作為語音能量參考值,判定該幀為語音幀並加入統計窗口內,進入步驟1.4);若否,則記錄該幀的能量值,作為非語音能量參考值,進入步驟1.3); 1.3)判斷當前幀能量值是否大於其能量相對參考值EMf?,若是,則判定該幀為語音幀,若否,則判定該幀為非語音幀;加入新的統計窗口內,進入步驟1.4) 1.4)判斷統計窗口是否已滿,若是,則計算統計窗口內語音幀的佔比,表示成O到100的語音概率值;若否,則進入下一幀,跳至步驟1.1)。
3.如權利要求2所述的一種輕量級的多方會議混音方法,其特徵在於:設定當前幀的前η個連續幀的非語音能量參考值的最大值為EMise,而語音能量參考值的最大值表示為Evoise,則當前幀的能量相對參考值用如下公式計算:
^refer ^noise~^~ ^voice Eno;[se)/lO。
4.如權利要求1所述的一種輕量級的多方會議混音方法,其特徵在於:步驟2)具體如下: 2.1)伺服器接收客戶端發送過來的語音概率值,選出語音概率值最高的兩條語音流卩1、?2,其語音概率值分別為?1、?2,?1汗2 ; 2.2)判斷PD2P2是否成立,若是,則只將?1對應的語音流輸出;若否,則將這兩條語音流進行混音後輸出。
5.一種輕量級的多方會議混音裝置,包括客戶端和伺服器,其特徵在於: 客戶端包括:用於對語音進行編碼得到語音PCM數據及數據長度的AMR編碼器、用於計算編碼後的語音PCM數據的每幀語音能量值的語音能量計算裝置、結合語音能量值及其數據長度來確定該幀為語音幀或非語音幀的判定裝置,及統計出語音PCM數據的統計窗口中語音幀的概率值的統計裝置; 伺服器包括:用於接收語音概率值並選出當前的語音概率值最高的兩個發言者的語音流的接收選擇裝置,根據這兩個語音概率值大小決定是否使用疊加原理將選出的最多兩路語音流進行混音的混音裝置,及轉發語音包的發送裝置。
【文檔編號】H04L29/06GK104167210SQ201410414450
【公開日】2014年11月26日 申請日期:2014年8月21日 優先權日:2014年8月21日
【發明者】王田, 蔡奕僑, 鍾必能, 陳永紅, 田暉, 張國亮 申請人:華僑大學