(57)【要約】【課題】  音高や発声タイミングなどを間違って歌った箇所について、歌唱者がその間違いの程度を容易に認識して、正確な音高や発声タイミングなどを把握することで、歌唱力の向上を支援できるようにする。【解決手段】  ＣＰＵ１１は、カラオケ曲の伴奏に応じてマイクから入力された歌唱者の音声信号をアナログからデジタルの音声データに変換して、ＲＡＭ１３のエリアに一時的に記憶し、ＲＡＭ１３又はＲＯＭ１４に予め記憶されたその曲に対する模範データ又はＲＡＭ１３に一時的に記憶された音声データを選択的に読み出して音源部１７によって再生させ、音声データと模範データとを比較して、曲に対す歌唱力を評価して表示部３に出力する。【選択図】      図２
2008233736.tif 000002
【特許請求の範囲】
【請求項１】
所定の記憶手段から曲の伴奏データ及び当該曲を歌唱した模範音声データを順次読み出す読み出し手段と、
前記伴奏データの読み出しに応じて歌唱された歌唱音声データを所定の音声入力手段により入力して前記記憶手段に記憶させる記憶制御手段と、
この音声入力手段により入力された歌唱音声データと前記読み出された模範音声データとを比較して、前記曲に対する当該歌唱音声信号の歌唱力を評価して当該評価結果を出力する歌唱評価手段と、
この歌唱評価手段による評価結果の出力の後に、前記記憶手段に記憶された歌唱音声データ及び模範音声データを交互に読み出して出力する読み出し制御手段と、
を備えたことを特徴とするカラオケ装置。
【請求項２】
前記曲は複数の区間に分割され、前記読み出し制御手段は、前記曲の指定された区間に対応する歌唱音声データと模範音声データとを交互に読み出して出力することを特徴とする請求項１に記載のカラオケ装置。
【請求項３】
前記歌唱評価手段によって出力される評価結果を表示する表示手段をさらに備えたことを特徴とする請求項２に記載のカラオケ装置。
【請求項４】
前記歌唱評価手段は、前記歌唱音声信号および前記模範音声信号の音高および発声タイミングをそれぞれ比較して評価結果を出力することを特徴とする請求項１に記載のカラオケ装置。
【請求項５】
所定の記憶手段から曲の伴奏データ及び当該曲を歌唱した模範音声データを順次読み出すステップと、
前記伴奏データの読み出しに応じて歌唱された歌唱音声データを所定の音声入力手段により入力して前記記憶手段に記憶させるステップと、
この音声入力手段により入力された歌唱音声データと前記読み出された模範音声データとを比較して、前記曲に対する当該歌唱音声信号の歌唱力を評価して当該評価結果を出力するステップと、
この評価結果の出力の後に、前記記憶手段に記憶された歌唱音声データ及び模範音声データを交互に読み出して出力するステップと、
をコンピュータに実行させることを特徴とするカラオケ情報処理のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カラオケ装置およびカラオケ情報処理のプログラムに関し、特に、曲の演奏に応じて入力された音声信号を評価するカラオケ装置およびカラオケ情報処理のプログラムに関するものである。
【背景技術】
【０００２】
曲の演奏に応じて入力された音声信号を評価するカラオケ装置については多くの提案がなされている。例えば、ある提案のカラオケ装置における歌唱練習支援システムにおいては、音高を間違って歌った箇所の正確な音を歌唱者に聴かせ、その音と同じになるように、すぐに反復して発声して練習させることができるようになっている。この提案によれば、楽曲の演奏データを処理してカラオケ伴奏音楽を音響出力するとともに、その楽曲の歌詞データを処理して歌詞字幕を映像出力するカラオケ装置において、楽曲演奏中に指定箇所に戻って再演奏する旨の利用者入力を受け付けたとき、指定箇所から再演奏するとともに、この再演奏時には、主旋律の演奏音量を他の演奏音量に対して相対的に大きくするような構成になっている。（特許文献１参照）
【特許文献１】特開２００４−１４４８６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記特許文献１を含めた従来の技術においては、音高や発声タイミングなどを間違って歌った箇所の正確な音を歌唱者に聴かせて、その箇所をすぐに反復して発声して練習させたとしても、音高や発声タイミングなどがどの程度間違っているかを歌唱者が把握することは極めて困難である。何故ならば、そもそも歌唱者は、曲の伴奏および歌詞表示に意志的に合わせて、正確な音高や発声タイミングだと思って歌っているのであるから、間違って歌った箇所を反復しても、自分の間違いの程度を認識することは困難だからである。
本発明は、このような従来の課題を解決するためのものであり、音高や発声タイミングなどを間違って歌った箇所について、歌唱者がその間違いの程度を容易に認識して、正確な音高や発声タイミングなどを把握することで、歌唱力の向上を支援できるようにすることを目的とする。
【課題を解決するための手段】
【０００４】
請求項１に記載のカラオケ装置は、所定の記憶手段から曲の伴奏データ及び当該曲を歌唱した模範音声データを順次読み出す読み出し手段と、前記伴奏データの読み出しに応じて歌唱された歌唱音声データを所定の音声入力手段により入力して前記記憶手段に記憶させる記憶制御手段と、この音声入力手段により入力された歌唱音声データと前記読み出された模範音声データとを比較して、前記曲に対する当該歌唱音声信号の歌唱力を評価して当該評価結果を出力する歌唱評価手段と、この歌唱評価手段による評価結果の出力の後に、前記記憶手段に記憶された歌唱音声データ及び模範音声データを交互に読み出して出力する読み出し制御手段と、を備えたことを特徴とする。
【０００５】
請求項１のカラオケ装置において、請求項２に記載したように、前記曲は複数の区間に分割され、前記読み出し制御手段は、前記曲の指定された区間に対応する歌唱音声データと模範音声データとを交互に読み出して出力することを特徴とする。
【０００６】
請求項２のカラオケ装置において、請求項３に記載したように、前記歌唱評価手段によって出力される評価結果を表示する表示手段をさらに備えたことを特徴とする。
【０００７】
請求項１のカラオケ装置において、請求項４に記載したように、前記歌唱評価手段は、前記歌唱音声信号および前記模範音声信号の音高および発声タイミングをそれぞれ比較して評価結果を出力することを特徴とする。
【０００８】
請求項５に記載のカラオケ情報処理のプログラムは、所定の記憶手段から曲の伴奏データ及び当該曲を歌唱した模範音声データを順次読み出すステップと、
前記伴奏データの読み出しに応じて歌唱された歌唱音声データを所定の音声入力手段により入力して前記記憶手段に記憶させるステップと、
この音声入力手段により入力された歌唱音声データと前記読み出された模範音声データとを比較して、前記曲に対する当該歌唱音声信号の歌唱力を評価して当該評価結果を出力するステップと、
この評価結果の出力の後に、前記記憶手段に記憶された歌唱音声データ及び模範音声データを交互に読み出して出力するステップと、
をコンピュータに実行させることを特徴とする。
【発明の効果】
【０００９】
本発明のカラオケ装置およびカラオケ情報処理のプログラムによれば、音高や発声タイミングなどを間違って歌った箇所について、歌唱者がその間違いの程度を容易に認識して、正確な音高や発声タイミングなどを把握することで、歌唱力の向上を支援できるという効果が得られる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明によるカラオケ装置の実施形態について、図を参照して説明する。
図１は、実施形態におけるカラオケシステムのリモコン装置１の外観図である。図１に示すように、リモコン装置１にはスイッチ部２および液晶表示器であるＬＣＤ表示部３が設けられている。スイッチ部２には、電源スイッチの他にカラオケ演奏に必要な各種のスイッチ、例えば、曲を検索するための曲名スイッチ２ａ、演奏の開始をするためのスタートスイッチ２ｂ、ＬＣＤ表示部３のアイコンなどを選択および決定するためのカーソルスイッチ２ｃ、文字、数字、記号を入力するいわゆるテンキースイッチ２ｄ、曲の区間を指定するための区間指定スイッチ２ｅ（詳細は後述）、現在の状態から前の状態に戻るための戻るスイッチ２ｆ、演奏を中止する中止スイッチ２ｇ、音量を設定するスイッチ、テンポを設定するスイッチ、キーを設定するスイッチなどが設けられている。ＬＣＤ表示部３は、カラオケ演奏に関する曲名、歌詞、その他を表示する。詳細な表示内容については後述する。
【００１１】
図２は、実施形態におけるカラオケシステムの構成を示すブロック図である。このカラオケシステムは、図１のリモコン装置１と、テレビ受像機などの大型のモニタ装置やスピーカを備えたサウンドシステムとを組み合わせた構成になっている。リモコン装置１とモニタ装置およびサウンドシステムは赤外線通信、ＦＭ電波通信、ブルートゥース（登録商標）通信などの近距離無線通信によってデータおよびコマンドを送受信するようになっている。すなわち、リモコン装置１のＬＣＤ表示部３に表示される画像は、同時にモニタ装置にも表示される。ただし、ここでは説明を簡単にするために、ＬＣＤ表示部３を代表してカラオケシステムの表示手段とする。
【００１２】
図２において、ＣＰＵ１１は、システムバス１２を介して、図１に示したスイッチ部２、表示部３のほかに、ワークメモリであるＲＡＭ１３、プログラムメモリであるＲＯＭ１４、ビデオ処理部１５、オーディオ処理部１６、音源部１７、マイクアンプ１８、およびネットワークインターフェース１９に接続されており、これら各部との間でデータおよびコマンドを授受しながら、このカラオケシステム全体を制御する。
【００１３】
ＲＯＭ１４は、ＣＰＵ１１によって実行されるカラオケ情報処理のプログラムやその他の制御プログラム、および初期データの他、曲名のデータ、並びに各曲に対応する伴奏曲データおよび歌詞データ、音声合成による模範データ、および背景画面のデータを記憶している。ＲＡＭ１３は、ＣＰＵ１１によって処理されるデータを一時的に記憶する。ビデオ処理部１５は、ＣＰＵ１１の指示に応じて、検索された歌手名、曲名、歌詞データ、背景画面のデータを合成して表示部３に送出する。マイクアンプ１８は、マイク（図示せず）から入力される歌唱者の音声信号を増幅する。オーディオ処理部１６は、マイクアンプ１８から入力される音声信号をアナログからデジタルに変換する。ＲＡＭ１３は、デジタルに変換された歌唱者の音声データを一時的に記憶するとともに、ＣＰＵ１１によって実行されるカラオケ情報処理に必要な各種のレジスタやフラグを有する。音源部１７は、上記のサウンドシステムに相当し、ＣＰＵ１１の指示に応じて、伴奏曲データと模範の音声データ又はＲＡＭ１３の音声データをデジタルからアナログに変換し、フィルタ処理や増幅処理などを施してスピーカから発音する。ネットワークインターフェース１９は、インターネットなどのネットワークから、例えば、ＭＩＤＩ形式の曲データを受信する。
【００１４】
なお、図には示していないが、マイクより入力されてマイクアンプ１８で増幅されたアナログの音声信号は、直接スピーカから発音される。すなわち、歌唱者の音声信号は、デジタルの音声データとして録音されると同時に、読み出された伴奏データに応じた楽音信号とともにスピーカから発音される。大型のモニタ装置としてテレビ受像機を利用する場合には、アナログの音声信号および楽音信号は、無線信号で変調されて送信する構成も可能である。
【００１５】
図３乃至図１０は、表示部３に表示されるカラオケの上達支援モードの画面を示す図である。図３は上達支援モードの初期画面、図４はカラオケ演奏中のリアルタイムの評価画面、図５は曲が終了したときの全体の評価画面、図６乃至図１０の画面については後述する。
図１１および図１２は、ＲＯＭ１４に記憶されているカラオケの曲データ、あるいは、ネットワークインターフェース１９を介してインターネットなどのネットワークから受信してＲＡＭ１３に記憶された曲データのフォーマットを示す図である。図１１において、複数の曲（０）〜曲（Ｎ）の各々は、伴奏データおよび模範データで構成されている。各曲の伴奏データは、複数の区間（０）〜区間（Ｍ）に区分されており、各区間には歌詞データ、タイムデータ、および伴奏のイベントデータがアドレスに従って記憶されている。また、各曲の模範データは、図１２に示すように、タイムデータおよび音声合成による歌唱のイベントデータがアドレスに従って記憶されている。なお、この模範データは、音声合成による歌唱データに限定されず、例えば、プロの歌手が歌った音声をＰＣＭ録音した歌唱データで構成してもよい。
【００１６】
図１３乃至図２１は、ＣＰＵ１１によって実行されるカラオケ情報処理のメインルーチンのフローチャートであり、図２２および図２３は、一定時間ごとにタイマ（図示せず）から入力される割り込みに応じて実行されるタイマインタラプト１およびタイマインタラプト２のフローチャートである。これらのフローチャートおよび図３乃至図１０のカラオケの画面、図１１および図１２の曲データに基づいて、実施形態におけるカラオケ情報処理の動作について説明する。
【００１７】
図１３において、ＲＡＭ１３の音声データのエリア、レジスタ、フラグなどの初期化、タイマインタラプト１およびタイマインタラプト２を禁止するイニシャライズを行って（ステップＳＡ１）、曲選択画面（図示せず）を表示する（ステップＳＡ２）。この曲選択画面においては、「曲名又は歌手名を入力して下さい」などのメッセージを表示して、図１のリモコン装置１における曲名スイッチ２ａ又は歌手名スイッチの操作をユーザに対して促す。ユーザのスイッチ操作に応じて、１つ又は複数の曲名を表示する。曲名が複数の場合には、カーソルスイッチ２ｃ又はテンキースイッチ２ｄの操作をユーザに対して促すようなメッセージを表示する。ユーザのスイッチ操作によって１つの曲名が選択されると、曲選択処理を行って（ステップＳＡ３）、曲選択番号をレジスタｎにセットする（ステップＳＡ４）。すなわち、ＲＯＭ１４又はＲＡＭ１３に記憶されている曲の中から、レジスタｎの番号に対応する曲（ｎ）を検索して指定する。
【００１８】
次に、スタートスイッチ２ｂがオンされたか否かを判別する（ステップＳＡ５）。スタートスイッチ２ｂはモメンタリスイッチであり、このスイッチがオンされたときは、伴奏データ用のフラグＳＴＦ１および模範データ用のフラグＳＴＦ２を「１」にセットする（ステップＳＡ６）。さらに、伴奏データの区間を指定するレジスタＫＵＫＡＮ１を「０（最初の区間）」にセットし、模範データの区間を指定するレジスタＫＵＫＡＮ２を「０（最初の区間）」にセットする（ステップＳＡ７）。次に、背景画面を表示し（ステップＳＡ８）、曲（ｎ）の伴奏データでＫＵＫＡＮ１（０）の先頭位置のアドレスを指定する（ステップＳＡ９）。
【００１９】
次に、図１４のフローチャートに移行して、ＫＵＫＡＮ１（０）の先頭位置のアドレスから読み出された歌詞データを背景画面に重畳して、図３に示すように表示する（ステップＳＡ１０）。この後、アドレスをインクリメントして次のデータを読み出し（ステップＳＡ１１）、読み出されたタイムデータをレジスタＴ１にストアする（ステップＳＡ１２）。さらに、曲（ｎ）の模範データでＫＵＫＡＮ２（０）の先頭位置のアドレスを指定し（ステップＳＡ１３）、そのアドレスから読み出されたタイムデータをレジスタＴ２にストアする（ステップＳＡ１４）。そして、タイマインタラプト１の禁止を解除する（ステップＳＡ１５）。なお、カラオケの曲のほとんどは、いきなり歌が始まることはなく、最初に伴奏のイントロ部分があるので、模範データの最初のタイムデータは、少なくともこのイントロ部分の時間長を含むタイムデータになっている。すなわち、伴奏データのタイムと模範データのタイムとは、互いに独立しているので、２種類のレジスタＴ１、Ｔ２によってデータ読み出しの時間を管理する。
【００２０】
タイマインタラプト１の禁止を解除することにより、一定時間が経過するたびに、図２２のタイマインタラプト１を実行する。すなわち、Ｔ２のタイムデータの値をデクリメントし（ステップＳＢ１）、Ｔ１のタイムデータの値をデクリメントする（ステップＳＢ２）。また、発声タイミングをガイドするために、表示部３の画面における歌詞表示の色替え処理を行う（ステップＳＢ３）。さらに、マイクより入力されて、マイクアンプ１８で増幅され、オーディオ処理部１６によってアナログからデジタルに変換された音声データを取り込み（ステップＳＢ４）、その音声データのピッチ（音高）および音量を検出して（ステップＳＢ５）、ＫＵＫＡＮ１の区間番号とともに音声データをＲＡＭ１３のエリアにストアする（ステップＳＢ６）。この場合において、ＲＡＭ１３のアドレスを一定時間ごとにインクリメントしながら音声データをストアする。ステップＳＢ６の後は、メインルーチンに戻る。
【００２１】
図１５のフローチャートにおいて、ＳＴＦが「１（伴奏演奏中）」であるか否かを判別する（ステップＳＡ１６）。ＳＴＦ１は図１３のステップＳＡ６において「１」にセットされているので、Ｔ１の値が「０」に達したか否かを判別する（ステップＳＡ１７）。Ｔ１の値が「０」に達したときは、アドレスをインクリメントして次のデータを読み出す（ステップＳＡ１８）。そして、指定された区間の伴奏データが終了したか否かを判別し（ステップＳＡ１９）、区間の伴奏データが終了していない場合には、読み出したデータがイベントであるかタイムであるかを判別する（ステップＳＡ２０）。読み出したデータがイベントである場合には音源部１７に送付し（ステップＳＡ２１）、一方、読み出したデータがタイムである場合にはレジスタＴ１にストアする（ステップＳＡ２２）。
【００２２】
読み出したイベントデータを音源部１７に送付した後は、アドレスをインクリメントしてステップＳＡ１８に移行し、次のデータの読み出しを行う。一方、読み出したタイムデータをＴ１にストアした後は、図１３のステップＳＡ５に移行してスタートスイッチがオンされたか否かを判別する。スタートスイッチがオンされない場合には、再び図１５のフローチャートに移行して、Ｔ１の値が「０」に達したときは、アドレスをインクリメントして次のデータを読み出す。したがって、スタートスイッチがオンされず、且つ、指定された区間のデータが終了しない限り、ステップＳＡ５、ステップＳＡ１８乃至ステップＳＡ２０、ステップＳＡ２１又はステップＳＡ２２のループを繰り返し実行して、指定された区間の伴奏データを音源部１７に送付してスピーカから発音させる。
【００２３】
図１５のステップＳＡ１９において、現在指定されている区間のデータが終了したときは、レジスタＫＵＫＡＮ１の値をインクリメントして次の区間を指定する（ステップＳＡ２３）。このとき、インクリメントしたＫＵＫＡＮ１の値が最終の区間の値Ｍより大きくなったか否か、すなわち、その区間の伴奏の楽音が終了したか否かを判別する（ステップＳＡ２４）。ＫＵＫＡＮ１の値が最終の区間の値Ｍ以内である場合には、曲（ｎ）の模範データで新たなＫＵＫＡＮ１の先頭位置のアドレスを指定し（ステップＳＡ２５）、そのアドレスから読み出された歌詞データで表示画面を書き換える（ステップＳＡ２６）。この後は、スタートスイッチがオンされず、且つ、指定された区間のデータが終了しない限り、ステップＳＡ５、ステップＳＡ１８乃至ステップＳＡ２０、ステップＳＡ２１又はステップＳＡ２２のループを繰り返し実行して、指定された区間の伴奏データを音源部１７に送付してスピーカから発音させる。
【００２４】
図１５のステップＳＡ１７において、Ｔ１の値が「０」に達していない場合には、図１６のフローチャートに移行して、ＳＴＦ２が「１（歌唱中）」であるか否かを判別し（ステップＳＡ２８）、ＳＴＦ２は図１３のステップＳＡ６において「１」にセットされているので、レジスタＴ２の値が「０」に達したか否かを判別する（ステップＳＡ２９）。Ｔ２の値が「０」に達したときは、模範データのアドレスをインクリメントして、次のデータを読み出す（ステップＳＡ３０）。
【００２５】
ステップＳＡ３０においてアドレスをインクリメントして次のデータを読み出したときは、現在指定している区間のデータが終了したか否かを判別する（ステップＳＡ３１）。その区間のデータが終了していない場合には、読み出したデータがイベントすなわち模範データのイベントであるか、又はタイムデータであるかを判別する（ステップＳＡ３２）。読み出したデータがイベントの場合には、その模範データのイベントのピッチと音量を抽出する（ステップＳＡ３３）。次に、図２２のタイマインタラプト１のステップＳＢ４においてマイクから取り込まれ、ステップＳＢ５において検出され、ステップＳＢ６においてＲＡＭ１３にストアされた音声のピッチと音量の比較処理を行う（ステップＳＡ３４）。
【００２６】
次に、模範データのピッチおよび音量とマイクから取り込まれた音声のピッチおよび音量とを比較した結果、ピッチおよび音量のずれが所定値を超えているか否かを判別する（ステップＳＡ３５）。ずれが所定値を超えている場合には、図４に示すように、画面に警告表示（ＮＧ）を行い（ステップＳＡ３６）、ずれが所定値以下の場合には警告表示（表示されている場合には）を消灯する（ステップＳＡ３７）。警告表示又は警告表示の消灯の後は、音量およびピッチのずれをＫＵＫＡＮ１の値とともに、ＲＡＭ１３のエリアにストアする（ステップＳＡ３８）。この後は、ステップＳＡ３０に移行して次のデータの読み出しを行う。
【００２７】
読み出したデータが、ステップＳＡ３２においてタイムであると判別したときは、レジスタＴ２にタイムデータをストアする（ステップＳＡ３９）。次に、図１３のステップＳＡ５に移行して、スタートスイッチ２ｂがオンされたか否かを判別するが、このスイッチがオンされない場合には、図１５のフローチャートに移行して、ステップＳＡ１７においてＴ１の値が「０」に達していない場合には、図１６のフローチャートに移行して、ＳＴＦ２が「１」であると判別する。したがって、図２２のタイマインタラプト１の処理により、図１６のステップＳＡ２９においてＴ２の値が「０」に達したか否かを判別する。
【００２８】
Ｔ２の値が「０」に達したときは、ステップＳＡ３０において次のイベントデータを読み出して、現在指定されている区間のデータが終了でない限り、ステップＳＡ３２乃至ステップＳＡ３８の処理を繰り返す。読み出したデータがタイムの場合には、図１３のステップＳＡ５、図１５のステップＳＡ１６、図１５のステップＳＡ２８、ステップＳＡ２９へと順に移行して、Ｔ２の値が「０」に達したときは、読み出したイベントデータに基づいて、ステップＳＡ３２乃至ステップＳＡ３８の処理を繰り返しながら、マイクから取り込まれる音声データと模範データのピッチおよび音量のずれをリアルタイムで表示し、音声データのピッチおよび音量ＲＡＭ１３にストアする。
【００２９】
図１６のステップＳＡ３１において、現在指定されている区間のデータが終了したときは、ＫＵＫＡＮ２の値をインクリメントして次の区間を指定する（ステップＳＡ４０）。このとき、インクリメントしたＫＵＫＡＮ２の値が最後の区間の値Ｍを超えているか否かを判別する（ステップＳＡ４１）。ＫＵＫＡＮ２の値がＭを超えていない場合には、曲（ｎ）の模範データで新たなＫＵＫＡＮ２の先頭位置のアドレスを指定して（ステップＳＡ４２）、ステップＳＡ３２において、そのアドレスのデータを判別する。ＫＵＫＡＮ２の先頭位置のデータはイベントであるので、ステップＳＡ３３乃至ステップＳＡ３８の処理を繰り返す。
【００３０】
図１６のステップＳＡ４１において、ＫＵＫＡＮ１の値が最終の区間の値Ｍより大きくなった場合、すなわち、曲の歌詞の部分が終了した場合には、ＳＴＦ２に「２（歌詞終了）」をセットする（ステップＳＡ４３）。そして、図１３のステップＳＡ５に移行して、スタートスイッチ２ｂがオンされたか否かを判別する。スタートスイッチ２ｂがオンされない場合には、図１５のフローチャートに移行して、ステップＳＡ１７においてＴ１が「０」に達したか否かを判別し、Ｔ１が「０」に達したときは、上記した図１５の処理を繰り返す。Ｔ１が「０」に達していない場合には、図１６のフローチャートに移行して、ステップＳＡ２９においてＴ２が「０」に達したか否かを判別し、Ｔ２が「０」に達したときは、上記した図１６の処理を繰り返す。
【００３１】
図１５のステップＳＡ２４において、ＫＵＫＡＮ１の値が最終の区間の値Ｍより大きくなった場合、すなわち、曲の歌詞が終了し、且つ、伴奏のエンディング部分を含めて曲の伴奏が終了した場合には、ＳＴＦ１に「２（曲終了）」をセットする（ステップＳＡ２７）。そして、図１３のステップＳＡ５に移行して、スタートスイッチ２ｂがオンされたか否かを判別する。このスタートスイッチ２ｂがオンされたときは、終了した同じ曲の演奏を再び開始するが、スタートスイッチ２ｂがオンされない場合には、図１５のフローチャートに移行する。そして、ステップＳＡ１６においてＳＴＦ１が「１」でなく「２」の場合、又は、ステップＳＡ１７においてＴ１が「０」に達していない場合には、図１６のフローチャートに移行する。そして、ステップＳＡ２８においてＳＴＦ２が「１」でなく「２」の場合、又は、ステップＳＡ２９においてＴ２が「０」に達していない場合には、図１７のフローチャートに移行する。
【００３２】
図１７において、ＳＴＦ１およびＳＴＦ２が共に「２」であるか否かを判別する（ステップＳＡ４４）。いずれか一方が「１」の場合には、図１４のフローチャートに移行して上記した処理を繰り返すが、ＳＴＦ１およびＳＴＦ２が共に「２」である場合、すなわち、曲が終了している場合には、タイマインタラプト１を禁止する（ステップＳＡ４５）。次に、ＲＡＭ１３にストアされた音声データの音量およびピッチと、模範データの音量およびピッチとのずれに基づき評価画面を作成し（ステップＳＡ４６）。その評価画面を表示する（ステップＳＡ４７）。
【００３３】
図５および図１の表示部２に評価画面の一例を示す。評価対象のパラメータとしては、ＲＡＭ１３にストアしたピッチ（Ｐ）、音量（Ｖ）のずれの他に、発音タイミング（Ｔ）のずれがある。評価画面には、総合の評価だけでなく、各区間における評価も表示される。また、評価画面には「手本」および「特訓」のアイコンが表示される。カーソルスイッチ２ｃによって「手本」のアイコンが選択された場合には、図６に示すように、模範の歌と歌唱者の歌を聞き比べるために、区間聞き比べの画面が表示され、区間の指定を促すメッセージが表示される。なお、図５に示すように、間違った区間（０、１、２）だけを画面に表示してもよいし、図１に示すように、すべての区間（０、１、２…Ｍ）を画面に表示して、間違った区間（０、１、２）にＮＧマークを表示してもよい。
【００３４】
区間の指定を促すメッセージが表示された場合には、区間指定スイッチ２ｅおよびテンキースイッチ２ｄ又はカーソルスイッチ２ｃのオン操作によって区間が指定されたか否かを判別する（ステップＳＡ４８）。区間指定スイッチ２ｅ等のオン操作がされない場合には、戻るスイッチ２ｆがオンされたか否かを判別し（ステップＳＡ４９）、このスイッチがオンされたときは、ＲＡＭ１３にストアされている音声データの音量、ピッチのデータをクリアして（ステップＳＡ５０）、図１３のステップＳＡ２に移行して、曲選択画面を表示する。
【００３５】
図１７のステップＳＡ４８において、区間指定スイッチがオン操作されて区間が指定されたときは、その指定区間の番号をレジスタｋにセットして（ステップＳＡ５１）、模範データ又はマイクから取り込まれた音声データのいずれか一方の再生を指定するフラグＰＢＦを「０」にセットし（ステップＳＡ５２）、ＳＴＦ１を「１」にセットする（ステップＳＡ５３）。さらに、ＫＵＫＡＮ１にｋの値をセットする（ステップＳＡ５４）。
【００３６】
次に、図１８のフローチャートに移行して、曲（ｎ）の伴奏データのＫＵＫＡＮ１（ｋ）の先頭位置のアドレスを指定する（ステップＳＡ５５）。次に、指定されたアドレスの歌詞データを読み出して表示する（ステップＳＡ５６）。次に、アドレスをインクリメントして、次のデータすなわち伴奏データの最初のタイムデータを読み出す（ステップＳＡ５７）。そして、読み出したタイムデータをレジスタＴ１にストアする（ステップＳＡ５８）。
【００３７】
次に、ＰＢＦが「１（音声再生）」であるか又は「０（模範再生）」であるかを判別する（ステップＳＡ５９）。ＰＢＦが「０」である場合には、ＳＴＦ２を「１」にセットして（ステップＳＡ６０）、ＫＵＫＡＮ２にｋの値をセットする（ステップＳＡ６１）。そして、曲（ｎ）の模範データのＫＵＫＡＮ２（ｋ）の先頭位置のアドレスを指定し（ステップＳＡ６２）、そのアドレスから読み出されたデータすなわち模範データの最初のタイムデータをレジスタＴ２にストアする（ステップＳＡ６３）。
【００３８】
一方、ステップＳＡ５９において、ＰＢＦが「１」である場合には、フラグＳＴＦ３を「１（音声再生中）」にセットし（ステップＳＡ６４）、音声データの区間を指定するＫＵＫＡＮ３にｋの値をセットする（ステップＳＡ６５）。そして、ＲＡＭ１３にストアされた音声データのうちＫＵＫＡＮ３（ｋ）の先頭に対応する位置のアドレスを指定する（ステップＳＡ６６）。ステップＳＡ６３において、模範データの最初のタイムデータをＴ２にストアした後、又は、ステップＳＡ６６において、音声データのアドレスを指定した後は、タイマインタラプト２を禁止解除する（ステップＳＡ６７）。そして、図１９のフローチャートに移行する。
【００３９】
したがって、一定時間が経過するたびに、図２３のタイマインタラプト２を実行する。すなわち、Ｔ１のタイムデータの値をデクリメントし（ステップＳＣ１）、発声タイミングを再認識できるように歌詞表示の色替え処理を行う（ステップＳＣ２）。次に、ＳＴＦ２が「１」であるか否かを判別し（ステップＳＣ３）、ＳＴＦ２が「１」である場合、すなわち模範データの再生の場合には、Ｔ２のタイムデータの値をデクリメントする（ステップＳＣ４）。一方、ＳＴＦ２が「１」でない場合、すなわち音声データの再生の場合には、タイマインタラプト１のタイミングで指定したＲＡＭ１３のアドレスにストアされた音声データを音源部１７に出力する（ステップＳＣ５）。音声データを出力した後、又は、Ｔ２の値をデクリメントした後は、メインルーチンに戻る。
【００４０】
図１９のフローチャートにおいて、ＳＴＦ１が「１」であるか否かを判別し（ステップＳＡ６８）、ＳＴＦ１が「１」である場合、すなわち指定された区間ｋの伴奏データを演奏している場合には、Ｔ１の値が「０」に達したか否かを判別する（ステップＳＡ６９）。Ｔ１の値が「０」に達したときは、アドレスをインクリメントして、次のデータを読み出す（ステップＳＡ７０）。このとき区間データが終了したか否かを判別し（ステップＳＡ７１）、区間データが終了していない場合には、読み出されたデータがイベントであるか又はタイムであるかを判別する（ステップＳＡ７２）。読み出されたデータがイベントである場合には音源部１７に送付し（ステップＳＡ７３）、読み出されたデータがタイムである場合にはＴ１にストアする（ステップＳＡ７４）。
【００４１】
読み出されたイベントデータを音源部１７に送付した後は、アドレスをインクリメントして、ステップＳＡ７０に移行して次のデータを読み出す。一方、読み出されたタイムデータをＴ１にストアした後は、ステップＳＡ６８に移行して、ＳＴＦ１が「１」である場合、且つ、ステップＳＡ６９においてＴ１の値が「０」に達したときは、アドレスをインクリメントして、ステップＳＡ７０に移行して次のデータを読み出す。すなわち、ＳＴＦ１が「１」である場合には、ステップＳＡ７１において区間データが終了でない限り、時間の経過に伴って、読み出された伴奏データのイベントを音源部１７に順次送付する。
【００４２】
ステップＳＡ６９においてＴ１の値が「０」に達していない場合には、図２０のフローチャートにおいて、ＳＴＦ２が「１」であるか否かを判別し（ステップＳＡ７５）、ＳＴＦ２が「１」である場合、すなわち指定された区間ｋの模範データを再生している場合には、図６の画面から図８の模範再生の画面に移行して、Ｔ２の値が「０」に達したか否かを判別する（ステップＳＡ７６）。Ｔ２の値が「０」に達したときは、アドレスをインクリメントして、次のデータを読み出す（ステップＳＡ７７）。このとき区間データが終了したか否かを判別し（ステップＳＡ７８）、区間データが終了していない場合には、読み出されたデータがイベントであるか又はタイムであるかを判別する（ステップＳＡ７９）。読み出されたデータがイベントである場合には音源部１７に送付し（ステップＳＡ８０）、読み出されたデータがタイムである場合にはＴ１にストアする（ステップＳＡ８１）。
【００４３】
読み出されたイベントデータを音源部１７に送付した後は、アドレスをインクリメントして、ステップＳＡ７７に移行して次のデータを読み出す。一方、読み出されたタイムデータをＴ２にストアした後は、ステップＳＡ７５に移行して、ＳＴＦ２が「１」である場合、且つ、ステップＳＡ７６においてＴ２の値が「０」に達したときは、アドレスをインクリメントして、ステップＳＡ７７に移行して次のデータを読み出す。すなわち、ＳＴＦ２が「１」である場合には、ステップＳＡ７８において区間データが終了でない限り、時間の経過に伴って、読み出された模範データのイベントを音源部１７に順次送付する。ステップＳＡ７８において、区間データが終了したときは、ＳＴＦ２を「０」にリセットし、ＰＢＦを「０（模範再生）」から「１（音声再生）」に反転する（ステップＳＡ８２）。
【００４４】
ステップＳＡ７６においてＴ２の値が「０」に達していない場合には、図６の画面から図７の音声再生の画面に移行して、図２１のフローチャートにおいて、ＳＴＦ３が「１」であるか否かを判別し（ステップＳＡ８３）、ＳＴＦ３が「１」である場合、すなわち指定された区間であるＫＵＫＡＮ３（ｋ）の音声データを再生している場合には、ＫＵＫＡＮ３（ｋ）の指定区間内に音声データの読み出しが終了したか否かを判別する（ステップＳＡ８４）。指定区間内の音声データの読み出しが終了したときは、ＳＴＦ３を「０」にリセットし（ステップＳＡ８５）、ＰＢＦを「１（音声再生）」から「０（模範再生）」に反転する（ステップＳＡ８６）。そして、図１８のフローチャートに移行して、図１８乃至図２１の処理を繰り返す。
【００４５】
図２１のステップＳＡ８４において、音声データの読み出しが終了していない場合には、中止スイッチ２ｇがオンされたか否かを判別し（ステップＳＡ８７）、このスイッチがオンされていない場合には、図１９のステップＳＡ６８に移行して、図１９乃至図２１の処理を繰り返す。一方、中止スイッチ２ｇがオンされたときは、ＳＴＦ１、ＳＴＦ２、ＳＴＦ３をすべて「０」にリセットし（ステップＳＡ８８）、タイマインタラプト２を禁止する（ステップＳＡ８９）。そして、図１７のステップＳＡ４６に移行して、模範データの音量・ピッチとストアされた音声データの音量・ピッチとのずれに基づく評価画面を作成して、次の区間聞き比べに備える。
【００４６】
図５に示した評価画面において、カーソルスイッチ２ｃの操作で「特訓」のアイコンが選択された場合には、図５の評価画面から図９の特訓の画面に移行して、ピッチ、音量、発音タイミングのずれが所定値より大きい区間を間違った区間と判定して、その区間を自動的に選択し、その区間を繰り返し特訓することを促す。この場合には、例えば、図９に示すように、模範の歌声に合わせるようなアドバイスを表示する。また、上記の聞き比べの場合と同様に、模範データの演奏を適宜再生してもよい。繰り返し特訓した結果、ピッチ、音量、発音タイミングのずれが所定値以下になった場合には、図１０の画面を表示する。
【００４７】
以上のように、上記実施形態によれば、ＣＰＵ１１は、カラオケ曲の伴奏に応じてマイクから入力された歌唱者の音声信号をアナログからデジタルの音声データに変換して、ＲＡＭ１３のエリアに一時的に記憶し、ＲＡＭ１３又はＲＯＭ１４に予め記憶されたその曲に対する模範データ又はＲＡＭ１３に一時的に記憶された音声データを選択的に読み出して音源部１７によって再生させ、音声データと模範データとを比較して、曲に対す歌唱力を評価して表示部３に出力する。
したがって、音高や発声タイミングなどを間違って歌った箇所について、歌唱者がその間違いの程度を容易に認識して、正確な音高や発声タイミングなどを把握することで、歌唱力の向上を支援できる。
【００４８】
この場合において、ＣＰＵ１１は、曲の所定区間ごとに音声データと模範データとを比較して各区間の評価結果を表示部３に出力する。
したがって、正確な音高や発声タイミングなどをきめ細かく指導することができる。
【００４９】
また、上記実施形態においては、カラオケ装置の発明、すなわち物の発明について説明したが、このカラオケ装置内にフラッシュＲＯＭなどの不揮発性メモリを設けて、ＣＤ−ＲＯＭやＦＤ（フレキシブルディスク）に記憶されているカラオケ情報処理のプログラム、あるいは、ネットワークインターフェース１９を介して、インターネットなどのネットワークからダウンロードしたカラオケ情報処理のプログラムを、その不揮発性メモリにインストールして、ＣＰＵ１１がそのプログラムを実行する構成も可能である。この場合には、プログラムの発明、記録媒体の発明、および、情報処理方法の発明を実現する。
【００５０】
すなわち、そのプログラムの発明は、曲の伴奏に応じて所定の音声入力手段から入力された第１の音声信号を所定の記憶手段に一時的に記憶する第１のステップと、前記記憶手段又は他の記憶手段に予め記憶された前記曲に対する第２の音声信号又は前記記憶手段に一時的に記憶された第１の音声信号を選択的に読み出して所定の再生手段に再生させる第２のステップと、前記第１の音声信号と前記第２の音声信号とを比較して前記曲に対する当該第１の音声信号の歌唱力を評価して当該評価結果を出力する第３のステップと、をコンピュータに実行させる。
したがって、音高や発声タイミングなどを間違って歌った箇所について、歌唱者がその間違いの程度を容易に認識して、正確な音高や発声タイミングなどを把握することで、歌唱力の向上を支援できる。
【図面の簡単な説明】
【００５１】
【図１】本発明の実施形態におけるカラオケシステムのリモコン装置の外観図。
【図２】本発明の実施形態におけるカラオケシステムの構成を示すブロック図。
【図３】図２の表示部に表示されるカラオケの上達支援モードの初期画面を示す図。
【図４】図２の表示部に表示されるカラオケ演奏中のリアルタイムの評価画面を示す図。
【図５】図２の表示部に表示される曲が終了したときの全体の評価画面を示す図。
【図６】図２の表示部に表示される手本聞き比べの画面を示す図。
【図７】図２の表示部に表示される手本聞き比べの音声再生の画面を示す図。
【図８】図２の表示部に表示される手本聞き比べの模範再生の画面を示す図。
【図９】図２の表示部に表示される特訓の画面を示す図。
【図１０】図２の表示部に表示される特訓の画面を示す図。
【図１１】カラオケの曲データのフォーマットを示す図。
【図１２】図１１の曲データにおける模範データのフォーマットを示す図。
【図１３】図２のＣＰＵによって実行されるカラオケ情報処理のフローチャート。
【図１４】に続くカラオケ情報処理のフローチャート。
【図１５】に続くカラオケ情報処理のフローチャート。
【図１６】に続くカラオケ情報処理のフローチャート。
【図１７】に続くカラオケ情報処理のフローチャート。
【図１８】に続くカラオケ情報処理のフローチャート。
【図１９】に続くカラオケ情報処理のフローチャート。
【図２０】に続くカラオケ情報処理のフローチャート。
【図２１】に続くカラオケ情報処理のフローチャート。
【図２２】図２のＣＰＵによって実行されるタイマインタラプト１のフローチャート。
【図２３】図２のＣＰＵによって実行されるタイマインタラプト２のフローチャート。
【符号の説明】
【００５２】
１  カラオケシステムのリモコン装置
２  スイッチ部
３  表示部
１１  ＣＰＵ
１３  ＲＡＭ
１４  ＲＯＭ
１５  ビデオ処理部
１６  オーディオ処理部
１７  音源部
１８  マイクアンプ
１９  ネットワークインターフェース
【図１】
2008233736.tif 000003
【図２】
2008233736.tif 000004
【図３】
2008233736.tif 000005
【図４】
2008233736.tif 000006
【図５】
2008233736.tif 000007
【図６】
2008233736.tif 000008
【図７】
2008233736.tif 000009
【図８】
2008233736.tif 000010
【図９】
2008233736.tif 000011
【図１０】
2008233736.tif 000012
【図１１】
2008233736.tif 000013
【図１２】
2008233736.tif 000014
【図１３】
2008233736.tif 000015
【図１４】
2008233736.tif 000016
【図１５】
2008233736.tif 000017
【図１６】
2008233736.tif 000018
【図１７】
2008233736.tif 000019
【図１８】
2008233736.tif 000020
【図１９】
2008233736.tif 000021
【図２０】
2008233736.tif 000022
【図２１】
2008233736.tif 000023
【図２２】
2008233736.tif 000024
【図２３】
2008233736.tif 000025