JP2014048504A - セッション装置、方法及びプログラム - Google Patents
セッション装置、方法及びプログラム Download PDFInfo
- Publication number
- JP2014048504A JP2014048504A JP2012191910A JP2012191910A JP2014048504A JP 2014048504 A JP2014048504 A JP 2014048504A JP 2012191910 A JP2012191910 A JP 2012191910A JP 2012191910 A JP2012191910 A JP 2012191910A JP 2014048504 A JP2014048504 A JP 2014048504A
- Authority
- JP
- Japan
- Prior art keywords
- sound generation
- session
- sound
- generation instruction
- delay time
- 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)
Abstract
【課題】他のセッション装置とリアルタイムにセッションができるセッション装置を提供する。
【解決手段】セッション装置2が有する送信側の端末20が備えるCPUは、他のセッション装置2が有する受信側の端末20に対して通信を行った場合の遅延時間を判定し、演奏操作子40による発音指示タイミングを予測し、当該判定された遅延時間と、当該予測された発音指示タイミングと、に基づいて、他のセッション装置2に予測音の出音指示情報を送信する。したがって、セッション装置2は、他のセッション装置2に対する送信遅延時間を考慮して、出音指示情報を先出しすることができるので、リアルタイムでセッションを行うことができる。
【選択図】図1
【解決手段】セッション装置2が有する送信側の端末20が備えるCPUは、他のセッション装置2が有する受信側の端末20に対して通信を行った場合の遅延時間を判定し、演奏操作子40による発音指示タイミングを予測し、当該判定された遅延時間と、当該予測された発音指示タイミングと、に基づいて、他のセッション装置2に予測音の出音指示情報を送信する。したがって、セッション装置2は、他のセッション装置2に対する送信遅延時間を考慮して、出音指示情報を先出しすることができるので、リアルタイムでセッションを行うことができる。
【選択図】図1
Description
本発明は、セッション装置、方法及びプログラムに関する。
従来、通信ネットワークを介して接続された他のセッション装置と、擬似的に、あたかもリアルタイムにセッションしているかのように演奏させることのできるセッション装置が知られている。例えば、特許文献1には、他のセッション装置と同時にセッションを開始しなくても他のセッション装置が演奏を開始してから所定時間(多くとも4小節の時間)経過後に、他のセッション装置と同期してセッションを行うことができるセッション装置が開示されている。
しかしながら、特許文献1に記載されたセッション装置では、他のセッション装置とリアルタイムにセッションをすることができなかった。
本発明は、このような状況に鑑みてなされたものであり、他のセッション装置とリアルタイムにセッションを行うことができるセッション装置を提供することを目的とする。
上記目的を達成するため、本発明の一態様のセッション装置は、
発音の指示を行う演奏操作子と、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定手段と、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測手段と、
前記遅延時間判定手段により判定された前記遅延時間と、前記発音指示タイミング予測手段により予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信手段と、
を備えたことを特徴とする。
発音の指示を行う演奏操作子と、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定手段と、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測手段と、
前記遅延時間判定手段により判定された前記遅延時間と、前記発音指示タイミング予測手段により予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信手段と、
を備えたことを特徴とする。
本発明によれば、他のセッション装置に対する送信遅延時間を考慮して、発音指示情報を先出しして送信することができるので、リアルタイムでセッションを行うことができる。
以下、本発明の実施形態について、図面を用いて説明する。
[セッションシステム1の概要]
初めに、図1を参照して、本発明の一実施形態としてのセッションシステム1の概要について説明する。
図1に示すように、本実施形態のセッションシステム1は、複数のセッション装置2、を含んで構成される。複数のセッション装置2は、互いに通信ネットワーク30を介して接続されて、互いにデータの送受信を行う。即ち、複数のセッション装置2は、いずれも、送信側及び受信側の両方の処理を実行することができる。
初めに、図1を参照して、本発明の一実施形態としてのセッションシステム1の概要について説明する。
図1に示すように、本実施形態のセッションシステム1は、複数のセッション装置2、を含んで構成される。複数のセッション装置2は、互いに通信ネットワーク30を介して接続されて、互いにデータの送受信を行う。即ち、複数のセッション装置2は、いずれも、送信側及び受信側の両方の処理を実行することができる。
セッション装置2は、電子楽器10、端末20、演奏操作子40及び加速度センサ50を含んで構成される。電子楽器10は、電子ギターなどの弦17を有する楽器である。演奏操作子40は、演奏者に保持されるピックであり、静電容量の高い素材により構成される。また、加速度センサ50は、演奏者の体の一部、例えば腕や手首、足、腰など、演奏に際して動作が生じる部分に取り付けられ、演奏者の演奏動作による加速度を検出する。例えば、電子楽器10がギターの場合、演奏者の腕に取り付けられた加速度センサ50によって、演奏に際しての腕の振りの加速度を検出する。電子楽器10には、図2で後述する静電センサ15が取り付けられており、静電センサ15と演奏操作子40とに基づいて、演奏操作子40の位置(弦17からの距離)が検出され、当該位置に基づいて演奏操作子40の速度、発音タイミング(発音されるまでの時間)が算出される。さらに、電子楽器10と、端末20とは、無線通信により通信可能に構成されている。
なお、演奏操作子40の位置の検出については、静電センサ15に限られず、赤外線センサや磁気センサを用いてもよい。また、画像を撮像するカメラを設けて、当該カメラの撮像画像に基づいて、演奏操作子40の位置を検出し、検出した位置に基づいて演奏操作子40の速度、発音タイミングが算出されてもよい。
[電子楽器10の構成]
図2は、電子楽器10のハードウェア構成を示すブロック図である。
図2に示すように、電子楽器10は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、押弦検出センサ14と、静電センサ15と、データ通信部16と、を含んで構成される。
図2は、電子楽器10のハードウェア構成を示すブロック図である。
図2に示すように、電子楽器10は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、押弦検出センサ14と、静電センサ15と、データ通信部16と、を含んで構成される。
CPU11は、電子楽器10全体の制御を実行し、例えば、押弦検出センサ14から出力されるセンサ値に基づいて、電子楽器10が発音する音の発音情報を作成し、後述するデータ通信部16を介して、端末20に送信する制御などを実行する。
ROM12は、CPU11により各種処理が実行されるための処理プログラムを格納する。RAM13は、押弦検出センサ14が出力した各種センサ値など、処理において取得され又は生成された値を格納する。
ROM12は、CPU11により各種処理が実行されるための処理プログラムを格納する。RAM13は、押弦検出センサ14が出力した各種センサ値など、処理において取得され又は生成された値を格納する。
押弦検出センサ14は、演奏者により電子楽器10が有する複数の弦17のうち、どの弦のどの位置が押弦されているかを検出する。
静電センサ15は、演奏操作子40と電子楽器10との距離に応じた電圧値を出力する。
データ通信部16は、少なくとも端末20との間で所定の無線通信を行う。所定の無線通信は、赤外線通信、ブルートゥース、IEEE802等任意の方法で行うこととしてよい。なお、データ通信部16は、端末20との間で有線による通信を行ってもよい。
静電センサ15は、演奏操作子40と電子楽器10との距離に応じた電圧値を出力する。
データ通信部16は、少なくとも端末20との間で所定の無線通信を行う。所定の無線通信は、赤外線通信、ブルートゥース、IEEE802等任意の方法で行うこととしてよい。なお、データ通信部16は、端末20との間で有線による通信を行ってもよい。
[端末20の構成]
図3を参照して、端末20の構成について説明する。
図3は、端末20のハードウェア構成を示すブロック図である。
端末20は、CPU21と、ROM22と、RAM23と、音源装置24と、データ通信部25と、を含んで構成される。
図3を参照して、端末20の構成について説明する。
図3は、端末20のハードウェア構成を示すブロック図である。
端末20は、CPU21と、ROM22と、RAM23と、音源装置24と、データ通信部25と、を含んで構成される。
CPU21は、端末20全体の制御を実行し、例えば、電子楽器10から受信した静電センサ15のセンサ出力値に基づいて、演奏操作子40の位置、速度及び発音タイミングを算出する制御などを実行する。また、CPU21は、データ通信部25を介して、電子楽器10との間の通信制御を実行する。
ROM22は、CPU21の実行する各種処理の処理プログラムを格納する。また、ROM22は、種々の音高の波形データ、例えば、電子楽器10の複数の弦17の夫々の押弦位置に対応する音高の波形データ等を格納する。
RAM23は、電子楽器10から受信した静電センサ15のセンサ出力値など、処理において取得され又は生成された値を格納する。
音源装置24は、CPU21からの指示にしたがって、ROM22から波形データを読み出して、楽音データを生成すると共に、楽音データをアナログ信号に変換し、図示しないスピーカから楽音を発音する。
また、データ通信部25は、電子楽器10との間で所定の無線通信(例えば、赤外線通信、ブルートゥース、IEEE802等)を行う。なお、データ通信部25は、電子楽器10との間で有線による通信を行っても良い。
また、データ通信部25は、電子楽器10との間で所定の無線通信(例えば、赤外線通信、ブルートゥース、IEEE802等)を行う。なお、データ通信部25は、電子楽器10との間で有線による通信を行っても良い。
次に、端末20の処理について説明する。
図4は、送信側の端末20の処理(以下、「送信側端末処理」と呼ぶ)を示すフローチャートである。
図7は、受信側の端末20の処理(以下、「受信側端末処理」と呼ぶ)を示すフローチャートである。
以下、初めに図4を参照して送信側端末処理について、次に図7を参照して受信側端末処理について、その順番に個別に説明する。
[送信側の端末20の処理(送信側端末処理)]
送信端末処理の動作主体は、送信側の端末20のCPU21となる。ただし、説明の簡略上、本処理の説明においては、特に断りのない限り、送信側の端末20のCPU21を、単に「CPU21」と呼ぶ。
図4は、送信側の端末20の処理(以下、「送信側端末処理」と呼ぶ)を示すフローチャートである。
図7は、受信側の端末20の処理(以下、「受信側端末処理」と呼ぶ)を示すフローチャートである。
以下、初めに図4を参照して送信側端末処理について、次に図7を参照して受信側端末処理について、その順番に個別に説明する。
[送信側の端末20の処理(送信側端末処理)]
送信端末処理の動作主体は、送信側の端末20のCPU21となる。ただし、説明の簡略上、本処理の説明においては、特に断りのない限り、送信側の端末20のCPU21を、単に「CPU21」と呼ぶ。
ステップS11において、CPU21は、受信側の端末20との遅延時間を算出する。具体的には、CPU21は、Ping(Packet Internet Groper)コマンドを、受信側の端末20に送信することにより、当該遅延時間を算出する。
ステップS12において、CPU21は、ステップS11で算出した受信側の端末20との遅延時間をRAM23に記憶する。受信側の端末20が複数ある場合には、CPU21は、夫々の端末20に対応させて各遅延時間を夫々記憶する。
ステップS13において、CPU21は、リアルタイムセッション処理を開始する。リアルタイムセッション処理を開始するトリガーとしては、例えば、送信側の端末20が備える演奏開始スイッチ(図示せず)が押下されたことを、CPU21が検出した場合などである。なお、当該トリガーとしては、受信側の端末20が備える演奏開始スイッチ(図示せず)が押下されたことに応じて、CPU21が、受信側の端末20からセッション開始信号を受信した場合などであってもよい。
ステップS14において、CPU21は、演奏操作子40の1時点における位置と時間を検出して、RAM23に記憶する。ここで、演奏操作子40の位置とは、ステップS14での検出タイミングにおける演奏操作子40の弦17からの距離である。また、演奏操作子40の時間とは、ステップS14での検出タイミングに相当する時間であって、当該検出タイミングの時刻、又は、ステップS13においてリアルタイムセッション処理が開始されてから当該検出タイミングに至るまでの経過時間等である。
よって、演奏操作子40の位置及び時間は一対一対応で検出される。さらに、当該位置である演奏操作子40の弦17からの距離は、静電センサ15の出力値に基づいて検出される。
なお、このステップS14では、CPU21は、演奏操作子40の位置と時間を一時点において検出するので、後述のステップS14〜S21のループ処理(以下、単に「ループ処理」と呼ぶ)が繰り返されてステップS14の処理が複数回実行された場合には、当該位置及び時間は、実行された処理の回数分検出されて、RAM23に記憶される。
よって、演奏操作子40の位置及び時間は一対一対応で検出される。さらに、当該位置である演奏操作子40の弦17からの距離は、静電センサ15の出力値に基づいて検出される。
なお、このステップS14では、CPU21は、演奏操作子40の位置と時間を一時点において検出するので、後述のステップS14〜S21のループ処理(以下、単に「ループ処理」と呼ぶ)が繰り返されてステップS14の処理が複数回実行された場合には、当該位置及び時間は、実行された処理の回数分検出されて、RAM23に記憶される。
静電センサの出力電圧値と演奏操作子40の弦17からの距離との関係の一例を図5に示す。この例では、当該距離と当該出力電圧値とは反比例の関係にあり、当該距離が大きいほど当該出力電圧値は低くなる。
ステップS15において、CPU21は、例えば直近2時点の演奏操作子40の位置及び時間に基づいて、演奏操作子40の速度を算出する。
具体的には例えば、CPU21は、直近のステップS14においてRAM23に記憶された演奏操作子40の位置及び時間を、直近の演奏操作子40の位置及び時間として取得すると共に、前回のループ処理のステップS14においてRAM23に記憶された演奏操作子40の位置及び時間を、直近の1つ前の演奏操作子40の位置及び時間として取得する。そして、CPU21は、直近とその1つ前の夫々の演奏操作子40の位置の差分を、直近とその1つ前の夫々の演奏操作子40の時間の差分で除算することで、演奏操作子40の速度を算出する。
本実施形態では、演奏操作子40が弦17に近づいている場合のみを想定しているので、直近とその1つ前の夫々の演奏操作子40の位置の差分は、負の値となる。従って本実施形態では、演奏操作子40の速度は負の値となる。
なお、このステップS15では、直近2時点の演奏操作子40の位置及び時間が必要である。よって、初回のステップS15の実行時点では、直近1点のみしかRAM23に演奏操作子40の位置及び時間は記憶されていないため、速度の算出は実行されず、ステップS15の2回目以降の処理にて速度の算出は実行される。
また、このステップS15では、CPU21は、直近2時点の演奏操作子40の位置及び時間に基づいて演奏操作子40の速度を算出しているが、これに限られず、CPU21は、直近及びその2つ以上前(即ち、2つ前のみならず、3つ前、4つ前等でもよい)の演奏操作子40の位置及び時間に基づいて演奏操作子40の速度を算出してしてもよい。
さらに、CPU21は、直近及びその1つ前の演奏操作子40の位置及び時間と、直近の1つ前及びその1つ前の演奏操作子40の位置及び時間と、直近の2つ前及びその1つ前の演奏操作子40の位置及び時間と、に基づいて、演奏操作子40の速度を3つ算出し、これらの平均値を算出してもよい。さらにまた、平均値が算出される演奏操作子40の速度の個数は3つに限定されず、CPU21は、直近の(n−1)個前及び直近のn個前(ただし、n=1,2,…,n)の演奏操作子40の位置及び時間に基づいて、n個の演奏操作子40の速度を算出し、これらの平均値を算出してもよい。ただし、n=1の場合での直近の0個前とは、単に直近のことを指す。
なお、n個の演奏操作子40の速度が算出される場合、演奏操作子40の位置及び時間のデータは、RAM23に少なくとも(n+1)個記憶されていなければならないので、ステップS15の実行回数(ループ処理の繰り返し回数)が(n+1)回以上の場合に、n個の演奏操作子40の速度の算出が行われる。
ここで、直近2時点のデータのみから速度が算出されると、算出に要する時間が短くて済む(即時性が高まる)一方で、誤りが引き起こされ易い(突発的なノイズのような一瞬の動きが検出されて、演奏操作子40の速度が誤って計算されてしまうおそれがある)。これに対して、直近3時点以上のデータを用いて速度が算出されると、比較的安定して演奏操作子40の速度が算出されるので、速度の算出における誤りが引き起こされにくくできる。
具体的には例えば、CPU21は、直近のステップS14においてRAM23に記憶された演奏操作子40の位置及び時間を、直近の演奏操作子40の位置及び時間として取得すると共に、前回のループ処理のステップS14においてRAM23に記憶された演奏操作子40の位置及び時間を、直近の1つ前の演奏操作子40の位置及び時間として取得する。そして、CPU21は、直近とその1つ前の夫々の演奏操作子40の位置の差分を、直近とその1つ前の夫々の演奏操作子40の時間の差分で除算することで、演奏操作子40の速度を算出する。
本実施形態では、演奏操作子40が弦17に近づいている場合のみを想定しているので、直近とその1つ前の夫々の演奏操作子40の位置の差分は、負の値となる。従って本実施形態では、演奏操作子40の速度は負の値となる。
なお、このステップS15では、直近2時点の演奏操作子40の位置及び時間が必要である。よって、初回のステップS15の実行時点では、直近1点のみしかRAM23に演奏操作子40の位置及び時間は記憶されていないため、速度の算出は実行されず、ステップS15の2回目以降の処理にて速度の算出は実行される。
また、このステップS15では、CPU21は、直近2時点の演奏操作子40の位置及び時間に基づいて演奏操作子40の速度を算出しているが、これに限られず、CPU21は、直近及びその2つ以上前(即ち、2つ前のみならず、3つ前、4つ前等でもよい)の演奏操作子40の位置及び時間に基づいて演奏操作子40の速度を算出してしてもよい。
さらに、CPU21は、直近及びその1つ前の演奏操作子40の位置及び時間と、直近の1つ前及びその1つ前の演奏操作子40の位置及び時間と、直近の2つ前及びその1つ前の演奏操作子40の位置及び時間と、に基づいて、演奏操作子40の速度を3つ算出し、これらの平均値を算出してもよい。さらにまた、平均値が算出される演奏操作子40の速度の個数は3つに限定されず、CPU21は、直近の(n−1)個前及び直近のn個前(ただし、n=1,2,…,n)の演奏操作子40の位置及び時間に基づいて、n個の演奏操作子40の速度を算出し、これらの平均値を算出してもよい。ただし、n=1の場合での直近の0個前とは、単に直近のことを指す。
なお、n個の演奏操作子40の速度が算出される場合、演奏操作子40の位置及び時間のデータは、RAM23に少なくとも(n+1)個記憶されていなければならないので、ステップS15の実行回数(ループ処理の繰り返し回数)が(n+1)回以上の場合に、n個の演奏操作子40の速度の算出が行われる。
ここで、直近2時点のデータのみから速度が算出されると、算出に要する時間が短くて済む(即時性が高まる)一方で、誤りが引き起こされ易い(突発的なノイズのような一瞬の動きが検出されて、演奏操作子40の速度が誤って計算されてしまうおそれがある)。これに対して、直近3時点以上のデータを用いて速度が算出されると、比較的安定して演奏操作子40の速度が算出されるので、速度の算出における誤りが引き起こされにくくできる。
ステップS16において、CPU21は、演奏操作子40の現在の位置と、速度とから、実際の出音までの予測時間を算出する。具体的には、ステップS15において算出された速度と、その速度が算出された時点での演奏操作子40の位置(演奏操作子40の弦17からの距離)とに基づいて、実際の出音までの予測時間を算出する。例えば、図6に示すように、演奏操作子40の位置を、演奏操作子40の速度の大きさで除算することで実際の出音までの予測時間が算出される。
なお、ステップS15で算出された速度は、負の値であるため、当該速度の大きさ(絶対値)に基づいて当該予測時間は算出される。
なお、ステップS15で算出された速度は、負の値であるため、当該速度の大きさ(絶対値)に基づいて当該予測時間は算出される。
ステップS17において、CPU21は、出音が予測されるか否かを判断する。具体的には、CPU21は、ステップS16において算出した、実際の出音までの予測時間が、ステップS12においてRAM23に記憶された受信側の端末20との遅延時間以下になった最初のタイミングで、出音が予測されると判断する。したがって、1回の演奏動作において、当該予測時間が当該遅延時間以下になる最初のタイミングは、1度しかない。よって、当該1回の演奏動作において、ステップS17の判断がYESとなる回数は1回である。
したがって、当該1回以外の場合、即ち、ステップS17での判断がNOの場合、処理はステップS20に移行する。この場合、後述のステップS19の予測音の出音指示情報が送信されないので、受信側の端末20は実際の発音はしない(後述の図7のステップS32NO)。
そして、ステップS17での判断がYESになると、CPU21は、処理をステップS18に移行させる。
ステップS18において、CPU21は、弦17の押弦状況、演奏操作子40の速度及び加速度等から、実際に演奏者が演奏しようとしている音の音高及び音量を予測する。具体的には、CPU21は、演奏操作子40の速度に基づいて、演奏者がどの位の強さで弦を弾こうとしているかを検出して、出音する音量を予測する。更に、CPU21は、押弦検出センサ14が検出した弦17の押弦状況に基づいて、各弦を弾いた場合の出音する音高を決定する。
ステップS18において、CPU21は、弦17の押弦状況、演奏操作子40の速度及び加速度等から、実際に演奏者が演奏しようとしている音の音高及び音量を予測する。具体的には、CPU21は、演奏操作子40の速度に基づいて、演奏者がどの位の強さで弦を弾こうとしているかを検出して、出音する音量を予測する。更に、CPU21は、押弦検出センサ14が検出した弦17の押弦状況に基づいて、各弦を弾いた場合の出音する音高を決定する。
また、CPU21は、演奏者に取り付けられた加速度センサ50が検出した加速度をデータ通信部25を介して受信し、受信した加速度に基づいて、演奏者がこれから演奏しようとする音の奏法等を判別する。例えば、電子楽器10がギターの場合、CPU21は、演奏者の腕に取り付けられた加速度センサ50の出力に応じて演奏者の腕の振り方の情報を取得し、これにより全ての弦17を鳴らすコードストロークか、一つの弦17を鳴らす単弦弾きかを判断する。この場合には、例えば、所定の閾値を設定しておき、CPU21は、当該加速度がその閾値を上回ったと判断した場合、コードストロークと判断する。
また、単に閾値のみで判断をするのではなく、電子楽器10における直近の奏法(コードストローク又は単弦弾き)をRAM23に記憶しておき、加速度センサ50が検出した加速度が、当該所定の閾値の近傍の値である場合には、直近の奏法が優先されるようにしてもよい。例えば、加速度センサ50が検出した加速度が当該所定の閾値を上回った場合であっても、当該所定の閾値の近傍の値である場合で、且つ、直近の演奏パターンが単弦弾きである場合には、奏法は、コードストロークではなく単弦弾きと判断されるようにしてもよい。
この場合、演奏者は、奏法を単弦弾きからコードストロークに変更したい場合、加速度センサ50により検出される加速度が当該所定の閾値を大きく上回るように、演奏者自身の腕を振る必要がある。奏法をコードストロークから単弦弾きに変更したい場合も同様に、加速度センサ50により検出される加速度が当該所定の閾値を大きく下回るように、演奏者自身の腕を振る必要がある。
さらにまた、CPU21は、押弦検出センサ14が検出した弦17の押弦状況に基づいて、コードストロークか単弦弾きかを決定してもよい。例えば、CPU21は、複数の押弦パターンが予め格納されたテーブルを参照して、当該押弦状況に基づく押弦パターンが、当該テーブルに格納された複数の押弦パターンのいずれかに一致した場合に、コードストロークと判断して、一致しない場合に、単弦弾きと判断する。
また、単に閾値のみで判断をするのではなく、電子楽器10における直近の奏法(コードストローク又は単弦弾き)をRAM23に記憶しておき、加速度センサ50が検出した加速度が、当該所定の閾値の近傍の値である場合には、直近の奏法が優先されるようにしてもよい。例えば、加速度センサ50が検出した加速度が当該所定の閾値を上回った場合であっても、当該所定の閾値の近傍の値である場合で、且つ、直近の演奏パターンが単弦弾きである場合には、奏法は、コードストロークではなく単弦弾きと判断されるようにしてもよい。
この場合、演奏者は、奏法を単弦弾きからコードストロークに変更したい場合、加速度センサ50により検出される加速度が当該所定の閾値を大きく上回るように、演奏者自身の腕を振る必要がある。奏法をコードストロークから単弦弾きに変更したい場合も同様に、加速度センサ50により検出される加速度が当該所定の閾値を大きく下回るように、演奏者自身の腕を振る必要がある。
さらにまた、CPU21は、押弦検出センサ14が検出した弦17の押弦状況に基づいて、コードストロークか単弦弾きかを決定してもよい。例えば、CPU21は、複数の押弦パターンが予め格納されたテーブルを参照して、当該押弦状況に基づく押弦パターンが、当該テーブルに格納された複数の押弦パターンのいずれかに一致した場合に、コードストロークと判断して、一致しない場合に、単弦弾きと判断する。
ステップS19において、CPU21は、受信側の端末20(相手側端末)へ、予測音の出音指示情報を送信する。予測音の出音指示情報には、出音する音の音高、音量、音色などの情報が含まれる。
この場合、CPU21は、出音指示情報として、MIDI信号を受信側の端末20へ送信してもよいし、出音指示情報に基づいて、出音が予測された音の波形のデータを受信側の端末20へ送信してもよい。
この場合、CPU21は、出音指示情報として、MIDI信号を受信側の端末20へ送信してもよいし、出音指示情報に基づいて、出音が予測された音の波形のデータを受信側の端末20へ送信してもよい。
以上説明したステップS18及びS19の処理の実行回数は、上述したように1回の演奏動作あたりステップS17で1回だけYESと判断されるので、同様に1回である。これにより、当該1回の演奏動作における、後述するステップS19における予測音の出音指示情報の送信が複数回実行されてしまうことを防止できる。
ステップS20において、CPU21は、送信側の端末20(自端末)で、実際の発音があったか否か、即ち、実際に演奏者が弦17を弾くことにより、弦17が振動して発音したか否かを判断する。
ここで、受信側の端末20は、ステップS19で送信側の端末20から送信された予測音の出音指示情報を受信すると、予測音の出音をし、実際の演奏音の出音指示情報を一定時間待っている(後述の図7のステップS32YES〜S35)。
演奏者が弦17を弾かずに実際の発音がないと、ステップS20でNOであると判断されて、処理はステップS14に戻される。即ち、演奏者が弦17を弾くことで実際の発音がなされるまでは、ステップS20でNOであると判断され続けるので、後述のステップS21の処理は実行されない状態で、ループ処理が繰り返される。
従って、この間、受信側の端末20は、後述のステップS21の実際の演奏音の出音指示情報を受信することができないので、一定時間が経過した場合には(後述の図7のステップS35:YES)出音予測が誤りであったとして、出音した予測音をフェードアウト等させて停止させ(後述の図7のステップS36)、再度、予測音の出音指示情報を待つことになる(後述の図7のステップS32)。
ここで、受信側の端末20は、ステップS19で送信側の端末20から送信された予測音の出音指示情報を受信すると、予測音の出音をし、実際の演奏音の出音指示情報を一定時間待っている(後述の図7のステップS32YES〜S35)。
演奏者が弦17を弾かずに実際の発音がないと、ステップS20でNOであると判断されて、処理はステップS14に戻される。即ち、演奏者が弦17を弾くことで実際の発音がなされるまでは、ステップS20でNOであると判断され続けるので、後述のステップS21の処理は実行されない状態で、ループ処理が繰り返される。
従って、この間、受信側の端末20は、後述のステップS21の実際の演奏音の出音指示情報を受信することができないので、一定時間が経過した場合には(後述の図7のステップS35:YES)出音予測が誤りであったとして、出音した予測音をフェードアウト等させて停止させ(後述の図7のステップS36)、再度、予測音の出音指示情報を待つことになる(後述の図7のステップS32)。
これに対して、演奏者が弦17を弾くことで実際の発音がなされた場合には、ステップS20でYESであると判断されて、処理はステップS21に進む。
ステップS21において、CPU21は、受信側の端末20へ、実際の演奏音の出音指示情報を送信する。
この場合、CPU21は、出音指示情報として、演奏者が実際に演奏した音のMIDI信号を受信側の端末20へ送信してもよいし、実際に発音された音の波形のデータを受信側の端末20へ送信してもよい。
受信側の端末20は、実際の演奏音の出音指示情報を受信すると、クロスフェードで、予測音から原音に徐々に切り替える(後述の図7のステップS34YES、S37)。
ステップS21において、CPU21は、受信側の端末20へ、実際の演奏音の出音指示情報を送信する。
この場合、CPU21は、出音指示情報として、演奏者が実際に演奏した音のMIDI信号を受信側の端末20へ送信してもよいし、実際に発音された音の波形のデータを受信側の端末20へ送信してもよい。
受信側の端末20は、実際の演奏音の出音指示情報を受信すると、クロスフェードで、予測音から原音に徐々に切り替える(後述の図7のステップS34YES、S37)。
ステップS21の処理が終了すると、CPU21は、処理をステップS14に戻し、次回以降のループ処理(演奏動作についての処理)を実行する。
[受信側の端末20の処理(受信側端末処理)]
次に、このような送信側端末処理に対する受信側処理について、図7を参照して説明する。
受信側端末処理の動作主体は、受信側の端末20のCPU21となる。ただし、説明の簡略上、本処理の説明においては、特に断りのない限り、受信側の端末20のCPU21を、単に「CPU21」と呼ぶ。
次に、このような送信側端末処理に対する受信側処理について、図7を参照して説明する。
受信側端末処理の動作主体は、受信側の端末20のCPU21となる。ただし、説明の簡略上、本処理の説明においては、特に断りのない限り、受信側の端末20のCPU21を、単に「CPU21」と呼ぶ。
ステップS31において、CPU21は、リアルタイムセッション処理を開始する。リアルタイムセッション処理を開始するトリガーとしては、例えば、受信側の端末20が備える演奏開始スイッチ(図示せず)が押下されたことを、CPU21が検出した場合などである。なお、当該トリガーとしては、送信側の端末20が備える演奏開始スイッチ(図示せず)が押下されたことに応じて、CPU21が、送信側の端末20からセッション開始信号を受信した場合などであってもよい。
ステップS32において、CPU21は、送信側の端末20から予測音の出音指示情報を受信したか否かを判断する。即ち、送信側の端末20において、図4のステップS19が実行されたことによって送信された予測音の出音指示情報を受信したか否かを判断する。この判断がYESの場合、CPU21は、処理をステップS33に移行させ、NOの場合、CPU21は、処理をステップS32に移行させる。
したがって、CPU21が当該予測音の出音指示情報を受信したと判断するまでは、ステップS32においてNOと判断されるので、ステップS32の判定処理が繰り返し実行されて、受信側の端末20の処理は待機状態となる。その後、受信側の端末20が当該予測音の出音指示情報を受信することにより、CPU21は、ステップS32においてYESと判断して処理をステップS33に移行させる。
したがって、CPU21が当該予測音の出音指示情報を受信したと判断するまでは、ステップS32においてNOと判断されるので、ステップS32の判定処理が繰り返し実行されて、受信側の端末20の処理は待機状態となる。その後、受信側の端末20が当該予測音の出音指示情報を受信することにより、CPU21は、ステップS32においてYESと判断して処理をステップS33に移行させる。
ステップS33において、CPU21は、予測音を発音する。具体的には、CPU21は、出音指示情報に基づいて、送信側の端末20で出音が予測された音を発音する。
この場合、CPU21は、出音指示情報としてMIDI信号だけを受信して、受信側の端末20のROM22に記憶された波形のサンプリングデータに基づいて発音してもよいし、また、送信側の端末20から受信した音の波形を用いて発音してもよい。
この場合、CPU21は、出音指示情報としてMIDI信号だけを受信して、受信側の端末20のROM22に記憶された波形のサンプリングデータに基づいて発音してもよいし、また、送信側の端末20から受信した音の波形を用いて発音してもよい。
ステップS34において、CPU21は、送信側の端末20から実際の演奏音の出音指示情報を受信したか否かを判断する。即ち、送信側の端末20において、図4のステップS21が実行されたことによって送信された実際の演奏音の出音指示情報を受信したか否かを判断する。ステップS34における判断がYESの場合、CPU21は、処理をステップS37に移行させ、NOの場合、CPU21は、処理をステップS35に移行させて、CPU21は、一定時間経過したか否かを判断する。ステップS35における判断がYESの場合、CPU21は、処理をステップS36に移行させ、NOの場合、CPU21は、処理をステップS34に移行させる。
したがって、一定時間経過するまでの間に、CPU21が実際の演奏音の出音指示情報を受信しない場合には、ステップS34及びS35の処理が繰り返し実行され、一定時間経過後にステップS36に処理が移行される。また、一定時間経過するまでの間に、CPU21が実際の演奏音の出音指示情報を受信した場合には、ステップS34及びS35の処理が繰り返し実行されている最中にステップS34でYESと判断されて、ステップS37に処理が移行される。
したがって、一定時間経過するまでの間に、CPU21が実際の演奏音の出音指示情報を受信しない場合には、ステップS34及びS35の処理が繰り返し実行され、一定時間経過後にステップS36に処理が移行される。また、一定時間経過するまでの間に、CPU21が実際の演奏音の出音指示情報を受信した場合には、ステップS34及びS35の処理が繰り返し実行されている最中にステップS34でYESと判断されて、ステップS37に処理が移行される。
ステップS36において、CPU21は、出音した予測音をフェードアウトさせて出音を停止する。実際には、セッション装置2において、電子楽器10の発音が予測されて送信側の端末20において出音指示情報が送信された場合であっても、弦17が弾かれずに実際の音が出音されない場合がある。この場合には、ステップS36の処理が行われ、出音された予測音がフェードアウトされて出音が停止される。ステップS36の処理が終了すると、CPU21は、ステップS32に処理を移行させる。
ステップS37において、CPU21は、クロスフェード処理を行い、予測音から原音に徐々に切り替える。具体的には、CPU21は、ステップS33で発音された予測音として先出しされたサンプリング音と、遅延時間分遅れて受信した実際の演奏音の出音指示情報に基づく音と、に対してクロスフェード処理により違和感無く音を繋げることにより発音を実行する(図8参照)。
この場合、CPU21は、出音指示情報としてMIDI信号だけを受信して、受信側の端末20のROM22に記憶された波形のサンプリングデータに基づいて発音してもよいし、また、送信側の端末20から波形のデータを受信して発音してもよい。
本実施形態では、図8に示すように、クロスフェード処理が実行されることによって、予測音として先出しされた音の波形データがフェードアウトされ、さらに、遅延してきた実音の波形データがフェードインされて合成され、合成後の波形の振幅が滑らかになる。したがって、音量や音色が極端に変化することを防止できるので、自然に原音へと変化させることができる。また、最初に予測して出した音が誤っていた場合でも、自然に正しい音に変化させることができる。
ステップS37の処理が終了すると、CPU21は、ステップS32に処理を移行させる。
この場合、CPU21は、出音指示情報としてMIDI信号だけを受信して、受信側の端末20のROM22に記憶された波形のサンプリングデータに基づいて発音してもよいし、また、送信側の端末20から波形のデータを受信して発音してもよい。
本実施形態では、図8に示すように、クロスフェード処理が実行されることによって、予測音として先出しされた音の波形データがフェードアウトされ、さらに、遅延してきた実音の波形データがフェードインされて合成され、合成後の波形の振幅が滑らかになる。したがって、音量や音色が極端に変化することを防止できるので、自然に原音へと変化させることができる。また、最初に予測して出した音が誤っていた場合でも、自然に正しい音に変化させることができる。
ステップS37の処理が終了すると、CPU21は、ステップS32に処理を移行させる。
以上、本実施形態のセッション装置2の構成及び処理について説明した。
本実施形態においては、セッション装置2が有する送信側の端末20が備えるCPU21は、他のセッション装置2が有する受信側の端末20に対して通信を行った場合の遅延時間を判定し、演奏操作子40による発音タイミングを予測し、当該判定された遅延時間と、当該予測された発音タイミングと、に基づいて、他のセッション装置2に予測音の出音指示情報を送信する。
したがって、セッション装置2は、他のセッション装置2に対する送信遅延時間を考慮して、出音指示情報を先出しすることができるので、リアルタイムでセッションを行うことができる。
本実施形態においては、セッション装置2が有する送信側の端末20が備えるCPU21は、他のセッション装置2が有する受信側の端末20に対して通信を行った場合の遅延時間を判定し、演奏操作子40による発音タイミングを予測し、当該判定された遅延時間と、当該予測された発音タイミングと、に基づいて、他のセッション装置2に予測音の出音指示情報を送信する。
したがって、セッション装置2は、他のセッション装置2に対する送信遅延時間を考慮して、出音指示情報を先出しすることができるので、リアルタイムでセッションを行うことができる。
また、本実施形態においては、セッション装置2が有する送信側の端末20が備えるCPU21は、演奏操作子40により発音が指示された場合に楽音を発音させるとともに、他のセッション装置2からの予測音の出音指示情報を受信すると、当該受信した出音指示情報に基づいて楽音を発音させる。
したがって、セッション装置2は、送信側と受信側の両方の機能を備えた上で、リアルタイムでセッションを行うことができる。
したがって、セッション装置2は、送信側と受信側の両方の機能を備えた上で、リアルタイムでセッションを行うことができる。
また、本実施形態においては、CPU21は、演奏操作子40の位置及び時刻に関する情報を取得し、当該取得された演奏操作子40の位置及び時刻に関する情報に基づいて、発音タイミングを予測する。
したがって、セッション装置2は、発音タイミングの予測を容易に行うことができる。
したがって、セッション装置2は、発音タイミングの予測を容易に行うことができる。
また、本実施形態においては、CPU21は、予測された発音タイミングまでの時間が、判定された遅延時間以下である場合に、他のセッション装置2に予測音の出音指示情報を送信する。
したがって、セッション装置2は、適切なタイミングで他のセッション装置2に対して予測音の出音指示情報を送信できる。
したがって、セッション装置2は、適切なタイミングで他のセッション装置2に対して予測音の出音指示情報を送信できる。
また、本実施形態においては、CPU21は、演奏操作子40を演奏する演奏者の体の所定の部分の加速度を計測し、計測された加速度に基づいて、出音がコードストロークであるか単弦弾きであるか等の発音形態を決定し、決定された発音形態に基づいて他のセッション装置2に出音指示情報を送信する。
したがって、発音形態を考慮して予測音の出音指示情報を先出しすることができるので、リアルタイムのセッションにリアリティを与えることができる。
したがって、発音形態を考慮して予測音の出音指示情報を先出しすることができるので、リアルタイムのセッションにリアリティを与えることができる。
また、本実施形態においては、送信側の端末20が備えるCPU21は、演奏操作子40による発音の指示がなされた場合に、実際の演奏音の出音指示情報を受信側のセッション装置2に送信する。受信側の端末20が備えるCPU21は、送信側のセッション装置2から受信した予測音の出音指示情報に基づいて楽音を発音させた後、送信側のセッション装置2からの実際の演奏音の出音指示情報を受信すると、予測音の出音指示情報に基づいて発音させた楽音から実際の演奏音の出音指示情報に基づく楽音に切り替えて発音させる。
したがって、セッション装置2は、音量が極端に変化することを防止できるので、自然に原音へと変化させることができる。また、セッション装置2は、最初に予測して出した音が誤っていた場合でも、自然に正しい音に変化させることができる。
したがって、セッション装置2は、音量が極端に変化することを防止できるので、自然に原音へと変化させることができる。また、セッション装置2は、最初に予測して出した音が誤っていた場合でも、自然に正しい音に変化させることができる。
また、本実施形態においては、CPU21は、他のセッション装置2から受信した予測音の出音指示情報に基づいて楽音を発音させた後、所定の時間が経過しても他のセッション装置2からの実際の演奏音の出音指示情報を受信しない場合に、予測音の出音指示情報に基づいて発音させた楽音の発音を中止する。
したがって、セッション装置2は、リアルタイムのセッションにリアリティを与えることができる。
したがって、セッション装置2は、リアルタイムのセッションにリアリティを与えることができる。
以上、本発明の実施形態について説明したが、実施形態は例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、更に、本発明の要旨を逸脱しない範囲で、省略や置換など種々の変更を行うことができる。これら実施形態やその変形は、本明細書などに記載された発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
上記実施形態では、電子楽器10として電子ギターを例にとって説明したが、これに限られるものではなく、本発明は、電子楽器10として、ベースや、バイオリン等の弦楽器や、電子ドラム等のスティックの振り下ろし動作で楽音を発音する楽器などに適用することができる。
また、上記実施形態では、電子楽器10と端末20とを別個の構成としたが、これに限られるものではなく、端末20の機能を電子楽器10が有するように構成し、電子楽器10が直接、通信ネットワーク30に接続されるようにしてもよい。
また、上記実施形態においては、発音のタイミングと発音指示タイミングの間の時間誤差(遅延)については、特に区別せずに説明を行っており、発音タイミングを用いて発明を実施しても、発音指示タイミングを用いて発明を実施しても、いずれでも、発音指示から発音までの時間的な遅延が無視できる程度であれば、特に問題なく良好な結果が得られる。しかし、さらに正確なタイミングで演奏できるように、発音タイミングと発音指示タイミングの間の遅延時間を考慮に入れた処理を行う事も可能である。
また、上記実施形態においては、発音のタイミングと発音指示タイミングの間の時間誤差(遅延)については、特に区別せずに説明を行っており、発音タイミングを用いて発明を実施しても、発音指示タイミングを用いて発明を実施しても、いずれでも、発音指示から発音までの時間的な遅延が無視できる程度であれば、特に問題なく良好な結果が得られる。しかし、さらに正確なタイミングで演奏できるように、発音タイミングと発音指示タイミングの間の遅延時間を考慮に入れた処理を行う事も可能である。
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記1]
発音の指示を行う演奏操作子と、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定手段と、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測手段と、
前記遅延時間判定手段により判定された前記遅延時間と、前記発音指示タイミング予測手段により予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信手段と、
を備えたことを特徴とするセッション装置。
[付記2]
前記発音指示情報送信手段は、前記発音指示タイミング予測手段により予測された前記発音指示タイミングまでの時間が、前記遅延時間判定手段により判定された前記遅延時間以下となったときに、前記他のセッション装置に発音指示情報を送信することを特徴とする付記1に記載のセッション装置。
[付記3]
前記演奏操作子により発音が指示された場合に楽音を発音させるとともに、前記他のセッション装置からの発音指示情報を受信すると、当該受信した発音指示情報に基づいて楽音を発音させる楽音発音手段を更に備えることを特徴とする付記1または2に記載のセッション装置。
[付記4]
前記演奏操作子の位置及び時刻に関する情報を取得する位置情報取得手段を更に備え、
前記発音指示タイミング予測手段は、前記位置情報取得手段により取得された前記演奏操作子の位置及び時刻に関する情報に基づいて、発音指示タイミングを予測することを特徴とする付記1から3のいずれかに記載のセッション装置。
[付記5]
前記演奏操作子を演奏する演奏者の体の所定の部分の加速度を計測する加速度計測手段と、
前記加速度計測手段により計測された前記加速度に基づいて、発音形態を決定する発音形態決定手段と、を更に備え、
前記発音指示情報送信手段は、前記発音形態決定手段により決定された前記発音形態に基づいて前記他のセッション装置に発音指示情報を送信することを特徴とする付記1から4のいずれかに記載のセッション装置。
[付記6]
前記演奏操作子による発音の指示がなされた場合に、当該発音情報を前記他のセッション装置に送信する発音情報送信手段を更に備え、
前記楽音発音手段は、前記他のセッション装置から受信した発音指示情報に基づいて楽音を発音させた後、前記他のセッション装置からの前記発音情報を受信すると、前記発音指示情報に基づいて発音させた楽音から前記発音情報に基づく楽音に切り替えて発音させることを特徴とする付記2から5のいずれかに記載のセッション装置。
[付記7]
前記楽音発音手段は、前記他のセッション装置から受信した発音指示情報に基づいて楽音を発音させた後、所定の時間が経過しても前記他のセッション装置からの前記発音情報を受信しない場合に、前記発音指示情報に基づいて発音させた楽音の発音を中止することを特徴とする付記6に記載のセッション装置。
[付記8]
発音の指示を行う演奏操作子を備えたセッション装置が実行する方法であって、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定ステップと、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測ステップと、
前記遅延時間判定ステップにより判定された前記遅延時間と、前記発音指示タイミング予測ステップにより予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信ステップと、
を含む方法。
[付記9]
発音の指示を行う演奏操作子を備えたセッション装置として用いられるコンピュータに、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定ステップと、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測ステップと、
前記遅延時間判定ステップにより判定された前記遅延時間と、前記発音指示タイミング予測ステップにより予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信ステップと、
を実行させるプログラム。
[付記1]
発音の指示を行う演奏操作子と、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定手段と、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測手段と、
前記遅延時間判定手段により判定された前記遅延時間と、前記発音指示タイミング予測手段により予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信手段と、
を備えたことを特徴とするセッション装置。
[付記2]
前記発音指示情報送信手段は、前記発音指示タイミング予測手段により予測された前記発音指示タイミングまでの時間が、前記遅延時間判定手段により判定された前記遅延時間以下となったときに、前記他のセッション装置に発音指示情報を送信することを特徴とする付記1に記載のセッション装置。
[付記3]
前記演奏操作子により発音が指示された場合に楽音を発音させるとともに、前記他のセッション装置からの発音指示情報を受信すると、当該受信した発音指示情報に基づいて楽音を発音させる楽音発音手段を更に備えることを特徴とする付記1または2に記載のセッション装置。
[付記4]
前記演奏操作子の位置及び時刻に関する情報を取得する位置情報取得手段を更に備え、
前記発音指示タイミング予測手段は、前記位置情報取得手段により取得された前記演奏操作子の位置及び時刻に関する情報に基づいて、発音指示タイミングを予測することを特徴とする付記1から3のいずれかに記載のセッション装置。
[付記5]
前記演奏操作子を演奏する演奏者の体の所定の部分の加速度を計測する加速度計測手段と、
前記加速度計測手段により計測された前記加速度に基づいて、発音形態を決定する発音形態決定手段と、を更に備え、
前記発音指示情報送信手段は、前記発音形態決定手段により決定された前記発音形態に基づいて前記他のセッション装置に発音指示情報を送信することを特徴とする付記1から4のいずれかに記載のセッション装置。
[付記6]
前記演奏操作子による発音の指示がなされた場合に、当該発音情報を前記他のセッション装置に送信する発音情報送信手段を更に備え、
前記楽音発音手段は、前記他のセッション装置から受信した発音指示情報に基づいて楽音を発音させた後、前記他のセッション装置からの前記発音情報を受信すると、前記発音指示情報に基づいて発音させた楽音から前記発音情報に基づく楽音に切り替えて発音させることを特徴とする付記2から5のいずれかに記載のセッション装置。
[付記7]
前記楽音発音手段は、前記他のセッション装置から受信した発音指示情報に基づいて楽音を発音させた後、所定の時間が経過しても前記他のセッション装置からの前記発音情報を受信しない場合に、前記発音指示情報に基づいて発音させた楽音の発音を中止することを特徴とする付記6に記載のセッション装置。
[付記8]
発音の指示を行う演奏操作子を備えたセッション装置が実行する方法であって、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定ステップと、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測ステップと、
前記遅延時間判定ステップにより判定された前記遅延時間と、前記発音指示タイミング予測ステップにより予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信ステップと、
を含む方法。
[付記9]
発音の指示を行う演奏操作子を備えたセッション装置として用いられるコンピュータに、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定ステップと、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測ステップと、
前記遅延時間判定ステップにより判定された前記遅延時間と、前記発音指示タイミング予測ステップにより予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信ステップと、
を実行させるプログラム。
1・・・セッションシステム、2・・・セッション装置、10・・・電子楽器、11・・・CPU、12・・・ROM、13・・・RAM、14・・・押弦検出センサ、15・・・静電センサ、16・・・データ通信部、20・・・端末、21・・・CPU、22・・・ROM、23・・・RAM、24・・・音源装置、25・・・データ通信部、30・・・通信ネットワーク、40・・・演奏操作子、50・・・加速度センサ
Claims (9)
- 発音の指示を行う演奏操作子と、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定手段と、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測手段と、
前記遅延時間判定手段により判定された前記遅延時間と、前記発音指示タイミング予測手段により予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信手段と、
を備えたことを特徴とするセッション装置。 - 前記発音指示情報送信手段は、前記発音指示タイミング予測手段により予測された前記発音指示タイミングまでの時間が、前記遅延時間判定手段により判定された前記遅延時間以下となったときに、前記他のセッション装置に発音指示情報を送信することを特徴とする請求項1に記載のセッション装置。
- 前記演奏操作子により発音が指示された場合に楽音を発音させるとともに、前記他のセッション装置からの発音指示情報を受信すると、当該受信した発音指示情報に基づいて楽音を発音させる楽音発音手段を更に備えることを特徴とする請求項1または2に記載のセッション装置。
- 前記演奏操作子の位置及び時刻に関する情報を取得する位置情報取得手段を更に備え、
前記発音指示タイミング予測手段は、前記位置情報取得手段により取得された前記演奏操作子の位置及び時刻に関する情報に基づいて、発音指示タイミングを予測することを特徴とする請求項1から3のいずれかに記載のセッション装置。 - 前記演奏操作子を演奏する演奏者の体の所定の部分の加速度を計測する加速度計測手段と、
前記加速度計測手段により計測された前記加速度に基づいて、発音形態を決定する発音形態決定手段と、を更に備え、
前記発音指示情報送信手段は、前記発音形態決定手段により決定された前記発音形態に基づいて前記他のセッション装置に発音指示情報を送信することを特徴とする請求項1から4のいずれかに記載のセッション装置。 - 前記演奏操作子による発音の指示がなされた場合に、当該発音情報を前記他のセッション装置に送信する発音情報送信手段を更に備え、
前記楽音発音手段は、前記他のセッション装置から受信した発音指示情報に基づいて楽音を発音させた後、前記他のセッション装置からの前記発音情報を受信すると、前記発音指示情報に基づいて発音させた楽音から前記発音情報に基づく楽音に切り替えて発音させることを特徴とする請求項2から5のいずれかに記載のセッション装置。 - 前記楽音発音手段は、前記他のセッション装置から受信した発音指示情報に基づいて楽音を発音させた後、所定の時間が経過しても前記他のセッション装置からの前記発音情報を受信しない場合に、前記発音指示情報に基づいて発音させた楽音の発音を中止することを特徴とする請求項6に記載のセッション装置。
- 発音の指示を行う演奏操作子を備えたセッション装置が実行する方法であって、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定ステップと、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測ステップと、
前記遅延時間判定ステップにより判定された前記遅延時間と、前記発音指示タイミング予測ステップにより予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信ステップと、
を含む方法。 - 発音の指示を行う演奏操作子を備えたセッション装置として用いられるコンピュータに、
他のセッション装置に対して通信を行った場合の遅延時間を判定する遅延時間判定ステップと、
前記演奏操作子による発音指示タイミングを予測する発音指示タイミング予測ステップと、
前記遅延時間判定ステップにより判定された前記遅延時間と、前記発音指示タイミング予測ステップにより予測された前記発音指示タイミングと、に基づいて、前記他のセッション装置に発音指示情報を送信する発音指示情報送信ステップと、
を実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012191910A JP2014048504A (ja) | 2012-08-31 | 2012-08-31 | セッション装置、方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012191910A JP2014048504A (ja) | 2012-08-31 | 2012-08-31 | セッション装置、方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014048504A true JP2014048504A (ja) | 2014-03-17 |
Family
ID=50608232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012191910A Pending JP2014048504A (ja) | 2012-08-31 | 2012-08-31 | セッション装置、方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014048504A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016008974A (ja) * | 2014-06-20 | 2016-01-18 | ヤマハ株式会社 | 演奏情報出力制御装置、鍵盤楽器及び制御方法 |
JP2016200712A (ja) * | 2015-04-10 | 2016-12-01 | 日本電信電話株式会社 | 合奏装置、合奏システム、その方法及びプログラム |
-
2012
- 2012-08-31 JP JP2012191910A patent/JP2014048504A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016008974A (ja) * | 2014-06-20 | 2016-01-18 | ヤマハ株式会社 | 演奏情報出力制御装置、鍵盤楽器及び制御方法 |
JP2016200712A (ja) * | 2015-04-10 | 2016-12-01 | 日本電信電話株式会社 | 合奏装置、合奏システム、その方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4307193B2 (ja) | プログラム、情報記憶媒体、及びゲームシステム | |
CN103310769B (zh) | 演奏装置及演奏装置的控制方法 | |
US9154870B2 (en) | Sound generation device, sound generation method and storage medium storing sound generation program | |
US8609972B2 (en) | Performance apparatus and electronic musical instrument operable in plural operation modes determined based on movement operation of performance apparatus | |
US8664506B2 (en) | Electronic percussion instrument and recording medium with program recorded therein | |
US8710347B2 (en) | Performance apparatus and electronic musical instrument | |
JPH08305355A (ja) | 自動演奏制御装置 | |
US20130239784A1 (en) | Performance apparatus, a method of controlling the performance apparatus and a program recording medium | |
JP2008253440A (ja) | 音楽再生制御システム、音楽演奏プログラム、および演奏データの同期再生方法 | |
JP2014006416A (ja) | 自動演奏装置及びプログラム | |
JP4259329B2 (ja) | 演奏装置および合奏システム | |
JP4244916B2 (ja) | 演奏動作予測に基づく発音制御方法および電子楽器 | |
JP2014048504A (ja) | セッション装置、方法及びプログラム | |
JP3671274B2 (ja) | 音楽情報送受信装置、受信装置及び記憶媒体 | |
JP4333588B2 (ja) | セッション端末 | |
US20170263230A1 (en) | Sound production control apparatus, sound production control method, and storage medium | |
JP3636041B2 (ja) | 発音制御システム | |
JP6111526B2 (ja) | 楽音発生装置 | |
JP6572916B2 (ja) | 発音制御装置及び方法、プログラム | |
JP2003091280A (ja) | 音楽制御装置 | |
JP2019144360A (ja) | 演奏支援システムおよび制御方法 | |
JP2013044889A (ja) | 演奏装置 | |
JP2017015957A (ja) | 演奏記録装置およびプログラム | |
JP6710432B2 (ja) | 楽音制御装置、電子楽器、楽音制御方法およびプログラム | |
JP4748593B2 (ja) | 電子楽器 |