図面を参照してこの発明の実施形態であるカラオケ装置について説明する。このカラオケ装置は、楽曲データを読み出して音源に供給することによりカラオケ演奏の楽音を形成する音源カラオケ装置である。この楽曲データにはガイドメロディデータが含まれており、カラオケ演奏と並行してこれを読み出し、マイクから入力される歌唱音声信号をこのガイドメロディデータと比較することによって歌唱の正確さを採点する採点機能を備えている。また、このカラオケ装置は上記採点機能をゲーム化した採点ゲームを実行するゲーム機能を備えている。採点ゲームは、ICMスクリプトデータである採点ゲームスクリプトデータによって実行される。ICMスクリプトデータとは、該カラオケ装置でカラオケ演奏以外の機能を実行するためのスクリプトデータである。
カラオケ演奏を実行する楽曲データもICMスクリプトデータも曲番号で識別される。楽曲データは、4桁の歌手番号および2桁の歌手別曲番号からなる6桁の曲番号によって識別される。ICMスクリプトデータも同様に6桁の番号で識別される。上記採点ゲームスクリプトデータには8000−01および8000−02の曲番号が割り当てられている。したがって、カラオケ利用者はリモコン装置などでカラオケ曲を選曲するのと同じ操作で採点ゲームを選択し、そのスタート/終了を指示することができる。
また、上記楽曲データと1対1に対応する曲番号以外に、複数の楽曲データと対応する曲番号であるランダム選曲番号も設けられている。ランダム選曲番号にはジャンル指定曲番号および歌手指定曲番号がある。ジャンル指定曲番号は、8000−11,8000−12,8000−13,8000−14が設けられており、8000−11,8000−12,8000−13,8000−14の曲番号は、それぞれベスト50,ポップス,演歌,全ジャンルに対応している。この曲番号が予約登録されたとき、カラオケ装置は、インデックスファイルを参照して該当するジャンルの曲をランダムに1曲選択し、この曲を演奏する。この曲の選択は演奏直前に行われるため、利用者は演奏直前までどの曲が演奏されるか判らないというゲーム性を持たせることができる。
また、歌手指定曲番号は、歌手番号+00の曲番号である。すなわち、楽曲データと1対1で対応する曲番号には、歌手番号の次に01〜99の歌手別曲番号が割り当てられ、00の歌手別曲番号はその歌手番号(歌手)の全ての曲に対応する曲番号として割り当てられている。歌手番号+00の曲番号が指定されたとき、カラオケ装置は、この歌手番号の歌手の曲のなかからランダムに1曲を選択して演奏する。なお、歌手のなかには、100曲以上のカラオケ曲が楽曲データとして登録されている歌手がおり、このような歌手には2つの歌手番号が割り当てられている。このような同じ歌手に重複して付けられた歌手番号はダブルナンバテーブルに登録しておき、歌手番号+00の曲番号が指定されたとき、このダブルナンバテーブルから同じ歌手に重複する歌手番号があるかを検索する。重複する歌手番号がある場合には、両方の歌手番号の曲から1曲を選択する。この歌手番号+00の曲番号による1曲の選択も上記ジャンル指定曲番号と同様演奏直前に行われるため、利用者は演奏直前までどの曲が演奏されるか判らないというゲーム性を持たせることができる。
利用者が、上記曲番号をリモコン装置から入力すると、カラオケ装置はその曲番号を予約リストに登録し、先に登録された曲から順に演奏する。ただし、採点ゲームスクリプトデータの番号である8000−01または8000−02が入力された場合は自動的に優先割込予約として扱い、予約リストの最上位にこの番号を登録する。そして、そのとき演奏されている曲が終了すると他の予約曲に先立ってこれが実行される。
8000−01、8000−02のどちらの曲番号のICMスクリプトデータを実行した場合でも最初に図16の画面を表示する。利用者はこの画面でカラオケオーディションゲーム、紅白歌合戦ゲーム、カラリンピックゲームの3つのゲームのなかから1つを選択可能することができる。カラオケ装置は、利用者が選択したゲームに対応するスクリプトトラックや画像データを読み出したのち、通常のカラオケ演奏モードと同様のカラオケ演奏の動作に復帰する。上記3種類の採点ゲームはこのカラオケ演奏による利用者のカラオケ歌唱を採点することによって進行する。なお、8000−01の曲番号は通常の採点ゲームを実行するスクリプトデータである。8000−02は上記8000−01の採点ゲームと全く同じゲームを実行するが、得点を通常よりも高く表示する「接待モード」でゲームを実行する。
カラオケオーディションゲームは、歌手のオーディションを真似たゲームであり、カラオケ歌唱が終了したのちその歌唱の採点結果に基づく得点を3人の審査員が表示するというゲームである。カラオケ歌唱の採点は音程,音量,リズムの3つの要素について行われ、3人の審査員はそれぞれこの音程,音量,リズムの得点を100点満点で表示する(図17(B)参照)。また、これら3つの得点の平均である総合得点も表示され、これが95点以上であった場合には、「ミリオンセラー」という祝福画面が表示される。さらに、このゲームでは、カラオケ演奏中に歌唱の巧拙およびアドバイス文言をリアルタイムに表示する。図17(A)に示すように、画面右上に審査委員長の顔とその人の言葉としてアドバイス文言が表示される。審査委員調の顔の表情が、そのときのリアルタイムの点数(後述のフレーズポイント)に応じて笑顔やしかめっ面に変わることによってそのときの得点を表示し、上記3つの要素のどこを直せばよいかがアドバイス文言として表示される。
紅白歌合戦ゲームは、紅組・白組の歌唱者が交互に歌唱して得た得点を合計して、その合計得点の大きさを競うゲームである。ゲームがスタートすると既に予約されている曲およびこれから予約される曲が交互に紅組・白組に振り分けられ、その曲の歌唱の得点がそれぞれ紅組得点カウンタ,白組得点カウンタに積算される。これら紅組得点カウンタおよび白組得点カウンタはカラオケ装置のRAM内に設定される。カラオケ装置は、曲の演奏をスタートする直前にこの曲以後に予約されている曲名のリストを「予約キュー」として表示するが、この紅白歌合戦ゲームにおいては、リスト中の紅組が歌う曲名の先頭に赤いマイクを表示し白組が歌う曲名の先頭に白いマイクを表示することによって、どの曲が紅組でどの曲が白組のものかが即座に分かるようにする。また、カラオケ演奏スタート時のタイトル画面でも図18(A)に示すように「白組いってみよ〜!」や「紅組の歌う番です」などのイラストおよび文言を表示してどちらの組が歌う番かを間違えないようにしている。さらに、カラオケ演奏中には歌唱者を応援するために、歌っている組のキャプテンの顔が曲のリズムに合わせて動くアニメーションを画面右上に表示する。このように紅白歌合戦ゲームでは、紅白どちらの歌う番かが分かりやすいように表示が工夫されている。
また、紅白歌合戦ゲームにおいて、紅組・白組が3人ずつ6人歌唱すると、その時点で合計得点の中間発表を行う。この中間発表は、6人が歌唱する毎に繰り返し行われる。ゲームは利用者が再度8000−01または8000−02を予約して採点ゲームスクリプトデータを呼び出し、ゲーム終了を選択したとき終了する。ゲーム終了が選択されると、カラオケ装置は、即座に終了するかトリ(最後に歌う人)がいるかの選択画面を表示し、トリありが選択された場合には、その後2人歌唱した時点でゲームを終了し、トリであるこの最後の2人の歌唱得点をそれまでの歌唱者の得点の3倍で加算することによって、いわゆる「一発逆転」を可能にしている。
カラリンピックゲームは、カラオケ演奏のテンポやキー(調)をランダムに変化させ、歌唱者がこれに追従して歌唱できるかを競うスポーツ的な趣向のゲームである。カラオケ演奏が不自然になりすぎないように、テンポは滑らかに数秒かけて変化させ、キーは現在のキーから変化先のキーまで一気に変化させる。キーの変化量は半音単位で任意の大きさである。また、キーはオリジナルキーを基準に上下させる。すなわち、オリジナルキーから他のキーに変化させた場合、必ずオリジナルキーに戻したのち次のキーに変化させる。なお、キーとテンポを同じタイミングに変化させる場合は、キーが変化した時点でテンポの変化を開始するものとする。
また、カラリンピックゲームにおいて、カラオケ演奏中は、図19(A),(B)に示すように画面右上に競技者が走っているアニメーションを表示する。このアニメーションは、テンポの変化に合わせて走る速さが変わり、キーの上下に合わせてジャンプしたりしゃがんだりするように制御される。走る速さをテンポ変化の開始タイミングに変化させ、ジャンプやしゃがむ動作をキーの上下変化の1秒前にさせることによって、テンポやキーの変化を予告して歌唱者が追従しやすいようにしている。
図1は上記ゲーム機能を実行するこの発明の実施形態であるカラオケ装置のブロック図である。このカラオケ装置は、カラオケ装置本体1,コントロールアンプ2,音声信号処理装置3,LDチェンジャ4,スピーカ5,モニタ6,マイク7(7a,7b),課金装置9および赤外線のリモコン装置8で構成されている。装置全体の動作を制御するカラオケ装置本体1のCPU10には、内部バスを介してROM11,RAM12,ハードディスク記憶装置17,通信制御部16,リモコン受信部13,表示パネル14,パネルスイッチ15,音源装置18,音声データ処理部19,文字表示部20,表示制御部21が接続されるとともに、上記外部装置であるコントロールアンプ2,音声信号処理装置3,LDチェンジャ4および課金装置9がインタフェースを介して接続されている。
ROM11にはこの装置を起動するために必要な起動プログラムなどが記憶されている。装置の動作を制御するシステムプログラム,アプリケーションプログラムなどはハードディスク記憶装置17に記憶されている。アプリケーションプログラムはカラオケ演奏プログラムやICM実行プログラムなどである。カラオケ装置の電源がオンされると上記起動プログラムによってシステムプログラムやカラオケ演奏プログラムがRAM12に読み込まれる。またハードディスク記憶装置17には、上記システムプログラムやアプリケーションプログラムのほか、約1万曲のカラオケ演奏用楽曲データ,採点ゲーム機能を実行するICMスクリプトデータなどが記憶されている。
通信制御部16はISDN回線を介して配信センタから楽曲データなどをダウンロードしハードディスク記憶装置17に書き込む。この書込動作はDMA回路を用いてハードディスク記憶装置17に直接行われる。
リモコン装置8は、テンキーなどのキースイッチを備えており、利用者がこれらのスイッチを操作するとその操作に応じたコード信号が赤外線で出力される。リモコン受信部13はリモコン装置8から送られてくる赤外線信号を受信して、そのコード信号を復元しCPU10に入力する。リモコン装置8から曲番号が入力されると、CPU10はこの曲番号をRAM12に設定されている予約リストに登録する。
表示パネル14はこのカラオケ装置本体1の前面に設けられており、現在演奏中の曲番号や予約曲数を表示するマトリクス表示器や現在設定されているキーやテンポを表示するLED群などを含んでいる。パネルスイッチ15は、前記リモコン装置8と同様の曲番号入力用のテンキーやキーチェンジスイッチ、テンポチェンジスイッチを備えている。
音源装置18は、楽曲データの楽音トラックのデータに基づいて楽音信号を形成する。楽音トラックは、複数のトラックを有しており、音源装置18はこのデータに基づいて複数パートの楽音信号を同時に形成する。音声データ処理部19は、楽曲データに含まれる音声データに基づき、指定された長さ、指定された音高の音声信号を形成する。音声データは、バックコーラスなどの人声など電子的に形成しにくい信号波形をそのままPCM信号として記憶したものである。前記音源装置18が形成した楽音信号および音声データ処理部19が再生した音声信号は、コントロールアンプ2に入力される。コントロールアンプ2には、2本のマイク7a,7bが接続されており、カラオケ歌唱者の歌唱音声信号が入力される。コントロールアンプ2はこれらのオーディオ信号に、それぞれエコーなど所定の効果を付与したのち増幅してスピーカ5に出力する。
音声信号処理装置3は、カラオケ演奏時にCPU10からガイドメロディデータを入力するとともに、マイク7から入力された歌唱音声信号をコントロールアンプ2から入力する。ガイドメロディデータは、カラオケ演奏と並行して楽曲データから読み出される。ガイドメロディデータはMIDIデータであるが、CPU10はこのMIDIイベントデータを周波数データおよび音量データに変換して音声信号処理装置3に入力する。音声信号処理装置3は、歌唱音声信号から歌唱周波数データ,歌唱音量データを割り出し、これと上記ガイドメロディの周波数データ,音量データとを比較してその差である差分データを算出する。この差分データの算出は150ms毎に実行される。算出された差分データはCPU10に入力される。CPU10は、音声信号処理装置3から入力された差分データを積算し、この積算値に基づいてカラオケ歌唱を採点する。この採点動作については後で詳述する。
なお、この音声信号処理装置3は、本来は、歌唱音声信号の周波数を検出し、これを周波数変換することによってハーモニ旋律パートの歌唱音声信号を生成する装置である。すなわち、ハモリモードでカラオケ曲が演奏されているときは、CPU10からハーモニ旋律パートのデータを入力し、マイク7から入力された歌唱音声信号の周波数をこのデータに合わせて変換することによってハーモニ旋律パートの歌唱音声信号を生成する。このようにして形成されたハーモニ旋律パートの歌唱音声信号はコントロールアンプ2に入力され、主旋律の歌唱音声信号とともに増幅してスピーカ5から出力される。
文字表示部20は入力される文字データに基づいて曲名や歌詞などの文字パターンを生成する。また、外付装置であるLDチェンジャ4は、CPU10から入力された映像選択データに基づいて動画の映像を背景映像として再生する。映像選択データは楽曲データのヘッダに書き込まれているジャンルデータなどに基づいて決定される。表示制御部21はLDチェンジャ4から入力された背景映像に文字表示部20から入力される歌詞などの文字パターンをスーパーインポーズで合成してモニタ6に表示する。また、ゲームモード時には、背景映像,歌詞以外に種々のキャラクタやアニメーションが表示制御部21に入力され、これがモニタ6に表示される。
課金装置9は、100円硬貨などの硬貨の投入を受け付ける装置であり、投入された硬貨の枚数をクレジットとして記憶する。カラオケ装置本体は、課金装置9のクレジット残高に応じて有料サービスを処理する。この実施形態ではカラオケオーディションの採点機能を有料としている。
図2は同カラオケ装置において用いられる楽曲データの構成を示す図である。楽曲データは、ヘッダ,楽音トラック,ガイドメロディトラック,歌詞トラック,音声トラック,効果トラックおよび音声データ部からなっている。ヘッダは、この楽曲データの属性に関するデータが書き込まれる部分であり、曲名,ジャンル,発表日,曲の演奏時間などのデータが書き込まれている。楽音トラック〜効果トラックの各トラックは、複数のイベントデータと各イベントデータ間の時間的間隔を示すデュレーションデータからなるMIDIフォーマットで記述されている。歌詞トラック〜効果制御トラックのデータは楽音データではないがインプリメンテーションの統一をとり作業工程を容易にするため、これらのトラックもMIDIフォーマットで記述されている。
楽音トラックは、音源装置18を駆動して複数の楽音信号を形成するための複数パートのトラックからなっている。ガイドメロディトラックには、該カラオケ曲の主旋律すなわち歌唱者が歌うべき旋律のデータが書き込まれている。歌詞トラックは、モニタ6上に歌詞を表示するためのシーケンスデータを記憶したトラックである。歌詞トラックのイベントデータは、歌詞の文字コードやその表示位置を指示するデータなどからなる。音声制御トラックは、音声データ部に記憶されている音声データ群の発声タイミングなどを指定するトラックである。音声データ部には人声などのPCMデータが記憶されており、音声制御トラックのイベントデータは、そのイベントタイミングにどの音声データを再生するかを指定する。効果制御トラックには、コントロールアンプ2を制御するための効果制御データが書き込まれている。コントロールアンプ2はこの効果制御データに基づいて楽音信号に対してリバーブなどの残響系の効果を付与する。
また、採点ゲームなどの機能を実行するICMスクリプトデータも上記楽曲データとほぼ同様の構成になっており、このICMスクリプトデータのスクリプト名,リリース日などのデータが書き込まれるヘッダ、スクリプトデータ本体、および、該スクリプトの実行時に使用される複数の画像データ・テキストデータ群などからなっている。採点ゲームスクリプトデータの場合、カラオケオーディションゲーム、紅白歌合戦ゲーム、カラリンピックゲーム毎にスクリプトデータトラックが設定されており、画像データとしては、図16〜図20に示す画面やアニメーションを表示するためのデータなどが書き込まれており、テキストデータとしてはカラオケオーディションゲームで表示するアドバイス文言などが書き込まれている。
ここで、前記音声信号処理装置3,CPU10の採点機能について説明する。利用者がリモコン装置8から8000−01の曲番号を入力すると採点ゲームのICMスクリプトデータが起動し、カラオケ装置の動作を採点ゲームモードに設定する。こののち、選曲されたカラオケ曲を演奏する通常動作に復帰するが、この演奏時に採点ゲーム動作を実行する。
カラオケ演奏に合わせて歌唱するとマイク7からこの歌唱音声信号が入力され、コントロールアンプ2を介して音声信号処理装置3にこの信号が入力される。音声信号処理装置3は、入力された歌唱音声信号の周波数および音量を分析して、歌唱周波数データ,歌唱音量データを生成する。そして、これらのデータをCPU10から入力されたガイドメロディの周波数データおよび音量データと比較して差分データを算出する。この比較は150ms毎に実行される。算出された周波数差分データおよび音量差分データはCPU10に返信される。
CPU10は、150ms毎に入力される差分データを積算する。また、歌唱音量データとガイドメロディの音量データの立ち上がりタイミングのずれに基づいてリズム差分データを割り出し、このデータも積算する。そして、カラオケ曲の1フレーズ毎にこの積算値を集計し、音程ポイント,音量ポイント,リズムポイントを算出する。このポイントは、前記差分データの積算値に基づく減点値を満点から減算することによって算出される。このように1フレーズ毎に算出されたポイントは蓄積記憶される。そして、カラオケ曲の終了時に、蓄積記憶されたポイントを集計することによって全曲ポイントを算出する。この全曲ポイントは、周波数(音程),音量,リズムの3要素について別々に算出される。
上記動作で算出される音程,音量,リズムのフレーズポイント,全曲ポイントが採点ゲームに用いられる。フレーズポイントは採点ゲームに用いられる。採点ゲームでは、このフレーズポイントに基づいて審査委員長のアニメーションの表情を変え、また、直すべき点についてのアドバイス文言をこの顔の吹き出し(マンガでセリフを記述する欄)として表示する。フレーズポイントが高いときは審査員は笑顔であり、ポイントが低いときは審査員はしかめっ面である。また、小さい声で歌っているため特に音量ポイントが低い場合には「もっと大きな声で」などのアドバイス文言を表示する。また、カラオケ曲が終了したのち、3人の審査員が表示する得点は、それぞれ音程,音量,リズムの全曲ポイントに基づいて算出された表示用得点である。図17(B)の例では3人の審査員が表示する得点は、(音程,音量,リズム)を、それぞれ(100,0,0)、(0,100,0)、(0,0,100)の比率で加重平均したものである。すなわち、それぞれ音程,音量,リズムについての得点である。これ以外に、たとえば、3人の審査員を演歌系,ポップス系,本格派などのジャンルに設定しておき、それぞれそのジャンルの曲を歌唱するのに適した歌唱能力の重み付けで算出された得点を表示させるようにすることもできる。たとえば、演歌の場合(60,30,10)、ポップスの場合(20,40,40)、本格派の場合(40,30,30)などの重み付けが考えられる。
図3〜図15および図21〜図23は同カラオケ装置の動作を示すフローチャートである。図3は予約登録処理動作を示すフローチャートである。この動作は、リモコン装置8などから曲番号の予約入力がされた場合の動作である。リモコン装置8などから曲番号が入力されると(s1)、その曲番号が採点ゲームモードを設定/解除するための採点ゲームスクリプトデータの番号、すなわち、8000−01または8000−02などの特定番号であるかを判断する(s2)。特定番号であれば予約入力された曲番号を入力順に記憶する予約リストの先頭にこの曲番号を登録する(s4)。これ以外の通常の曲番号であれば予約リストの最後尾にこの曲番号を登録する(s3)。特定番号としては、採点ゲームスクリプトデータの曲番号以外に、カラオケ装置の取扱説明を再生するためのICMスクリプトデータなどがある。
図4〜図7はデータ読出処理動作を示すフローチャートである。この動作は、予約リストから曲番号を読み出して、この曲番号で指定されるカラオケ演奏用の楽曲データまたはICMスクリプトデータを読み出し、該データの実行の順次をする動作である。まず、カラオケ演奏中(ICMスクリプトデータの実行を含む)であるか否かを判断する(s10)。カラオケ演奏中であればこのカラオケ演奏が終了するまで待機する。カラオケ演奏が終了すると予約曲があるか否か、すなわち、予約リストに曲番号が登録されているかを判断する(s11)。予約曲がない場合にはCM上映動作に進む(s11)。予約曲がある場合には、予約リストの先頭に書き込まれている曲番号を読み出し(s12)、この曲番号の種類を判断する(s13)。曲番号が、1曲の楽曲データを指定する通常の曲番号であればs13から直接s15に進む。曲番号が上述のジャンル指定曲番号または歌手指定曲番号のランダム選曲番号の場合には、その曲番号に対応してランダムに1曲を選択したのち(s14)、s15に進む。
ここで、図21を参照してランダム選曲動作について説明する。図21(A)はインデックスファイルの構成を説明する図である。同図(B)は曲数テーブルの構成を説明する図である。インデックスファイル,曲数テーブルともハードディスク記憶装置17に記憶されている。
インデックスファイルはハードディスク記憶装置17に記憶されている全ての楽曲データの種別を記憶したファイルである。各楽曲データの曲番号に対応して、その楽曲データのジャンル(演歌であるか)を示すジャンルフラグ,現在リクエスト数の上位50位以内に入っているかを示すBESTフラグ,配信されて1か月以内の新譜であるかを示す新譜フラグ,採点可能か、すなわち、ガイドメロディトラックを含んでいるかを示す採点可能フラグ,ランダム選曲から除外すべきか否かを示すランダム除外フラグが設定されている。ジャンルフラグがセットしているとその曲は演歌であり、リセットしているポップスである。BESTフラグがセットしている曲は上記50位以内のヒット中の曲である。新譜フラグがセットしている曲はリリースから1か月以内の新曲である。採点可能フラグがセットしている曲は、楽曲データ中にガイドメロディを含んでおり、採点機能を動作させることができ、採点ゲームに用いることができる曲である。過去に配信された楽曲データのなかにはガイドメロディを含んでいないものもあるため、このフラグが設けられている。また、ランダム除外フラグがセットしている曲は、上記ジャンル指定曲番号によるランダム選曲から除外する曲である。たとえば、外国語の曲などの特殊な曲がランダム選曲で演奏されると歌唱者が全く歌えない場合があるため、このような特殊な曲についてはランダム除外フラグをセットして、ランダム選曲の対象から除外する。ただし、歌手指定曲番号の場合には、歌手が決まっていることによって外国語などの特殊な曲が演奏される可能性を歌唱者が意識していると考えられるため、このような曲もランダム選曲から除外しない。
図21(B)の曲数テーブルは、各歌手番号を有する曲番号が何曲あるかを記憶したテーブルである。曲番号は01から順番に付されるため、最終の歌手別曲番号を記憶することによりその歌手番号で何曲が登録されているかを知ることができる。また、歌手によっては100曲以上の曲が登録されており、2つの歌手番号が同一の歌手に割り当てられている者もいるため、そのような歌手のためにリンクする歌手番号も記憶されている。すなわち、100曲以上の曲が登録され同一の歌手に2つの歌手番号が割り当てられている場合には、これら2つの歌手番号のそれぞれに同一歌手に割り当てられている他の歌手番号を記憶しておく、これにより、一方の歌手番号+00の歌手指定曲番号が入力された場合でも、他の曲番号に含まれる曲を含めてランダム選曲をすることができる。
同図(C)はランダム選曲動作を示すフローチャートである。ランダム選曲番号が読み出されると、まずそのランダム選曲番号がジャンル指定曲番号か歌手指定曲番号かを判断する(s200)。ジャンル指定曲番号であればs201に進み、歌手指定曲番号であればs205に進む。s201ではインデックスファイルを検索して、指定されたジャンル(ポップス,演歌,BEST50,全曲)の曲のうちランダム選曲から除外されていない曲を対象曲として抽出する。s203では現在採点ゲームの実行中であるかを判断し、採点ゲームの実行中であれば採点可能フラグがリセットしている採点不可能曲を対象から除外する(s203)。そして乱数を発生し、この乱数を曲数に応じてマッピングして1曲を選択する(s203)。この選択された曲の楽曲データがs19以下で読み出される。一方、ランダム選曲番号が歌手指定曲番号であった場合には(s200)、曲数テーブルを検索してこの歌手番号の曲数を読み出し(s205)、この歌手番号にリンク先があるか否かを判断する(s206)。リンク先がある場合にはそのリンク先歌手番号の欄を検索して曲数を読み出して、前記読み出された曲数に加算する(s207)。そして乱数を発生し、この乱数を曲数に応じてマッピングして選択される曲の曲番号を決定する(s208)。こののち現在採点ゲームモードであるかを判断し(s209)、採点ゲームモードであれば選択された曲番号で前記インデックスファイルを検索してこの曲番号の曲が採点可能であるかを判断する(s210)。採点ゲームモードでない場合、または、選択された曲が採点可能な曲であればこの曲番号をもって図4の動作にリターンし、採点ゲームモードで採点不可能な曲が選択された場合にはs208に戻って再度乱数を発生して選曲をやり直す。
図4において、s13で読み出された曲番号が8000−01または8000−02であった場合には、ゲームメニュー処理のためにs30以下の動作(図6,図7)に進む。
ここで、図6,図7を参照してゲームメニュー処理動作を説明する。s30において、最初にモードレジスタmodeの内容を判断する。modeは現在の動作モードを記憶するレジスタである。モードレジスタは0〜4の値をとり、それぞれ、0:通常のカラオケ演奏モード、1:カラオケオーディションゲームモード、2:紅白歌合戦ゲームモード、3:カラリンピックゲームモード、4:紅白歌合戦ゲーム終了モードを示している。
s30において、modeが0であれば通常のカラオケ演奏モードから採点ゲームを開始するためにこのICMスクリプトデータが選択されたことを示しているため、s30からゲーム選択動作(s31以下)に進み、modeジスタが1〜4であれば採点ゲームを終了するためにこのICMスクリプトデータが選択されたことを示しているため図7のゲーム終了動作に進む。
s31では、図16に示す採点ゲームのメニュー画面を表示する。利用者はリモコン装置8の△キーまたは▽キーを押してカーソルを所望のゲームの位置に移動させる。△キーがオンされると(s32)、カラオケ装置は、画面上のカーソルを左回りに1つ移動させる(s35)。▽キーがオンされると(s33)、画面上のカーソルを右回りに1つ移動させる(s36)。スタートキーがオンされると(s34)、そのときカーソルのある位置に表示されていたゲームモードを設定するためs37以下の動作に進む。
選択されたゲームがカラオケオーディションゲームであった場合には(s37)、モードレジスタmodeに1をセットし(s40)、メニュー画面を消去して通常のカラオケ演奏の画面に戻してこの動作を終了する(s41)。選択されたゲームが紅白歌合戦ゲームであった場合には(s38)、modeに2をセットし(s42)、歌う組を決定する紅組フラグに1をセットし(s43)、中間集計までの曲数をカウントするCmをクリアし(s44)、紅組の得点を合計する紅組得点カウンタ、白組の得点を合計する白組得点カウンタをクリアして(s45)、s41に進む。s41では画面を通常のカラオケ演奏の画面に戻して動作を終了する。また、カラリンピックゲームが選択された場合には(s39)、modeに3をセットして(s46)、s41に進む。「やめる」が選択された場合には、なにもゲームが選択されなかったため、画面を消去するのみで(s41)この動作を終了する。上記動作によってカラオケオーディションゲーム,紅白歌合戦ゲームまたはカラリンピックゲームが設定されるとともに、各ゲームで用いるスクリプトデータ(プログラム)および画像データ,テキストデータがRAM12に読み込まれる。これにより、以後のカラオケ歌唱においてこのゲームが実行される。
一方、この採点ゲームスクリプトデータが読み出されたとき(s30)、mode=1〜4の場合には、現在採点ゲームモードが設定されており、このゲームを終了するためにこのスクリプトデータが選択されたことを意味するため、s30からs50に進む。
s50では現在実行されているゲームを判断する。カラオケオーディションゲームまたはカラリンピックゲームすなわちmode=1,3の場合には、現在実行されているゲームを終了する旨の表示を行い(s51)、modeに0をセットして(s52)、動作を終了する。
一方、紅白歌合戦モードの場合には、s50からs53に進む。s53ではこのまま終了するか最後にトリの歌い手が歌うかを指定する画面を表示する。この表示に応じて利用者がキー入力をする。入力内容がトリが歌わない旨の入力であればs54からs55に進む。s55では紅組フラグを判断しセット(1)していれば紅白交互に歌ったあとであるため、後述の表示制御プログラムおよび採点プログラムに紅白歌合戦の終了指示を出力して(s58)動作を終了する。また、紅組フラグがリセット(0)している場合には紅組が歌ったあとまだ白組が歌っていないため、紅組の最後の得点をキャンセルする旨の表示を行い(s56)、採点プログラムに紅組の最後の得点をキャンセルする旨の指示を出力したのち(s57)、終了指示を出力する(s58)。これにより、図18(B)に示す画面で最終得点発表が行われ、紅白歌合戦が終了する。
利用者からトリが歌う旨の入力があった場合はs54からs59に進む。s59ではモードレジスタmodeに4をセットする。そして紅組フラグを判断する(s60)。紅組フラグがセットしている場合にはトリの人数をカウントするトリカウンタCtに1をセットして(s61)動作を終了する。紅組フラグがリセットしている場合には直前の紅組の歌唱者をトリとしてカウントし、次の白組の歌唱者が二人目のトリ、すなわち、最後の歌唱者とする。このため、トリカウンタCtに2をセットし(s62)、直前の紅組の歌唱者の得点を3倍にカウントするように採点プログラムに指示して(s63)、動作を終了する。
図4に戻って、予約リストから読み出された曲番号が8000−01,8000−02以外の曲番号であった場合にはs15に進む。s15ではモードレジスタmodeの内容を判断する。mode=0の場合には通常のカラオケ演奏モードである。通常のカラオケ演奏モードの場合にはモニタ6をブルーバックにしたのち(s16)s18に進む。一方、採点ゲームモードの場合には、モニタ6の背景としてゲーム名のロゴの入ったパターンを表示したのち(s17)、s18に進む。このゲーム名のロゴの入ったパターンは、上述した図6の動作で読み出された採点ゲームスクリプトデータに含まれている。
s18では予約リストの内容を表示する。この予約リストの先頭にはこれから演奏する楽曲データの曲名が記載されている。また、この予約リストの表示において、紅白歌合戦ゲームが設定されている場合には、紅組フラグを参照し、紅組が歌う曲の曲名の先頭に赤色のマイクを表示し、白組が歌う曲名の先頭に白色のマイクを表示する。そして、曲番号で識別される楽曲データを読み出して音源装置などをセットアップする(s19)。このセットアップ動作の間に、予約リストを消去して(s20)、この予約リストから先頭の(現在読み出し中の)曲番号を削除し(s21)、読み出された楽曲データの曲名を表示する(s22)。同時に、現在歌合戦ゲームが設定されているか、すなわち、mode=2,4であるか否かを判断する(s23)。紅白歌合戦ゲームが設定されていなければ上記セットアップの完了を待って(s27)、カラオケ実行動作に進む。
一方、紅白歌合戦ゲームが設定されていれば紅組フラグを判断し(s24)、この曲を歌う組の指示する画面を曲名のバックに表示する(s25,26)。たとえば、紅組フラグが0で白組が歌う番のときには図18(A)に示すような「白組の方いってみよう!」の文言を含む画面を表示して白組の歌唱者に歌うように促す。セットアップが完了するまでこの表示を継続し(s27)、セットアップが完了するとカラオケ実行動作に進む。
カラオケ実行動作は、進行制御動作(図8,図9)、表示制御動作(図10〜図13)および採点処理動作(図14,図15)からなっており、それぞれがデータや指示を交換しながら並行して動作する。
図8,図9は進行制御動作を示すフローチャートである。まず、図8において、現在カラリンピックゲームが設定されているか(mode=3)を判断する(s64)。カラリンピックゲームが設定されていれば初期設定動作(図22(A)参照)を実行したのち(s65)、s66に進む。カラリンピックゲームが設定されていない場合にはs64から直接s66に進む。
s66では、楽曲データの各トラックのデータをクロックおよびデュレーションデータに従って読み出し、読み出されたイベントデータが楽音の発音・消音を制御するノートイベントデータであれば、そのイベントデータに含まれるノートナンバにキーシフト量であるkcを加算する(s67)。キーシフト量kcはカラリンピックゲームのときキー変更動作で種々の値が設定されるが、これ以外のモード時には常時0に設定れている。そしてイベントデータを対応する部分に出力する(s68)。楽音トラックのイベントデータは音源装置18に出力され、歌詞トラックのイベントデータは文字表示部20に出力され、音声トラックに従って読み出された音声データは音声データ処理部19に出力される。また、効果トラックのイベントデータはコントロールアンプ2に出力され、ガイドメロディトラックのイベントデータは周波数データ,音量データに変換されたのち音声信号処理装置3に出力される。これにより、カラオケ曲の演奏、歌詞の表示および採点などの動作が実行される。曲が終了するまでこの動作を継続する(s70)。楽曲データの読出動作を継続している間、カラリンピックゲームが設定されている場合、すなわち、mode=3の場合(s69)、ランダムにキー変更およびテンポ変更を行う(s71〜s76)。カラオケ演奏スタート時にカラリンピックゲームが設定されていれば、所定の乱数処理により事前にキー変更、テンポ変更のタイミングおよびその大きさを決定しておく。そして、楽曲データの読出中にキー変更タイミングであるか(s71)、テンポ変更タイミングであるか(s74)を判断する。キー変更タイミングであれば、キー変更処理(図22(B)参照)を実行するとともに(s72)、キー変更の内容を表示制御動作に通知する(s73)。キーの変更は中間値をとらずに一気に行われる。表示制御動作ではこのキーの変更に応じてランニングキャラクタ(後述)をジャンプさせたり、しゃがませたりする。テンポ変更タイミングであれば(s74)、テンポ変更処理(図23参照)を実行するとともに(s75)、テンポ変更の内容を表示制御動作に通知する(s76)。テンポの変更はその変化範囲に応じて徐々に行われるものとする。表示制御動作ではこのテンポの変更に応じてランニングキャラクタの走る速度を速くしたり遅くしたりする。
ここで、図22,図23を参照してカラリンピックゲーム時の初期設定動作,キー変更処理動作,テンポ変更処理動作について説明する。図22(A)は、カラリンピックゲーム時の演奏スタート時に実行される初期設定動作を示すフローチャートである。まず、楽音トラックの先頭に書き込まれているオリジナルテンポデータをtmにセットする(s220)。テンポの変更はこのオリジナルテンポの半分〜2倍の範囲で変更される。こののち、乱数を発生して(s221)、この乱数を1秒〜30秒の範囲にマッピングし(s222)、マッピングされた値をキー変更までの時間としてキー変更タイマにセットする(s223)。また、新たな乱数を発生して(s224)、この乱数を1秒〜30秒の範囲にマッピングし(s225)、マッピングされた値をテンポ変更までの時間としてテンポ変更タイマにセットする(s226)。
同図(B)は図8のs72で実行されるキー変更処理の詳細動作を示すフローチャートである。まず、オリジナルキーからキーが変更されているか否かを記憶するフラグである。キーが変更されていない場合には、キーを変更するため乱数を発生し(s231)、これを半音数を表す1〜11の範囲にマッピングする(s232)。マッピングされた値をキー変更量として変更量レジスタksにセットする(s233)。一方、現在キーが変更されている場合には、これをオリジナルキーに戻すため変更量レジスタksに0をセットする(s237)。次の発音イベントデータが読み出されたときs67でこの設定変更された変更量ksがノートナンバに加算されて音源に送られ、キーが変更される。
こののち、新たな乱数を発生して(s234)、この乱数を1秒〜30秒の範囲にマッピングし(s235)、マッピングされた値を次のキー変更までの時間としてキー変更タイマにセットする(s236)。
図23は図8のs75で実行されるテンポ変更処理の詳細動作を示すフローチャートである。テンポを変更するための乱数を発生し(s240)、変更比率を表す−50〜+50の範囲にマッピングする(s241)。マッピングされた値をパーセントとして現在のテンポ設定値tsに乗算して新たなテンポ設定値を算出し、テンポ設定値レジスタtsに書き込む(s242)。このtsがオリジナルテンポtmの2倍〜1/2の範囲に収まっているかを判定し(s243)、収まっていない場合にはこの範囲に収まるように修正する(s244)。この修正はオリジナルテンポの2倍を超えている場合には2倍に修正し、1/2を下回っていた場合には1/2に修正する頭切り/足切り処理でもよく、上記範囲からはみ出している部分を範囲内に折り返して新たな値を求めてもよい。たとえば、オリジナルテンポが100の曲で240のテンポが算出された場合にはオリジナルテンポの2倍である200を超えている40を200から折り返し(減算し)て算出された160を修正されたテンポ設定値とする。これ以外にも種々の修正方法を適用することができる。このようにして決定された新たなテンポ設定値tsに演奏のテンポを修正する(s245)。この修正はテンポを刻むテンポクロックの周波数をこれに合わせて修正するようにしてもよく、基本クロックはそのままにしておき、楽曲データの各トラックの読み出しタイミングを制御するタイミングデータの1カウントの時間を修正するようにしてもよい。この修正は一気に行うのではなく、数秒かけて徐々に行われる。
こののち、新たな乱数を発生して(s246)、この乱数を1秒〜30秒の範囲にマッピングし(s247)、マッピングされた値を次のテンポ変更までの時間としてテンポ変更タイマにセットする(s248)。
図9において、曲が終了すると(s70)、表示制御プログラム、採点処理プログラムに対して曲の終了を通知し(s77)、現在のモードを判断する(s78)。通常のカラオケ演奏モード,カラリンピックモードであればこのままこの進行制御動作を終了する。カラリンピックモードの場合には表示制御プログラムおよび採点処理プログラムが結果発表の動作を実行する。また、カラオケオーディションゲームは課金対象となっており、料金を要求する。まず、採点処理プログラムおよび表示制御動作を一旦停止させ(s79)、課金装置9にクレジットがあるかを判断する(s80)。クレジットがある場合にはこれを減算して採点処理プログラム・表示制御プログラムの動作を再開させる(s83)。クレジットがない場合にはクレジットを投入すべき旨を表示する(s81)。これに応じてクレジットが投入された場合にはs82からs83に進む。クレジットが投入されない場合にはmodeを0に戻して(s84)動作を終了する。
一方、紅白歌合戦ゲームが設定されている(mode=2,4)場合には(s78)、終了モードであるか、すなわち、トリが歌う番か否かを判断する(s85)。終了モードでなければ6曲演奏したのちの中間発表をするための中間発表カウンタCmに1を加算し(s86)、この加算によってCm=6になったかを判断する(s87)。Cm=6になった場合には採点処理プログラムおよび表示制御プログラムに対して中間発表を指示する(s88)。そしてCmをクリアし(s89)、紅組フラグを反転する(s90)。Cmが6になっていない場合にはs87から直接s90に進んで紅組フラグの反転のみして動作を終了する。
また、紅白歌合戦の終了モード(mode=4)の場合にはトリカウンタCtに1を加算する(s91)。この加算の結果Ct=3になれば、紅白両組のトリが歌い終わったことを示すため、採点プログラムおよび表示制御プログラムに対して最終発表を指示する(s93)。そしてゲームモードレジスタmodeに0をセットして(s94)動作を終了する。
図10〜図13は、上記進行制御動作と並行して実行される表示制御動作(表示制御プログラム)を示すフローチャートである。この動作は、前記データ読出動作のs22の曲名表示から、モニタ6に表示する画面制御を引き継いでスタートする。まず、LDチェンジャ4にチャプタナンバなどの背景映像選択データを送信することによって、背景映像をスタートさせる(s100)。次にモードレジスタmodeの内容を判断し(s81)、mode=0すなわち通常のカラオケ演奏モードであればs102に進む。s102では前記進行制御プログラムが読み出す歌詞トラックのイベントデータ(文字表示データ)を入力し、このデータに従って文字パターンを生成して前記背景映像にスーパーインポーズする(s102)。これによりモニタ6に背景画像と歌詞が表示される。この動作を曲が終了するまで継続し(s103)、曲が終了すると、LDチェンジャ4に対して背景映像の停止を指示して(s104)動作を終了する。一方、s102でmodeが0でない場合は、そのゲームモードに応じて図11〜図13の表示制御動作に進む。
図11は、mode=1、すなわち、カラオケオーディションゲーム時の画面制御動作を示すフローチャートである。まず、前記s100の指示で再生がスタートした背景映像の上に図17(A)に示す審査員(審査委員長)の顔のアニメーションを表示する(s105)。演奏スタート時には普通の顔のアニメーションを表示する。こののち進行制御プログラムから入力される歌詞データに基づいて歌詞のスーパーインポーズ表示を実行しつつ(s106)、フレーズポイントが入力されるか(s107)、曲が終了するか(s110)を判断する。フレーズポイントとは、後述の採点処理プログラムで算出されるカラオケ曲のフレーズ毎の点数であり、音程,音量,リズムの3要素について算出されるものである。フレーズポイントが入力されると(s107)、このポイントに応じて前記審査員の顔のアニメーションを変更する(s108)。このアニメーションの変更は、区間ポイントが高い場合には笑顔になり、区間ポイントが低い場合にはしかめっ面になるように変更される。また、同時に歌唱の欠点を修正できるようにアドバイス文言を吹き出し表示する(s109)。アドバイス文言は「よい」、「よくも悪くもない」、「音程が悪い」、「テンポ(リズム)が悪い」、「音量が悪い/声が出ていない」、「全て悪い」の内容を示す6種類が準備されており、それぞれアドバイスのような「もっと大きな声を出して!」とか「音程に気をつけて!」などの文言になっている。
曲が終了すると(s110)、背景映像を停止するようにLDチェンジャ4に指示し(s111)、採点処理プログラムから表示用得点を入力する(s112)。モニタ6の表示を上記背景映像画面から図17(B)に示す結果発表画面に切り換えて、この表示用得点を表示する(s113)。3人の表示用得点の平均である総合得点が95点以上の場合には(s114)、ゴールドディスクのイラストの入ったミリオンセラーの祝福画面を表示する(s115)。
図12はmode=2または4の紅白歌合戦ゲームにおける表示制御プログラムの動作を示すフローチャートである。カラオケがスタートして背景映像がスタート(s100:図9)したのちこの動作にはいる。まず、紅組フラグを判断する(s120)。紅組フラグがセットしている場合には紅組が歌唱する番であるため紅組のリーダのアニメーションを表示する(s121)。一方、紅組フラグがリセットしている場合には白組が歌唱する番であるため、白組のリーダのアニメーションを表示する(s122)。リーダのアニメーションは画面右上に表示される。進行制御プログラムから入力される歌詞データに従って歌詞をスーパーインポーズ表示し(s123)、曲のリズムに合わせて前記リーダのアニメーションを動かす(s124)。すなわち、リーダの顔がリズムに合わせて左右に揺れるように動かす。曲が終了するまで(s125)、これらの表示制御動作を実行する。
曲が終了すると(s125)、LDチェンジャ4に対して背景映像の停止を指示し(s126)、進行制御プログラムから中間発表または最終発表が指示されたかを判断する(s127,s129)。中間発表の場合には、採点処理プログラムから中間集計の得点を受け取ってこれを表示する(s128)。中間発表は図18(B)に示すような画面で表示される。また、また、最終発表が指示された場合には(s129)、最終集計得点を採点プログラムから受け取り、上記中間発表画面と同じような画面で結果を発表し(s130)、勝敗に応じて(s131)、紅組勝ち画面(s132)、白組勝ち画面(s133)、または、引き分け画面(s134)を表示する。
図13はmode=3、すなわちカラリンピックゲーム時の表示制御動作を示すフローチャートである。まず、s100の指示で再生スタートしている背景映像のうえにランニングアニメを表示する(s140)。このランニングアニメーションは、図19(A),(B)を交互に表示してキャラクタが走っているように見せるアニメーションであり、モニタ6の右上に表示される。そして、進行制御プログラムから入力される歌詞データに従って歌詞をスーパーインポーズ表示する(s141)。そして、進行制御プログラムからテンポ変更またはキー変更の指示が入力されるかをs142,s143,s146,s147で判断する。テンポアップの指示が入力された場合には(s142)、そのテンポアップに応じてランニングのピッチを速くする(s144)。テンポダウンの指示が入力された場合には(s143)、そのテンポダウンに応じてランニングのピッチを遅くする(s145)。また、キーアップの指示が入力された場合には(s146)、ランニングしているアニメーションを1回ジャンプさせる(s148)。このジャンプは図19(C)のイラストをランニングアニメーション(図19(A),(B))挿入することによって実現される。また、キーダウンの指示が入力された場合には(s127)、ランニングしているアニメーションを1回しゃがませる(s129)。このしゃがむ動作は図19(D)のイラストをランニングアニメーション(図19(A),(B))に挿入することによって実現される。曲が終了するまでこの表示制御を継続する(s150)。
曲が終了すると(s150)、LDチェンジャ4に対して背景映像の停止を指示し(s151)、採点処理プログラムから表示用得点を入力して(s152)、この表示用得点をモニタ6に表示する(s153)。この得点は10.0が最高点である。この得点に応じて図20(A)に示す金メダルの授与画面や銀メダル,銅メダルのメダル授与画面を表示し(s154→s155)、得点がメダル授与に満たない場合には図20(B)の「泣きながら帰国」画面を表示する(s156)。
図14,図15は採点処理プログラムの動作を示すフローチャートである。この動作のうちs160〜s163は音声信号処理装置3の動作を示している。音声信号処理装置3は進行制御プログラムからガイドメロディの周波数データおよび音量データを受け取るとともに(s160)、コントロールアンプ2から歌唱者の歌唱音声信号を入力する(s161)。そして、歌唱音声信号の周波数および音量を分析し(s162)、これらの周波数データおよび音量データを比較することによって周波数差分データおよび音量差分データを算出する(s163)。この差分データは、音声信号処理装置3からCPU10に入力される。CPU10では、これら周波数差分データ,音量差分データに基づいて、音量データの立ち上がりのタイミング差すなわちリズム差分データを割り出す(s164)。そして、これら周波数差分データ,音量差分データ,リズム差分データを差分データバッファに積算する(s165)。以上の動作はカラオケ演奏中に150ms毎に実行される。フレーズの終了を検出するとs166からs167に進む。フレーズとは曲の区切りのことであり、ガイドメロディの音量が0になったことで判断することができる。また、フレーズの区切りを示すデータを楽曲データに埋め込んでおき、これに基づいてs166からs167に進むようにしてもよい。
フレーズが終了すると、このフレーズにおける周波数(音程),音量およびリズムのフレーズポイントを算出する(s167)。このポイントは、前記差分データの積算値から減点値を算出し、この減点値を満点から減算する減点方式で算出される。このフレーズポイントを蓄積記憶するとともに(s168)、mode=1すなわちカラオケオーディションゲームが実行されている場合には、並行して動作している表示制御プログラムにこのフレーズポイントを出力する(s170)。この表示制御プログラムではこのフレーズポイントに基づいて審査委員長の表情が変えられ、アドバイス文言が表示される。こののち、曲が終了するまで(s171)、1フレーズ毎に差分データバッファをクリアして(s172)、s160にもどる。曲が終了すると(s171)、全てのフレーズのフレーズポイントを平均することによって、周波数(音程),音量,リズムの全曲ポイントを算出する(s173)。そして、実行されているゲームに応じてこの全曲ポイントを表示用得点に加工する(s174以下)。まず、モードレジスタmodeを判断し(s174)、mode=1すなわちカラオケオーディションゲームであればs175〜s178の動作を実行する。mode=2,4すなわち紅白歌合戦ゲームであればs180〜s187の動作を実行する。また、mode=3すなわちカラリンピックゲームであればs190〜s193の動作を実行する。
カラオケオーディションゲームにおいて、s175では、周波数の全曲ポイント,音量の全曲ポイントおよびリズムの全曲ポイントを加重平均して表示用得点を3種類算出する(s175)。この表示用得点は、上述した3人の審査員が表示するもので、それぞれ異なる重み付けで算出される。さらに、3つの表示用得点を単純平均した総合得点も算出される。そして、このカラオケオーディションゲームが8000−01の曲番号でスタートしたものであるか8000−02の曲番号でスタートしたものであるかを判断する(s176)。8000−02の曲番号でスタートしたものであれば、算出された表示用得点をかさ上げする(s177)。かさ上げ得点の算出式は、最大4割かさ上げするのであれば、「元の表示用得点」×0.6+40で行えばよい。このようにして算出された表示用得点を表示制御プログラムに出力する(s178)。
また、紅白歌合戦ゲームにおいて、s180でトリが歌う終了モードであるかを判断する。終了モードであれば、周波数,音量,テンポの3つの全曲ポイントを平均して300点満点で得点を計算する(s182)。それ以外の場合には、3つの全曲ポイントを平均して100点満点で得点を計算する(s181)。そして紅組フラグを判断し(s183)、紅組フラグがセットしていれば紅組得点カウンタにこの得点を加算する(s184)、紅組フラグがセットしていれば白組得点カウンタにこの得点を加算する(s185)。そして進行制御プログラムから中間発表または最終発表の指示が入力されたかを判断し(s186)、これらの指示が入力されたには上記紅組得点カウンタおよび白組得点カウンタに記憶されている得点を表示制御プログラムに出力する(s187)。
カラリンピックゲームにおいて、s190では、周波数の全曲ポイント,音量の全曲ポイントおよびリズムの全曲ポイントを平均して表示用得点を算出する。この得点は10.0満点で小数第1位まで算出される。そして、このカラリンピックゲームが8000−01の曲番号でスタートしたものであるか8000−02の曲番号でスタートしたものであるかを判断し(s191)、8000−02の曲番号でスタートしたものであれば全ての得点をかさ上げする(s192)。このかさ上げ演算は上記カラオケオーディションゲームと同じ演算を用いればよい。このようにして算出された表示用得点を表示制御プログラムに出力する(s193)。
これにより、カラオケオーディションゲームおよびカラリンピックゲームではカラオケ曲の演奏が終了する毎にその得点が表示され、紅白歌合戦ゲームでは中間発表または最終発表時に紅組・白組の合計得点が表示される。
なお、結果発表画面に登場する審査員、すなわち、表示される得点の種類は3に限定されない。また、各表示用得点は、周波数ポイント,音量ポイント,リズムポイントの重み付けを異ならせて算出するようにしているが、サビやクライマックスなどフレーズ毎のフレーズポイントの重み付けを異ならせて算出するようにしてもよい。たとえば、演歌系の審査員はサビ部分のフレーズポイントを重視して採点するように設定するなどである。また、上記採点ゲームでは、3人の審査員は固定であったが、4人以上の審査員のなかから3人を選択できるようにしてもよい。