專利名稱:一種在語音信道傳輸非語音數(shù)據(jù)的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種移動通信方法與裝置,尤其涉及一種在蜂窩移動通信系統(tǒng)的語音信道中傳輸非語音數(shù)據(jù)的方法及裝置。
背景技術(shù):
在目前的第二代或第三代移動通信系統(tǒng)中,語音(speech)信號通過語音信道進行傳輸,而非語音的數(shù)據(jù)則通過專用的數(shù)據(jù)信道進行傳輸,兩者相互獨立。
圖1顯示了在兩個現(xiàn)有的GSM移動終端之間傳輸語音信號的處理流程示意圖。如圖所示,在發(fā)送方移動終端中,待發(fā)射的語音信號通過模數(shù)轉(zhuǎn)換單元10的模數(shù)轉(zhuǎn)換處理和語音壓縮單元20的語音壓縮處理,以及發(fā)送方無線子系統(tǒng)93中的信道編碼單元30的信道編碼處理和調(diào)制發(fā)射單元40的調(diào)制處理后,發(fā)射到網(wǎng)絡(luò)系統(tǒng)。而在接收方移動終端中,來自網(wǎng)絡(luò)系統(tǒng)的語音信號通過接收方無線子系統(tǒng)96中的接收解調(diào)單元50的解調(diào)處理以及信道解碼單元60的信道解碼處理后,再經(jīng)過語音解壓縮單元70的解壓縮處理和數(shù)模轉(zhuǎn)換單元80的數(shù)模轉(zhuǎn)換處理就得到了發(fā)送方移動終端發(fā)送的原始語音信號。
一般來說,在通常的對話中,通話的任一方的行為包含說話和不說話兩個狀態(tài)?;谶@個事實,在GSM移動通信系統(tǒng)中,移動終端對信號進行不連續(xù)發(fā)射,也就是說,移動終端除了發(fā)射含有語音信息的語音信號外,還有選擇地發(fā)射只含有背景噪聲而不含有語音信息的信號,以此減少信號干擾和節(jié)省能量(或者說移動終端除了正常發(fā)送含有語音信息的的語音信號外,對只含有背景噪聲而不含有語音信息的信號進行有選擇的發(fā)送,以減少信號干擾和節(jié)省能量。)。為了實現(xiàn)移動終端的不連續(xù)發(fā)射機制,在GSM移動通信系統(tǒng)中,使用語音壓縮單元20中的發(fā)送方不連續(xù)發(fā)射處理單元(TX DTX handler)實現(xiàn)語音的不連續(xù)發(fā)射,使用語音解壓縮單元70中的接收方不連續(xù)發(fā)射單元(RX DTX handler)實現(xiàn)不連續(xù)語音的接收。
圖2是現(xiàn)有的用于GSM全速率語音業(yè)務(wù)的語音處理單元的方框圖,圖中的語音處理單元不僅包括用于發(fā)送數(shù)據(jù)的語音壓縮單元20的功能模塊,而且還包括用于接收數(shù)據(jù)的語音解壓縮單元70的功能模塊。此外,為了描述收發(fā)語音信號過程的完整性,在圖2中還包含了該語音處理單元在發(fā)送數(shù)據(jù)時使用的模數(shù)轉(zhuǎn)換單元10、發(fā)送方無線子系統(tǒng)93和在接收數(shù)據(jù)時使用的接收方無線子系統(tǒng)96和數(shù)模轉(zhuǎn)換單元80。
如圖2所示,用于發(fā)送數(shù)據(jù)的發(fā)送方不連續(xù)發(fā)射處理單元90包括語音編碼器901(在GSM 06.10規(guī)范中定義)、發(fā)送方不連續(xù)發(fā)射控制和操作單元902(在GSM 06.31規(guī)范中定義)、語音激活檢測器903(在GSM 06.32規(guī)范中定義)以及發(fā)送方舒適噪聲單元904(在GSM 06.12規(guī)范中定義)。而用于接收數(shù)據(jù)的接收方不連續(xù)發(fā)射處理單元100包括接收方不連續(xù)發(fā)射控制和操作單元1001(在GSM06.31規(guī)范中定義)、語音解碼器1002(在GSM 06.10規(guī)范中定義)、語音幀替換單元1003(在GSM 06.11規(guī)范中定義)以及接收方舒適噪聲單元1004(在GSM 06.12規(guī)范中定義)。
下面結(jié)合圖2,詳細(xì)描述在GSM全速率語音業(yè)務(wù)中基于不連續(xù)發(fā)射機制進行語音信號發(fā)送和接收的方法。
當(dāng)移動終端發(fā)射語音信號時,模數(shù)轉(zhuǎn)換單元10將待發(fā)射的模擬的語音信號轉(zhuǎn)換成每秒8000個采樣的13比特均勻(Uniform)脈沖編碼調(diào)制的數(shù)字的語音信號,并將該數(shù)字的語音信號發(fā)送給發(fā)送方不連續(xù)發(fā)射處理單元90。
發(fā)送方不連續(xù)發(fā)射處理單元90中的語音編碼器901接收來自模數(shù)轉(zhuǎn)換單元10的數(shù)字的語音信號,然后將接收到的數(shù)字的語音信號編碼壓縮成適合在無線鏈路中傳輸?shù)恼Z音幀(如每秒50幀、每幀260比特的語音幀),并把得到的語音幀發(fā)送給發(fā)送方不連續(xù)發(fā)射控制和操作單元902。語音編碼器901生成的語音幀是用于攜帶語音信號的長度為20ms(毫秒)的幀。如果語音幀攜帶的語音信號只含有背景噪聲而不含有語音信息,那么這樣的語音幀稱為無聲語音(silencespeech)幀。
語音激活檢測器903對來自模數(shù)轉(zhuǎn)換單元10的數(shù)字化的語音信號進行檢測以檢查它們是否含有語音信息。如果含有語音信息,則將語音激活標(biāo)志VAD設(shè)置為1;如果只含有背景噪聲而不含有語音信息,則將語音激活標(biāo)志VAD設(shè)置為0。
發(fā)送方舒適噪聲單元904檢測來自語音編碼器901的語音幀。如果檢測到N個連續(xù)的無聲語音幀,則對這N個無聲語音幀所攜帶的背景噪聲進行相加和求平均,以得到平均的背景噪聲,然后對該通過平均得到的背景噪聲進行計算得到背景噪聲參數(shù),并將該背景噪聲參數(shù)編碼到一個特殊的幀,即靜音幀(SID幀每幀260比特)中,最后,將含有背景噪聲參數(shù)的該靜音幀發(fā)送給不連續(xù)發(fā)射控制和操作單元902。
其中第一、在發(fā)送方舒適噪聲單元904中,為了求得平均的背景噪聲而使用的連續(xù)的無聲語音幀的個數(shù)N,稱為用于計算靜音幀的無聲語音幀數(shù)目。對于N的取值,在GSM全速率語音業(yè)務(wù)中為4,而在GSM半速率語音業(yè)務(wù)中為8。
第二、發(fā)送方舒適噪聲單元904生成的靜音幀是長度為20ms的幀,它只攜帶用于在接收方移動終端產(chǎn)生背景噪聲的參數(shù)而沒有攜帶語音信息。
由于來自語音編碼器901的語音幀和來自發(fā)送方舒適噪聲單元904的靜音幀具有相同的長度,為了區(qū)分不同類型的幀,可以將幀中一些特定的比特定義為SID碼字。對于靜音幀,它的SID碼字全為零,而對于語音幀,SID碼字為非全零值。這樣通過檢查SID碼字,即通過這些特定比特的取值就可知道一個幀是語音幀還是靜音幀。
例如,在附圖3所示的GSM全速率語音業(yè)務(wù)中,長度為20ms(毫秒)的每一幀由260個比特組成,其中的36個比特用于對數(shù)區(qū)域比率參數(shù)LAR(Log Area Ratios),其他的224個比特用于4個子幀。每個子幀由56個比特組成,其中7個比特用于長期預(yù)測延遲參數(shù)LTPlag(Long Term Prediction lag)、2個比特用于長期預(yù)測增益參數(shù)LTPgain、2個比特用于規(guī)則脈沖激勵格柵位置參數(shù)RPE gridposition(Regular Pulse Excitation grid position)、6個比特用于塊幅度參數(shù)Block Amplitude、39個比特用于規(guī)則脈沖激勵參數(shù)RPE-pulseXmc。
在圖3中,由每個子幀的激勵脈沖參數(shù)構(gòu)成的156個比特的Xmc參數(shù)(39比特/子幀*4個子幀=156比特),其中的95個比特被定義為SID碼字,其他的61個比特保留為以后使用。當(dāng)SID碼字=0時,表示該幀為靜音幀,當(dāng)SID碼字≠0時,表示該幀為語音幀。
不連續(xù)發(fā)射控制和操作單元902在接收來自語音編碼器901的語音幀或來自發(fā)送方舒適噪聲單元904的靜音幀后,檢查語音激活標(biāo)志VAD的狀態(tài)。如果檢測到語音激活標(biāo)志為1,則不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,并將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)(RSS)93。如果檢測到語音激活標(biāo)志從1變?yōu)?,即語音突發(fā)結(jié)束,則不連續(xù)發(fā)射控制和操作單元902檢查自最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed,以確定是否需要啟動余音過程(Hangover)。
在這里,余音過程(Hangover)是一種強制更新靜音幀的機制。如果沒有余音處理過程,移動終端在發(fā)射語音突發(fā)后,接著發(fā)射一個在該語音突發(fā)之前產(chǎn)生的靜音幀。在語音突發(fā)很短時這是沒有問題的,但是當(dāng)一個語音突發(fā)很長時,在該長語音突發(fā)之前產(chǎn)生的靜音幀所攜帶的背景噪聲與語音突發(fā)結(jié)束時的背景噪聲可能有很大差異。如果接收方移動終端使用長語音突發(fā)之前生成的靜音幀來產(chǎn)生背景噪聲,會產(chǎn)生不匹配的背景噪音,接收方聽起來會很不舒服。為了克服這個缺陷,在長語音突發(fā)結(jié)束后,移動終端首先向接收方移動終端發(fā)送N個無聲語音幀,然后再向接收方移動終端發(fā)送根據(jù)這些無聲語音幀產(chǎn)生的一個新的攜帶最新背景噪聲參數(shù)的靜音幀。
以下將結(jié)合附圖4和附圖5,分別描述在不啟動余音過程和啟動語音過程中,不連續(xù)發(fā)射處理單元90的操作。
1、不啟動余音過程,即發(fā)送的語音幀的數(shù)量Nelapsed不大于預(yù)定的需要啟動余音過程的語音幀的數(shù)量不連續(xù)發(fā)射控制和操作單元902不啟動余音過程,將語音期間標(biāo)志SP設(shè)置為0,然后向發(fā)送方無線子系統(tǒng)93發(fā)送來自發(fā)送方舒適噪聲單元904的靜音幀。
圖4是現(xiàn)有的在GSM全速率語音業(yè)務(wù)中不啟動余音過程時不連續(xù)發(fā)射機制的示意圖。如圖所示,在語音突發(fā)期間,語音激活檢測器903檢測到語音信號中包含語音信息,因此將語音激活標(biāo)志VAD設(shè)置為1;而當(dāng)語音突發(fā)結(jié)束時,因為檢測不到語音信息,所以語音激活檢測器903將語音激活標(biāo)志VAD設(shè)置為0。當(dāng)語音激活標(biāo)志VAD為1時,不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。當(dāng)語音激活標(biāo)志VAD從1變?yōu)?后,不連續(xù)發(fā)射控制和操作單元902檢查發(fā)現(xiàn)自上次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed=22,即不大于為啟動余音過程而預(yù)定的門限值,因此不需要啟動余音過程。因而不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,并將來自發(fā)送方舒適噪聲單元904的靜音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。其中,由于用于計算靜音幀的無聲語音幀數(shù)目為4,所以發(fā)送方舒適噪聲單元904檢測到4個連續(xù)的無聲語音幀后才產(chǎn)生一個新的靜音幀,因此在語音突發(fā)結(jié)束后向發(fā)送方無線子系統(tǒng)93發(fā)送的頭4個靜音幀都是在語音突發(fā)以前產(chǎn)生的靜音幀(如圖中的SIDk靜音幀),第5個及其后的靜音幀才是在語音突發(fā)后生成的新的靜音幀(如圖中的SIDk+1靜音幀)。
2、啟動余音過程,即發(fā)送的語音幀的數(shù)量Nelapsed大于啟動余音過程而預(yù)定的門限值不連續(xù)發(fā)射控制和操作單元902啟動余音過程,即不連續(xù)發(fā)射控制和操作單元902首先將語音期間標(biāo)志SP繼續(xù)設(shè)置為1,將來自語音編碼器901的、與用于計算靜音幀的無聲語音幀數(shù)目相同數(shù)量的、連續(xù)的無聲語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93;然后將語音期間標(biāo)志SP設(shè)置為0,將來自發(fā)送方舒適噪聲單元904的、根據(jù)所述無聲語音幀生成的、新的靜音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。
圖5是在GSM全速率語音業(yè)務(wù)中啟動余音過程時不連續(xù)發(fā)射機制的示意圖。如圖所示,在語音突發(fā)期間,語音激活檢測器903檢測到語音信號中包含語音信息,因此將語音激活標(biāo)志VAD設(shè)置為1;當(dāng)語音突發(fā)結(jié)束時,語音激活檢測器903檢測到語音信號中不包含語音信息,因此將語音激活標(biāo)志VAD設(shè)置為0。當(dāng)語音激活標(biāo)志VAD為1時,不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。而當(dāng)語音激活標(biāo)志VAD從1變?yōu)?時,不連續(xù)發(fā)射控制和操作單元902檢查發(fā)現(xiàn)自上次更新靜音幀后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed=50大于余音過程預(yù)定的數(shù)量,因此啟動余音過程,即首先將語音期間標(biāo)志SP設(shè)置為1,將來自語音編碼器901的4個連續(xù)的無聲語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93;然后,將語音期間標(biāo)志SP設(shè)置為0,將來自發(fā)送方舒適噪聲單元904的、根據(jù)所述4個無聲語音幀生成的新的靜音幀(如圖中的SIDk+1)發(fā)送給發(fā)送方無線子系統(tǒng)93。
發(fā)送方無線子系統(tǒng)93收到來自不連續(xù)發(fā)射控制和操作單元902的幀后,檢查語音期間標(biāo)志SP的狀態(tài)。如果檢查發(fā)現(xiàn)語音期間標(biāo)志SP為1,則將來自不連續(xù)發(fā)射控制和操作單元902的幀通過網(wǎng)絡(luò)發(fā)送給接收方移動終端。如果檢查發(fā)現(xiàn)語音期間標(biāo)志SP為0,則檢查來自不連續(xù)發(fā)射控制和操作單元902的幀的SID碼字,如果SID碼字等于0,即該幀為靜音幀,則將該幀發(fā)射給網(wǎng)絡(luò)系統(tǒng)并進入休眠狀態(tài)。
接收方移動終端的無線子系統(tǒng)96接收經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端的幀,并將收到的幀傳送給接收方不連續(xù)發(fā)射控制和操作單元1001,同時根據(jù)收到的幀,對壞幀指示標(biāo)志BFI、靜音幀標(biāo)志SID和時間排列標(biāo)志TAF進行設(shè)置(1)、如果收到的幀為完好的語音幀,則設(shè)置壞幀指示標(biāo)志BFI為0和靜音幀標(biāo)志SID為0;(2)、如果收到的幀為壞語音幀,則設(shè)置壞幀指示標(biāo)志BFI為1和靜音幀標(biāo)志SID為0;(3)、如果收到的幀為完好的靜音幀,則設(shè)置壞幀指示標(biāo)志BFI為0和靜音幀標(biāo)志SID為2,并在時間排列標(biāo)志TAF中標(biāo)出該靜音幀在慢速輔助控制信道(SACCH)多幀中所處的位置;(4)、如果收到的幀為壞靜音幀,則設(shè)置壞幀指示標(biāo)志BFI為1和靜音幀標(biāo)志SID為1。
接收方不連續(xù)發(fā)射控制和操作單元1001收到來自接收方無線子系統(tǒng)96的幀后,根據(jù)壞幀指示標(biāo)志BFI、靜音幀標(biāo)志SID和時間排列標(biāo)志TAF的狀態(tài)對收到的幀進行相應(yīng)的處理(1)、如果壞幀指示標(biāo)志BFI為0和靜音幀標(biāo)志SID為0,表明收到的幀為完好的語音幀,則將該完好的語音幀發(fā)送給語音解碼器1002;(2)、如果壞幀指示標(biāo)志BFI為1和靜音幀標(biāo)志SID為0,表明收到的幀為壞語音幀,則指示語音幀替換單元1003生成一個完好的語音幀;(3)、如果壞幀指示標(biāo)志BFI為0和靜音幀標(biāo)志SID為2,表明收到的幀為完好的靜音幀,則將該完好的靜音幀發(fā)送給接收方舒適噪聲單元1004;(4)、如果壞幀指示標(biāo)志BFI為1和靜音幀標(biāo)志SID為1,表明收到的幀為壞靜音幀,則指示語音幀替換單元1003計算背景噪聲參數(shù)。
語音解碼器1002接收來自接收方不連續(xù)發(fā)射控制和操作單元1001的完好的語音幀,然后對收到的完好的語音幀進行語音解碼處理得到數(shù)字化的語音信號,把該數(shù)字化的語音信號發(fā)送給數(shù)模轉(zhuǎn)換單元80。
接收方舒適噪聲單元1004接收來自接收方不連續(xù)發(fā)射控制和操作單元1001的完好的靜音幀,然后從該完好的靜音幀中提取背景噪聲參數(shù)發(fā)送給語音解碼器1002以產(chǎn)生背景噪聲。
語音幀替換單元1003根據(jù)接收方不連續(xù)發(fā)射控制和操作單元1001的指示生成完好的語音幀或計算背景噪聲參數(shù),然后把產(chǎn)生的語音幀或背景噪聲參數(shù)發(fā)送給語音解碼器1002。
數(shù)模轉(zhuǎn)換單元80接收來自語音解碼器1002的數(shù)字化的語音信號,然后把該數(shù)字化的語音信號轉(zhuǎn)換成模擬的語音信號發(fā)送給相應(yīng)處理單元。
上面就是結(jié)合附圖2、3和4,對在GSM通信系統(tǒng)中基于不連續(xù)發(fā)射機制的語音信號的發(fā)送和接收的詳細(xì)描述。
由上述可知,在語音突發(fā)結(jié)束之后,發(fā)送方不連續(xù)發(fā)射控制和操作單元將向發(fā)送方無線子系統(tǒng)發(fā)送靜音幀,或無聲語音幀和靜音幀。由于無聲語音幀和靜音幀都不攜帶語音信息,所以,如果在應(yīng)該發(fā)送無聲語音幀或靜音幀的時候不發(fā)送無聲語音幀或靜音幀,而發(fā)送攜帶非語音數(shù)據(jù)的數(shù)據(jù)幀,就可以在不影響語音信息發(fā)送的前提下在語音信道發(fā)送非語音數(shù)據(jù),這樣就不需要專用數(shù)據(jù)信道來傳輸非語音數(shù)據(jù),這將大大節(jié)省通信的無線資源以及消除建立專用數(shù)據(jù)信道的時間。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種在移動通信系統(tǒng)的語音信道中傳輸非語音數(shù)據(jù)的方法及其裝置。在該方法及其裝置中,通過改進靜音幀或無聲語音幀,在語音信道而不是專用數(shù)據(jù)信道中傳輸非語音的數(shù)據(jù),以此節(jié)省系統(tǒng)的無線資源。
按照本發(fā)明的一種在移動通信系統(tǒng)中用于一個移動終端的在語音信道傳輸非語音數(shù)據(jù)的方法,包括步驟將欲向另一移動終端發(fā)送的非語音數(shù)據(jù)封裝成帶內(nèi)數(shù)據(jù)幀(IBD frame);將該帶內(nèi)數(shù)據(jù)幀存儲在一個緩存器中;檢測向另一移動終端發(fā)送的語音突發(fā)是否結(jié)束;若檢測到該發(fā)送的語音突發(fā)結(jié)束,則檢查是否有欲向該另一移動終端發(fā)送的非語音數(shù)據(jù);和若有欲發(fā)送的非語音數(shù)據(jù),則經(jīng)由語音信道向該另一移動終端發(fā)送至少一個非語音數(shù)據(jù)。
按照本發(fā)明的一種用于一個移動終端的在語音信道傳輸非語音數(shù)據(jù)的方法,包括步驟檢測所接收的來自另一移動終端的幀;若所接收的幀是帶內(nèi)數(shù)據(jù)幀(IBD frame),則將該帶內(nèi)數(shù)據(jù)幀緩存;和利用先前收到的靜音幀,產(chǎn)生背景噪聲。
按照本發(fā)明生成的帶內(nèi)數(shù)據(jù)幀,可以有三種,分別是(1)用于標(biāo)識帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID碼字組成,且從構(gòu)成該SID碼字的比特中選出的用于區(qū)分IBD碼字和SID碼字的各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。(2)用于標(biāo)識帶內(nèi)數(shù)據(jù)幀的IBD碼字,由用于攜帶塊幅度參數(shù)的所有比特和從用于標(biāo)識靜音幀的SID碼字中選出的至少一個比特組成,且該攜帶塊幅度參數(shù)的各個比特的數(shù)值均為零,該從SID碼字中所選各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。(3)用于標(biāo)識帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID碼字和至少一個預(yù)留的不屬于SID碼字的比特組成。
附圖簡述圖1是在兩個現(xiàn)有GSM移動終端之間傳輸語音信號的示意圖;圖2是現(xiàn)有的用于GSM全速率語音業(yè)務(wù)的語音處理單元的方框圖;圖3是現(xiàn)有的用于GSM全速率語音業(yè)務(wù)的語音幀的示意圖;圖4是現(xiàn)有的在GSM全速率語音業(yè)務(wù)中不啟動余音過程時不連續(xù)發(fā)射機制的示意圖;圖5是現(xiàn)有的在GSM全速率語音業(yè)務(wù)中啟動余音過程時不連續(xù)發(fā)射機制的示意圖;圖6示出了本發(fā)明的第一類IBD碼字的一個實施例的示意圖;
圖7示出了本發(fā)明的第二類IBD碼字的一個實施例的示意圖;圖8示出了本發(fā)明的第三類IBD碼字的一個實施例的示意圖;圖9是本發(fā)明的用于GSM全速率語音業(yè)務(wù)的語音處理單元的方框圖;圖10A和圖10B是本發(fā)明的不啟動余音過程時傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的流程圖;圖11A和圖11B是本發(fā)明的不啟動余音過程時傳輸?shù)诙悗?nèi)數(shù)據(jù)幀的流程圖;圖12A和圖12B是本發(fā)明的不啟動余音過程時傳輸?shù)谌悗?nèi)數(shù)據(jù)幀的流程圖;圖13是本發(fā)明的不啟動余音過程時傳輸?shù)谝活?第二類)帶內(nèi)數(shù)據(jù)幀的一個實施例;圖14是本發(fā)明的不啟動余音過程時傳輸?shù)谌悗?nèi)數(shù)據(jù)幀的一個實施例;圖15A和圖15B是本發(fā)明的啟動余音過程時傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的流程圖;圖16A和圖16B是本發(fā)明的啟動余音過程時傳輸?shù)诙悗?nèi)數(shù)據(jù)幀的流程圖;圖17A和圖17B是本發(fā)明的啟動余音過程時傳輸?shù)谌悗?nèi)數(shù)據(jù)幀的流程圖;圖18是本發(fā)明的啟動余音過程時傳輸?shù)谝活?第二類、第三類)帶內(nèi)數(shù)據(jù)幀的一個實施例。
發(fā)明詳述在本發(fā)明中,將在語音信道而不是專用數(shù)據(jù)信道中傳輸?shù)姆钦Z音數(shù)據(jù)稱作帶內(nèi)數(shù)據(jù)(IBDIn-Band Data)。本發(fā)明的在語音信道中傳輸帶內(nèi)數(shù)據(jù)的方法,其核心是在現(xiàn)有移動通信業(yè)務(wù)的幀的基礎(chǔ)上,構(gòu)建了三類用于傳送非語音數(shù)據(jù)的帶內(nèi)數(shù)據(jù)幀。這三類帶內(nèi)數(shù)據(jù)幀與現(xiàn)有語音業(yè)務(wù)中傳輸?shù)恼Z音幀和靜音幀具有不同的幀結(jié)構(gòu),但具有相同的幀長度,從而按照本發(fā)明的方法,在不對現(xiàn)有移動通信的網(wǎng)絡(luò)系統(tǒng)和移動終端的硬件設(shè)備做很大修改的前提下,能夠?qū)崿F(xiàn)非語音數(shù)據(jù)的傳輸。
在下文中,將以GSM全速率語音業(yè)務(wù)為例,參照附圖6、附圖7和附圖8,詳細(xì)地描述在上述附圖3所示幀結(jié)構(gòu)的基礎(chǔ)上、構(gòu)建的本發(fā)明的三類帶內(nèi)數(shù)據(jù)幀。
1、第一類帶內(nèi)數(shù)據(jù)幀(IBD幀)第一類帶內(nèi)數(shù)據(jù)幀,即第一類IBD幀,由組成SID碼字的95個比特標(biāo)識,在這95個比特中,其中M個比特被定義為IBD碼字的后綴,其余95-M個比特被定義為IBD碼字的前綴,即IBD碼字=IBD碼字前綴+IBD碼字后綴其中作為IBD碼字前綴的95-M個比特的數(shù)值為零,而作為后綴的M個比特的數(shù)值不能同時為零,以這種方式構(gòu)成的IBD碼字,雖然占用的比特與組成SID碼字的比特相同,但是根據(jù)IBD碼字后綴是否為零,便可以識別這兩種碼字,即按照本發(fā)明的方法識別一個所接收的幀是語音幀、靜音幀還是數(shù)據(jù)幀,只需判斷組成該幀的IBD碼字的這95個比特的數(shù)值即可,若IBD碼字的值為零,即IBD碼字前綴和后綴均為零,則該幀為靜音幀(SID幀);若IBD碼字的值不為零,且IBD碼字前綴不為零,則該幀是語音幀;只有當(dāng)IBD碼字不為零,且IBD碼字前綴為零,而IBD碼字后綴不為零時,該幀才是帶內(nèi)數(shù)據(jù)幀(IBD幀)。
由于在構(gòu)建帶內(nèi)數(shù)據(jù)幀時占用了現(xiàn)有幀中用于標(biāo)識SID幀的95個比特中的M個比特,因此,若采用本發(fā)明的第一類帶內(nèi)數(shù)據(jù)幀進行非語音數(shù)據(jù)的傳輸,必須要保證正常的語音信息在經(jīng)過語音編碼器生成的語音幀中,這95-M個比特均為零的概率與這95個比特均為零的概率一樣,換言之,在通信過程中,應(yīng)保證這95-M個比特被用作語音幀的概率與這95個比特被用作語音幀的概率一樣,即在本發(fā)明中,由這95-M個比特均為零和M個比特不為零組成的幀,只能是IBD幀,不會是語音幀。在M取值不是很大的情況下,這個條件應(yīng)當(dāng)是不難滿足的。
圖6示出了上述第一類IBD碼字的一個實施例的示意圖。在該實施例中,利用了95個比特中的3個比特,即M=3,來標(biāo)識帶內(nèi)數(shù)據(jù)幀(具體選用哪3個比特可根據(jù)語音編碼器而定)。如圖中所示,假定第0位(Bit 0)到第91位(Bit 91)作為IBD碼字前綴,而第92位(Bit92)到第94位(Bit 94)作為IBD碼字后綴。根據(jù)第92、93、94位的取值,圖6所示實施例最多可以定義7種第一類帶內(nèi)數(shù)據(jù)幀。例如,可以將第92、93和94位取值為001的幀,即IBD碼字前綴=0和IBD碼字后綴=1的幀,定義為帶內(nèi)數(shù)據(jù)請求幀;而將第92、93和94位取值為010的幀,即IBD碼字前綴=0和IBD碼字后綴=2的幀,定義為帶內(nèi)數(shù)據(jù)響應(yīng)幀。
如上所述,通過對現(xiàn)有SID碼字中的比特進行重新定義,在不影響現(xiàn)有語音通信業(yè)務(wù)的前提下,利用本發(fā)明所形成的該第一類帶內(nèi)數(shù)據(jù)幀,能夠在語音信道中實現(xiàn)非語音數(shù)據(jù)的傳送。
2、第二類帶內(nèi)數(shù)據(jù)幀(IBD幀)通過上述結(jié)合附圖3的描述,可以看到一幀中的每一個子幀都包括6個比特的用于描述語音信號振幅的塊幅度參數(shù),無論是在語音幀中還是在靜音幀中,由四個子幀共24個比特組成的該幀的塊幅度參數(shù)應(yīng)當(dāng)是不全為0的數(shù)值。
第二類帶內(nèi)數(shù)據(jù)幀,即第二類IBD幀,可以通過上述的塊幅度參數(shù)進行標(biāo)識。具體的若一幀的塊幅度參數(shù)的數(shù)值為零,則該幀是第二類帶內(nèi)數(shù)據(jù)幀;而若該幀的塊幅度參數(shù)的數(shù)值不為零,則該幀是語音幀或靜音幀。
但是,通過這種方式,在數(shù)據(jù)鏈路層中,只有可能定義一種形式的第二類帶內(nèi)數(shù)據(jù)幀。如果需要傳送不同含義的第二類帶內(nèi)數(shù)據(jù),需要做進一步設(shè)定。
在語音業(yè)務(wù)里,由260個比特組成的一幀中,若構(gòu)成SID碼字的156個比特的數(shù)值和構(gòu)成幀的塊幅度參數(shù)的24個比特的數(shù)值同時為零,則由于SID碼字為零,接收該幀的移動終端會將該幀視作靜音幀而將該幀提供給接收方舒適噪聲單元以生成背景噪聲,而又由于塊幅度參數(shù)值為零,從而在接收方的背景噪聲中會產(chǎn)生尖利的變化,因此,在一幀中,其SID碼字和塊幅度參數(shù)不能同時為零。按照此約定,在更上層的協(xié)議中,可以利用組成SID碼字的一些比特,結(jié)合上述的塊幅度參數(shù),來標(biāo)識具有不同含義的第二類帶內(nèi)數(shù)據(jù)幀。
按照本發(fā)明定義的第二類帶內(nèi)數(shù)據(jù)幀,上述的由24個比特組成的幀的塊幅度參數(shù)被定義為IBD碼字的后綴,從SID碼字中選出的那些用于標(biāo)識不同含義的IBD幀的比特被定義為IBD碼字的前綴,即IBD碼字=IBD碼字前綴+IBD碼字后綴其中作為IBD碼字后綴的24個比特的數(shù)值為零,而作為前綴的各個比特的數(shù)值不能同時為零,以這種方式構(gòu)成的IBD碼字,不僅可以清楚地區(qū)分SID幀、語音幀和IBD幀,而且通過將SID碼字中的一些比特與塊幅度參數(shù)相結(jié)合,還可以實現(xiàn)不同含義的帶內(nèi)數(shù)據(jù)幀在語音信道中傳輸。
圖7示出了上述第2類IBD碼字的一個實施例的示意圖。在該實施例中,利用了SID碼字中的8個比特構(gòu)成第二類IBD碼字的前綴。如圖中所示,假定第0位(Bit 0)到第7位(Bit 7)作為IBD碼字前綴,而第8位(Bit 8)到第31位(Bit 31)作為IBD碼字后綴。由于Bit 8到Bit 31的取值為零,因此根據(jù)Bit 0到Bit 7的取值,圖7所示實施例最多可以定義255種第二類帶內(nèi)數(shù)據(jù)幀。例如,可以將IBD碼字前綴=1和IBD碼字后綴=0的幀,定義為帶內(nèi)數(shù)據(jù)請求幀;而將IBD碼字前綴=2和IBD碼字后綴=0的幀,定義為帶內(nèi)數(shù)據(jù)響應(yīng)幀。
如上所述,通過將塊幅度參數(shù)設(shè)置為零,利用與現(xiàn)有SID碼字中的一些比特的組合,在不影響現(xiàn)有語音通信業(yè)務(wù)的前提下,本發(fā)明所形成的該第二類帶內(nèi)數(shù)據(jù)幀,能夠在語音信道中實現(xiàn)非語音數(shù)據(jù)的傳送。
3、第三類帶內(nèi)數(shù)據(jù)幀(IBD幀)第三類帶內(nèi)數(shù)據(jù)幀,即第三類IBD幀,由構(gòu)成SID碼字的95個比特與預(yù)留的比特組成。這些預(yù)留的比特稱為擴展IBD碼字,可以是靜音幀中被保留而尚未使用的比特,例如在GSM全速率語音業(yè)務(wù)中,由156個比特組成的激勵脈沖Xmc參數(shù),SID碼字只占用了其中的95個比特,剩下的61個比特為預(yù)留比特,還沒有被定義。第三類帶內(nèi)數(shù)據(jù)幀,可以利用這61個預(yù)留比特中的一些比特作為擴展IBD碼字,來標(biāo)識第三類帶內(nèi)數(shù)據(jù)幀,即IBD碼字=SID碼字+擴展IBD碼字圖8示出了上述第三類IBD碼字的一個實施例的示意圖。在該實施例中,利用激勵脈沖Xmc參數(shù)的第68到第76個參數(shù)的各自第1個比特、共9個比特作為擴展IBD碼字。通過Bit 0至Bit 8這9個比特,圖8所示的IBD碼字,最多可以定義29-1=511種第三類帶內(nèi)數(shù)據(jù)幀。例如,可以用擴展IBD碼字=1且SID碼字=0的IBD碼字表示帶內(nèi)數(shù)據(jù)請求幀;用擴展IBD碼字=2且SID碼字=0的IBD碼字表示帶內(nèi)數(shù)據(jù)響應(yīng)幀。
上述結(jié)合附圖6至附圖8,對本發(fā)明所采用的三類帶內(nèi)數(shù)據(jù)幀(IBD幀)進行了詳細(xì)描述,為了實現(xiàn)在語音信道中傳送這三類帶內(nèi)數(shù)據(jù)幀,還需要對現(xiàn)有移動終端的語音處理單元進行相應(yīng)的修改,以下將結(jié)合附圖9,對修改后的語音處理單元進行具體的說明。
(1)、在發(fā)送方不連續(xù)發(fā)射處理單元90中,增加用于存儲欲發(fā)射的帶內(nèi)數(shù)據(jù)幀的發(fā)送緩存905以及用于表明發(fā)送緩存905中是否存有帶內(nèi)數(shù)據(jù)幀的發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag。這樣,當(dāng)上層應(yīng)用有需要發(fā)射的非語音數(shù)據(jù)時,移動終端將它們封裝成帶內(nèi)數(shù)據(jù)幀并存入發(fā)送緩存905中,然后將發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為1,以通知發(fā)送方不連續(xù)發(fā)射控制和操作單元902在發(fā)送緩存905中存有需要發(fā)射的帶內(nèi)數(shù)據(jù)幀。當(dāng)發(fā)送方不連續(xù)發(fā)射控制和操作單元902將發(fā)送緩存905中存儲的帶內(nèi)數(shù)據(jù)幀全部發(fā)送給發(fā)送方無線子系統(tǒng)93之后,移動終端將發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為0,以通知發(fā)送方不連續(xù)發(fā)射控制和操作單元902發(fā)送緩存905為空。
(2)、在接收方不連續(xù)發(fā)射處理單元100中,增加用于存儲收到的帶內(nèi)數(shù)據(jù)幀的接收緩存1005以及用于表明接收緩存1005中是否存有帶內(nèi)數(shù)據(jù)幀的接收帶內(nèi)數(shù)據(jù)標(biāo)志ReceiveIBDFlag。這樣,當(dāng)從接收方不連續(xù)發(fā)射控制和操作單元1001中收到帶內(nèi)數(shù)據(jù)幀后,移動終端將它們存入接收緩存1005中,同時將接收帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為1,以通知移動終端中的上層應(yīng)用在接收緩存1005中存有收到的帶內(nèi)數(shù)據(jù)幀。當(dāng)上層應(yīng)用將接收緩存1001中的帶內(nèi)數(shù)據(jù)幀全部取出后,移動終端將接收帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為0,以通知上層應(yīng)用接收緩存1005為空。
(3)、改進了發(fā)送方不連續(xù)發(fā)射控制和操作單元902的排隊算法,使得其可以向發(fā)送方無線子系統(tǒng)發(fā)送帶內(nèi)數(shù)據(jù)幀。
(4)、改進了接收方不連續(xù)發(fā)射控制和操作單元1001,使其可以識別收到的帶內(nèi)數(shù)據(jù)幀。
(5)、向移動終端的上層應(yīng)用提供用于讀寫帶內(nèi)數(shù)據(jù)幀的數(shù)據(jù)接口,使得上層應(yīng)用可以通過數(shù)據(jù)接口向發(fā)送緩存905寫入帶內(nèi)數(shù)據(jù)幀和從接收緩存1005中讀取帶內(nèi)數(shù)據(jù)幀。
從上述所做修改可以看到,除了增加數(shù)據(jù)接口、發(fā)送緩存905、發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志、接收緩存1005和接收帶內(nèi)數(shù)據(jù)標(biāo)志外,本發(fā)明僅修改了移動終端中的發(fā)送方不連續(xù)發(fā)射控制和操作單元902和接收方不連續(xù)發(fā)射控制和操作單元1001,而對語音編碼器901、語音激活檢測單元903、發(fā)送方舒適噪聲單元904、語音解碼器1002、語音幀替換單元1003、發(fā)送方舒適噪聲單元1004以及發(fā)送方無線子系統(tǒng)93和接收方無線子系統(tǒng)96都沒有改動,因此,為了實現(xiàn)本發(fā)明需要對現(xiàn)有移動終端的修改是很小的。
下面,以在GSM全速率語音業(yè)務(wù)中兩個經(jīng)修改后支持帶內(nèi)數(shù)據(jù)幀的移動終端為例,分別詳細(xì)描述通過語音信道傳輸本發(fā)明的第一類、第二類和第三類帶內(nèi)數(shù)據(jù)幀的方法。
一、當(dāng)不啟動余音過程時,傳輸三類帶內(nèi)數(shù)據(jù)幀的方法(I)、當(dāng)不啟動余音過程時,通過語音信道,傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的方法圖10A和10B是本發(fā)明的不啟動余音過程時傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的流程圖。
如圖10A所示,在發(fā)送方移動終端中,語音編碼器901生成語音幀并將它們發(fā)送給發(fā)送方不連續(xù)發(fā)射控制和操作單元902(步驟S10)。收到來自語音編碼器901的語音幀之后,發(fā)送方不連續(xù)發(fā)射控制和操作單元902檢測語音激活標(biāo)志VAD的狀態(tài)(步驟S20)。
1、如果檢測到語音激活標(biāo)志VAD為1,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,并將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93,然后發(fā)送方無線子系統(tǒng)93再將收到的語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)射給接收方移動終端(步驟S30)。
2、如果檢測到語音激活標(biāo)志VAD從1變?yōu)?,即語音突發(fā)結(jié)束,若此時不需要啟動余音過程(即自最近一次靜音幀更新后,向發(fā)送方無線子系統(tǒng)發(fā)送的語音幀的數(shù)量Nelapsed不大于預(yù)定的數(shù)值),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,并檢測發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag的狀態(tài)(步驟S40)。
(1)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為0,即發(fā)送緩存905為空,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將靜音幀(SID幀)發(fā)送給發(fā)送方無線子系統(tǒng)93,發(fā)送方無線子系統(tǒng)93在將收到的一個SID幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)射給發(fā)送方移動終端后,停止發(fā)射并進入休眠狀態(tài)(步驟S50)。
(2)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為1,即在發(fā)送緩存905中存有待發(fā)送的第一類帶內(nèi)數(shù)據(jù)幀,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902向發(fā)送方無線子系統(tǒng)93發(fā)送來自發(fā)送緩存905中的帶內(nèi)數(shù)據(jù)幀。(a)若發(fā)送緩存905中的帶內(nèi)數(shù)據(jù)幀被發(fā)送完之后,語音激活標(biāo)志VAD仍然為0,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀。發(fā)送方無線子系統(tǒng)93在將收到的帶內(nèi)數(shù)據(jù)幀和一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端之后,停止發(fā)射并進入休眠狀態(tài)。(b)若在發(fā)送帶內(nèi)數(shù)據(jù)幀的過程中,語音激活標(biāo)志VAD又變?yōu)?(表明有新的語音突發(fā)需要發(fā)送),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902停止向發(fā)送方無線子系統(tǒng)93發(fā)送帶內(nèi)數(shù)據(jù)幀,而是向其發(fā)送新語音突發(fā)的語音幀。發(fā)送方無線子系統(tǒng)93將收到的帶內(nèi)數(shù)據(jù)幀和新語音突發(fā)的語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端。由于還沒有收到靜音幀,所以發(fā)送方無線子系統(tǒng)93不會停止發(fā)射和進入休眠狀態(tài)(步驟S60)。
如圖10B所示,在接收方移動終端中,接收方無線子系統(tǒng)96檢查是否接收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端發(fā)送的幀(步驟S100),如果收到幀,則將它發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001在收到接收方無線子系統(tǒng)96的幀之后,檢查該幀的SID碼字是否為0(步驟S110)。
1、若SID碼字等于0(表明該幀為靜音幀),則接收方不連續(xù)發(fā)射控制和操作單元1001將該靜音幀發(fā)送給接收方舒適噪聲單元1004進行處理以產(chǎn)生背景噪聲(步驟S120)。
2、若SID碼字不等于0,則接收方不連續(xù)發(fā)射控制和操作單元1001檢查該SID碼字中作為IBD碼字前綴的各比特數(shù)值是否為0(步驟S130),如果檢查發(fā)現(xiàn)(1)IBD碼字前綴不等于0,表明該幀為語音幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該語音幀發(fā)送給語音解碼器1002以產(chǎn)生語音信號(步驟S140);(2)IBD碼字前綴等于0,表明該幀為帶內(nèi)數(shù)據(jù)幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該帶內(nèi)數(shù)據(jù)幀存入接收緩存1005中并將接收帶內(nèi)數(shù)據(jù)標(biāo)志ReceiveIBDFlag設(shè)置為1,以通知上層應(yīng)用當(dāng)前有帶內(nèi)數(shù)據(jù)幀到達(dá)(步驟S150),并把最近一次收到的一個靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲(步驟S160)。
(II)當(dāng)不啟動余音過程時,通過語音信道,傳輸?shù)诙悗?nèi)數(shù)據(jù)幀的方法圖11A和圖11B是本發(fā)明的不啟動余音過程時傳輸?shù)诙悗?nèi)數(shù)據(jù)幀的流程圖。
如圖11A所示,在發(fā)送方移動終端中,語音編碼器901生成語音幀并將它們發(fā)送給發(fā)送方不連續(xù)發(fā)射控制和操作單元902(步驟S210)。收到來自語音編碼器901的語音幀之后,發(fā)送方不連續(xù)發(fā)射控制和操作單元902檢測語音激活標(biāo)志VAD的狀態(tài)(步驟S220)。
1、如果檢查發(fā)現(xiàn)語音激活標(biāo)志VAD為1,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,并將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93,然后發(fā)送方無線子系統(tǒng)93再將收到的語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)射給接收方移動終端(步驟S230)。
2、如果檢查發(fā)現(xiàn)語音激活標(biāo)志VAD從1變?yōu)?,即語音突發(fā)結(jié)束,若此時不需要啟動余音過程(即自最近一次靜音幀更新后,向發(fā)送方無線子系統(tǒng)發(fā)送的語音幀的數(shù)量Nelapsed不大于預(yù)定的數(shù)值),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,并檢測發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag的狀態(tài)(步驟S240)。
(1)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為0,即發(fā)送緩存905為空,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將靜音幀(SID幀)發(fā)送給發(fā)送方無線子系統(tǒng)93,發(fā)送方無線子系統(tǒng)93在將收到的一個SID幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)射給發(fā)送方移動終端后,停止發(fā)射并進入休眠狀態(tài)(步驟S250);(2)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為1,即發(fā)送緩存905中存有待發(fā)送的第二類帶內(nèi)數(shù)據(jù)幀,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902向發(fā)送方無線子系統(tǒng)93發(fā)送來自發(fā)送緩存905中的帶內(nèi)數(shù)據(jù)幀。(a)若發(fā)送緩存905中的帶內(nèi)數(shù)據(jù)幀被發(fā)送完之后,語音激活標(biāo)志VAD仍然為0,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀。發(fā)送方無線子系統(tǒng)93在將收到的帶內(nèi)數(shù)據(jù)幀和一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端之后,停止發(fā)射并進入休眠狀態(tài)。(b)若在發(fā)送帶內(nèi)數(shù)據(jù)幀的過程中,語音激活標(biāo)志VAD變?yōu)?(表明有新的語音突發(fā)需要發(fā)送),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902停止向發(fā)送方無線子系統(tǒng)93發(fā)送帶內(nèi)數(shù)據(jù)幀,而是向其發(fā)送新語音突發(fā)的語音幀。發(fā)送方無線子系統(tǒng)93將收到的帶內(nèi)數(shù)據(jù)幀和新語音突發(fā)的語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端。由于還沒有收到靜音幀,所以發(fā)送方無線子系統(tǒng)93不會停止發(fā)射和進入休眠狀態(tài)(步驟S260)。
如圖11B所示,在接收方移動終端中,接收方無線子系統(tǒng)96檢查是否接收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端發(fā)送的幀(步驟S300),如果收到了幀,則將它發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001在收到接收方無線子系統(tǒng)96的幀之后,檢查該幀的SID碼字是否為0(步驟S310)。
1、若SID碼字等于0(表明該幀為靜音幀),則接收方不連續(xù)發(fā)射控制和操作單元1001將該靜音幀發(fā)送給接收方舒適噪聲單元1004進行處理以產(chǎn)生背景噪聲(步驟S320)。
2、若SID碼字不等于0,則接收方不連續(xù)發(fā)射控制和操作單元1001檢查該幀中作為IBD碼字的各個比特的數(shù)值,即IBD碼字前綴和IBD碼字后綴的取值(步驟S330)。
(1)若IBD碼字前綴不等于0且IBD碼字后綴等于0(表明該幀為第二類帶內(nèi)數(shù)據(jù)幀),則接收方不連續(xù)發(fā)射控制和操作單元1001將該帶內(nèi)數(shù)據(jù)幀存入接收緩存1005中,并將接收帶內(nèi)數(shù)據(jù)標(biāo)志ReceiveIBDFlag設(shè)置為1,以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)幀到達(dá)(步驟S350),然后把最近一次收到的一個靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲(步驟S360)。
(2)若不滿足上述(1)的條件,即不滿足IBD碼字前綴不等于0且IBD碼字后綴等于0,則表明該幀為語音幀,接收方不連續(xù)發(fā)射控制和操作單元1001將該語音幀發(fā)送給語音解碼器1002以產(chǎn)生語音信號(步驟S340)。
(III)當(dāng)不啟動余音過程時,通過語音信道,傳輸?shù)谌悗?nèi)數(shù)據(jù)幀的方法圖12A和圖12B是不啟動余音過程時傳輸帶內(nèi)數(shù)據(jù)幀的流程圖。
如圖12A所示,在發(fā)送方移動終端中,語音編碼器901將生成的語音幀發(fā)送給發(fā)送方不連續(xù)發(fā)射控制和操作單元902(步驟S410)。收到來自語音編碼器901的語音幀后,發(fā)送方不連續(xù)發(fā)射控制和操作單元902檢查語音激活標(biāo)志VAD的狀態(tài)(步驟S420)1、如果檢查發(fā)現(xiàn)語音激活標(biāo)志VAD為1,發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93,然后發(fā)送方無線子系統(tǒng)93將收到的語音幀通過網(wǎng)絡(luò)發(fā)送給接收方移動終端(步驟S430)。
2、如果檢查發(fā)現(xiàn)語音激活標(biāo)志VAD從1變?yōu)?,即語音突發(fā)結(jié)束,若此時不需要啟動余音過程(即自最近一次靜音幀更新后,向發(fā)送方無線子系統(tǒng)發(fā)送的語音幀的數(shù)量Nelapsed不大于預(yù)定的數(shù)值),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,然后檢測發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag的狀態(tài)(步驟S440)。
(1)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為1,即發(fā)送緩存905中存有待發(fā)送的帶內(nèi)數(shù)據(jù)幀,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將發(fā)送緩存905中的一個第三類帶內(nèi)數(shù)據(jù)幀發(fā)送給發(fā)送方無線子系統(tǒng)93。由于構(gòu)成第三類IBD幀的IBD碼字中包含SID碼字,且SID碼字的數(shù)值為零,因此,發(fā)送方無線子系統(tǒng)93在將該第三類帶內(nèi)數(shù)據(jù)幀當(dāng)作一個靜音幀發(fā)射給網(wǎng)絡(luò)系統(tǒng)之后,停止發(fā)射并進入休眠狀態(tài)(步驟S450);(2)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為0,即發(fā)送緩存905為空,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將靜音幀發(fā)送給發(fā)送方無線子系統(tǒng)93,發(fā)送方無線子系統(tǒng)93在將收到的靜音幀發(fā)射給網(wǎng)絡(luò)系統(tǒng)后停止發(fā)射并進入休眠狀態(tài)(步驟S460)。
如圖12B所示,在接收方移動終端中,接收方無線子系統(tǒng)96檢查是否接收到發(fā)送方移動終端發(fā)送的幀(步驟S500),如果收到幀,則將它發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001收到接收方無線子系統(tǒng)96的幀之后,檢查該幀的SID碼字是否為0(步驟S510)。
1、若SID碼字不為0,表明該幀為語音幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該語音幀發(fā)送給語音解碼單元1002進行解碼(步驟S520)。
2、若SID碼字等于0,則接收方不連續(xù)發(fā)射控制和操作單元1001檢查該幀的擴展IBD碼字是否為0(步驟S530),如果檢查發(fā)現(xiàn)(1)擴展IBD碼字等于0,表明該幀為靜音幀,接收方不連續(xù)發(fā)射控制和操作單元1001將該靜音幀發(fā)送給接收方舒適噪聲單元1004(步驟S550);(2)擴展IBD碼字不等于0,表明該幀為帶內(nèi)數(shù)據(jù)幀,接收方不連續(xù)發(fā)射控制和操作單元1001將該帶內(nèi)數(shù)據(jù)幀存入接收緩存1005中并設(shè)置接收帶內(nèi)數(shù)據(jù)標(biāo)志為1,以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)幀到達(dá)(步驟S540),然后把最近一次收到的一個靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲(步驟S560)。
從上述結(jié)合附圖10A和附圖10B、附圖11A和附圖11B和附圖12A和附圖12B描述的在不啟動余音過程時、經(jīng)由語音信道傳送第一類、第二類和第三類帶內(nèi)數(shù)據(jù)幀的流程可以看到,三者的區(qū)別主要體現(xiàn)在(1)在發(fā)送方移動終端處由于第一類、第二類和第三類IBD幀的構(gòu)成不同,因此,在上層應(yīng)用中形成第一類、第二類和第三類IBD幀的功能模塊也應(yīng)當(dāng)不同;此外,由于第三類IBD幀的IBD碼字中包含數(shù)值為零的SID碼字,因此,若采用第三類IBD幀傳送非語音數(shù)據(jù),每次語音突發(fā)結(jié)束,只能傳送一個IBD幀,發(fā)送方無線子系統(tǒng)就關(guān)閉了,而采用第一、二類IBD幀,在不啟動余音過程時,每次語音突發(fā)結(jié)束,可以傳送多個IBD幀,只要沒有新的語音突發(fā)生成,可以一直將所有待傳輸?shù)腎BD幀發(fā)送完畢,才發(fā)送靜音幀以使發(fā)送方無線子系統(tǒng)關(guān)閉。除此以外,在發(fā)送方移動終端中,傳送第一類、第二類和第三類IBD幀的其他功能模塊均是相同的。(2)在接收方移動終端處由于第一類、第二類和第三類IBD幀的構(gòu)成不同,因此,位于接收方不連續(xù)發(fā)射控制和操作單元中的用于識別這三類IBD幀的模塊應(yīng)當(dāng)不同;相應(yīng)地在上層應(yīng)用中用于解讀這三類IBD幀的模塊亦應(yīng)當(dāng)有所區(qū)別;除此以外,在接收方移動終端中,處理第一類、第二類和第三類IBD幀的其他功能模塊均是相同的。
圖13示出了在不啟動余音過程時本發(fā)明的傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的方法的一個實施例,該圖中所示的過程也同樣適用于傳輸?shù)诙悗?nèi)數(shù)據(jù)幀。如圖所示,發(fā)送方移動終端發(fā)送了兩個語音突發(fā),每個語音突發(fā)的長度為3個語音幀。
對于第一個語音突發(fā),在語音突發(fā)期間,由于語音激活標(biāo)志VAD和語音期間標(biāo)志SP都為1,因此,發(fā)送方無線子系統(tǒng)93將語音突發(fā)的3個語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端。當(dāng)語音突發(fā)結(jié)束時,即語音激活標(biāo)志VAD從1變?yōu)?時,由于最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)RSS 93發(fā)送的語音幀的數(shù)量Nelapsed不大于余音過程預(yù)定的門限值,所以發(fā)送方不連續(xù)發(fā)射控制和操作單元902不啟動余音過程,此時語音期間標(biāo)志SP被設(shè)置為0。由于在第1個語音突發(fā)期間的t0時刻,上層應(yīng)用將3個第一類帶內(nèi)數(shù)據(jù)(即IBD1幀、IBD2幀和IBD3幀)存入了發(fā)送緩存905中,因此當(dāng)該語音突發(fā)結(jié)束時,發(fā)送方不連續(xù)發(fā)射控制和操作單元902首先將保存在發(fā)送緩存905中的帶內(nèi)數(shù)據(jù)幀發(fā)送給發(fā)送方無線子系統(tǒng)93。在發(fā)送完所述的3個帶內(nèi)數(shù)據(jù)幀后,由于語音激活標(biāo)志VAD仍然為0,因此發(fā)送方不連續(xù)發(fā)射控制和操作單元902接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀。發(fā)送方無線子系統(tǒng)93在將收到的所述3個帶內(nèi)數(shù)據(jù)幀和一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。在接收方移動終端中,接收方無線子系統(tǒng)96相應(yīng)地收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端的語音突發(fā)的3個語音幀、IBD1幀、IBD2幀和IBD3幀和一個靜音幀,并將它們發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001按照接收的先后順序,首先,將收到的3個語音幀發(fā)送給語音解碼器1002進行解碼;然后,將收到的IBD1幀、IBD2幀和IBD3幀存入接收緩存1005中,并設(shè)置接收帶內(nèi)數(shù)據(jù)標(biāo)志ReceiveIBDFlag為1,以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)幀到達(dá),之后連續(xù)3次將以前收到的靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲(這三個靜音幀都是一樣的);最后,將收到的靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲。
對于第二個語音突發(fā),在語音突發(fā)期間,由于語音激活標(biāo)志VAD和語音期間標(biāo)志SP都為1,因此發(fā)送方無線子系統(tǒng)93將語音突發(fā)的3個語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端。當(dāng)語音突發(fā)結(jié)束時,即當(dāng)語音激活標(biāo)志VAD變?yōu)?時,由于最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)RSS 93發(fā)送的語音幀的數(shù)量Nelapsed不大于余音過程預(yù)定的門限值,因此發(fā)送方不連續(xù)發(fā)射控制和操作單元902不啟動余音過程,將語音期間標(biāo)志SP設(shè)置為0。由于在語音突發(fā)期間的t1時刻一個第一類帶內(nèi)數(shù)據(jù)幀IBD4被上層應(yīng)用保存在發(fā)送緩存905中,因此在語音突發(fā)結(jié)束后,發(fā)送方不連續(xù)發(fā)射控制和操作單元902首先將保存在發(fā)送緩存905中的IBD4發(fā)送給發(fā)送方無線子系統(tǒng)93。在發(fā)送完IBD4后,由于語音激活標(biāo)志VAD仍然為0,因此,發(fā)送方不連續(xù)發(fā)射控制和操作單元902接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀,發(fā)送方無線子系統(tǒng)93在將收到的IBD4和一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。在接收方移動終端中,接收方無線子系統(tǒng)96收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端的語音突發(fā)的3個語音幀、IBD4和一個靜音幀,然后將它們發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001按照接收的先后順序,首先,將收到的3個語音幀發(fā)送給語音解碼單元1002進行解碼;然后,將收到的IBD4存入接收緩存1005中,并設(shè)置接收帶內(nèi)數(shù)據(jù)標(biāo)志ReceiveIBDFlag為1,以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)幀到達(dá),之后將一個以前收到的靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲;最后,將收到的靜音幀發(fā)送給接收方舒適噪聲單元1004以產(chǎn)生背景噪聲。
圖14示出了不啟動余音過程時本發(fā)明的傳輸?shù)谌悗?nèi)數(shù)據(jù)幀的方法的一個實施例。如圖所示,發(fā)送方移動終端發(fā)送了兩個語音突發(fā),每個語音突發(fā)的長度為3個語音幀。
對于第一個語音突發(fā),在語音突發(fā)期間,由于語音激活標(biāo)志VAD和語音期間標(biāo)志SP都為1,因此,發(fā)送方無線子系統(tǒng)93將語音突發(fā)的3個語音幀直接經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端。當(dāng)語音突發(fā)結(jié)束時,即語音激活標(biāo)志VAD從1變?yōu)?時,由于最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed不大于余音過程預(yù)定的門限值,所以發(fā)送方不連續(xù)發(fā)射控制和操作單元902不啟動余音過程,此時語音期間標(biāo)志SP被設(shè)置為0。由于在第1個語音突發(fā)期間的t0時刻,上層應(yīng)用將需要向接收方移動終端發(fā)送的數(shù)據(jù)或信令封裝成一個第三類帶內(nèi)數(shù)據(jù)并保存在發(fā)送緩存905中,因此,發(fā)送方不連續(xù)發(fā)射控制和操作單元902從發(fā)送緩存905中提取該帶內(nèi)數(shù)據(jù)幀,并發(fā)送給發(fā)送方無線子系統(tǒng)93。由于第三類帶內(nèi)數(shù)據(jù)幀中包含數(shù)值為零的SID碼字,因此,發(fā)送方無線子系統(tǒng)93在將該帶內(nèi)數(shù)據(jù)幀當(dāng)作一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。在接收方移動終端中,接收方無線子系統(tǒng)96收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端發(fā)送的語音突發(fā)的3個語音幀和一個帶內(nèi)數(shù)據(jù)幀,然后將它們發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001首先將收到的3個語音幀發(fā)送給語音解碼單元1002進行解碼,然后將收到的第三類帶內(nèi)數(shù)據(jù)幀存入接收緩存1005中,并將接收帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為1,以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)到達(dá),同時將一個以前收到的靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲。
對于第二個語音突發(fā),在語音突發(fā)期間,由于語音激活標(biāo)志VAD和語音期間標(biāo)志SP都為1,因此,發(fā)送方無線子系統(tǒng)93將語音突發(fā)的3個語音幀直接發(fā)送給接收方移動終端。當(dāng)語音突發(fā)結(jié)束時,即語音激活標(biāo)志VAD從1變?yōu)?時,由于最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed不大于余音過程預(yù)定的門限值,因此,發(fā)送方不連續(xù)發(fā)射控制和操作單元902不啟動余音過程,而是將語音期間標(biāo)志SP設(shè)置為0。由于發(fā)送緩存905為空,因此,發(fā)送方不連續(xù)發(fā)射控制和操作單元902將以前收到的靜音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。發(fā)送方無線子系統(tǒng)93在將收到的一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。在接收方移動終端中,接收方無線子系統(tǒng)96收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端發(fā)送的語音突發(fā)的3個語音幀和一個靜音幀,然后將它們發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001首先將收到的3個語音幀發(fā)送給語音解碼單元1002進行解碼,然后將收到的靜音幀發(fā)送給接收方舒適噪聲單元1004以產(chǎn)生背景噪聲。
二、當(dāng)啟動余音過程時,傳輸三種類型的帶內(nèi)數(shù)據(jù)幀的方法(I)、當(dāng)啟動余音過程時,通過語音信道,傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的方法圖15A和圖15B是本發(fā)明的啟動余音過程時傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的流程圖。
如圖15A所示,在發(fā)送方移動終端中,語音編碼器901將生成的語音幀發(fā)送給發(fā)送方不連續(xù)發(fā)射控制和操作單元902(步驟S65)。收到語音幀后,發(fā)送方不連續(xù)發(fā)射控制和操作單元902檢測語音激活標(biāo)志VAD的狀態(tài)(步驟S70)。
1、若檢測到語音激活標(biāo)志VAD為1,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,并將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。發(fā)送方無線子系統(tǒng)93將收到的語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端(步驟S75)。
2、若檢測到語音激活標(biāo)志VAD從1變?yōu)?,即語音突發(fā)結(jié)束,若此時需要啟動余音過程(自最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed大于余音過程預(yù)定的門限值),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP繼續(xù)設(shè)置為1,并檢測發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag的狀態(tài)(步驟S80)。
(1)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為0,即發(fā)送緩存905為空,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902首先將來自語音編碼器901的、N(N為用于計算靜音幀的無聲語音幀數(shù)目)個無聲語音幀(silence speech frame)發(fā)送給發(fā)送方無線子系統(tǒng)93;然后,將語音期間標(biāo)志SP設(shè)置為0,并將根據(jù)這N個無聲語音幀生成的新的靜音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。發(fā)送方無線子系統(tǒng)93在將收到的無聲語音幀和一個靜音幀發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)(步驟S85)。
(2)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為1,即發(fā)送緩存905中有待發(fā)送的帶內(nèi)數(shù)據(jù)幀,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902,首先向發(fā)送方無線子系統(tǒng)93發(fā)送與用于計算靜音幀的無聲語音幀數(shù)目相同數(shù)量的帶內(nèi)數(shù)據(jù)幀(如果帶內(nèi)數(shù)據(jù)幀的數(shù)量不夠,則使用來自語音編碼器901的無聲語音幀補足)。
(a)在發(fā)送完所述數(shù)量的帶內(nèi)數(shù)據(jù)幀后,如果語音激活標(biāo)志VAD仍然為0,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,并接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀,該靜音幀是根據(jù)N個無聲語音幀計算的。發(fā)送方無線子系統(tǒng)93在將收到的IBD幀(或者IBD幀和無聲語音幀)和一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。
(b)如果在向發(fā)送方無線子系統(tǒng)93發(fā)送IBD幀(或無聲語音幀)的過程中,語音激活標(biāo)志VAD變?yōu)?,即有新的語音突發(fā)需要發(fā)送,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902停止向發(fā)送方無線子系統(tǒng)93發(fā)送IBD幀(或無聲語音幀),轉(zhuǎn)而向其發(fā)送新語音突發(fā)的語音幀。發(fā)送方無線子系統(tǒng)93將收到的IBD幀(或者IBD幀和無聲語音幀)和新語音突發(fā)的語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端。由于沒有收到靜音幀,所以發(fā)送方無線子系統(tǒng)93不會停止發(fā)射和進入休眠狀態(tài)(步驟S90)。
如圖15B所示,在接收方移動終端中,接收方無線子系統(tǒng)96檢查是否接收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端發(fā)送的幀(步驟S165),如果收到幀,則將它發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001在收到接收方無線子系統(tǒng)96的幀之后,檢查該幀的SID碼字是否為0(步驟S170)。
1、若SID碼字等于0,表明該幀為靜音幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該靜音幀發(fā)送給接收方舒適噪聲單元1004進行處理以產(chǎn)生背景噪聲(步驟S175)。
2、若SID碼字不等于0,則接收方不連續(xù)發(fā)射控制和操作單元1001檢查該幀的IBD碼字前綴是否為0(步驟S180)。(1)若IBD碼字前綴不等于0,表明該幀為語音幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該語音幀發(fā)送給語音解碼器1002以產(chǎn)生語音信號(步驟S185);(2)若IBD碼字前綴等于0,表明該幀為帶內(nèi)數(shù)據(jù)幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該帶內(nèi)數(shù)據(jù)幀存入接收緩存1005中,并將接收帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為1,以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)幀到達(dá)(步驟S190),然后把最近一次收到的一個靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲(步驟S195)。
(II)當(dāng)啟動余音過程時,通過語音信道,傳輸?shù)诙悗?nèi)數(shù)據(jù)幀的方法圖16A和附圖16B是本發(fā)明的在啟動余音過程時傳輸?shù)诙悗?nèi)數(shù)據(jù)幀的流程圖。
如圖16A所示,在發(fā)送方移動終端中,語音編碼器901將生成的語音幀發(fā)送給發(fā)送方不連續(xù)發(fā)射控制和操作單元902(步驟S265)。收到語音幀后,發(fā)送方不連續(xù)發(fā)射控制和操作單元902檢測語音激活標(biāo)志VAD的狀態(tài)(步驟S270)。
1、若檢測到語音激活標(biāo)志VAD為1,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,并將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。發(fā)送方無線子系統(tǒng)93將收到的語音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端(步驟S275)。
2、若檢測到語音激活標(biāo)志VAD從1變?yōu)?,即語音突發(fā)結(jié)束,若此時需要啟動余音過程(自最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed大于余音過程預(yù)定的門限值),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902啟動余音過程,繼續(xù)將語音期間標(biāo)志SP設(shè)置為1,并檢測發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag的狀態(tài)(步驟S280)。
(1)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為0,即發(fā)送緩存905為空,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902首先將來自語音編碼器901的、N(N為用于計算靜音幀的無聲語音幀數(shù)目)個無聲語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93;然后,將語音期間標(biāo)志SP設(shè)置為0,并將根據(jù)這N個無聲語音幀生成的新的靜音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。發(fā)送方無線子系統(tǒng)93在將收到的無聲語音幀和一個靜音幀發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)(步驟S285)。
(2)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為1,即發(fā)送緩存905中有待發(fā)送的帶內(nèi)數(shù)據(jù)幀,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902首先向發(fā)送方無線子系統(tǒng)93發(fā)送與用于計算靜音幀的無聲語音幀數(shù)目相同數(shù)量的帶內(nèi)數(shù)據(jù)幀(如果帶內(nèi)數(shù)據(jù)幀的數(shù)量不夠,使用來自語音編碼器901的無聲語音幀補足)。
(a)發(fā)送完所述數(shù)量的帶內(nèi)數(shù)據(jù)幀后,如果聲音激活標(biāo)志VAD仍然為0,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,并接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀,該靜音幀是根據(jù)N個無聲語音幀生成的。發(fā)送方無線子系統(tǒng)93在將收到的IBD幀(或者IBD和無聲語音幀)和一個靜音幀發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。
(b)如果在向發(fā)送方無線子系統(tǒng)93發(fā)送IBD幀(或無聲語音幀)的過程中,語音激活標(biāo)志VAD變?yōu)?,即有新的語音突發(fā)需要發(fā)送,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902停止向發(fā)送方無線子系統(tǒng)93發(fā)送IBD幀(或無聲語音幀),而是向其發(fā)送新語音突發(fā)的語音幀。發(fā)送方無線子系統(tǒng)93將收到的IBD幀(或者IBD幀和無聲語音幀)和新語音突發(fā)的語音幀發(fā)送給接收方移動終端。由于沒有發(fā)送靜音幀,所以發(fā)送方無線子系統(tǒng)93不會停止發(fā)射和進入休眠狀態(tài)(步驟S290)。
如圖16B所示,在接收方移動終端中,接收方無線子系統(tǒng)96檢查是否接收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端發(fā)送的幀(步驟S365),如果收到幀,則將它發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001在收到接收方無線子系統(tǒng)96的幀之后,檢查該幀的SID碼字是否為0(步驟S370)。
1、若SID碼字等于0,表明該幀為靜音幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該靜音幀發(fā)送給接收方舒適噪聲單元1004進行處理以產(chǎn)生背景噪聲(步驟S375)。
2、若SID碼字不等于0,則接收方不連續(xù)發(fā)射控制和操作單元1001檢查該幀的IBD碼字的數(shù)值,即IBD碼字前綴和IBD碼字后綴的取值(步驟S380)。
(1)若IBD碼字前綴不等于0,且IBD碼字后綴等于0,表明該幀為帶內(nèi)數(shù)據(jù)幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該帶內(nèi)數(shù)據(jù)幀存入接收緩存1005中,并將接收帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為1,以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)幀到達(dá)(步驟S390);然后把最近一次收到的一個靜音幀發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲(步驟S395)。
(2)若不滿足上述(1)的條件,即不滿足IBD碼字前綴不等于0且IBD碼字后綴等于0,則表明該幀為語音幀,接收方不連續(xù)發(fā)射控制和操作單元1001將該語音幀發(fā)送給語音解碼器1002以產(chǎn)生語音信號(步驟S385)。
(III)當(dāng)啟動余音過程時,通過語音信道,傳輸?shù)谌悗?nèi)數(shù)據(jù)幀的方法圖17A和附圖17B是啟動余音過程時傳輸?shù)谌悗?nèi)數(shù)據(jù)幀的流程圖。
如圖17A所示,在發(fā)送方移動終端中,語音編碼器901將生成的語音幀發(fā)送給發(fā)送方不連續(xù)發(fā)射控制和操作單元902(步驟S465)。收到語音編碼器901的語音幀后,發(fā)送方不連續(xù)發(fā)射控制和操作單元902檢測語音激活標(biāo)志VAD的狀態(tài)(步驟S470)。
1、若檢查發(fā)現(xiàn)語音激活標(biāo)志VAD為1,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為1,將來自語音編碼器901的語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。發(fā)送方無線子系統(tǒng)93將得到的語音幀通過網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端(步驟S475)。
2、若檢查發(fā)現(xiàn)語音激活標(biāo)志VAD從1變?yōu)?,即語音突發(fā)結(jié)束,若此時需要啟動余音過程(自最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed大于余音過程預(yù)定的數(shù)值),則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP繼續(xù)設(shè)置為1,并檢測發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag的狀態(tài)(步驟S480)。
(1)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為0,即發(fā)送緩存905為空,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902首先將來自語音編碼單元901的、N(N為用于計算靜音幀的無聲語音幀數(shù)目)個連續(xù)的無聲語音幀發(fā)送給發(fā)送方無線子系統(tǒng)93;然后,將語音期間標(biāo)志SP設(shè)置為0,并將根據(jù)這N個無聲語音幀生成的新的靜音幀發(fā)送給發(fā)送方無線子系統(tǒng)93。發(fā)送方無線子系統(tǒng)93在將收到的所述無聲語音幀和一個靜音幀經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)(步驟S490)。
(2)若發(fā)送帶內(nèi)數(shù)據(jù)標(biāo)志SendIBDFlag為1,即發(fā)送緩存905中存有待發(fā)送的帶內(nèi)數(shù)據(jù)幀,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902首先將不多于N個的帶內(nèi)數(shù)據(jù)幀發(fā)送給發(fā)送方無線子系統(tǒng)93(如果帶內(nèi)數(shù)據(jù)幀數(shù)量不夠,使用來自語音編碼器901的無聲語音幀補足)。
(a)發(fā)送完所述數(shù)量的帶內(nèi)數(shù)據(jù)幀后,如果聲音激活標(biāo)志VAD仍然為0,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,并接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀,該靜音幀是根據(jù)N個無聲語音幀生成的。發(fā)送方無線子系統(tǒng)93在將收到的IBD幀(或者IBD和無聲語音幀)和一個靜音幀發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。
(b)如果在向發(fā)送方無線子系統(tǒng)93發(fā)送IBD幀(或無聲語音幀)的過程中,語音激活標(biāo)志VAD變?yōu)?,即有新的語音突發(fā)需要發(fā)送,則發(fā)送方不連續(xù)發(fā)射控制和操作單元902停止向發(fā)送方無線子系統(tǒng)93發(fā)送IBD幀(或無聲語音幀),而是向其發(fā)送新語音突發(fā)的語音幀。發(fā)送方無線子系統(tǒng)93將收到的IBD幀(或者IBD幀和無聲語音幀)和新語音突發(fā)的語音幀發(fā)送給接收方移動終端。由于沒有發(fā)送靜音幀,所以發(fā)送方無線子系統(tǒng)93不會停止發(fā)射和進入休眠狀態(tài)(步驟S485)。
如圖17B所示,在接收方移動終端中,接收方無線子系統(tǒng)96檢查是否接收到經(jīng)由網(wǎng)絡(luò)系統(tǒng)傳送的來自發(fā)送方移動終端發(fā)送的幀(步驟S565),如果收到,則將它發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001在收到來自接收方無線子系統(tǒng)93的幀之后,檢查該幀的SID碼字是否為0(步驟S570)。
1、若SID碼字不為0,表明該幀為語音幀,則接收方不連續(xù)發(fā)射控制和操作單元1001將該語音幀發(fā)送給語音解碼單元1002進行解碼(步驟S575)。
2、若SID碼字等于0,則接收方不連續(xù)發(fā)射控制和操作單元1001檢查該幀的擴展IBD碼字是否為0(步驟S580),如果檢查發(fā)現(xiàn)(1)擴展IBD碼字等于0,表明該幀為靜音幀,接收方不連續(xù)發(fā)射控制和操作單元1001將該靜音幀發(fā)送給接收方舒適噪聲單元1004(步驟S590);(2)擴展IBD碼字不等于0,表明該幀為帶內(nèi)數(shù)據(jù)幀,接收方不連續(xù)發(fā)射控制和操作單元1001將該帶內(nèi)數(shù)據(jù)幀存入接收緩存1005中,并將接收帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為1以通知上層應(yīng)用有帶內(nèi)數(shù)據(jù)幀到達(dá)(步驟S585),然后把最近一次收到的一個靜音幀發(fā)送給接收方舒適噪聲單元1004(步驟S595)。
同上述參照附圖10A和附圖10B、附圖11A和附圖11B和附圖12A和附圖12B描述的不啟動語音過程的情況一樣,從上述結(jié)合附圖15A和附圖15B、附圖16A和附圖16B和附圖17A和附圖17B描述的在啟動余音過程時、經(jīng)由語音信道傳送第一類、第二類和第三類帶內(nèi)數(shù)據(jù)幀的流程,可以看到二者的區(qū)別主要體現(xiàn)在(1)在發(fā)送方移動終端的上層應(yīng)用中,形成第一類、第二類和第三類IBD幀的功能模塊不同,除此以外,在發(fā)送方移動終端中,傳送第一類、第二類和第三類IBD幀的其他功能模塊均是相同的。(2)在接收方移動終端的接收方不連續(xù)發(fā)射控制和操作單元中,用于識別這三類IBD幀的模塊是不同的,相應(yīng)地在上層應(yīng)用中用于解讀這三類IBD幀的模塊亦應(yīng)當(dāng)有所區(qū)別,除此以外,在接收方移動終端中,處理第一類、第二類和第三類IBD幀的其他功能模塊均是相同的。
圖18示出了啟動余音過程時本發(fā)明的傳輸?shù)谝活悗?nèi)數(shù)據(jù)幀的方法的一個實施例,該圖中所示的過程也同樣適用于傳輸?shù)诙惡偷谌悗?nèi)數(shù)據(jù)幀。
如圖所示,在發(fā)送方移動終端中,在語音突發(fā)期間,由于語音激活標(biāo)志VAD和語音期間標(biāo)志SP都為1,因此發(fā)送方無線子系統(tǒng)93將語音突發(fā)的語音幀發(fā)送給接收方移動終端。當(dāng)語音突發(fā)結(jié)束時,即當(dāng)語音激活標(biāo)志VAD變?yōu)?時,由于自最近一次靜音幀更新后向發(fā)送方無線子系統(tǒng)93發(fā)送的語音幀的數(shù)量Nelapsed大于余音過程預(yù)定的門限值,所以發(fā)送方不連續(xù)發(fā)射控制和操作單元902啟動余音過程,繼續(xù)將語音期間標(biāo)志SP設(shè)置為1。由于發(fā)送緩存905中只存有兩個帶內(nèi)數(shù)據(jù)幀IBD1和IBD2,所以發(fā)送方不連續(xù)發(fā)射控制和操作單元902向發(fā)送方無線子系統(tǒng)93發(fā)送IBD1和IBD2以及來自語音編碼器901的兩個無聲語音幀。在發(fā)送完這4個幀后,由于語音激活標(biāo)志VAD仍然為0,因此發(fā)送方不連續(xù)發(fā)射控制和操作單元902將語音期間標(biāo)志SP設(shè)置為0,并接著向發(fā)送方無線子系統(tǒng)93發(fā)送靜音幀(如圖中的SIDk+1和SIDk+2)。發(fā)送方無線子系統(tǒng)93在將收到的語音突發(fā)的語音幀、IBD1、IBD2、兩個無聲語音幀以及靜音幀SIDk+1經(jīng)由網(wǎng)絡(luò)系統(tǒng)發(fā)送給接收方移動終端后,停止發(fā)射并進入休眠狀態(tài)。
在接收方移動終端中,接收方無線子系統(tǒng)96接收到經(jīng)由網(wǎng)絡(luò)傳送的來自發(fā)送方移動終端的語音突發(fā)的語音幀、IBD1、IBD2、兩個無聲語音幀以及靜音幀SIDk+1,并將它們發(fā)送給接收方不連續(xù)發(fā)射控制和操作單元1001。接收方不連續(xù)發(fā)射控制和操作單元1001按照接收的先后順序,首先,將收到的語音突發(fā)的語音幀發(fā)送給語音解碼器1002進行解碼;接著,將收到的帶內(nèi)數(shù)據(jù)幀IBD1和IBD2存入接收緩存1005,并將接收帶內(nèi)數(shù)據(jù)標(biāo)志設(shè)置為1,以通知上層應(yīng)用帶內(nèi)數(shù)據(jù)幀到達(dá),之后將兩個以前收到的靜音幀(如圖中的SIDk)發(fā)送給接收方舒適噪聲單元1004;然后,將收到的兩個無聲語音幀發(fā)送給語音解碼器1002進行解碼;最后,將收到的靜音幀SIDk+1發(fā)送給接收方舒適噪聲單元1004以生成背景噪聲。
在上文中,結(jié)合附圖10A至附圖18,描述了在GSM全速率語音業(yè)務(wù)中,兩個均支持帶內(nèi)數(shù)據(jù)幀的移動終端,經(jīng)由語音信道傳輸IBD幀的過程。下面,以一個支持帶內(nèi)數(shù)據(jù)幀的移動終端和一個不支持帶內(nèi)數(shù)據(jù)幀的移動終端為例,說明當(dāng)兩個移動終端中有一個移動終端不支持傳輸帶內(nèi)數(shù)據(jù)幀的情況。
假設(shè)移動終端MS1支持帶內(nèi)數(shù)據(jù)幀,而移動終端MS2不支持帶內(nèi)數(shù)據(jù)幀,如果移動終端MS2收到一個來自移動終端MS1的第一類帶內(nèi)數(shù)據(jù)幀,由于第一類帶內(nèi)數(shù)據(jù)幀的SID碼字不等于0,因此該移動終端MS2會將該帶內(nèi)數(shù)據(jù)幀當(dāng)作一個語音幀,直接送到語音編碼器進行解碼處理。語音編碼器若使用該帶內(nèi)數(shù)據(jù)幀產(chǎn)生虛假的語音信號,則由于該虛假的語音信號可能含有很高的能量,且與其它正常語音幀產(chǎn)生的語音信號不匹配,因此會使聽者感到很不舒服。
如果移動終端MS2收到一個來自移動終端MS1的第二類帶內(nèi)數(shù)據(jù)幀,由于第二類帶內(nèi)數(shù)據(jù)幀的SID碼字不等于0,所以移動終端MS2也會將該帶內(nèi)數(shù)據(jù)幀當(dāng)作一個語音幀,直接送到語音編碼器進行解碼處理而產(chǎn)生虛假的語音信號。所幸的是,由于在第二類帶內(nèi)數(shù)據(jù)幀中,用于塊幅度參數(shù)的24比特被定義為IBD碼字后綴,且該24比特全部被設(shè)置為0,因此,根據(jù)該第二類帶內(nèi)數(shù)據(jù)幀的塊幅度參數(shù)產(chǎn)生的語音信號的能量很低,即便該語音信號與正常語音幀產(chǎn)生的語音信號不匹配,也不會使得聽者受到很大影響。
如果移動終端MS2收到一個來自移動終端MS1的第三類帶內(nèi)數(shù)據(jù)幀,由于第三類帶內(nèi)數(shù)據(jù)幀的SID碼字等于0,因此,移動終端MS2將該第三類帶內(nèi)數(shù)據(jù)幀當(dāng)作一個新的靜音幀存儲起來,并且利用該第三類帶內(nèi)數(shù)據(jù)幀產(chǎn)生背景噪聲。由于該第三類帶內(nèi)數(shù)據(jù)幀不是真正的靜音幀,因此它不含有背景噪聲參數(shù),所以產(chǎn)生出來的噪聲是假的背景噪聲,這種假的背景噪聲在某個時間段內(nèi)(如在GSM/GPRS系統(tǒng)中為20毫秒)使人的聽覺很不舒服。
從上面的分析可以看出,第一類、第三類帶內(nèi)數(shù)據(jù)幀對不支持帶內(nèi)數(shù)據(jù)幀的移動終端將會造成很大的影響,而第二類帶內(nèi)數(shù)據(jù)幀對不支持帶內(nèi)數(shù)據(jù)幀的移動終端的影響不大。
為了消除帶內(nèi)數(shù)據(jù)幀給現(xiàn)有不支持帶內(nèi)數(shù)據(jù)幀的移動終端帶來的不良影響,本發(fā)明提供了兩種解決方案。
一種解決方案是在帶內(nèi)數(shù)據(jù)幀中小心地使用那些在語音幀中用于各種參數(shù)的比特。例如,在第一類和第三類帶內(nèi)數(shù)據(jù)幀中,將用于塊幅度參數(shù)的24比特設(shè)置為0或者取很小的值,這樣使得第一類和第三類帶內(nèi)數(shù)據(jù)幀具有很低的能量,就不會使聽者感到很不舒服。
另一種解決方案是定義一種新的通信協(xié)議。在該通信協(xié)議中,在發(fā)射帶內(nèi)數(shù)據(jù)幀之前,移動終端首先向與其進行通信的另一移動終端發(fā)送一個探測幀(通過將構(gòu)成該探測幀的各個比特設(shè)置適當(dāng)?shù)臄?shù)值,該探測幀可以具有很低的能量),以檢查該另一移動終端是否支持帶內(nèi)數(shù)據(jù)幀。該另一移動終端收到探測幀之后,如果其支持帶內(nèi)數(shù)據(jù)幀,就向所述移動終端返回一個探測響應(yīng);如果其不支持帶內(nèi)數(shù)據(jù)幀,則忽略收到的探測幀。發(fā)送探測幀的移動終端,如果收到該另一移動終端的探測響應(yīng),則可以在通信過程使用帶內(nèi)數(shù)據(jù)幀;如果沒有收到該另一移動終端的探測響應(yīng),則在通信過程中不能使用帶內(nèi)數(shù)據(jù)幀。
在本發(fā)明的實施例中,以GSM全速率語音業(yè)務(wù)為例,分別描述了在啟動余音過程和不啟動余音過程的情況下,通過語音信道傳輸?shù)谝活?、第二類和第三類帶?nèi)數(shù)據(jù)幀(IBD幀)的方法,該方法既可以使用軟件模塊實現(xiàn),也可以使用硬件模塊實現(xiàn),其原理和實施過程同樣適用于GSM的其他語音業(yè)務(wù)。
有益效果綜上所述,本發(fā)明提出的在語音信道傳輸非語音數(shù)據(jù)的方法及裝置,由于利用了語音信道中傳輸?shù)臒o聲語音幀(silence speech frame)和靜音幀(SID frame)來傳輸帶內(nèi)數(shù)據(jù)幀,因此本發(fā)明可以節(jié)省系統(tǒng)資源;同時從圖9及其解釋中,可以看到本發(fā)明對現(xiàn)有移動終端的改動很少(本方法中提到的發(fā)送/接收緩沖區(qū)只是擴大了原有系統(tǒng)中原有的緩沖區(qū),增加的數(shù)據(jù)接口也很簡單,最大的改變實際上是不連續(xù)發(fā)射控制和操作單元的調(diào)度算法和分類算法,這都是軟件,只是把原有的區(qū)分兩類幀的算法改進成可以區(qū)分/調(diào)度三類幀的算法,該實現(xiàn)可以通過軟件實現(xiàn),也可以通過硬件實現(xiàn),系統(tǒng)的改變不會很大很難);此外,通過降低帶內(nèi)數(shù)據(jù)幀中攜帶背景噪聲信息的比特位的值或通過發(fā)送探測幀的方式,本發(fā)明提出的辦法能夠消除傳輸帶內(nèi)數(shù)據(jù)幀對不支持帶內(nèi)數(shù)據(jù)幀的移動終端可能造成的不良影響。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明所公開的在語音信道傳輸非語音數(shù)據(jù)的方法及其裝置,可以在不脫離本發(fā)明內(nèi)容的基礎(chǔ)上做出各種改進。因此,本發(fā)明的保護范圍應(yīng)當(dāng)由所附的權(quán)利要求書的內(nèi)容確定。
權(quán)利要求
1.一種在移動通信系統(tǒng)中用于一個移動終端的在語音信道傳輸非語音數(shù)據(jù)的方法,包括步驟(a)檢測向另一移動終端發(fā)送的語音突發(fā)是否結(jié)束;(b)若檢測到該發(fā)送的語音突發(fā)結(jié)束,則檢查是否有欲向該另一移動終端發(fā)送的非語音數(shù)據(jù);和(c)若有欲發(fā)送的非語音數(shù)據(jù),則經(jīng)由語音信道向該另一移動終端發(fā)送至少一個非語音數(shù)據(jù)。
2.如權(quán)利要求1所述的方法,其中在步驟(a)之前,還包括步驟(i)將欲向該另一移動終端發(fā)送的該非語音數(shù)據(jù)封裝成帶內(nèi)數(shù)據(jù)幀(IBD frame);和(ii)將該帶內(nèi)數(shù)據(jù)幀存儲在一個緩存器中。
3.如權(quán)利要求2所述的方法,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID(Silence Description)碼字組成,且從構(gòu)成該SID碼字的比特中選出的用于區(qū)分IBD碼字和SID碼字的各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。
4.如權(quán)利要求3所述的方法,其中該所選比特的數(shù)目應(yīng)保證構(gòu)成所述IBD碼字的各個比特的取值不會出現(xiàn)在語音幀中。
5.如權(quán)利要求2所述的方法,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字,由用于攜帶塊幅度參數(shù)的所有比特和從用于標(biāo)識靜音幀的SID碼字中選出的至少一個比特組成,且該攜帶塊幅度參數(shù)的各個比特的數(shù)值均為零,該從SID碼字中所選各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。
6.如權(quán)利要求2所述的方法,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID碼字和至少一個預(yù)留的不屬于SID碼字的比特組成。
7.如權(quán)利要求3至6中任意一個權(quán)利要求所述的方法,其中所述帶內(nèi)數(shù)據(jù)幀具有與所述靜音幀、從該移動終端向所述另一移動終端發(fā)送的語音幀相同的幀長度。
8.如權(quán)利要求7所述的方法,其中若在不啟動余音過程的情況下,則在正常通信中發(fā)送所述靜音幀的時間發(fā)送所述帶內(nèi)數(shù)據(jù)幀。
9.如權(quán)利要求7所述的方法,其中若在啟動余音過程的情況下,則在正常通信中發(fā)送無聲語音幀(silence speech frame)的時間發(fā)送所述帶內(nèi)數(shù)據(jù)幀,其中所述無聲語音幀是用于計算所述靜音幀的。
10.如權(quán)利要求3至5中任意一個權(quán)利要求所述的方法,還包括步驟(d)若檢測到有新的語音突發(fā)需要傳送到所述另一移動終端,而所述帶內(nèi)數(shù)據(jù)幀此時尚未全部發(fā)送完畢,則暫停發(fā)送所述帶內(nèi)數(shù)據(jù)幀;和(e)向所述另一移動終端發(fā)送該新的語音突發(fā)。
11.如權(quán)利要求3、4、6中任意一個權(quán)利要求所述的方法,其中所述帶內(nèi)數(shù)據(jù)幀中用于攜帶塊幅度參數(shù)(block amplitude)的比特的數(shù)值設(shè)置為零或者接近零的數(shù)值。
12.如權(quán)利要求1所述的方法,在執(zhí)行步驟(c)之前,還包括步驟向所述另一移動終端發(fā)送一個探測幀以檢查該另一移動終端是否支持帶內(nèi)數(shù)據(jù)幀;和若收到該另一移動終端的確認(rèn)響應(yīng),則向該另一移動終端發(fā)送帶內(nèi)數(shù)據(jù)幀。
13.一種用于一個移動終端的在語音信道傳輸非語音數(shù)據(jù)的方法,包括步驟(i)檢測所接收的來自另一移動終端的幀;(ii)若所接收的幀是帶內(nèi)數(shù)據(jù)幀(IBD frame),則將該帶內(nèi)數(shù)據(jù)幀緩存;和(iii)利用先前收到的靜音幀,產(chǎn)生背景噪聲。
14.如權(quán)利要求13所述的方法,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID(Silence Description)碼字組成,且從構(gòu)成該SID碼字的比特中選出的用于區(qū)分IBD碼字和SID碼字的各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。
15.如權(quán)利要求13所述的方法,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字,由用于攜帶塊幅度參數(shù)的所有比特和從用于標(biāo)識靜音幀的SID碼字中選出的至少一個比特組成,且該攜帶塊幅度參數(shù)的各個比特的數(shù)值均為零,該從SID碼字中所選各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。
16.如權(quán)利要求13所述的方法,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID碼字和至少一個預(yù)留的不屬于SID碼字的比特組成。
17.如權(quán)利要求14至16中任意一個權(quán)利要求所述的方法,其中所述帶內(nèi)數(shù)據(jù)幀具有與來自所述另一移動終端的語音幀、所述靜音幀相同的幀長度。
18.如權(quán)利要求14所述的方法,其中步驟(i)進一步包括(a1)檢查所述接收幀的SID碼字;(b1)若SID碼字表明該幀不是靜音幀,則檢測從所述SID碼字選出所述比特后剩余比特的數(shù)值,以判斷該幀是否為帶內(nèi)數(shù)據(jù)幀。
19.如權(quán)利要求15所述的方法,其中步驟(i)進一步包括(a2)檢查所述接收幀的SID碼字;(b2)若SID碼字表明該幀不是靜音幀,則檢測用于攜帶塊幅度參數(shù)的所有比特和所述從SID碼字中選出的比特的數(shù)值,以判斷該幀是否為帶內(nèi)數(shù)據(jù)幀。
20.如權(quán)利要求16所述的方法,其中步驟(i)進一步包括(a3)檢查所述接收幀的SID碼字;(b3)若SID碼字表明該幀不是語音幀,則檢查所述預(yù)留的不屬于SID碼字的比特的數(shù)值,以判斷該幀是否為帶內(nèi)數(shù)據(jù)幀。
21.如權(quán)利要求14或16中任意一個權(quán)利要求所述的方法,其中所述帶內(nèi)數(shù)據(jù)幀中用于攜帶塊幅度參數(shù)的比特的數(shù)值設(shè)置為零或者接近零的數(shù)值。
22.如權(quán)利要求18至20中任意權(quán)利要求所述的方法,其中還包括步驟(c)接收到來自所述另一移動終端的探測幀;(d)若該移動終端支持帶內(nèi)數(shù)據(jù)幀,則向該另一移動終端返回一個確認(rèn)響應(yīng)。
23.一種移動終端,包括第一檢測單元,用于檢測該移動終端向另一移動終端發(fā)送的語音突發(fā)是否結(jié)束,和當(dāng)檢測到該語音突發(fā)結(jié)束時,檢查是否有欲向該另一移動終端發(fā)送的非語音數(shù)據(jù);一個發(fā)送單元,用于向該另一移動終端發(fā)送幀;和一個控制單元,用于當(dāng)有欲發(fā)送的非語音數(shù)據(jù)時,控制該發(fā)送單元經(jīng)由語音信道向該另一移動終端發(fā)送至少一個非語音數(shù)據(jù)幀。
24.如權(quán)利要求23所述的移動終端,還包括一個帶內(nèi)數(shù)據(jù)幀生成單元,用于將欲向所述另一移動終端發(fā)送的非語音數(shù)據(jù)封裝成帶內(nèi)數(shù)據(jù)幀(IBD frame);和第一緩存器,用于存儲該生成的帶內(nèi)數(shù)據(jù)幀。
25.如權(quán)利要求24所述的移動終端,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID(Silence Description)碼字組成,且從構(gòu)成該SID碼字的比特中選出的用于區(qū)分IBD碼字和SID碼字的各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。
26.如權(quán)利要求24所述的移動終端,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字,由用于攜帶塊幅度參數(shù)的所有比特和從用于標(biāo)識靜音幀的SID碼字中選出的至少一個比特組成,且該攜帶塊幅度參數(shù)的各個比特的數(shù)值均為零,該從SID碼字中所選各個比特的數(shù)值不能與用于標(biāo)識該SID碼字的各個比特的取值相同。
27.如權(quán)利要求24所述的移動終端,其中用于標(biāo)識所述帶內(nèi)數(shù)據(jù)幀的IBD碼字由用于標(biāo)識靜音幀的SID碼字和至少一個預(yù)留的不屬于SID碼字的比特組成。
28.如權(quán)利要求25至27中任意一個權(quán)利要求所述的移動終端,其中所述帶內(nèi)數(shù)據(jù)幀具有與所述靜音幀、從該移動終端向所述另一移動終端發(fā)送的語音幀相同的幀長度。
29.如權(quán)利要求28所述的移動終端,其中若在不啟動余音過程的情況下,則所述發(fā)送單元在正常通信中發(fā)送所述靜音幀的時間發(fā)送所述帶內(nèi)數(shù)據(jù)幀。
30.如權(quán)利要求28所述的移動終端,其中若在啟動余音過程的情況下,則所述發(fā)送單元在正常通信中發(fā)送無聲語音幀(silence speechframe)的時間發(fā)送所述帶內(nèi)數(shù)據(jù)幀,其中所述無聲語音幀是用于計算所述靜音幀的。
31.如權(quán)利要求28所述的移動終端,還包括第二檢測單元,用于檢測所接收的來自另一移動終端的幀;第二緩存器,用于當(dāng)所接收的幀是帶內(nèi)數(shù)據(jù)幀(IBD frame)時,緩存該帶內(nèi)數(shù)據(jù)幀;和一個接收方舒適噪聲單元,用于利用先前收到的靜音幀,產(chǎn)生背景噪聲。
32.如權(quán)利要求31所述的移動終端,其中所述檢測單元進一步包括一個帶內(nèi)數(shù)據(jù)幀識別單元,用于檢查所述接收幀的SID碼字,并當(dāng)SID碼字表明該幀不是靜音幀時,檢測從所述SID碼字選出所述比特后剩余比特的數(shù)值,以判斷該幀是否為帶內(nèi)數(shù)據(jù)幀。
33.如權(quán)利要求31所述的移動終端,其中所述檢測單元進一步包括一個帶內(nèi)數(shù)據(jù)幀識別單元,用于檢查所述接收幀的SID碼字,并當(dāng)SID碼字表明該幀不是靜音幀時,檢測用于攜帶塊幅度參數(shù)的所有比特和所述從SID碼字中選出的比特的數(shù)值,以判斷該幀是否為帶內(nèi)數(shù)據(jù)幀。
34.如權(quán)利要求31所述的移動終端,其中所述檢測單元進一步包括一個帶內(nèi)數(shù)據(jù)幀識別單元,用于檢查所述接收幀的SID碼字,并當(dāng)SID碼字表明該幀不是語音幀時,檢查所述預(yù)留的不屬于SID碼字的比特的數(shù)值,以判斷該幀是否為帶內(nèi)數(shù)據(jù)幀。
全文摘要
一種在移動通信系統(tǒng)中用于一個移動終端的在語音信道傳輸非語音數(shù)據(jù)的方法,包括步驟將欲向另一移動終端發(fā)送的非語音數(shù)據(jù)封裝成帶內(nèi)數(shù)據(jù)幀;將該帶內(nèi)數(shù)據(jù)幀存儲在一個緩存器中;檢測向另一移動終端發(fā)送的語音突發(fā)是否結(jié)束;若檢測到該發(fā)送的語音突發(fā)結(jié)束,則檢查是否有欲向該另一移動終端發(fā)送的非語音數(shù)據(jù);和若有欲發(fā)送的非語音數(shù)據(jù),則經(jīng)由語音信道向該另一移動終端發(fā)送至少一個非語音數(shù)據(jù)。通過改進靜音幀或無聲語音幀,實現(xiàn)在語音信道而不是專用數(shù)據(jù)信道中傳輸非語音的數(shù)據(jù),以此節(jié)省系統(tǒng)的無線資源。
文檔編號H04W76/04GK1879432SQ200480033186
公開日2006年12月13日 申請日期2004年11月5日 優(yōu)先權(quán)日2003年11月12日
發(fā)明者晉曉輝, 劉波, 邵曉凌, 馮雷 申請人:皇家飛利浦電子股份有限公司