以下、この発明の実施の形態を添付図面に従って詳細に説明する。
図1は、本発明に係る楽音再生装置の全体構成の一実施例を示すハード構成ブロック図である。本実施例に示す楽音再生装置は少なくとも任意の楽曲データの再生に基づいて楽音を発音(放音)することの可能な例えば電子楽器であって、マイクロプロセッサユニット(CPU)1、リードオンリメモリ(ROM)2、ランダムアクセスメモリ(RAM)3からなるマイクロコンピュータによって制御される。CPU1は、この楽音再生装置全体の動作を制御する(図4の制御部に相当)。このCPU1に対して、データ及びアドレスバスDを介してROM2、RAM3、演奏操作子4、表示部5、設定操作子6、音源部7、記憶装置8、通信インタフェース(I/F)9がそれぞれ接続されている。更に、CPU1には、タイマ割込み処理(インタラプト処理)における割込み時間や各種時間を計時するタイマ1Aが接続されている。例えば、タイマ1Aはクロックパルスを発生し、発生したクロックパルスをCPU1に対して処理タイミング命令として与えたり、あるいはCPU1に対してインタラプト命令として与える。CPU1は、これらの命令に従って各種処理を実行する。
ROM2は、CPU1により実行あるいは参照される各種制御プログラムや各種データ等を格納する。RAM3は、CPU1が所定のプログラムを実行する際に発生する各種データなどを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを一時的に記憶するメモリ等として使用される。RAM3の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、テンポラリメモリなどとして利用される。
演奏操作子4は楽音の音高を選択するための複数の鍵を備えた例えば鍵盤等のようなものであり、各鍵に対応してキースイッチを有しており、この演奏操作子4(鍵盤等)はユーザ自身の手弾きによるマニュアル演奏のために使用することは勿論のこと、再生したい楽曲データの選択などのために使用することもできる。
表示部5は例えば液晶表示パネル(LCD)やCRT等から構成される表示器(ディスプレイ)であって、当該装置における演奏環境/楽音制御に関する各種設定の設定状況や、ROM2や記憶装置8に記憶されている各種データあるいはCPU1の制御状態などを表示する。ただし、この当該装置に設けられている表示部5は後述する情報処理装置の表示部15とは異なり簡易な表示のみが可能な表示器、つまりは表示可能な文字/記号や文字数等が限定され複雑な表示や一度に多くの内容を表示することの難しい、具体的には図3に示すように複数段にわたる楽譜を表示することの難しい、表示領域の非常に狭い表示器である。
設定操作子(スイッチ等)6は、例えば当該装置を所望の楽曲データに基づいて楽音を発音させる楽音再生モードに設定するモード選択スイッチ、再生対象の楽曲データを選択する曲選択スイッチ、楽曲データの再生開始及び再生停止さらには楽音再生位置の巻き戻しや早送りなどを行う再生制御スイッチ、音色や効果等の演奏環境/楽音制御に関する各種設定(パラメータ)を決定するためのスイッチ類、表示制御情報(図4参照)の出力オン/オフを切り替える切替ボタンなどの各種の操作子を含んで構成される。なお、設定操作子6は上記した以外にも音高、音色、効果等を選択・設定・制御するための数値データ入力用のテンキーや文字データ入力用のキーボード等の各種操作子を含んでいてもよい。これらの設定操作子6が操作された場合には、その操作されたスイッチに応じた情報やデータ等がデータ及びアドレスバスDを介してCPU1(制御部)に入力される。
音源部7は複数のチャンネルで楽音信号の同時発生が可能であり、データ及びアドレスバス1Dを経由して与えられた、ユーザによる演奏操作子4の操作に応じて発生される及び/又は任意の楽曲データの再生に応じて発生される各種演奏情報に基づいて楽音信号を生成する。また、本実施形態においては前記楽音信号を生成するだけでなく、例えば直接スペクトラム拡散技術などを用いてデジタル信号である表示制御情報を可聴帯域の高周波信号(これを本明細書では音響信号と呼ぶ)に変調(変換)して、前記楽音信号に前記音響信号を重畳した楽音信号(これを便宜的に重畳信号と呼んで区別する)又は前記音響信号のみを生成することのできるようにもなっている(後述する図4(B)参照)。音源部7から発生されるこれらの信号(楽音信号または重畳信号,音響信号)は、アンプやスピーカなどを含むサウンドシステム7Aから発音(放音)される。このサウンドシステム7Aは、可聴帯域の信号を外部出力する信号出力手段に相当する。なお、音源部7とサウンドシステム7Aの構成には、従来のいかなる構成を用いてもよい。例えば、音源部7はFM、PCM、物理モデル、フォルマント合成等の各種楽音合成方式のいずれを採用してもよく、また専用のハードウェアで構成してもよいし、DSP(Digital Signal Processor)やCPU1によるソフトウェア処理で構成してもよい。
記憶装置8は、楽曲データなどの予め用意された各種データの他、CPU1が実行する各種制御プログラム等を記憶する。なお、上述したROM2に制御プログラムが記憶されていない場合、この記憶装置8(例えばハードディスク)に制御プログラムを記憶させておき、それをRAM3に読み込むことにより、ROM2に制御プログラムを記憶している場合と同様の動作をCPU1に実行させることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、記憶装置8はハードディスク(HD)に限られず、フレキシブルディスク(FD)、コンパクトディスク(CD‐ROM・CD‐RAM)、光磁気ディスク(MO)、あるいはDVD(Digital Versatile Disk)等の様々な形態の記憶媒体を利用する記憶装置であればどのようなものであってもよい。あるいは、フラッシュメモリなどの半導体メモリであってもよい。
通信インタフェース(I/F)9は、当該装置と図示しない外部機器との間で制御プログラムや各種データなどの各種情報を送受信するためのインタフェースである。この通信インタフェース9は、例えばMIDIインタフェース,LAN,インターネット,電話回線等であってよく、また有線あるいは無線のものいずれかでなく双方を具えていてよい。
なお、上述した実施例において、演奏操作子4は鍵盤楽器の形態に限らず、弦楽器や管楽器あるいは打楽器等どのようなタイプの形態でもよい。また、楽音再生装置は演奏操作子4や音源部7などを1つの装置本体に内蔵したものに限らず、それぞれが別々に構成され、MIDIインタフェースや各種ネットワーク等の通信インタフェース9を用いて各装置を接続するように構成されたものであってもよいことは言うまでもない。
なお、本発明に係る楽音再生装置は電子楽器に限らず、カラオケ装置、パーソナルコンピュータ、携帯電話等の携帯通信端末、あるいはゲーム装置など、楽曲データの再生に伴いスピーカ等を通じて楽音を放音することのできるものであればどのような形態の装置・機器であってもよい。携帯通信端末の場合、端末のみで所定の機能が完結している場合に限らず、機能の一部をサーバ側に持たせ、端末とサーバとからなるシステム全体として所定の機能を実現するようにしてもよい。
次に、前記楽音再生装置とは別途独立に設けられてなり、表示コンテンツを表示する表示部(外部表示器)を備える情報処理装置について説明する。図2は、本発明に係る情報処理装置の全体構成の一実施例を示すハード構成ブロック図である。図2に示す情報処理装置はCPU11、ROM12、RAM13からなるマイクロコンピュータによって制御されてなるものであって、前記コンピュータが所定の音楽機能を実現するプログラム(例えば後述する「楽譜表示処理」プログラム)を実行することに基づき、表示部15への楽譜表示及び表示更新に係る処理を実施することが可能となる、例えばタブレット端末やスマートフォン等の電子機器である。CPU11はこの情報処理装置全体の動作を制御するものであり(図5の制御部参照)、このCPU1には各種時間を計時するタイマ11Aが接続されている。ROM12は制御プログラムやデータ等を恒常的に記憶し、RAM13はそれらを一時的に記憶する。
入力操作部14は物理操作子であって、例えば電源オン/オフスイッチ、外部出力音量やマイク感度などの調整スイッチなどである。表示部15は、ユーザタッチ操作を検出(認識)する検知機能を有してなるタッチパネル式のディスプレイである(表示手段に相当)。表示部15へのユーザタッチ操作の検出に応じて、例えば当該装置上で動作させるプログラムの選択/実行などを行うことができる。また、本実施形態における情報処理装置の表示部15は、上述した楽音再生装置にて再生中の楽音に関連する例えば楽譜や歌詞などの表示コンテンツを表示する外部表示器としても機能し得る。
ここで、情報処理装置の表示部15が楽音再生装置の外部表示器として機能する場合に表示される表示コンテンツの一例を図3に示す。図3は、情報処理装置の表示部15に表示コンテンツとして楽譜を表示した例を示す。ただし、この例では譜めくりされていない第1ページの楽譜を表示した場合を示す。
表示部15には一例として、例えば3つに分けられた表示領域の上から順にタイトル表示Ha、楽譜表示Hb、その他表示Hcが表示される。タイトル表示Haには、楽譜表示対象である再生中の楽音に関連する曲名や作曲者名などの曲情報の一部を表示する。その他表示Hcには、プログラム選択などのメニュー画面(図示せず)に戻るための「メニュー」ボタンなどのユーザによるタッチ操作に応じて機能する仮想操作子Iや、上記した楽音再生装置のスピーカから放音される重畳信号又は音響信号が音声入力部(マイク)16を介して受信できている場合に点灯表示され、受信できていない場合に消灯表示される受信インジケータJなどを表示する。楽譜表示Hbには、1段が複数小節からなる楽譜を複数段にわたって表示する。ここでは、4小節分の楽譜を1段に表示したものを3段分表示している例を示した。なお、この1段が4小節分からなり3段にわたり表示される計12小節分の楽譜が1ページ分の画像データとして形成されてなり、各曲全体の楽譜に相当する複数ページ分の画像データ(まとめて楽譜データと呼ぶ)が各曲毎に記憶装置17に予め記憶されている。
図2の説明に戻って、音声入力部16はマイクロフォンであって、上記した楽音再生装置のスピーカから放音される楽音信号(又は重畳信号,音響信号)を集音し、集音した信号をCPU11(制御部)に出力する。この音声入力部16(マイク)は、可聴帯域の信号を取得する信号取得手段に相当する。記憶装置17は、CPU11が実行する各種制御プログラムや上記した楽譜データあるいは後述する表示制御テーブルなどの各種データを記憶する(コンテンツ記憶手段に相当)。通信インタフェース(I/F)18は、例えばLANやインターネット、電話回線等の有線あるいは無線の通信ネットワークに接続されており、該通信ネットワークを介して図示を省略したサーバコンピュータ等と接続され、当該サーバから制御プログラムあるいは各種データなどを本装置側に取り込むためのインタフェースである。
図1に示した本発明に係る楽音再生装置においても、従来知られている楽音再生装置のように、ユーザ選択に従ってROM2あるいは記憶装置8等から読み出された楽曲データの再生に応じて発生される楽音信号をスピーカから放音する。ただし、本発明の一実施例に係る楽音再生装置では、単に楽曲データの再生に応じて発生される楽音信号をそのままスピーカから放音することだけに留まらず、表示制御情報がスピーカとマイクとを用いてデータ転送可能な信号に変調された音響信号を重畳した楽音信号(重畳信号)又は前記音響信号のみをスピーカから放音することによって、情報処理装置の表示部15(外部表示器)に表示される表示コンテンツの表示制御(一例として楽譜の譜めくり制御)を実現するようにしている。以下、説明する。
図4は、楽音再生装置における楽譜制御機能の概要を説明するための機能ブロック図である。図4(A)に示すように、制御部1は楽曲データ取得部Aと曲情報取得部Bと表示制御情報生成部Cとに大きく分けることができる。楽曲データ取得部Aは、設定操作子6の操作に応じて出力される選曲指示に従って記憶装置8から再生対象の楽曲データを読み出すと共に、再生指示に従って読み出した楽曲データを音源部8に出力する。楽曲データは曲名や歌手名等の他に楽曲を特定するための情報(曲情報)の一つとして曲毎に固有の曲IDを含んでおり、曲情報取得部Bは前記読み出した楽曲データの曲情報から抽出した曲IDを表示制御情報生成部Cに送る。表示制御情報生成部Cは、設定操作子6の切替スイッチがオンされると能動化し、曲情報取得部Bから出力される曲IDと音源部7における楽音信号再生部Dから出力される小節番号とに基づいて、表示制御情報を所定の時間間隔で(例えば0.5秒毎に)生成する。この表示制御情報は、切替スイッチがオンであれば楽曲データの再生状況に関わらず常に生成される。切替スイッチがオフされると表示制御情報生成部Cはその動作を停止し、表示制御情報は生成されない。また、切替スイッチのオン/オフにあわせて「譜めくり機能」がオン又はオフに設定される。
表示制御情報はデジタル信号であって、当該信号が楽譜の譜めくり制御に関する信号であることを示す情報や制御データ全体の長さが識別できる情報を含むヘッダー情報(1byte程度)と、曲ID及び小節情報(位置情報)からなる制御データ(2byte程度)と、制御データの終わりを示す情報からなるフッター情報(1byte程度)とにより構成されてなる。
音源部7は、楽音信号再生部D(再生手段に相当)と変調制御部E(制御手段に相当)とに分けることができる。楽音信号再生部Dは、設定操作子6の再生制御スイッチにより再生開始が指示されていると、楽曲データ取得部Aから出力された楽曲データを再生して楽音信号を生成する。また、演奏操作子4で演奏操作が行われると、演奏操作に応じた演奏情報に従う楽音信号を生成する。生成された楽音信号は変調制御部Eに出力される。さらに、楽音信号再生部Dは楽曲データを再生している場合に、現在再生中の楽音進行上の演奏位置(再生位置)を表す位置情報を表示制御情報生成部Cに出力する。この位置情報は、現在再生されている楽音の位置する小節を表す小節番号である。
変調制御部Eは、表示制御情報生成部Cからの表示制御情報を可聴帯域内の高帯域からなる音響信号に変調して、楽音信号再生部Dから楽音信号が出力されているときには該楽音信号に重畳し、この音響信号が重畳された楽音信号(重畳信号)をサウンドシステム7Aに出力する。サウンドシステム7Aは、スピーカを通じて重畳信号を放音する。一方、楽音信号再生部Dから楽音信号が出力されていないときには、音響信号のみがサウンドシステム7A(スピーカ)に出力されて放音される。
デジタル信号である表示制御情報を音響信号に変調して伝送する技術では、表示制御情報を可聴帯域の高周波信号(音響信号)に変調することで、一般的なスピーカで再生可能な帯域(可聴帯域)のうち人(特には成人)の耳にはほとんど聞き取ることのできない約18kHz程度の可聴帯域内の高帯域を利用してデータ伝送することのできるようにしている。これによれば、データ転送速度は最大で約80bps程度とそれほど速くはないが、10メートル以上離れた場所にも表示制御情報をデータ伝送することができる、複数の受信対象に同時に(1対多に)配信できる、既存のスピーカ設備を利用できる、スピーカ側の音量調節によって伝送範囲を制御できるといったメリットがある。なお、表示制御情報を音響信号に変調するのに利用する周波数帯域は、人に通常聴こえないような可聴帯域内の高帯域であれば上記したような約18kHz程度の周波数帯域に限られない。
なお、上述したように、本実施形態では切替スイッチのオン/オフに応じて表示制御情報ひいては音響信号の生成の有無を設定することができるようになっている。すなわち、音響信号は人に通常聴こえないような可聴帯域内の高帯域の信号であるにも関わらず、その生成をなしにも設定することができる。その理由として、第1に、約18kHz程度の周波数帯域の高帯域信号はユーザの年齢によっては聞こえてしまうことがあり(特に低年齢の子供)、そうしたユーザが自動的な譜めくり制御を必要としていないときであっても音響信号が生成されてしまうと楽音信号に混じって音響信号が聞こえてしまい非常に耳障りであるからである。第2に、複数台の楽音再生装置が用意されているような場合に、2台以上の楽音再生装置から音響信号が出力されると混信が生じてうまく譜めくり制御することができなくなるからである(この場合、1台のみオンにして残りはオフにするとよい)。第3に、ユーザが何らかの理由(例えば特定のページを開きっぱなしにした状態で演奏したいような場合)で譜めくり制御をさせたくないにも関わらず、自動的に譜めくり制御が行われるとユーザが困るからである。
変調制御部Eにおける楽音信号に音響信号を重畳する方式はどのような方式であってもよいが、変調成分が上記したような人に聴取し難いような手法を用いるのが好ましい。例えば、M系列やGold系列等の拡散符号(PN符号)を、聴感上違和感のない微弱なレベルで可聴帯域内の高帯域に重畳するとよい。ここで、変調制御部Eの構成の一例を図4(B)に示す。変調制御部Eは、LPF20、加算器21、拡散符号発生部22、乗算器23、XOR回路24、遅延器25、LPF26、乗算器27、およびキャリア信号発生器28を備えている。
拡散符号発生部22は、表示制御情報生成部Cの指示に従って定期的にM系列等の拡散符号を発生する。拡散符号発生部22が発生する拡散符号と表示制御情報生成部Cで生成/出力される表示制御情報(−1、1に2値化した符号列)は、乗算器23で乗算される。これにより、拡散符号を位相変調する。すなわち、ビットデータが1の場合に位相が正転、ビットデータが0の場合には位相が反転した拡散符号となる。
位相変調後の拡散符号は、XOR回路24に入力される。XOR回路24は、乗算器23から入力された符号と遅延器25を経て入力された1サンプル前の出力符号の排他的論理和を出力する。差動符号化後の信号は、−1、1で2値化しておくものとする。−1、1に2値化した差動符号を出力することで、復調側では、連続する2サンプルの差動符号を乗算することにより差動符号化前の拡散符号を抽出することができる。
そして、差動符号化した拡散符号は、LPF26においてベースバンド内で帯域制限され、乗算器27に入力される。乗算器27は、キャリア信号発生器28が出力するキャリア信号(可聴帯域内の高域のキャリア信号)とLPF26の出力信号を乗算し、差動符号化後の拡散符号をパスバンドに周波数シフトする。なお、差動符号化後の拡散符号は、アップサンプリングしてから周波数シフトしてもよい。周波数シフトされた後の拡散符号は、加算器21により楽音信号再生部Dで生成される楽音信号と加算(合成)される。ただし、楽音信号は加算前にLPF20で拡散符号の周波数成分と異なる帯域に制限される。このようにして、表示制御情報は可聴帯域の高帯域からなる音響信号に変調され楽音信号に重畳される。
図5は、情報処理装置における楽譜表示機能の概要を説明するための機能ブロック図である。図5(A)に示すように、音声入力部16(マイク)により重畳信号又は音響信号が集音された場合には、集音されたこれらの信号が制御部11の復調部Fに出力される。復調部Fは、音声入力部16から入力された重畳信号又は音響信号を復調して表示制御情報を復号することにより、該復号した表示制御情報に含まれる曲ID及び小節番号を抽出する(抽出手段に相当)。
図5(B)は、復調部Fの構成の一例を示すブロック図である。復調部Fは、HPF31、遅延器32、乗算器33、LPF34、相関器35、ピーク検出部36、符号判定部37を備えている。音声入力部16(マイク)が集音した重畳信号又は音響信号は、HPF31に入力される。HPF31は、楽音信号に重畳された音響信号のみを抽出するためのフィルタである。HPF31の出力信号は、遅延器32及び乗算器33に入力される。
遅延器33の遅延量は、差動符号の1サンプル分の時間に設定される。差動符号をアップサンプリングしている場合、アップサンプリング後の1サンプル分の時間に設定される。乗算器33は、HPF31から入力される信号と、遅延器32から出力される1サンプル前の信号とを乗算し、遅延検波処理を行う。差動符号化された信号は、−1、1に2値化されており、1サンプル前の符号からの位相変化を示したものであるため、1サンプル前の信号と乗算することにより、差動符号化前の拡散符号が抽出される。
そして、乗算器33の出力信号は、LPF34を経てベースバンド信号として抽出され、相関器35に入力される。相関器35は、フィルタ係数として拡散符号発生部22で発生する拡散符号が設定されたFIRフィルタ(マッチドフィルタ)からなり、入力された重畳信号又は音響信号と拡散符号との相関値を求める。拡散符号は、M系列やGold系列等の自己相関性が高い符号を用いているため、相関器35が出力する相関値は、ピーク検出部36で拡散符号の周期(データ符号の周期)で正負のピーク成分が抽出される。符号判定部37は、各ピーク成分を表示制御情報のデータ符号(正のピークを1、負のピークを0)として復号する。
表示制御部Gは復号された表示制御情報に含まれる曲IDに応じて、記憶装置17に記憶された中から該当する楽譜データ及び表示制御テーブル(図6参照)を検索し特定する(特定手段に相当)。表示制御部Gは、曲IDに対応する楽譜データが見つかった場合に当該データを記憶装置17から読み出す。そして、前記特定した表示制御テーブルを復号された表示制御情報に含まれる小節番号に基づき参照することによって、表示部15に表示する楽譜の表示態様として各段毎に表示対象ページの決定を行い、これにより各段毎にページを切り換えた楽譜画面を生成して表示部15に出力する(表示制御手段に相当)。この際には、ページが切り換えられた段の表示がさも紙がめくられたつまりは譜めくりされたように演奏者に対して見せるような表示制御を行うようにするとよい。さらに、表示制御部Gは楽譜データに含まれる曲名等の曲情報の一部を表示部15に出力することでこれらを画面に表示させる。
ここで、表示制御テーブル及びこれを用いた表示制御について説明する。図6は、表示制御テーブルのデータ構成を示す概念図である。ただし、ここでは図3に示したようなリピート演奏を含む楽音に関する楽譜を3段に分けて表示する場合の表示制御を行うものを例に示した。
図6に示す表示制御テーブルには、再生中の楽音の小節(詳しくは楽音信号再生部Dから送られてくる小節番号)毎に表示部15に表示する楽譜の各段に表示すべき対象ページが規定されている。例えば、小節番号1から小節番号4までは1段目〜3段目の全てに「1」ページと規定されていることから、第1小節から第4小節までの楽音の再生中には1ページの1段目から3段目を表示する表示制御が行われる。小節番号5には1段目に「2」ページ、2段目及び3段目に「1」ページと規定されていることから、第5小節の楽音の再生に移ると1ページの1段目が表示されていた1段目の楽譜のみを2ページの1段目の表示に切り換える表示制御が行われる。したがって、表示部15に表示される楽譜は2ページの1段目と1ページの2段目及び3段目とが混在した表示態様となる。小節番号6から小節番号12までは小節番号5と同じ規定であることから、第6小節から第12小節までの楽音の再生中には2ページの1段目と1ページの2段目及び3段目を表示する表示制御が行われる。
また、小節番号13には1段目及び2段目に「2」ページ、3段目に「1」ページと規定されていることから、第13小節の楽音の再生に移ると1ページの2段目が表示されていた2段目の楽譜を2ページの2段目の表示に切り換える表示制御が行われる。小節番号16には1段目〜3段目の全てに「2」ページと規定されていることから、第16小節の楽音の再生に移ると1段目から3段目のすべてが2ページ目の楽譜表示になる。すなわち、表示部15に表示される楽譜は2ページと1ページとが混在した表示態様から2ページだけを表示した表示態様となる。このようにして、表示制御テーブルに規定された小節番号に基づく各段毎の表示すべき対象ページに従って楽譜表示の上段から順に繰り返し譜めくり制御が行われる。言い換えるならば、表示制御テーブルには、ある段に含まれるすべての小節の演奏(再生)が完了して次の段の小節に演奏(再生)が進むと、演奏完了した段を次のページの楽譜に更新するように設定されている。これにより、現在の楽音の再生位置よりも後に再生される楽音の再生位置が再生に先んじて楽譜に表示しておくことができる。
上述したような楽音再生装置における楽譜制御機能及び情報処理装置における楽譜表示機能を実現する各制御プログラムについて、図7及び図8を用いて説明する。図7は、楽音再生装置における楽譜制御機能を実現する楽譜制御処理の一実施例を示すフローチャートである。この「楽譜制御処理」は楽音再生装置のCPU1によって制御される処理であって、楽音再生装置の電源オンに応じて開始される。
ステップS1は、ユーザによる切替ボタンの操作等に応じて譜めくり機能がオンに設定されたか否かを判定する。譜めくり機能が未だオンに設定されていないと判定した場合には(ステップS1のNO)、譜めくり機能がオンに設定されるまで処理を待機する。譜めくり機能がオンに設定されたと判定した場合には(ステップS1のYES)、予めユーザにより楽曲データが選択されている場合には当該楽曲データの曲情報から曲IDを取得する又はユーザにより楽曲データが選択されていない場合には初期設定されている楽曲データを自動的に選択して該楽曲データの曲情報から曲IDを取得すると共に、楽曲データの現在の再生位置に応じた小節番号を取得する(ステップS2)。なお、楽曲データの再生開始前である場合には再生開始位置の小節番号(例えば第1小節の「1」)を取得する。ただし、楽曲データの再生開始位置をユーザが任意の位置に指定できるような場合には、前記指定された再生開始位置に該当する小節番号を取得する。
ステップS3は、前記取得した曲IDと小節番号とを含んでなる上述した表示制御情報(図4参照)を生成する。ステップS4は、音源部7に対して前記生成した表示制御情報を供給する。ステップS5は、楽音信号が生成されているか否かを判定する。楽音再生開始指示がなされておらず楽曲データが再生されていない場合、かつユーザによる演奏操作子の操作もなされていない場合には楽音信号が生成されていないと判定し(ステップS5のNO)、表示制御信号を音響信号に変調し当該音響信号のみをサウンドシステム7Aを介して出力する制御を行う(ステップS7)。そして、ステップS1の処理に戻る。
他方、楽音信号が生成されていると判定した場合、つまり楽曲データの再生に基づき音源部7で楽音信号が生成されている場合及び/又はユーザによる演奏操作子の操作に応じて音源部7で楽音信号が生成されている場合には(ステップS5のYES)、表示制御信号を音響信号に変調し、前記生成させた楽音信号に当該音響信号を重畳した重畳信号をサウンドシステム7Aに出力する制御を行う(ステップS6)。そして、ステップS1の処理に戻る。
上記ステップS1〜ステップS7の処理は所定時間間隔毎(例えば0.5秒毎)に繰り返し実行されることから、表示制御情報は音響信号として楽音信号に重畳されて又は音響信号として単独で所定時間間隔毎にスピーカを通じて放音されることになる。これによると、楽曲データの再生中でない場合には、小節番号の変わらない同じ表示制御情報が所定時間間隔毎でスピーカを通じて放音されることとなり、情報処理装置の表示部15に表示されている楽譜は譜めくり制御されることがなく現状の表示状態が維持される。一方、楽曲データの再生中である場合には、楽音の再生位置が進行するに連れて小節番号の異なる表示制御情報がスピーカを通じて放音されることとなり、それにあわせて情報処理装置の表示部15に表示されている楽譜は譜めくり制御され得る。
図8は、情報処理装置における楽譜表示機能を実現する楽譜表示処理の一実施例を示すフローチャートである。この「楽譜表示処理」は情報処理装置のCPU11によって制御される処理であって、音響信号または重畳信号の受信に応じて開始される。一例として、CPU11は上述した復調部Fの機能を実現する処理(図示省略)を短い周期で繰り返し実行しており、当該処理において表示制御情報が抽出できた場合に当該「楽譜表示処理」を開始させるとよい。
ステップS11は、楽音再生装置からスピーカを通じて放音された重畳信号又は音響信号に含まれていた表示制御情報から、曲IDと小節番号とを抽出する。ステップS12は、抽出した曲IDはRAM13に記憶済みの曲ID(表示部15に現時点で表示中である楽譜の曲のもの)に一致するか否かを判定する。抽出した曲IDと記憶済みの曲IDとが一致すると判定した場合には(ステップS12のYES)、抽出した小節番号はRAM13に記憶済みの小節番号と一致するか否かを判定する(ステップS13)。抽出した小節番号と記憶済みの小節番号とが一致すると判定した場合には(ステップS13のYES)、当該処理を終了する。すなわち、この場合には、楽音の再生位置の進行に応じて表示部15に表示中の楽譜の表示位置を変更する必要がないことから、楽譜の譜めくり制御が行われない。また、再生中の楽曲の変更がなされていないことから表示部15に表示する楽譜の差し替えを行う必要がない。なお、音響信号又は重畳信号の受信が始めてである場合には、RAM13に小節番号が記憶済みでないので、上記ステップS13は必ずNO(一致しない)と判定されることになる。
上記ステップS12において抽出した曲IDと記憶済みの曲IDとが一致しないと判定した場合には(ステップS12のNO)、抽出した曲IDに一致する楽譜データを記憶装置17から読み出す(ステップS14)。すなわち、再生対象の楽曲データが変更された場合には、表示部15に表示中の楽譜を変更後の楽曲の楽譜に差し替える。また、この場合には抽出した曲IDに一致する表示制御テーブル(図6参照)を特定する。さらには、抽出した曲IDをRAM13に書き込んで記憶する(これが上記した記憶済みの小節番号となる)。つまり、表示制御情報に含まれている小節番号が変わるたびにRAM13に記憶済みの小節番号が更新される。ステップS14の処理後又は上記ステップS13において抽出した小節番号と記憶済みの小節番号とが一致しないと判定された場合には(ステップS13のNO)、特定した表示制御テーブルを参照して、ステップS11で抽出した小節番号に対応する各段の表示ページを判断する(ステップS15)。また、この場合には抽出した小節番号をRAM13に書き込んで記憶する。ステップS16は、前記表示ページの判断に基づき表示部15において段ごとに楽譜の表示を更新する譜めくり制御を行う。
なお、当該プログラムの実行指示時に楽音再生装置から重畳信号や音響信号が放音されていない場合の表示部15の初期表示としては、例えば前回の同プログラム終了時に表示していた楽曲の楽譜を第1小節から再表示する、予め決められているデモ曲の楽譜を第1小節から表示する、白紙の楽譜(五線譜のみ)を表示するなどいずれであってもよい。あるいは楽譜に限らず、例えばメニュー画面(図示せず)などを表示してもよい。
なお、上述した図7では図示を省略したが、楽音再生装置にてユーザによる選曲操作が行われた場合には、選曲操作後に上記ステップS2及びS3の処理に従い、選曲操作前とは曲ID(及び小節番号)の異なる表示制御情報が新たに生成される。そして、上記ステップS4以降の処理に従って前記新たに生成された表示制御情報がスピーカを通じて放音される。一方、情報処理装置側では図8に示した処理の実行に伴い、表示部15に表示されている複数段の楽譜の一部の段だけを変更する譜めくり制御を行うのではなく、表示されている複数段の楽譜の全段を新たな楽譜に変更する表示制御を行うことになる。
以上のように、本実施形態における楽音再生装置では、楽音の再生進行状態が楽譜を譜めくりするタイミングに達したかどうかに関わらず、表示制御情報を重畳的に含む重畳信号(又は音響信号のみ)を比較的に短い所定時間毎(例えば0.5秒毎)に放音する。すなわち、楽音再生装置は定期的に外部表示器の表示制御に係る情報を出力し続ける。その一方で、本実施形態における情報処理装置では受信した表示制御情報に基づいて楽譜の表示制御を行う。表示制御情報に基づく楽譜の表示制御としては、表示部15に1段が複数小節からなる楽譜を複数段に分けて表示しておき、すべての小節の再生が終わった段の表示を順次更新することで、当該段に含まれる小節が再生される前に前記段の表示を完了しておくように各段毎に譜めくり制御する。これによれば、楽音の再生開始前であっても表示制御情報を取得して適切な楽譜を表示することができるので、ユーザは演奏開始前に手動で所望の楽譜をまたその演奏開始位置の楽譜を呼び出す操作をわざわざ行わなくても済む。
ここで、楽音再生態様に応じた楽譜制御処理と楽譜表示処理の各動作タイミングの一例を示すタイミングチャートを図9に示す。上から順に、楽音再生装置で再生中の楽曲の再生位置(小節番号)、楽音再生装置による表示制御情報の生成タイミング、情報処理装置で受信する表示制御情報の受信完了タイミング、情報処理装置が表示部15に表示する楽譜位置(小節番号)を示している。
楽音再生装置の動作を説明すると、あるタイミング(時刻t1)で表示制御情報(以下、単に情報と呼ぶ)を生成し送信する。情報t1(ここでは各タイミングで生成される情報を区別するために便宜的に時刻を付す)の送信が終わると、すぐに次のタイミングt2で情報を生成し送信する。ここで、1つの表示制御情報を生成してこれを送信し終わるまでにΔtだけの時間(例えば0.5秒)がかかるとすれば、情報t1と情報t2が送信される間隔はΔt時間である。楽音再生装置では、このΔt時間間隔で情報を次々に生成して送信する(t3〜t11参照)。こうした情報の生成/送信は、通常再生中であろうと巻き戻しあるいは早送り操作中であろうと何ら関係なくΔt時間間隔で行われる。
他方、情報処理装置の動作を説明すると、楽音再生装置でのある情報の生成タイミングからΔt時間後に当該情報の受信が完了する。例えば、第12小節の楽音再生中に楽音再生装置から送信された情報t1の受信が完了するのは、時刻(t1+Δt)である。そして、情報t1に含まれる小節番号は「12」であることから、図6に示した表示制御テーブルによれば1段目が2ページ、2段及び3段目が1ページの楽譜が表示されることになる。情報t1に続き受信される情報t2〜情報t4までに含まれる小節番号は「12」であってそれぞれの直前情報の小節番号と変わらないことから、この間は楽譜を更新する表示制御が行われない。一方、情報t5に含まれる小節番号は「13」であってまた表示制御テーブルによれば2段目が「2ページ」と規定されており小節番号「12」のときと比べて異なることから、この場合には1段及び2段目が2ページ、3段目が1ページの楽譜つまりは2段目が譜めくりされた楽譜に更新する表示制御が行われる。
これによれば、楽音再生装置から表示制御情報が発信されたΔt時間後には情報処理装置での表示制御が行われることとなり、従来技術のように演奏位置の解析のための時間を必要としないことから、早送りや巻き戻し操作によって連続しない位置に楽音の再生位置が移動した場合にも、従来に比べて早送りや巻き戻し操作が終わった後すぐに該当する範囲の楽譜を表示することができるようになる、という利点がある。例えば、図9において情報t6の生成/送信開始後に第13小節から第4小節までの巻き戻し操作が行われたとする。このときに、情報t7及び情報t8が巻き戻し操作中に生成/送信され、情報t7においては巻き戻し操作に応じた楽音の再生位置が第11小節であり、情報t8においては巻き戻し操作に応じた楽音の再生位置が第7小節であったとする。すると、情報処理装置において受信された情報t7に含まれる小節番号は「11」であることから、表示制御テーブルによれば1段目が2ページ、2段及び3段目が1ページの楽譜が再度表示される。情報t7に続き受信される情報t8に含まれる小節番号は「7」であるが、表示制御テーブルによれば小節番号「11」のときと同じ規定であるので表示制御を行わず、現状表示である1段目が2ページ、2段及び3段目が1ページの楽譜の表示が維持されることになる。そして、第4小節までの巻き戻し操作が終了して通常再生に戻ってから生成・送信される情報t9に含まれる小節番号は「4」であるので、表示制御テーブルによれば1段目〜3段目の全てが1ページの楽譜が表示される。このように、巻き戻し操作が終わった直後に生成された情報t9により、情報処理装置では時刻(t9+Δt)にて巻き戻し操作後の小節番号4に対応した楽譜が表示される。時間Δtは0.5秒ほどの短い時間であるから、巻き戻し操作後すぐに演奏位置に対応した楽譜が表示されることとなる。
また、これにあわせて楽譜の表示更新を段毎に行うようにすることで、情報処理装置において楽音再生装置から放音された重畳信号の受信状況が悪い場合に生ずる悪影響をできる限りにおいて最小限にとどめることができる。例えば、図9において情報t3〜情報t5までが受信できなかった場合、これらの情報が正しく受信できていれば情報t5の受信完了に応じてそれ以降は2段目が2ページに譜めくり制御された楽譜を表示するはずが、正しく受信できた時刻t2に含まれていた小節番号「12」に対応した1段目が2ページ、2段及び3段目が1ページの楽譜が表示され続けることになる。しかし、図3に示すように小節番号「12」に対応する楽譜表示では、既に3段目に第13小節目の楽譜が表示済みである。そのため、例え情報t5までが受信できずに直ちに小節番号「13」に対応した楽譜を表示できなくとも、情報t6が受信できた時点で小節番号「13」に対応した楽譜を表示できるので、例えばユーザが楽音再生にあわせて楽譜を見ながら演奏練習等を行うのに何ら問題ない。
なお、図3に示すとおり、情報表示装置の表示部15には受信インジケータJが表示されるので、この受信インジケータJの点灯状態により音響信号(または重畳信号)が受信できている状況であるか又は受信できていない状況であるかをユーザが楽音再生開始前などの早期に把握できる。受信状況が悪い場合、例えば楽音再生装置からの音響信号の放音または情報処理装置での集音を妨げる障害物がある場合などには、その障害物を撤去したりあるいは受信状況のよい場所に情報処理装置を移動するなどの、受信状況を改善するための行動をユーザが取ることができる。
さらに、楽音再生テンポの変更による影響を受けにくく常に正確な位置の楽譜が表示され有利である、という利点もある。ここで、楽音の演奏テンポに応じた楽譜制御処理と楽譜表示処理の各動作タイミングの一例を示すタイミングチャートを図10に示す。
楽音再生装置では、楽音再生テンポに影響されることなくΔt間隔毎に情報を生成/送信する。説明を理解し易くするために、ここでは例えば第12小節から第13小節までの楽音再生テンポが一時的に速められる一方で、第14小節から第15小節までの楽音再生テンポが一時的に遅くされている。図10から理解できるように、楽音再生テンポが速められた場合にはテンポが速められる前に比べて、1小節分の楽音が再生される間に情報を送信する回数が減少する。例えば、テンポが速められる前までの第12小節から第13小節までの楽音再生中には情報t1〜情報t4まで情報を4回送っているが、テンポが速められた後の第13小節から第14小節までの楽音再生中には情報t5の1回だけ送られる。しかし、情報を送る時間間隔(Δt)は1秒未満の短い時間であると、テンポが速められたとしても1小節の楽音再生中に楽譜更新を行うのに十分なだけの情報が送られる。具体的には、テンポ120で4拍子の楽音を再生する場合には、情報を送る時間間隔が例えば0.5秒だとすると、1小節あたりに情報を3〜4回程度送ることができる。他方、テンポが遅くされた場合には、単に同じ情報が所定の時間間隔(Δt)毎に繰り返し送られるだけであることから、楽譜の表示制御上何ら問題ない。このように、演奏データからテンポを取得して演奏位置を抽出する従来技術では、少なくとも直前の何拍分かの演奏を解析して拍を抽出する必要があるので時間がかかるが、本実施形態ではテンポ情報を取得して楽譜の表示制御を行うのではなく、表示制御のための情報として定期的に「いま何小節目を再生中か」を表す小節番号を取得して楽譜の表示制御を行うようにしているので、楽音再生テンポが変更された場合であっても追従性よく楽譜の表示制御を行うことができる。
以上、図面に基づいて実施形態の一例を説明したが、本発明はこれに限定されるものではなく、様々な実施形態が可能であることは言うまでもない。例えば、上述した楽譜制御処理プログラムや楽譜表示処理プログラムはコンピュータソフトウェアの形態に限らず、DSP(ディジタル・シグナル・プロセッサ)によって処理されるマイクロプログラムの形態でも実施可能であり、またこの種のプログラムの形態に限らず、ディスクリート回路又は集積回路若しくは大規模集積回路等を含んで構成された専用のハードウェア装置の形態で実施してもよい。
なお、上述した実施例では、重畳信号や音響信号をスピーカを通じて放音させる一方でそれらの信号をマイクにより受信することにより外部表示器(情報処理装置の表示部15)に表示された楽譜の譜めくり制御を行うものを例に示したがこれに限らず、重畳信号や音響信号の前記楽音再生装置と前記情報処理装置間の送受信は有線によってもよい。
なお、上述した実施例では、音響信号を楽音信号に重畳した信号をスピーカから放音するようにしたが、これに限らず、楽曲再生装置から発するあらゆる音(たとえばマイク入力された歌唱音声や、設定操作子を操作した際の操作音、エラー発生時の報知音など)も一緒にスピーカから放音されてよい。つまり、音響信号がスピーカから出力されてさえいれば、その他にどのような音がスピーカから出力されてもかまわない。
なお、表示部15の表示制御は段ごとの譜めくり制御に限らず、例えば1小節ごと、複数小節ごと、複数段ごと、半ページごとなど、楽譜の一部を順に更新する表示制御であるならばどのようなものであってもよい。
なお、再生位置情報は、小節番号でなくてもよい。小節/拍/クロックを表すMIDI情報でもよいし、曲の先頭からの経過時間を分/秒/ミリ秒などの絶対時間で表したものでもよい。また、楽曲データはMIDIデータでなくてもオーディオデータでもよく、その場合は再生位置情報を上記したような絶対時間とするのがよい。
上述した実施例では、曲ID及び小節番号を含むデジタルの表示制御情報を生成しこれを変調して音響信号に変換する例を示したがこれに限らず、例えば曲ID及び小節番号に対応した音響信号を予め用意しておき、抽出した曲ID及び小節番号に対応した音響信号を読み出すことによって前記表示制御情報を音響信号に変換するようにしてもよい。この場合、情報処理装置では、音響信号と曲ID及び小節番号との対応を記した変換テーブルを予め記憶しておき、受信した音響信号に基づいて前記変換テーブルを照合することにより、曲ID及び小節番号を抽出するようにするとよい。
なお、外部表示器(情報処理装置の表示部15)に表示される表示コンテンツは、五線譜、タブ譜、コード譜などの楽譜の他、歌詞や演奏操作子の運指指示など、楽音の再生進行にあわせて表示を切り替える必要のあるものであればどのようなものであってもよい。また、表示コンテンツは画像データやテキストデータなどどのようなデータ形式であってもよい。