本発明は、音声データ送信/受信装置および音声データ送信/受信方法に関し、特に、誤りのある音声データや損失した音声データの補償処理が行われる音声通信システムに用いられる音声データ送信/受信装置および音声データ送信/受信方法に関する。
IP(Internet Protocol)網や無線通信網での音声通信においては、IPパケットの損失や無線伝送誤りなどにより、受信側で音声データを受信できなかったり誤りのある音声データを受信したりすることがある。このため、一般に音声通信システムにおいては、誤った音声データまたは損失した音声データを補償するための処理が行われる。
一般的な音声通信システムの送信側すなわち音声データ送信装置では、入力原信号たる音声信号は、音声データとして符号化され、多重化(パケット化)され、宛先装置に対して送信される。通常、多重化は、1音声フレームを1つの伝送単位として行われる。多重化に関して、例えば非特許文献1では、3GPP(3rd Generation Partnership Project)規格の音声コーデック方式であるAMR(Adaptive Multi−Rate)およびAMR−WB(Adaptive Multi−Rate Wideband)に対してIPパケット網での音声データのフォーマットを規定している。
また、受信側すなわち音声データ受信装置では、受信した音声データに損失または誤りがある場合、例えば過去に受信した音声フレー厶内の音声データ(符号化データ)またはそれを元に復号した復号音声信号を用いて、損失した音声フレーム内または誤りのある音声フレーム内の音声信号を補償処理により復元する。音声フレームの補償処理に関して、例えば非特許文献2では、AMRのフレーム補償方法を開示している。
上述の音声通信システムにおける音声処理動作について、図1を用いて概説する。図1におけるシーケンス番号(…、n−2、n−1、n、n+1、n+2、…)は各音声フレームに付与されたフレーム番号である。受信側では、このフレーム番号順に従って音声信号を復号し復号音声を音波として出力することとなる。また、同図に示すように、符号化、多重化、送信、分離および復号は、音声フレームごとに行われる。例えば第nフレームが損失した場合、過去に受信した音声フレーム(例えば第n−1フレームや第n−2フレーム)が参照され第nフレームに対するフレーム補償処理が行われる。
ところで、近年のネットワークのブロードバンド化や通信のマルチメディア化に伴い、音声通信において音声の高品質化の流れがある。その一環として、音声信号をモノラル信号としてではなくステレオ信号として符号化および伝送することが求められている。このような要求に対して、非特許文献1には、音声データがマルチチャネルデータ(例えばステレオ音声データ)の場合の多重化に関する規定が記載されている。同文献によれば、音声データが例えば2チャネルのデータの場合、互いに同一の時刻に相当する左チャネル(L−ch)の音声データおよび右チャネル(R−ch)の音声データが多重化される。
″Real−Time Transfer Protocol(RTP)Payload Format and File Storage Format for the Adaptive Multi−Rate(AMR)and Adaptive Multi−Rate Wideband(AMR−WB)Audio Codecs″,IETF RFC3267 ″Mandatory Speech Codec speech processing functions;AMR Speech Codecs;Error concealment of lost frames″,3rd Generation Partnership Project,TS26.091
しかしながら、従来の音声データ受信装置および音声データ受信方法においては、損失した音声フレームまたは誤りのある音声フレームの補償を行うとき、その音声フレームよりも前に受信した音声フレームを用いるため、補償性能(すなわち、補償された音声信号の品質)が十分でないことがあり、入力原信号に忠実な補償を行うには一定の限界がある。これは、扱われる音声信号がモノラルであってもステレオであっても同様である。
本発明は、かかる点に鑑みてなされたもので、高品質なフレーム補償を実現することができる音声データ送信/受信装置および音声データ送信/受信方法を提供することを目的とする。
本発明の音声データ送信装置は、第一チャネルに対応する第一データ系列と第二チャネルに対応する第二データ系列とを含むマルチチャネルの音声データ系列を送信する音声データ送信装置において、前記第一データ系列を前記第二データ系列より所定の遅延量だけ遅延させる遅延処理を、前記音声データ系列に対して施す遅延手段と、前記遅延処理が施された前記音声データ系列を多重化する多重化手段と、多重化された前記音声データ系列を送信する送信手段と、を有する構成を採る。
本発明の音声データ受信装置は、第一チャネルに対応する第一データ系列と第二チャネルに対応する第二データ系列とを含むマルチチャネルの音声データ系列であって前記第一データ系列が前記第二データ系列より所定の遅延量だけ遅延された状態で多重化された前記音声データ系列を受信する受信手段と、受信された前記音声データ系列をチャネルごとに分離する分離手段と、分離された前記音声データ系列をチャネルごとに復号する復号手段と、を有し、前記復号手段は、分離された前記音声データ系列に損失または誤りが発生している場合、前記第一データ系列および前記第二データ系列のうち一方のデータ系列を用いて他方のデータ系列における前記損失または誤りを補償する補償手段を有する構成を採る。
本発明の音声データ送信方法は、第一チャネルに対応する第一データ系列と第二チャネルに対応する第二データ系列とを含むマルチチャネルの音声データ系列を送信する音声データ送信方法において、前記第一データ系列を前記第二データ系列より所定の遅延量だけ遅延させる遅延処理を、前記音声データ系列に対して施す遅延ステップと、前記遅延処理が施された前記音声データ系列を多重化する多重化ステップと、多重化された前記音声データ系列を送信する送信ステップと、を有するようにした。
本発明の音声データ受信方法は、第一チャネルに対応する第一データ系列と第二チャネルに対応する第二データ系列とを含むマルチチャネルの音声データ系列であって前記第一データ系列が前記第二データ系列より所定の遅延量だけ遅延された状態で多重化された前記音声データ系列を受信する受信ステップと、受信した前記音声データ系列をチャネルごとに分離する分離ステップと、分離した前記音声データ系列をチャネルごとに復号する復号ステップと、を有し、前記復号ステップは、分離した前記音声データ系列に損失または誤りが発生している場合、前記第一データ系列および前記第二データ系列のうち一方のデータ系列を用いて他方のデータ系列における前記損失または誤りを補償する補償ステップを有するようにした。
本発明によれば、高品質なフレーム補償を実現できる。
従来の音声通信システムにおける音声処理動作の一例を説明するための図
本発明の実施の形態1に係る音声データ送信装置の構成を示すブロック図
本発明の実施の形態1に係る音声データ受信装置の構成を示すブロック図
本発明の実施の形態1に係る音声データ受信装置における音声復号部の内部構成を示すブロック図
本発明の実施の形態1に係る音声データ送信装置および音声データ受信装置における動作を説明するための図
本発明の実施の形態2に係る音声データ受信装置における音声復号部の内部構成を示すブロック図
本発明の実施の形態3に係る音声データ受信装置における音声復号部の内部構成を示すブロック図
本発明の実施の形態3に係る音声データ受信装置における音声復号部の内部構成の変形例を示すブロック図
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
(実施の形態1)
図2Aおよび図2Bは、本発明の実施の形態1に係る音声データ送信装置および音声データ受信装置の構成をそれぞれ示すブロック図である。なお、本実施の形態では、音源側から入力されるマルチチャネルの音声信号は、左チャネル(L−ch)および右チャネル(R−ch)を含む二つのチャネルを有する、すなわちこの音声信号はステレオ信号である。このため、図2Aおよび図2Bにそれぞれ示す音声データ送信装置10および音声データ受信装置20にはそれぞれ、左右チャネル用の二つの処理系が設けられている。ただし、音声信号のチャネル数は二つに限定されない。チャネル数が三つ以上の場合は、三つ以上の処理系を送信側および受信側にそれぞれ設けることにより、本実施の形態と同様の作用効果を実現することができる。
図2Aに示す音声データ送信装置10は、音声符号化部102、遅延部104、多重化部106および送信部108を有する。
音声符号化部102は、入力されるマルチチャネルの音声信号を符号化し、符号化データを出力する。この符号化は、チャネルごとに独立に行われる。以下の説明においては、L−chの符号化データを「L−ch符号化データ」と称し、R−chの符号化データを「R−ch符号化データ」と称す。
遅延部104は、音声符号化部102からのL−ch符号化データを1音声フレーム分遅延させ多重化部106に出力する。すなわち、遅延部104は、音声符号化部102の後段に配置されている。このように、遅延処理が音声符号化処理の後段に配置されているため、符号化された後のデータに対して遅延処理を行うことができ、遅延処理が音声符号化処理の前段に配置された場合に比して処理を簡略化することができる。
なお、遅延部104により行われる遅延処理における遅延量は、音声フレームの単位で設定されることが好ましいが、1音声フレームには限定されない。ただし、本実施の形態の音声データ送信装置10および音声データ受信装置20を含む音声通信システムは、例えばオーディオデータなどのストリーミングだけでなくリアルタイムの音声通信を主な用途とすることを前提としている。したがって、遅延量を大きい値に設定することで望ましくない影響が通信品質に与えられることを防止するために、本実施の形態では、遅延量を、最小値すなわち1音声フレームに予め設定している。
また、本実施の形態では、遅延部104はL−ch符号化データのみを遅延させているが、音声データに対する遅延処理の施し方はこれに限定されない。例えば、遅延部104は、L−ch符号化データだけでなくR−ch符号化データも遅延させその遅延量の差が音声フレームの単位で設定されているような構成を有しても良い。また、L−chを遅延させる代わりに、R−chのみを遅延するようにしても良い。
多重化部106は、遅延部104からのL−ch符号化データおよび音声符号化部102からのR−ch符号化データを所定のフォーマット(例えば従来技術と同様のフォーマット)に多重化することによりマルチチャネルの音声データをパケット化する。すなわち、本実施の形態では、例えばフレーム番号Nを有するL−ch符号化データは、フレーム番号N+1を有するR−ch符号化データと多重化されることとなる。
送信部108は、音声データ受信装置20までの伝送路に応じて予め決められている送信処理を多重化部106からの音声データに対して施し、音声データ受信装置20宛てに送信する。
一方、図2Bに示す音声データ受信装置20は、受信部110、音声データ損失検出部112、分離部114、遅延部116および音声復号部118を有する。音声復号部118は、フレーム補償部120を有する。図3は、音声復号部118のより詳細な構成を示すブロック図である。図3に示す音声復号部118は、フレーム補償部120のほかに、L−ch復号部122およびR−ch復号部124を有する。また、本実施の形態においては、フレーム補償部120は、スイッチ部126および重ね合わせ加算部128を有し、重ね合わせ加算部128は、L−ch重ね合わせ加算部130およびR−ch重ね合わせ加算部132を有する。
受信部110は、伝送路を介して音声データ送信装置10から受信した受信音声データに対して所定の受信処理を施す。
音声データ損失検出部112は、受信部110により受信処理が施された受信音声データに損失または誤り(以下「損失または誤り」を「損失」と総称する)が発生しているか否かを検出する。損失の発生が検出された場合、損失フラグが分離部114、スイッチ部126および重ね合わせ加算部128に出力される。損失フラグは、L−ch符号化データおよびR−ch符号化データの各々を構成する音声フレームの系列においてどの音声フレームが損失したかを示すものである。
分離部114は、音声データ損失検出部112から損失フラグが入力されたか否かに従い、受信部110からの受信音声データをチャネルごとに分離する。分離によって得られたL−ch符号化データおよびR−ch符号化データは、L−ch復号部122および遅延部116にそれぞれ出力される。
遅延部116は、送信側でL−chを遅延させたのに対応しL−chとR−chの時刻関係を合わせる(元に戻す)ために、分離部114からのR−ch符号化データを、1音声フレーム分遅延させR−ch復号部124に出力する。
なお、遅延部116により行われる遅延処理における遅延量は、音声フレームの単位で行われることが好ましいが、1音声フレームには限定されない。遅延部116での遅延量は、音声データ送信装置10における遅延部104での遅延量と同値に設定される。
また、本実施の形態では、遅延部116はR−ch符号化データのみを遅延させているが、L−chとR−chの時刻関係を合わせるような処理であれば、音声データに対する遅延処理の施し方はこれに限定されない。例えば、遅延部116は、R−ch符号化データだけでなくL−ch符号化データも遅延させその遅延量の差が音声フレームの単位で設定されているような構成を有しても良い。また、送信側でR−chを遅延させた場合には、受信側ではL−chを遅延させるようにする。
音声復号部118では、マルチチャネルの音声データをチャネルごとに復号するための処理が行われる。
音声復号部118において、L−ch復号部122は、分離部114からのL−ch符号化データを復号し、復号によって得られたL−ch復号音声信号が出力される。L−ch復号部122の出力端とL−ch重ね合わせ加算部130の入力端とは常時接続されているので、L−ch重ね合わせ加算部130へのL−ch復号音声信号の出力は常時行われる。
R−ch復号部124は、遅延部124からのR−ch符号化データを復号し、復号によって得られたR−ch復号音声信号が出力される。R−ch復号部124の出力端とR−ch重ね合わせ加算部132の入力端とは常時接続されているので、R−ch重ね合わせ加算部132へのR−ch復号音声信号の出力は常時行われる。
スイッチ部126は、音声データ損失検出部112から損失フラグが入力されたとき、損失フラグに示された情報内容に従って、L−ch復号部122およびR−ch重ね合わせ加算部132の接続状態ならびにR−ch復号部124およびL−ch重ね合わせ加算部130の接続状態を切り替える。
より具体的には、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、R−ch復号部124からのR−ch復号音声信号のうち、フレーム番号K1に相当する音声フレームを復号することにより得られたR−ch復号音声信号が、R−ch重ね合わせ加算部132だけでなくL−ch重ね合わせ加算部130にも出力されるように、R−ch復号部124の出力端をL−ch重ね合わせ加算部130の入力端と接続する。
また、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、L−ch復号部122からのL−ch復号音声信号のうち、フレーム番号K2に相当する音声フレームを復号することにより得られたL−ch復号音声信号が、L−ch重ね合わせ加算部130だけでなくR−ch重ね合わせ加算部132にも出力されるように、L−ch復号部122の出力端をR−ch重ね合わせ加算部132の入力端と接続する。
重ね合わせ加算部128では、音声データ損失検出部112からの損失フラグに従って、マルチチャネルの復号音声信号に対して後述の重ね合わせ加算処理を施す。なお、音声データ損失検出部112からの損失フラグは、より具体的には、L−ch重ね合わせ加算部130およびR−ch重ね合わせ加算部132の両方に入力される。
L−ch重ね合わせ加算部130は、損失フラグが入力されない場合、L−ch復号部122からのL−ch復号音声信号をそのまま出力する。出力されるL−ch復号音声信号は、例えば図示されない後段での音声出力処理により音波に変換され出力される。
また、L−ch重ね合わせ加算部130は、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、L−ch復号音声信号をそのまま出力する。出力されるL−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
また、L−ch重ね合わせ加算部130は、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、L−ch復号部122でフレーム番号K1−1までの音声フレームの符号化データまたは復号音声信号を用いて従来の一般的な手法でフレーム番号K1のフレームの補償を行うことにより得られた補償信号(L−ch補償信号)と、R−ch復号部124でフレーム番号K1に相当する音声フレームを復号することにより得られたR−ch復号音声信号と、を重ね合わせ加算する。重ね合わせは、例えば、フレーム番号K1のフレームの両端付近ではL−ch補償信号に重みが大きく、それ以外ではR−ch復号信号の重みが大きくなるように行う。このようにしてフレーム番号K1に対応するL−ch復号音声信号が復元され、フレーム番号K1の音声フレーム(L−ch符号化データ)に対するフレーム補償処理が完了する。復元されたL−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
なお、重ね合わせ加算部での動作として、上記のようなL−ch補償信号とR−ch復号信号を用いる代わりに、L−chのフレーム番号K1−1の復号信号の後端の一部とR−chのフレーム番号K1−1の復号信号の後端を用いて重ね合わせ加算を行い、その結果をL−chのフレーム番号K1−1の復号信号の後端の信号として、フレーム番号K1のフレームはR−chの復号信号をそのまま出力するようにしても良い。
R−ch重ね合わせ加算部132は、損失フラグが入力されなかった場合、R−ch復号部124からのR−ch復号音声信号をそのまま出力する。出力されるR−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
また、R−ch重ね合わせ加算部132は、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、R−ch復号音声信号をそのまま出力する。出力されるR−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
また、R−ch重ね合わせ加算部132は、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、R−ch復号部124でフレーム番号K2−1までの音声フレームの符号化データまたは復号音声信号を用いてフレーム番号K2のフレームの補償を行うことにより得られた補償信号(R−ch補償信号)と、L−ch復号部122でフレーム番号K2に相当する音声フレームを復号することにより得られたL−ch復号音声信号と、を重ね合わせ加算する。重ね合わせは、例えば、フレーム番号K2のフレームの両端付近ではR−ch補償信号に重みが大きく、それ以外ではL−ch復号信号の重みが大きくなるように行う。このようにしてフレーム番号K2に対応するR−ch復号音声信号が復元され、フレーム番号K2の音声フレーム(R−ch符号化データ)に対するフレーム補償処理が完了する。復元されたR−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
前述のような重ね合わせ加算処理を行うことにより、同チャネルの連続する音声フレーム間において復号結果に不連続性が生じることを抑制することができる。
ここで、音声データ受信装置20の内部構成において、音声復号部118として過去の音声フレームの復号状態に依存してその状態データを用いて次の音声フレームの復号を行うような符号化方式が採用されている場合について説明する。この場合には、L−ch復号部122において、損失の生じた音声フレームの次(直後)の音声フレームに対して通常の復号処理を行うときに、当該損失の生じた音声フレームの補償に用いられたR−ch符号化データをR−ch復号部124で復号する際に得られた状態データを取得し、当該次の音声フレームの復号に使用するようにしても良い。こうすることにより、フレーム間の不連続性を回避することができる。ここで、通常の復号処理とは、損失の生じていない音声フレームに対して行う復号処理を意味する。
また、この場合、R−ch復号部124においては、損失の生じた音声フレームの次(直後)の音声フレームに対して通常の復号処理を行うときに、当該損失の生じた音声フレームの補償に用いられたL−ch符号化データをL−ch復号部122で復号する際に得られた状態データを取得し、当該次の音声フレームの復号に使用するようにしても良い。こうすることにより、フレーム間の不連続性を回避することができる。
なお、状態データとしては、例えば、(1)音声符号化方式としてCELP(Code Excited Linear Prediction)方式が採用された場合には、例えば適応符号帳やLPC合成フィルタ状態など、(2)ADPCM(Adaptive Differential Pulse Code Modulation)方式のような予測波形符号化における予測フィルタの状態データ、(3)スペクトルパラメータなどのパラメータを予測量子化手法で量子化するような場合のその予測フィルタ状態、(4)FFT(Fast Fourier Transform)やMDCT(Modified Discrete Cosine Transform)などを用いる変換符号化方式において復号波形を隣接フレーム間で重ね合わせ加算して最終復号音声波形を得るような構成におけるその前フレーム復号波形データ、などがあり、それらの状態データを用いて損失の生じた音声フレームの次(直後)の音声フレームに対して通常の音声復号を行うようにしても良い。
次いで、上記構成を有する音声データ送信装置10および音声データ受信装置20における動作について説明する。図4は、本実施の形態に係る音声データ送信装置10および音声データ受信装置20の動作を説明するための図である。
音声符号化部102に入力されるマルチチャネルの音声信号は、L−chの音声信号の系列およびR−chの音声信号の系列から成る。図示されているとおり、互いに同じフレーム番号に対応するL−chおよびR−chの各音声信号(例えば、L−chの音声信号SL(n)およびR−chの音声信号SR(n))が同時に音声符号化部102に入力される。互いに同じフレーム番号に対応する各音声信号は、最終的に同時に音波として音声出力されるべき音声信号である。
マルチチャネルの音声信号は、音声符号化部102、遅延部104および多重化部106により各処理を施され、送信音声データとなる。図示されているとおり、送信音声データは、L−ch符号化データをR−ch符号化データよりも1音声フレームだけ遅延した状態で多重化されたものとなっている。例えば、L−ch符号化データCL(n−1)はR−ch符号化データCR(n)と多重化される。このようにして音声データがパケット化される。生成された送信音声データは、送信側から受信側に送信される。
したがって、音声データ受信装置20で受信された受信音声データは、図示されているとおり、L−ch符号化データをR−ch符号化データよりも1音声フレームだけ遅延した状態で多重化されたものとなっている。例えば、L−ch符号化データCL’(n−1)はR−ch符号化データCR’(n)と多重化されている。
このようなマルチチャネルの受信音声データは、分離部114、遅延部116および音声復号部118により各処理を施され、復号音声信号となる。
ここで、音声データ受信装置20で受信された受信音声データにおいて、L−ch符号化データCL’(n−1)およびR−ch符号化データCR’(n)に損失が発生していたと仮定する。
この場合、符号化データCL’(n−1)と同一フレーム番号を有するR−chの符号化データCR’(n−1)および符号化データCR’(n)と同一フレーム番号を有するL−chの符号化データCL(n)は、損失せずに受信されているので、フレーム番号nに対応するマルチチャネルの音声信号が音声出力されるときに一定の音質を確保できる。
さらに、音声フレームCL’(n−1)に損失が生じると、対応する復号音声信号SL’(n−1)も失われることとなるが、符号化データCL’(n−1)と同一フレーム番号のR−chの符号化データCR’(n−1)は損失せずに受信されているので、符号化データCR’(n−1)により復号された復号音声信号SR’(n−1)を用いてフレーム補償を行うことにより、復号音声信号SL’(n−1)が復元される。また、音声フレームCR’(n)に損失が生じると、対応する復号音声信号SR’(n)も失われることとなるが、符号化データCR’(n)と同一フレーム番号のL−chの符号化データCL(n)は、損失せずに受信されているので、符号化データCL’(n)により復号された復号音声信号SL’(n)を用いてフレーム補償を行うことにより、復号音声信号SR’(n)が復元される。このようなフレーム補償を行うことにより、復元される音質の改善を図ることができる。
このように、本実施の形態によれば、送信側においては、L−ch符号化データをR−ch符号化データより1音声フレーム分だけ遅延させるような遅延処理が施されたマルチチャネルの音声データを多重化する。一方、受信側においては、L−ch符号化データがR−ch符号化データより1音声フレーム分だけ遅延された状態で多重化されたマルチチャネルの音声データをチャネルごとに分離し、分離された符号化データに損失または誤りが発生している場合、L−ch符号化データおよびR−ch符号化データのうち一方のデータ系列を用いて他方のデータ系列における損失または誤りを補償する。このため、受信側で、音声フレームに損失または誤りが発生したときでも、マルチチャネルの少なくとも一つのチャネルを正しく受信できるようになり、そのチャネルを用いて他のチャネルのフレーム補償を行うことが可能となり、高品質なフレーム補償を実現することができる。
あるチャネルの音声フレー厶を、他のチャネルの音声フレームを用いて復元することが可能となるため、マルチチャネルに含まれる各チャネルのフレーム補償性能を向上させることができる。前述のような作用効果が実現されると、ステレオ信号により表現される「音の方向性」を維持することが可能となる。よって、例えば、昨今で広く利用されている、遠隔地に居る人との電話会議において、聞こえてくる相手の声に臨場感を持たせることが可能となる。
なお、本実施の形態では、音声符号化部102の後段で片方のチャネルのデータを遅延させる構成を例にとって説明したが、本実施の形態による効果を実現可能な構成はこれに限定されない。例えば、音声符号化部102の前段で片方のチャネルのデータを遅延させるような構成であっても良い。この場合、設定される遅延量は、音声フレームの単位に限定されない。例えば、遅延量を1音声フレームよりも短くすることも可能となる。例えば、1音声フレームを20msとすると、遅延量を0.5音声フレーム(10ms)に設定することができる。
(実施の形態2)
図5は、本発明の実施の形態2に係る音声データ受信装置における音声復号部の構成を示すブロック図である。なお、本実施の形態に係る音声データ送信装置および音声データ受信装置は、実施の形態1で説明したものと同一の基本的構成を有しているため、同一のまたは対応する構成要素には同一の参照符号を付し、その詳細な説明を省略する。本実施の形態と実施の形態1との相違点は、音声復号部の内部構成のみである。
図5に示す音声復号部118は、フレーム補償部120を有する。フレーム補償部120は、スイッチ部202、L−ch復号部204およびR−ch復号部206を有する。
スイッチ部202は、音声データ損失検出部112から損失フラグが入力されたとき、損失フラグに示された情報内容に従って、分離部114およびR−ch復号部206の接続状態ならびに遅延部116およびL−ch復号部204の接続状態を切り替える。
より具体的には、例えば、損失フラグが入力されない場合、分離部114からのL−ch符号化データがL−ch復号部204のみに出力されるように、分離部114のL−chの出力端をL−ch復号部204の入力端と接続する。また、損失フラグが入力されない場合、遅延部116からのR−ch符号化データがR−ch復号部206のみに出力されるように、遅延部116の出力端をR−ch復号部206の入力端と接続する。
また、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、遅延部116からのR−ch符号化データのうちフレーム番号K1に相当する音声フレームが、R−ch復号部206だけでなくL−ch復号部204にも出力されるように、遅延部116の出力端を、L−ch復号部204およびR−ch復号部206の両方の入力端と接続する。
また、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、分離部114からのL−ch符号化データのうちフレーム番号K2に相当する音声フレームが、L−ch復号部204だけでなくR−ch復号部206にも出力されるように、分離部114のL−chの出力端を、R−ch復号部206およびL−ch復号部204の両方の入力端と接続する。
L−ch復号部204は、分離部114からのL−ch符号化データが入力された場合、当該L−ch符号化データを復号する。この復号結果をL−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、L−ch復号部204は、遅延部116からのR−ch符号化データが入力された場合、当該R−ch符号化データを復号する。このようにR−ch符号化データをL−ch復号部204で復号することにより、損失の発生したL−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、L−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
R−ch復号部206は、遅延部116からのR−ch符号化データが入力された場合、当該R−ch符号化データを復号する。この復号結果をR−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、R−ch復号部206は、分離部114からのL−ch符号化データが入力された場合、当該L−ch符号化データを復号する。このようにL−ch符号化データをR−ch復号部206で復号することにより、損失の発生したR−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、R−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
このように、本実施の形態によれば、送信側においては、L−ch符号化データをR−ch符号化データより1音声フレーム分だけ遅延させるような遅延処理が施されたマルチチャネルの音声データを多重化する。一方、受信側においては、L−ch符号化データがR−ch符号化データより1音声フレーム分だけ遅延された状態で多重化されたマルチチャネルの音声データをチャネルごとに分離し、分離された符号化データに損失または誤りが発生している場合、L−ch符号化データおよびR−ch符号化データのうち一方のデータ系列を用いて他方のデータ系列における損失または誤りを補償する。このため、受信側で、音声フレームに損失または誤りが発生したときでも、マルチチャネルの少なくとも一つのチャネルを正しく受信できるようになり、そのチャネルを用いて他のチャネルのフレーム補償を行うことが可能となり、高品質なフレーム補償を実現することができる。
(実施の形態3)
図6は、本発明の実施の形態3に係る音声データ受信装置における音声復号部の構成を示すブロック図である。なお、本実施の形態に係る音声データ送信装置および音声データ受信装置は、実施の形態1で説明したものと同一の基本的構成を有しているため、同一のまたは対応する構成要素には同一の参照符号を付し、その詳細な説明を省略する。本実施の形態と実施の形態1との相違点は、音声復号部の内部構成のみである。
図6に示す音声復号部118は、フレーム補償部120を有する。フレーム補償部120は、スイッチ部302、L−chフレーム補償部304、L−ch復号部306、R−ch復号部308、R−chフレーム補償部310および相関度判定部312を有する。
スイッチ部302は、音声データ損失検出部112から損失フラグの入力の有無および入力された損失フラグに示された情報内容ならびに相関度判定部312からの指示信号の入力の有無に従って、分離部114ならびにL−ch復号部306およびR−ch復号部308の間の接続状態を切り替える。また同様に、遅延部116ならびにL−ch復号部306およびR−ch復号部308の間の接続関係を切り替える。
より具体的には、例えば、損失フラグが入力されない場合、分離部114からのL−ch符号化データがL−ch復号部306のみに出力されるように、分離部114のL−chの出力端をL−ch復号部306の入力端と接続する。また、損失フラグが入力されない場合、遅延部116からのR−ch符号化データがR−ch復号部308のみに出力されるように、遅延部116の出力端をR−ch復号部308の入力端と接続する。
上記のとおり、損失フラグが入力されない場合、接続関係は相関度判定部312からの指示信号に依存しないが、損失フラグが入力された場合は、接続関係は指示信号にも依存する。
例えば、フレーム番号K1のL−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力があったときは、遅延部116からのフレーム番号K1のR−ch符号化データが、R−ch復号部308だけでなくL−ch復号部306にも出力されるように、遅延部116の出力端を、L−ch復号部306およびR−ch復号部308の両方の入力端と接続する。
これに対して、フレーム番号K1のL−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力がないときは、分離部114のL−chの出力端とL−ch復号部306およびR−ch復号部308との間の接続を開放とする。
また、例えば、フレーム番号K2のR−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力があったときは、分離部114からのフレーム番号K2のL−ch符号化データが、L−ch復号部306だけでなくR−ch復号部308にも出力されるように、分離部114のL−chの出力端を、R−ch復号部308およびL−ch復号部306の両方の入力端と接続する。
これに対して、フレーム番号K2のR−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力がないときは、遅延部116の出力端とL−ch復号部306およびR−ch復号部308との間の接続を開放とする。
L−chフレーム補償部304およびR−chフレーム補償部310は、L−chまたはR−chの符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力がないときに、従来の一般的な手法と同様に、同一チャネルの前フレームまでの情報を用いたフレーム補償を行い、補償データ(符号化データ又は復号信号)を、L−ch復号部306およびR−ch復号部308にそれぞれ出力する。
L−ch復号部306は、分離部114からのL−ch符号化データが入力された場合、当該L−ch符号化データを復号する。この復号結果をL−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、L−ch復号部306は、損失フラグの入力があった場合で、遅延部116からのR−ch符号化データが入力されたときは、当該R−ch符号化データを復号する。このようにR−ch符号化データをL−ch復号部306で復号することにより、損失の発生したL−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、L−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
さらに、L−ch復号部306は、損失フラグの入力があった場合で、L−chフレーム補償部304からの補償データが入力されたときは、次のような復号処理を行う。すなわち、当該補償データとして符号化データが入力された場合はその符号化データを復号し、補償復号信号が入力された場合はその信号をそのまま出力信号とする。このようにしたときも、損失の発生したL−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、L−ch復号音声信号として出力される。
R−ch復号部308は、遅延部116からのR−ch符号化データが入力された場合、当該R−ch符号化データを復号する。この復号結果をR−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、R−ch復号部308は、損失フラグの入力があった場合で、分離部114からのL−ch符号化データが入力されたときは、当該L−ch符号化データを復号する。このようにL−ch符号化データをR−ch復号部308で復号することにより、損失の発生したR−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、R−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
さらに、R−ch復号部308は、損失フラグの入力があった場合で、R−chフレーム補償部310からの補償データが入力されたときは、次のような復号処理を行う。すなわち、当該補償データとして符号化データが入力された場合はその符号化データを復号し、補償復号信号が入力された場合はその信号をそのまま出力信号とする。このようにしたときも、損失の発生したR−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、R−ch復号音声信号として出力される。
相関度判定部312は、L−ch復号音声信号とR−ch復号音声信号との間の相関度Corを、次の式(1)を用いて算出する。
ここで、sL’(i)およびsR’(i)はそれぞれL−ch復号音声信号およびR−ch復号音声信号である。上記の式(1)により、補償フレームのLサンプル前の音声サンプル値から1サンプル前(つまり直前)の音声サンプル値までの区間における相関度Corが算出される。
また、相関度判定部312は、算出された相関度Corを所定の閾値と比較する。この比較の結果、相関度Corが所定の閾値よりも高い場合は、L−ch復号音声信号とR−ch復号音声信号との間の相関が高いと判定する。そして、損失が生じたときに互いのチャネルの符号化データを用いることを指示するための指示信号をスイッチ部302に出力する。
一方、相関度判定部312は、算出された相関度Corを上記閾値と比較した結果、相関度Corが閾値以下の場合は、L−ch復号音声信号およびR−ch復号音声信号の間の相関が低いと判定する。そして、損失が生じたときに同一チャネルの符号化データを使用させるために、スイッチ部302への指示信号の出力を行わない。
このように、本実施の形態によれば、L−ch復号音声信号とR−ch復号音声信号との間の相関度Corを所定の閾値と比較し、当該比較の結果に従って、互いのチャネルの符号化データを用いたフレーム補償を行うか否かを決定するため、チャネル間の相関が高いときにのみ互いのチャネルの音声データに基づく補償を行うようにすることができ、相関が低いときに互いのチャネルの音声データを用いてフレーム補償を行うことによる補償品質の劣化を防止することができる。また、本実施の形態では、相関が低いときには同一チャネルの音声データに基づく補償を行うため、フレーム補償の品質を継続的に維持することができる。
なお、本実施の形態では、相関度判定部312を、フレーム補償の際に符号化データを用いる実施の形態2におけるフレーム補償部120に設けた場合を例にとって説明した。ただし、相関度判定部312を設けたフレーム補償部120の構成はこれに限定されない。例えば、相関度判定部312を、フレーム補償の際に復号音声を用いるフレーム補償部120(実施の形態1)に設けた場合でも、同様の作用効果を実現することができる。
この場合の構成図を図7に示す。この場合の動作は、実施の形態1における図3での構成における動作に対して、主にスイッチ部126の動作が異なる。すなわち、損失フラグと共に相関度判定部312からの出力である指示信号の結果によりスイッチ部126における接続状態が切り替わる。例えば、L−ch符号化データが損失したことを示す損失フラグが入力された場合でかつ指示信号の入力があったときは、L−chフレーム補償部304で得られた補償信号とR−chの復号信号とがL−ch重ね合わせ加算部130に入力され重ね合わせ加算が行われる。また、L−ch符号化データが損失したことを示す損失フラグが入力された場合でかつ指示信号の入力がない場合は、L−chフレーム補償部304で得られた補償信号のみがL−ch重ね合わせ加算部130に入力されそのまま出力される。R−ch符号化データに対して損失フラグが入力された時の動作も前記R−chの場合と同様である。
L−chフレーム補償部304は、フレーム損失フラグの入力があった場合には、損失フレームの前フレームまでのL−chの情報を用いて従来の一般的な手法と同様なフレーム補償処理を行い補償データ(符号化データ又は復号信号)をL−ch復号部122へ出力し、L−ch復号部122は補償フレームの補償信号を出力する。その際、当該補償データとして符号化データが入力された場合はその符号化データを用いて復号し、補償復号信号が入力された場合はその信号をそのまま出力信号とする。また、L−chフレーム補償部304で補償処理を行う際には、L−ch復号部122における前フレームまでの復号信号や状態データを用いる、またはL−ch重ね合わせ加算部130の前フレームまでの出力信号を用いるようにしても良い。R−chフレーム補償部310の動作もL−chの場合と同様である。
また、本実施の形態では、相関度判定部312は、所定区間の相関度Corの算出処理を行うが、相関度判定部312における相関度算出処理方法はこれに限定されない。
例えば、L−ch復号音声信号とR−ch復号音声信号との相関度の最大値Cor_maxを、次の式(2)を用いて算出する方法が挙げられる。この場合、最大値Cor_maxを所定の閾値と比較し、最大値Cor_maxがその閾値を超過している場合は、チャネル間の相関が高いと判定する。このようにすることで、上記と同様の作用効果を実現することができる。
そして、相関が高いと判定された場合は他方のチャネルの符号化データを用いたフレーム補償が行われる。このとき、フレーム補償に用いる他チャネルの復号音声を、最大値Cor_maxが得られるシフト量(すなわち音声サンプル数)だけシフトさせた後に用いるようにしても良い。
最大値Cor_maxとなる音声サンプルのシフト量τ_maxは、次の式(3)を用いることにより算出される。そして、L−chのフレーム補償を行う場合には、シフト量τ_maxだけR−chの復号信号を正の時間方向にシフトした信号を用いる。逆にR−chのフレームの補償を行う場合には、シフト量τ_maxだけL−chの復号信号を負の時間方向にシフトした信号を用いる。
ここで、上記の式(2)および(3)において、sL’(i)およびsR’(i)はそれぞれL−ch復号音声信号およびR−ch復号音声信号である。また、L+Mサンプル前の音声サンプル値から1サンプル前(つまり直前)の音声サンプル値までの区間中のLサンプル分が算出対象区間となっている。また、−MサンプルからMサンプルの音声サンプル分のシフト量が算出対象範囲となっている。
これにより、相関度が最大となるシフト量だけシフトさせた他チャネルの音声データを用いてフレーム補償を行うことができ、補償された音声フレームとその前後の音声フレームとのフレーム間整合をより正確に取ることができるようになる。
なお、シフト量τ_maxは、音声サンプル数単位の整数値であっても、また音声サンプル値間の分解能を上げた小数値であっても良い。
さらに、相関度判定部312の内部構成に関して、L−chデータ系列の復号結果とR−chデータ系列の復号結果とを用いて、フレー厶補償に用いる他方のデータ系列の音声データの復号結果に対する振幅補正値を算出する振幅補正値算出部を内部に有する構成としても良い。この場合、音声復号部118には、算出した振幅補正値を用いて、当該他方のデータ系列の音声データの復号結果の振幅を補正する振幅補正部が設けられる。そして、他チャネルの音声データを用いてフレーム補償を行う際に、その補正値を用いてその復号信号の振幅を補正するようにしても良い。なお、振幅補正値算出部の配置は、音声復号部118の内部であれば良く、相関度判定部312の内部には限定されない。
振幅値補正を行う場合、例えば、式(4)のD(g)を最小にするようなgを求める。そして、求められたgの値(=g_opt)を振幅補正値とする。L−chのフレーム補償を行う場合には、振幅補正値g_optをR−chの復号信号に乗じた信号を用いる。逆にR−chのフレームの補償を行う場合には、振幅補正値の逆数1/g_optをL−chの復号信号に乗じた信号を用いる。
ここで、τ_maxは式(3)で得られた相関度が最大となる時の音声サンプルのシフト量である。
なお、振幅補正値の算出方法は式(4)に限定されるものでなく、a)式(5)のD(g)を最小にするようなgをその振幅補正値とする、b)式(6)のD(g,k)を最小とするようなシフト量kとgとを求めそのときのgを振幅補正値とする、c)当該補償フレームの前までの所定区間に対するL−chとR−chとの復号信号のパワーの平方根(または平均振幅値)の比を補正値とする、といった方法で算出しても良い。
これにより、他チャネルの音声データを用いてフレーム補償を行う際に、その復号信号の振幅を補正した後に補償に用いることで、より適切な振幅を有した補償を行うことができる。
なお、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されても良いし、一部又は全てを含むように1チップ化されても良い。
ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応等が可能性としてありえる。
本明細書は、2004年6月2日出願の特願2004−165016に基づく。この内容はすべてここに含めておく。
本発明の音声データ送信/受信装置および音声データ送信/受信方法は、誤りのある音声データや損失した音声データの補償処理が行われる音声通信システム等において有用である。
本発明は、音声データ受信装置および音声データ受信方法に関し、特に、誤りのある音声データや損失した音声データの補償処理が行われる音声通信システムに用いられる音声データ受信装置および音声データ受信方法に関する。
IP(Internet Protocol)網や無線通信網での音声通信においては、IPパケットの損失や無線伝送誤りなどにより、受信側で音声データを受信できなかったり誤りのある音声データを受信したりすることがある。このため、一般に音声通信システムにおいては、誤った音声データまたは損失した音声データを補償するための処理が行われる。
一般的な音声通信システムの送信側すなわち音声データ送信装置では、入力原信号たる音声信号は、音声データとして符号化され、多重化(パケット化)され、宛先装置に対して送信される。通常、多重化は、1音声フレームを1つの伝送単位として行われる。多重化に関して、例えば非特許文献1では、3GPP(3rd Generation Partnership Project)規格の音声コーデック方式であるAMR(Adaptive Multi-Rate)およびAMR−WB(Adaptive Multi-Rate Wideband)に対してIPパケット網での音声データのフォーマットを規定している。
また、受信側すなわち音声データ受信装置では、受信した音声データに損失または誤りがある場合、例えば過去に受信した音声フレーム内の音声データ(符号化データ)またはそれを元に復号した復号音声信号を用いて、損失した音声フレーム内または誤りのある音声フレーム内の音声信号を補償処理により復元する。音声フレームの補償処理に関して、例えば非特許文献2では、AMRのフレーム補償方法を開示している。
上述の音声通信システムにおける音声処理動作について、図1を用いて概説する。図1におけるシーケンス番号(…、n−2、n−1、n、n+1、n+2、…)は各音声フレームに付与されたフレーム番号である。受信側では、このフレーム番号順に従って音声信号を復号し復号音声を音波として出力することとなる。また、同図に示すように、符号化、多重化、送信、分離および復号は、音声フレームごとに行われる。例えば第nフレームが損失した場合、過去に受信した音声フレーム(例えば第n−1フレームや第n−2フレーム)が参照され第nフレームに対するフレーム補償処理が行われる。
しかしながら、従来の音声データ受信装置および音声データ受信方法においては、損失した音声フレームまたは誤りのある音声フレームの補償を行うとき、その音声フレームよりも前に受信した音声フレームを用いるため、補償性能(すなわち、補償された音声信号の品質)が十分でないことがあり、入力原信号に忠実な補償を行うには一定の限界がある。これは、扱われる音声信号がモノラルであってもステレオであっても同様である。
本発明は、かかる点に鑑みてなされたもので、高品質なフレーム補償を実現することができる音声データ受信装置および音声データ受信方法を提供することを目的とする。
本発明の音声データ受信装置は、第一チャネルに対応する第一データ系列と第二チャネルに対応する第二データ系列とを含むマルチチャネルの音声データ系列であって前記第一データ系列が前記第二データ系列より所定の遅延量だけ遅延された状態で多重化された前記音声データ系列を受信する受信手段と、受信された前記音声データ系列をチャネルごとに復号する復号手段と、前記音声データ系列に損失または誤りが発生している場合、前記音声データ系列が復号されるときに、前記第一データ系列および前記第二データ系列のうち一方のデータ系列を用いて他方のデータ系列における前記損失または誤りを補償する補償手段と、を有する構成を採る。
本発明の音声データ受信方法は、第一チャネルに対応する第一データ系列と第二チャネルに対応する第二データ系列とを含むマルチチャネルの音声データ系列であって前記第一データ系列が前記第二データ系列より所定の遅延量だけ遅延された状態で多重化された前記音声データ系列を受信する受信ステップと、受信された前記音声データ系列をチャネルごとに復号する復号ステップと、前記音声データ系列に損失または誤りが発生している場合、前記音声データ系列が復号されるときに、前記第一データ系列および前記第二データ系列のうち一方のデータ系列を用いて他方のデータ系列における前記損失または誤りを補償する補償ステップと、を有するようにした。
本発明によれば、高品質なフレーム補償を実現できる。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
(実施の形態1)
図2Aおよび図2Bは、本発明の実施の形態1に係る音声データ送信装置および音声データ受信装置の構成をそれぞれ示すブロック図である。なお、本実施の形態では、音源側から入力されるマルチチャネルの音声信号は、左チャネル(L−ch)および右チャネル(R−ch)を含む二つのチャネルを有する、すなわちこの音声信号はステレオ信号である。このため、図2Aおよび図2Bにそれぞれ示す音声データ送信装置10および音声データ受信装置20にはそれぞれ、左右チャネル用の二つの処理系が設けられている。ただし、音声信号のチャネル数は二つに限定されない。チャネル数が三つ以上の場合は、三つ以上の処理系を送信側および受信側にそれぞれ設けることにより、本実施の形態と同様の作用効果を実現することができる。
図2Aに示す音声データ送信装置10は、音声符号化部102、遅延部104、多重化部106および送信部108を有する。
音声符号化部102は、入力されるマルチチャネルの音声信号を符号化し、符号化データを出力する。この符号化は、チャネルごとに独立に行われる。以下の説明においては、L−chの符号化データを「L−ch符号化データ」と称し、R−chの符号化データを「R−ch符号化データ」と称す。
遅延部104は、音声符号化部102からのL−ch符号化データを1音声フレーム分遅延させ多重化部106に出力する。すなわち、遅延部104は、音声符号化部102の後段に配置されている。このように、遅延処理が音声符号化処理の後段に配置されているため、符号化された後のデータに対して遅延処理を行うことができ、遅延処理が音声符号化処理の前段に配置された場合に比して処理を簡略化することができる。
なお、遅延部104により行われる遅延処理における遅延量は、音声フレームの単位で設定されることが好ましいが、1音声フレームには限定されない。ただし、本実施の形態の音声データ送信装置10および音声データ受信装置20を含む音声通信システムは、例えばオーディオデータなどのストリーミングだけでなくリアルタイムの音声通信を主な用途とすることを前提としている。したがって、遅延量を大きい値に設定することで望ましくない影響が通信品質に与えられることを防止するために、本実施の形態では、遅延量を、最小値すなわち1音声フレームに予め設定している。
また、本実施の形態では、遅延部104はL−ch符号化データのみを遅延させているが、音声データに対する遅延処理の施し方はこれに限定されない。例えば、遅延部104は、L−ch符号化データだけでなくR−ch符号化データも遅延させその遅延量の差が音声フレームの単位で設定されているような構成を有しても良い。また、L−chを遅延させる代わりに、R−chのみを遅延するようにしても良い。
多重化部106は、遅延部104からのL−ch符号化データおよび音声符号化部102からのR−ch符号化データを所定のフォーマット(例えば従来技術と同様のフォーマット)に多重化することによりマルチチャネルの音声データをパケット化する。すなわち、本実施の形態では、例えばフレーム番号Nを有するL−ch符号化データは、フレーム番号N+1を有するR−ch符号化データと多重化されることとなる。
送信部108は、音声データ受信装置20までの伝送路に応じて予め決められている送信処理を多重化部106からの音声データに対して施し、音声データ受信装置20宛てに送信する。
一方、図2Bに示す音声データ受信装置20は、受信部110、音声データ損失検出部112、分離部114、遅延部116および音声復号部118を有する。音声復号部118は、フレーム補償部120を有する。図3は、音声復号部118のより詳細な構成を示すブロック図である。図3に示す音声復号部118は、フレーム補償部120のほかに、L−ch復号部122およびR−ch復号部124を有する。また、本実施の形態においては、フレーム補償部120は、スイッチ部126および重ね合わせ加算部128を有し、重ね合わせ加算部128は、L−ch重ね合わせ加算部130およびR−ch重ね合わせ加算部132を有する。
受信部110は、伝送路を介して音声データ送信装置10から受信した受信音声データに対して所定の受信処理を施す。
音声データ損失検出部112は、受信部110により受信処理が施された受信音声データに損失または誤り(以下「損失または誤り」を「損失」と総称する)が発生しているか否かを検出する。損失の発生が検出された場合、損失フラグが分離部114、スイッチ部126および重ね合わせ加算部128に出力される。損失フラグは、L−ch符号化データおよびR−ch符号化データの各々を構成する音声フレームの系列においてどの音声フレームが損失したかを示すものである。
分離部114は、音声データ損失検出部112から損失フラグが入力されたか否かに従い、受信部110からの受信音声データをチャネルごとに分離する。分離によって得られたL−ch符号化データおよびR−ch符号化データは、L−ch復号部122および遅延部116にそれぞれ出力される。
遅延部116は、送信側でL−chを遅延させたのに対応しL−chとR−chの時刻関係を合わせる(元に戻す)ために、分離部114からのR−ch符号化データを、1音声フレーム分遅延させR−ch復号部124に出力する。
なお、遅延部116により行われる遅延処理における遅延量は、音声フレームの単位で行われることが好ましいが、1音声フレームには限定されない。遅延部116での遅延量は、音声データ送信装置10における遅延部104での遅延量と同値に設定される。
また、本実施の形態では、遅延部116はR−ch符号化データのみを遅延させているが、L−chとR−chの時刻関係を合わせるような処理であれば、音声データに対する遅延処理の施し方はこれに限定されない。例えば、遅延部116は、R−ch符号化データだけでなくL−ch符号化データも遅延させその遅延量の差が音声フレームの単位で設定されているような構成を有しても良い。また、送信側でR−chを遅延させた場合には、受信側ではL−chを遅延させるようにする。
音声復号部118では、マルチチャネルの音声データをチャネルごとに復号するための処理が行われる。
音声復号部118において、L−ch復号部122は、分離部114からのL−ch符号化データを復号し、復号によって得られたL−ch復号音声信号が出力される。L−ch復号部122の出力端とL−ch重ね合わせ加算部130の入力端とは常時接続されているので、L−ch重ね合わせ加算部130へのL−ch復号音声信号の出力は常時行われる。
R−ch復号部124は、遅延部124からのR−ch符号化データを復号し、復号によって得られたR−ch復号音声信号が出力される。R−ch復号部124の出力端とR−ch重ね合わせ加算部132の入力端とは常時接続されているので、R−ch重ね合わせ加算部132へのR−ch復号音声信号の出力は常時行われる。
スイッチ部126は、音声データ損失検出部112から損失フラグが入力されたとき、損失フラグに示された情報内容に従って、L−ch復号部122およびR−ch重ね合わせ加算部132の接続状態ならびにR−ch復号部124およびL−ch重ね合わせ加算部130の接続状態を切り替える。
より具体的には、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、R−ch復号部124からのR−ch復号音声信号のうち、フレーム番号K1に相当する音声フレームを復号することにより得られたR−ch復号音声信号が、R−ch重ね合わせ加算部132だけでなくL−ch重ね合わせ加算部130にも出力されるように、R−ch復号部124の出力端をL−ch重ね合わせ加算部130の入力端と接続する。
また、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、L−ch復号部122からのL−ch復号音声信号のうち、フレーム番号K2に相当する音声フレームを復号することにより得られたL−ch復号音声信号が、L−ch重ね合わせ加算部130だけでなくR−ch重ね合わせ加算部132にも出力されるように、L−ch復号部122の出力端をR−ch重ね合わせ加算部132の入力端と接続する。
重ね合わせ加算部128では、音声データ損失検出部112からの損失フラグに従って、マルチチャネルの復号音声信号に対して後述の重ね合わせ加算処理を施す。なお、音声データ損失検出部112からの損失フラグは、より具体的には、L−ch重ね合わせ加算部130およびR−ch重ね合わせ加算部132の両方に入力される。
L−ch重ね合わせ加算部130は、損失フラグが入力されない場合、L−ch復号部122からのL−ch復号音声信号をそのまま出力する。出力されるL−ch復号音声信号は、例えば図示されない後段での音声出力処理により音波に変換され出力される。
また、L−ch重ね合わせ加算部130は、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、L−ch復号音声信号をそのまま出力する。出力されるL−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
また、L−ch重ね合わせ加算部130は、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、L−ch復号部122でフレーム番号K1−1までの音声フレームの符号化データまたは復号音声信号を用いて従来の一般的な手法でフレーム番号K1のフレームの補償を行うことにより得られた補償信号(L−ch補償信号)と、R−ch復号部124でフレーム番号K1に相当する音声フレームを復号することにより得られたR−ch復号音声信号と、を重ね合わせ加算する。重ね合わせは、例えば、フレーム番号K1のフレームの両端付近ではL−ch補償信号に重みが大きく、それ以外ではR−ch復号信号の重みが大きくなるように行う。このようにしてフレーム番号K1に対応するL−ch復号音声信号が復元され、フレーム番号K1の音声フレーム(L−ch符号化データ)に対するフレーム補償処理が完了する。復元されたL−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
なお、重ね合わせ加算部での動作として、上記のようなL−ch補償信号とR−ch復号信号を用いる代わりに、L−chのフレーム番号K1−1の復号信号の後端の一部とR−chのフレーム番号K1−1の復号信号の後端を用いて重ね合わせ加算を行い、その結果をL−chのフレーム番号K1−1の復号信号の後端の信号として、フレーム番号K1のフレームはR−chの復号信号をそのまま出力するようにしても良い。
R−ch重ね合わせ加算部132は、損失フラグが入力されなかった場合、R−ch復号部124からのR−ch復号音声信号をそのまま出力する。出力されるR−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
また、R−ch重ね合わせ加算部132は、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、R−ch復号音声信号をそのまま出力する。出力されるR−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
また、R−ch重ね合わせ加算部132は、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、R−ch復号部124でフレーム番号K2−1までの音声フレームの符号化データまたは復号音声信号を用いてフレーム番号K2のフレームの補償を行うことにより得られた補償信号(R−ch補償信号)と、L−ch復号部122でフレーム番号K2に相当する音声フレームを復号することにより得られたL−ch復号音声信号と、を重ね合わせ加算する。重ね合わせは、例えば、フレーム番号K2のフレームの両端付近ではR−ch補償信号に重みが大きく、それ以外ではL−ch復号信号の重みが大きくなるように行う。このようにしてフレーム番号K2に対応するR−ch復号音声信号が復元され、フレーム番号K2の音声フレーム(R−ch符号化データ)に対するフレーム補償処理が完了する。復元されたR−ch復号音声信号は、例えば前述の音声出力処理段に出力される。
前述のような重ね合わせ加算処理を行うことにより、同チャネルの連続する音声フレーム間において復号結果に不連続性が生じることを抑制することができる。
ここで、音声データ受信装置20の内部構成において、音声復号部118として過去の音声フレームの復号状態に依存してその状態データを用いて次の音声フレームの復号を行うような符号化方式が採用されている場合について説明する。この場合には、L−ch復号部122において、損失の生じた音声フレームの次(直後)の音声フレームに対して通常の復号処理を行うときに、当該損失の生じた音声フレームの補償に用いられたR−ch符号化データをR−ch復号部124で復号する際に得られた状態データを取得し、当該次の音声フレームの復号に使用するようにしても良い。こうすることにより、フレーム間の不連続性を回避することができる。ここで、通常の復号処理とは、損失の生じていない音声フレームに対して行う復号処理を意味する。
また、この場合、R−ch復号部124においては、損失の生じた音声フレームの次(直後)の音声フレームに対して通常の復号処理を行うときに、当該損失の生じた音声フレームの補償に用いられたL−ch符号化データをL−ch復号部122で復号する際に得られた状態データを取得し、当該次の音声フレームの復号に使用するようにしても良い。こうすることにより、フレーム間の不連続性を回避することができる。
なお、状態データとしては、例えば、(1)音声符号化方式としてCELP(Code Excited Linear Prediction)方式が採用された場合には、例えば適応符号帳やLPC合成フィルタ状態など、(2)ADPCM(Adaptive Differential Pulse Code Modulation)方式のような予測波形符号化における予測フィルタの状態データ、(3)スペクトルパラメータなどのパラメータを予測量子化手法で量子化するような場合のその予測フィルタ状態、(4)FFT(Fast Fourier Transform)やMDCT(Modified Discrete Cosine Transform)などを用いる変換符号化方式において復号波形を隣接フレーム間で重ね合わせ加算して最終復号音声波形を得るような構成におけるその前フレーム復号波形データ、などがあり、それらの状態データを用いて損失の生じた音声フレームの次(直後)の音声フレームに対して通常の音声復号を行うようにしても良い。
次いで、上記構成を有する音声データ送信装置10および音声データ受信装置20における動作について説明する。図4は、本実施の形態に係る音声データ送信装置10および音声データ受信装置20の動作を説明するための図である。
音声符号化部102に入力されるマルチチャネルの音声信号は、L−chの音声信号の系列およびR−chの音声信号の系列から成る。図示されているとおり、互いに同じフレーム番号に対応するL−chおよびR−chの各音声信号(例えば、L−chの音声信号SL(n)およびR−chの音声信号SR(n))が同時に音声符号化部102に入力される。互いに同じフレーム番号に対応する各音声信号は、最終的に同時に音波として音声出力されるべき音声信号である。
マルチチャネルの音声信号は、音声符号化部102、遅延部104および多重化部106により各処理を施され、送信音声データとなる。図示されているとおり、送信音声データは、L−ch符号化データをR−ch符号化データよりも1音声フレームだけ遅延した状態で多重化されたものとなっている。例えば、L−ch符号化データCL(n−1)はR−ch符号化データCR(n)と多重化される。このようにして音声データがパケット化される。生成された送信音声データは、送信側から受信側に送信される。
したがって、音声データ受信装置20で受信された受信音声データは、図示されているとおり、L−ch符号化データをR−ch符号化データよりも1音声フレームだけ遅延した状態で多重化されたものとなっている。例えば、L−ch符号化データCL’(n−1)はR−ch符号化データCR’(n)と多重化されている。
このようなマルチチャネルの受信音声データは、分離部114、遅延部116および音声復号部118により各処理を施され、復号音声信号となる。
ここで、音声データ受信装置20で受信された受信音声データにおいて、L−ch符号化データCL’(n−1)およびR−ch符号化データCR’(n)に損失が発生していたと仮定する。
この場合、符号化データCL’(n−1)と同一フレーム番号を有するR−chの符号化データCR’(n−1)および符号化データCR’(n)と同一フレーム番号を有するL−chの符号化データCL(n)は、損失せずに受信されているので、フレーム番号nに対応するマルチチャネルの音声信号が音声出力されるときに一定の音質を確保できる。
さらに、音声フレームCL’(n−1)に損失が生じると、対応する復号音声信号SL’(n−1)も失われることとなるが、符号化データCL’(n−1)と同一フレーム番号のR−chの符号化データCR’(n−1)は損失せずに受信されているので、符号化データCR’(n−1)により復号された復号音声信号SR’(n−1)を用いてフレーム補償を行うことにより、復号音声信号SL’(n−1)が復元される。また、音声フレームCR’(n)に損失が生じると、対応する復号音声信号SR’(n)も失われることとなるが、符号化データCR’(n)と同一フレーム番号のL−chの符号化データCL(n)は、損失せずに受信されているので、符号化データCL’(n)により復号された復号音声信号SL’(n)を用いてフレーム補償を行うことにより、復号音声信号SR’(n)が復元される。このようなフレーム補償を行うことにより、復元される音質の改善を図ることができる。
このように、本実施の形態によれば、送信側においては、L−ch符号化データをR−ch符号化データより1音声フレーム分だけ遅延させるような遅延処理が施されたマルチチャネルの音声データを多重化する。一方、受信側においては、L−ch符号化データがR−ch符号化データより1音声フレーム分だけ遅延された状態で多重化されたマルチチャネルの音声データをチャネルごとに分離し、分離された符号化データに損失または誤りが発生している場合、L−ch符号化データおよびR−ch符号化データのうち一方のデータ系列を用いて他方のデータ系列における損失または誤りを補償する。このため、受信側で、音声フレームに損失または誤りが発生したときでも、マルチチャネルの少なくとも一つのチャネルを正しく受信できるようになり、そのチャネルを用いて他のチャネルのフレーム補償を行うことが可能となり、高品質なフレーム補償を実現することができる。
あるチャネルの音声フレームを、他のチャネルの音声フレームを用いて復元することが可能となるため、マルチチャネルに含まれる各チャネルのフレーム補償性能を向上させることができる。前述のような作用効果が実現されると、ステレオ信号により表現される「音の方向性」を維持することが可能となる。よって、例えば、昨今で広く利用されている、遠隔地に居る人との電話会議において、聞こえてくる相手の声に臨場感を持たせることが可能となる。
なお、本実施の形態では、音声符号化部102の後段で片方のチャネルのデータを遅延させる構成を例にとって説明したが、本実施の形態による効果を実現可能な構成はこれに限定されない。例えば、音声符号化部102の前段で片方のチャネルのデータを遅延させるような構成であっても良い。この場合、設定される遅延量は、音声フレームの単位に限定されない。例えば、遅延量を1音声フレームよりも短くすることも可能となる。例えば、1音声フレームを20msとすると、遅延量を0.5音声フレーム(10ms)に設定することができる。
(実施の形態2)
図5は、本発明の実施の形態2に係る音声データ受信装置における音声復号部の構成を示すブロック図である。なお、本実施の形態に係る音声データ送信装置および音声データ受信装置は、実施の形態1で説明したものと同一の基本的構成を有しているため、同一のまたは対応する構成要素には同一の参照符号を付し、その詳細な説明を省略する。本実施の形態と実施の形態1との相違点は、音声復号部の内部構成のみである。
図5に示す音声復号部118は、フレーム補償部120を有する。フレーム補償部120は、スイッチ部202、L−ch復号部204およびR−ch復号部206を有する。
スイッチ部202は、音声データ損失検出部112から損失フラグが入力されたとき、損失フラグに示された情報内容に従って、分離部114およびR−ch復号部206の接続状態ならびに遅延部116およびL−ch復号部204の接続状態を切り替える。
より具体的には、例えば、損失フラグが入力されない場合、分離部114からのL−ch符号化データがL−ch復号部204のみに出力されるように、分離部114のL−chの出力端をL−ch復号部204の入力端と接続する。また、損失フラグが入力されない場合、遅延部116からのR−ch符号化データがR−ch復号部206のみに出力されるように、遅延部116の出力端をR−ch復号部206の入力端と接続する。
また、例えば、L−ch符号化データに属しフレーム番号K1に相当する音声フレームが損失したことを示す損失フラグが入力された場合、遅延部116からのR−ch符号化データのうちフレーム番号K1に相当する音声フレームが、R−ch復号部206だけでなくL−ch復号部204にも出力されるように、遅延部116の出力端を、L−ch復号部204およびR−ch復号部206の両方の入力端と接続する。
また、例えば、R−ch符号化データに属しフレーム番号K2に相当する音声フレームが損失したことを示す損失フラグが入力された場合、分離部114からのL−ch符号化データのうちフレーム番号K2に相当する音声フレームが、L−ch復号部204だけでなくR−ch復号部206にも出力されるように、分離部114のL−chの出力端を、R−ch復号部206およびL−ch復号部204の両方の入力端と接続する。
L−ch復号部204は、分離部114からのL−ch符号化データが入力された場合、当該L−ch符号化データを復号する。この復号結果をL−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、L−ch復号部204は、遅延部116からのR−ch符号化データが入力された場合、当該R−ch符号化データを復号する。このようにR−ch符号化データをL−ch復号部204で復号することにより、損失の発生したL−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、L−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
R−ch復号部206は、遅延部116からのR−ch符号化データが入力された場合、当該R−ch符号化データを復号する。この復号結果をR−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、R−ch復号部206は、分離部114からのL−ch符号化データが入力された場合、当該L−ch符号化データを復号する。このようにL−ch符号化データをR−ch復号部206で復号することにより、損失の発生したR−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、R−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
このように、本実施の形態によれば、送信側においては、L−ch符号化データをR−ch符号化データより1音声フレーム分だけ遅延させるような遅延処理が施されたマルチチャネルの音声データを多重化する。一方、受信側においては、L−ch符号化データがR−ch符号化データより1音声フレーム分だけ遅延された状態で多重化されたマルチチャネルの音声データをチャネルごとに分離し、分離された符号化データに損失または誤りが発生している場合、L−ch符号化データおよびR−ch符号化データのうち一方のデータ系列を用いて他方のデータ系列における損失または誤りを補償する。このため、受信側で、音声フレームに損失または誤りが発生したときでも、マルチチャネルの少なくとも一つのチャネルを正しく受信できるようになり、そのチャネルを用いて他のチャネルのフレーム補償を行うことが可能となり、高品質なフレーム補償を実現することができる。
(実施の形態3)
図6は、本発明の実施の形態3に係る音声データ受信装置における音声復号部の構成を示すブロック図である。なお、本実施の形態に係る音声データ送信装置および音声データ受信装置は、実施の形態1で説明したものと同一の基本的構成を有しているため、同一のまたは対応する構成要素には同一の参照符号を付し、その詳細な説明を省略する。本実施の形態と実施の形態1との相違点は、音声復号部の内部構成のみである。
図6に示す音声復号部118は、フレーム補償部120を有する。フレーム補償部120は、スイッチ部302、L−chフレーム補償部304、L−ch復号部306、R−ch復号部308、R−chフレーム補償部310および相関度判定部312を有する。
スイッチ部302は、音声データ損失検出部112から損失フラグの入力の有無および入力された損失フラグに示された情報内容ならびに相関度判定部312からの指示信号の入力の有無に従って、分離部114ならびにL−ch復号部306およびR−ch復号部308の間の接続状態を切り替える。また同様に、遅延部116ならびにL−ch復号部306およびR−ch復号部308の間の接続関係を切り替える。
より具体的には、例えば、損失フラグが入力されない場合、分離部114からのL−ch符号化データがL−ch復号部306のみに出力されるように、分離部114のL−chの出力端をL−ch復号部306の入力端と接続する。また、損失フラグが入力されない場合、遅延部116からのR−ch符号化データがR−ch復号部308のみに出力されるように、遅延部116の出力端をR−ch復号部308の入力端と接続する。
上記のとおり、損失フラグが入力されない場合、接続関係は相関度判定部312からの指示信号に依存しないが、損失フラグが入力された場合は、接続関係は指示信号にも依存する。
例えば、フレーム番号K1のL−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力があったときは、遅延部116からのフレーム番号K1のR−ch符号化データが、R−ch復号部308だけでなくL−ch復号部306にも出力されるように、遅延部116の出力端を、L−ch復号部306およびR−ch復号部308の両方の入力端と接続する。
これに対して、フレーム番号K1のL−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力がないときは、分離部114のL−chの出力端とL−ch復号部306およびR−ch復号部308との間の接続を開放とする。
また、例えば、フレーム番号K2のR−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力があったときは、分離部114からのフレーム番号K2のL−ch符号化データが、L−ch復号部306だけでなくR−ch復号部308にも出力されるように、分離部114のL−chの出力端を、R−ch復号部308およびL−ch復号部306の両方の入力端と接続する。
これに対して、フレーム番号K2のR−ch符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力がないときは、遅延部116の出力端とL−ch復号部306およびR−ch復号部308との間の接続を開放とする。
L−chフレーム補償部304およびR−chフレーム補償部310は、L−chまたはR−chの符号化データが損失したことを示す損失フラグが入力された場合で、指示信号の入力がないときに、従来の一般的な手法と同様に、同一チャネルの前フレームまでの情報を用いたフレーム補償を行い、補償データ(符号化データ又は復号信号)を、L−ch復号部306およびR−ch復号部308にそれぞれ出力する。
L−ch復号部306は、分離部114からのL−ch符号化データが入力された場合、当該L−ch符号化データを復号する。この復号結果をL−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、L−ch復号部306は、損失フラグの入力があった場合で、遅延部116からのR−ch符号化データが入力されたときは、当該R−ch符号化データを復号する。このようにR−ch符号化データをL−ch復号部306で復号することにより、損失の発生したL−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、L−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
さらに、L−ch復号部306は、損失フラグの入力があった場合で、L−chフレーム補償部304からの補償データが入力されたときは、次のような復号処理を行う。すなわち、当該補償データとして符号化データが入力された場合はその符号化データを復号し、補償復号信号が入力された場合はその信号をそのまま出力信号とする。このようにしたときも、損失の発生したL−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、L−ch復号音声信号として出力される。
R−ch復号部308は、遅延部116からのR−ch符号化データが入力された場合、当該R−ch符号化データを復号する。この復号結果をR−ch復号音声信号として出力する。つまり、この復号処理は、通常の音声復号処理である。
また、R−ch復号部308は、損失フラグの入力があった場合で、分離部114からのL−ch符号化データが入力されたときは、当該L−ch符号化データを復号する。このようにL−ch符号化データをR−ch復号部308で復号することにより、損失の発生したR−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、R−ch復号音声信号として出力される。すなわち、この復号処理は、フレーム補償のための音声復号処理である。
さらに、R−ch復号部308は、損失フラグの入力があった場合で、R−chフレーム補償部310からの補償データが入力されたときは、次のような復号処理を行う。すなわち、当該補償データとして符号化データが入力された場合はその符号化データを復号し、補償復号信号が入力された場合はその信号をそのまま出力信号とする。このようにしたときも、損失の発生したR−ch符号化データに対応する音声信号を復元することができる。復元された音声信号は、R−ch復号音声信号として出力される。
相関度判定部312は、L−ch復号音声信号とR−ch復号音声信号との間の相関度Corを、次の式(1)を用いて算出する。
ここで、sL’(i)およびsR’(i)はそれぞれL−ch復号音声信号およびR−ch復号音声信号である。上記の式(1)により、補償フレームのLサンプル前の音声サンプル値から1サンプル前(つまり直前)の音声サンプル値までの区間における相関度Corが算出される。
また、相関度判定部312は、算出された相関度Corを所定の閾値と比較する。この比較の結果、相関度Corが所定の閾値よりも高い場合は、L−ch復号音声信号とR−ch復号音声信号との間の相関が高いと判定する。そして、損失が生じたときに互いのチャネルの符号化データを用いることを指示するための指示信号をスイッチ部302に出力する。
一方、相関度判定部312は、算出された相関度Corを上記閾値と比較した結果、相関度Corが閾値以下の場合は、L−ch復号音声信号およびR−ch復号音声信号の間の相関が低いと判定する。そして、損失が生じたときに同一チャネルの符号化データを使用させるために、スイッチ部302への指示信号の出力を行わない。
このように、本実施の形態によれば、L−ch復号音声信号とR−ch復号音声信号との間の相関度Corを所定の閾値と比較し、当該比較の結果に従って、互いのチャネルの符号化データを用いたフレーム補償を行うか否かを決定するため、チャネル間の相関が高いときにのみ互いのチャネルの音声データに基づく補償を行うようにすることができ、相関が低いときに互いのチャネルの音声データを用いてフレーム補償を行うことによる補償品質の劣化を防止することができる。また、本実施の形態では、相関が低いときには同一チャネルの音声データに基づく補償を行うため、フレーム補償の品質を継続的に維持することができる。
なお、本実施の形態では、相関度判定部312を、フレーム補償の際に符号化データを用いる実施の形態2におけるフレーム補償部120に設けた場合を例にとって説明した。ただし、相関度判定部312を設けたフレーム補償部120の構成はこれに限定されない。例えば、相関度判定部312を、フレーム補償の際に復号音声を用いるフレーム補償部120(実施の形態1)に設けた場合でも、同様の作用効果を実現することができる。
この場合の構成図を図7に示す。この場合の動作は、実施の形態1における図3での構成における動作に対して、主にスイッチ部126の動作が異なる。すなわち、損失フラグと共に相関度判定部312からの出力である指示信号の結果によりスイッチ部126における接続状態が切り替わる。例えば、L−ch符号化データが損失したことを示す損失フラグが入力された場合でかつ指示信号の入力があったときは、L−chフレーム補償部304で得られた補償信号とR−chの復号信号とがL−ch重ね合わせ加算部130に入力され重ね合わせ加算が行われる。また、L−ch符号化データが損失したことを示す損失フラグが入力された場合でかつ指示信号の入力がない場合は、L−chフレーム補償部304で得られた補償信号のみがL−ch重ね合わせ加算部130に入力されそのまま出力される。R−ch符号化データに対して損失フラグが入力された時の動作も前記R−chの場合と同様である。
L−chフレーム補償部304は、フレーム損失フラグの入力があった場合には、損失フレームの前フレームまでのL−chの情報を用いて従来の一般的な手法と同様なフレーム補償処理を行い補償データ(符号化データ又は復号信号)をL−ch復号部122へ出力し、L−ch復号部122は補償フレームの補償信号を出力する。その際、当該補償データとして符号化データが入力された場合はその符号化データを用いて復号し、補償復号信号が入力された場合はその信号をそのまま出力信号とする。また、L−chフレーム補償部304で補償処理を行う際には、L−ch復号部122における前フレームまでの復号信号や状態データを用いる、またはL−ch重ね合わせ加算部130の前フレームまでの出力信号を用いるようにしても良い。R−chフレーム補償部310の動作もL−chの場合と同様である。
また、本実施の形態では、相関度判定部312は、所定区間の相関度Corの算出処理を行うが、相関度判定部312における相関度算出処理方法はこれに限定されない。
例えば、L−ch復号音声信号とR−ch復号音声信号との相関度の最大値Cor_maxを、次の式(2)を用いて算出する方法が挙げられる。この場合、最大値Cor_maxを所定の閾値と比較し、最大値Cor_maxがその閾値を超過している場合は、チャネル間の相関が高いと判定する。このようにすることで、上記と同様の作用効果を実現することができる。
そして、相関が高いと判定された場合は他方のチャネルの符号化データを用いたフレーム補償が行われる。このとき、フレーム補償に用いる他チャネルの復号音声を、最大値Cor_maxが得られるシフト量(すなわち音声サンプル数)だけシフトさせた後に用いるようにしても良い。
最大値Cor_maxとなる音声サンプルのシフト量τ_maxは、次の式(3)を用いることにより算出される。そして、L−chのフレーム補償を行う場合には、シフト量τ_maxだけR−chの復号信号を正の時間方向にシフトした信号を用いる。逆にR−chのフレームの補償を行う場合には、シフト量τ_maxだけL−chの復号信号を負の時間方向にシフトした信号を用いる。
ここで、上記の式(2)および(3)において、sL’(i)およびsR’(i)はそれぞれL−ch復号音声信号およびR−ch復号音声信号である。また、L+Mサンプル前の音声サンプル値から1サンプル前(つまり直前)の音声サンプル値までの区間中のLサンプル分が算出対象区間となっている。また、−MサンプルからMサンプルの音声サンプル分のシフト量が算出対象範囲となっている。
これにより、相関度が最大となるシフト量だけシフトさせた他チャネルの音声データを用いてフレーム補償を行うことができ、補償された音声フレームとその前後の音声フレームとのフレーム間整合をより正確に取ることができるようになる。
なお、シフト量τ_maxは、音声サンプル数単位の整数値であっても、また音声サンプル値間の分解能を上げた小数値であっても良い。
さらに、相関度判定部312の内部構成に関して、L−chデータ系列の復号結果とR−chデータ系列の復号結果とを用いて、フレーム補償に用いる他方のデータ系列の音声データの復号結果に対する振幅補正値を算出する振幅補正値算出部を内部に有する構成としても良い。この場合、音声復号部118には、算出した振幅補正値を用いて、当該他方のデータ系列の音声データの復号結果の振幅を補正する振幅補正部が設けられる。そして、他チャネルの音声データを用いてフレーム補償を行う際に、その補正値を用いてその復号信号の振幅を補正するようにしても良い。なお、振幅補正値算出部の配置は、音声復号部118の内部であれば良く、相関度判定部312の内部には限定されない。
振幅値補正を行う場合、例えば、式(4)のD(g)を最小にするようなgを求める。そして、求められたgの値(=g_opt)を振幅補正値とする。L−chのフレーム補償を行う場合には、振幅補正値g_optをR−chの復号信号に乗じた信号を用いる。逆にR−chのフレームの補償を行う場合には、振幅補正値の逆数1/g_optをL−chの復号信号に乗じた信号を用いる。
ここで、τ_maxは式(3)で得られた相関度が最大となる時の音声サンプルのシフト量である。
なお、振幅補正値の算出方法は式(4)に限定されるものでなく、a)式(5)のD(g)を最小にするようなgをその振幅補正値とする、b)式(6)のD(g,k)を最小とするようなシフト量kとgとを求めそのときのgを振幅補正値とする、c)当該補償フレームの前までの所定区間に対するL−chとR−chとの復号信号のパワーの平方根(または平均振幅値)の比を補正値とする、といった方法で算出しても良い。
これにより、他チャネルの音声データを用いてフレーム補償を行う際に、その復号信号の振幅を補正した後に補償に用いることで、より適切な振幅を有した補償を行うことができる。
なお、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されても良いし、一部又は全てを含むように1チップ化されても良い。
ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応等が可能性としてありえる。
本明細書は、2004年6月2日出願の特願2004−165016に基づく。この内容はすべてここに含めておく。
本発明の音声データ受信装置および音声データ受信方法は、誤りのある音声データや損失した音声データの補償処理が行われる音声通信システム等において有用である。
従来の音声通信システムにおける音声処理動作の一例を説明するための図
本発明の実施の形態1に係る音声データ送信装置の構成を示すブロック図
本発明の実施の形態1に係る音声データ受信装置の構成を示すブロック図
本発明の実施の形態1に係る音声データ受信装置における音声復号部の内部構成を示すブロック図
本発明の実施の形態1に係る音声データ送信装置および音声データ受信装置における動作を説明するための図
本発明の実施の形態2に係る音声データ受信装置における音声復号部の内部構成を示すブロック図
本発明の実施の形態3に係る音声データ受信装置における音声復号部の内部構成を示すブロック図
本発明の実施の形態3に係る音声データ受信装置における音声復号部の内部構成の変形例を示すブロック図