TWI390503B - Dual channel voice transmission system, broadcast scheduling design module, packet coding and missing sound quality damage estimation algorithm - Google Patents
Dual channel voice transmission system, broadcast scheduling design module, packet coding and missing sound quality damage estimation algorithm Download PDFInfo
- Publication number
- TWI390503B TWI390503B TW098139304A TW98139304A TWI390503B TW I390503 B TWI390503 B TW I390503B TW 098139304 A TW098139304 A TW 098139304A TW 98139304 A TW98139304 A TW 98139304A TW I390503 B TWI390503 B TW I390503B
- Authority
- TW
- Taiwan
- Prior art keywords
- packet
- packets
- streams
- voice
- coding
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/373—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/6312—Error control coding in combination with data compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2416—Real-time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Description
本發明是有關於一種語音傳輸系統,特別是指一種雙通道語音傳輸系統。
在VoIP技術中,以傳輸資料為主的網路來進行語音傳輸的最大困難點,在於語音封包透過網路傳輸時產生的通話延遲、延遲擾動以及封包漏失率等語音損害要素,皆會對網路語音通訊品質產生嚴重的影響。因此為了補償延遲擾動,習知一具體可行的方案是在接收端的應用層中加入一播放緩衝器,用以彈性調整每個收到的語音封包的播放時間。這種方式雖然會增加封包的整體延遲,但也相對降低了晚到封包漏失的機率,因此在語音封包的緩衝延遲與晚到漏失率之間存在一個最佳化權衡的問題,這也成為語音封包播放排程研究的重點課題。因為若排定一個較晚的播放時間,將提高封包播放的機率而降低封包漏失率,但也相對衍生較高的緩衝延遲。
而為了抵抗封包漏失,主要的方法是在傳送端引入前向錯誤控制(FEC),而其原理是在傳輸原始封包的同時附加額外的保護資訊,讓接收端可以利用這些額外資訊來回復漏失的封包。然而由於接收端必須收到原始及額外資訊,才能透過FEC解碼機制來回復可能漏失的封包,所以將不可避免地為整個傳輸系統帶來額外的延遲損害。此外,一旦封包發生叢發性網路漏失,接收端將可能因為無法正確接收原始及額外資訊,而使得FEC無法發揮其封包回復的能力。
因此,近年來有學者提出多重敘述編碼技術(MDC),其主要概念為將音框所屬的編碼參數分成兩個封包串流分別經由兩個相互獨立的傳輸路徑傳輸至接收端,接收端再由接收到的其中一條串流的封包來補償另一條串流所漏失封包的部分資訊,因此可以在不需增加整體延遲的情況下,有效提昇其音框播放品質。而且國際電信聯盟(ITU-T)更制定一個具體的音質預測模型(簡稱E模型,ITU-T G.107)來評估傳輸音質的好壞,並可提供系統規劃及調整系統關鍵元件之用。但由於ITU-T之音質預測模型原是針對單一敘述傳輸系統而設計,並無法精準預測多重敘述傳輸下的音框重建品質。
因此,本發明之一目的,即在提供一種更能精準預測音質損害之應用多重敘述(MD)傳輸及前向錯誤控制(FEC)機制的雙通道語音傳輸系統。
該雙通道語音傳輸系統包括一傳送端及一接收端。
傳送端包含對一段語音訊號編碼以產生複數個語音音框的一語音編碼器,以一固定的封包產生間隔Tp
將該等語音音框封包化並組成一第一封包串流及一第二封包串流的一多重敘述語音編碼器,兩個分別對該第一封包串流及第二封包串流進行前向錯誤控制編碼,以組成複數個由N個封包構成的前向錯誤控制區塊的前向錯誤控制編碼器,並分別經由網際網路之一第一通道及一第二通道將該等前向錯誤控制區塊傳送出去,每一前向錯誤控制區塊包含K個語音封包及(N-K)個檢查封包;且上述該等編碼器會產生一封包編碼延遲dc,以及一決定每一待傳送語音訊號之前向錯誤控制編碼的N、K值及其相對應的一播放排程調整係數β的播放排程設計模組。
該接收端,包含一記錄第一封包串流及第二封包串流在傳送過程中的網路延遲及網路漏失資訊,並據以求得對應的網路延遲參數及網路漏失參數,並回傳給該傳送端之播放排程設計模組的一網路資訊記錄模組,兩個分別對經由網際網路傳來的該第一封包串流及第二封包串流進行前向錯誤控制解碼,以從各該串流之前向錯誤控制區塊中解出複數多重敘述語音封包前向錯誤控制解碼器,一以具有該播放排程調整係數β的播放緩衝器依序接收該二前向錯誤控制解碼器傳來之各該串流的該等多重敘述語音封包,並將兩串流中的該等語音封包合併成完整語音音框的多重敘述解碼器,以及對該等語音音框解碼以輸出語音的一語音解碼器。
該播放排程設計模組係執行一播放排程最佳化演算法:R=94.2-Ie,avg
-ID
(D),其中ID
(D)係與該封包編碼延遲dc、網路延遲參數、N及β呈一函數關係,Ie,avg
係與網路延遲參數、網路漏失參數、N、K及β呈一函數關係,且該播放排程設計模組令β在一預設範圍內,N在一第一預設最大值內及K在一第二預設最大值內,並滿足N/K×一多重敘述編碼增益<2以及K≧下一段語音訊號的封包數的條件下,重覆執行該播放排程最佳化演算法,以找出使R為最大的N、K及β值做為傳送下一段語音訊號的參數。
較佳地,該網路延遲參數包含Pareto分佈參數ks
及gs
和網路延遲累積分佈函數FD,S
(d)及網路延遲平均數d^ i,s
和變異數v^ i,s
,且該網路漏失參數是描述網路漏失情況的吉伯特通道模型參數ps
、qs
,且該多重敘述解碼器的播放緩衝器之一播放延遲,且D=dplay,i
+dc。
較佳地,其中代表兩條串流都漏失的機率,ρ j
(i
)包含封包於兩條串流皆成功接收的比例ρ1
(i)和只有其中一條成功接收的比例ρ2
(i),Ie,j
(e)包含對應於一音框所屬的兩條串流之封包皆成功接收情況下的第一封包編碼及漏失音質損害因子Ie,1
(e)及對應於一音框所屬的兩條串流之封包只有其中一條成功接收情況(Ω2
)下的第二封包編碼及漏失音質損害因子第一串流及第二串流之封包編碼及漏失損害因子Ie,2
(e);而I e , j
(e
)=γ 1, j
+γ 2, j
ln(1+γ 3, j e
),j
=1,2,其中γ1
是語音編碼損害因子,γ2
及γ3
是描述不同封包漏失造成之音質損害程度的封包漏失損害因子,且(γ1,1
、γ2,1
、γ3,1
)及(γ1,2
、γ2,2
、γ3,2
)分別對應於兩串流之封包皆成功接收及只有其中一條串流的封包成功接收時的音質損害程度。
較佳地,ID
(D)=0.024D+0.11(D-177.3)H(D-177.3),其中H是一個步階函數。
藉此,由於播放排程設計模組之播放排程最佳化演算法是從接收端接收到每個話務的最後一個封包之後開始進行,並事先記錄最後一個封包之前的封包實際量測所得到的網路延遲與封包網路漏失狀態,再依據多重敘述傳輸過程的動態網路變動情形,在話務之間尋找能夠使每個話務的音質達到最佳狀態的系統參數(N,K,β)做為傳送下一個話務的依據,以達到有效地對抗封包漏失並提升音質的功效。
本發明之另一目的,在於提供一種更能精準預測音質損害的封包編碼及漏失音質損害估測演算法,用以估測一語音訊號經過多重敘述編碼而組成之一第一封包串流及一第二封包串流由一傳送端輸出並分別經由網際網路之一第一通道及一第二通道傳輸至一接收端所造成之封包編碼及漏失音質損害,其特徵在於:該封包編碼及漏失音質損害估測演算法基於一音框所屬的兩條語音封包串流皆成功接收之情況下的一第一語音編碼損害因子及一第一封包漏失損害因子,以及一音框所屬的兩條串流同時發生漏失的一漏失比例,求得一第一封包編碼及漏失音質損害估測值,以及基於一音框所屬的兩條串流只有其中一條成功接收之情況下的一第二語音編碼損害因子及一第二封包漏失損害因子,以及該漏失比例,求得一第二封包編碼及漏失音質損害估測值;並計算被接收之一音框所屬的兩條串流同時發生漏失的一第一比例,以及計算被接收之一音框所屬的兩條串流至少其中之一發生漏失的一第二比例,並根據該第一比例及該第二比例求得一音框所屬的兩條串流皆成功接收之情況下的一雙重接收比例,及一音框所屬的兩條串流只有其中一條成功接收之情況下的一單一接收比例;並以該雙重接收比例對該第一封包編碼及漏失音質損害估測值加權,並以該單一接收比例對該第二封包編碼及漏失音質損害估測值加權,再將兩者加總而求得該語音訊號之一封包編碼及漏失音質損害估測值。
較佳地,該封包編碼及漏失音質損害估測演算法可以下式表示:,其中Ie
(e)是封包編碼及漏失音質損害估測值,e是兩條串流的封包都漏失的機率,ρ j
(i
)包含封包於兩條串流皆成功接收的雙重接收比例ρ1
(i)和只有其中一條成功接收的單一接收比例ρ2
(i),其中ρ1
=(1-eloss,1
)×(1-eloss,2
)/(1-e),其中eloss,1
代表第一封包串流中封包漏失的機率,eloss,2
代表第二封包串流中封包漏失的機率,且ρ2
=1-ρ1
;而Ie,j
(e)包含對應於一音框所屬的兩條串流之封包皆成功接收情況下的第一封包編碼及漏失音質損害估測值Ie,1
(e),及對應於一音框所屬的兩條串流之封包只有其中一條成功接收情況下的第二封包編碼及漏失音質損害估測值Ie,2
(e),且I e , j
(e
)=γ 1, j
+γ 2, j
ln(1+γ 3, j e
),j
=1,2,其中γ1
是語音編碼損害因子,γ2
及γ3
是描述不同封包漏失造成之音質損害程度的封包漏失損害因子,且(γ1,1
、γ2,1
、γ3,1
)及(γ1,2
、γ2,2
、γ3,2
)分別對應於兩串流之封包皆成功接收及只有其中一條串流的封包成功接收時的音質損害程度。
藉此,封包編碼及漏失音質損害估測演算法可以在雙通道傳輸系統未應用FEC機制時,更精確地估測一語音訊號經過多重敘述編碼並分別經由網際網路傳輸至一接收端所造成之封包編碼及漏失音質損害。
有關本發明之前述及其他技術內容、特點與功效,在以下配合參考圖式之一個較佳實施例的詳細說明中,將可清楚的呈現。
參見圖1,是本發明雙通道語音傳輸系統的一較佳實施例,其用以實現本發明雙通道語音傳輸方法,並包括經由網際網路傳輸語音訊號的一傳送端100及一接收端200。
傳送端100包含一語音編碼器11、一多重敘述語音編碼器12、兩個前向錯誤控制(Forward Error Control,以下簡稱FEC)編碼器13、14及一播放排程設計模組15。
如圖2所示,是本發明雙通道語音傳輸方法的一較佳實施例流程圖,首先如步驟31,傳送端100之語音編碼器11對輸入之一語音訊號進行編碼。在一般VoIP語音通話中,一段語音中會包涵話務(talkspurt)及靜音(silence)兩部分,例如”大家好,我是xxx,請多多指教”這段話中即包含了由逗號隔開的3個話務(三段子句),每個話務之間的空白(停頓)就是靜音。而且,本實施例之語音編碼器是以G.729a或AMR-WB語音編碼標準對每個話務進行語音編碼,以產生複數個語音音框,因此每個經過語音編碼的話務是由數個語音音框所組成。
多重敘述(Multiple Description,以下簡稱MD)語音編碼器12對每個話務的音框進行MD編碼,將音框封包化(packetization)並分成兩條封包串流(以下稱第一封包串流及第二封包串流)後,分別送至兩個FEC編碼器13、14。
本實施例之FEC編碼器是使用(N,K)區塊碼的編碼方式,以K個語音封包來產生(N-K)個檢查封包,再共同組成一個包含N個封包的編碼區塊再傳遞出去。如此,則當N個封包中至少有K個被接收端成功接收時,則其它的漏失封包皆可被回復。且本實施例是採用Reed-Solomon(RS)編碼器做為FEC編碼器13、14,一般來說Reed-Solomon(RS)編碼器可以更正(N-K)/2個封包漏失,但若確知漏失封包的位置時,則可更正(N-K)個封包漏失。
因此,分別經過兩個FEC編碼器13、14編碼後的第一封包串流S1
及第二封包串流S2
會分別包含複數個FEC區塊,每個FEC區塊包含N個封包,並分別經由網際網路相互獨立的一第一通道及一第二通道傳輸給接收端200。
而且接收端之語音編碼器11、MD編碼器12及FEC編碼器13、14在編碼的過程中,會產生一編碼延遲dc,該編碼延遲dc會被記錄在播放排程設計模組15中,以做為播放排程設計模組15設計下一個話務之播放排程的參考,播放排程設計模組15用以決定每一待傳送話務之FEC編碼的N、K值及其相對應的一播放排程調整係數β,細節容後說明。
接收端200包含一網路資訊記錄模組21、兩個前向錯誤控制(下稱FEC)解碼器22、23、一多重敘述(下稱MD)解碼器24及一語音解碼器25。
且如圖2之步驟32,網路資訊記錄模組21偵測經由第一通道及第二通道傳輸之第一封包串流S1及第二封包串流S2的封包在網際網路中的網路延遲及網路漏失資訊並記錄,並根據記錄的結果求得描述網路延遲的Pareto分佈參數ks
及gs
和網路延遲累積分佈函數FD,S
(D),描述網路漏失情況的吉伯特通道模型參數ps
、qs
,以及代表封包網路延遲的平均估計值和變異數估計值(網路延遲參數),其中和分別是以下列的自迴歸方法(Autoregressive,AR method)來估計:
其中,第s(s=1,2)串流中的第i個封包網路延遲的平均與變異數之估計值,是由該串流中前一個封包對應的估測計值{},配合其實際量測的網路延遲n i -1, s
分別加權所組成,在此α值設為0.998002。β是用來設定播放延遲dplay,i
的播放排程調整係數,讓接收端設定的播放時間比封包抵達的估計時間更晚一點,讓播放排程有更足夠的時間來播放。
再者由於網路延遲累積分佈函數FD,S
(D)與ks
、gs
具有一函數關係:FD,s
(D)=1-(ks
/D)gs
,D≧ks
所以只要給定FD,s
(D)函數形式就可以知道(ks
,gs
),同樣地只要給定(ks
,gs
),也可推得FD,s
(D)。
然後,網路資訊記錄模組21將該些參數ks
、gs
、FD,S
(D)、ps
、qs
、和利用傳送端100傳送下一個話務之前的空檔回傳給傳送端100的播放排程設計模組15。
同時,兩個FEC解碼器22、23分別接收經由網際網路傳來的第一封包串流S1及第二封包串流S2並對其中的FEC區塊並進行FEC解碼,以從各串流之FEC區塊中解出MD語音封包後,再將各串流之該等MD語音封包分別送入MD解碼器24中進行MD解碼,以將兩串流中的該等MD語音封包合併成對應的完整語音音框,如圖3之例子,其顯示一個話務的42個G.729音框經由MD解碼器24解碼後的情形,其中黑實心框代表兩條串流的封包皆成功接收(Ω1
)並經由MD解碼後的音框,黑線框代表只有其中一條串流的封包被成功接收(Ω2
)並經由MD解碼後的音框,而兩條串流的封包皆發生漏失(Ω3
)的音框刪除則由虛線框來表示。最後,語音解碼器25對MD解碼後的音框進行語音解碼以重建(還原)語音訊號並輸出。
此外,MD解碼器24會以具有該調整係數β之播放緩衝器所設定之播放延遲dplay,i
來接收語音封包,這是因為在網路語音傳輸系統中,傳送端100之MD編碼器12會以固定的封包產生間隔Tp
產生封包後再經由網路傳送,但由於網路本身的特性,會造成每個封包的延遲不會固定,以致有些封包會在接收端預定的播放時間之後才到達,因此,在MD解碼器24中設置播放緩衝器可使封包抵達後先暫存於緩衝器一小段時間(即播放延遲dplay,I
)再播放,可大幅減少封包因晚到而漏失的機率,但播放緩衝器的長度將影響整體語音的播放延遲時間,因此為因應網路時變特性,本實施例之播放排程設計模組15將針對每一話務選擇適當的調整係數β來調整播放緩衝器長度,以在封包漏失及播放延遲之間取得平衡點,其做法容後詳述。
當播放排程設定模組15收到網路資訊記錄模組21傳來之該些網路參數ks
、gs
、FD,S
(D)、ps
、qs
、和後,其執行一播放排程最佳化演算法,以找尋最佳的N、K及β值,播放排程最佳化演算法為:
R
=94.2-I e,avg
-I d
(D
)
以及K≧下一個話務的封包數
其中R代表音質評量標準,當R越大時,表示接收端收到的語音音質越佳,因此,在ps
、qs
、di,s
、Vi,s
、ks
、gs
、FD,S
(D)、Tp
、dc皆已知的情況下,該演算法將擇定使R為最大的N、K及β
值,以使語音在傳送過程中的音質損害降到最低。
該最佳化演算法是以一最佳化演算程式來實現,且該程式是以搜尋的方式,在合理的範圍內,尋找出可使R值最大的系統傳輸參數(N,K,β
)。程式執行流程概略如下(“//”代表註解):
Initial:R1
=0;R2
=0;
FOR β search
=β min :u:β max
//設定β
的尋找範圍,u為尋找的間隔;例如β min :u:β max
=1:0.5:10
FOR K search
=1:1:K max
//Ksearch
=1,2,3,...,Kmax
,例如Kmax
=8
FOR N search
=K search
+1:1:N max
//Nsearch
=Ksearch
+1,Ksearch
+2,...,Nmax
,例如Nmax
=15
IF(N search /K search )×(MD coding gain)
<2
//先判斷是否符合(N,K)的限制,符合才進行以下步驟;
D
=d^ i,1
+β search ×
v^ i,1
+(N search -1)×T p
+dc
//先使用第一封包串流的網路延遲參數,也就是(d^ i,1
,v^ i,1
);
I d (D)
=0.024D+0.11(D-177.3)H(D-177.3)//求得I d (D),
其中H是一個步階函數;
I e,temp
= Ie,avg (N search ,K search ,β search ,p 1 ,q 1 ,F D,1 (D),(k 1 ,g 1 ),p 2 ,q 2 ,F D,2 (D),(k 2 ,g 2 ),
d^ i,1
,v^ i,1 )
//這部分Ie,avg
是以subfunction形式呈現,輸入Nsearch
,Ksearch
,β search
,網路參數(第s串流,s=1,2),然後求得Ie,temp
值(容後詳述)。
R 1_temp
=94.2-Id(D)-I e,temp
//計算在此參數(Nsearch
,Ksearch
,β search
)下的R值。
IF R 1_temp
>R 1
//計算完後,與前幾次尋找出的最大R值(R1)做比較,如果比較大,則記錄其對應的值(R1,Nsearc
h,Ksearch
,β search
),而R1
將與下一個迴圈計算出的R1_temp
做比較;
R 1
=R 1 _ temp ;
N _1
=N search ;K _1
=K search ;β _1
=β search ;
END IF
//目前為止,演算法已找出針對第一串流之最佳的系統傳輸參數,及其對應的R值(R1
)。
//接著,使用串流2的網路延遲參數,以下步驟如上。
D
=d^ i,2
+β search ×
v^ i,2
+(N search -1)×T p
+dc//
第二封包串流的網路延遲參數,也就是(d^ i,2
,v^ i,2
);
I d (D)
=0.024D+0.11(D-177.3)H(D-177.3)//求得I d (D)
I e,temp
=I e,avg (N search ,K search ,β search ,p 1 ,q 1 ,F D,1 (D),(k 1 ,g 1 ),p 2 ,q 2 ,F D,2 (D),(k2,g2),
d^
i,2,v^
i,2)//
求得I e,temp
R 2_temp
=94.2-Id(D)-I e,temp
IF R 2_temp
>R 2
R 2
=R 2_temp
N _2
=N search ;K _2
=K search ;β _2
=β search ;
END IF
//到此為止,演算法也已找出針對第二串流之最佳的系統傳輸參數,及其對應的R值(R2
)。
END IF
END
END
END
//在上面三層for迴圈結束後,我們已找到兩組參數,分別是(N_1
,K_1
,β _1
)及(N_2
,K_2
,β _2
)。由於傳輸時,兩條串流所傳送的內容是屬於同一個封包資訊,因此兩條串流的播放排程必須相同,以便於能夠合併還原封包來播放,所以接下的步驟,就是要在這兩組參數中選擇一組最佳的。
IF R 1
>R 2
//假如R1
比R2
大,則將使用R1
對應的最佳參數(N_1
,K_1
,β _1
)。
(N,K,β)
=(N _1 ,K _1 ,β _1 )
dplay,i
(播放延遲)=d^
i,1+β×
v^
i,1+(N-1)×T p
ELSE
//否則,就使用R2
對應的最佳參數(N_2
,K_2
,β _2
)。
(N,K,β)
=(N _2 ,K _2 ,β _2 )
dplay,i
(播放延遲)=d^
i,2+β×
v^
i,2+(N-1)×T p
END IF
最後,則以(N,K,β
)做為下一段話務的最佳傳輸參數,而dplay,i
(播放延遲)就做為接收端具有最佳調整係數β
的下一段話務之播放排程。
Ie,avg
(即Ie,temp
)在程式中是以函數(function)來呈現,而其相關數學式子及推導如下:
其中代表使用FEC編碼機制下的兩條串流都漏失的機率,也就是封包不能被播放的機率。另外,與封包編碼及漏失音值損害估測相關的串流接收比例ρ j
(i
),其在此的數學表示為:
ρ 2
(i)=1-ρ1
(i)
其中PFEC,s
(i)(s=1,2)代表第s串流中,當封包發生晚到或網路漏失卻都無法由FEC回復的機率。且PFEC,s
(i)可以進一步寫成:
其中;FD,s
(DFEC,i
)代表封包i的網路延遲小於DFEC,i
的機率,PREC1,s
(i)及PREC2,s
(i)分別代表第s串流的第i個封包發生網路及晚到漏失後可經由FEC回復的機率。且經由相關推導,可以證明PREC1,s
(i)及PREC2,s
(i)這兩項機率可以表示為:
其中R s
'(m
+1,i
,D FEC,i
)及是表示第s串流中第i個封包發生網路漏失之後和之前的n-1個封包內有m-1個封包發生網路或晚到漏失的機率,S s
'(m
+1,i
,D FEC,i
)及則代表接受到第s串流中第i個封包之後和之前的n-1個封包內接受到了m-1個封包的機率。有關於PREC1,s
(i)及PREC2,s
(i)之運算式係參考Technical Report IC/2002/35中所發表之論文”ADAPTIVE JOINT PLAYOUT BUFFER AND FEC ADJUSTMENT FOR INTERNET TELEPHONY”內容修改而成。
因此給定了(Nsearch
,Ksearch
,βsearch
)及相關網路參數,透過以上的計算就可以得到ρ 1
、ρ2
及值。
而由於以非線性迴歸分析可以導出封包編碼及漏失損害因子I e , j
(e
)=γ 1, j
+γ 2, j
ln(1+γ 3, j e
),j
=1,2,其中Ie,1
(e)是對應於一音框所屬的兩條串流之封包皆成功接收情況(Ω1
)下的第一封包編碼及漏失音質損害估測值,及Ie,2
(e)是對應於一音框所屬的兩條串流之封包只有其中一條成功接收情況(Ω2
)下的第二封包編碼及漏失音質損害估測值。
且如下表1所示,上式中之γ1
是語音編碼損害因子,γ2
及γ3
是非線性迴歸數學式子,其分別描述不同封包漏失造成之音質損害程度,且γ1
、γ2
、γ3
是以習知數值分析方法求得,其中(γ1,1
、γ2,1
、γ3,1
)及(γ1,2
、γ2,2
、γ3,2
)分別對應於兩串流之封包皆成功接收(Ω1
)及只有其中一條串流的封包成功接收(Ω2
)時的封包編碼及漏失音質損害程度值。
因此,將(即e值)及表1中對應的γ1
、γ2
、γ3
代入上式中,即可求得Ie,1
(e)及Ie,2
(e)。
最後將ρ 1
、ρ2
、Ie,1
(e)及Ie,2
(e)代入式1中,即可估算出當傳輸系統設定(Nsearch
,Ksearch
,βsearch
)這組傳輸參數時,則當封包傳輸於當下的網路傳輸環境(所謂的”當下的網路傳輸環境”是由接收端回傳的網路參數來描述)時,其受到封包編碼及網路漏失損害後,經由FEC解碼及MD解碼回復之後的封包編碼及漏失音質損害估測值(Ie,avg
)。
因此,經由上述播放排程最佳化演算法找到使R值達到最大的N、K及β值後,該(N、K)值被送給FEC編碼器13、14做為下一個話務的FEC區塊編碼參數,而β值則被傳給接收端200,做為用來調整MD解碼器24接收下一個話務之語音封包的播放緩衝器長度的調整係數。
值得一提的是,本實施例之封包編碼及漏失音質損害估測值(Ie,avg)是同時考量到FEC編碼的回復能力(估計正確接收到至少K個封包的機率)以及MD編碼重建後的封包播放品質(估計雙重接收比例及單一接收比例)的封包編碼及漏失音質損害估測值。
綜上所述,由於播放排程設計模組之音質最佳化演算法是從接收端200接收到每個話務的最後一個封包之後開始進行,並事先記錄最後一個封包之前L個封包實際量測所得到的網路延遲與封包網路漏失狀態,再依據MD傳輸過程的動態網路變動情形,在話務之間尋找能夠使每個話務的音質達到最佳狀態的系統參數(N,K,β),並將(N,K)用在傳送端傳送下一個話務的FEC編碼中,而同時等待接收下一個話務的接收端,因此,其MD解碼器24則依據調整係數β決定其播放緩衝器長度,並將第i個封包的FEC緩衝延遲調整為,播放延遲dplay,i
設定為,以及整體延遲Dm2e
=dplay,i
+dc。藉此,使接收端能收到音質狀態最佳的語音。
再者,如圖4所示,當語音傳輸系統之傳送端400未使用FEC編碼機制,而接收端500不用考慮FEC編碼的回復能力時,則傳送端400之播放排程設計模組43之播放排程最佳化演算法只要找到最佳的β值即可,亦即當播放排程設計模組43收到網路資訊記錄模組51傳來之該些網路參數ks
、gs
、FD,S
(D)、ps
、qs
、和後,其執行之播放排程最佳化演算法即簡化為:
R
=94.2-I e
(e
)-I d
(D
)
其中R代表音質評量標準,當R越大時,表示接收端收到的語音音質越佳,因此,在ps
、qs
、di,s
、Vi,s
、ks
、gs
、FD,S
(D)、Tp
、dc皆已知的情況下,該演算法將擇定使R為最大的β值,以使語音在傳送過程中的音質損害降到最低。
該最佳化演算法是以一最佳化演算程式來實現,且該程式是以搜尋的方式,在合理的範圍內,尋找出可使R值最大的β值。程式執行流程概略如下(“//”代表註解):
Initial:R1
=0;R2
=0;
FOR β search
=β min :u:β max
//設定β
的尋找範圍,u為尋找的間隔;例如β min :u:β max
=1:0.5:10
D
=d^ i,1
+β search ×
v^ i,1
+dc
//先使用第一封包串流的網路延遲參數,也就是(d^ i,1
,v^ i,1
);
I d (D)
=0.024D+0.11(D-177.3)H(D-177.3)//求得I d (D)
,其中H是一個步階函數;
I e,temp
=I e (β search ,p 1 ,q 1 ,F D,1 (D),(k 1 ,g 1 ),p 2 ,q 2 ,F D,2 (D),(k 2 ,g 2 ),
d^ i,1
,v^ i,1
)//這部分Ie
是以subfunction形式呈現,輸入β search
、網路參數(第s串流,s=1,2),然後求得Ie,temp
值(容後詳述)。
R 1_temp
=94.2-I e,temp -I d (D)
//計算在此β search
參數下的R值。
IF R 1_temp
>R 1
//計算完後,與前幾次尋找出的最大R值(R1
)做比較,如果比較大,則記錄其對應的值(R1
,β search
),而R1
將與下一個迴圈計算出的R1_temp
做比較;
R 1
=R 1_temp ;
β _1
=β search ;
END IF
//目前為止,演算法已找出針對第一串流之最佳的系統傳輸參數β(β _1 )
,及其對應的R值(R1
)。
//接著,使用第二封包串流的網路延遲參數來求得R值
(R2
),以下步驟如上。
D
=d^ i,2
+βsearch×
v^ i,2
+dc//
第二封包串流的網路延遲參數,也就是(d^ i,2
,v^ i,2
);
I d (D)
=0.024D+0.11(D-177.3)H(D-177.3)//求得I d (D)
I e,temp
=I e (β search ,p 1 ,q 1 ,F D,1 (D),(k 1 ,g 1 ),p 2 ,q 2 ,F D,2 (D),(k 2 ,g 2 ),
d^ i,2
,v^ i,2
)//求得I e,temp
R 2_temp
=94.2-I e,temp -I d (D)
IF R 2_temp
>R 2
R 2
=R 2_temp
β _2
=β search ;
END IF
//到此為止,演算法也已找出針對第二串流之最佳的系統傳輸參數β _2
,及其對應的R值(R2
)。
END IF
END
//在上面for迴圈結束後,可以找到兩組參數β _1
及β _2
。由於傳輸時,兩條串流所傳送的內容是屬於同一個封包資訊,因此兩條串流的播放排程必須相同,以便於能夠合併還原封包來播放,所以接下的步驟,就是要在這兩組參數中選擇一組最佳的。
IF R 1
>R 2
//假如R1
比R2
大,則將使用R1
對應的最佳參數β _1
。
β
=β _1
dplay,i
(播放延遲)=d^ i,1
+β×
v^
i,1
ELSE
//否則,就使用R2
對應的最佳參數β _2
。
β
=β _2
dplay,i
(播放延遲)=d^ i,2
+β×
v^
i,2
END IF
最後,則以β
做為下一段話務的最佳傳輸參數,而dplay,i
(播放延遲)就做為接收端具有最佳調整係數β
的下一段話務之播放排程。
在尋找最佳的β
值的過程中,由於不考慮FEC編碼機制,所以Ie,temp
值可以一簡化之封包編碼及漏失音質損害估測演算法來表示,其中e代表封包不能被播放的機率,即兩條串流的封包都漏失的機率,所以e可以寫成:e=eloss,1
×eloss,2
=(Pn1
+(1-Pn1
)×Pb1
)×(Pn2
+(1-Pn2
)×Pb2
);其中eloss,s
(s=1,2)代表第s串流中,封包漏失的機率。而Pn1
+(1-Pn1
)×Pb1
係指第一條串流封包網路漏失(Pn1
)或封包沒發生網路漏失(1-Pn1
)但卻晚到了(Pb1
)的機率。同理,Pn2
+(1-Pn2
)×Pb2
係指第二條串流封包網路漏失(Pn2
)或封包沒發生網路漏失(1-Pn2
)但卻晚到了(Pb2
)的機率。而Pbs
=1-FD,s
(dplay,i
)表示封包晚到漏失的機率,s=1,2;,所以,(1-e)的意思就是封包可以被播放的機率。因此可以求得雙重接收比例ρ 1
=(1-eloss,1
)×(1-eloss,2
)/
(1-e),也就是在封包可以被播放的前提之下,封包是由兩條串流資訊合併而成的機率,且ρ 2
=1-ρ 1
,且由上述封包編碼及漏失損害因子I e,j
(e
)=γ 1,j
+γ 2,j
1n(1+γ 3,j e
),j
=1,2及表1可以求得Ie,1
(e)及Ie,2
(e),即可進一步求得Ie,temp
=Ie
(e)=ρ 1
×Ie,1
(e)+ρ 2
×Ie,2
(e),再代入前述之播放排程最佳化演算法中,即可估算出當傳輸系統設定β search
這組傳輸參數時,則當封包傳輸於當下的網路傳輸環境(所謂的”當下的網路傳輸環境”是由接收端回傳的網路參數來描述)時,其受到封包編碼及網路漏失損害後,經由MD解碼回復之後的封包編碼及漏失音質損害估測值Ie,temp
。
因此,經由上述播放排程最佳化演算法找到使R值達到最大的β
值後,該β
值則被傳給接收端500,做為用來調整MD解碼器52接收下一個話務之語音封包的播放緩衝器長度的調整係數。
惟以上所述者,僅為本發明之較佳實施例而已,當不能以此限定本發明實施之範圍,即大凡依本發明申請專利範圍及發明說明內容所作之簡單的等效變化與修飾,皆仍屬本發明專利涵蓋之範圍內。
100、400...傳送端
200、500...接收端
11、41...語音編碼器
12、42...多重敘述(MD)編碼器
13、14...前向錯誤控制(FEC)編碼器
15、43...播放排程設計模組
21、51...網路資訊記錄模組
22、23...前向錯誤控制(FEC)解碼器
24、52...多重敘述(MD)解碼器
25、53...語音解碼器
31~33...步驟
圖1是本發明雙通道語音傳輸系統應用FEC機制的一較佳實施例的系統方塊圖;圖2是本發明雙通道語音傳輸方法的一較佳實施例之流程圖;圖3是本實施例之接收端所收到之一話務的語音音框示意圖;及
圖4是本發明雙通道語音傳輸系統未應用FEC機制的一較佳實施例的系統方塊圖。
31~33...步驟
Claims (23)
- 一種雙通道語音傳輸系統,包括:一傳送端,包含:一語音編碼器,對一段語音訊號編碼以產生複數個語音音框;一多重敘述語音編碼器,以一固定的封包產生間隔Tp 將該等語音音框封包化並組成一第一封包串流及一第二封包串流;兩個前向錯誤控制編碼器,分別對該第一封包串流及第二封包串流進行前向錯誤控制編碼,以組成複數個由N個封包構成的前向錯誤控制區塊,並分別經由網際網路之一第一通道及一第二通道傳送出去,每一前向錯誤控制區塊包含K個語音封包及(N-K)個檢查封包;且上述該等編碼器會產生一封包編碼延遲dc,及一播放排程設計模組,決定每一待傳送語音訊號之前向錯誤控制編碼的N、K值及其相對應的一播放排程調整係數β;一接收端,包含:一網路資訊記錄模組,偵測並記錄經由第一通道及第二通道傳送至接收端之第一封包串流及第二封包串流在傳送過程中的網路延遲及網路漏失資訊,並據以求得對應的網路延遲參數及網路漏失參數後回傳給該傳送端之播放排程設計模組;兩個前向錯誤控制解碼器,分別對經由網際網路傳來的該第一封包串流及第二封包串流進行前向錯誤控制解碼,以從各該串流之前向錯誤控制區塊中解出複數多重敘述語音封包;一多重敘述解碼器,以具有該播放排程調整係數β的播放緩衝器依序接收該二前向錯誤控制解碼器傳來之各該串流的該等多重敘述語音封包,並將兩串流中的該等語音封包合併成完整語音音框;及一語音解碼器,對該等語音音框解碼以輸出語音;其中,該播放排程設計模組係執行一播放排程最佳化演算法:R=94.2-Ie,avg -ID (D)其中ID (D)係與該封包編碼延遲dc、網路延遲參數、N及β呈一函數關係,Ie,avg 係與網路延遲參數、網路漏失參數、N、K及β呈一函數關係,且該播放排程設計模組令β在一預設範圍內,N在一第一預設最大值內及K在一第二預設最大值內,並滿足N/K×一多重敘述編碼增益<2以及K≧下一段語音訊號的封包數的條件下,重覆執行該播放排程最佳化演算法,以找出使R為最大的N、K及β值做為傳送下一段語音訊號的參數。
- 依據申請專利範圍第1項所述之雙通道語音傳輸系統,其中該網路延遲參數包含Pareto分佈參數ks 及gs 和網路延遲累積分佈函數FD,S (d)及網路延遲平均數d^ i,s 和變異數v^ i,s ,且該網路漏失參數是描述網路漏失情況的吉伯特通道模型參數ps 、qs 。
- 依據申請專利範圍第2項所述之雙通道語音傳輸系統,其中該多重敘述解碼器的播放緩衝器之一播放延遲dplay,i =,且D=dplay,i +dc。
- 依據申請專利範圍第3項所述之雙通道語音傳輸系統,其中代表兩條串流都漏失的機率,ρ j (i )包含封包於兩條串流皆成功接收的比例ρ1 (i)和只有其中一條成功接收的比例ρ2 (i),Ie,j (e)包含對應於一音框所屬的兩條串流之封包皆成功接收情況下的第一封包編碼及漏失音質損害因子Ie,1 (e)及對應於一音框所屬的兩條串流之封包只有其中一條成功接收情況(Ω2 )下的第二封包編碼及漏失音質損害因子第一串流及第二串流之封包編碼及漏失損害因子Ie,2 (e)。
- 依據申請專利範圍第4項所述之雙通道語音傳輸系統,其中I e , j (e)=γ 1, j +γ 2, j ln(1+γ 3, j e ),j =1,2,其中γ1 是語音編碼損害因子,γ2 及γ3 是描述不同封包漏失造成之音質損害程度的封包漏失損害因子,且(γ1,1 、γ2,1 、γ3,1 )及(γ1,2 、γ2,2 、γ3,2 )分別對應於兩串流之封包皆成功接收及只有其中一條串流的封包成功接收時的音質損害程度。
- 依據申請專利範圍第3項所述之雙通道語音傳輸系統,其中ID (D)=0.024D+0.11(D-177.3)H(D-177.3),其中H是一個步階函數。
- 依據申請專利範圍第1項所述之雙通道語音傳輸系統,其中一段語音訊號包涵多個有聲音的語音話務以及介於每個語音話務之間沒有聲音的靜音,該語音話務即是該段語音訊號中的一個語音話務。
- 一種雙通道語音傳輸方法,應用於一傳送端與一接收端之間,該方法包括:(A)令該傳送端對一段語音訊號進行多重敘述編碼及前向錯誤控制編碼,以一固定的封包產生間隔Tp 產生一包含複數個由N個封包構成的前向錯誤控制區塊的第一封包串流及一包含複數個由N個封包構成的前向錯誤控制區塊的第二封包串流,並分別經由網際網路的一第一通道及一第二通道傳輸出去,且每一前向錯誤控制區塊包含K個語音封包及(N-K)個檢查封包,且上述編碼過程會產生一封包編碼延遲dc;(B)令該接收端以一具有一播放排程調整係數β之播放緩衝器接收該第一封包串流及第二封包串流,且偵測並記錄該第一封包串流及第二封包串流在傳送過程中的網路延遲及網路漏失資訊,並據以求得對應的網路延遲參數及網路漏失參數並回傳給該傳送端;及(C)令該傳送端執行一播放排程最佳化演算法:R=94.2-Ie,avg -ID (D),其中ID (D)係與該封包編碼延遲dc、網路延遲參數、N及β呈一函數關係,Ie,avg 係與網路延遲參數、網路漏失參數、N、K及β呈一函數關係,且該傳送端令β在一預設範圍內,N在一第一預設最大值內及K在一第二預設最大值內,並滿足N/K×一多重敘述編碼增益<2以及K≧下一段語音訊號的封包數的條件下,重覆執行該播放排程最佳化演算法,以找出使R為最大的N、K及β 值做為傳送下一段語音訊號的參數。
- 依據申請專利範圍第8項所述之雙通道語音傳輸方法,其中步驟(B)之該網路延遲參數包含Pareto分佈參數ks 及gs 和網路延遲累積分佈函數FD,S (d),以及網路延遲平均數d^ i,s 和變異數v^ i,s 且該網路漏失參數是描述網路漏失情況的吉伯特通道模型參數ps 、qs 。
- 依據申請專利範圍第9項所述之雙通道語音傳輸方法,其中該播放緩衝器之一播放延遲,且D=dplay,i +dc。
- 依據申請專利範圍第10項所述之雙通道語音傳輸方法,其中,其中代表兩條串流都漏失的機率,ρ j (i )包含封包於兩條串流皆成功接收的比例ρ 1 (i)和只有其中一條成功接收的比例ρ 2 (i),Ie,j (e)包含對應於一音框所屬的兩條串流之封包皆成功接收情況下的第一封包編碼及漏失音質損害因子Ie,1 (e)及對應於一音框所屬的兩條串流之封包只有其中一條成功接收情況(Ω2 )下的第二封包編碼及漏失音質損害因子第一串流及第二串流之封包編碼及漏失損害因子Ie,2 (e)。
- 依據申請專利範圍第11項所述之雙通道語音傳輸方法,其 中I e,j (e )=γ 1,j +γ 2,j 1n(1+γ 3,j e ),j =1,2,其中γ1 是語音編碼損害因子,γ2 及γ3 是描述不同封包漏失造成之音質損害程度的封包漏失損害因子,且(γ1,1 、γ2,1 、γ3,1 )及(γ1,2 、γ2,2 、γ3,2 )分別對應於兩串流之封包皆成功接收及只有其中一條串流的封包成功接收時的音質損害程度。
- 依據申請專利範圍第10項所述之雙通道語音傳輸方法,其中ID (D)=0.024D+0.11(D-177.3)H(D-177.3),其中H是一個步階函數。
- 一種播放排程設計模組,應用於一傳送端,用以決定每一待傳送至一接收端之語音話務的前向錯誤控制編碼的N、K值及其相對應的一播放排程調整係數β,該傳送端對一段語音話務進行多重敘述編碼及前向錯誤控制編碼,並以一固定的封包產生間隔Tp 產生一包含複數個由N個封包構成的前向錯誤控制區塊的第一封包串流及一包含複數個由N個封包構成的前向錯誤控制區塊的第二封包串流,並分別經由網際網路的一第一通道及一第二通道傳輸出去,且每一前向錯誤控制區塊包含K個語音封包及(N-K)個檢查封包,且上述編碼過程會產生一封包編碼延遲dc;該接收端以一具有該播放排程調整係數β之播放緩衝器接收該第一封包串流及第二封包串流,且偵測並記錄該第一封包串流及第二封包串流在傳送過程中的網路延遲及網路漏失資訊,並據以求得對應的網路延遲參數及網路漏失參數並回傳給該傳送端;其特徵在於:該播放排程設計模組執行一播放排程最佳化演算法:R=94.2-Ie,avg -ID (D),其中ID (D)係與該封包編碼延遲dc、網路延遲參數、N及β呈一函數關係,Ie,avg 係與網路延遲參數、網路漏失參數、N、K及β呈一函數關係,且該播放排程設計模組令β在一預設範圍內,N在一第一預設最大值內及K在一第二預設最大值內,並滿足N/K×一多重敘述編碼增益<2以及K≧下一段語音訊號的封包數的條件下,重覆執行該播放排程最佳化演算法,以找出使R為最大的N、K及β值做為傳送下一段語音訊號的參數。
- 依據申請專利範圍第14項所述之播放排程設計模組,其中該網路延遲參數包含Pareto分佈參數ks 及gs 和網路延遲累積分佈函數FD,S (d),以及網路延遲平均數d^ i,s 和變異數v^ i,s ,且該網路漏失參數包含描述網路漏失情況的吉伯特通道模型參數ps 、qs 。
- 依據申請專利範圍第15項所述之播放排程設計模組,其中該播放緩衝器之一播放延遲,且D=dplay,i +dc。
- 依據申請專利範圍第16項所述之播放排程設計模組,其中代表兩條串流都漏失的機率,ρ j (i )包含封包於兩條串流皆成功接收的比例ρ1 (i)和只有其中一條成功接收的比例ρ2 (i),Ie,j (e)包含對應於一音框所屬的兩條串流之封包皆成功接收情況下的第一封包編碼及漏失音質損害因子Ie,1 (e)及對應於一音框所屬的兩條串流之封包只有其中一條成功接收情況下的第二封包編碼及漏失音質損害因子第一串流及第二串流之封包編碼及漏失損害因子Ie,2 (e)。
- 依據申請專利範圍第17項所述之播放排程設計模組,其中I e , j (e)=γ 1, j +γ 2, j ln(1+γ 3, j e ),j =1,2,其中γ1 是語音編碼損害因子,γ2 及γ3 是描述不同封包漏失造成之音質損害程度的封包漏失損害因子,且(γ1,1 、γ2,1 、γ3,1 )及(γ1,2 、γ2,2 、γ3,2 )分別對應於兩串流之封包皆成功接收及只有其中一條串流的封包成功接收時的音質損害程度。
- 依據申請專利範圍第16項所述之播放排程設計模組,其中ID (D)=0.024D+0.11(D-177.3)H(D-177.3),其中H是一個步階函數。
- 一種封包編碼及漏失音質損害估測演算法,用以估測一語音訊號經過多重敘述編碼而組成之一第一封包串流及一第二封包串流由一傳送端輸出並分別經由網際網路之一第一通道及一第二通道傳輸至一接收端所造成之封包編碼及漏失音質損害,其特徵在於:該演算法基於一音框所屬的兩條語音封包串流皆成功接收之情況下的一第一語音編碼損害因子及一第一封包漏失損害因子,以及一音框所屬的兩條串流同時發生漏失的一漏失比例,求得一第一封包編碼及漏失音質損害估測值,以及基於一音框所屬的兩條串流只有其中一條成功接收之情況下的一第二語音編碼損害因子及一第二封包漏失損害因子,以及該漏失比例,求得一第二封包編碼及漏失音質損害估測值;並計算被接收之一音框所屬的兩條串流同時發生漏失的一第一比例,以及計算被接收之一音框所屬的兩條串流至少其中之一發生漏失的一第二比例,並根據該第一比例及該第二比例求得一音框所屬的兩條串流皆成功接收之情況下的一雙重接收比例,及一音框所屬的兩條串流只有其中一條成功接收之情況下的一單一接收比例;並以該雙重接收比例對該第一封包編碼及漏失音質損害估測值加權,且以該單一接收比例對該第二封包編碼及漏失音質損害估測值加權,再將兩者加總而求得該語音訊號之一封包編碼及漏失音質損害估測值。
- 依據申請專利範圍第20項所述之封包編碼及漏失音質損害估測演算法,其中該演算法可以下式表示:,其中Ie (e)是封包編碼及漏失音質損害估測值,e是兩條串流的封包都漏失的機率,ρ j (i )包含封包於兩條串流皆成功接收的雙重接收比例ρ1 (i)和只有其中一條成功接收的單一接收比例ρ2 (i),Ie,j (e)包含對應於一音框所屬的兩條串流之封包皆成功接收情況下的第一封包編碼及漏失音質損害估測值Ie,1 (e),及對應於一音框所屬的兩條串流之封包只有其中一條成功接收情況下的第二封包編碼及漏失音質損害估測值Ie,2 (e)。
- 依據申請專利範圍第20項所述之封包編碼及漏失音質損害估測演算法,其中I e,j (e )=γ 1 ,j +γ 2 ,j ln(1+γ 3, j e ),j =1,2,其中γ1 是語音編碼損害因子,γ2 及γ3 是描述不同封包漏失造成之音質損害程度的封包漏失損害因子,且(γ1,1 、γ2,1 、γ3,1 )及(γ1,2 、γ2,2 、γ3,2 )分別對應於兩串流之封包皆成功接收及只有其中一條串流的封包成功接收時的音質損害程度。
- 依據申請專利範圍第21項所述之封包編碼及漏失音質損害估測演算法,其中ρ1 =(1-eloss,1 )×(1-eloss,2 )/(1-e),其中eloss,1 代表第一封包串流中封包漏失的機率,eloss,2 代表第二封包串流中封包漏失的機率,且ρ2 =1-ρ1 。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098139304A TWI390503B (zh) | 2009-11-19 | 2009-11-19 | Dual channel voice transmission system, broadcast scheduling design module, packet coding and missing sound quality damage estimation algorithm |
US12/756,003 US20110119565A1 (en) | 2009-11-19 | 2010-04-07 | Multi-stream voice transmission system and method, and playout scheduling module |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098139304A TWI390503B (zh) | 2009-11-19 | 2009-11-19 | Dual channel voice transmission system, broadcast scheduling design module, packet coding and missing sound quality damage estimation algorithm |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201118863A TW201118863A (en) | 2011-06-01 |
TWI390503B true TWI390503B (zh) | 2013-03-21 |
Family
ID=44012229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098139304A TWI390503B (zh) | 2009-11-19 | 2009-11-19 | Dual channel voice transmission system, broadcast scheduling design module, packet coding and missing sound quality damage estimation algorithm |
Country Status (2)
Country | Link |
---|---|
US (1) | US20110119565A1 (zh) |
TW (1) | TWI390503B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI777921B (zh) * | 2015-08-31 | 2022-09-21 | 美商蘋果公司 | 雙連結可靠度 |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8612242B2 (en) * | 2010-04-16 | 2013-12-17 | St-Ericsson Sa | Minimizing speech delay in communication devices |
US20110257964A1 (en) * | 2010-04-16 | 2011-10-20 | Rathonyi Bela | Minimizing Speech Delay in Communication Devices |
US8606073B2 (en) * | 2010-05-12 | 2013-12-10 | Woodman Labs, Inc. | Broadcast management system |
US9177570B2 (en) * | 2011-04-15 | 2015-11-03 | St-Ericsson Sa | Time scaling of audio frames to adapt audio processing to communications network timing |
GB2492329B (en) | 2011-06-24 | 2018-02-28 | Skype | Video coding |
GB2492330B (en) | 2011-06-24 | 2017-10-18 | Skype | Rate-Distortion Optimization with Encoding Mode Selection |
GB2492163B (en) | 2011-06-24 | 2018-05-02 | Skype | Video coding |
GB2493777A (en) | 2011-08-19 | 2013-02-20 | Skype | Image encoding mode selection based on error propagation distortion map |
GB2495469B (en) * | 2011-09-02 | 2017-12-13 | Skype | Video coding |
CN102946532A (zh) * | 2011-09-02 | 2013-02-27 | 斯凯普公司 | 视频编码 |
GB2495467B (en) | 2011-09-02 | 2017-12-13 | Skype | Video coding |
GB2495468B (en) | 2011-09-02 | 2017-12-13 | Skype | Video coding |
KR20130086700A (ko) * | 2012-01-26 | 2013-08-05 | 삼성전자주식회사 | 휴대 단말기의 패킷 전송 방법 및 장치 |
US9391810B2 (en) * | 2012-07-30 | 2016-07-12 | Vonage Business Inc. | Systems and methods for communicating a stream of data packets via multiple communications channels |
US9560085B2 (en) | 2012-07-30 | 2017-01-31 | Vonage Business Inc. | Systems and methods for communicating a stream of data packets via multiple communications channels |
US9560584B2 (en) * | 2013-01-08 | 2017-01-31 | Broadcom Corporation | Mobile device with cellular-WLAN offload using passive load sensing of WLAN |
TWI500315B (zh) | 2013-12-25 | 2015-09-11 | Ind Tech Res Inst | 串流分享方法、串流分享裝置與串流分享系統 |
CN105188075B (zh) * | 2014-06-17 | 2018-10-12 | 中国移动通信集团公司 | 语音质量优化方法及装置、终端 |
EP3281413B1 (en) | 2015-04-09 | 2021-01-20 | Dejero Labs Inc. | Systems, devices and methods for distributing data with multi-tiered encoding |
CN106209773A (zh) * | 2016-06-24 | 2016-12-07 | 深圳羚羊极速科技有限公司 | 一种音频分组采样传输再重组的方法 |
CN108847915B (zh) * | 2018-05-29 | 2020-11-24 | 北京光润通科技发展有限公司 | 应用纠错编码技术重构源端数据实现单向传输的方法 |
CN111381973B (zh) * | 2018-12-28 | 2024-03-01 | 中兴通讯股份有限公司 | 一种语音数据处理方法、装置及计算机可读存储介质 |
CN111063361B (zh) * | 2019-12-31 | 2023-02-21 | 广州方硅信息技术有限公司 | 语音信号处理方法、系统、装置、计算机设备和存储介质 |
CN114333862B (zh) * | 2021-11-10 | 2024-05-03 | 腾讯科技(深圳)有限公司 | 音频编码方法、解码方法、装置、设备、存储介质及产品 |
CN117831546A (zh) * | 2022-09-29 | 2024-04-05 | 抖音视界有限公司 | 编码、解码方法、编码器、解码器、电子设备和存储介质 |
CN118230742A (zh) * | 2022-12-20 | 2024-06-21 | 北京字跳网络技术有限公司 | 音频处理方法、装置及设备 |
CN117409794B (zh) * | 2023-12-13 | 2024-03-15 | 深圳市声菲特科技技术有限公司 | 音频信号处理方法、系统、计算机设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6765904B1 (en) * | 1999-08-10 | 2004-07-20 | Texas Instruments Incorporated | Packet networks |
EP1195745B1 (en) * | 2000-09-14 | 2003-03-19 | Lucent Technologies Inc. | Method and apparatus for diversity control in multiple description voice communication |
US8400932B2 (en) * | 2002-10-02 | 2013-03-19 | At&T Intellectual Property Ii, L.P. | Method of providing voice over IP at predefined QoS levels |
US9178927B2 (en) * | 2006-05-17 | 2015-11-03 | Audinate Pty Limited | Transmitting and receiving media packet streams |
US8151174B2 (en) * | 2008-02-13 | 2012-04-03 | Sunrise IP, LLC | Block modulus coding (BMC) systems and methods for block coding with non-binary modulus |
-
2009
- 2009-11-19 TW TW098139304A patent/TWI390503B/zh not_active IP Right Cessation
-
2010
- 2010-04-07 US US12/756,003 patent/US20110119565A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI777921B (zh) * | 2015-08-31 | 2022-09-21 | 美商蘋果公司 | 雙連結可靠度 |
Also Published As
Publication number | Publication date |
---|---|
US20110119565A1 (en) | 2011-05-19 |
TW201118863A (en) | 2011-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI390503B (zh) | Dual channel voice transmission system, broadcast scheduling design module, packet coding and missing sound quality damage estimation algorithm | |
KR101290425B1 (ko) | 소거된 스피치 프레임을 복원하는 시스템 및 방법 | |
CN100426715C (zh) | 一种丢帧隐藏方法和装置 | |
KR101265874B1 (ko) | 로버스트 디코더 | |
US8352252B2 (en) | Systems and methods for preventing the loss of information within a speech frame | |
JP4473869B2 (ja) | 音響信号のパケット通信方法、送信方法、受信方法、これらの装置およびプログラム | |
US20090089050A1 (en) | Device and Method For Frame Lost Concealment | |
WO2012141486A2 (en) | Frame erasure concealment for a multi-rate speech and audio codec | |
US20220172731A1 (en) | Data transmission method and apparatus, terminal, storage medium, and system | |
WO2008074249A1 (fr) | Procédé, système et appareils utilisés pour supprimer la perte de trame | |
Verma et al. | A deep learning approach for low-latency packet loss concealment of audio signals in networked music performance applications | |
WO2008040250A1 (fr) | Procédé, dispositif et système destinés au masquage d'erreurs d'un flux de données audio | |
US20070219788A1 (en) | Pitch prediction for packet loss concealment | |
WO2008067763A1 (fr) | Procédé et dispositif de décodage | |
CN103714820B (zh) | 参数域的丢包隐藏方法及装置 | |
JP5012897B2 (ja) | 音声パケット受信装置、音声パケット受信方法、およびプログラム | |
CN1929355B (zh) | 语音包丢失恢复系统以及方法 | |
US10652120B2 (en) | Voice quality monitoring system | |
Atzori et al. | Playout buffering of speech packets based on a quality maximization approach | |
Wu et al. | Perceptual-based playout mechanisms for multi-stream voice over IP networks | |
Merazka | The use of FEC method for packet loss concealment for CELP based coders in packet networks | |
Merazka | A comparison of packet loss concealment and control for voice transmission over IP network services | |
CN117640015B (zh) | 一种语音编码、解码方法、装置、电子设备及存储介质 | |
US20070121586A1 (en) | Method and apparatus for performing active packet bundling in a voice over IP communications system based on voice concealability | |
Gong et al. | Quality-based playout buffering with FEC for conversational voIP. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |