(57)【特許請求の範囲】
【請求項１】
少なくとも１以上の演奏パート毎の演奏データであって、各パートにおいて発生すべき楽音を規定する演奏データを時系列に供給することで、当該１以上の演奏パートの演奏を行なう音楽演奏装置において、
演奏データを供給すべきタイミングを変更する必要がある外部機器が接続されているか否かを検出する第１の検出手段と、
前記第１の検出手段によって、演奏データを供給すべきタイミングを変更する必要がある外部機器が接続されていると検出された場合に、当該外部機器に演奏パートを割り当てる割当手段と、
当該外部機器に割り当てた演奏パートの演奏データを供給するタイミングを予め検出する第２の検出手段と、
前記第２の検出手段によって検出されたタイミングよりも所定の時間だけ先行させたタイミングを、検出したタイミングの各々について求める算出手段と、
演奏テンポを変更する旨のテンポ変更命令を検出する第３の検出手段と、
前記外部機器に対する前記演奏データの単位時間あたりの供給量を演奏テンポに応じて求め、前記テンポ変更命令が前記第３の検出手段により検出された場合、前記演奏データの単位時間あたりの供給量を、当該テンポ変更命令で指定される演奏テンポに応じて変更するデータ供給量算出手段と、
外部機器に対して割り当てた演奏パートの演奏データを、前記算出手段により求めたタイミングで当該外部機器に供給し、且つ、前記データ供給量算出手段により求められた供給量の演奏データを単位時間あたりに供給する供給手段と
を具備することを特徴とする音楽演奏装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、自動演奏ピアノのような外部機器と同期して音楽演奏を行なう音楽演奏装置に関する。
【０００２】
【従来の技術】
近年、音楽的な娯楽としていわゆるカラオケが広く普及しており、この普及に伴ってカラオケの多様化が進んいる。この多様化の一傾向として高級化があり、高級化の一例としては、例えば、ＭＩＤＩデータで記録された演奏データに基づいて音源回路で伴奏音を合成する一方、自然楽器を自動演奏して、その楽音を伴奏音に付加することなどがある。かかる自然楽器には、例えば自動演奏ピアノがあげられる。かかる自動演奏ピアノには、各鍵に対し電磁的にオン／オフするソレノイドが設けられており、これらソレノイドを演奏データに基づいて駆動させて、実際に打弦させることでピアノ音が発生するようになっている。
【０００３】
ところで、演奏データに基づく伴奏音の合成は、音源回路によって楽音波形を生成することにより行なわれるため、すなわち、純電気的に行なわれるために、演奏データの供給を受けた時点において直ちに可能である。
これに対し、自動演奏ピアノは、一部に電気的動作を伴うものの、楽音を発生するための根幹が機械的構成によるため、演奏データの供給を受けた時点から実際に楽音が発生するまでに時間差（約０．５秒）が生じてしまうという事情がある。このため、音源回路と自動演奏ピアノとに演奏データを同時に供給しても、両者による発生楽音には、約０．５秒の時間差が生じてしまう。これほどまでに時間差が生じると、歌い手にとっては歌いづらく、また聞き手にとっても聞きづらくなる。
【０００４】
【課題を解決するための手段】
上述した課題を解決するために、本発明にあっては、少なくとも１以上の演奏パート毎の演奏データであって、各パートにおいて発生すべき楽音を規定する演奏データを時系列に供給することで、当該１以上の演奏パートの演奏を行なう音楽演奏装置において、演奏データを供給すべきタイミングを変更する必要がある外部機器が接続されているか否かを検出する第１の検出手段と、前記第１の検出手段によって、演奏データを供給すべきタイミングを変更する必要がある外部機器が接続されていると検出された場合に、当該外部機器に演奏パートを割り当てる割当手段と、当該外部機器に割り当てた演奏パートの演奏データを供給するタイミングを予め検出する第２の検出手段と、前記第２の検出手段によって検出されたタイミングよりも所定の時間だけ先行させたタイミングを、検出したタイミングの各々について求める算出手段と、演奏テンポを変更する旨のテンポ変更命令を検出する第３の検出手段と、前記外部機器に対する前記演奏データの単位時間あたりの供給量を演奏テンポに応じて求め、前記テンポ変更命令が前記第３の検出手段により検出された場合、前記演奏データの単位時間あたりの供給量を、当該テンポ変更命令で指定される演奏テンポに応じて変更するデータ供給量算出手段と、外部機器に対して割り当てた演奏パートの演奏データを、前記算出手段により求めたタイミングで当該外部機器に供給し、且つ、前記データ供給量算出手段により求められた供給量の演奏データを単位時間あたりに供給する供給手段とを具備することを特徴としている。
【０００５】
【発明が解決しようとする課題】
したがって、専用の演奏データが用意されていない曲においては、自動演奏ピアノと他の電子楽器との同期演奏が実質的にできないという問題があった。また、専用の演奏データを作成するのは、上記タイムラグを考慮し、しかも曲毎に作成しなければならないので、非常に手間がかかるという問題があった。
本発明は、上述した問題に鑑みてなされたもので、その目的とするところは、演奏データが供給されてから実際の発音までに時間差がある外部機器との同期演奏を、専用データを用いなくても可能な音楽演奏装置を提供することにある。
【０００６】
【課題を解決するための手段】
上述した問題を解決するために、本発明にあっては、少なくとも１以上の演奏パート毎の演奏データであって、各パートにおいて発生すべき楽音を規定する演奏データを時系列に供給することで、当該１以上の演奏パートの演奏を行なう音楽演奏装置において、演奏データを供給すべきタイミングを変更する必要がある外部機器が接続されているか否かを検出する第１の検出手段と、前記第１の検出手段によって、演奏データを供給すべきタイミングを変更する必要がある外部機器が接続されていると検出された場合に、当該外部機器に演奏パートを割り当てる割当手段と、当該外部機器に割り当てた演奏パートの演奏データを供給するタイミングを予め検出する第２の検出手段と、前記第２の検出手段によって検出されたタイミングよりも所定の時間だけ先行させたタイミングを、検出したタイミングの各々について求める算出手段と、外部機器に対して割り当てた演奏パートの演奏データを、前記算出手段により求めたタイミングで、当該外部機器に供給する供給手段と具備することを特徴としている。
【０００７】
（作用）
本発明によれば、少なくとも１以上の演奏パート毎の演奏データであって、各パートにおいて発生すべき楽音を規定する演奏データがある場合、そのなかから外部機器が演奏すべき演奏パートが割り当てられ、その演奏パートの演奏データを供給するタイミングが演奏前に予め検出される。そして検出されたタイミングについては、所定の時間だけ先行させたタイミングが算出されて、演奏時には、算出されたタイミングで、外部機器に対して割り当てた演奏パートの演奏データを当該外部機器に供給する。すなわち、外部機器に対しては、演奏データの供給タイミングを所定の時間だけ早めて供給することとしている。これにより、演奏データを供給してから実際に発音するまでに時間差をともなってしまう外部機器との同期演奏を、専用の演奏データを用いることなく可能となる。
【０００８】
【発明の実施の形態】
以下、本発明の一実施の形態について図面を参照して説明する。図１は、本実施形態にかかる音楽演奏装置の機能的構成を示すブロック図である。この図に示す音楽演奏装置１００は、概略すれば、図２に示す楽曲データを読み出して伴奏音を合成するとともに、外部機器として自動演奏ピアノ２００が接続されている場合に、楽曲データのトラックのうち当該自動演奏ピアノ２００に割り当てるチャンネルを決定して、そのチャンネルにおけるイベントデータを０．５秒だけ先送りして供給する一方、他のチャンネルにおいては音源回路１０７に通常通り供給して伴奏音を合成するものである。
【０００９】
各部の詳細について説明する。図１において、符号１０１は各部を制御する制御部である。符号１０２は楽曲データ受信部であり、図示しないサーバから公衆電話回線を介して配信された楽曲データを受信する。符号１０３は記録部であり、ハードディスクドライブから構成され、受信された楽曲データ等を記録する。
【００１０】
符号１０４はシーケンサであり、演奏時には演奏の進行に合わせて楽曲データを供給する。ここで、本実施形態のシーケンサ１０４は、曲の１拍（四分音符）を４８０分割した時間（以下、この時間を「１ｔｉｃｋ」という。）まで分解する性能を有するものとする。この場合、演奏すべき楽曲のテンポ指示が１２０であるならば、当該曲の１拍は、シーケンサ１０４にとって「４８０ｔｉｃｋｓ」であり、客観的にみて「０．５秒」である。また、テンポ指示が１００（１分間に１００拍という意味）であるならば、当該曲の１拍は「４８０ｔｉｃｋｓ」と変わりはないが、「０．６秒」になる。
【００１１】
符号１０５は外部機器検出部であり、この音楽演奏装置１００以外に、楽音を発生させる装置が接続されているか否かを検出し、接続されている場合にはさらに接続された装置が演奏データの供給タイミングを先送りする必要があるものなのか否かを判定する。符号１０６はベロシティ変換テーブルであり、外部機器が接続され、かつ、それが演奏データの供給タイミングを先送りする必要があるものである場合、本来供給すべき演奏データに含まれるベロシティデータを検出するとともに、検出したベロシティを当該外部機器の特性に合わせた値に適切に変換する。
【００１２】
音源回路１０７は、例えば１６もの発音チャンネルを有し、各チャンネルにおいて、基本波合成方式や波形メモリ読出方式などにより楽音を生成するとともに、リバーブやコーラスなどの効果（エフェクト）を付与する。ここで、各チャンネルにおいて発生させる楽音や、付与すべき効果は、当該チャンネルに割り当てられたトラックの演奏データにより規定される。すなわち、音源回路１０６では、楽曲データにおける演奏パートの１つが、発音チャンネルの１つに割り当てられることで、１６パートもの楽音を生成することができるようになっている。そして音源回路１０７による楽音は、アンプやスピーカからなるサウンドシステムＳＳにより外部に発音される。
【００１３】
なお、この音楽演奏装置１００をカラオケ装置として考えた場合、この他に、シーケンサ１０４から供給されるデータに基づいて歌詞表示とともに、演奏の進行に合わせて歌詞の色換表示を行なう表示回路やディスプレイや、さらに歌い手の歌唱を取り込むマイク、かかるマイク信号と伴奏音とをミキシングするミキサなどが備えられべきであるが、本実施形態では直接関係しないので、その説明については省略することとする。また、音楽演奏装置１００の各部は、実際には、通信機能や、サウンド発生機能を有するパソコンにおいて構成可能である。
【００１４】
次に、本実施形態における楽曲データについて図２（ａ）、（ｂ）を参照して説明する。同図（ａ）に示すように、楽曲データは、主に、ヘッダと、各トラックの演奏データとに大別できる。このうち、ヘッダは、曲名や、曲の演奏時間など、当該楽曲に関する種々のデータが記録される。一方、各トラックの演奏データは、ピアノトラックや、ギタートラックなど種々のパートに対応する。各トラックの演奏データは、同図（ｂ）に示すように、当該パートでのイベントの内容を示すイベントデータの集合体であり、かかるイベントデータの間には、それらイベントの間隔を示すデュレーションデータが配置される。
【００１５】
ここで、イベントデータには、ノートオンイベントデータや、ノートオフイベントデータ、テンポチェンジメタイベントデータなどがある。このうちノートオンイベントデータは、発音の指示をするデータであり、音高を示すキーコードや、音の強さを示すベロシティなど、発音すべき音の内容を規定するデータが伴う。ノートオフイベントデータは、ノートオンイベントデータによる発音の消音を指示するデータであり、ノートオンイベントデータとはペアで用いられる。したがって、ノートオンイベントデータおよびノートオフイベントデータの間に配置するデュレーションデータが、当該発音期間を規定することになる。また、テンポチェンジメタイベントデータは、曲のテンポを途中で変更する旨を指示するデータである。
【００１６】
再び、図１の説明に戻る。自動演奏ピアノ２００は、音楽演奏装置１００の外部に接続されている。上述したように、自動演奏ピアノ２００は、一般のピアノの各鍵に電磁ソレノイドが設けられたものであり、受信した演奏データがノートオンイベントデータであった場合、当該データのキーコードで示される鍵のソレノイドを、当該データのベロシティで示される強さで駆動する。これにより、実際に鍵が押下されて、打弦によりピアノ音が発生するようになっている。
【００１７】
次に、本実施形態にかかる音楽演奏装置の動作について説明する。
まず、外部機器検出部１０５は、外部機器が接続されているかを判別し、さらに、外部機器が演奏データの先送り供給を必要とするものか否かを判別する。この判別は、例えば、外部機器検出部１０５が制御部１０１の制御の下、所定の信号を送出する一方、接続されているのであれば、その外部機器が自己の種別を示すＩＤを返送することで可能である。例えば、図１の場合、外部機器検出部１０５が信号を送出すると、自動演奏ピアノ２００は、その種別を示すＩＤを返送する。これにより外部機器検出部１０５が外部機器として自動演奏ピアノ２００が接続されていることを認識するのである。
なお、外部機器が接続されていない場合には、一定時間内にＩＤが返送されないので、また、外部機器が接続されている場合であっても、それが一般の電子楽器であるときは返送されたＩＤをもって、それぞれの状態を認識することが可能である。
【００１８】
一方、ユーザは、演奏に先だって、所望の曲を図示しない操作部により選択する。すると、制御部１０１は、選択された曲の楽曲データが記録部１０３に記録されているか否かを判別し、記録されていなければサーバに対し、当該楽曲データを配信する旨を指示する。楽曲データが配信された、あるいはすでに記録されているならば、制御部１０１は、その楽曲データをシーケンサ１０４に供給させる。
【００１９】
楽曲データの供給を受けると、シーケンサ１０４は、当該楽曲データの各トラックを音源回路１０７の各発音チャンネルに割り当てるが、その際、チャンネルのパート名からピアノの属性を有するものを抽出する。すなわち、各トラックには様々な音色が割り振られ、これらが図３に示すように、各発音チャンネルに割り当てられるが、このうち、シーケンサ１０４は、種々の音色のうちピアノ系統を示すものを抽出するのである。ピアノ系統の音色を抽出すると、シーケンサ１０４は、当該チャンネルの演奏データを、自動演奏ピアノ２００に供給すべきデータとする。なお、ピアノ系統の音色が抽出されない場合、シーケンサ１０４は、すべてのトラックを音源回路１０７の発音チャンネルに割り当てる。
【００２０】
次に、シーケンサ１０４は、自動演奏ピアノ２００に供給すべきチャンネルの演奏データのうちイベントデータをすべて抽出し、すべてのタイミングが０．５秒だけ早くなるように時間系を設定し直す。この際、テンポの変更を指示するテンポチェンジメタイベントデータが抽出されたならば、それも考慮する。例えば、テンポが１２０である場合において、０．５秒だけ早めるということは、シーケンサ１０４にとって「４８０ｔｉｃｋｓ」分だけイベントのタイミング（この場合、イベントデータを自動演奏ピアノ２００に供給するタイミング）を早めることを意味する。また、図４に示すように、時刻Ｔにおいてテンポを１２０から１００に変更する旨を指示するテンポチェンジメタイベントデータを抽出した場合であって、その時刻Ｔから「２４０ｔｉｃｋｓ」すなわち０．３秒後におけるイベントのデータＤを０．５秒だけ早めるということは、テンポが１００の領域において、０．３秒に相当する「２４０ｔｉｃｋｓ」と、テンポが１２０の領域において、０．２秒に相当する「１９２ｔｉｃｋｓ」との計「４３２ｔｉｃｋｓ」だけ早めることを意味する。
なお、早める時間は本来的に外部機器に依存するものであり、本実施形態にあっては外部機器が自動演奏ピアノ２００であるから０．５秒とした。
【００２１】
このように、外部機器に供給すべきチャンネルの演奏データを設定し直すと、次に、シーケンサ１０４は、実際に演奏を開始すべく各発音チャンネルの演奏データを次のように供給する。すなわち、シーケンサ１０４は、自動演奏ピアノ２００に割り当てたチャンネル以外の演奏データについては通常通り音源回路１０７に供給する一方、外部機器としての自動演奏ピアノ２００に割り当てたチャンネルの演奏データについては、設定し直した時間系で（すなわち、他のチャンネルとは、０．５秒だけ早めて）、ベロシティ変換テーブル１０６を介し自動演奏ピアノ２００に供給する。
【００２２】
ベロシティ変換テーブル１０６は、供給された演奏データのうちノートオンイベントデータを検出したならば、それに伴うベロシティを抽出し、そのベロシティを対応する値に変換して、当該変換値を当該ノートオンイベントのベロシティとして、自動演奏ピアノ２００に供給する。ここで、ベロシティを変換する理由について述べる。一般に演奏データ中のベロシティは、その値が大きくなるにつれて発生すべき楽音の音量も大きくさせるものであるが、この対応関係はあくまでも純電気的に発生する場合を想定している。ところが、自動演奏ピアノは、その構成上、ベロシティが小さいとハンマが打弦しない場合があり、また例えば、ベロシティが「１００」の大きさでソレノイドを駆動して発生させたピアノ音の大きさが、ベロシティが「５０」の大きさでソレノイドを駆動して発生させたピアノ音の大きさの半分にはならない。このため、自動演奏ピアノ２００にとって最適となるようなベロシティの対応関係を予めテーブルに格納しておき、実際に演奏データが供給されたならば、そのベロシティをテーブルで変換することで、自動演奏ピアノ２００にとって最適なベロシティを得る構成としたのである。
したがって、外部機器が接続されていても、それがベロシティを変換する必要がない場合、制御部１０１は、シーケンサ１０４から供給される演奏データをベロシティ変換テーブル１０６を介さずに、直接供給するようにＳＷ１、ＳＷ２を切り換える。
【００２３】
このような実施形態にかかる音楽演奏装置によれば、外部機器が接続されている場合であって、それが自動演奏ピアノのように演奏データを先送りして供給する必要がある場合、演奏データ供給前に、演奏データのなかから、自動演奏ピアノに割り当てるべきチャンネルを決定するとともに、チャンネルに割り当てられたトラックの演奏データの時間系を設定し直して０．５秒だけ早める。そして、実際に演奏を行なう際には、自動演奏ピアノに割り当てたチャンネル以外に対応する演奏データは、通常の時間系で音源回路１０７に供給する一方、自動演奏ピアノに割り当てたチャンネルに対応する演奏データは、他とは０．５秒だけ早めた時間系で演奏データを供給する。これにより、自動演奏ピアノと音源回路との時間差を伴うことなく同期演奏を行なうことができる。
【００２４】
なお、本実施形態にあっては、外部機器の例として自動演奏ピアノを想定したが、本発明はこれに限定されない。すなわち、本発明における外部機器とは、演奏データが供給された時点から実際に発音するまでに生じる時間差が、その機械的構成などにより無視できない程のものすべてをいう。先送りする時間は、当然上記時間差と一致させる。
【００２５】
【発明の効果】
以上説明したように、本発明によれば、演奏データを供給してから実際に発音するまでに時間差をともなう外部機器と同期演奏を行なうことが可能となる。その際、演奏データの供給タイミングを算出することで、早めて供給しているので、外部機器専用の演奏データがなくても同期演奏を行なうことが可能である。当然、本発明によれば、専用の演奏データを作成する必要もない。
【図面の簡単な説明】
【図１】  本発明の実施形態にかかる音楽演奏装置の機能的構成を示すブロック図である。
【図２】  （ａ）は同音楽演奏装置における楽曲データの構成を示す図であり、（ｂ）はそのトラックの演奏データの構成を示す図である。
【図３】  楽曲データにおいて演奏パートと、その属性との対応関係を示す図である。
【図４】  外部機器に供給すべき演奏データの先送り状況を示す図である。
【符号の説明】
１００……音楽演奏装置、１０１……制御部、１０４……シーケンサ、１０５……外部機器検出部、１０６……ベロシティ変換テーブル、１０７……音源回路、２００……自動演奏ピアノ
【図１】
0003713836.tif 000002
【図２】
0003713836.tif 000003
【図３】
0003713836.tif 000004
【図４】
0003713836.tif 000005