(57)【特許請求の範囲】
【請求項１】
複数のコマンドで構成された演奏情報に基づいて演奏を行う楽曲演奏装置であって、
演奏情報の演奏に使用する波形情報を記憶する第１記憶手段と、
演奏情報中のコマンドを先読みし、コマンドに対応する波形情報を第１記憶手段から第２記憶手段に読み出す波形読み出し処理と、
コマンドに規定されている送信タイミングで読み出したコマンドと、第２記憶手段に記憶された波形情報に基づいて演奏を行う演奏処理と、
波形読みだし処理において、コマンドに対応する波形情報が読み出せない場合、第１記憶手段から、当該波形情報とランダマイザの項目についてのみ異なる波形情報を探索し、第２記憶手段に読み出す代替波形読み出し処理と、を実行可能とする制御部と、を備えたことを特徴とする
楽曲演奏装置。
【請求項２】
代替波形読み出し処理は、当該波形情報とランダマイザの項目についてのみ異なる波形情報が読み出せない場合、当該波形情報が属する楽器種別を判定し、楽器種別が一般楽器の場合、第１のアルゴリズムで波形情報を探索し、楽器種別が打楽器の場合、第１のアルゴリズムと異なる第２のアルゴリズムで波形情報を探索する
請求項１に記載の楽曲演奏装置。
【請求項３】
代替波形読み出し処理において、判定された楽器種別が一般楽器の場合、当該波形情報とノートの項目についてのみ異なる波形情報を探索する
請求項２に記載の楽曲演奏装置。
【請求項４】
当該波形情報とノートの項目についてのみ異なる波形情報が複数存在する場合、当該波形情報とノートの差が小さい波形情報を読み出す
請求項３に記載の楽曲演奏装置。
【請求項５】
代替波形読み出し処理において、判定された楽器種別が打楽器の場合、当該波形情報とベロシティの項目についてのみ異なる波形情報を探索する
請求項２から請求項３の何れか１項に記載の楽曲演奏装置。
【請求項６】
制御部は、代替波形読み出し処理の実行回数が所定条件を満たした場合、外部に通知する通知処理を実行可能とする
請求項１から請求項５の何れか１項に記載の楽曲演奏装置。
【請求項７】
複数のコマンドで構成された演奏情報に基づいて演奏を行う楽曲演奏用プログラムであって、
演奏情報中のコマンドを先読みし、コマンドに対応する波形情報を第１記憶手段から第２記憶手段に読み出す波形読み出し処理と、
コマンドに規定されている送信タイミングで読み出したコマンドと、第２記憶手段に記憶された波形情報に基づいて演奏を行う演奏処理と、
波形読みだし処理において、コマンドに対応する波形情報が読み出せない場合、第１記憶手段から、当該波形情報とランダマイザの項目についてのみ異なる波形情報を探索し、第２記憶手段に読み出す代替波形読み出し処理と、をコンピュータに実行させることを特徴とする
楽曲演奏用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演奏情報を再生することで楽曲の演奏を行う楽曲演奏装置及び楽曲演奏用プログラムに関する。
【背景技術】
【０００２】
近年パーソナルコンピュータは、ＣＰＵやメモリの性能が向上するとともに価格が下がり広く普及している。これに伴ってパーソナルコンピュータで使用される各種ソフトウェアが多数開発され、機能および性能が向上している。ソフトウェア音源もその一つであり、ＣＰＵにより楽音を合成する技術およびその合成された楽音に効果を付与する技術が改良され、良質な楽音を形成できるようになっている。
【０００３】
特許文献１には、ソフトウェア音源の処理負荷が大きかったことを課題として、ＣＰＵにかかる負荷が所定の値より大きい場合、ＣＰＵに代え代替音源で楽音を合成する楽音合成装置が開示されている。このような楽音合成装置を使用することで、ＣＰＵにかかる負荷が大きい場合であっても、代替音源を使用することで、楽音の発生開始の遅れや、楽音の合成の途切れといった不具合を解消することが可能となっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２８３７７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
現在、ＣＰＵの処理能力の向上、メモリの大容量化に伴い、パーソナルコンピュータなどの各種情報処理装置の能力は、ソフトウェア音源を十分に扱うことのできるまでになっている。従来、カラオケ装置では、ハードウェア音源を使用することが主流であったが、このような処理能力の向上により、ソフトウェア音源を搭載することが検討されている。ソフトウェア音源は、良質な楽音を提供できるため、顧客誘引の要素として音質が求められるカラオケ装置には好適な機能である。また、ソフトウェア音源は、ソフトウェアのバージョンを上げることで、バグの修正、機能の追加などに対応可能であるため、各種メンテナンスの面においても好適な機能といえる。
【０００６】
ところで、従来のハードウェア音源では、音の形成に使用する波形情報を、ハードウェア音源内の専用ＲＯＭに記憶して使用していた。一方、ソフトウェア音源では、音の形成に使用する波形情報をハードディスク等、汎用の記憶手段に記憶して使用する。このような構成により、ソフトウェア音源では波形情報の追加を容易に行うことが可能であり、良質な楽音を形成することが可能である。しかしながら、ソフトウェア音源で使用する記憶手段は、ハードウェア音源のように専用の記憶手段では無く、他のプログラムやデータの読み出しも頻繁に行われるため、波形情報自体の破損の可能性は、ハードウェア音源よりも大きくなることが考えられる。
【０００７】
ソフトウェア音源において波形情報が破損した場合、破損が生じた波形情報の読み出しができない、あるいは、誤った波形情報として読み出されることが考えられる。そのような場合、楽曲の再生中に楽音の欠損が生じる、あるいは、ノイズが発生することとなり、聴取上の違和感が生じることになる。カラオケに使用する楽曲演奏装置（カラオケ装置）において、このような支障が生じた場合、稼働率の低下にも繋がるため、業者による迅速な対応が必要となるが、対応が行われるまでの期間は、支障が継続することが考えられる。
【課題を解決するための手段】
【０００８】
本発明は、このような課題を解決することを目的とし、楽曲演奏装置において良好な音質の楽曲を再生するため、以下の構成を採用する。
複数のコマンドで構成された演奏情報に基づいて演奏を行う楽曲演奏装置であって、
演奏情報の演奏に使用する波形情報を記憶する第１記憶手段と、
演奏情報中のコマンドを先読みし、コマンドに対応する波形情報を第１記憶手段から第２記憶手段に読み出す波形読み出し処理と、
コマンドに規定されている送信タイミングで読み出したコマンドと、第２記憶手段に記憶された波形情報に基づいて演奏を行う演奏処理と、
波形読みだし処理において、コマンドに対応する波形情報が読み出せない場合、第１記憶手段から、当該波形情報とランダマイザの項目についてのみ異なる波形情報を探索し、第２記憶手段に読み出す代替波形読み出し処理と、を実行可能とする制御部と、を備えたことを特徴とする。
【０００９】
さらに本発明に係る楽曲演奏装置において、
代替波形読み出し処理は、当該波形情報とランダマイザの項目についてのみ異なる波形情報が読み出せない場合、当該波形情報が属する楽器種別を判定し、楽器種別が一般楽器の場合、第１のアルゴリズムで波形情報を探索し、楽器種別が打楽器の場合、第１のアルゴリズムと異なる第２のアルゴリズムで波形情報を探索する。
【００１０】
さらに本発明に係る楽曲演奏装置は、
代替波形読み出し処理において、判定された楽器種別が一般楽器の場合、当該波形情報とノートの項目についてのみ異なる波形情報を探索する。
【００１１】
さらに本発明に係る楽曲演奏装置は、
当該波形情報とノートの項目についてのみ異なる波形情報が複数存在する場合、当該波形情報とノートの差が小さい波形情報を読み出す。
【００１２】
さらに本発明に係る楽曲演奏装置は、
代替波形読み出し処理において、判定された楽器種別が打楽器の場合、当該波形情報とベロシティの項目についてのみ異なる波形情報を探索する。
【００１３】
さらに本発明に係る楽曲演奏装置において、
制御部は、代替波形読み出し処理の実行回数が所定条件を満たした場合、外部に通知する通知処理を実行可能とする。
【００１４】
さらに本発明に係る楽曲演奏用プログラムは、
複数のコマンドで構成された演奏情報に基づいて演奏を行う楽曲演奏用プログラムであって、
演奏情報中のコマンドを先読みし、コマンドに対応する波形情報を第１記憶手段から第２記憶手段に読み出す波形読み出し処理と、
コマンドに規定されている送信タイミングで読み出したコマンドと、第２記憶手段に記憶された波形情報に基づいて演奏を行う演奏処理と、
波形読みだし処理において、コマンドに対応する波形情報が読み出せない場合、第１記憶手段から、当該波形情報とランダマイザの項目についてのみ異なる波形情報を探索し、第２記憶手段に読み出す代替波形読み出し処理と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１５】
本発明に係る楽曲再生装置、または、楽曲再生用プログラムによれば、演奏に使用する波形情報が破損した場合、ランダマイザの項目についてのみ異なる代替の波形情報を使用して演奏することで、聴取上、違和感の無い演奏を行うことが可能となる。
【００１６】
さらに本発明に係る楽曲再生装置、または、楽曲再生用プログラムによれば、ランダマイザの項目についてのみ異なる波形情報が無い、あるいは、ランダマイザの項目についてのみ異なる波形情報が破損していることを理由として読み出せない場合、他の波形情報を探索することとしている。その際、当該波形情報の楽器種別（一般楽器、もしくは、打楽器）に応じたアルゴリズムを使用して波形情報を探索することで、聴取上の違和感を抑制した演奏を行うことが可能となる。
【００１７】
さらに本発明に係る楽曲再生装置、または、楽曲再生用プログラムによれば、判定された楽器種別が一般楽器の場合、ノート（音程）の項目についてのみことなる波形情報を優先して探索することで、聴取上の違和感を抑制した演奏を行うことが可能となる。
【００１８】
さらに本発明に係る楽曲再生装置、または、楽曲再生用プログラムによれば、使用対象となっていた波形情報とノートの差が小さい波形情報を読み出すことで、聴取上の違和感を抑制した演奏を行うことが可能となる。
【００１９】
さらに本発明に係る楽曲再生装置、または、楽曲再生用プログラムによれば、判定された楽器種別が打楽器の場合、ベロシティ（強度）の項目についてのみことなる波形情報を優先して探索することで、聴取上の違和感を抑制した演奏を行うことが可能となる。
【００２０】
さらに本発明に係る楽曲再生装置、または、楽曲再生用プログラムによれば、代替波形読み出し処理の実行回数が所定条件を満たした場合、外部に通知することで、楽曲再生装置を修理するなど、適切な対応を迅速に取ることが可能となる。なお、外部への通知としては、楽曲演奏装置に接続された各種表示部（ＬＥＤや液晶表示装置）に表示する通知形態、あるいは、音声による通知形態の他、通信手段を介して接続されたサーバ装置に通知する通知形態などが考えられる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態のカラオケシステムの構成を示す図
【図２】本実施形態の楽曲情報のデータ構成を示す図
【図３】本実施形態のソフトウェア音源構成を示すブロック図
【図４】本実施形態の楽曲再生処理を示すフロー図
【図５】本実施形態の第１フォールバック処理（一般楽器用）を示すフロー図
【図６】本実施形態の第２フォールバック処理（打楽器用）を示すフロー図
【発明を実施するための形態】
【００２２】
本実施形態の楽曲演奏装置について、カラオケ装置２を例にとって説明する。図１は、本発明の実施形態に係るカラオケシステムの構成を示す図である。本実施形態におけるカラオケシステムは、カラオケ装置２（コマンダ）と、リモコン装置１を含んで構成されている。なお、図１に示す例では、１台のカラオケ装置２に対して、リモコン装置１ａとリモコン装置１ｂ、２台のリモコン装置１が使用されている例である。これらリモコン装置１ａ、１ｂの構成は同一であるため、リモコン装置１として説明を行う。カラオケ装置２とリモコン装置１は、ＬＡＮ１００及びアクセスポイント１１０を利用してネットワークを形成するように接続されている。
【００２３】
カラオケボックスなどの店舗に設置されるカラオケ装置２は、楽曲情報を再生することで歌唱の伴奏を行う装置である。カラオケ装置２は、各構成を統括して制御するためのＣＰＵ３０、各種プログラムを実行するにあたって必要となる情報を一時記憶するためのメモリ２７を備えている。本実施形態のカラオケ装置２は、ハードウェア音源ではなく、ＣＰＵ３０上で動作するソフトウェア音源を使用して楽曲の演奏を行う形態となっている。ＣＰＵ３０は、ハードディスク３２等の記憶手段に記憶されている波形を読み出して、ＰＣＭ情報を合成し、音響制御部２５に出力する。音響制御部２５では、合成されたＰＣＭ情報と、マイクロホン４４ａ、４４ｂから入力される歌唱音声情報とを加算してスピーカ４２に出力する。
【００２４】
カラオケ装置２は、ユーザからの各種入力を受け付ける操作部２１を備える。カラオケ装置２は、操作部２１からの入力を解釈してＣＰＵ３０に伝達する操作処理部２２を備える。また、カラオケ装置２は、各種情報を記憶する記憶部としてのハードディスク３２を備える。カラオケ装置２は、ＬＡＮ１００に接続してネットワークに加入する通信手段としてのＬＡＮ通信部２４を備えている。
【００２５】
また、カラオケ装置２は、モニタ４１に対して歌詞映像、背景映像を表示させる映像再生手段を備える。この映像再生手段は、映像情報に基づいて映像を再生する映像再生部２９、再生する映像を一時的に蓄積するビデオＲＡＭ２８、再生された映像に対する歌詞テロップの重畳、映像効果を付与する映像制御部３１を備えて構成される。
【００２６】
さらに、このカラオケ装置２では、外部に接続されるモニタ４１以外に、タッチパネルモニタ３３に対して各種情報を表示することを可能としている。タッチパネルモニタ３３は映像制御部３１から入力された映像情報を表示する表示部３５と、タッチ入力された位置を操作処理部２２に出力するタッチパネル３４が重畳されて構成されている。このタッチパネルモニタ３３は、カラオケ装置２の操作部、あるいは、リモコン装置１のタッチパネルモニタ１１などと同様、入力部として機能する。ユーザは、タッチパネルモニタ３３にて楽曲を選択することで、直接カラオケ装置２に予約をさせるなど、カラオケ装置２に対する各種操作を行うことが可能である。
【００２７】
このような構成にてカラオケ装置２は、各種処理を実行することとなるが、カラオケ装置２の主な機能として、楽曲予約処理、楽曲再生処理などを実行可能としている。楽曲予約処理は、ユーザからの指定に基づいて楽曲を指定、予約するための処理であってリモコン装置１と連携して実行される。ユーザの操作により、リモコン装置１などの入力部で指定された予約情報をメモリ２７中の予約テーブルに登録する。楽曲再生処理は、予約された楽曲を再生させる処理であって、演奏処理と歌詞再生処理とが同期して実行される処理である。
【００２８】
演奏処理は、楽曲情報に含まれる演奏情報に基づいて演奏を行う処理である。本実施形態では、ＣＰＵ３０、メモリ２７等の制御手段を使用して演奏を行うソフトウェア音源の形態を採用している。なお、ソフトウェア音源に対し、波形合成の専用チップを使用するような形態の音源は、ハードウェア音源と呼ばれる。ソフトウェア音源としての制御手段で合成されたＰＣＭ情報は、音響制御部２５で合成され、マイクロホン４４ａ、４４ｂから入力される歌唱音声と一緒にスピーカ４２から放音される。歌詞再生処理は、楽曲情報に含まれる歌詞情報をモニタ４１に表示させることで歌唱補助を行う処理である。この歌詞再生処理で表示される歌詞に、背景映像を重畳させて表示させる背景映像表示処理を実行することとしてもよい。
【００２９】
一方、リモコン装置１は、歌唱する楽曲を選択する選曲処理を実行可能とし、予約情報などカラオケ装置２に対して各種指示を送信可能としている。また、リモコン装置１は、カラオケ装置２あるいはインターネット上に接続されたサーバ装置５から各種情報を受信し、ユーザに対して各種情報を提供することも可能である。本実施形態では、ユーザから各種指示を受け付けるユーザインターフェイスとして、操作部１７と、タッチパネルモニタ１１を備えている。タッチパネルモニタ１１は、表示部１１ａとタッチパネル１１ｂを有して構成され、表示部１１ａに各種インターフェイスを表示するとともに、ユーザからのタッチ入力を受付可能としている。
【００３０】
さらにリモコン装置１は、楽曲検索に必要とされるデータベース、各種プログラム、並びに、プログラム実行に伴って発生する各種情報を記憶する記憶部として、メモリ１４、そして、これら構成を統括して制御するためのリモコン側制御部を備えて構成される。リモコン側制御部には、ＣＰＵ１５、タッチパネルモニタ１１に対して表示する映像を形成する映像制御部１３、表示する映像情報を一時的に蓄えるビデオＲＡＭ１２、タッチパネルモニタ１１あるいは操作部１７からの入力を解釈してＣＰＵ１５に伝える操作処理部１８が含まれている。
【００３１】
また、リモコン装置１は、無線ＬＡＮ通信部１６によって、アクセスポイント１１０と無線接続されることで、ＬＡＮ１００によって構成されるネットワークに接続される。なお、各リモコン装置１は、特定のカラオケ装置２に対して事前に対応付けされている。リモコン装置１から出力される各種命令は、対応付けされたカラオケ装置２にて受信される。
【００３２】
このようなリモコン装置１の構成により、ユーザからの各種入力をタッチパネルモニタ１１、あるいは、操作部１７から受付けるとともに、映像情報をタッチパネルモニタ１１に表示することで、カラオケ装置２に対して楽曲予約などの各種指示を行うことが可能とされている。
【００３３】
図２は、カラオケ装置２で使用する楽曲情報のデータ構成を示す図である。楽曲情報は、楽曲情報に関連する各種情報であるメタ情報と、演奏等、各種処理を実行する実情報を含んで構成される。メタ情報には、楽曲情報を識別するための楽曲識別情報（楽曲ＩＤ）、楽曲名、歌手名などの楽曲関連情報が含まれている。
【００３４】
楽曲情報の実情報には、演奏情報、歌詞情報が含まれている。演奏情報は、ＭＩＤＩ規格に基づいて音源を制御する制御情報を含んで構成された、カラオケの伴奏音を演奏するための情報である。歌詞情報は、歌唱補助のため、演奏情報に同期して表示される情報であり、演奏に同期して表示された歌詞の色替えを行うように構成することも可能である。
【００３５】
では、本実施形態のカラオケ装置２で使用するソフトウェア音源について、その構成、及び、演奏処理について説明する。図３は、本実施形態のソフトウェア音源構成を示すブロック図である。ソフトウェア音源は、図１で説明したカラオケ装置２中のＣＰＵ３００、メモリ２７等の制御手段、そして、ソフトウェア音源を実現するためのプログラムを使用して実現される。
【００３６】
ＣＰＵ３００は、シーケンサ３０１、ＭＩＤＩコマンド受信手段３０２、シンセサイザ３０４といった機能を受け持つ。シーケンサ３０１は、演奏情報を構成するＭＩＤＩコマンドをハードディスク３２から読み出し、合成波形としてのＰＣＭ情報を音響制御部２５に出力する機能を有する。ＭＩＤＩコマンドに応じて生成されたＰＣＭ情報は、音響制御部２５からスピーカ４２へ出力することで演奏情報は演奏音となって楽曲情報が再生されることとなる。このシーケンサ３０１は、ＭＩＤＩコマンドの入力を管理するＭＩＤＩ管理手段３０１ａと、ＰＣＭ情報の出力を管理するＰＣＭ管理手段３０１ｂ、ＰＣＭ情報を蓄積するバッファ２７ｃを有して構成される。なお、紙面の都合上、バッファ２７ｃはＣＰＵ３００内に位置しているが、メモリ２７など、ＣＰＵ３００の外部に設けられた記憶手段を使用することが一般的である。バッファ２７ｃは、蓄積しているＰＣＭ情報を、所定のサンプリングレートに従って、音響制御部２５に出力する。ＰＣＭ管理手段３０１ｂは、バッファ２７ｃ内のＰＣＭ情報の蓄積量を監視し、ＰＣＭ情報が必要になった場合、シンセサイザ３０４にＰＣＭ生成指示を出力する（丸４）。
【００３７】
ＭＩＤＩコマンド受信手段３０２は、シーケンサ３０１から送信（丸１）されたＭＩＤＩコマンドを受信し、受信したＭＩＤＩコマンドをメモリ２７内の一部領域を使用して形成されたリングバッファ２７ａに格納する（丸２）。なお、ＭＩＤＩコマンド受信手段３０２は、ＭＩＤＩコマンドを受信した場合、確認の意を有する応答信号をＭＩＤＩ管理手段３０１ａに返信する（丸３）。ＣＰＵ３００は、リングバッファ２７ａに記憶したＭＩＤＩコマンドに基づき、演奏のためＭＩＤＩコマンドで使用する波形情報をハードディスク３２からキャッシュ２７ｂに読み出す。このように第１記憶手段としてのハードディスク３２から、アクセス速度の早い第２記憶手段としてのキャッシュ２７ｂに記憶することで、シンセサイザ３０４における演奏（波形合成）を可能としている。
【００３８】
また、ハードディスク３２は、ハードウェア音源で使用するＲＯＭのように波形情報に特化された記憶手段ではなく、他のデータやプログラムを記憶する汎用の記憶手段である。そのため、ハードディスク３２に記憶する波形情報の読み出しができない、あるいは、波形情報に破損が生じることが考えられる。本実施形態では、演奏に先駆けてキャッシュ２７ｂに波形情報を読み出す際、当該波形情報を読み出すことができない、あるいは、当該が破損している場合、当該波形情報に代えて他の波形情報をキャッシュ２７ｂに読み出して演奏に使用することとしている。このような構成により、演奏上、波形情報が欠けて演奏される不都合の抑制を図っている。また、支障の生じた波形情報として、聴取上近い波形情報を使用することで、演奏上の違和感を抑えることとしている。
【００３９】
シンセサイザ３０４は、リングバッファ２７ａに記憶されたＭＩＤＩコマンドに記述されたイベントデータＥＶをデルタタイムＤＴに基づいて取り出し（丸５）、キャッシュ２７ｂに蓄積した波形情報を読み出してＰＣＭ情報を合成し（丸６）、ＰＣＭ情報を出力する（丸８）機能を有する。また、シンセサイザ３０４は、ＤＳＰ機能を有しており、波形情報に対して各種音響効果を付与する（丸７）ことが可能である。
【００４０】
図３は、本実施形態の楽曲再生処理を示すフロー図である。図１のカラオケシステムにおいて、リモコン装置１から送信された予約情報は、カラオケ装置２のメモリ２７で管理する予約テーブルに順次記憶される。カラオケ装置２は、予約テーブルのチェックを行い（Ｓ１０１）、次に再生すべき再生の楽曲があると判定された場合（Ｓ１０２：Ｙｅｓ）、ハードディスク３２から、予約情報中に規定された楽曲情報の読み出しを開始する（Ｓ１０３）。楽曲情報中の演奏情報に規定されるＭＩＤＩコマンドが、リングバッファ２７ａに読み出されることに伴って、当該ＭＩＤＩコマンドで必要となる波形情報がハードディスク３２からキャッシュ２７ｂに読み出される（Ｓ１０４）。
【００４１】
波形情報の読み出しに伴い、当該波形情報の使用可否かが判定される（Ｓ１０５）。ここで、波形情報が使用可能とは、ハードディスク３２からキャッシュ２７ｂに読み出し可能であること、及び、チェックサム等の確認処理により波形情報に破損が生じていないことをいう。波形情報が使用可能である場合（Ｓ１０５：Ｙｅｓ）には、シンセサイザ３０４は、キャッシュ２７ｂに読み出した波形情報に基づいて演奏を実行する。一方、波形情報が使用できない場合（Ｓ１０５：Ｎｏ）には、ＣＰＵ３００は、使用できない波形情報の代わりになる波形情報の探索を開始する。
【００４２】
波形情報の探索では、まず、ランダマイザの項目のみが異なる波形情報を探索する第０探索を実行する（Ｓ１０６）。波形情報は、バンクと呼ばれる概念によって管理される音色、音程（音の高低）を示すノートＮ、音の大きさを示すベロシティＶ、演奏のニュアンスを出すためのランダマイザＲ等の項目を使用して管理されている。ここで、ランダマイザとは、同じ音色、ノートＮ、ベロシティＶについて、複数の波形情報を用意しておき、発音が連続する際、これら複数の波形情報の中からランダムに波形情報を読み出すことで、人の演奏によるニュアンス（揺らぎ）を生じさせる機能である。なお、連続する発音の初回時、あるいは、単発の発音時には、複数の波形情報の内の基準波形情報が使用される。ランダマイザは、ドラムのように連続して同じ音を発声させる場合等において、機械臭さの残る不自然な演奏を解消するために有効である。
【００４３】
第０探索（Ｓ１０６）では、使用できなかった波形情報と、同じ音色、同じノートＮ、同じベロシティＶを有する波形情報であって、ランダマイザＲの項目のみが異なる波形情報を探索する（Ｓ１０６）。このような条件に合う波形情報が使用可能である場合（Ｓ１０７：Ｙｅｓ）には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する（Ｓ１１０）。このようにランダマイザＲの項目のみが異なる波形情報は、本来使用対象となる波形情報と略同じ聴感を有する波形情報であるため、演奏時における聴取上の違和感はほとんど生じない。
【００４４】
一方、第０探索（Ｓ１０６）において、ランダマイザＲの項目のみが異なる波形情報が探索できなかった場合（Ｓ１０７：Ｎｏ）、すなわち、ランダマイザＲの項目のみ異なる波形情報が存在しない、あるいは、破損して読み出すことができない場合には、更なる波形情報の探索を実行する。更なる探索では、楽器種別に応じて探索のアルゴリズムを異ならせている。使用できなかった波形情報の楽器種別を参照し、楽器種別が一般楽器である場合（Ｓ１０９：一般楽器）には、第１フォールバック処理（Ｓ２００）を実行し、楽器種別が打楽器（例えば、ドラムセット等）である場合（Ｓ１０９：打楽器）には、第２フォールバック処理（Ｓ３００）を実行する。なお、一般楽器とは、打楽器以外の音程を有する楽器種別のことをいう。このように、本実施形態では、一般楽器と打楽器とで、波形情報探索におけるアルゴリズムを変更することで、使用できない波形情報と聴感上、類似した波形情報を探索することが可能となっている。
【００４５】
楽曲再生期間中、Ｓ１０３〜Ｓ１１１の処理を繰り返し実行することで、楽曲情報（演奏情報と歌詞情報）に基づく再生が行われる。なお、歌詞情報の再生については、図４のフロー図では省略して記載している。楽曲再生が終了する（Ｓ１１１：Ｙｅｓ）と、予約テーブル上、次に予約された楽曲の再生に備える。
【００４６】
では、楽器種別毎に異なるアルゴリズムで、代わりの波形情報を読み出す第１フォールバック処理（Ｓ２００）、第２フォールバック処理（Ｓ３００）について説明する。図５は、本実施形態の第１フォールバック処理（Ｓ２００：一般楽器用）を示すフロー図である。第１フォールバック処理では、第１〜第５探索までの波形情報の探索を実行することが可能である。第１探索では、使用できなかった波形情報と同じ音色（ＬＳＢ（Least Significant Bit）、ＭＳＢ（Most Significant Bit）、プログラムナンバーＰｒｇＮｕｍが全て共通）の波形情報を対象として探索を実行する。その際、ノートＮ、ベロシティＶ、ランダマイザＲの項目について優先度を設けることで、使用できなかった波形情報となるべく聴感上、近い波形情報の探索を行うこととしている。
【００４７】
１番優先度の高い第１−１探索（Ｓ２０１）では、ノートＮが異なり、ベロシティＶが同一であって、ランダマイザＲ中の基準波形情報を探索する。ここで、同一のベロシティＶを使用する、すなわち、ノートＮよりもベロシティＶを優先させるのは、異なるベロシティＶを使用した場合、音の明るさが異なり、聴取上の違和感が生じやすいことを理由としている。また、第１−１探索において、探索の対象となる波形情報は、複数存在することが考えられるが、使用できない波形情報とノートＮが近い波形情報を使用することが好ましい。したがって、使用できない波形情報とノートＮが近い波形情報から探索を開始することになる。また、ランダマイザＲ中の基準波形情報を使用する理由は、基準波形情報は、ランダマイザ中の他の波形情報と比較して、人の演奏のニュアンスを生じさせる加工が施されていない標準的な波形情報であることを理由としている。基準波形情報を優先させることで、演奏時の違和感を抑制することが可能となっている。第１−１探索（Ｓ２０１）において、使用可能な波形情報が見つかった場合（Ｓ２０２：Ｙｅｓ）には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する。なお、演奏時、波形情報はＭＩＤＩコマンドに規定される音程及び音の大きさに変換して演奏される。
【００４８】
一方、第１−１探索（Ｓ２０１）において、使用可能な波形情報が存在しない場合（Ｓ２０２：Ｎｏ）には、第１−２探索（Ｓ２０３）を実行する。この第１−２探索（Ｓ２０３）は、第１−１探索（Ｓ２０１）と、ランダマイザＲの項目においてのみ相違している。第１−１探索（Ｓ２０１）では、基準波形情報を探索対象としていたのに対し、第１−２探索（Ｓ２０３）では、探索の範囲を基準波形情報以外の他の波形情報にまで広げることとしている。第１−２探索（Ｓ２０３）において、使用可能な波形情報が見つかった場合（Ｓ２０３：Ｙｅｓ）には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する（Ｓ２１６）。
【００４９】
なお、第１−１探索（Ｓ２０１）、第１−２探索（Ｓ２０３）では、ノートＮが異なる波形情報を探索することになり、使用できなかった波形情報に近いノートＮ、すなわち、ノート（音程）の差が小さい波形情報を使用することが、聴感上好ましい。ここで、ノートＮには高低があるため、ノートＮが近い波形情報としては、同じ音程差であっても、下に位置する波形情報と、上に位置する波形情報が存在することが考えられる。この場合、探索対象となる楽器の種別に応じて探索手法を異ならせることが考えられる。音程に関し、下に位置する波形情報を使用した場合、音質は良いが、アタック感など楽器の特徴が無くなる場合がある。そのため、下に位置する波形情報を優先させるのは、シンセサイザのような合成音の楽器種別に適している。一方、上に位置する波形情報を使用した場合、音質は劣ることになるが、楽器の特徴が残せるため生音系の楽器種別に適している。このように第１−１探索（Ｓ２０１）では、楽器種別に応じて、音程に関し、上から探索するか下から探索するかを変更してもよい。
【００５０】
第１−２探索（Ｓ２０３）において、使用可能な波形情報が存在しない場合（Ｓ２０４：Ｎｏ）には、第１−３探索（Ｓ２０５）を実行する。この第１−３探索（Ｓ２０５）は、ノートＮが同一であり、ベロシティＶが異なり、ランダマイザＲ中の基準波形情報を探索する。このように、第１−１探索（Ｓ２０１）、第１−２探索（Ｓ２０２）において、ノートＮが異なり、ベロシティＶが同一の波形情報を見つけることができなかった場合には、ノートＮが同一でベロシティＶが異なる波形情報を探索の対象とする。特に、第１−３探索（Ｓ２０５）では、ランダマイザＲ中の基準波形情報を探索の対象としている。
【００５１】
第１−３探索（Ｓ２０５）において、使用可能な波形情報が見つかった場合（Ｓ２０６：Ｙｅｓ）には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する（Ｓ２１６）。なお、演奏時、波形情報はＭＩＤＩコマンドに規定される音程及び音の大きさに変換して演奏される。一方、第１−３探索（Ｓ２０５）において、使用可能な波形情報が存在しない場合（Ｓ２０６：Ｎｏ）には、第１−４探索（Ｓ２０７）を実行する。この第１−４探索（Ｓ２０７）は、第１−１探索（Ｓ２０１）と第１−２探索（Ｓ２０３）の場合と同様、第１−３探索（Ｓ２０５）と、ランダマイザＲの項目においてのみ相違している。
【００５２】
なお、第１−３探索（Ｓ２０５）、第１−４探索（Ｓ２０７）では、ベロシティＶが異なる波形情報を探索することになり、使用できなかった波形情報に近いベロシティＶを有する波形情報を使用することが、変換量が抑えられるため聴感上好ましい。ここで、ベロシティＶは大小を有するため、ベロシティＶが近い波形情報としては、同じ音量差であっても、下に位置する波形情報と、上に位置する波形情報が存在することが考えられる。音量について、下に位置する波形情報を使用した場合、聴感上暗くなるとともに、音質が低下することが考えられる。一方、上に位置する波形情報を使用した場合、聴感上明るくなるとともに、音質の面では有利になることが考えられる。このような特性を踏まえ、この場合、探索対象となる波形情報の楽器種別に応じて探索手法（上を優先させるか、下を優先させるか）を異ならせることとしてもよい。
【００５３】
以上、第１探索では、同じ音色（ＬＳＢ、ＭＳＢ、プログラムナンバーＰｒｇＮｕｍが全て共通）の波形情報を対象として探索を実行する。この第１探索において、使用可能な波形情報が見つからなかった場合には、以降の第２〜第５探索（Ｓ２０９〜Ｓ２１４）を実行する。この第２〜第５探索は、使用できなかった波形情報と異なる音色に関し、波形情報の探索を実行する。本実施形態では、使用できなかった波形情報の音色と聴感上近い音色を使用することが好ましい。先に述べたように電子楽器において音色は、バンクと呼ばれる概念によって管理されている。バンクには、ＭＳＢ、ＬＳＢ、ＰｒｇＮｕｍの順で階層化されている。聴感上近い音色を探索するには、ＬＳＢ違い（ＭＳＢとＰｒｇＮｕｍは同じ）、ＭＳＢ違い（ＬＳＢとＰｒｇＮｕｍは同じ）、ＰｒｇＮｕｍ違い（ＭＳＢとＬＳＢは同じ）の順で探索することが好ましい。したがって、第２〜第５探索（Ｓ２０９〜Ｓ２１４）では、それぞれ、ＬＳＢ違い、ＭＳＢ違い、ＰｒｇＮｕｍ違いの音色について波形情報を探索することとしている。
【００５４】
第２〜第５探索では、まず、使用できなかった波形情報と、ノートＮ及びベロシティＶが共通の波形情報を探索対象とする。次に第１探索の詳細（第１−１探索〜第１−４探索）と同様のアルゴリズムを使用して波形情報の探索を実行する。波形情報が見つかった場合には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する（Ｓ２１６）。一方、第５探索（Ｓ２１３）を実行しても波形情報が見つからなかった場合（Ｓ２１４：Ｎｏ）には、ログにエラー情報を記録するエラー出力を実行して一連の処理を終了する（Ｓ２１５）。
【００５５】
次に、使用できなかった波形情報の楽器種別が打楽器の場合に実行する第２フォールバック処理（Ｓ２００）について説明する。図６は、本実施形態の第２フォールバック処理（Ｓ３００：打楽器用）を示すフロー図である。第２フォールバック処理では、第１〜第４探索までの波形情報の探索を実行することが可能である。第１探索では、使用できなかった波形情報と同じ音色（ＬＳＢ、ＭＳＢ、プログラムナンバーＰｒｇＮｕｍが全て共通）の波形情報を対象として探索を実行する。
【００５６】
第１探索では、ノートＮが同一であってベロシティＶの異なる波形情報のみを探索の対象としており、ノートＮが異なる波形情報は探索の対象としていない。同じ音色であって、ノートＮが異なる波形情報の探索は、第４探索（Ｓ３０９）で行われる。これは、打楽器系の音色では、ノートＮの違いは、楽器の違いとして扱われることを理由としている。例えば、ドラムセットでは、バスドラム、スネアドラム、ハイハットシンバル等の複数の打楽器が１つの音色として扱われ、各打楽器はノートＮに割り当てられている。したがって、本実施形態の波形情報の探索において、ノートＮを異ならせた場合、本来使用したい波形情報とは、音色が大きく異なる波形情報となってしまう。そのため、第２フォールバック処理の第１探索では、ノートＮが異なる波形情報の探索を行わない。
【００５７】
第１−１探索（Ｓ３０１）では、同じ音色（ＬＳＢ、ＭＳＢ、プログラムナンバーＰｒｇＮｕｍが全て共通）の波形情報について、ノートＮが同一、ベロシティＶが異なる基準波形情報を探索対象とする。ランダマイザ機能において、基準波形情報は使用頻度の一番多い波形情報であるため品質の高い波形情報が用意されていることが多く、また、他の波形情報のように人の演奏のニュアンスが施されていないため、第１−１探索では、基準は系情報を優先させることとしている。使用可能な波形情報が見つかった場合（Ｓ３０２：Ｙｅｓ）には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する（Ｓ３１２）。第１−２探索（Ｓ３０３）では、第１−１探索（Ｓ３０１）とランダマイザＲの項目のみが異なる波形情報を探索する。使用可能な波形情報が見つかった場合（Ｓ３０４：Ｙｅｓ）には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する（Ｓ３１２）。
【００５８】
以上の第１探索において、波形情報が見つからない場合（Ｓ３０４：Ｎｏ）には、使用できなかった波形情報と音色違いの波形情報を対象として探索を実行する。第２探索（Ｓ３０５）、第３探索（Ｓ３０７）は、音色違いの波形情報を対象として探索を実行する。打楽器系の音色において、聴感上近い音色を探索するには、ＬＳＢ違い（ＭＳＢとＰｒｇＮｕｍは同じ）、ＰｒｇＮｕｍ違い（ＭＳＢとＬＳＢは同じ）の順で探索することが好ましい。第２、第３探索（Ｓ３０５〜Ｓ３０８）では、それぞれ、ＬＳＢ違い、ＰｒｇＮｕｍ違いの音色について波形情報を探索することとしている。
【００５９】
第３探索（Ｓ３０７）においても波形情報が見つからない場合（Ｓ３０８：Ｙｅｓ）、第４探索（Ｓ３０９）を実行する。第４探索（Ｓ３０９）は、使用することができなかった波形情報と同じ音色（第１探索で探索する音色と同じ音色）を対象として、ノートＮが異なる波形情報を探索の対象としている。先に述べたように、打楽器系の音色では、ノートＮが異なると、楽器自体が異なることを理由として、聴感上大きく異なることが考えられる。そのため、本実施形態の第２フォールバック処理（Ｓ３００）は、第１フォールバック処理（Ｓ２００）よりも、ノートＮが異なる波形情報の探索の優先度を下げた点において、そのアルゴリズムが大きく異なっている。
【００６０】
第２探索〜第４探索（Ｓ３０５〜Ｓ３１０）において、使用可能な波形情報が見つかった場合には、当該波形情報をキャッシュ２７ｂにセットして演奏に使用する（Ｓ３１２）。一方、第４探索（Ｓ３０９）を実行しても波形情報が見つからなかった場合（Ｓ３１０：Ｎｏ）には、ログにエラー情報を記録するエラー出力を実行して一連の処理を終了する（Ｓ３１１）。
【００６１】
以上、カラオケ装置２を例に取って、本実施形態の楽曲演奏装置を説明したが、楽曲演奏装置では、波形情報が使用できない場合、代替となる波形情報を使用することで、演奏時に波形情報が不足することができないといった支障を解消することが可能である。特に、聴感上、できるだけ類似した波形情報を探索することで、代替となる波形情報を使用することによる演奏時の違和感の抑制を図ることが可能となっている。
【００６２】
また、使用対象となる波形情報が使用できない、すなわち、ハードディスク３２からキャッシュ２７ｂに読み出すことができない理由として、ハードディスク３２内で不良セクターの拡大が進んでいる場合がある。本実施形態では、代替となる波形情報を使用して演奏を行うため、このような障害の進行に気付かないことが考えられる。また、代替となる波形情報の使用頻度が大きくなると、聴取上の違和感も大きくなる。そのため、楽曲再生処理において、波形情報が使用可能でないことが判定された場合（Ｓ１０５：Ｎｏ）には、支障が発生している旨を外部に通知する通知処理を実行してもよい。例えば、波形情報が使用可能でないことが判定された回数をカウントしておき、この回数が所定条件（例えば、合計回数が閾値を超える、あるいは、その頻度が閾値を超える等）を満たした場合、外部に通知することで、支障が拡大する前に、修理を行う等の対応を取ることが可能である。通知処理としては、カラオケ装置２のモニタ４１やスピーカ４２を使用して通知する形態の他、ＬＡＮ通信部２４等の通信手段を使用して、サーバ装置５に通知する形態等、各種形態を採用することが可能である。
【００６３】
なお、本実施形態の楽曲演奏装置は、カラオケ装置２のみならず、電子楽器など他の装置に適用することが可能である。あるいは、パソコン、スマートホンなどの携帯端末、ゲーム機などの各種コンピュータで実行可能な楽曲演奏用プログラムとして提供することも可能である。
【符号の説明】
【００６４】
１（１ａ、１ｂ）：リモコン装置           ２７ｃ：バッファ
２：カラオケ装置                         ２８：ビデオＲＡＭ
５：サーバ装置                           ２９：映像再生部
１１：タッチパネルモニタ                 ３０：ＣＰＵ
１１ａ：表示部                           ３１：映像制御部
１１ｂ：タッチパネル                     ３２：ハードディスク
１２：ビデオＲＡＭ                       ３３：タッチパネルモニタ
１３：映像制御部                         ３４：タッチパネル
１４：メモリ                             ３５：表示部
１５：ＣＰＵ                             ４１：モニタ
１６：無線ＬＡＮ通信部                   ４２：スピーカ
１７：操作部                             ４４ａ、４４ｂ：マイクロホン
１８：操作処理部                         １１０：アクセスポイント
２１：操作部                             ３００：ＣＰＵ
２２：操作処理部                         ３０１：シーケンサ
２４：ＬＡＮ通信部                       ３０１ａ：ＭＩＤＩ管理手段
２５：音響制御部                         ３０１ｂ：ＰＣＭ管理手段
２７：メモリ                             ３０２：ＭＩＤＩコマンド受信手段
２７ａ：リングバッファ                   ３０４：シンセサイザ
２７ｂ：キャッシュ
【図１】
0006372407.tif 000002
【図２】
0006372407.tif 000003
【図３】
0006372407.tif 000004
【図４】
0006372407.tif 000005
【図５】
0006372407.tif 000006
【図６】
0006372407.tif 000007