説明

音声信号通信システム、音声合成装置、音声合成処理方法、音声合成処理プログラム、並びに該プログラムを格納した記録媒体

【課題】3台以上の通話端末の間で同時に会話が可能な音声信号通信システムを提供する。
【解決手段】通信機能を有する複数の端末(10、20、30)と、これらを相互接続するIPネットワーク(40)とを備え、前記端末の間で音声信号のRTP通信が可能な音声信号通信システム(100)であって、前記複数の端末はそれぞれ音声合成手段(120)を有し、前記音声合成手段は、受信した複数の音声信号から時刻情報を抽出する情報抽出手段(122)と、前記抽出した時刻情報を基に、前記受信した信号の送信時刻を求める送信時刻決定手段(123)と、前記求めた送信時刻を基準として、前記複数の音声信号を加算する音声信号加算手段(125)と、前記加算した音声信号の値と所定の制限値とを比較し、前記音声信号の値の方が大きい場合には、該音声信号の値を前記制限値まで低減させる信号制限手段(126)と、を備えたことを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3台以上の通話端末で同時に通話可能な音声信号通信システム、該端末が備える音声合成装置、該音声合成装置が行う音声合成処理方法、該方法を実行するための音声合成処理プログラム、並びに該プログラムを格納した記録媒体に関する。
【背景技術】
【0002】
従来の電話システムは、電話回線の交換網を使用した1対1の通話をサービスしているが、近年普及しているIP電話システムは、インターネット回線を用いた多人数による同時通話を提供している(例えば、特許文献1)。
【0003】
ただし、上記のような多人数による通話サービスでは、複数の通話端末のユーザ(通話者)がそれぞれ交代して発声する必要がある。もし、複数の通話端末のユーザが同時に発声した場合には、受信側の通話端末内で複数の音声信号が重なり合うが、これらの音声信号の間で音圧差が大きい場合には、「ブツブツ」という再生ノイズが発生してしまう。これは人間の聴覚上の特性に起因して発生する現象であり、このノイズによって通話端末のユーザは通話内容を聞き損ね、さらには不快感を覚えてしまう。
【0004】
また、多人数で同時に通話を行うには一度に複数の音声信号を処理しなくてはならないため、処理するデータ量が増加してしまう。しかし、既存の携帯電話などは十分な処理能力を有していないため、正常な音声として再生できない恐れがある。
【0005】
また、代替の音声信号の処理として、複数の音声信号を受信した順にシリーズで処理して出力する方法もある。しかし、この処理方法では音声信号の再生のタイミングが遅れてしまうため、滑らかな会話が困難になる。
【0006】
一方、特許文献2は、同時に受信した複数の音声信号のパケットの振幅絶対値をサンプル単位で比較し、振幅の一番大きなサンプルのみを選択的に処理する音声ミキシング技術を開示している。
【特許文献1】特開2008−172420
【特許文献2】特開2005−151044
【発明の開示】
【発明が解決しようとする課題】
【0007】
上記特許文献2で開示している技術は「小さな音は大きな音にかき消される」という理論が前提となっており、同時に受信した音声の中で一番大きな音声だけを選択的に使用して、他の音声は破棄している。この技術を用いて実際に3人以上の通話者の間で会話を行うと、常に特定の通話者の声だけが聞こえたり、あるいは、突然通話者の声が切り替わったりするため正常な会話を行うことが困難である。さらには、複数の音声の何れかに切り替わる際に、これらの音声信号の間で音圧差が大きい場合には、「ブツブツ」という再生ノイズが発生してしまうという問題が残る。
【0008】
また、本発明の発明者等は上記問題点を解決するために鋭意研究した結果、複数の音声信号を単純にデジタル加算して合成信号を生成すれば十分な音質で当該複数の音声信号を再生できる事実を確認した。
【0009】
しかし、音声信号は、受信元の端末の処理構造や伝播経路などに依存して、送信時点よりも遅延して受信元の端末に到達する。さらに、異なる送信元の端末から送られる音声信号はそれぞれ異なる遅延時間を有する。よって、音声信号を受信した時点を基準として単純加算したのでは、この音声信号間の遅延時間の差が影響して正常な信号再生ができない恐れがある。
【0010】
本発明は上記の不都合を考慮して創案されたものであり、本発明の目的は、3台以上の通話端末の間で同時に会話が可能な音声信号通信システム、そのシステムの該端末が備える音声合成装置、その音声合成装置が行う音声合成処理方法、その方法を実行するための音声合成処理プログラム、並びにそのプログラムを格納した記録媒体を提供することである。
【0011】
本発明の別の目的は、通話端末の音声処理部に過度な負担をかけずに、かつ、高い品質で、受信した複数の音声信号を合成することが可能な音声合成システム、そのシステムの該端末が備える音声合成装置、その音声合成装置が行う音声合成処理方法、その方法を実行するための音声合成処理プログラム、並びにそのプログラムを格納した記録媒体を提供することである。
【0012】
本発明のさらに別の目的は、受信した複数の音声信号を合成する音声信号通信システムであって、該音声信号間で生じる遅延時間の差を補正することが可能な音声信号通信システム、そのシステムの該端末が備える音声合成装置、その音声合成装置が行う音声合成処理方法、その方法を実行するための音声合成処理プログラム、並びにそのプログラムを格納した記録媒体を提供することである。
【課題を解決するための手段】
【0013】
前記課題を解決するために創案された請求項1の発明は、通信機能を有する複数の端末と、該複数の端末を相互接続するIPネットワークと、を備え、前記複数の端末の間で音声信号のRTP通信が可能な音声信号通信システムであって、
前記複数の端末の受信部はそれぞれ音声合成手段を有し、
前記音声合成手段は、
(a)受信した複数の音声信号のRTPヘッダのタイムスタンプから時刻情報を抽出する情報抽出手段と、
(b)前記抽出した時刻情報を基に、前記受信した信号の送信時刻を求める送信時刻決定手段と、
(c)前記求めた送信時刻を基準として、前記複数の音声信号を加算する音声信号加算手段と、
(d)前記加算した音声信号の値と所定の制限値とを比較し、前記音声信号の値の方が大きい場合には、該音声信号の値を前記制限値まで低減させる信号制限手段と、
を備えたことを特徴とする。
【0014】
前記課題を解決するために創案された請求項2の発明は、IPネットワークを含むRTP通信システムを介して複数の送信元から受信した音声信号をリアルタイムに合成可能な音声合成装置であって、
(e)前記受信した複数の音声信号のRTPヘッダのタイムスタンプから所定の時刻情報を抽出する情報抽出手段と、
(f)前記抽出した時刻情報を基に、前記受信した信号の送信時刻を求める送信時刻決定手段と、
(g)前記求めた時刻を基準として、前記複数の音声信号を加算する音声信号加算手段と、
(h)前記加算した音声信号を出力する音声出力手段と、
を備えることを特徴とする。
【0015】
前記課題を解決するために創案された請求項3の発明は、請求項2の音声合成装置において、前記音声信号加算手段が加算した音声信号の値と所定の制限値とを比較し、前記音声信号の値の方が大きい場合には、該音声信号の値を前記制限値まで低減させる信号制限手段をさらに備えることを特徴とする。
【0016】
前記課題を解決するために創案された請求項4の発明は、IPネットワークを含むRTP通信システムを介して複数の送信元から受信した音声信号をリアルタイムに合成する音声合成処理方法であって、
(i)前記受信した複数の音声信号のRTPヘッダのタイムスタンプから時刻情報を抽出する情報抽出ステップと、
(j)前記抽出した時刻情報を基に、前記受信した信号の送信時刻を求める送信時刻決定ステップと、
(k)前記求めた時刻を基準として、前記複数の音声信号を加算する音声信号加算ステップと、
(l)前記加算した音声信号を出力する音声信号出力ステップと、
を含むことを特徴とする。
【0017】
前記課題を解決するために創案された請求項5の発明は、請求項4に記載の音声合成処理方法において、前記音声信号加算ステップと前記音声信号出力ステップとの間に、前記加算した音声信号の値と所定の制限値とを比較し、前記音声信号の値の方が大きい場合には、該音声信号の値を前記制限値まで低減させる信号制限ステップをさらに含むことを特徴とする。
【0018】
前記課題を解決するために創案された請求項6の発明は、請求項4または5に記載の音声合成処理方法を行う電子回路である。
【0019】
前記課題を解決するために創案された請求項7の発明は、請求項4または5に記載の音声合成処理方法を処理装置に実行させるプログラムである。
【0020】
前記課題を解決するために創案された請求項8の発明は、請求項7に記載のプログラムを格納したコンピュータ可読媒体である。
【0021】
請求項1の音声信号通信システム、請求項2の音声合成装置、請求項4の音声合成処理方法は、複数の音声信号を単純にデジタル加算することで合成している。そのため、演算が簡単であり、端末の処理部には過剰な負荷が生じない。よって、携帯電話などの演算能力の比較的低い機器でも好適に用いることが可能である。
【0022】
また、音声信号の加算は、該音声信号のヘッダ部を参照してその送信時刻を把握した後、その送信時刻を基準として該音声信号を時間軸上に配列した状態で行っている。これにより、音声信号のそれぞれの遅延時間の差が補正され精度の高い音声信号の合成が可能となる。
【0023】
請求項1の音声信号通信システム、請求項3の音声合成装置、請求項5の音声合成処理方法において、合成した音声信号の値を所定の制限値と比較し、この音声信号の値の方が大きい場合には該音声信号の値を前記制限値まで低減させている。
多数の音声データを単純加算する場合、加算したデータの値が大きくなり過ぎて端末の許容入力値を越え、結果として再生音質を損なう場合がある。そのため、合成データにリミッタを設けることでそのような不具合を防止している。
【0024】
請求項6ないし8では、本発明の音声合成処理をそれぞれ電子回路、プログラム、コンピュータ可読媒体の形態で提供している。
【発明の効果】
【0025】
本発明によって、受信する音声信号の遅延時間の差を補正し、音声信号の複雑な演算処理を回避し、かつ高品質の音声を再生可能な多人数通話用音声信号通信システムを提供することが可能となった。さらに、そのシステムで用いる通話端末用の音声合成装置、その音声合成装置が行う音声合成処理方法、その方法を実行するための音声合成処理プログラム、並びにそのプログラムを格納した記録媒体を提供することも可能となった。
【発明を実施するための最良の形態】
【0026】
添付の図面を参照して、以下に本発明の一実施形態に係る音声合成システムについて説明する。
図1は、本発明の一実施形態に係る音声信号通信システム100の概略図である。この音声信号通信システム100は、3台の端末10、20、30と、IP(Internet Protocol)ネットワーク40とを備える。端末10、20、30は電話、通話機能を有する携帯端末またはコンピュータなどの既存の通話機器で構成され、通話音声を入力部(マイク等)でアナログ信号として取り込み、A/D変換してデジタルデータとしてIPネットワーク40経由で他の端末に出力する送信部と、他の端末からIPネットワーク40経由で入力されたデジタル信号をD/A変換した後にアナログ信号として出力部(スピーカ、ヘッドフォン端子等)から出力する受信部とを備える。また、図1では3台の端末が示されているが、端末の数は2以上の任意の数でよい。IPネットワーク40は上記端末10、20、30を通話可能に相互接続するためのものである。また、このネットワークは無線、有線またはこれらの組み合わせで構成されてよい。
【0027】
上記の音声信号通信システム100は、端末10、20、30によって同時に通話可能な多人数通話システムである。例えば、端末10の入力部に入力された音声は、端末20および30の双方の出力部からほぼ同時に出力される。逆に、端末20および30の双方の入力部にそれぞれ同時に入力された音声は、端末10の出力部からほぼ同時に出力される。また、当該システムは各端末の送話権の制御は行わないサーバレスのシステムである。
なお、本実施形態において、音声信号通信システム100はセッション確立時または終了時にはSIP(session initiation protocol)に、音声信号の通信時にはRTP(real-time transport protocol)に準拠する。
【0028】
図2は、本実施形態に係る音声信号通信システム100が取り扱う音声信号を構成するRTPパケットのRTPヘッダ部の構造を示したものである。詳細は後述するが、音声信号通信システム100の端末10、20、30の音声データ合成部120(図3を参照)は、このヘッダ部の順序番号、タイムスタンプ、同期送信元(SSRC)識別子の3つの情報を利用して音声データ処理を行っている。よって、端末10、20、30の詳細な機能を説明する前に、これらのヘッダ情報について簡単に説明する。
【0029】
[順序番号]
1つの音声データは複数のパケットに分けて送信されるが、この順序番号は音声データのうち、何番目のパケットであるかを示す情報である。初期値はランダムで、パケットが1つ送られる毎に順序番号が1つ増加する。
[タイムスタンプ]
パケットの最初のバイトのサンプリング時刻を示す情報。本実施形態では受け取ったパケットデータの送信時刻を特定することに使用する。
[同期送信元(SSRC)識別子]
送信元の識別子。受け取ったパケットデータの送信元端末を特定することに使用する。
【0030】
次に、図3を参照して、端末10、20、30の音声データ処理部について説明する。なお、これらの3台の端末はすべて同一の音声データ処理機能を有している。この処理部の機能は、大別すると、パケットデータ送受信部400と、受信ユニット140と、送信ユニット200と、通信セッション制御部300とから構成される。
【0031】
パケットデータ送受信部400は、IPネットワーク40に接続され、端末10、20、30の間のセッションの確立/終了や、音声データの送受信を行う。
【0032】
受信ユニット140は、音声データ受信部110と、音声データ合成部120と、音声データ出力部130と、を備える。音声データ受信部110は、パケットデータ送受信部400から送られるPCM形式の音声データを受け取り、所定形式の処理用デジタルデータに復調するための機能要素である。音声データ合成部120は、音声データ受信部110から受け取った複数の端末からの送信信号をそれらの送信時刻を基準として合成するための機能要素であり、主にプロセッサなどの演算器で構成される。音声データ出力部130は、音声データ合成部120が合成した信号を受け取り、それを外部に出力するための機能要素であり、D/Aコンバータ、アナログ回路、スピーカまたはヘッドフォン端子などで構成される。
【0033】
送信ユニット200は、音声データ入力部210と、音声データ送信部220と、を備える。音声データ入力部210は、端末ユーザが発した音声を基にデジタルデータ信号を生成する機能であり、マイクロフォン、アナログ回路、A/Dコンバータなどで構成される。音声データ送信部220は、音声データ入力部210から受け取ったデータをPCMコーデックで圧縮符号(PCM信号)に変換し、RTPペイロードを付加して、パケットデータ送受信部400に送る機能要素であり、主にプロセッサなどの演算器で構成される。
【0034】
通信セッション制御部300は、パケットデータ送受信部400のセッション確立/終了やデータのやり取りのタイミングを制御する機能要素であり、主にプロセッサなどの演算器で構成される。
【0035】
以上の機能要素のうち、受信ユニット140の音声データ合成部120以外のものは当該技術において既知の機能要素のため、これらの機能の詳細な説明は省略する。よって、音声データ合成部120の機能のみ以下に詳細に説明する。
【0036】
図4を参照して音声データ合成部120の詳細な機能について説明する。音声データ合成部120は、データ受領部121と、ヘッダ情報抽出部122と、時間差決定部123と、時計部124と、データ加算および制限部125と、データ出力部126と、出力制御信号生成部127と、ヘッダ情報管理部128と、音声データバッファ部129と、を備える。
【0037】
[データ受領部121]
データ受領部121は、音声データ受信部110(図3参照)から音声データをパケット単位で受け取ると、そのパケットをデータ加算および制限部125に転送する。それと同時に、時計部124にアクセスして現在時刻を所得し、その時刻をそのパケットの受信時刻R1として認識する。さらに、受け取ったパケットがその送信元端末からのセッション確立後の最初のパケットの場合には、そのパケットのRTPベッダ部の情報をヘッダ情報抽出部122に渡す。
【0038】
データ受領部121は、以上の処理機能に加え、処理を行ったパケットの出力のタイミングも制御する。具体的には、セッション確立後の最初のパケットを受信すると、出力制御信号生成部127に出力制御信号の生成を指示する。さらに、定期的に時計部124にアクセスして現在時刻を所得し、最新のパケットを受信してからの経過期間を求め、予め設定された期間Tpが過ぎても次のパケットが入力されない場合には通信が終了したとみなして出力制御信号生成部127に出力制御信号の停止を指示する。なお、この期間Tpは特定の値に限定されるものではなく、端末の設定者によって要求仕様に基づいて適宜決定されることが好ましい。また、ユーザが最適な値を決定できるよう可変値としてもよい。
【0039】
[ヘッダ情報抽出部122]
ヘッダ情報抽出部122は、データ受領部121から受け取ったRTPヘッダ部の情報から所定の情報(順序番号、タイムスタンプ、同期送信元(SSRC)識別子)を抽出し、その情報を時間差決定部123に送る。
【0040】
[時間差決定部123]
時間差決定部123は、ヘッダ情報抽出部122から送られたRTPヘッダ部の情報(順序番号、タイムスタンプ、同期送信元(SSRC)識別子)を参照し、まず、同期送信元(SSRC)識別子を基にデータ受領部121が受け取ったパケットの送信元を特定し、これを送信元情報とする。次いで、タイムスタンプを基に当該パケットの送信時刻T1を求め、さらに、その送信時刻T1と先に認識した受信時刻R1との時間差Tdを求める。ここで、時間差Td=受信時刻R1−送信時刻T1となる。この時間差Tdは、送信側の端末の信号処理に伴う時間、伝送路の伝搬遅延、ルータにおけるパケットのキューイング遅延などによって決定される。この値は送信元端末および伝送路が同一の場合にはほぼ一定の値となるため、本実施形態ではセッション確立後における送信元端末の最初のパケットについてのみ求めることにする。
【0041】
次に、時間差決定部123は、ヘッダ情報抽出部122から送られたRTPヘッダ部のパケットの順序番号、および、上記の方法で求めた送信元、時間差Tdに関する情報をヘッダ情報管理部128に格納する。
【0042】
[時計部124]
時計部124は、データ受領部121に現在時刻を提供する機能要素であり、この現在時刻は受信時刻R1や経過期間Tpを特定するために用いられる。
【0043】
[データ加算および制限部125]
データ加算および制限部125は、データ受信部121からパケットを受け取ると、まず、ヘッダ情報管理部128にアクセスしてそのパケットの時間差Tdを取得する。そして、先に求めた受信時刻R1とこの時間差Tdから送信時刻T1を求める。そして、受け取ったパケットのペイロード(音声データ)を音声データバッファ部129内の送信時間T1に対応する領域に格納するが、その前に該当する格納領域に既にデータが格納されていないかどうかを確認する。既にデータが格納されている場合には、そのデータと格納すべきデータとを加算してからその領域に格納する。ここで使用される加算方式は単純加算でよい。
【0044】
図5を参照して、データ加算および制限部125が行うデータの加算方法について補足説明をする。
図の左側のデータAおよびデータBは、それぞれ異なる送信元の端末からデータ加算および制限部125に入力された音声データの波形である。データAの送信時刻T1はtAであり、データBの送信時刻T1’はtBである。ここで、tAとtBの差は、これらの波形のサンプリング周期の2倍とする。この場合、双方のデータを、それぞれの送信時刻T1とT1’を基準として時間軸上に揃えた状態、すなわち、データBの波形をデータAの波形に対して2サンプル分だけ右にずらした状態で配列し、同一の時刻のサンプル同士を加算する。こうして得られた合成データの波形が右側の波形である。
このように、データ加算および制限部125は時間軸の概念を有し、入力したデータをその送信時刻T1を参照して時間軸上に配列させた状態で加算を行う。
【0045】
また、もし同時に多数の端末からパケットが同時に受信された場合、これらのパケットのペイロードがすべて加算されるため、最終的に得られるデータの値が相当に大きくなってしまうことに留意されたい。その状態でこのデータを後段の処理部に出力すると、その許容入力を超えて歪んでしまい、再生される音の品質を著しく損なう、あるいは後段の処理部にダメージを与える恐れがある。そのため、上記の不具合を防止するために、データ加算および制限部125は取り扱うデータが基準値よりも大きな値となる場合にはこの値を上限値に変更する(以下、この処理をデータ制限処理と称する)。
ここで、上限値Thはリミッタの役割を果たし、この上限値Thは例えばPCMデータの有効数値範囲の上限に設定してよい。その場合、ペイロードが8ビットのときは上限値Thが255、16ビットのときは32767に設定される。
【0046】
[データ出力部126]
データ出力部126は、出力制御信号生成部127より出力制御信号を受け取ると、それに応じて音声データバッファ部129に格納されたデータを読み出し、後段の音声データ出力部130(図3参照)に出力する。
【0047】
[出力制御信号生成部127]
データ受領部121からのコマンドに応じて出力制御信号を生成して、データ出力部126に出力する機能要素である。音声データの出力を開始する場合には出力制御信号を生成し、音声データの出力を停止する場合には出力制御信号を停止する。
【0048】
[ヘッダ情報管理部128]
受信したパケットに関する情報(送信元、順序番号、時間差Td)を記憶および管理するための機能要素であり、レジスタ、メモリ、ハードディスクなどで構成される。
【0049】
[音声データバッファ部129]
データ加算および制限部125が処理するデータを一時的に格納するための機能要素であり、レジスタ、メモリ、ハードディスクなどで構成される。このバッファ部は専用に用意するか、あるいはデータの揺らぎの補正を行うためのジッタバッファを流用してよい。バッファ部内部の記憶領域は時間軸の概念を備えており、格納したデータはその送信時刻T1に関連付けられて管理される。
【0050】
以上の機能を有する音声データ合成部120において、2つの音声データが入力したときに出力される音声データの波形の例を図6に示す。この図において、波形1および波形2は、2つの異なる送信元の端末のマイク等に入力される波形であり、波形1は人間が「アー」と一定の周期で繰り返し発声したときの生じる波形であり、波形2は発信機が生成する495Hzの周波数の音の正弦波波形である。これらの波形1および波形2が合成されて受信元の端末のスピーカ等から出力される波形が波形3である。この波形に示すように、全周期に渡って波形1および波形2が正しく合成されており、「ブツブツ」ノイズを発生するような音のレベルが急激に変化する箇所も存在しない。
【0051】
以上、本発明の一実施形態に係る音声信号通信システム100の機能の説明をした。次に、このシステムにおいて端末10、20、30が相互に通信を行う時に、各端末内の音声データ合成部120が行うデータ合成処理の手順について説明する。
当該データ合成処理は、データ加算処理とデータ出力処理の2つの処理に大別される。したがって、これらの処理を順に説明する。なお、図7はデータ加算処理のフローを示し、図8はデータ出力処理のフローを示す。
【0052】
[データ加算処理]
図7のフロー図を参照して説明する。
まず、図1に示す端末10、20、30がIPネットワーク40に対してセッションを行う。本実施形態の音声信号通信システム100は、図示のように通信制御を行うサーバが存在しないため、各端末は、他の端末に加えて自身の端末に対してもセッションを行う。セッションが確立されることにより、3つの端末は相互に、かつリアルタイムに音声データをやり取りすることが可能となる。
【0053】
セッション確立後、端末10、20、30の何れかの端末(受信端末)は、他の2台の端末(送信端末)からIPネットワーク40を介して音声データのパケットを受信する。このパケットは、送信端末のパケットデータ送受信部400および音声データ受信部110を通り、音声データ合成部120に入力する。そして、音声データ合成部120内のデータ受領部121が入力したパケットを受け取る(ステップS10)。
【0054】
データ受領部121は、受け取ったパケットのヘッダ部の同期送信元(SSRC)識別子と順序番号とを参照し、このパケットがその送信元端末からのセッション開始後の最初のパケットかどうかを確認する(ステップS11)。最初のパケットの場合(ステップS11で「YES」)にはステップS12の手順に進み、その他の場合(ステップS11で「NO」)はステップS16の手順に進む。
【0055】
受け取ったパケットが最初のパケットの場合(ステップS11で「YES」)、データ受領部121は時計部124にアクセスし、現在時刻を取得し、これを受信時刻R1とする(ステップS12)。さらに、パケットのヘッダ部の情報をヘッダ情報抽出部122に渡す。ヘッダ情報抽出部122は受け取ったヘッダ部の情報から順序番号、タイムスタンプ、同期送信元(SSRC)識別子の情報を抽出する(ステップS13)。そして、タイムスタンプより求めたデータパケットの送信時刻T1と先に求めた受信時刻R1とを基に時間差Td(R1−T1)を求める(ステップS14)。次いで、送信元、パケットの順序、時間差Tdに関する情報をヘッダ情報管理部128に格納する(ステップS15)。
なお、ステップS12〜S15の処理は、ステップS11で「YES」、すなわち、セッション開始後の送信元の端末からの最初のパケットについてのみに行うことに留意されたい。
【0056】
次に、ステップS16の処理において、データ加算および制限部125はデータ受領部121からパケットを受け取り、それからヘッダ情報管理部128にアクセスし、受け取ったパケットの時間差情報Tdを取得する。次いで、予め求めた受信時刻R1と取得した時間差情報Tdから受け取ったパケットの送信時刻T1を求める(ステップS16)。それから音声データバッファ部129にアクセスし、送信時刻T1に対応する領域に既にデータが格納されているかどうかを確認する(ステップS17)。
【0057】
既にデータが格納されている場合(ステップS17で「YES」)、格納されているデータを読み出し、このデータと処理中のデータとをそれらの送信時刻T1を基準として時間軸上に配列した状態で加算し(ステップS18)、ステップS19の手順へ進む。
一方、データが存在しない場合には(ステップS17で「NO」)、ステップS19の手順へ進む。
【0058】
次に以上の手順で得られたデータの値と所定の制限値Thとを比較する(ステップS19)。制限値Thを超える値が存在する場合には(ステップS19で「YES」)、その値を制限値Thに変更する(ステップS20)。存在しない場合には(ステップS19で「NO」)、特にデータの変更は行わない。
その上で、該当のデータを、音声データバッファ部129内の該データの送信時刻T1に対応する領域に格納する(ステップS21)。
【0059】
[データ出力処理]
図8のフロー図を参照して説明する。なお、このデータ出力処理は上述のデータ加算処理と並列して行われることに留意されたい。
まず、セッションが開始すると、受信端末のデータ受領部121は出力制御信号生成部127に出力制御信号を生成させ、データ出力部126に出力動作を開始させる(ステップS50)。データ出力部126は音声データバッファ部129にアクセスして、上述のデータ加算処理においてデータ加算および制限部125が格納したデータを取り出し(ステップS51)、音声データ出力部130(図3参照)に出力する(ステップS52)。それと同時にデータ受領部121は、定期的に時計部124から現在時刻を入手して最新のパケットを受信してからの経過時間をモニタする(ステップS53)。経過期間が所定の期間Tpの範囲内の場合(ステップS54で「NO」)、以降、上記ステップS51〜S54の手順を繰り返す。
【0060】
一方、経過期間が所定の期間Tpを超えた場合(ステップS54で「YES」)、受信端末はデータの受信が終了したとみなす。具体的には、データ受領部121が出力制御信号生成部127に出力制御信号の生成を終了させる(ステップS55)。データ出力部126は出力制御信号生成部127から出力制御信号を受け取らなくなると、データの出力動作を停止する(ステップS56)。以降、受信端末はセッション開始の初期状態に戻って音声データのパケットの受信を待つ。
以上が、本発明の一実施形態に係る音声信号通信システム100における音声データの合成処理の一連の手順である。
【0061】
なお、本発明の一実施形態に係る音声信号通信システム100が有する機能は、特定のハードウェア資源またはソフトウェア処理に限定されないことに留意されたい。すなわち、本発明の一実施形態に係る端末10、20、30の音声データ合成部120はその機能を実現できる限り、如何なるハードウェア(電子回路等)、ソフトウェア(プログラム)、あるいはそれらの組み合わせ等を用いてよい。
【0062】
上述した本発明の一実施形態に係る音声信号合成方法を、プログラムとして実装する場合には、このプログラムを外部のサーバ等から該方法を実行する情報処理装置にダウンロードするか、あるいはコンピュータ可読媒体の形態で分配されることが好ましい。コンピュータ可読媒体の例としては、CD−ROM、DVD、磁気テープ、フレキシブルディスク、光磁気ディスク、ハードディスクなどが挙げられる。
【0063】
以上、本発明を図面に示した実施形態を用いて説明したが、これらは例示的なものに過ぎず、本技術分野の当業者ならば、本発明の範囲および趣旨から逸脱しない範囲で多様な変更および変形が可能なことは理解できるであろう。したがって、本発明の範囲は、説明された実施形態によって定められず、特許請求の範囲に記載された技術的趣旨により定められねばならない。
【図面の簡単な説明】
【0064】
【図1】本発明の一実施形態に係る音声信号通信システム100の構成を示す図である。
【図2】音声信号通信システム100の通信が準拠するRTPデータのヘッダ部の構成を示す図である。
【図3】音声信号通信システム100の端末10、20、30の音声データ処理部の機能を示すブロック図である。
【図4】図3の音声データ合成部120の機能を示すブロック図である。
【図5】音声データ合成部120のデータの加算方法を説明するための図である。
【図6】端末10、20、30の入出力波形の例である。
【図7】音声データ合成部120が行う音声合成処理のデータ加算処理を示すフロー図である。
【図8】音声データ合成部120が行う音声合成処理のデータ出力処理を示すフロー図である。
【符号の説明】
【0065】
10 端末
20 端末
30 端末
40 IPネットワーク
100 音声信号通信システム
120 音声データ合成部
121 データ受領部
122 ヘッダ情報抽出部
123 時間差決定部
124 時計部
125 データ加算および制限部
126 データ出力部
127 出力制御信号生成部
128 ヘッダ情報管理部
129 音声データバッファ部

【特許請求の範囲】
【請求項1】
通信機能を有する複数の端末と、該複数の端末を相互接続するIPネットワークと、を備え、前記複数の端末の間で音声信号のRTP通信が可能な音声信号通信システムであって、
前記複数の端末の受信部はそれぞれ音声合成手段を有し、
前記音声合成手段は、
受信した複数の音声信号のRTPヘッダのタイムスタンプから時刻情報を抽出する情報抽出手段と、
前記抽出した時刻情報を基に、前記受信した信号の送信時刻を求める送信時刻決定手段と、
前記求めた送信時刻を基準として、前記複数の音声信号を加算する音声信号加算手段と、
前記加算した音声信号の値と所定の制限値とを比較し、前記音声信号の値の方が大きい場合には、該音声信号の値を前記制限値まで低減させる信号制限手段と、
を備えたことを特徴とする音声信号通信システム。
【請求項2】
IPネットワークを含むRTP通信システムを介して複数の送信元から受信した音声信号をリアルタイムに合成可能な音声合成装置であって、
前記受信した複数の音声信号のRTPヘッダのタイムスタンプから所定の時刻情報を抽出する情報抽出手段と、
前記抽出した時刻情報を基に、前記受信した信号の送信時刻を求める送信時刻決定手段と、
前記求めた時刻を基準として、前記複数の音声信号を加算する音声信号加算手段と、
前記加算した音声信号を出力する音声出力手段と、
を備えることを特徴とする音声合成装置。
【請求項3】
前記音声信号加算手段が加算した音声信号の値と所定の制限値とを比較し、前記音声信号の値の方が大きい場合には、該音声信号の値を前記制限値まで低減させる信号制限手段をさらに備えることを特徴とする請求項2に記載の音声合成装置。
【請求項4】
IPネットワークを含むRTP通信システムを介して複数の送信元から受信した音声信号をリアルタイムに合成する音声合成処理方法であって、
前記受信した複数の音声信号のRTPヘッダのタイムスタンプから時刻情報を抽出する情報抽出ステップと、
前記抽出した時刻情報を基に、前記受信した信号の送信時刻を求める送信時刻決定ステップと、
前記求めた時刻を基準として、前記複数の音声信号を加算する音声信号加算ステップと、
前記加算した音声信号を出力する音声信号出力ステップと、
を含むことを特徴とする音声合成処理方法。
【請求項5】
前記音声信号加算ステップと前記音声信号出力ステップとの間に、
前記加算した音声信号の値と所定の制限値とを比較し、前記音声信号の値の方が大きい場合には、該音声信号の値を前記制限値まで低減させる信号制限ステップをさらに含むことを特徴とする請求項4に記載の音声合成処理方法。
【請求項6】
請求項4または5に記載の音声合成処理方法を行う電子回路。
【請求項7】
請求項4または5に記載の音声合成処理方法を処理装置に実行させるプログラム。
【請求項8】
請求項7に記載のプログラムを格納したコンピュータ可読媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2010−93328(P2010−93328A)
【公開日】平成22年4月22日(2010.4.22)
【国際特許分類】
【出願番号】特願2008−258293(P2008−258293)
【出願日】平成20年10月3日(2008.10.3)
【出願人】(592161372)日本システムウエア株式会社 (31)
【Fターム(参考)】