(57)【要約】【課題】カラオケ装置においてユーザの利便性を向上させる技術を提供する。【解決手段】サブＣＰＵ６は、メインＣＰＵ７からの応答信号をあらかじめ定めた規定時間内に受信しない場合には（Ｓ４０１）、メインＣＰＵ７に障害が発生したと判断し、メインＣＰＵに対してリセット信号を送信し（Ｓ４０２）、メインＣＰＵ７を再起動させる。メインＣＰＵ７の再起動が完了したか否かを判断するために、サブＣＰＵ６は、メインＣＰＵ７に対してあらかじめ定めた確認信号を送信する（Ｓ４０３）。メインＣＰＵ７から応答信号を受信することで、再起動が完了したかを確認する（Ｓ４０４）。【選択図】図４
2005266646.tif 000002
【特許請求の範囲】
【請求項１】
カラオケ装置であって、
入力装置と、メインＣＰＵを備えたカラオケ機能を実現するメインコンピュータと、サブＣＰＵおよびサブメモリを備えたサブコンピュータと、を有し、
前記メインＣＰＵは、
前記サブＣＰＵから受信した、カラオケの再生開始を指示する開始制御信号に従い、前記メインコンピュータの各構成要素を制御し、当該開始制御信号と共に前記サブＣＰＵから受信した曲情報に対応するカラオケの再生を行い、再生終了後に、当該カラオケの終了を示す終了制御信号を当該曲情報と共に前記サブＣＰＵに送信する再生処理と、
前記サブＣＰＵからのリセット信号に従い、前記メインコンピュータを再起動し、再起動終了後に、応答信号を前記サブＣＰＵに送信する再起動処理と、を行い、
前記サブＣＰＵは、
前記入力装置を介してユーザより予約曲を受け付けた場合に、当該予約曲の曲情報を予約順と共に前記サブメモリに登録する登録処理と、
前記サブメモリに前記曲情報を登録した場合に、前記予約順が最も早い曲情報を前記サブメモリから読み出し、読み出した曲情報を前記開始制御信号と共に前記メインＣＰＵに送信して、前記メインＣＰＵに当該曲情報に対応するカラオケの再生を指示する再生要求処理と、
前記メインＣＰＵから前記終了制御信号を曲情報と共に受信した場合に、前記サブメモリに記憶されている当該曲情報に、演奏が終了したことを示す演奏終了フラグを付与し、前記演奏終了フラグが付与されていない曲情報であって前記予約順が最も早い曲情報を前記サブメモリから読み出し、読み出した曲情報を前記開始制御信号と共に前記メインＣＰＵに送信して、前記メインＣＰＵに当該曲情報に対応するカラオケの再生を指示する連続再生要求処理と、
前記メインＣＰＵに障害が発生した場合に、前記リセット信号を前記メインＣＰＵに送信し、前記メインＣＰＵに前記メインコンピュータの再起動を指示する再起動要求処理と、
前記メインＣＰＵから前記リセット信号に対する応答信号を受信した場合に、前記演奏終了フラグが付与されていない曲情報であって前記予約順が最も早い曲情報を前記メモリから読み出し、読み出した曲情報を前記開始制御信号と共に前記メインＣＰＵに送信して、前記メインＣＰＵに当該曲情報に対応するカラオケの再生を指示するリセット再生要求処理と、を行うこと
を特徴とするカラオケ装置。
【請求項２】
請求項１に記載のカラオケ装置であって、
前記サブＣＰＵは、
前記再起動要求処理において、前記開始制御信号の送信後、所定時間内に、前記メインＣＰＵから前記終了制御信号を受信しなかった場合に、前記メインＣＰＵに障害が発生したものと判断すること
を特徴とするカラオケ装置。
【請求項３】
請求項１または２に記載のカラオケ装置であって、
前記メインＣＰＵは、
再生中のカラオケに対する課金処理と、当該課金処理を行ったことを示す課金済情報を当該カラオケの曲情報と共に前記サブＣＰＵに送信する課金済情報送信処理と、をさらに行い、
前記サブＣＰＵは、
前記メインＣＰＵから前記課金済情報を曲情報と共に受信した場合に、前記メモリに記憶されている当該曲情報に、前記課金処理を行ったことを示す課金フラグを付与する課金フラグ付与処理をさらに行い、
前記リセット再生要求処理において、前記開始制御信号と共に前記メインＣＰＵに送信した曲情報に課金フラグが付与されている場合、課金済情報を前記メインＣＰＵに送信して、前記メインＣＰＵに、当該曲情報のカラオケ再生に対する課金処理を行わないように制御すること
を特徴とするカラオケ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カラオケ装置の技術に関するものである。
【背景技術】
【０００２】
従来のカラオケ装置では、カラオケ装置を操作する操作者により誤った操作が行われた場合に、カラオケ装置にシステムダウン等の障害が発生している。
このような障害に対処するため、カラオケ装置の操作者による操作手順を逐一カラオケ装置へ記録しておき、障害発生時にこの記録しておいた操作手順を再度復元することで障害状態の解析、原因を追究する技術が開示されている(特許文献1)。
また、カラオケ装置全体の故障率を低下させる方法として、カラオケ装置の構成部位のうち、故障が多発しやすい、曲情報を再生する再生装置の駆動部の動作時間を短くすることで駆動部の寿命を増大させる方法がある(特許文献２)。
【０００３】
【特許文献１】特開２０００−４７９１１号公報
【０００４】
【特許文献２】特開平８−１５２８９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のカラオケ装置では、ＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔｓ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）音源のデコード、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）ビデオのデコードなど、カラオケ装置の主な機能をコンピュータで制御している。
【０００６】
コンピュータは、コンピュータの構成部品の異常動作、コンピュータで稼動するアプリケーションソフトのバグなどにより、障害（動作停止）が発生することが多い。アプリケーションソフトの障害を検出するために、コンピュータ上にアプリケーションソフトの障害を監視する監視プログラムを常駐させ、アプリケーションソフトに障害が発生した場合に対応する技術がある。しかし、コンピュータのＣＰＵ自体に障害が発生した場合には、この技術では対処できない。
【０００７】
一方、ユーザが歌っている途中にカラオケ装置（コンピュータ）に障害が発生した場合には、演奏中の曲が突然停止する。このような場合には、復旧作業により対処して正常な状態に戻すことが行われている。しかし、カラオケ装置は、コンピュータの障害が発生したときに楽曲の演奏処理を中断して異常終了するため、カラオケ演奏を再開しても、演奏途中で中断した楽曲の演奏が再開されることはない。このため、ユーザは、再度、同じ曲をリクエストして歌い直すなどをしなければならず、手間がかかり面倒である。
【０００８】
また、カラオケ装置における楽曲の演奏に対する課金方法として、楽曲１曲毎に課金する装置がある。このような装置では、楽曲の演奏が開始した後、予め定めた時間（例えば３０秒）が経過した後に課金している。このため、楽曲の演奏が開始してから予め定めた時間経過後に、カラオケ装置（コンピュータ）に障害が発生し途中で演奏が停止した場合には、カラオケ装置の障害により楽曲を最後まで歌い終わっていないにも拘わらず、その曲に対して課金されてしまう。さらに、コンピュータの再起動により正常な状態に戻ったときに、ユーザは、演奏が途中で停止したために、再度リクエス卜し直して歌い直しをした場合にも、その歌い直しの楽曲に対しても課金されてしまうこととなる。このような場合には、カラオケ装置における障害発生による歌い直しにも拘わらず、ユーザは同じ曲に対して重複して金銭を支払うことになり不満が生じる。
本発明は、上記課題を解決するために、カラオケ装置においてユーザの利便性を向上させる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、上記課題を解決するため、カラオケ装置であって、入力装置と、メインＣＰＵを備えたカラオケ機能を実現するメインコンピュータと、サブＣＰＵおよびサブメモリを備えたサブコンピュータと、を有し、前記メインＣＰＵは、前記サブＣＰＵから受信した、カラオケの再生開始を指示する開始制御信号に従い、前記メインコンピュータの各構成要素を制御し、当該開始制御信号と共に前記サブＣＰＵから受信した曲情報に対応するカラオケの再生を行い、再生終了後に、当該カラオケの終了を示す終了制御信号を当該曲情報と共に前記サブＣＰＵに送信する再生処理と、前記サブＣＰＵからのリセット信号に従い、前記メインコンピュータを再起動し、再起動終了後に、応答信号を前記サブＣＰＵに送信する再起動処理と、を行い、前記サブＣＰＵは、前記入力装置を介してユーザより予約曲を受け付けた場合に、当該予約曲の曲情報を予約順と共に前記サブメモリに登録する登録処理と、前記サブメモリに前記曲情報を登録した場合に、前記予約順が最も早い曲情報を前記サブメモリから読み出し、読み出した曲情報を前記開始制御信号と共に前記メインＣＰＵに送信して、前記メインＣＰＵに当該曲情報に対応するカラオケの再生を指示する再生要求処理と、前記メインＣＰＵから前記終了制御信号を曲情報と共に受信した場合に、前記サブメモリに記憶されている当該曲情報に、演奏が終了したことを示す演奏終了フラグを付与し、前記演奏終了フラグが付与されていない曲情報であって前記予約順が最も早い曲情報を前記サブメモリから読み出し、読み出した曲情報を前記開始制御信号と共に前記メインＣＰＵに送信して、前記メインＣＰＵに当該曲情報に対応するカラオケの再生を指示する連続再生要求処理と、前記メインＣＰＵに障害が発生した場合に、前記リセット信号を前記メインＣＰＵに送信し、前記メインＣＰＵに前記メインコンピュータの再起動を指示する再起動要求処理と、前記メインＣＰＵから前記リセット信号に対する応答信号を受信した場合に、前記演奏終了フラグが付与されていない曲情報であって前記予約順が最も早い曲情報を前記メモリから読み出し、読み出した曲情報を前記開始制御信号と共に前記メインＣＰＵに送信して、前記メインＣＰＵに当該曲情報に対応するカラオケの再生を指示するリセット再生要求処理と、を行う。
【発明の効果】
【００１０】
本発明によれば、メインＣＰＵの障害を検出し、メインＣＰＵに対して再起動を指示することができるので、カラオケ装置のユーザの利便性を向上させるが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明に係るカラオケ装置１００の実施形態について図面を参照しながら説明する。
【００１２】
図１に、本実施の形態におけるカラオケ装置１００のブロック図を示す。図１において、カラオケ装置１００は、外部リモートコントローラ１と、外部リモートコントローラインタフェース２と、操作パネル３と、表示器４と、サブコンピュータ１１０と、メインコンピュータ２００と、を有する。サブコンピュータ１１０は、サブＣＰＵ６と、サブワークＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６１と、サブプログラムＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６３と、を有する。また、メインコンピュータ２００は、マイク入力端子５と、メインＣＰＵ７と、メインワークＲＡＭ８と、メインプログラムＲＯＭ９と、フォントＲＯＭ１０と、モデム１１と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１２と、ＭＩＤＩ音源１３と、ＭＰＥＧデコーダ（Ｄｅｃｏｄｅｒ）１４と、ビデオデコーダ（Ｖｉｄｅｏ  Ｄｅｃｏｄｅｒ）１５と、ビデオキャプチャ（Ｖｉｄｅｏ  Ｃａｐｔｕｒｅ）１６と、Ａ／Ｄコンバータ（Ａｎａｌｏｇ  Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）１７と、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１８と、Ｄ／Ａコンバータ（Ｄｉｇｉｔａｌ  Ａｎａｌｏｇ  Ｃｏｎｖｅｒｔｅｒ）１９と、課金インタフェース２０と、ビデオ入力端子２１と、ビデオ出力端子２２と、オーディオ出力端子２３と、バス２４とを備える。
【００１３】
外部リモートコントローラ１は、カラオケのユーザによる曲番号などの指示を受け付け、受け付けた指示を赤外線信号として出力する。
外部リモートコントローラインタフェース２は、外部リモートコントローラ１から出力された赤外線信号を受け付け、電気信号に変換するインタフェースである。
操作パネル３は、カラオケユーザによる曲番号などの指示を受け付ける。
表示器４は、受け付けた曲番号などを表示するディスプレイである。
マイク入力端子５は、マイク２５０に接続され、音声信号を入力する。
【００１４】
サブＣＰＵ６は、外部リモートコントローラインタフェース２、操作パネル３、表示器４およびメインＣＰＵ７に接続される。また、サブワークＲＡＭ６１は、サブＣＰＵ６のワークエリアとして機能する。サブプログラムＲＯＭ６３は、監視プログラム６４と、タイマプログラム６２と、を有する。サブＣＰＵ６は、監視プログラム６４に従い、メインＣＰＵ７の障害を検出し、メインＣＰＵ７にリセット信号を出力する。また、操作パネル３で受け付けた曲番号に対応する予約曲情報をメインＣＰＵ７に出力する。また、サブＣＰＵ６は、タイマプログラム６２に従い、監視プログラム６４によりメインＣＰＵ７の障害を検出した時刻を計測する。
【００１５】
メインワークＲＡＭ８は、メインＣＰＵ７のワークエリアとして機能する。メインプログラムＲＯＭ９は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）９１と、カラオケ機能を実現するためのアプリケーションプログラム９２と、を有する。
【００１６】
メインＣＰＵ７は、ＯＳ９１およびアプリケーションプログラム９２に従い、ＭＩＤＩ音源デコード処理、ＭＰＥＧビデオデコード処理、外部からのＭＰＥＧビデオエンコード処理、フォント再生処理など、カラオケ装置１００の主な機能を制御する。
【００１７】
具体的には、ＭＩＤＩ音源のデコード処理として、メインＣＰＵ７は、ＨＤＤ１２からＭＩＤＩデータ（楽曲情報）を読み出し、読み出したＭＩＤＩデータをＭＩＤＩ音源１３に出力し、ＭＩＤＩ音源１３に、ＭＩＤＩデータに対応するオーディオデータをＤＳＰ１８に送信させる。また、ＭＰＥＧビデオデコード処理として、メインＣＰＵ７は、ＨＤＤ１２からカラオケ演奏時の背景映像のＭＰＥＧデータ（映像データ）を読み出し、読み出したＭＰＥＧデータをＭＰＥＧデコーダ１４にデコードさせる。また、ＭＰＥＧビデオエンコード処理として、メインＣＰＵ７は、ビデオ入力端子２１に入力された映像信号（一般的には、コンポジットビデオ信号）を、ビデオキャプチャ１６で取り込ませ、この映像信号をカラオケ演奏時の背景映像としてビデオ出力端子２２に接続されたモニタ２３０に表示させる。また、フォント再生処理として、メインＣＰＵ７は、ＨＤＤ１２から文字データ（歌詞やテロップなどの文字情報）を読み出し、当該文字データに対応するフォントデータをフォントＲＯＭ１０から読み出し、ビデオデコーダ１５に出力する。
モデム１１は、電話回線などの通信回線に接続され、楽曲情報、映像データ、プログラムデータなどの各種データを送受信する外部装置２１０との通信を制御する通信制御部である。
ＨＤＤ１２は、ＭＰＥＧデ一タ（カラオケ演奏時の背景映像（ＢＧＶ）となるビデオデータとコーラスのオーディオデータとを含む）、ＭＩＤＩデータ（楽曲情報）、文字データなどのカラオケ用データを記憶する外部記憶装置である。
ＭＩＤＩ音源１３は、メインＣＰＵ７の制御に従い、ＨＤＤ１２から読み出されたＭＩＤＩデータに対応するオーディオデータをＤＳＰ１８に出力する。
ＭＰＥＧデコーダ１４は、メインＣＰＵ７の制御に従い、ＨＤＤ１２から読み出されたＭＰＥＧデータのオーディオデータをデコードし、デコードされたオーディオデータをＤＳＰ１８に出力する。
ビデオデコーダ１５は、ＨＤＤ１２から読み出されたＭＰＥＧデ一タのビデオデータをデコードし、デコ一ドしたビデオデータに、フォントＲＯＭ１０から読み出されたフォントデ一タを重畳してビデオ出力端子２２を介してモニタ２３０に出力する。また、ビデオデコーダ１５は、ビデオ入力端子２１からビデオ信号が入力された場合には、ビデオキャプチャ１６でキャプチャされたビデオ信号に、フォントＲＯＭ１０から読み出されたフォントデータを重畳して出力する。
ビデオキャプチャ１６は、ビデオ入力端子２１から入力された映像信号（一般的には、コンポジットビデオ信号）を取り込む。
Ａ／Ｄコンバータ１７は、アナログ信号であるマイク入力端子５から入力された音声信号をディジタルのオーディオデータに変換する。
ＤＳＰ１８は、Ａ／Ｄコンバータ１７で変換されたオーディオデータと、ＭＰＥＧデコーダ１４でデコードされたオーディオデータとに各種エフェクト効果を与え、ディジタル信号を出力する処理を行う。
Ｄ／Ａコンバータ１９は、ＤＳＰ１８から出力されるディジタル信号をアナログ信号に変換する。
課金インタフェース２０は、外部に設置されたコインボックス２０５に接続され、メインＣＰＵ７とコインボックスとの間でやり取りされる、楽曲の演奏への対価である課金データや応答信号を送受信する。
ビデオ入力端子２１は、ビデオ２２０に接続され、ビデオ出力端子２２は、映像信号を表示するモニタ２３０に接続される。
オーディオ出力端子２３は、音声を出力するスピーカ２４０に接続される。
バス２４は、メインＣＰＵ７と、メインワークＲＡＭ８と、メインプログラムＲＯＭ９と、フォントＲＯＭ１０と、モデム１１と、ＨＤＤ１２と、ＭＩＤＩ音源１３と、ＭＰＥＧデコーダ１４と、ビデオデコーダ１５と、ビデオキャプチャ１６と、課金インタフェース２０とを接続させるための信号線である。
つぎに、本実施の形態のカラオケ装置１００における処理を説明する。
まず、カラオケのユーザによる予約を受け付けてから演奏するまでの処理を説明する。
図１に示す外部リモートコントローラ１もしくは操作パネル３において、ユーザによる楽曲の演奏予約を、楽曲の曲番号により受け付けると、サブＣＰＵ６は、サブワークＲＡＭ６１に受け付けた演奏の予約曲の曲番号を予約曲情報として記憶し、サブワークＲＡＭ６１への記憶が早い順に予約曲情報を演奏開始を示す開始制御信号と共にメインＣＰＵ７に送信する。
メインＣＰＵ７は、サブＣＰＵ６から送信された予約曲情報に基づいてＨＤＤ１２に格納されているカラオケ用データ（楽曲デ一タ、映像データ、文字データ等）を読出し、楽曲データをＭＩＤＩ音源１３に送信し、映像データをＭＰＥＧデコーダ１４とビデオデコーダ１５とに送信する。また、メインＣＰＵ７は、文字データに基づいてフォントＲＯＭ１０からフォントデータを読み出し、ビデオデコーダ１５に送信する。  ＨＤＤ１２に、予約曲情報に対応するカラオケ用デ一タがない場合には、モデム１１および通信回線を介して外部装置２１０から予約曲情報に対応するカラオケ用データを取得する。
【００１８】
ＭＩＤ１音源１３は、ＨＤＤ１２から読み出された楽曲情報（ＭＩＤＩデータ）に基づいてオーディオデータを生成し、ＤＳＰ１８に出力する。
【００１９】
ＭＰＥＧデコーダ１４は、ＨＤＤ１２から読み出された映像デ一タのオ一ディオデ一タ（ＭＰＥＧデータに含まれるコ一ラスなどのオーディオデ一タ）をデコードし、ＤＳＰ１８に出力する。
【００２０】
ＤＳＰ１８は、マイク入力端子５から入力され、Ａ／Ｄコンバータによりディジタル変換されたオーディオデータ（音声データ）と、ＭＩＤＩ音源１３から出力されたオーディオデータ（楽曲情報）と、ＭＰＥＧデコーダ１４から出力されたオ一ディオデ一タ（コーラスのオーディオデータ）とを加算し、加算したオーディオデータにエコ一やキー変更などのエフェクト信号処理を施す。
【００２１】
ビデオデコーダ１５は、ＨＤＤ１２から読み出された映像データ（ＭＰＥＧデ一タ）をデコードしてビデオデータとし、フォントＲＯＭ１Ｏから読み出されたフォントデータ（歌詞情報）を、デコードしたビデオデータに重畳する。
【００２２】
ユーザによる演奏予約曲を受け付け後、メインＣＰＵ７は、前述したＨＤＤ１２、ＭＩＤＩ音源１３、ＭＰＥＧデコ一ダ１４、ビデオデコーダ１５およびＤＳＰ１８等を制御して演奏開始の準備を完了し、その後、オーディオデータ及びビデオデータを、オーディオ出力端子２３およびビデオ出力端子２２から出力し、カラオケ演奏を開始する。
【００２３】
メインＣＰＵ７は、アプリケーションプログラム９２に従い、演奏を開始したときに時間の計測を開始し、あらかじめ定めた時間経過した後に、課金処理を行う。予め定めた時間は、楽曲の演奏が開始し、当該楽曲の演奏に対する課金を行うまでの時間であり、例えば３０秒としておく。これは、カラオケ装置１００での課金は、楽曲の演奏への対価として行われ、一般的には、楽曲がある程度演奏された時点（ユーザが歌をある程度歌った時点）で課金される。演奏開始直後に課金した場合、楽曲のイントロのみが演奏され、その後すぐに（ユーザが歌わずに）楽曲の演奏を停止した場合にも課金されることになる。また、演奏終了後に課金すると、曲の１番のみを歌って演奏を終了した場合には課金されないことになる。このような不具合を低減するため、ユーザがある程度歌った時点（例えば、曲の１番の途中まで歌った時点）で課金するようにするため、楽曲の演奏が開始し、予め定めた時間経過した後に課金を行うようにしている。
【００２４】
メインＣＰＵ７は、演奏を開始したときに、アプリケーションプログラム９２に従い、時間の計測を開始し、予め定めた時間が経過した後に、課金インタフェース２０を介し、外部に設置されたコインボックス２０５に対して課金を行わせる制御信号を送信する。コインボックス２０５は、ユ一ザにより納金された金額を検出し、カラオケ装置１００のメインＣＰＵ７からの制御信号に基づいて、予め定めた金額（一曲の対価）ずつ納金された金額より減額する。このことにより楽曲に対する課金が行われる。コインボックス２０５は、課金を実行した後、課金インタフェース２０を介してメインＣＰＵ７に対して課金を行ったことを示す応答信号を送信する。メインＣＰＵ７は、コインボックス２０５からの応答信号により課金が行われたことを判断する。
楽曲の演奏が終了すると、メインＣＰＵ７は、サブＣＰＵ６に対して演奏を終了したことを示す終了制御信号を送信する。
つぎに、図２〜図４を参照して本実施の形態におけるサブＣＰＵ６の処理について説明する。図２に、サブワークＲＡＭ６１に記憶する予約内容の一例を示す。図３に、サブＣＰＵ６における演奏指示処理のフローチャートを示す。また、図４に、サブＣＰＵ６が実行するメインＣＰＵ応答確認処理のフローチャートを示す。図３および図４に示すフローチャートは、サブCPU6が監視プログラム６４およびタイマプログラム６２を実行することで開始される。
【００２５】
本実施の形態においては、サブＣＰＵ６は、メインＣＰＵ７の動作を監視し、メインＣＰＵ７の障害を検出し、障害を検出した場合には、メインＣＰＵ７に対して再起動を指示する。また、サブＣＰＵ６は、障害が発生した場合に、演奏途中であった楽曲を、再度、楽曲の頭から演奏し直すように指示し、演奏し直しの楽曲に対しては重複した課金処理を行わないように制御する。
図１に示す外部リモートコントローラ１もしくは操作パネル３において、ユーザによる楽曲の演奏予約を、楽曲の曲番号により受け付けると、サブＣＰＵ６は、サブワークＲＡＭ６１に受け付けた演奏の予約曲の曲番号を予約曲情報として記憶し、サブワークＲＡＭ６１への記憶が早い順に予約曲情報を演奏開始を示す開始制御信号と共にメインＣＰＵ７に送信する。
サブＣＰＵ６は、予約曲を受け付けると、予約された曲順２０１に対応させて、予約曲情報(曲番号２０２)と、演奏が終了したか否かを示す演奏終了フラグ２０３とを、図２に示すようにサブワークＲＡＭ６１に登録する。このとき、演奏終了フラグ２０３は、演奏が終了していないことを示す「０」を登録する。図２においては、曲順２０１の１曲目に曲番号２０２の「１２３４５６」、２曲目に「１０００００」、３曲目に「１００００１」を記憶し、１曲目においては、演奏終了フラグ２０３が演奏終了したことを示す「１」が記憶されており、２曲目以降は演奏終了フラグ２０３が演奏終了していないことを示す「０」が記憶されている例を示している。
予約曲情報の登録後、サブＣＰＵ６は、図３に示す演奏指示処理を実行し、演奏曲順を示すＮに１をセットする（Ｓ３０１）。サブＣＰＵ６は、１曲目に予約された予約曲情報を開始制御信号と共にメインＣＰＵ７に送信する（Ｓ３０２）。送信後、メインＣＰＵ７の障害を検出するためのタイマ６２を起動する（Ｓ３０３）。その後、サブＣＰＵ６は、メインＣＰＵ７から予約曲の演奏の終了ごとに、予約曲情報とともに演奏が終了したことを示す終了制御信号を受信する（Ｓ３０４）。サブＣＰＵ６は、終了制御信号を受信後、対応する予約曲情報の演奏終了フラグ２０３を、演奏が終了したことを示す「１」に更新し（Ｓ３０５）、Ｎに１を加算し、タイマ６２をリセットし（Ｓ３０５）、加算後の曲順Ｎに対応する予約曲が記憶されているか否かを判断する（Ｓ３０６）。つぎに予約されている曲が無い場合には、演奏指示処理を終了する。予約曲がある場合には、曲順Ｎに対応する曲情報を、つぎに演奏すべき曲として、メインＣＰＵ７に対して演奏開始を示す制御信号とともに送信する（Ｓ３０２）。このように、サブＣＰＵ６は、各曲の演奏終了後に、予約順序に従って、開始制御信号を曲情報とともに順次送信していく。
また、サブＣＰＵ６は、Ｓ３０４において、終了制御信号を受信していない場合には、図４に示すメインＣＰＵ応答確認処理に移行する（Ｓ４００）。
サブＣＰＵ６は、メインＣＰＵ７からの終了制御信号を、開始制御信号送信後あらかじめ定めた時間経過しても受信しない場合に、メインＣＰＵ７に応答できないような障害が発生したとして、メインＣＰＵに対してリセットを指示するようにしている。
【００２６】
以下、図４を参照してＣＰＵ応答確認処理を説明する。図４において、サブＣＰＵ６は、タイマ６２を参照し、タイマ６２の計測時間が、あらかじめ定めた規定時間を経過しているか否かを判断する（Ｓ４０１）。この規定時間は、例えば、１曲分の最大時間に相当する時間として５分としておく。タイマ６２の計測時間が、あらかじめ定めた規定時間を経過していない場合には、図３に示すＳ３０４に戻る。タイマ６２の計測時間が、あらかじめ定めた規定時間を経過している場合には、メインＣＰＵ７に障害が発生したと判断し、メインＣＰＵに対してリセット信号を送信し（Ｓ４０２）、メインＣＰＵ７を再起動させる。
【００２７】
つぎに、メインＣＰＵ７の再起動が完了したか否かを判断するために、サブＣＰＵ６は、メインＣＰＵ７に対してあらかじめ定めた確認信号を送信する（Ｓ４０３）。メインＣＰＵ７から応答信号を受信することで、再起動が完了したかを確認することができる（Ｓ４０４）。あらかじめ定めた時間、メインＣＰＵ７からの応答信号を受信しない場合には、リセットをしても復旧しないような障害が発生したとして、障害発生を通知し、異常終了とする（Ｓ４０９）。この場合、例えば、表示器４や、モニタ２３０に障害が発生したことを表示したり、外部装置２１０に障害が発生したことを送信するようにしてもよい。もしくは、障害発生を知らせる表示灯をあらかじめ備えておき、表示灯を点灯させるようにしてもよい。
【００２８】
図４に示すＳ４０４において、サブＣＰＵ６は、メインＣＰＵ７の再起動が完了したことを確認すると、メインＣＰＵ７の障害発生により楽曲の再演秦が行われた場合に、重複した課金を行わせないようにするため、メインＣＰＵ７で障害が発生したときに、演奏していた曲に対して課金が行われていたか否かを確認する（Ｓ４０５）。確認後、課金が行われていない場合には、メインＣＰＵ７に対して課金処理の実行を指示する制御信号を送信する（Ｓ４０７）。課金が行われていた場合には、再演奏の曲に対して課金処理の実行中止を示す制御信号を送信する（Ｓ４０６）。メインＣＰＵ７は、楽曲の再演奏を開始した場合の課金処理を、サブＣＰＵ６からの制御信号に基づいて行う。
【００２９】
または、確認後、課金が行われていない場合には、通常通りに課金処理を行えばよいのでメインＣＰＵ７に対して課金処理の実行を指示しないようにしてもよい。
【００３０】
課金が行われたか否かの確認方法は、具体的には、メインＣＰＵ７が、楽曲の演奏を開始して課金処理を行うごとに、カラオケの曲の演奏に対して課金処理を行う旨を通知出力し、サブＣＰＵ６では、この通知出力を受信し、図２に示すサブワークＲＡＭ６１において、対応する曲に対して課金が終了したことを示す課金済みフラグ２０４に「１」を登録するようにしておく。サブＣＰＵ６は、再起動後、サブワークＲＡＭ６１のＮ曲目の課金済みフラグ２０４を参照することで、課金が終了しているか否かを判断することができる。課金処理を行う旨の通知出力については、メインＣＰＵ７は、コインボックス２０５に対して楽曲の演奏を開始して課金処理を行うごとに、カラオケの曲の演奏に対して制御信号を送信しているので、この制御信号をサブＣＰＵ６にも送信することで流用することができる。これにより、メインＣＰＵ７の障害発生により再度楽曲の演奏を開始した場合でも、その楽曲に対しては１度だけ課金するように制御することができる。
【００３１】
つぎに、サブＣＰＵ６は、メインＣＰＵ７へＮ曲目の曲情報と開始制御信号とを送信する（Ｓ４０８）。メインＣＰＵ７は、予約曲情報を開始制御信号と共に受信すると、その予約曲情報に対応する楽曲を曲の最初から演奏するように制御する。  
以上説明したように、本実施の形態によれば、楽曲の演奏中に、カラオケ装置１００のメインＣＰＵ７に障害が発生した場合に、メインＣＰＵ７を再起動して正常な状態に復旧させることができる。また、障害が発生した場合に、演奏途中であった楽曲を、再度、楽曲の頭から演奏し直すことができ、ユーザが同じ曲をリクエストする必要がなく、ユーザの手間を省くことができる。また、演奏し直しの楽曲に対しては重複した課金処理を行わないため、重複した課金による不満が生じるようなことを回避することができる。
【００３２】
上記実施の形態において、カラオケ装置１００のメインＣＰＵ７からの応答信号は、カラオケ曲の演奏終了を示す終了制御信号としているが、それ以外に、メインＣＰＵ動作確認のための応答信号をメインＣＰＵ７が定期的に送出するようにし、サブＣＰＵ６で、この応答信号が定期的に受信できるかを確認することで、受信しない場合には、障害が発生したと検出するようにしてもよい。この場合、メインＣＰＵの応答確認処理Ｓ４００は、図３に示すフローチャートの処理と並行して行わせることができるので、どのタイミングで行ってもよい。
【００３３】
また、前述した実施の形態では、カラオケ楽曲の演奏中にメインＣＰＵ７に障害が発生したとき、メインＣＰＵ７が正常な状態に復旧した場合、演奏途中の楽曲を再度曲の頭から演奏し直す場合を例としたが、カラオケ装置１００においてゲームのプログラムを実行しているときに、メインＣＰＵ７に障害が発生した場合には、メインＣＰＵ７が正常な状態に復旧した後に、メインＣＰＵ７の障害が発生した時点からゲームを再開するようにしてもよい。
【００３４】
この場合、サブＣＰＵ６は、メインＣＰＵ７が実行しているプログラムが、楽曲の演奏用のアプリケーションプログラムかゲームのプログラムかを記憶しておく。メインＣＰＵ７においてゲームのプログラムが実行されている場合、サブＣＰＵ６は、そのゲームプログラムの進行状況に関する情報を、サブワークＲＡＭ６１に予め定めた時間毎に随時記憶する。メインＣＰＵ７に障害が発生した場合には、メインＣＰＵ７を再起動させ、正常な状態に復旧させた後、サブワークＲＡＭ６１に記憶しているゲーム進行状況に関する情報を参照し、メインＣＰＵ７に障害が発生する直前に記憶しているゲームの進行状況からゲームのプログラムを再開するようにメインＣＰＵ７に制御信号を送信する。メインＣＰＵ７は、サブＣＰＵ６からの制御信号に基づいて、ゲームを再開する。この場合も、ゲームの途中でメインＣＰＵ７の障害が発生した場合には、ゲームを再開しても重複して課金を行わないように制御する。
【００３５】
このことにより、ゲームの途中でメインＣＰＵ７に障害が発生した場合でもメインＣＰＵ７に障害が発生した時点からゲームを再開することができ、ユーザにゲームのやり直し等を行わせることがない。
演奏動作を終了できなかった障害に対して、自動的に演奏動作を再開できることは、ユーザにとって使い勝手がよくなり、利便性を向上させることができる。
【図面の簡単な説明】
【００３６】
【図１】実施の形態におけるカラオケ装置１００の構成図である。
【図２】実施の形態におけるサブワークＲＡＭ６１に記憶する予約内容の一例を示す説明図である。
【図３】実施の形態におけるサブＣＰＵ６の演奏指示処理のフローチャートを示す図である。
【図４】実施の形態におけるサブＣＰＵ６のメインＣＰＵ応答確認処理のフローチャートを示す図である。
【符号の説明】
【００３７】
１…外部リモートコントローラ、２…外部リモートコントローラインタフェース、３…操作パネル、４…表示器、５…マイク入力端子、６…サブＣＰＵ、７…メインＣＰＵ、８…メインワークＲＡＭ、９…メインプログラムＲＯＭ、１０…フォントＲＯＭ、１１…モデム、１２…ＨＤＤ、１３…ＭＩＤＩ音源、１４…ＭＰＥＧ  デコーダ、１５…ビデオデコーダ、１６…ビデオキャプチャ、１７…Ａ／Ｄコンバータ、１８…ＤＳＰ、１９…Ｄ／Ａコンバータ、２０…課金インタフェース、２１…ビデオ入力端子、２２…ビデオ出力端子、２３…オーディオ出力端子、２４…バス。
【図１】
2005266646.tif 000003
【図２】
2005266646.tif 000004
【図３】
2005266646.tif 000005
【図４】
2005266646.tif 000006