JP2004093975A - Communication terminal and program - Google Patents
Communication terminal and program Download PDFInfo
- Publication number
- JP2004093975A JP2004093975A JP2002255999A JP2002255999A JP2004093975A JP 2004093975 A JP2004093975 A JP 2004093975A JP 2002255999 A JP2002255999 A JP 2002255999A JP 2002255999 A JP2002255999 A JP 2002255999A JP 2004093975 A JP2004093975 A JP 2004093975A
- Authority
- JP
- Japan
- Prior art keywords
- data
- communication
- voice
- performance
- communication terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
- Reverberation, Karaoke And Other Acoustics (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、通信端末及びプログラムに関する。
【0002】
【従来の技術】
従来、複数の装置間をネットワークで結び、各装置からの入力音声をリアルタイムに受信するとともに、これらの音声を各装置で再生させる通信システムとして、特開平11−219174号公報に開示されているネットワーク演奏システムや、特開平10−39897号公報に開示されているカラオケシステムなどが知られている。
【0003】
上記ネットワーク演奏システムにおいては、複数の端末装置それぞれが、入力された演奏パート(以下、適宜、単に「パート」という。)の操作情報をMIDIファイルに変換し、インターネットを介してサーバへ送信する。そして、サーバが、各端末装置から受信される各パートの操作情報に基づいて合奏音声を生成し、各端末装置へ送信している。
【0004】
また、上記カラオケシステムにおいては、複数のカラオケ装置それぞれに入力されたカラオケ音声を、通信ネットワークを介して相互に送信することで、デュエットを可能としている。
【0005】
【発明が解決しようとする課題】
ところで、上述のような通信システムにおいては、各装置間の距離に起因する時間遅延の問題が発生する。即ち、上記カラオケシステムのように、各端末装置が、同一店舗内といった比較的近距離に配置されている場合には問題とならないが、ネットワークとしてインターネットを利用するといった場合には、各装置間の距離が遠くなるにつれ、物理的な距離や介在するサーバの存在、通信プロトコルといった様々な要因から、受信データの時間遅延の発生は避け難いものとなり、生音声のリアルタイム演奏を行うには不充分である。
【0006】
また、上記ネットワーク演奏システムのように、操作情報をMIDI形式のファイルで送信する方法では、楽曲1曲分をまとめてMIDI形式とする必要上、リアルタイム演奏は不可能に近く、更には、演奏者の意図した音色・音量・音質を完全に再現することが困難であった。
【0007】
本発明の課題は、他の通信機器との間で送受信される音声等のデータを適切に合成・出力できるようにすることである。
【0008】
【課題を解決するための手段】
上記課題を解決するために、請求項1に記載の発明は、
通信回線を介して接続された他の通信端末と音声データの送受信を行いつつ、前記他の通信端末から受信した音声データと入力された音声データとを合成し、合成音声として再生する通信端末(例えば、図1の演者端末20)であって、
入力音声データに、予め定められている同期調整データ(例えば、図5の送信端末識別番号及びパケット番号)を付加して音声通信データを作成する作成手段(例えば、図10の演者端末20、図16ステップS240)、
を備えることを特徴としている。
【0009】
また、請求項10に記載の発明は、
所定の通信回線を介して接続された他の通信端末と音声データの送受信を行なう通信端末であるコンピュータ(例えば、図1の演者端末20)に、
入力された音声データに予め定められた同期調整データ(例えば、図5の送信端末識別番号及びパケット番号)を付加して音声通信データを作成する作成機能(例えば図16ステップS240)と、
前記他の通信端末から送信された同期調整データが付加された音声通信データを受信する受信機能(例えば、図15ステップS221〜S224)と、
この受信手段により受信された同期調整データが付加された音声通信データに含まれる音声データと前記作成手段により作成された同期調整データが付加された入力音声データに含まれる音声データとを、それぞれに対応する同期調整データに従って、同期した合成音声として再生する音声合成再生機能(図17、S251〜S254)と、
を実現させるためのプログラムである。
【0010】
この請求項1又は10に記載の発明によれば、入力された音声データに、予め定められた同期調整データを付加した通信データを作成することができる。
【0011】
そして、請求項2に記載の発明のように、
請求項1に記載の通信端末において、
前記作成手段により作成された同期調整データが付加された音声通信データを送信する送信手段(例えば、図10の通信装置33、CPU21、図16;S239〜S244)と、
他機から送信される通信データを受信する受信手段(例えば、図10の通信装置33、CPU21、図15;S221〜S224)と、
この受信手段により受信された通信データに含まれる音声データを、その通信データに含まれる同期調整データに従って、前記音声入力手段から出力された音声データと共に同期した合成音声として再生する再生手段(例えば、図10のCPU21及びDSP22、図17;S251〜S254)と、
を備えることとすれば、次の効果が得られる。
【0012】
即ち、他の通信端末から受信した音声通信データに含まれる音声データと作成手段により作成された同期調整データが付加された入力音声データに含まれる音声データとを、それぞれに対応する同期調整データに従って、同期した合成音声として再生することができる。
【0013】
ここで、請求項3に記載の発明のように、
請求項2に記載の通信端末において、
前記同期調整データには順序データが含まれ、
前記受信手段により受信された音声通信データを蓄積記憶する他データ記憶手段(例えば、図10の出力バッフ22b)を更に備え、
前記再生手段は、前記他データ記憶手段に記憶された音声通信データを、その音声通信データに含まれる順序データに従って読み出し、前記入力された音声データと共に同期した合成音声として再生することとしても良い。
【0014】
この請求項3に記載の発明によれば、音声通信データを受信した順序に関わらず、正しい順序で合成音声の再生ができる。
【0015】
また、請求項4に記載の発明のように、
請求項2又は3に記載の通信端末において、
前記作成手段は、作成する音声通信データに、再生条件データを更に付加する再生条件付加手段(例えば、図10のDSP22、CPU21、図16;S236)を有し、
前記再生手段は、前記受信手段により受信された音声通信データに含まれる音声データを、その音声通信データに含まれる再生条件データに基づいて再生する(例えば、図10のDSP22、図15;S228)ように構成しても良い。
【0016】
ここで、再生条件データとは、上記再生手段が音声データを再生する際の条件を指定するデータであり、具体的には、エコーやリバーブ(残響)、トーンコントロールの度合、音量バランス、ステレオ化の有無やそのL/R比等が挙げられる。
【0017】
従って、この請求項4に記載の発明によれば、それぞれの音声通信データを加工し、音色・音量・音質を、より正確に再現することが可能となるとともに、また、再生する場所に応じて、より相応しい合成音声を生成することが可能となる。尚、この再生条件データは、利用者の入力指示に応じたものであっても良いし、通信端末が、再生場所等の条件に応じて、適宜決定するものであっても良い。
【0018】
また、請求項5に記載の発明のように、
請求項1〜4の何れか一項に記載の通信端末において、
前記作成手段は、入力された音声データの内、所定単位の音声データごとに前記同期調整データを付加することにより、音声通信データを順次作成するように構成(図16;S231〜S238)しても良い。
【0019】
この請求項5に記載の発明によれば、音声データを所定単位毎に同期調整データを付加して音声通信データを順次作成できるので、音声通信データの取り扱いがしやすい。例えば上記音声データをパケット化するとともに、上記所定の通信回線を代表的なIPネットワークであるインターネットに適用することで、より多数、且つ広範にわたる他機との音声データの送受信が可能となる。
【0020】
また、請求項6に記載の発明のように、
請求項2〜5の何れか一項に記載の通信端末において、
前記所定の通信回線を介して接続されるサーバ(例えば、図1の管理サーバ10)に所望演通信件データを送信して、当該所望通信条件データに適合する所望通信条件データを送信した他の通信端末の通信アドレスを受信する照会手段(例えば、図10のCPU21、図13;S13,S14,S18、S21,S22)を更に備え、
この照会手段により受信された通信アドレスを基にして、前記送信手段および前記受信手段が、音声通信データの送信および受信を行うように構成しても良い。
【0021】
ここで所望通信条件とは、通信データの送信及び受信を行うこととなる他の通信端末に望む条件であり、例えば、音声データの送受信を希望する日時、その内容等が挙げられる。
【0022】
従って、この請求項6に記載の発明によれば、例えば、本発明の通信端末を、他の通信端末とが互いに演奏データを送受信し、リアルタイムのバンド演奏を実現する装置に適用することとすれば、所望通信条件として、演奏を希望する曲目やパート、日時等の条件をサーバへ送信することで、所望通信条件を満たす他機を見つけることができる。
【0023】
また、請求項7記載の発明のように、
請求項2〜6の何れか一項に記載の通信端末において、
前記送信手段が送信する音声通信データを暗号化する暗号化手段(例えば、図10のCPU21、図16;S243)と、
前記受信手段が受信した音声通信データを復号する復号化手段(例えば、図10のCPU21、図15;S222)と、
を更に備えるように構成しても良い。
【0024】
この請求項7に記載の発明によれば、送信する通信データを暗号化するともに、受信した通信データを復号化することで、上記所定の通信回線を介したデータ通信を行う際のセキュリティを高めることができる。
【0025】
請求項8に記載の発明は、
所定の通信回線を介して接続された他の通信端末とデータの送受信を行いつつ、前記他の通信端末から受信したデータと入力されたデータと即時合成して再生する通信端末(例えば、図1の演者端末20)であって、
入力データに予め定められた同期調整データ(例えば、図5の送信端末識別番号及びパケット番号)を付加して通信データを作成する作成手段(例えば、図10の演者端末20、図16ステップS240)、
を備えることを特徴としている。
【0026】
この請求項8に記載の発明によれば、入力された音声データに、予め定められた同期調整データを付加した通信データを作成することができる。従って、例えば、当該通信端末の入力データと、所定の通信回線を介して他の通信端末から受信した通信データに含まれる入力データとを、それぞれに対応する同期調整データに従って、正確に同期させて再生することができ、自機(当該通信端末)と他機(他の通信端末)との間の距離に影響されることなく、他機との通信データの送受信を行いつつ、これらのデータを即時合成して再生することが可能となる。
【0027】
請求項9に記載の発明は、
サーバを介して、前記サーバに接続された他の通信端末とデータの送受信を行いつつ、入力データと他の通信端末から受信したデータとを即時合成して再生する通信端末(例えば、図18の演者端末20)であって、
入力データに予め定められた同期調整データを付加して通信データを作成する作成手段を備えることを特徴としている。
【0028】
この請求項9に記載の発明によれば、入力されたデータに、予め定められた同期調整データを付加した通信データを作成することができる。従って、例えば、当該通信端末の入力データと、サーバを介して他の通信端末から受信した通信データに含まれる入力データとを、それぞれに対応する同期調整データに従って、正確に同期させて再生することができ、自機(当該通信端末)と他機(他の通信端末)との間の距離に影響されることなく、他機との通信データの送受信を行いつつ、これらのデータを即時合成して再生することが可能となる。また、通信端末のデータの送信先はサーバのみであるため、他機(他の通信端末)の台数が増加しても、通信データの送信にかかる負担を増加させずに済む。
【0029】
【発明の実施の形態】
以下、図面を参照し、発明の実施の形態を詳細に説明する。尚、以下においては、本発明を適用した演奏システムを例にとって説明するが、本発明の適用はこれに限らない。
【0030】
ここで演奏システムとは、インターネットを介して接続された複数の演者端末(通信端末)が、それぞれに割り当てられたパートで、同時にある曲目の演奏(即ち、合奏)を行うシステムである。この時、合奏に参加している各演者端末においては、利用者によって入力されたパートの演奏音声と、他の演者端末において入力されたパートの演奏音声とが合成された合奏音声が、出力される。尚、各演者端末に割り当てるパートは、それぞれ異なるものであっても良いし、複数の演者端末で同一のパートを割り当てることとしても良い。
【0031】
図1は、本実施の形態における演奏システム1の構成を示す図である。
同図によれば、演奏システム1は、管理サーバ10及び複数の演者端末20より構成されるとともに、これらの機器は、インターネットNに接続されている。尚、同図においては、3台の演者端末20が示されているが、勿論、これは何台であっても構わない。
【0032】
管理サーバ10は、CPU(Central Processing Unit)、RAM(Random Access Memory)、記憶装置、通信装置等がシステムバスを介して接続される、周知のサーバ装置により実現される。また、管理サーバ10は、Webページ用ファイルを提供するWebサーバ機能を有している。
【0033】
演者端末20は、CPU、RAM、記憶装置、入力装置、表示装置、通信装置等がシステムバスを介して接続される、周知のPC(Personal Computer)により実現される。
【0034】
図2は、演奏システム1における各機器の間のデータの流れを示す図である。同図(a)は、合奏前の様子を、同図(b)は、合奏中の様子を、それぞれ示している。尚、これらのデータは、適宜暗号化され、インターネットNを介して送受信される。
【0035】
同図(a)によれば、演者端末20は、利用者の指示入力に応じた演奏条件データを、管理サーバ10へ送信する。この演奏条件データには、利用者が演奏を希望する曲目、パート及び日時のデータが含まれる。従って、管理サーバ10は、各演者端末20から送信される演奏条件データを、受信する(図中▲1▼)。
【0036】
また、管理サーバ10は、これら受信した演奏条件データに基づき、合奏に参加する演者端末20を特定する。そして、これら特定した各演者端末20に対して、当該合奏の予定を示す合奏予定データを送信する。この合奏予定データには、合奏を予定している日時、曲目及び当該合奏に参加する演者端末20を示すデータが含まれる。従って、合奏に参加予定の演者端末20は、それぞれ、管理サーバ10から送信される合奏予定データを受信する(図中▲2▼)。
【0037】
一方、同図(b)によれば、合奏が予定された日時となると、管理サーバ10は、当該合奏に参加予定の演者端末20それぞれに対して、演奏開始を指示する(図中▲3▼)。
【0038】
そして、管理サーバ10から演奏開始が指示された演者端末20は、先に受信した合奏予定データに基づき、当該合奏に参加する他の演者端末20と、演奏データの送受信を行い、合奏を実現する。この時、各演者端末20は、利用者により入力された演奏音声のデータ(以下、適宜「演奏データ」という。)と、他の演者端末20から受信した演奏データとを合成し、合奏音声として出力する。
【0039】
即ち、図3に示すように、演者端末20の利用者が、演者端末20(図中、「ライブギア」と表記されている。)に接続されたエレキギター等の楽器41を演奏すると、この演奏に応じた演奏データが、インターネットNを介して他の演者端末20に送信される。また、演者端末20は、インターネットNを介して共演者の演奏データを受信するとともに、自身の演奏データと合成し、合奏音声としてスピーカ42より出力する。従って、演者端末20の利用者にとっては、あたかも共演者(即ち、他の演者端末20の利用者)と共演しているかのような合奏音声を、聴くことができる。
【0040】
また、本実施の形態においては、通信プロトコルとして、UDP/IPが採用されている。即ち、インターネットNを経由した管理サーバ10及び演者端末20の間のデータ通信は、各機器に割り当てられたIPアドレスに基づくIPパケットの送受信によって、実現される。
【0041】
図4は、IPパケットに含まれるIPヘッダのフォーマットを示す図である。同図によれば、IPヘッダは、準拠しているIP規格のバージョン(即ち“6”)、当該IPパケットの優先度、通信帯域の予約を保証するためのフローラベル、実データの大きさを示すペイロード長、後続ヘッダのIDを示すネクストヘッダ、ルータによる中継限界数を示すホップリミット、送信元の機器(管理サーバ10、或いは演者端末20)のIPアドレスを示す送信元IPアドレス及び宛先の機器(管理サーバ10、或いは演者端末20)のIPアドレスを示す宛先IPアドレスより構成される。
【0042】
また、図5は、IPパケットに含まれる実データ(ペイロード部)のデータ構成を示す図である。尚、同図においては、IPパケットの実データ(ペイロード部)の内、合奏時に、複数の演者端末20の間で送受信される演奏データについてのデータ構成を示している。
同図によれば、IPパケットに含まれる実データは、指示ヘッダ及び音声データより構成される。
【0043】
指示ヘッダには、当該IPパケットが演奏システム1のための演奏データであることを示す演奏データ識別、送信元の演者端末20を示す送信端末識別番号、上記送信元の演者端末20から送信された何番目のIPパケットであるかを示すパケット番号、音声データの記録方式(符号化方式)を示す音声記録方式(即ち“PCM”)、その際のパラメータであるサンプリングレート(サンプリング周波数)、ビット数(量子化ビット数)、ビットレート、そして音声データに対するエフェクトを指定するエフェクト条件が含まれている。
【0044】
ここで、送信端末識別番号及びパケット番号を合わせて、「同期調整データ」という。この同期調整データは、後述のように、演奏データを同期合成するために用いられる。
【0045】
エフェクトとは、音声データに対して付加する音響効果を意味しており、例えば、エコーやリバーブ(残響)、トーンコントロール、音量バランスの変更、ステレオ化の有無等が該当する。
【0046】
また、音声データは、利用者によって入力された、アナログ信号である演奏音声を、PCM(Pulse Code Modulation)方式によってデジタル信号に変換したデータであり、1つのIPパケットにつき、512サンプリング分のデータが含まれる。即ち、演奏データは、複数の演者端末20の間で、512サンプリング分を単位としてやり取りされる。以下、この1パケット分(即ち、512サンプリング分)の音声データを、適宜「音声データパケット」という。
【0047】
図6は、演奏システム1における通信プロトコルのスタックを示す図である。同図によれば、通信プロトコルは、下位層から順に、イーサネット(登録商標)層(PPPoverEther)、IP層(ネットワーク層)、UDP層(トランスポート)及びアプリケーション層(APIを含む)より構成される。
【0048】
即ち、演者端末20が他の演者端末20から受信したIPパケットは、イーサネット(登録商標)層を介してIP層へ渡され、このIP層にて、暗号解読処理がなされる。その後、UDP層を経由して、アプリケーション層に渡される。そして、アプリケーション層にて、後述のように、CPU21によりIPパケットの実データに含まれる音声データが抜き出され、1つの音声データパケットとして、指示ヘッダとともに、DSP22へ入力される。
【0049】
また、利用者により演者端末20へ入力された演奏データは、後述のように、アプリケーション層にて、DSP22により音声データパケットに変換され、CPU21へ出力される。そして、UDP層、続いてIP層へ渡され、このIP層にて暗号化処理がなされ、IPパケット化される。その後、生成されたIPパケットは、イーサネット(登録商標)層を経由し、他の演者端末20へ送信される。
【0050】
ここで、IP層にて実現されるデータの暗号/復号化について説明する。
暗号化とは、インターネット等のネットワークを通じて文書や画像等のデジタルデータをやりとりする際に、通信途中で第三者に盗み見られたり改ざんされることを防ぐため、予め定められた規則に従ってデータを変換し、解読が極めて困難な状態にすることである。そして、暗号化されたデータを元に戻し、解読可能な状態にすることを復号化という。
【0051】
また、一般に、暗号/復号化には、暗号表にあたる「鍵」を使用するが、対になる2つの鍵を使う公開鍵暗号方式と、どちらにも同じ鍵を用いる共通鍵暗号方式とがある。前者にはRSA、ElGamal暗号、楕円曲線暗号等があり、後者には米国政府標準のDESやIDEA、FEAL、MISTY等があり、本実施の形態では上記の何れを使うこととしても良い。
【0052】
次に、管理サーバ10及び演者端末20の内部構成について、図7〜図11を参照して説明する。
【0053】
図7は、管理サーバ10の構成を示すブロック図である。
同図によれば、管理サーバ10は、CPU11、記憶装置12、RAM13及び通信装置14より構成され、各部はシステムバス15によりデータ通信可能に接続されている。
【0054】
CPU11は、記憶装置12に記憶されるプログラムに基づいて、管理サーバ10を構成する各部を集中制御する。具体的には、通信装置14から入力される信号に応答して、記憶装置12に記憶されているプログラムを読み出してRAM13に一時記憶させるとともに、係るプログラムに基づく処理を実行して、管理サーバ10を機能させる。その際、CPU11は、処理結果をRAM13内の所定領域に格納するとともに、必要に応じて、その処理結果を通信装置14から外部機器へ送信する。
【0055】
また、CPU11は、本実施の形態の特徴的な部分として、後述する合奏処理(図13参照)を実行する。
【0056】
具体的には、合奏処理において、CPU11は、演者端末20から送信される演奏条件データを受信すると、この演奏条件データを、RAM13内の演奏条件データ格納領域13aに格納する。また、CPU11は、この演奏条件データに適合するデータを演奏条件データ格納領域13aに格納されているデータの内から検索し、合奏に参加可能な演者端末20を特定する。そして、合奏を予定する日時、曲目、特定した演者端末20のIPアドレスを含む合奏予定データを生成する。
【0057】
その後、生成した合奏予定データを、RAM13内の合奏予定データ格納領域13bに格納するとともに、特定した演者端末20のそれぞれに対して、生成した合奏予定データを送信する。更に、CPU11は、合奏予定日時の所定時間前となると、当該合奏に参加予定の演者端末20に対して、演奏開始を指示する。
【0058】
記憶装置12は、管理サーバ10の動作に係る各種処理プログラムや、本実施の形態の機能を実現するためのプログラム(具体的には、合奏プログラム12a)及びこれらのプログラムの実行に係る処理データ等を記憶する。
【0059】
RAM13は、CPU11により実行される各プログラムを展開するプログラムエリア(不図示)、入力指示や入力データ及び上記プログラムが実行される際に生じる処理結果等を一時的に格納するワークメモリエリアを備えている。また、上記ワークメモリエリアには、演奏条件データ格納領域13a及び合奏予定データ格納領域13bが形成される。
【0060】
図8は、演奏条件データ格納領域13aに格納されるデータの構成を示す図である。
同図によれば、演奏条件データ格納領域13aには、演奏条件及びIPアドレスが対応付けて格納される。この演奏条件は、演者端末20から受信した演奏条件データに該当し、演奏を希望する曲目、パート及び日時を含んでいる。尚、これらの格納されているデータは、互いに適合するものが検索され、CPU11により合奏予定データが生成されると、該当するデータが、この演奏条件データ格納領域13aより削除される。
【0061】
図9は、合奏予定データ格納領域13bに格納されるデータの構成を示す図である。
同図によれば、この合奏予定データ格納領域13bには、合奏予定データ、即ち、合奏を予定する日時、曲目及び各パートに割り当てられた演者端末20のIPアドレスが、対応付けて格納される。また、これらの合奏予定データは、合奏を予定する日時が現在時刻に近い順に格納されており、該当する合奏が開始されると、該当するデータが、この合奏予定データ格納領域13bより削除される。
【0062】
通信装置14は、インターネットNを介して他の機器(主に、演者端末20)とのデータ通信を行うためのインターフェースである。
【0063】
図10は、演者端末20の構成を示すブロック図である。
同図によれば、演者端末20は、CPU21、DSP(Digital Signal Processor)22、記憶装置23、RAM24、入力装置25、マルチプレクサ26、サンプルホールド回路27、A/D(Analog−Digital)変換回路28、D/A(Digital−Analog)変換回路29、アンプ30、表示駆動回路31、表示装置32及び通信装置33より構成される。
【0064】
CPU21は、記憶装置23に記憶されるプログラムに基づいて、演者端末20を構成する各部を集中制御する。具体的には、通信装置33、或いは入力装置25から入力される信号に応答して、記憶装置23に記憶されているプログラムを読み出してRAM24に一時記憶させるとともに、係るプログラムに基づく処理を実行して、演者端末20を機能させる。その際、CPU21は、処理結果をRAM24内の所定領域に格納するとともに、必要に応じて、その処理結果を通信装置33から外部機器へ送信するとともに、表示装置32に表示させる。
【0065】
また、CPU21は、本実施の形態に特徴的な部分として、後述する合奏処理(図13参照)、リンク確立処理(図14参照)、演奏データ受信処理(図15参照)及び演奏データ送信処理(図16参照)を実行する。
【0066】
具体的には、合奏処理において、CPU21は、利用者の入力指示に応じた演奏条件データを、当該演者端末20のIPアドレスとともに管理サーバ10へ送信するとともに、管理サーバ10から送信される合奏予定データを受信する。そして、管理サーバ10より演奏開始を指示されると、CPU21は、リンク確立処理、次いで演奏処理を実行する。また、この演奏処理において、CPU21は、演奏データ受信処理及び演奏データ送信処理を実行するとともに、DSP22に、後述する演奏データ受信処理(図15参照)、演奏データ送信処理(図16参照)及び合奏音声出力処理(図17参照)を実行させる。
【0067】
リンク確立処理において、CPU21は、受信した合奏予定データに基づき、合奏に参加する他の演者端末20に対して、利用者により入力された接続条件を送信する。それとともに、この接続条件と、他の演者端末20から受信した接続条件とを照合し、当該合奏における接続条件を決定する。
【0068】
ここで、接続条件には、通信条件及びエフェクト条件が含まれる。
通信条件とは、演者端末20の間のデータ通信に間する条件であり、具体的には、入力された演奏音声の符号化方式(サンプリング周波数や量子化ビット数等のパラメータを含む)や、他の演者端末20との間でデータ通信を行う際の接続レート(伝送速度)等が該当する。そして、この通信条件は、各演者端末20のスペック等に応じて設定可能な条件の内から、利用者の指示により、或いは最適なものが自動的に決定される。
【0069】
また、エフェクト条件とは、上述のように、演奏音声に対する音響効果に関する条件であり、具体的には、エコーやリバーブ(残響)、トーンコントロールの度合、音量バランス及びステレオ化の有無やそのL/R比等が該当する。そして、このエフェクト条件は、想定する演奏場所(例えば、コンサートホールや野外ステージ、ライブハウス等)に応じて、合奏音声に施すエコーやリバーブ(残響)、トーンコントロール等の度合が決定されたり、或いは、想定するステージ上における各パートの位置(例えば、中央にボーカル、右にギター、左にベース等)に応じて、当該各パートの音声の音量バランスや、ステレオ音声として出力する際の左右バランス(L/R比)が決定される。
【0070】
演奏データ受信処理において、CPU21は、通信装置33から入力されたIPパケットの実データに含まれる音声データを抜き出し、音声データパケットとして、指示ヘッダとともにDSP22へ出力する。
【0071】
また、演奏データ送信処理において、CPU21は、DSP22から入力される音声データパケットに所定のIPヘッダ等を付加したIPパケットを生成し、通信装置33へ出力する。
【0072】
DSP22は、デジタルデータの高速処理に特化したプロセッサである。また、DSP22は、本実施の形態の特徴的な部分として、演奏データ受信処理(図15参照)、演奏データ送信処理(図16参照)及び合奏音声出力処理(図17参照)を実行する。
【0073】
具体的には、演奏データ受信処理において、DSP22は、CPU21から入力された音声データパケットに対して所定の音響効果処理を行った後、演奏データバッファ24bの所定領域に格納する。
【0074】
演奏データ送信処理において、DSP22は、D/A変換回路29から入力された音声データを入力バッファ24aに格納し、512サンプリング分の音声データを1つの音声データパケットとしてCPU21へ出力する。それとともに、この音声データパケットに対して所定の音響効果処理を行った後、演奏データバッファ24bの所定領域に格納する。
【0075】
また、合奏音声出力処理において、DSP22は、演奏データバッファ24bに格納されている音声データパケットを合成し、合成後の音声データをD/A変換回路29へ出力する。
【0076】
図11は、CPU21及びDSP22が、音声データパケットに対して行う処理の概念を示す図である。尚、同図においては、演奏システム1が、自身の演者端末(以下、適宜「演者端末A」という。)及び2台の他の演者端末20(以下、それぞれを、適宜「演者端末B」及び「演者端末B」という。)より構成される場合について、示されている。
【0077】
管理サーバ10が受信する演奏データは、上述のように、IPパケットととしてCPU11へ入力される。同図においては、このIPパケットを簡略し、送信端末識別番号及びパケット番号より構成される同期調整データ及び音声データのみで表しているとともに、CPU11への入力順に、図中左より示している。
【0078】
また、送信端末識別番号“A”は演者端末Aを、送信端末識別番号“B”は演者端末Bを、そして送信端末識別番号“C”は演者端末Cを、それぞれ示している。
【0079】
そして、音声データ“データAh”は、演者端末A自身のパケット番号“h”の音声データパケットを、音声データ“データBi”は、演者端末Bより受信したパケット番号“i”の音声データパケットを、そして、音声データ“データCj”は、演者端末Cより受信したパケット番号“j”の音声データパケットを、それぞれ示している。
【0080】
同図(a)によれば、CPU21は、入力されたIPパケットから音声データを抜き出す。そして、この音声データを1つの音声データパケットとし、付加されている端末識別番号に従って送信元の演者端末20毎に振り分けるとともに、パケット番号に従って並べ替える。即ち、同図(a)においては、図中上から、演者端末A、B、Cの順に振り分けた様子を示している。
【0081】
次いで、同図(b)によれば、DSP22は、これらの音声データパケットそれぞれに対し、指定されたエフェクト条件に基づいた音響処理を施す。具体的には、エコーやリバーブ、トーンコントロール等のエフェクトを、指定された度合で付加するとともに、指定されたL/R比のステレオデータに変換する。
【0082】
例えば、音声データ“データA0”に対し、所定のエフェクトを付加するとともに、指定されたL/R比のステレオデータ、即ちLチャネルの音声データ“データA0L”及び右チャネルの音声データ“データA0R”を、生成する。
【0083】
また、音声データ“データB0”及び“データC0”についても同様に、所定のエフェクトを付加し、指定されたL/R比で、Lチャネルの音声データ“データB0L”及び“データC0L”、そして右チャネルの音声データ“データB0R”及び“データC0R”を、それぞれ生成する。
【0084】
このように、DSP22によって音響処理が施された音声データパケット(即ち、同図(b)の状態)が、演奏データバッファ24bに格納される。
【0085】
その後、同図(c)によれば、DSP22は、これら音響処理済みの音声データパケットを合成し、合奏音声を再生するための音声データを生成する。具体的には、これら音響処理済みの音声データパケットの内、パケット番号が同一のもの同士を、チャネル毎に合成する。
【0086】
例えば、パケット番号“0”については、音声データ“データA0L”、“データB0L”及び“データC0L”を合成し、Lチャネルの音声データ“データA0L+B0L+C0L”を生成するとともに、音声データ“データA0R”、“データB0R”及び“データC0L”を合成し、Rチャネルの音声データ“データA0R+B0R+C0R”を生成する。
【0087】
また、パケット番号“1”についても同様に、音声データ“データA0L”、“データB0L”及び“データC0L”を合成し、Lチャネルの音声データ“データA0L+B0L+C0L”を生成するとともに、音声データ“データA0R”、“データB0R”及び“データC0L”を合成し、Rチャネルの音声データ“データA0R+B0R+C0R”を生成する。
【0088】
そして、DSP22は、このように生成した音声データを、D/A変換回路29へ出力する。
【0089】
また、図10において、記憶装置23は、演者端末20の動作に係る各種処理プログラムや、本実施の形態の機能を実現するためのプログラム(具体的には、図13の合奏処理を実行するための合奏プログラム23a、図14のリンク確立処理を実行するためのリンク確立プログラム23b、図15の演奏データ受信処理を実行するための演奏データ受信プログラム23c、図16の演奏データ送信処理を実行するための演奏データ送信プログラム23d及び図17の合奏音声出力処理を実行するための合奏音声出力プログラム23e)及びこれらのプログラムに係る処理データ等を記憶する。
【0090】
RAM24は、CPU21、或いはDSP22により実行される各プログラムを展開するプログラムエリア(不図示)、入力指示や入力データ及び上記プログラムが実行される際に生じる処理結果等を一時的に格納するワークメモリエリアを備えている。また、このワークメモリエリアには、入力バッファ24a及び演奏データバッファ24bが形成される。
【0091】
入力バッファ24aは、利用者によって入力された演奏音声のデータ(演奏データ)が格納される領域であり、詳細には、A/D変換回路28から入力された、512サンプリング分の音声データを格納する領域が確保されている。
【0092】
演奏データバッファ24bは、演者端末20自身の演奏データ及び他の演者端末20から受信した演奏データが格納される領域である。この演奏データバッファ24aのデータ構成を、図12に示す。
【0093】
図12は、演奏データバッファ24bのデータ構成を示す図である。
同図によれば、演奏データバッファ24bには、当該演者端末20へ入力された演奏音声のデータ(演奏データ)を格納する領域OUT[0]及び他の演者端末20から受信した音声データを格納するN個の領域OUT[n](但し、n=1、2、・・・、Nである。また、Nは、合奏に参加している他の演者端末20の数である。)が備えられている。
【0094】
また、これらの領域OUT[n]は、合奏に参加している他の演者端末20と1対1で対応付けられており、各領域OUT[n]毎に、対応付けられた演者端末20から受信された音声データが格納される。
【0095】
具体的には、これらの領域OUT[m](但し、m=0、1、・・・Nである。)には、音声データパケットが、そのパケット番号に従って格納される。即ち、同図においては、領域OUT[m]毎に、音声データパケットが、パケット番号順に、図中左から1つづつ格納された様子を示している。
【0096】
また、ここで格納される音声データパケットは、所定の音響処理が施された後のデータ、具体的には、所定のエフェクトが付加されるとともに、ステレオ化されたデータである。即ち、同図においては、領域OUT[m]毎に、図中上半分にLチャネル用のデータが、下半分にRチャネル用のデータが、それぞれ格納された様子を示している。
【0097】
図10において、入力装置25は、演者端末20の利用者が、演奏を希望する条件や、合奏に参加する他の演者端末20との接続条件等を入力するためのものであり、文字キー、数字キーや各種機能キーを備えたキーボード又はタッチパネル、或いはマウスやトラックボール、トラックポイント、ポインティング・スティック等のポインティングデバイス等により構成される。そして、これらの操作に応じた操作信号を、CPU21へ出力する。
【0098】
マルチプレクサ26は、複数の入力信号の内から1つの信号を選択し、出力する回路であり、具体的には、DSP22から入力される指示信号(選択信号)に従って、入力される演奏音声の一つを選択し、サンプルホールド回路27へ出力する。
【0099】
サンプルホールド回路27は、DSP22から入力されるクロック信号の入力タイミングに従い、マルチプレクサ26から入力される演奏音声(アナログ信号)の波高を一時的にホールド(保持)するとともに、A/D変換回路28へ出力する。
【0100】
A/D変換回路28は、サンプルホールド回路27から入力されるアナログ信号をデジタル信号に変換する回路であり、変換後のデジタル音声データを、DSP22へ出力する。
【0101】
D/A変換回路29は、DSP22から入力されるデジタル信号をアナログ信号に変換する回路であり、変換後のアナログ音声信号を、アンプ30へ出力する。
【0102】
アンプ30は、D/A変換回路29から入力されるアナログ信号(アナログ音声信号)を所定レベルに増幅し、増幅後の信号を、外部接続されたスピーカ(図3のスピーカ42に相当する。)へ出力する。
【0103】
表示駆動回路31は、CPU21から入力される表示信号に基づいて表示装置32を制御し、各種画面を表示させる回路である。また、表示装置32は、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)等により構成され、CPUから入力される表示信号に従った表示画面を表示する。
【0104】
通信装置33は、インターネットNを介して他の機器(主に、管理サーバ10及び他の演者端末20)とのデータ通信を行うためのインターフェースである。
【0105】
次に、演奏システム1の動作を、図13〜図17を参照して説明する。
【0106】
図13は、合奏処理を説明するためのフローチャートである。この合奏処理は、CPU21及びDSP22により、記憶装置23に記憶された合奏プログラム23aに従って、実行される処理である。
【0107】
同図によれば、演者端末20において、CPU21は、利用者からの入力指示に従い、管理サーバ10が提供するWebサイトへアクセスし(ステップS11)、この管理サーバ10から送信されるHP情報(Webページを表示させるための情報)を受信する(ステップS12)。そして、このHP情報に基づいて、表示装置32に参加登録画面(不図示)を表示させる。
【0108】
次いで、この参加登録画面上の入力フォーマットに従って、利用者により演奏を希望する曲目やパート、日時等を含む演奏条件データが入力されると(ステップS13)、CPU21は、この演奏条件データ及び演者端末20のIPアドレスを、参加登録要請とともに、管理サーバ10へ送信する(ステップS14)。
【0109】
一方、管理サーバ10において、CPU21は、演者端末20から送信される演奏希望条件及びIPアドレスを受信し(ステップS15)、この演奏条件データ及びIPアドレスを対応付けて、RAM24内の演奏条件データ格納領域13aに追加格納する。
【0110】
次いで、CPU21は、演奏条件データ格納領域13aに格納されているデータの内から、受信した演奏条件データに適合するデータを検索し、合奏に参加可能な演者端末20を特定する(ステップS16)。具体的には、演奏を希望する曲目及び日時が一致し、且つパートが異なるデータを検索する。
【0111】
演奏条件が適合するデータを検索すると、CPU21は、これらのデータに基づいて合奏予定データを生成する。そして、生成した合奏予定データを、RAM24内の合奏予定データ格納領域13b内に、詳細には、合奏予定日時が現在日時に最も近い順に並ぶ位置に追加格納するとともに、上記特定した各演者端末20に対し、この生成した合奏予定データを送信する(ステップS17)。尚、この合奏予定データには、上述のように、演奏を予定する日時、曲目及び各パートに割り当てた演者端末20のIPアドレスが含まれている。そして、CPU21は、演奏条件データ格納領域13aから、上記適合すると特定したデータを削除する。
【0112】
尚、図示されていないが、ステップS16において、受信した演奏条件データに適合するデータが演奏条件データ格納領域13aに格納されていない、即ち合奏に参加可能な演者端末20が特定できない場合には、CPU21は、再度ステップS12へ移行し、続いて受信される演奏条件データを待機する。
【0113】
また、管理サーバ10のCPU21は、随時、合奏予定データ格納領域13bの先頭に格納されている演奏予定日時と、現在日時とを比較している。そして、演奏予定日時の所定時間前になると(ステップS19:YES)、該当する演者端末20、即ち合奏に参加予定の演者端末20の全てに対して、演奏開始を指示する(ステップS20)。
【0114】
そして、演者端末20においては、管理サーバ10より演奏開始を指示されると(ステップS21)、CPU21は、後述のリンク確立処理(図14参照)を実行することで、当該合奏に参加予定の他の演者端末20と、接続条件の提示・照合を行うとともに、直接通信リンクを確立する(ステップS22)。
【0115】
その後、CPU21は、後述の演奏処理を実行することで、複数の演者端末20による合奏を実現する(ステップS23)。そして、この演奏処理が終了することで、予定した合奏が終了となる。
【0116】
図13のステップS21にて実行されるリンク確立処理について、説明する。図14は、リンク確立処理を説明するためのフローチャートである。このリンク確立処理は、上述のように、図13のステップS21にて実行される処理であり、CPU21及びDSP22により、記憶装置232記憶されたリンク確立プログラム23bに従って実行される。
【0117】
同図によれば、演者端末20において、CPU21は、利用者からの入力指示に従った接続条件を、他の演者端末20それぞれに対して提示するとともに、他の演者端末20それぞれから提示される接続条件と照合する(ステップS211)。尚、ここで照合される接続条件は、上述のように、通信条件及びエフェクト条件が含まれるものである。
【0118】
照合の結果、他の演者端末20から提示された接続条件との合意が得られないと判断した場合(ステップS212:NO)、CPU21は、合意されていない接続条件の内容を、代替案の候補とともに表示装置32に表示させる(ステップS213)。
【0119】
そして、これらの代替案から選択された内容を、新たな接続条件として他の演者端末20に提示し、他の演者端末20から提示される接続条件との照合を、再度行う(ステップS214)。
【0120】
接続条件の再照合の結果、合意が得られた場合には(ステップS212:YES)、CPU21は、合意した接続条件、詳細には、演者端末20自身に関する接続条件を、RAM24に記憶しておく。
その後、CPU21は、本リンク確立処理を終了する。
【0121】
次に、図13のステップS23にて実行される演奏処理について説明する。
この演奏処理において、CPU21は、演奏データ受信処理(図15参照)、演奏データ送信処理(図16参照)及び合奏音声出力処理(図17参照)の3つの処理を、並行して実行する。そして、合奏の終了を判断した場合には、実行中のこれらの処理を終了させ、当該演奏処理を終了する。
【0122】
図15は、演奏データ受信処理を説明するためのフローチャートである。この演奏データ受信処理は、CPU21及びDSP22により、記憶装置23に記憶された演奏データ受信プログラム23cに従って実行される。
【0123】
同図によれば、演者端末20において、CPU21は、通信装置33からIPパケットが入力されると(ステップS221:YES)、入力されたIPパケットに対して、暗号解読処理を含むIP層プロトコル処理(ステップS222)及びUDP層プロトコル処理を行うとともに(ステップS223)、アプリケーション層処理により、このIPパケットから音声データを抜き出し、音声データパケットとして、指示ヘッダとともにDSP22へ出力する(ステップS224)。
【0124】
その後、CPU21は、本処理の終了が指示されているか否かを判定する(ステップS225)。判定の結果、終了を指示されていない場合には(ステップS225:NO)、CPU21は、再度ステップS221に移行し、続いて入力されるIPパケットに対して、同様の処理を繰り返す(ステップS221〜S224)。
【0125】
また、ステップS225において、本処理の終了が指示されていると判定した場合には(ステップS225:YES)、CPU21は、本演奏データ受信処理を終了する。
【0126】
一方、DSP22は、CPU21から音声データパケットが入力されると(ステップS226)、入力された音声データパケットに対し、ともに転送される指示ヘッダに含まれる音声記録方式に従って、デコード処理を行う(ステップS227)。
【0127】
次いで、DSP22は、上記指示ヘッダに含まれるエフェクト条件に従って、デコードした音声データパケットに対する音響処理を行った後(ステップS228)、演奏データバッファ24bの該当する領域に格納する(ステップ229)。
【0128】
具体的には、図12を参照して説明したように、エコーやリバーブ、トーンコントロール等のエフェクトを、指定された度合で付加した後、指定されたL/R比でステレオ化する。そして、演奏データバッファ24b内の、送信元の演者端末20に対応する領域OUTに、パケット番号に従って格納する。
【0129】
その後、DSP22は、再度ステップS226に移行し、続いて入力される音声データパケットに対して、同様の処理を繰り返す(ステップS226〜S229)。
【0130】
図16は、演奏データ送信処理を説明するためのフローチャートである。この演奏データ送信処理は、CPU21及びDSP22により、記憶装置33に記憶された演奏データ送信プログラム23dに従って実行される。
【0131】
同図によれば、演者端末20において、本処理を開始した後、所定のサンプリング周期が経過すると(ステップS231:YES)、DSP22は、A/D変換回路28から出力される音声データを取込み(ステップS232)、取込んだ音声データを、入力バッファ24aへ格納する(ステップS233)。
【0132】
尚、ここで、サンプリング周期とは、アナログ信号である演奏音声をデジタル信号に変換する際のサンプリング周波数であり、図14のステップS212において合意された接続条件に含まれている。
【0133】
次いで、DSP22は、1パケット分、即ち512サンプリング分の音声データの取込みを行ったか否かを判定し(ステップS234)、行っていないと判定した場合には(ステップS234:NO)、再度ステップS231に移行し、再度サンプリング周期を経過後、同様の処理を繰り返す(ステップS231〜S234)。
【0134】
このように、サンプリング周期毎に音声データの取込みを繰り返し、1パケット分、即ち512サンプリング分の音声データの取込みを行ったと判定すると(ステップS234:YES)、次いで、DSP22は、入力バッファ24aに格納されている音声データを読み出す。そして、読み出した音声データに対して所定の音響処理を行った後(ステップS235)、演奏データバッファ24bの該当する領域に格納する(ステップS236)。
【0135】
即ち、図12を参照して説明したように、先に合意した接続条件に含まれるエフェクト条件に従い、1パケット分の音声データに、エコーやリバーブ、トーンコントロール等のエフェクトを付加するとともに、指定されたL/R比でステレオ化する。
【0136】
また、DSP22は、上記入力バッファ24bから読み出した1パケット分の音声データを、PCM方式に従ってエンコードした後(ステップS237)、音声データパケットとして、指示ヘッダとともにCPU21へ転送する(ステップS238)。尚、この指示ヘッダは、上述のように、演者端末20自身を識別する送信端末識別番号やパケット番号及び上記音声記録方式、エフェクト条件等を含むものである。
【0137】
その後、DSP22は、再度ステップS231へ移行し、次の1パケット分の音声データを取込み、同様の処理を繰り返す(ステップS231〜S238)。
【0138】
一方、CPU21は、DSP22から音声データパケットが入力されると(ステップS239)、この音声データパケットに、同期調整データ、即ち演者端末20自身を識別する送信端末識別番号及び音声データパケットが入力された順を示すパケット番号を付加する(ステップS240)。そして、当該合奏に参加している他の演者端末20の内から、1つの演者端末20を、演奏データの送信先として特定する(ステップS241)。
【0139】
次いで、CPU21は、UDP層プロトコル処理(ステップS242)、暗号化処理を含むIP層プロトコル処理を行い(ステップS243)、IPパケットを生成する。この時、CPU21は、上記特定した演者端末20のIPアドレスを、IPヘッダの宛先IPアドレスに設定する。そして、CPU21は、生成したIPパケットを通信装置33へ出力し、上記特定した他の演者端末20へ送信させる(ステップS244)。
【0140】
その後、CPU21は、当該合奏に参加している他の演者端末20の内、当該音声データパケットを含むIPパケットが未送信の演者端末20が存在するか否かを判定する(ステップS245)。
【0141】
判定の結果、存在する場合には(ステップS245:YES)、CPU21は、再度ステップS239に移行し、未送信の演者端末20に対して、同様の処理を繰り返す(ステップS239〜S245)。
【0142】
また、ステップS245において、合奏に参加している全ての他の演者端末20に、当該音声データを含むIPパケットを送信したと判定した場合には(ステップS245:NO)、CPU21は、続いて、本処理の終了が指示されているか否かを判定する(ステップS246)。
【0143】
判定の結果、終了を指示されていない場合には(ステップS246:NO)、CPU21は、再度ステップS239に移行し、続いて入力される音声データパケットに対して、同様の処理を繰り返す(ステップS239〜S246)。一方、ステップS246において、本処理の終了が指示されていると判定した場合には(ステップS246:YES)、CPU21は、本処理を終了する。
【0144】
図17は、合奏音声出力処理を説明するためのフローチャートである。この合奏音声出力処理は、DSP22により、記憶装置33に記憶された合奏音声出力プログラム23eに従って実行される。
【0145】
同図によれば、演者端末20において、本処理を開始した後、所定の再生サンプリング周期が経過すると(ステップS251:YES)、DSP22は、演奏データバッファ24bから、所定のパケット番号の音声データパケットを読み出す(ステップS252)。
【0146】
尚、ここで、再生サンプリング周期とは、1パケット分の音声データ(即ち、512サンプリング分)を再生するのに要する時間であり、具体的には、上記サンプリング周期の512倍に相当する。
【0147】
次いで、DSP22は、演奏データバッファ24bから読み出した音声データパケットを、図12を参照して説明したように、チャネル毎に合成(同期合成)し、合奏音声を再現するための音声データパケットを生成する(ステップS253)。
【0148】
その後、DSP22は、生成した音声データパケットの出力レベルを調整した後、D/A変換回路29へ出力する(ステップS254)。尚、ここでD/A変換回路29に入力された音声データは、アナログ信号に変換された後、アンプ30にて増幅され、演奏音声としてスピーカから出力される。
【0149】
そして、DSP22は、本処理の終了が指示されているか否かを判定する(ステップS255)。判定の結果、終了が指示されていない場合には(ステップS2555:NO)、DSP22は、再度ステップS251に移行し、次のパケット番号の音声データパケットに対して、同様の処理を繰り返す(ステップS251〜S255)。
【0150】
また、ステップS255において、本処理の終了が指示されていると判定した場合には(ステップS255:YES)、DSP22は、本処理を終了する。
【0151】
このように、演者端末20において、並行して実行される3つの処理(演奏データ受信処理、演奏データ送信処理及び合奏音声出力処理)を全て終了すると、CPU21は、演奏処理を終了する。
【0152】
以上のように構成することで、インターネットNを介して接続された複数の演者端末20それぞれにおいて、入力された演奏音声のデータと、他の演者端末20から送信される演奏データとを、パケット番号に従って合成・出力することが可能となる。即ち、各演者端末20の間の距離に関わらず、これらの演者端末20における演奏音声を正確に同期させて再生することができ、リアルタイムな合奏を実現することが可能となる。
【0153】
更に、演者端末20に入力される演奏音声のデータを、エフェクト条件とともに送信することで、入力された演奏音声に、利用者が所望する音響効果(例えば、エコーやリバーブ、ステレオ化等)を施した合奏音声を、再生することが可能となる。
【0154】
尚、本発明は、上記実施の形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。例えば、演者端末20間の演奏データの送受信を、管理サーバ10を介して行うこととしても良い。
【0155】
即ち、図18に示すように、各演者端末20は、入力された演奏音声のデータ(演奏データ)を、管理サーバ10へ送信する。そして、管理サーバ10は、これらの演奏データを受信するとともに、各演者端末20へ一斉配信する。また、演者端末20は、管理サーバ10から送信される演奏データを、パケット番号に従って同期させ、指定されたエフェクト条件に従って音響処理を施し、合奏音声として出力する。
【0156】
従って、演者端末20による演奏データの送信先は、管理サーバ10のみとなるため、演者端末20における、演奏データの送受信に係る負担を軽減することができるとともに、合奏に参加する演者端末20が多数になる程、より効果的となる。
【0157】
また、この時、管理サーバ10は、各演者端末20から送信されるこれらの演奏データを、パケット番号に従って同期させ、各演者端末20へ配信することとしても良いし、更に、管理サーバ10は、上記パケット番号に従って同期させた演奏データを、指定されたエフェクト条件に基づいてエフェクト付加及びステレオ化し、各演者端末20へ送信することとしても良い。
【0158】
また、上記実施の形態においては、各演者端末20の利用者は1人であるとしたが、複数であっても良い。その場合には、マルチプレクサ26は、各利用者から入力される複数の演奏音声を、DSP22からの指示信号に従って分離・選択し、サンプルホールド回路27へ出力する。そして、DSP22及びCPU21は、これらの演奏音声を、利用者毎に振り分けて処理する。
【0159】
【発明の効果】
請求項1又は10に記載の発明によれば、入力された音声データに、予め定められた同期調整データを付加した通信データを作成することができる。
【0160】
請求項2に記載の発明によれば、他の通信端末から受信した音声通信データに含まれる音声データと作成手段により作成された同期調整データが付加された入力音声データに含まれる音声データとを、それぞれに対応する同期調整データに従って、同期した合成音声として再生することができる。
【0161】
請求項3に記載の発明によれば、音声通信データを受信した順序に関わらず、正しい順序で合成音声の再生ができる。
【0162】
請求項4に記載の発明によれば、それぞれの音声通信データを加工し、音色・音量・音質を、より正確に再現することが可能となるとともに、また、再生する場所に応じて、より相応しい合成音声を生成することが可能となる。
【0163】
請求項5に記載の発明によれば、音声データを所定単位毎に同期調整データを付加して音声通信データを順次作成できるので、音声通信データの取り扱いがしやすい。
【0164】
請求項6に記載の発明によれば、例えば、本発明の通信端末を、他の通信端末とが互いに演奏データを送受信し、リアルタイムのバンド演奏を実現する装置に適用することとすれば、所望通信条件として、演奏を希望する曲目やパート、日時等の条件をサーバへ送信することで、所望通信条件を満たす他機を見つけることができる。
【0165】
請求項7に記載の発明によれば、送信する通信データを暗号化するともに、受信した通信データを復号化することで、上記所定の通信回線を介したデータ通信を行う際のセキュリティを高めることができる。
【0166】
請求項8,9に記載の発明によれば、入力された音声データに、予め定められた同期調整データを付加した通信データを作成することができる。
【図面の簡単な説明】
【図1】本実施の形態における演奏システムの構成を示す図である。
【図2】演奏システムにおけるデータの流れを示す図である。
【図3】本実施の形態の概念を示す図である。
【図4】IPパケットのIPヘッダのフォーマットを示す図である。
【図5】IPパケットの実データの構成を示す図である。
【図6】演奏システムにおける通信プロトコルを示す図である。
【図7】管理サーバの内部構成を示すブロック図である。
【図8】演奏条件データ格納領域のデータ構成を示す図である。
【図9】合奏予定データ格納領域のデータ構成を示す図である。
【図10】演者端末の内部構成を示すブロック図である。
【図11】演奏データに対する処理の概略を示す図である。
【図12】演奏データバッファのデータ構成を示す図である。
【図13】合奏処理を説明するためのフローチャートである。
【図14】リンク確立処理を説明するためのフローチャートである。
【図15】演奏データ受信処理を説明するためのフローチャートである。
【図16】演奏データ送信処理を説明するためのフローチャートである。
【図17】合奏音声出力処理を説明するためのフローチャートである。
【図18】本実施の形態の変形例を示す図である。
【符号の説明】
1 演奏システム
10 管理サーバ
11 CPU
12 記憶装置
12a 合奏プログラム
13 RAM
13a 演奏条件データ格納領域
13b 合奏予定データ格納領域
14通信装置
20 演者端末
21 CPU
22 DSP
23 記憶装置
23a 合奏プログラム
23b リンク確立プログラム
23c 演奏データ受信プログラム
23d 演奏データ送信プログラム
23e 合奏音声出力プログラム
24 RAM
24a 入力バッファ
24b 演奏データバッファ
25 入力装置
26 マルチプレクサ
27 サンプルホールド回路
28 A/D変換回路
29 D/A変換回路
30 アンプ
31 表示駆動回路
32 表示装置
33 通信装置
N インターネット[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a communication terminal and a program.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, as a communication system for connecting a plurality of devices via a network, receiving an input voice from each device in real time, and reproducing the voice on each device, a network disclosed in Japanese Patent Application Laid-Open No. H11-219174 is disclosed. A performance system and a karaoke system disclosed in Japanese Patent Application Laid-Open No. 10-39897 are known.
[0003]
In the network performance system, each of the plurality of terminal devices converts the operation information of the input performance part (hereinafter, simply referred to as “part”) into a MIDI file and transmits the MIDI file to the server via the Internet. Then, the server generates an ensemble sound based on the operation information of each part received from each terminal device, and transmits the ensemble sound to each terminal device.
[0004]
Further, in the karaoke system, duet is enabled by mutually transmitting karaoke voices input to each of the plurality of karaoke apparatuses via a communication network.
[0005]
[Problems to be solved by the invention]
By the way, in the communication system as described above, a problem of a time delay due to a distance between the devices occurs. That is, as in the above-mentioned karaoke system, there is no problem when each terminal device is arranged at a relatively short distance such as in the same store. However, when the Internet is used as a network, there is no problem between the devices. As the distance increases, various factors such as the physical distance, the presence of intervening servers, and communication protocols make it difficult to avoid the time delay of the received data, which is not enough to perform live audio in real time. is there.
[0006]
In the method of transmitting operation information in a MIDI format file as in the network performance system, real-time performance is almost impossible because one music piece needs to be put in the MIDI format. It was difficult to completely reproduce the intended timbre, volume and sound quality.
[0007]
An object of the present invention is to appropriately synthesize and output data such as voice transmitted and received between other communication devices.
[0008]
[Means for Solving the Problems]
In order to solve the above problems, the invention described in
A communication terminal that synthesizes voice data received from the other communication terminal and input voice data while transmitting and receiving voice data to and from another communication terminal connected via a communication line, and reproduces the synthesized voice as synthesized voice ( For example, in the actor terminal 20) of FIG.
Creation means for creating voice communication data by adding predetermined synchronization adjustment data (for example, the transmission terminal identification number and packet number in FIG. 5) to the input voice data (for example, the
It is characterized by having.
[0009]
The invention according to
A computer (for example, the
A creation function for creating voice communication data by adding predetermined synchronization adjustment data (for example, the transmission terminal identification number and the packet number in FIG. 5) to the input voice data (for example, step S240 in FIG. 16);
A receiving function (eg, steps S221 to S224 in FIG. 15) for receiving voice communication data to which synchronization adjustment data transmitted from the other communication terminal is added;
The audio data included in the audio communication data to which the synchronization adjustment data received by the receiving unit is added and the audio data included in the input audio data to which the synchronization adjustment data created by the creation unit is added, respectively, A voice synthesizing / reproducing function (FIG. 17, S251 to S254) for reproducing as a synthetic voice synchronized according to the corresponding synchronization adjustment data;
Is a program for realizing.
[0010]
According to the first or tenth aspect of the present invention, communication data in which predetermined synchronization adjustment data is added to input audio data can be created.
[0011]
And like the invention of
The communication terminal according to
Transmitting means (for example, the
Receiving means (for example, the
Reproducing means (for example, reproducing the audio data included in the communication data received by the receiving means as a synthesized voice synchronized with the audio data output from the audio input means in accordance with the synchronization adjustment data included in the communication data)
The following effects can be obtained by providing.
[0012]
That is, the voice data included in the voice communication data received from the other communication terminal and the voice data included in the input voice data to which the synchronization adjustment data created by the creation unit is added according to the corresponding synchronization adjustment data. , And can be reproduced as a synchronized synthesized voice.
[0013]
Here, as in the invention according to claim 3,
The communication terminal according to
The synchronization adjustment data includes order data,
Further comprising other data storage means (for example, an output buffer 22b in FIG. 10) for accumulating and storing the voice communication data received by the reception means;
The reproducing means may read out the voice communication data stored in the other data storage means in accordance with the order data included in the voice communication data and reproduce the voice communication data as a synthesized voice synchronized with the input voice data.
[0014]
According to the third aspect of the invention, the synthesized speech can be reproduced in a correct order regardless of the order in which the voice communication data is received.
[0015]
Also, as in the invention according to claim 4,
The communication terminal according to
The creation means includes playback condition addition means (for example, DSP22,
The reproducing unit reproduces audio data included in the audio communication data received by the receiving unit based on reproduction condition data included in the audio communication data (for example, DSP22 in FIG. 10, FIG. 15; S228). You may comprise so that it may be.
[0016]
Here, the reproduction condition data is data for specifying conditions when the reproduction means reproduces the audio data. Specifically, the reproduction condition data includes echo and reverb (reverberation), the degree of tone control, volume balance, and stereophonic conversion. And its L / R ratio.
[0017]
Therefore, according to the invention described in claim 4, each voice communication data can be processed, and the timbre, the volume, and the sound quality can be reproduced more accurately. , It is possible to generate a more suitable synthesized speech. The reproduction condition data may be data in response to a user's input instruction, or may be appropriately determined by the communication terminal according to conditions such as a reproduction place.
[0018]
Also, as in the invention according to claim 5,
In the communication terminal according to any one of
The creating means is configured to sequentially create the audio communication data by adding the synchronization adjustment data for each predetermined unit of the audio data among the input audio data (FIG. 16; S231 to S238). Is also good.
[0019]
According to the fifth aspect of the present invention, since voice communication data can be sequentially created by adding the synchronization adjustment data to the voice data for each predetermined unit, the voice communication data can be easily handled. For example, by packetizing the voice data and applying the predetermined communication line to the Internet, which is a typical IP network, it is possible to transmit and receive voice data to and from a larger number and a wider range of other devices.
[0020]
Further, as in the invention according to claim 6,
The communication terminal according to any one of
Desired communication condition data is transmitted to a server (for example, the
The transmitting means and the receiving means may be configured to transmit and receive voice communication data based on the communication address received by the inquiry means.
[0021]
Here, the desired communication condition is a condition desired by another communication terminal that transmits and receives communication data, and includes, for example, a date and time at which voice data is desired to be transmitted and received, the content thereof, and the like.
[0022]
Therefore, according to the invention described in claim 6, for example, the communication terminal of the present invention is applied to an apparatus for transmitting and receiving performance data to and from other communication terminals and realizing a real-time band performance. For example, by transmitting to the server the desired communication conditions such as the desired music, part, date and time, it is possible to find another device that satisfies the desired communication conditions.
[0023]
Also, as in the invention according to claim 7,
The communication terminal according to any one of
Encryption means (for example, CPU21 in FIG. 10, FIG. 16; S243) for encrypting voice communication data transmitted by the transmission means;
Decoding means (for example, CPU21 in FIG. 10, FIG. 15; S222) for decoding the voice communication data received by the receiving means;
May be further provided.
[0024]
According to the seventh aspect of the present invention, the communication data to be transmitted is encrypted and the received communication data is decrypted, thereby enhancing the security when performing data communication via the predetermined communication line. be able to.
[0025]
The invention according to
A communication terminal that transmits and receives data to and from another communication terminal connected via a predetermined communication line while immediately synthesizing and reproducing the data received from the other communication terminal and the input data (for example, FIG. Performer terminal 20),
Creation means for creating communication data by adding predetermined synchronization adjustment data (for example, transmission terminal identification number and packet number in FIG. 5) to input data (for example,
It is characterized by having.
[0026]
According to the eighth aspect of the invention, it is possible to create communication data in which predetermined synchronization adjustment data is added to the input audio data. Therefore, for example, the input data of the communication terminal and the input data included in the communication data received from another communication terminal via the predetermined communication line are accurately synchronized according to the corresponding synchronization adjustment data. It is possible to play back and transmit and receive communication data with other devices without being affected by the distance between the own device (the communication terminal) and the other device (other communication terminal). It is possible to immediately synthesize and reproduce.
[0027]
The invention according to claim 9 is
A communication terminal that immediately synthesizes and reproduces input data and data received from another communication terminal while transmitting and receiving data to and from another communication terminal connected to the server via the server (for example, FIG. Performer terminal 20)
It is characterized by comprising a creating means for creating communication data by adding predetermined synchronization adjustment data to input data.
[0028]
According to the ninth aspect, it is possible to create communication data in which predetermined synchronization adjustment data is added to input data. Therefore, for example, the input data of the communication terminal and the input data included in the communication data received from another communication terminal via the server are reproduced in an accurately synchronized manner according to the corresponding synchronization adjustment data. It is possible to immediately combine these data while transmitting and receiving communication data with other devices without being affected by the distance between the own device (the communication terminal) and the other device (other communication terminal). Playback. Further, since the data transmission destination of the communication terminal is only the server, even if the number of other devices (other communication terminals) increases, the burden on transmitting the communication data does not need to be increased.
[0029]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the following, a performance system to which the present invention is applied will be described as an example, but the application of the present invention is not limited to this.
[0030]
Here, the performance system is a system in which a plurality of performer terminals (communication terminals) connected via the Internet simultaneously perform a certain piece of music (that is, an ensemble) in a part assigned to each. At this time, each performer terminal participating in the ensemble outputs a ensemble sound obtained by synthesizing the performance sound of the part input by the user and the performance sound of the part input by another performer terminal. You. The parts assigned to each of the actor terminals may be different, or the same part may be assigned to a plurality of actor terminals.
[0031]
FIG. 1 is a diagram showing a configuration of a
As shown in FIG. 1, the
[0032]
The
[0033]
The
[0034]
FIG. 2 is a diagram showing the flow of data between the devices in the
[0035]
According to FIG. 2A, the
[0036]
Further, the
[0037]
On the other hand, according to FIG. 3B, at the scheduled date and time of the ensemble, the
[0038]
The
[0039]
That is, as shown in FIG. 3, when the user of the
[0040]
Further, in the present embodiment, UDP / IP is adopted as a communication protocol. That is, data communication between the
[0041]
FIG. 4 is a diagram showing a format of an IP header included in an IP packet. According to the figure, the IP header indicates the version of the compliant IP standard (ie, “6”), the priority of the IP packet, the flow label for guaranteeing the reservation of the communication band, and the size of the actual data. The payload length, the next header indicating the ID of the subsequent header, the hop limit indicating the relay limit number by the router, the source IP address and the destination device indicating the IP address of the source device (the
[0042]
FIG. 5 is a diagram showing a data configuration of actual data (payload part) included in an IP packet. FIG. 2 shows a data configuration of performance data transmitted and received between the plurality of
According to the figure, actual data included in an IP packet is composed of an instruction header and audio data.
[0043]
The instruction header includes performance data identification indicating that the IP packet is performance data for the
[0044]
Here, the transmission terminal identification number and the packet number are collectively referred to as “synchronization adjustment data”. The synchronization adjustment data is used for synthesizing the performance data synchronously as described later.
[0045]
The effect means a sound effect to be added to audio data, and includes, for example, echo and reverb (reverberation), tone control, change in volume balance, presence or absence of stereo conversion, and the like.
[0046]
The audio data is data obtained by converting a performance audio, which is an analog signal, input by a user into a digital signal by a PCM (Pulse Code Modulation) method, and data of 512 samplings per IP packet. included. That is, the performance data is exchanged between the plurality of
[0047]
FIG. 6 is a diagram showing a communication protocol stack in the
[0048]
That is, the IP packet received by the
[0049]
The performance data input by the user to the
[0050]
Here, encryption / decryption of data realized in the IP layer will be described.
Encryption means that when exchanging digital data such as documents and images over a network such as the Internet, data is converted according to a predetermined rule to prevent the data from being stolen or tampered with by a third party during communication. And make it extremely difficult to decipher. Restoring the encrypted data so that it can be decrypted is called decryption.
[0051]
In general, a "key" corresponding to a cipher table is used for encryption / decryption. There are a public key encryption method using two pairs of keys and a common key encryption method using the same key for both. . The former includes RSA, ElGamal encryption, elliptic curve encryption, and the like, and the latter includes DES, IDEA, FEAL, MISTY, and the like, which are standardized by the U.S. government. In the present embodiment, any of the above may be used.
[0052]
Next, the internal configuration of the
[0053]
FIG. 7 is a block diagram illustrating a configuration of the
According to FIG. 1, the
[0054]
The
[0055]
In addition, the
[0056]
Specifically, in the ensemble processing, when receiving the performance condition data transmitted from the
[0057]
Thereafter, the generated ensemble schedule data is stored in the ensemble schedule data storage area 13b in the
[0058]
The
[0059]
The
[0060]
FIG. 8 is a diagram showing a configuration of data stored in the performance condition
According to the figure, a performance condition and an IP address are stored in the performance condition
[0061]
FIG. 9 is a diagram showing a configuration of data stored in the ensemble schedule data storage area 13b.
According to the figure, the ensemble schedule data storage area 13b stores the ensemble schedule data, that is, the date and time at which the ensemble is scheduled, the program, and the IP address of the
[0062]
The
[0063]
FIG. 10 is a block diagram showing a configuration of the
According to the figure, the
[0064]
The
[0065]
Further, the
[0066]
Specifically, in the ensemble processing, the
[0067]
In the link establishment process, the
[0068]
Here, the connection condition includes a communication condition and an effect condition.
The communication condition is a condition for data communication between the
[0069]
The effect condition is, as described above, a condition relating to the acoustic effect on the performance voice. Specifically, the effect condition is the echo or reverb (reverberation), the degree of tone control, the volume balance, the presence or absence of stereo conversion, and the L / L The R ratio and the like correspond. The effect conditions determine the degree of echo, reverb, and tone control applied to the ensemble sound according to the assumed performance place (for example, a concert hall, an outdoor stage, a live house, or the like), or Depending on the position of each part on the assumed stage (for example, vocal in the center, guitar on the right, bass on the left, etc.), the volume balance of the sound of each part or the left / right balance when outputting as stereo sound ( L / R ratio) is determined.
[0070]
In the performance data receiving process, the
[0071]
In the performance data transmission process, the
[0072]
The
[0073]
Specifically, in the performance data receiving process, the
[0074]
In the performance data transmission process, the
[0075]
In the ensemble audio output process, the
[0076]
FIG. 11 is a diagram illustrating the concept of processing performed by the
[0077]
The performance data received by the
[0078]
The transmitting terminal identification number “A” indicates the actor terminal A, the transmitting terminal identification number “B” indicates the actor terminal B, and the transmitting terminal identification number “C” indicates the actor terminal C.
[0079]
The voice data “data Ah” is the voice data packet of the performer terminal A's own packet number “h”, and the voice data “data Bi” is the voice data packet of the packet number “i” received from the performer terminal B. The audio data “data Cj” indicates an audio data packet of the packet number “j” received from the actor terminal C, respectively.
[0080]
According to FIG. 7A, the
[0081]
Next, according to FIG. 3B, the
[0082]
For example, a predetermined effect is added to the audio data “data A0”, and stereo data having a specified L / R ratio, that is, L-channel audio data “data A0L” and right-channel audio data “data A0R” Is generated.
[0083]
Similarly, a predetermined effect is added to the audio data “data B0” and “data C0”, and the L-channel audio data “data B0L” and “data C0L” at the specified L / R ratio, and The right channel audio data “data B0R” and “data C0R” are respectively generated.
[0084]
Thus, the audio data packet subjected to the audio processing by the DSP 22 (that is, the state of FIG. 3B) is stored in the
[0085]
After that, according to FIG. 3C, the
[0086]
For example, for the packet number “0”, the audio data “data A0L”, “data B0L”, and “data C0L” are combined to generate L-channel audio data “data A0L + B0L + C0L” and the audio data “data A0R” , "Data B0R" and "data C0L" to generate R channel audio data "data A0R + B0R + C0R".
[0087]
Similarly, for the packet number “1”, the audio data “data A0L”, “data B0L” and “data C0L” are combined to generate the L-channel audio data “data A0L + B0L + C0L” and the audio data “data A0R "," data B0R "and" data C0L "are combined to generate R channel audio data" data A0R + B0R + C0R ".
[0088]
Then, the
[0089]
In FIG. 10, the
[0090]
The
[0091]
The
[0092]
The
[0093]
FIG. 12 is a diagram showing a data configuration of the
According to the figure, the
[0094]
These areas OUT [n] are associated one-to-one with the
[0095]
Specifically, in these areas OUT [m] (where m = 0, 1,... N), audio data packets are stored according to their packet numbers. That is, FIG. 2 shows a state in which audio data packets are stored one by one from the left in the figure in the order of packet numbers for each area OUT [m].
[0096]
The audio data packet stored here is data that has been subjected to predetermined acoustic processing, specifically, data that has been given a predetermined effect and has been converted into stereo. That is, FIG. 2 shows a state in which data for the L channel is stored in the upper half and data for the R channel is stored in the lower half in each area OUT [m].
[0097]
In FIG. 10, an
[0098]
The
[0099]
The sample-and-
[0100]
The A /
[0101]
The D /
[0102]
The
[0103]
The
[0104]
The
[0105]
Next, the operation of the
[0106]
FIG. 13 is a flowchart for explaining the ensemble processing. This ensemble process is a process executed by the
[0107]
According to the figure, in the
[0108]
Next, when the user inputs performance condition data including a desired song, part, date and time, etc. in accordance with the input format on the participation registration screen (step S13), the
[0109]
On the other hand, in the
[0110]
Next, the
[0111]
When searching for data that matches the performance conditions, the
[0112]
Although not shown, in step S16, if data conforming to the received performance condition data is not stored in the performance condition
[0113]
The
[0114]
Then, in the
[0115]
Thereafter, the
[0116]
The link establishment process executed in step S21 of FIG. 13 will be described. FIG. 14 is a flowchart for explaining the link establishment processing. This link establishment process is a process executed in step S21 of FIG. 13 as described above, and is executed by the
[0117]
According to the figure, in the
[0118]
As a result of the collation, if it is determined that agreement with the connection condition presented from the
[0119]
Then, the contents selected from these alternatives are presented to the
[0120]
If agreement is obtained as a result of the re-matching of the connection conditions (step S212: YES), the
Thereafter, the
[0121]
Next, the performance processing executed in step S23 of FIG. 13 will be described.
In this performance process, the
[0122]
FIG. 15 is a flowchart for explaining the performance data receiving process. The performance data receiving process is executed by the
[0123]
According to the figure, in the
[0124]
Thereafter, the
[0125]
If it is determined in step S225 that the end of this process is instructed (step S225: YES), the
[0126]
On the other hand, when the voice data packet is input from the CPU 21 (step S226), the
[0127]
Next, the
[0128]
Specifically, as described with reference to FIG. 12, effects such as echo, reverb, and tone control are added at a specified degree, and then stereo is formed at a specified L / R ratio. Then, the data is stored in the area OUT corresponding to the
[0129]
Thereafter, the
[0130]
FIG. 16 is a flowchart for explaining performance data transmission processing. This performance data transmission processing is executed by the
[0131]
According to the figure, when a predetermined sampling period elapses after the present process is started in the actor terminal 20 (step S231: YES), the
[0132]
Here, the sampling period is a sampling frequency for converting a performance sound, which is an analog signal, into a digital signal, and is included in the connection conditions agreed in step S212 in FIG.
[0133]
Next, the
[0134]
As described above, the audio data is repeatedly taken in every sampling period, and when it is determined that the audio data of one packet, that is, 512 samples has been taken (step S234: YES), the
[0135]
That is, as described with reference to FIG. 12, effects such as echo, reverb, tone control, etc. are added to one packet of audio data in accordance with the effect conditions included in the connection conditions previously agreed, Stereo with the L / R ratio set.
[0136]
Also, the
[0137]
Thereafter, the
[0138]
On the other hand, when the audio data packet is input from the DSP 22 (step S239), the
[0139]
Next, the
[0140]
Thereafter, the
[0141]
As a result of the determination, if there is any (step S245: YES), the
[0142]
If it is determined in step S245 that an IP packet including the audio data has been transmitted to all
[0143]
As a result of the determination, if the end has not been instructed (step S246: NO), the
[0144]
FIG. 17 is a flowchart for explaining the ensemble audio output process. This ensemble audio output process is executed by the
[0145]
According to the figure, when a predetermined reproduction sampling period elapses after the present processing is started in the actor terminal 20 (step S251: YES), the
[0146]
Here, the reproduction sampling period is a time required to reproduce one packet of audio data (that is, 512 samplings), and specifically, corresponds to 512 times the sampling period.
[0147]
Next, the
[0148]
After that, the
[0149]
Then, the
[0150]
If it is determined in step S255 that the end of this process has been instructed (step S255: YES), the
[0151]
As described above, when all three processes (performance data reception process, performance data transmission process, and ensemble sound output process) performed in parallel at the
[0152]
With the above-described configuration, in each of the plurality of
[0153]
Further, by transmitting the performance sound data input to the
[0154]
It should be noted that the present invention is not limited to the above embodiment, and can be appropriately changed without departing from the spirit of the present invention. For example, transmission and reception of performance data between the
[0155]
That is, as shown in FIG. 18, each
[0156]
Therefore, the destination of the performance data by the
[0157]
At this time, the
[0158]
Further, in the above embodiment, the number of users of each
[0159]
【The invention's effect】
According to the first or tenth aspect of the present invention, communication data in which predetermined synchronization adjustment data is added to input audio data can be created.
[0160]
According to the second aspect of the present invention, the voice data included in the voice communication data received from another communication terminal and the voice data included in the input voice data to which the synchronization adjustment data created by the creating unit is added are included. Can be reproduced as synchronized synthesized voices according to the corresponding synchronization adjustment data.
[0161]
According to the third aspect of the invention, the synthesized speech can be reproduced in the correct order regardless of the order in which the voice communication data is received.
[0162]
According to the fourth aspect of the present invention, it is possible to process each voice communication data and reproduce the timbre / volume / sound quality more accurately, and more suitable according to a place to be reproduced. Synthesized speech can be generated.
[0163]
According to the fifth aspect of the present invention, since the voice communication data can be sequentially created by adding the synchronization adjustment data to the voice data for each predetermined unit, the voice communication data can be easily handled.
[0164]
According to the sixth aspect of the present invention, for example, if the communication terminal of the present invention is applied to a device that transmits and receives performance data to and from another communication terminal and realizes a real-time band performance, By transmitting, to the server, conditions such as a desired song, part, date and time, etc., as communication conditions, it is possible to find another device that satisfies the desired communication conditions.
[0165]
According to the seventh aspect of the present invention, the communication data to be transmitted is encrypted, and the received communication data is decrypted, so that the security at the time of performing the data communication through the predetermined communication line is enhanced. Can be.
[0166]
According to the eighth and ninth aspects of the invention, it is possible to create communication data in which predetermined synchronization adjustment data is added to input audio data.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a performance system according to the present embodiment.
FIG. 2 is a diagram showing a data flow in the performance system.
FIG. 3 is a diagram showing the concept of the present embodiment.
FIG. 4 is a diagram showing a format of an IP header of an IP packet.
FIG. 5 is a diagram showing a configuration of actual data of an IP packet.
FIG. 6 is a diagram showing a communication protocol in the performance system.
FIG. 7 is a block diagram illustrating an internal configuration of a management server.
FIG. 8 is a diagram showing a data configuration of a performance condition data storage area.
FIG. 9 is a diagram showing a data configuration of an ensemble schedule data storage area.
FIG. 10 is a block diagram showing an internal configuration of an actor terminal.
FIG. 11 is a diagram showing an outline of processing for performance data.
FIG. 12 is a diagram showing a data configuration of a performance data buffer.
FIG. 13 is a flowchart for explaining ensemble processing.
FIG. 14 is a flowchart illustrating a link establishment process.
FIG. 15 is a flowchart for explaining performance data reception processing.
FIG. 16 is a flowchart for explaining performance data transmission processing.
FIG. 17 is a flowchart illustrating ensemble audio output processing.
FIG. 18 is a diagram showing a modification of the present embodiment.
[Explanation of symbols]
1 Performance system
10 Management server
11 CPU
12 Storage device
12a ensemble program
13 RAM
13a Performance condition data storage area
13b ensemble schedule data storage area
14 communication devices
20 Performer terminal
21 CPU
22 DSP
23 Storage
23a ensemble program
23b Link establishment program
23c Performance data receiving program
23d Performance data transmission program
23e ensemble audio output program
24 RAM
24a input buffer
24b Performance data buffer
25 Input device
26 Multiplexer
27 Sample hold circuit
28 A / D conversion circuit
29 D / A conversion circuit
30 amplifier
31 Display drive circuit
32 display device
33 Communication device
N Internet
Claims (10)
入力音声データに、予め定められている同期調整データを付加して音声通信データを作成する作成手段
を備えることを特徴とする通信端末。A communication terminal that transmits and receives voice data to and from another communication terminal connected via a communication line, synthesizes voice data received from the other communication terminal with input voice data, and reproduces the synthesized voice as synthesized voice. So,
A communication terminal, comprising: a creating unit that creates voice communication data by adding predetermined synchronization adjustment data to input voice data.
前記他の通信端末から送信された同期調整データが付加された音声通信データを受信する受信手段と、
この受信手段により受信された同期調整データが付加された音声通信データに含まれる音声データと前記作成手段により作成された同期調整データが付加された入力音声データに含まれる音声データとを、それぞれに対応する同期調整データに従って、同期した合成音声として再生する再生手段と
を備えることを特徴とする請求項1に記載の通信端末。Transmission means for transmitting voice communication data to which the synchronization adjustment data created by the creation means is added,
Receiving means for receiving voice communication data to which the synchronization adjustment data transmitted from the other communication terminal has been added,
The audio data included in the audio communication data to which the synchronization adjustment data received by the receiving unit is added and the audio data included in the input audio data to which the synchronization adjustment data created by the creation unit is added, respectively, 2. The communication terminal according to claim 1, further comprising: a reproducing unit configured to reproduce a synthesized voice synchronized according to the corresponding synchronization adjustment data.
前記受信手段により受信された音声通信データを蓄積記憶する他データ記憶手段を更に備え、
前記再生手段は、前記他データ記憶手段に記憶された音声通信データを、その音声通信データに含まれる順序データに従って読み出し、前記入力された音声データと共に同期した合成音声として再生することを特徴とする請求項2に記載の通信端末。The synchronization adjustment data includes order data,
Further comprising other data storage means for storing and storing the voice communication data received by the receiving means,
The reproducing means reads out the voice communication data stored in the other data storage means in accordance with the order data included in the voice communication data, and reproduces the voice communication data as a synthesized voice synchronized with the input voice data. The communication terminal according to claim 2.
前記再生手段は、前記受信手段により受信された音声通信データに含まれる音声データを、その音声通信データに含まれる再生条件データに基づいて再生することを特徴とする請求項2又は3に記載の通信端末。The creating means has a playback condition adding means for further adding a playback condition to the voice communication data to be created,
4. The apparatus according to claim 2, wherein the reproducing unit reproduces audio data included in the audio communication data received by the receiving unit based on reproduction condition data included in the audio communication data. 5. Communication terminal.
この照会手段により受信された通信アドレスを基にして、前記送信手段および前記受信手段が、音声通信データの送信及び受信を行うことを特徴とする請求項2〜5の何れか一項に記載の通信端末。Inquiring means for transmitting desired communication condition data to a server connected via the predetermined communication line and receiving a communication address of another communication terminal that has transmitted the desired communication condition data matching the desired communication condition data. In addition,
The said transmission means and the said reception means perform transmission and reception of voice communication data based on the communication address received by this inquiry means, The claim of any one of Claims 2-5 characterized by the above-mentioned. Communication terminal.
前記受信手段が受信した音声通信データを復号する復号化手段と、
を更に備えることを特徴とする請求項2〜6の何れか一項に記載の通信端末。Encryption means for encrypting voice communication data transmitted by the transmission means,
Decoding means for decoding the voice communication data received by the receiving means,
The communication terminal according to any one of claims 2 to 6, further comprising:
入力データに予め定められた同期調整データを付加して通信データを作成する作成手段、
を備えることを特徴とする通信端末。A communication terminal that transmits and receives data to and from another communication terminal connected via a predetermined communication line while immediately synthesizing and reproducing data received from the other communication terminal and input data,
Creation means for creating communication data by adding predetermined synchronization adjustment data to input data,
A communication terminal comprising:
入力データに予め定められた同期調整データを付加して通信データを作成する作成手段
を備えることを特徴とする通信端末。A communication terminal for immediately synthesizing and reproducing input data and data received from another communication terminal while transmitting and receiving data to and from another communication terminal connected to the server via a server,
A communication terminal, comprising: a creating unit that creates communication data by adding predetermined synchronization adjustment data to input data.
入力された音声データに予め定められた同期調整データを付加して音声通信データを作成する作成機能と、
前記他の通信端末から送信された同期調整データが付加された音声通信データを受信する受信機能と、
この受信機能により受信された同期調整データが付加された音声通信データに含まれる音声データと前記作成機能により作成された同期調整データが付加された入力音声データに含まれる音声データとを、それぞれに対応する同期調整データに従って、同期した合成音声として再生する音声合成再生機能と、
を実現させるためのプログラム。A computer that transmits and receives voice data to and from another communication terminal connected via a predetermined communication line,
A creation function of creating voice communication data by adding predetermined synchronization adjustment data to the input voice data,
A receiving function of receiving voice communication data to which synchronization adjustment data transmitted from the other communication terminal has been added,
The audio data included in the audio communication data to which the synchronization adjustment data received by the reception function is added and the audio data included in the input audio data to which the synchronization adjustment data created by the creation function are added, respectively. A voice synthesis playback function for playing back as a synthesized voice in synchronization with the corresponding synchronization adjustment data;
The program to realize.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002255999A JP2004093975A (en) | 2002-08-30 | 2002-08-30 | Communication terminal and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002255999A JP2004093975A (en) | 2002-08-30 | 2002-08-30 | Communication terminal and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004093975A true JP2004093975A (en) | 2004-03-25 |
Family
ID=32061338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002255999A Pending JP2004093975A (en) | 2002-08-30 | 2002-08-30 | Communication terminal and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004093975A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008039870A (en) * | 2006-08-02 | 2008-02-21 | Korg Inc | Effect adding apparatus and its program |
WO2013151140A1 (en) * | 2012-04-04 | 2013-10-10 | ヤマハ株式会社 | Acoustic processing device and communication acoustic processing system |
CN112494930A (en) * | 2019-09-13 | 2021-03-16 | 史克威尔·艾尼克斯有限公司 | Recording medium, information processing apparatus, and information processing method |
KR20210080834A (en) * | 2019-12-23 | 2021-07-01 | 미디어스코프 주식회사 | Method for serving on line singing room and computing device for executing the method |
-
2002
- 2002-08-30 JP JP2002255999A patent/JP2004093975A/en active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008039870A (en) * | 2006-08-02 | 2008-02-21 | Korg Inc | Effect adding apparatus and its program |
WO2013151140A1 (en) * | 2012-04-04 | 2013-10-10 | ヤマハ株式会社 | Acoustic processing device and communication acoustic processing system |
JP2013217953A (en) * | 2012-04-04 | 2013-10-24 | Yamaha Corp | Acoustic processor and communication acoustic processing system |
CN112494930A (en) * | 2019-09-13 | 2021-03-16 | 史克威尔·艾尼克斯有限公司 | Recording medium, information processing apparatus, and information processing method |
JP2021041081A (en) * | 2019-09-13 | 2021-03-18 | 株式会社スクウェア・エニックス | Program, information processing device, information processing system and method |
US11478710B2 (en) | 2019-09-13 | 2022-10-25 | Square Enix Co., Ltd. | Information processing device, method and medium |
JP7181173B2 (en) | 2019-09-13 | 2022-11-30 | 株式会社スクウェア・エニックス | Program, information processing device, information processing system and method |
CN112494930B (en) * | 2019-09-13 | 2024-06-11 | 史克威尔·艾尼克斯有限公司 | Recording medium, information processing apparatus, and information processing method |
KR20210080834A (en) * | 2019-12-23 | 2021-07-01 | 미디어스코프 주식회사 | Method for serving on line singing room and computing device for executing the method |
KR102364416B1 (en) * | 2019-12-23 | 2022-02-17 | 미디어스코프 주식회사 | Method for serving on line singing room and computing device for executing the method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rottondi et al. | An overview on networked music performance technologies | |
US5883957A (en) | Methods and apparatus for encrypting and decrypting MIDI files | |
JP4423790B2 (en) | Demonstration system, demonstration method via network | |
JP3242028B2 (en) | Data transmission / reception method and system | |
JP2009535988A (en) | System and method for processing data signals | |
US20080201424A1 (en) | Method and apparatus for a virtual concert utilizing audio collaboration via a global computer network | |
Carôt et al. | Network music performance-problems, approaches and perspectives | |
JP2002537584A (en) | Audio synthesis using digital sampling of encoded waveforms | |
JP5729393B2 (en) | Performance system | |
JP2006215460A (en) | Karaoke sound transmitting and receiving system and method therefor | |
JP2003255935A (en) | Reproduction switching device and program | |
JP2004093975A (en) | Communication terminal and program | |
US6525253B1 (en) | Transmission of musical tone information | |
JP2004094683A (en) | Server, communication method, and spectator terminal | |
JP4422656B2 (en) | Remote multi-point concert system using network | |
JP2009031357A (en) | Music piece distribution system, music piece editing device, music piece playback device, music piece storage device, and program | |
JP2004094163A (en) | Network sound system and sound server | |
JP2002062884A (en) | Method and terminal for data transmission and reception, and storage medium stored with program regarding method for data transmission and reception | |
JPH11284588A (en) | Communication device, communication method and recording medium program with program recorded therein | |
JP3271572B2 (en) | Communication method of musical information, communication device, and medium recording program | |
JP2003085068A (en) | Live information providing server, information communication terminal, live information providing system and live information providing method | |
JP4131678B2 (en) | Performance data communication system | |
Kleimola | Latency issues in distributed musical performance | |
JP5663842B2 (en) | Sound effect system | |
US9681230B2 (en) | Acoustic system, output device, and acoustic system control method |