後述する明細書及び図面の記載から、上記の主たる発明の他、少なくとも以下の事項が明らかとなる。
すなわち、前記短縮設定部が、前記演奏時間の短縮が可能な楽曲のうち、短縮可能な時間が長い楽曲から順番に前記演奏時間を短縮する設定を行うカラオケ装置が明らかとなる。このように演奏時間を短縮する設定を行うことにより、予め設定された歌唱待ち時間内に確実にカラオケ歌唱を可能とする。
また、前記短縮設定部が、短縮する演奏時間が前記歌唱待ち時間と前記予想待ち時間との差分に近似するように、前記演奏時間の短縮が可能な楽曲の中から所定の楽曲を選んで演奏時間を短縮する設定を行うカラオケ装置が明らかとなる。このように演奏時間を短縮する設定を行うことにより、必要以上に演奏時間を短縮することが無い。
また、前記短縮設定部が、ある期間における各利用者の歌唱回数に基づいて、前記演奏時間の短縮が可能な楽曲のうち、歌唱回数が多い利用者が予約した楽曲から順番に前記演奏時間を短縮する設定を行うカラオケ装置が明らかとなる。このように演奏時間を短縮する設定を行うことにより、利用者毎の歌唱時間の均等化を図ることができる。
また、前記短縮設定部が、現在演奏されている楽曲及び前記予約待ち行列に既に登録されている楽曲のうち、前記演奏時間の短縮が可能な楽曲全てについて前記演奏時間の短縮の設定を行っても、前記予想待ち時間が前記歌唱待ち時間よりも長くなる場合、前記演奏時間の短縮の設定を行った後の予想待ち時間を報知するカラオケ装置が明らかとなる。このようなカラオケ装置によれば、歌唱待ち時間内にカラオケ歌唱ができないことを利用者に対して報知できる。
或いは、前記演奏時間の短縮設定がされた第1の楽曲が前記予約待ち行列に登録されている状態において、当該第1の楽曲よりも後に登録されている第2の楽曲の予約が取り消された場合、当該第1の楽曲の短縮可能時間と、当該第2の楽曲の前記演奏時間とを比較する第1の比較部と、前記第2の楽曲の前記演奏時間が前記第1の楽曲の短縮可能時間よりも長い場合、前記第1の楽曲と前記第2の楽曲の間に予約されている楽曲について、前記短縮設定を解除した場合の予想待ち時間と、前記歌唱待ち時間とを比較する第2の比較部と、を有し、前記短縮設定部は、前記第1の楽曲と前記第2の楽曲の間に予約されている楽曲全てについて、前記短縮設定を解除した場合の予想待ち時間が前記歌唱待ち時間以下である場合、前記第1の楽曲の短縮設定を解除するカラオケ装置が明らかとなる。このようなカラオケ装置によれば、予約が取り消された場合に、短縮された演奏時間を元に戻しつつ、予約された残りの楽曲全てについて予め設定された歌唱待ち時間内でカラオケ歌唱を可能とすることができる。
<第1実施形態>
図1〜図8を参照して、第1実施形態に係るカラオケ装置1について説明する。
==カラオケ装置==
カラオケ装置1は、カラオケ演奏及び利用者がカラオケ歌唱を行うための装置である。カラオケ装置1は、利用者が選曲した楽曲を予約待ち行列に登録し、順番にカラオケ演奏を行う。図1に示すように、カラオケ装置1は、カラオケ本体10、スピーカ20、表示装置30、マイク40、及びリモコン装置50を備える。
スピーカ20はカラオケ本体10からの放音信号に基づいて放音するための構成である。表示装置30はカラオケ本体10からの信号に基づいて映像や画像を画面に表示するための構成である。マイク40は利用者の歌唱音声(マイク40からの入力音声)をアナログの音声信号に変換してカラオケ本体10に入力するための構成である。リモコン装置50は、カラオケ本体10に対する各種操作をおこなうための装置である。利用者はリモコン装置50を用いてカラオケ歌唱を希望する楽曲の選曲(予約)等を行うことができる。リモコン装置50の表示画面には各種操作の指示入力を行うためのアイコン等が表示される。
カラオケ本体10は、選曲された楽曲のカラオケ演奏制御、歌詞や背景映像等の表示制御、マイク40を通じて入力された音声信号の処理といった、カラオケ歌唱に関する各種の制御を行う。図1に示すように、カラオケ本体10は、制御部11、通信部12、記憶部13、音響処理部14、表示処理部15及び操作部16を備える。各構成はインターフェース(図示なし)を介してバスBに接続されている。
制御部11は、CPU11aおよびメモリ11bを備える。CPU11aは、メモリ11bに記憶された動作プログラムを実行することにより各種の制御機能を実現する。メモリ11bは、CPU11aに実行されるプログラムを記憶したり、プログラムの実行時に各種情報を一時的に記憶したりする記憶装置である。
通信部12は、ルーター(図示なし)を介してカラオケ本体10を通信回線に接続するためのインターフェースを提供する。
記憶部13は、各種のデータを記憶する大容量の記憶装置であり、たとえばハードディスクドライブなどである。記憶部13は、カラオケ装置1によりカラオケ演奏を行うための複数の楽曲データを記憶する。
楽曲データは、個々の楽曲を特定するための楽曲IDが付与されている。楽曲データは、伴奏データ、リファレンスデータ、ガイドメロディデータ等を含む。伴奏データは、カラオケ演奏音の元となるデータである。リファレンスデータは、利用者によるカラオケ歌唱を採点する際の基準として用いられるデータである。ガイドメロディデータは、利用者のカラオケ歌唱を支援するガイドメロディを構成するデータである。
また、記憶部13は、各楽曲に対応する歌詞テロップを表示装置30等に表示させるための歌詞テロップデータ、カラオケ演奏時に表示装置30等に表示される背景画像等の背景画像データ、楽曲毎のカラオケ演奏時間を示す演奏時間データ及び楽曲の属性情報(歌手名、作詞・作曲者名、ジャンル等の当該楽曲に関する情報)を記憶する。
更に、本実施形態に係る記憶部13は、楽曲毎に演奏時間の短縮情報を記憶する。短縮情報は、演奏時間データが示すカラオケ演奏時間を短縮することが可能かどうかを示す情報、及びカラオケ演奏時間の短縮が可能な場合には、短縮できる時間(短縮可能時間)を含む。短縮可能時間は、たとえばカラオケ装置1が備える機能である2コーラスフェードアウトや後奏カット、非歌唱区間の早送り等を実行した場合に短縮される時間に相当する。
音響処理部14は、制御部11の制御に基づき、楽曲に対するカラオケ演奏の制御およびマイク40を通じて入力された歌唱音声信号の処理を行う。音響処理部14は、たとえばMIDI音源、ミキサ、アンプ(いずれも図示なし)を含む。MIDI音源は、楽曲データに基づいて楽音信号を生成する。ミキサは、当該音楽信号およびマイク40から出力される音声信号を適当な比率でミキシングしてアンプに出力する。アンプは、ミキサからのミキシング信号を増幅し、放音信号としてスピーカ20へ出力する。これにより、スピーカ20からは放音信号に基づくカラオケ演奏音およびマイク40からの歌唱音声が放音される。
表示処理部15は、制御部11の制御に基づき、表示装置30やリモコン装置50における各種表示に関する処理を行う。たとえば、表示処理部15は、カラオケ演奏時における背景映像に歌詞テロップや各種アイコンが重ねられた映像を表示装置30に表示させる制御を行う。或いは、表示処理部15は、リモコン装置50の表示画面に操作入力用の各種アイコンを表示させる。
操作部16は、パネルスイッチおよびリモコン受信回路などからなり、利用者によるカラオケ装置1のパネルスイッチあるいはリモコン装置50の操作に応じて選曲信号、演奏中止信号などの操作信号を制御部11に対して出力する。制御部11は、操作部16からの操作信号を検出し、対応する処理を実行する。
(ソフトウェア構成)
図2はカラオケ本体10のソフトウェア構成例を示す図である。カラオケ本体10は、予約登録部100、予想待ち時間算出部200、短縮設定部300、及び演奏処理部400を備える。予約登録部100、予想待ち時間算出部200、短縮設定部300、及び演奏処理部400は、CPU11aがメモリ11bに記憶されるプログラムを実行することにより実現される。
[予約登録部]
予約登録部100は、楽曲の予約登録等、楽曲予約に関する各種処理を行う。
予約登録される楽曲は、利用者がカラオケ歌唱を希望する楽曲である。予約登録される楽曲は、利用者がリモコン装置50を用いて選曲する。リモコン装置50は、選曲された楽曲に対応する楽曲ID等をカラオケ本体10に送信する。カラオケ本体10は、受信した楽曲IDを予約待ち行列に登録する。予約待ち行列は、たとえば、記憶部13の記憶領域の一部として提供される。予約待ち行列に登録される楽曲IDには、当該楽曲を選曲した利用者を識別するための利用者IDが関連付けられていてもよい。利用者IDは、利用者がリモコン装置50を介してカラオケ装置1にログインすることにより得られる。
予約登録部100は、予約待ち行列に登録された順番に、楽曲IDを読み出して演奏処理部400に出力する。そして、予約登録部100は、演奏処理部400による演奏が終了した予約楽曲の楽曲IDを予約待ち行列から消去する。
[予想待ち時間算出部]
予想待ち時間算出部200は、予約待ち行列に新たな楽曲が登録される都度、現在演奏されている楽曲の演奏開始時刻と、当該予約待ち行列に既に登録されている楽曲の予約時刻と、現在演奏されている楽曲の演奏時間及び当該予約待ち行列に既に登録されている楽曲の演奏時間を合計した残り待ち時間と、に基づいて予想待ち時間を算出する。
予想待ち時間は、予約待ち行列に新たな楽曲が登録された時点から、当該新たな楽曲のカラオケ歌唱が可能となるまで(当該新たな楽曲のカラオケ演奏が開始されるまで)の待ち時間の予測値である。
具体的に、予想待ち時間は確定待ち時間と残り待ち時間とを合計した時間である。確定待ち時間は、現在演奏されている楽曲の演奏開始時刻と新たな楽曲の予約時刻との差分に相当する時間である。残り待ち時間は、現在演奏されている楽曲の演奏時間と予約待ち行列に既に登録されている楽曲の演奏時間とを合計した時間である。残り待ち時間は、楽曲の短縮設定の有無により変動する。すなわち、予想待ち時間も、楽曲の短縮設定の有無により変動する(詳細は後述)。
図3及び図4Aを参照して予想待ち時間の算出の具体例について説明する。図3に示すように、現在演奏中の楽曲Aがあり、且つ予約待ち行列には楽曲B〜楽曲Hまでが登録されている状況において、新たな楽曲Iが予約されたとする。なお、楽曲Hの予約時点(11時54分00秒)においては、楽曲Aの演奏は開始しておらず、楽曲Aより前に予約された楽曲が演奏中で、楽曲Aは演奏前の予約登録中である。その後、楽曲Hの予約から1分30秒が経過して楽曲Aの演奏が開始される。図3は、楽曲Aの演奏が開始されてから楽曲Iが予約されるまで(11時55分30秒から11時56分00秒)の間のいずれかの時点での状況を表したものである。
この場合、予想待ち時間算出部200は、楽曲Aの演奏開始時刻(11時55分30秒)と楽曲Iの予約時刻(11時56分00秒)との差分を求めることで確定待ち時間(−30秒)を算出する。また、予想待ち時間算出部200は、楽曲Aの演奏時間(06分00秒)と楽曲B〜楽曲Hそれぞれの演奏時間とを合計し、残り待ち時間(30分40秒)を算出する。そして、予想待ち時間算出部200は、確定待ち時間(−30秒)と残り待ち時間(30分40秒)とを合計した予想待ち時間(30分10秒)を算出する(図4A参照)。予想待ち時間算出部200は、算出した予想待ち時間を短縮設定部300に出力する。なお、楽曲Iの確定待ち時間がマイナス値になるのは、楽曲Iは楽曲Aの演奏開始から30秒後に予約された楽曲だからである。
[短縮設定部]
短縮設定部300は、予め設定された歌唱待ち時間と予想待ち時間とを比較し、歌唱待ち時間よりも予想待ち時間が長い場合、予想待ち時間が歌唱待ち時間以下となるよう、現在演奏されている楽曲及び/または予約待ち行列に既に登録されている楽曲の演奏時間を短縮する。
歌唱待ち時間は、楽曲の予約がなされてから当該楽曲のカラオケ歌唱を行うまでに待機する時間の最大値(演奏時間の短縮を行うかどうかの閾値)に相当する。歌唱待ち時間は、たとえば、カラオケ喫茶の従業員等が利用者の年齢や性別、これまでの歌唱傾向等を考慮してリモコン装置50を介して入力することで設定される。或いは、カラオケ装置毎に歌唱待ち時間として所定の時間が予め設定されていることでもよい。
予想待ち時間算出部200から予想待ち時間の入力を受けた場合、短縮設定部300は、歌唱待ち時間と予想待ち時間との比較を行う。歌唱待ち時間よりも予想待ち時間が短い場合、短縮設定部300は、特段の処理を行わない。
一方、歌唱待ち時間よりも予想待ち時間が長い場合、利用者は長時間待たないと自己の予約した楽曲のカラオケ歌唱を行うことができない。そこで、本実施形態において、短縮設定部300は、予想待ち時間が歌唱待ち時間以下となるよう、現在演奏されている楽曲及び/または予約待ち行列に既に登録されている楽曲の演奏時間を短縮する。
ここで、図4A〜図7を参照して、演奏時間の短縮処理について説明する。この例では、歌唱待ち時間として「30分」が設定されている場合に、予想待ち時間として「30分10秒」が入力されたとする(図4A参照)。
この場合、短縮設定部300は、歌唱待ち時間よりも予想待ち時間が「10秒」長いと判断する。そこで、短縮設定部300は、現在演奏されている楽曲及び/または予約待ち行列に既に登録されている楽曲の演奏時間を少なくとも「10秒」だけ短縮するよう設定を行う。
具体的には、短縮設定部300は、予約待ち行列に登録されている各楽曲の演奏時間の短縮情報(図4A参照)を参照し、演奏時間の短縮が可能な楽曲を特定する。図4Aの例において、楽曲Iより前に予約待ち行列に登録されている楽曲A〜楽曲Hのうち、短縮可能な時間を有する楽曲は、楽曲C及び楽曲Fである。
そして、短縮設定部300は、特定された各楽曲の短縮可能時間(図4A参照)を参照し、たとえば、短縮可能時間が長い楽曲から順番に演奏時間を短縮する設定を行うことができる。
上記例において、短縮設定部300は、演奏時間を「10秒」以上短縮できるように、短縮可能時間が長い方の楽曲Cを選択し、演奏時間を短縮する設定を行う。
図4Bは、短縮設定を行った結果を示す図である。この図から明らかなように、楽曲Cの演奏時間を短縮することで、その後に予約された楽曲D〜楽曲Iの予想待ち時間(残り待ち時間)は2分間短縮される。たとえば、楽曲Iの予想待ち時間は、「28分10秒」となる。この場合、楽曲Iを予約した利用者は、歌唱待ち時間(30分)以内でカラオケ歌唱を行うことが可能となる。
なお、カラオケ装置1は、上記短縮設定を行った後、更なる楽曲の予約登録があった場合にも同様の処理を繰り返し行うことができる。
たとえば、楽曲Aの演奏中に新たな楽曲Jの予約があったとする。この場合、予想待ち時間算出部200は、楽曲Aの演奏開始時刻(11時55分30秒)と楽曲Jの予約時刻(11時57分00秒)との差分を求めることで確定待ち時間(−01分30秒)を算出する。また、予想待ち時間算出部200は、楽曲Aの演奏時間(06分00秒)と楽曲B〜楽曲Iそれぞれの演奏時間とを合計し、残り待ち時間(32分10秒)を算出する。そして、予想待ち時間算出部200は、確定待ち時間(−01分30秒)と残り待ち時間(32分10秒)とを合計した予想待ち時間(30分40秒)を算出する(図5A参照)。予想待ち時間算出部200は、算出した予想待ち時間を短縮設定部300に出力する。なお、楽曲Jの確定待ち時間がマイナス値になるのは、楽曲Jは楽曲Aの演奏開始から1分30秒後に予約された楽曲だからである。
その後、短縮設定部300は、楽曲Jの予想待ち時間(30分40秒)が歌唱待ち時間(30分)以下となるよう、予約待ち行列に登録されている楽曲B〜Iの演奏時間を短縮する設定を行う。この際、短縮設定部300は、既に短縮設定が行われている楽曲C以外で短縮設定が可能な楽曲を選んで短縮設定を行う。
この例では、「40秒」の短縮が必要となる。そこで、短縮設定部300は、楽曲C以外で、短縮可能な時間が長い楽曲Fを選択し、演奏時間を短縮する設定を行う。
図5Bは、短縮設定を行った結果を示す図である。この図から明らかなように、楽曲Fの演奏時間を短縮することで、その後に予約された楽曲G〜楽曲Jの予想待ち時間(残り待ち時間)は1分30秒間短縮される。たとえば、楽曲Jの予想待ち時間は、「29分10秒」となる。この場合、楽曲Jを予約した利用者は、歌唱待ち時間(30分)以内でカラオケ歌唱を行うことが可能となる。
同様に、楽曲Aの演奏中に新たな楽曲Kの予約があったとする。この場合、予想待ち時間算出部200は、楽曲Aの演奏開始時刻(11時55分30秒)と楽曲Kの予約時刻(11時58分00秒)との差分を求めることで確定待ち時間(−02分30秒)を算出する。また、予想待ち時間算出部200は、楽曲Aの演奏時間(06分00秒)と楽曲B〜楽曲Jそれぞれの演奏時間とを合計し、残り待ち時間(32分40秒)を算出する。そして、予想待ち時間算出部200は、確定待ち時間(−2分30秒)と残り待ち時間(32分40秒)とを合計した予想待ち時間(30分10秒)を算出する(図6A参照)。予想待ち時間算出部200は、算出した予想待ち時間を短縮設定部300に出力する。なお、楽曲Kの確定待ち時間がマイナス値になるのは、楽曲Kは楽曲Aの演奏開始から2分30秒後に予約された楽曲だからである。
その後、短縮設定部300は、楽曲Kの予想待ち時間(30分10秒)が歌唱待ち時間(30分)以下となるよう、予約待ち行列に登録されている楽曲B〜Jの演奏時間を短縮する設定を行う。この際、短縮設定部300は、既に短縮設定が行われている楽曲C及びF以外で短縮設定が可能な楽曲を選んで短縮設定を行う。
この例では、「10秒」の短縮が必要となる。そこで、短縮設定部300は、楽曲C及びF以外で、短縮可能な楽曲Iを選択し、演奏時間を短縮する設定を行う。
図6Bは、短縮設定を行った結果を示す図である。この図から明らかなように、楽曲Iの演奏時間を短縮することで、その後に予約された楽曲J及び楽曲Kの予想待ち時間(残り待ち時間)は1分25秒間短縮される。たとえば、楽曲Kの予想待ち時間は、「28分45秒」となる。この場合、楽曲Kを予約した利用者は、歌唱待ち時間(30分)以内でカラオケ歌唱を行うことが可能となる。
一方、楽曲Aの演奏中に新たな楽曲Lの予約があったとする。この場合、予想待ち時間算出部200は、楽曲Aの演奏開始時刻(11時55分30秒)と楽曲Lの予約時刻(12時00分00秒)との差分を求めることで確定待ち時間(−04分30秒)を算出する。また、予想待ち時間算出部200は、楽曲Aの演奏時間(06分00秒)と楽曲B〜楽曲Kそれぞれの演奏時間とを合計し、残り待ち時間(33分45秒)を算出する。そして、予想待ち時間算出部200は、確定待ち時間(−04分30秒)と残り待ち時間(33分45秒)とを合計した予想待ち時間(29分15秒)を算出する(図7参照)。予想待ち時間算出部200は、算出した予想待ち時間を短縮設定部300に出力する。なお、楽曲Lの確定待ち時間がマイナス値になるのは、楽曲Lは楽曲Aの演奏開始から4分30秒後に予約された楽曲だからである。
ここで、楽曲Lの予想待ち時間(29分15秒)は歌唱待ち時間(30分)以下である。従って、短縮設定部300は、特段の処理を行わない。
以上の通り、本実施形態においては、楽曲Aの演奏中(11時55分30秒から12時01分30秒の間)に、楽曲I、楽曲J、楽曲K、楽曲Lが予約登録される場合について説明した。なお、上記例では、予約待ち行列に既に登録されている楽曲の演奏時間を短縮する例について述べたが、現在演奏されている楽曲の残り演奏時間で短縮設定が可能な場合(たとえば、後奏カットの設定が可能な場合)、現在演奏されている楽曲に対して演奏時間の短縮設定を行ってもよい。
ところで、予約待ち行列に登録された楽曲の短縮可能な時間を合計しても、短縮が必要な時間に満たない場合もありうる。
そこで、短縮設定部300は、現在演奏されている楽曲及び予約待ち行列に既に登録されている楽曲のうち、演奏時間の短縮が可能な楽曲全てについて演奏時間の短縮の設定を行っても、歌唱待ち時間が予想待ち時間よりも長くなる場合、演奏時間の短縮の設定を行った後の予想待ち時間を報知することができる。このような予想待ち時間は、歌唱待ち時間に相当する。
予想待ち時間の報知は、様々な方法で行うことができる。たとえば、短縮設定部300は、楽曲の予約を行ったタイミングで、表示装置30やリモコン装置50の表示画面に「●●分後に歌唱できます」といったメッセージを表示させることで報知する。或いは、短縮設定部300は、スピーカ20を介して上記メッセージを音声として放音してもよい。
なお、演奏時間の短縮設定は、上述の短縮可能時間が長い楽曲から順番に設定を行う方法以外に様々な手法が可能である。
たとえば、短縮設定部300は、短縮する演奏時間が予想待ち時間と歌唱待ち時間との差分に近似するように、演奏時間の短縮が可能な楽曲の中から所定の楽曲を選んで演奏時間を短縮する設定を行うことも可能である。
上記例と同様、短縮設定部300は、歌唱待ち時間よりも予想待ち時間が「10秒」長いと判断したとする。この場合、短縮設定部300は、短縮する演奏時間が差分「10秒」に近似するように選曲を行う。たとえば図3の例では、楽曲Cよりも楽曲Fの短縮可能時間の方が差分「10秒」により近い。そこで、短縮設定部300は、所定の楽曲として楽曲Fを選び、演奏時間を短縮する設定を行う。
或いは別の手法として、短縮設定部300は、ある期間における各利用者の歌唱回数に基づいて、演奏時間の短縮が可能な楽曲のうち、歌唱回数が多い利用者が予約した楽曲から順番に演奏時間を短縮する設定を行うことも可能である。
ある期間は、歌唱回数をカウントする所定期間であり、たとえば、カラオケ喫茶の開店から現時点までの連続した期間であってもよいし、3時間毎、6時間毎のように所定の範囲を持った期間であってもよい。
カラオケ装置1は、ある期間において予約待ち行列に楽曲が登録される度に、当該楽曲に関連付けられている利用者IDを参照し、各利用者の歌唱回数をカウントしておく。
そして、短縮設定部300は、歌唱待ち時間よりも予想待ち時間が長いと判断した場合、それまでに得られた各利用者の歌唱回数に基づいて、歌唱回数が多い利用者の利用者IDを特定する。そして、短縮設定部300は、特定した利用者IDが関連付けられている楽曲が予約待ち行列に登録されている場合、且つ当該楽曲が演奏時間の短縮が可能な楽曲である場合には、その楽曲の演奏時間を短縮する設定を行う。
[演奏処理部]
演奏処理部400は、楽曲のカラオケ演奏を行う。
具体的に、演奏処理部400は、予約登録部100から登録された楽曲の楽曲IDの入力を受けると、当該楽曲IDに対応する楽曲データを記憶部13から読み出し、楽曲のカラオケ演奏を行う。短縮設定部300により短縮設定がなされた楽曲については、演奏処理部400は、演奏時間を短縮してカラオケ演奏を行う。具体的には2コーラスフェードアウトや後奏カット等の機能を実行することで演奏時間の短縮を行う。
==カラオケ装置1の動作について==
次に、図8を参照して本実施形態におけるカラオケ装置1の動作の具体例について述べる。図8は、カラオケ装置1の動作例を示すフローチャートである。この例では、ある楽曲のカラオケ演奏中に、予約待ち行列に新たな楽曲が登録される例について述べる。
予約登録部100は、利用者によって選曲された楽曲を予約待ち行列に登録する(楽曲の予約。ステップ10)。
予想待ち時間算出部200は、予約待ち行列に新たな楽曲が登録される都度、現在演奏されている楽曲の演奏開始時刻及び当該予約待ち行列に既に登録されている楽曲の予約時刻に基づいて確定待ち時間を求める(確定待ち時間の算出。ステップ11)。また、予想待ち時間算出部200は、現在演奏されている楽曲の演奏時間及び当該予約待ち行列に既に登録されている楽曲の演奏時間を合計して残り待ち時間を求める(残り待ち時間の算出。ステップ12)。ステップ11及びステップ12の処理は逆の順番で行ってもよいし、並行して行ってもよい。
そして、予想待ち時間算出部200は、ステップ11で算出した確定待ち時間及びステップ12で算出した残り待ち時間に基づいて、予想待ち時間を算出する(予想待ち時間の算出。ステップ13)。予想待ち時間算出部200は、算出した予想待ち時間を短縮設定部300に出力する。
短縮設定部300は、歌唱待ち時間とステップ13で算出された予想待ち時間とを比較する(歌唱待ち時間と予想待ち時間の比較。ステップ14)。
歌唱待ち時間よりも予想待ち時間が長い場合(ステップ15でYの場合)、短縮設定部300は、予想待ち時間が歌唱待ち時間以下となるよう、現在演奏されている楽曲または予約待ち行列に既に登録されている楽曲の演奏時間を短縮する設定を行う(演奏時間の短縮設定。ステップ16)。
演奏処理部400は、予約待ち行列に登録された楽曲のカラオケ演奏を行う(カラオケ演奏。ステップ17)。この際、歌唱待ち時間よりも予想待ち時間が長い場合(ステップ15でYの場合)、演奏処理部400は、ステップ16で演奏時間を短縮する設定を行った楽曲については演奏時間を短縮してカラオケ演奏を行う。一方、歌唱待ち時間よりも予想待ち時間が短い場合(ステップ15でNの場合)、演奏処理部400は、予め設定されている演奏時間のままでカラオケ演奏を行う。
このように、本実施形態に係るカラオケ装置1は、予約待ち行列に新たな楽曲が登録される都度、現在演奏されている楽曲の演奏開始時刻と、当該予約待ち行列に既に登録されている楽曲の予約時刻と、現在演奏されている楽曲の演奏時間及び当該予約待ち行列に既に登録されている楽曲の演奏時間を合計した残り待ち時間と、に基づいて予想待ち時間を算出する予想待ち時間算出部200と、予め設定された歌唱待ち時間と予想待ち時間とを比較し、歌唱待ち時間よりも予想待ち時間が長い場合、予想待ち時間が歌唱待ち時間以下となるよう、現在演奏されている楽曲及び/または予約待ち行列に既に登録されている楽曲の演奏時間を短縮する設定を行う短縮設定部300と、を有する。
このような構成により、予約した楽曲のカラオケ演奏までに長時間を要する場合には、既に予約されている楽曲等の演奏時間を短縮することによって、予想待ち時間を歌唱待ち時間以下とすることができる。従って、本実施形態に係るカラオケ装置1によれば、予約登録されている楽曲が多い場合であっても、予め設定された時間内でカラオケ歌唱が可能となる。この場合、楽曲を予約した利用者は、カラオケ歌唱を行うまでに長時間待たされることが無いため、カラオケ歌唱を楽しむことができる。
また、現在演奏されている楽曲及び予約待ち行列に既に登録されている楽曲のうち、演奏時間の短縮が可能な楽曲全てについて演奏時間の短縮の設定を行っても、予想待ち時間が歌唱待ち時間よりも長くなる場合、短縮設定部300は、演奏時間の短縮の設定を行った後の予想待ち時間を報知することができる。このようなカラオケ装置1によれば、歌唱待ち時間内でカラオケ歌唱できない場合であっても、利用者は自己が予約した楽曲をカラオケ歌唱できる大凡の時間を把握することができる。
<第2実施形態>
次に、図9〜図12を参照して、第2実施形態に係るカラオケ装置1について説明する。
楽曲の予約を行った後、利用者の都合等により、その予約を取り消すことがある。ここで、第1実施形態で説明した短縮設定が行われた後、ある楽曲の予約の取り消しが行われた場合には、短縮設定を行わなくとも予約されている楽曲全てについて歌唱待ち時間内でカラオケ歌唱が可能となる場合がありうる。本実施形態では、予約待ち行列に登録された楽曲の予約が取り消された場合に、短縮設定の解除を行う例について説明する。なお、第1実施形態と同様の構成については詳細な説明を省略する。
(ソフトウェア構成)
図9は本実施形態に係るカラオケ本体10のソフトウェア構成例を示す図である。カラオケ本体10は、予約登録部100、予想待ち時間算出部200、短縮設定部300、演奏処理部400、第1の比較部500、及び第2の比較部600を備える。予約登録部100、予想待ち時間算出部200、短縮設定部300、演奏処理部400、第1の比較部500、及び第2の比較部600は、CPU11aがメモリ11bに記憶されるプログラムを実行することにより実現される。
[第1の比較部]
第1の比較部500は、演奏時間の短縮設定がされた第1の楽曲が予約待ち行列に登録されている状態において、当該第1の楽曲よりも後に登録されている第2の楽曲の予約が取り消された場合、当該第1の楽曲の短縮可能時間と、当該第2の楽曲の前記演奏時間とを比較する。
たとえば、図7の例では、楽曲C、楽曲F、楽曲Iが、演奏時間を短縮する設定がされている。この場合の楽曲C、楽曲F、楽曲Iそれぞれは「第1の楽曲」に相当する。ここで、楽曲C、楽曲F、及び楽曲Iよりも後に登録されている楽曲Kの予約が取り消されたとする。この場合の楽曲Kは、「第2の楽曲」に相当する。なお、予約の取り消しは、利用者がリモコン装置50等を介して予約を取り消したい楽曲を選択する。リモコン装置50は、選択された楽曲の楽曲IDを予約の取り消し信号と関連付けてカラオケ本体10に送信する。予約登録部100は、予約待ち行列に登録されている楽曲の中から当該楽曲IDに対応する楽曲を消去することで取り消しを行う。
この場合、第1の比較部500は、たとえば、短縮設定された楽曲のうち最も予約時刻が早い楽曲Cの短縮可能時間(02分00秒)と、楽曲Kの演奏時間(02分30秒)とを比較する。第1の比較部500は、比較結果を第2の比較部600に出力する。
[第2の比較部]
第2の比較部600は、第2の楽曲の演奏時間が第1の楽曲の短縮可能時間よりも長い場合、第1の楽曲と第2の楽曲の間に予約されている楽曲について、短縮設定を解除した場合の予想待ち時間と、歌唱待ち時間とを比較する。
たとえば、上記例において、楽曲Kの演奏時間(02分30秒)と、短縮設定された楽曲Cの短縮可能時間(02分00秒)とを比較した場合、楽曲Kの演奏時間の方が長い。
この場合、第2の比較部600は、楽曲Cと楽曲Kの間に予約されている楽曲、すなわち、楽曲D〜楽曲Jそれぞれについて、短縮設定を解除した場合の予想待ち時間と、歌唱待ち時間とを比較する。
具体的に、楽曲Cの短縮設定を解除した場合、楽曲D〜楽曲Jの残り待ち時間が、それぞれ2分増えることになり、結果、予想待ち時間に関しても、それぞれ2分増えることになる(図10参照)。そこで、第2の比較部600は、楽曲Cの短縮設定を解除した場合の楽曲D〜楽曲Jの予想待ち時間と、歌唱待ち時間(30分)とを比較する。第2の比較部600は、比較結果を短縮設定部300に出力する。
なお、楽曲Cより前に予約されている楽曲、すなわち楽曲Bの残り待ち時間(予想待ち時間)は、楽曲Cの短縮設定の解除や楽曲Kの予約の取り消しの影響を受けることはないので、上述の比較は必要ない。また、楽曲Kより後に予約されている楽曲、すなわち楽曲Lの残り待ち時間(予想待ち時間)は、第1の比較部500が出力した比較結果(楽曲Kの演奏時間の方が楽曲Cの短縮可能時間より長いこと)により、29分15秒より長くなることはないので、やはり上述の比較は必要ない。
[短縮設定部]
本実施形態に係る短縮設定部300は、第1の楽曲と第2の楽曲の間に予約されている楽曲全てについて、短縮設定を解除した場合の予想待ち時間が歌唱待ち時間以下である場合、第1の楽曲の短縮設定を解除する。
たとえば、図10の例において、短縮設定を解除した場合の楽曲D〜楽曲Jの予想待ち時間は、いずれも歌唱待ち時間以下となっている。この場合、短縮設定部300は、楽曲Cの短縮設定を解除する(図11参照)。
なお、図7の例のように第1の楽曲に相当する楽曲が複数ある場合、短縮設定を解除した楽曲C以外の楽曲F及び楽曲Iについても短縮設定を解除できるかどうかを判断することが可能である。
たとえば、図11の例において、楽曲Fの短縮設定を解除できるかどうかを判断する例について述べる。この場合、第1の比較部500は、楽曲Kの演奏時間(02分30秒)と、短縮設定が解除された楽曲C及び短縮設定された楽曲Fの短縮可能時間(02分00秒+01分30秒=03分30秒)とを比較する。この場合、楽曲Kの演奏時間が短縮可能時間よりも短い。第1の比較部500は、その旨の比較結果を第2の比較部600に出力する。この場合、第2の比較部600はその後の処理を行わない。
すなわち、第2の楽曲の演奏時間が第1の楽曲の短縮可能時間(第1の楽曲が複数ある場合には各楽曲の短縮可能時間を合計した時間)よりも短い場合には、短縮設定部300は、短縮設定の解除を行わない。
同様に、第1の楽曲と第2の楽曲の間に予約されている楽曲の一部について、短縮設定を解除した場合の予想待ち時間が歌唱待ち時間を越える場合にも、短縮設定部300は、短縮設定の解除を行わない。
==カラオケ装置1の動作について==
次に、図12を参照して本実施形態におけるカラオケ装置1の動作の具体例について述べる。図12は、カラオケ装置1の動作例を示すフローチャートである。この例では、楽曲V、楽曲W、楽曲X、楽曲Y、楽曲Zの順で予約待ち行列に登録されており、そのうち、楽曲Wが短縮設定されているとする。そして、利用者がリモコン装置50を介して楽曲Yの予約の取り消しを行ったとする。
この場合、予約登録部100は、利用者によって選択された楽曲Yを予約待ち行列から削除する(予約取り消し。ステップ20)。
予約が取り消された場合、第1の比較部500は、楽曲Yの演奏時間と、短縮設定された楽曲Wの短縮可能時間とを比較する(演奏時間と短縮可能時間を比較。ステップ21)。
楽曲Yの演奏時間が楽曲Wの短縮可能時間よりも長い場合(ステップ22でYの場合)、第2の比較部600は、短縮設定された楽曲Wと楽曲Yの間に予約されている楽曲Xについて、短縮設定を解除した場合の予想待ち時間と、歌唱待ち時間とを比較する(短縮設定を解除した場合の予想待ち時間と、歌唱待ち時間とを比較。ステップ23)。
短縮設定された楽曲Wと楽曲Yの間に予約されている楽曲Xについて、短縮設定を解除した場合の予想待ち時間が歌唱待ち時間以下である場合(ステップ24でYの場合)、短縮設定部300は、短縮設定された楽曲Wの短縮設定を解除する(短縮設定の解除。ステップ25)。
このように、本実施形態に係るカラオケ装置1は、演奏時間の短縮設定がされた第1の楽曲が予約待ち行列に登録されている状態において、当該第1の楽曲よりも後に登録されている第2の楽曲の予約が取り消された場合、当該第1の楽曲の短縮可能時間と、当該第2の楽曲の演奏時間とを比較する第1の比較部500と、第2の楽曲の演奏時間が第1の楽曲の短縮可能時間よりも長い場合、第1の楽曲と第2の楽曲の間に予約されている楽曲について、短縮設定を解除した場合の予想待ち時間と、歌唱待ち時間とを比較する第2の比較部600と、を有する。そして、本実施形態に係る短縮設定部300は、第1の楽曲と第2の楽曲の間に予約されている楽曲全てについて、短縮設定を解除した場合の予想待ち時間が歌唱待ち時間以下である場合、第1の楽曲の短縮設定を解除する。
従って、短縮設定を行った後に楽曲の予約が取り消された場合に、短縮設定を解除することで演奏時間を元に戻し、カラオケ歌唱の時間を確保することができる。また、予約された残りの楽曲全てについて、予め設定された時間内でカラオケ歌唱を可能とすることができる。
<その他>
上記実施形態は、例として提示したものであり、発明の範囲を限定するものではない。上記の構成は、適宜組み合わせて実施することが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。上記実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。