(57)【要約】【課題】カラオケシステムの開発、修正を容易に行うことを目的とする。【解決手段】本発明に係るカラオケシステムは、Ｗｅｂブラウザプログラムと、オーディオエンジンプログラムと、を備えたカラオケシステムであって、Ｗｅｂブラウザプログラムは、所定のプロトコルを使用してオーディオエンジンプログラムと通信を可能とし、カラオケシステムの内部、あるいは、外部に設けられたサーバから楽曲情報を受信し、受信した楽曲情報に基づいて再生を実行し、再生された楽曲音声をオーディオエンジンプログラムに出力し、オーディオエンジンプログラムは、マイクロホンから入力されるマイク音声信号を加工した後、Ｗｅｂブラウザプログラムから受信した楽曲音声をミキシングしてスピーカに出力することを特徴とする。【選択図】図２
2019152808.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂブラウザプログラムと、オーディオエンジンプログラムと、を備えたカラオケシステムであって、
Ｗｅｂブラウザプログラムは、所定のプロトコルを使用してオーディオエンジンプログラムと通信を可能とし、カラオケシステムの内部、あるいは、外部に設けられたサーバから楽曲情報を受信し、受信した楽曲情報に基づいて再生を実行し、再生された楽曲音声をオーディオエンジンプログラムに出力し、
オーディオエンジンプログラムは、マイクロホンから入力されるマイク音声を加工した後、Ｗｅｂブラウザプログラムから受信した楽曲音声をミキシングしてスピーカに出力することを特徴とする
カラオケシステム。
【請求項２】
Ｗｅｂブラウザプログラムは、オーディオエンジンプログラムにおける楽曲音声の再生位置に基づき、楽曲情報中の少なくとも歌詞表示について、その再生位置を調整して表示部に表示させることを特徴とする
請求項１に記載のカラオケシステム。
【請求項３】
Ｗｅｂブラウザプログラムは、オーディオエンジンプログラムに対して、マイク音声の加工に関するパラメータを送信し、
オーディオエンジンプログラムは、受信したパラメータに基づいてマイク音声を加工することを特徴とする
請求項１または請求項２に記載のカラオケシステム。
【請求項４】
オーディオエンジンプログラムは、マイクロホンから入力されるマイク音声、もしくは、マイク音声の特性を、所定のプロトコルとは異なるプロトコルを使用して、Ｗｅｂブラウザプログラムに送信し、
Ｗｅｂブラウザプログラムは、受信したマイク音声、もしくは、マイク音声の特性に基づいて歌唱評価処理を行うことを特徴とする
請求項１から請求項３の何れか１項に記載のカラオケシステム。
【請求項５】
Ｗｅｂブラウザプログラムは、第１の情報処理装置で実行され、
オーディオエンジンプログラムは、第２の情報処理装置で実行されることを特徴とする
請求項１から請求項４の何れか１項に記載のカラオケシステム。
【請求項６】
カラオケシステムにおいて実行されるＷｅｂブラウザプログラムと連携して実行されるカラオケ用プログラムであって、
Ｗｅｂブラウザプログラムは、所定のプロトコルを使用してオーディオエンジンプログラムと通信を可能とし、カラオケシステムの内部、あるいは、外部に設けられたサーバから楽曲情報を受信し、受信した楽曲情報に基づいて演奏を実行し、楽曲音声をオーディオエンジンプログラムに出力し、
オーディオエンジンプログラムは、マイクロホンから入力されるマイク音声を加工した後、Ｗｅｂブラウザプログラムから受信した楽曲音声をミキシングしてスピーカに出力することを特徴とする
カラオケ用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演奏される伴奏音に併せて歌唱を行うことのできるカラオケシステム、並びに、カラオケシステムで実行可能なカラオケ用プログラムに関する。
【背景技術】
【０００２】
従来、伴奏音に合わせて歌唱を楽しむことのできるカラオケ装置では、楽曲の演奏を行うとともに、マイクロホンから入力される歌唱音をミキシングしてスピーカに出力することを基本機能として有している。これら基本機能は、カラオケ業者にて開発されたカラオケ装置、並びに、カラオケ装置に搭載されたハードウェア、プログラムで実行されることが通常である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−４５４９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、現在、カラオケ装置の新規開発にあたっては、既存のカラオケ装置に基づいて行われることが一般的である。しかしながら、新規開発において既存のカラオケ装置をベースとした新たなプログラムの開発、修正には、労力、コスト、時間を伴うものとなっている。特に、ベースとなった既存のカラオケ装置において、初期開発から年月が経っている場合には、労力、コスト、時間の負担はますます増加することが考えられる。
【０００５】
特許文献１には、携帯電話機をカラオケ選曲リモコン装置として使用することのできる携帯電話機の応用プログラムが開示されている。この携帯電話機の応用プログラムは、携帯電話機に搭載されたブラウザを使用してカラオケ選曲を行うことを可能としている。
【０００６】
特許文献１にみられるように、携帯電話機等の情報処理装置に搭載されたブラウザは、汎用的なプログラムであって、各種情報の閲覧には適したものである。現在、ブラウザは、Ｙｏｕｔｕｂｅ（登録商標）でよく知られるように音声再生機能や動画再生機能も有しており、文字、静止画以外の情報も容易に扱うことが可能となっている。
【０００７】
出願人は、カラオケ装置においても、情報処理で使用されるＷｅｂブラウザ（ブラウザ）を使用することで、カラオケ装置の開発にかかる各種負担を削減することを検討している。しかしながら、Ｗｅｂブラウザは、カラオケの機能に特化されたものでは無い。カラオケでは、演奏に伴って順次モニタに表示される歌詞を見ながら歌唱者がマイクロホンで歌い、入力される歌唱音を演奏とミキシングしてスピーカで放音することが通常である。このカラオケにおける基本機能をＷｅｂブラウザで実現した場合、音声信号を入力してスピーカで放音する処理に時間がかかってしまうことが分かった。このような状況では、自分の発した声がスピーカから遅れてきこえてしまう等、カラオケ装置での歌唱における致命的な欠点となってしまうことが考えられる。
【０００８】
本発明は、このような課題を考慮したものであって、各種情報処理装置で使用されるＷｅｂブラウザを使用することで新規開発における各種負担を削減するとともに、Ｗｅｂブラウザを使用した場合においても、スピーカから放音される音声信号の遅延を抑えて、快適に歌唱することができるカラオケシステム、並びに、カラオケ用プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
そのため本発明に係るカラオケシステムは、以下の構成を採用したことを特徴としている。
Ｗｅｂブラウザプログラムと、オーディオエンジンプログラムと、を備えたカラオケシステムであって、
Ｗｅｂブラウザプログラムは、所定のプロトコルを使用してオーディオエンジンプログラムと通信を可能とし、カラオケシステムの内部、あるいは、外部に設けられたサーバから楽曲情報を受信し、受信した楽曲情報に基づいて再生を実行し、再生された楽曲音声をオーディオエンジンプログラムに出力し、
オーディオエンジンプログラムは、マイクロホンから入力されるマイク音声を加工した後、Ｗｅｂブラウザプログラムから受信した楽曲音声をミキシングしてスピーカに出力することを特徴とする。
【００１０】
さらに本発明に係るカラオケシステムにおいて、
Ｗｅｂブラウザプログラムは、オーディオエンジンプログラムにおける楽曲音声の再生位置に基づき、楽曲情報中の少なくとも歌詞表示について、その再生位置を調整して表示部に表示させることを特徴とする。
【００１１】
さらに本発明に係るカラオケシステムにおいて、
Ｗｅｂブラウザプログラムは、オーディオエンジンプログラムに対して、マイク音声の加工に関するパラメータを送信し、
オーディオエンジンプログラムは、受信したパラメータに基づいてマイク音声を加工することを特徴とする。
【００１２】
さらに本発明に係るカラオケシステムにおいて、
オーディオエンジンプログラムは、マイクロホンから入力されるマイク音声、もしくは、マイク音声の特性を、所定のプロトコルとは異なるプロトコルを使用して、Ｗｅｂブラウザプログラムに送信し、
Ｗｅｂブラウザプログラムは、受信したマイク音声、もしくは、マイク音声の特性に基づいて歌唱評価処理を行うことを特徴とする。
【００１３】
さらに本発明に係るカラオケシステムにおいて、
Ｗｅｂブラウザプログラムは、第１の情報処理装置で実行され、
オーディオエンジンプログラムは、第２の情報処理装置で実行されることを特徴とする。
【００１４】
また本発明に係るカラオケ用プログラムは、
カラオケシステムにおいて実行されるＷｅｂブラウザプログラムと連携して実行されるカラオケ用プログラムであって、
Ｗｅｂブラウザプログラムは、所定のプロトコルを使用してオーディオエンジンプログラムと通信を可能とし、カラオケシステムの内部、あるいは、外部に設けられたサーバから楽曲情報を受信し、受信した楽曲情報に基づいて演奏を実行し、楽曲音声をオーディオエンジンプログラムに出力し、
オーディオエンジンプログラムは、マイクロホンから入力されるマイク音声を加工した後、Ｗｅｂブラウザプログラムから受信した楽曲音声をミキシングしてスピーカに出力することを特徴とする。
【発明の効果】
【００１５】
本発明に係るカラオケシステム、及び、カラオケ用プログラムによれば、情報処理装置で使用されるＷｅｂブラウザプログラムを少なくとも楽曲情報の再生に使用し、マイクロホンから入力されるマイク音声の処理には、Ｗｅｂブラウザプログラムとは異なるオーディオエンジンプログラムを使用することとしている。このような構成により、カラオケシステムの新規開発における各種負担を削減するとともに、Ｗｅｂブラウザプログラムを使用した場合においても、スピーカから放音されるマイク音声信号の遅延を抑えて、快適に歌唱することを可能としている。また、Ｗｅｂブラウザプログラムは、所定のプロトコルを使用して通信を行うため、例えば、ＨＴＴＰプロトコルのように汎用性のあるプロトコルを使用した場合、Ｗｅｂブラウザプログラム、あるいは、オーディオエンジンプログラムの開発、修正を容易にすることが可能となる。また、既存のＷｅｂサービスとの親和性も容易であるため、既存のＷｅｂサービスと連携を取ったカラオケ機能を構築することも容易となる。
【００１６】
さらに、本発明に係るカラオケシステム、及び、カラオケ用プログラムによれば、オーディオエンジンプログラムにおける楽曲音声の再生位置に基づき、楽曲情報中の少なくとも歌詞表示について、その再生位置を調整して表示部に表示させることとしている。このような構成により、オーディオエンジンプログラムにおける楽曲音声と、Ｗｅｂブラウザプログラムにおける歌詞表示との間におけるずれを抑制し、ユーザに対して適切な歌唱位置を通知することが可能となる。
【００１７】
さらに、本発明に係るカラオケシステム、及び、カラオケ用プログラムによれば、Ｗｅｂブラウザプログラムから出力されるパラメータでオーディオエンジンプログラムを制御することが可能となり、例えば、Ｗｅｂブラウザプログラムでユーザインターフェイスを実現して受け付けたパラメータでマイク音声の加工を制御することが可能となる。
【００１８】
さらに、本発明に係るカラオケシステム、及び、カラオケ用プログラムによれば、オーディオエンジンプログラムからマイク音声、もしくは、マイク音声の特性をＷｅｂブラウザプログラムに送信することで、歌唱採点等の歌唱評価、並びに、歌唱評価の出力表示をＷｅｂブラウザプログラムで行うことが可能となる。その際、所定のプロトコルとは異なるプロトコルを使用することで、Ｗｅｂブラウザプログラムからオーディオエンジンプログラムに楽曲音声を送信する通信に対する遅延などの支障を抑制することも可能となる。
【００１９】
さらに、本発明に係るカラオケシステム、及び、カラオケ用プログラムによれば、Ｗｅｂブラウザプログラムは、第１の情報処理装置で実行され、オーディオエンジンプログラムは、第２の情報処理装置で実行されることとしている。このような構成により、カラオケシステムを異なる情報処理装置で実現することが可能となる。
【図面の簡単な説明】
【００２０】
【図１】本実施形態のカラオケ装置のハードウェア構成を説明するための図
【図２】本実施形態のカラオケ装置のソフトウェア構成を説明するための図
【図３】本実施形態のマイク入出力処理を示すフロー図
【図４】本実施形態のカラオケ再生処理（Ｗｅｂブラウザ側）を示すフロー図
【図５】本実施形態の再生位置調整処理を示すフロー図
【図６】他の実施形態のカラオケ装置のハードウェア構成を説明するための図
【図７】他の実施形態のカラオケ装置のソフトウェア構成を説明するための図
【発明を実施するための形態】
【００２１】
図１は、本実施形態のカラオケシステムの構成を示す図であって、特に、カラオケ装置１については、そのハードウェア構成を示している。本実施形態におけるカラオケシステムは、ハードウェア構成として、カラオケ装置１、表示部３１、マイクロホン３２、スピーカ３３、ルータ３４、外部サーバ４を有して構成されている。
【００２２】
本実施形態のカラオケ装置１は、一般的なパーソナルコンピュータを使用することが可能であって、制御部としてのＣＰＵ１１、ＲＡＭ１２、記憶部１３、画像処理部１５、音響処理部１６を有して構成されている。記憶部１３には、カラオケ装置１でカラオケ機能を実現するためのＷｅｂブラウザプログラム、オーディオエンジンプログラムが記憶されている。ＣＰＵ１１は、これらプログラムを読み出してＲＡＭ１２に展開し、処理を実行することで楽曲の演奏に合わせて歌唱を行うことを可能とするカラオケ機能を実現する。画像処理部１５は、ユーザに対して視覚的な情報を表示部３１に表示する機能を有する。音響処理部１６は、マイクロホン３２から入力される歌唱音声の入力、歌唱音声、再生された楽曲音声をスピーカ３３から放音する機能を有している。
【００２３】
カラオケ装置１は、ユーザからの各種操作を受け付ける入力部１４、そして、外部サーバ４と通信するための通信部１７を有して構成されている。本実施形態のカラオケ装置１は、カラオケ店舗、あるいは、個人宅に設置されたルータ３４、インターネット回線等の通信網を介して外部サーバ４と通信を行う。カラオケ装置１は、通信部１７による通信機能を使用して、外部サーバ４に蓄積されている楽曲情報を受信し、再生することでカラオケ機能を実現する。本実施形態では、外部サーバ４からカラオケ装置１に対して、ストリーミングにより楽曲情報を配信しているが、このような配信形態のみならず、外部サーバ４から配信された楽曲情報をカラオケ装置１に蓄積して再生する配信形態を採用してもよい。
【００２４】
図２は、図１と同様、本実施形態のカラオケシステムの構成を示す図であって、カラオケ装置１については、図１ではハードウェア構成を示していたのに対し、図２では、ソフトウェア構成を示している点において異なっている。図１のカラオケ装置１において、カラオケ機能を実現する場合、カラオケ装置１のＣＰＵ１１は、記憶部１３からローカルＷｅｂサーバプログラム２１、Ｗｅｂブラウザプログラム２２、オーディオエンジンプログラム２３を読み出して、それぞれのプログラムの処理を実行する。なお、以下の説明では、ローカルＷｅｂサーバプログラム２１、Ｗｅｂブラウザプログラム２２、オーディオエンジンプログラム２３について、末尾に記載するプログラムを省略し、ローカルＷｅｂサーバ２１、Ｗｅｂブラウザ２２、オーディオエンジン２３と呼ぶことにする。
【００２５】
Ｗｅｂブラウザ２２は、各種ＯＳに実装され、インターネットブラウザ等として機能する一般的なプログラムである。従来のカラオケ装置では、オリジナルのプログラムを使用することが一般的であった。したがって、カラオケ装置を新規開発するには、このようなオリジナルのプログラムをベースとして開発を進めることとなり、その開発、修正には、労力、コスト、時間を伴うものとなっていた。本実施形態のカラオケ装置１は、このような状況を課題として開発されたものであり、カラオケ機能を実現するための各種処理（操作ＵＩ処理、カラオケ再生処理、歌詞表示処理、採点処理）を、各種情報処理装置において一般的に実装、使用されているＷｅｂブラウザ２２を使用している。なお、既存のＷｅｂブラウザ２２において、上述するカラオケ機能を実現するための各種処理が困難である場合には、Ｗｅｂブラウザ２２で機能するアドオンプログラムを付加することで処理を実現することが可能である。
【００２６】
このようにカラオケ機能を実現するためＷｅｂブラウザ２２を使用することで、以下に示すメリットを得ることが可能となる。第１のメリットとしては、Ｗｅｂブラウザ２２が、その広く一般的に使用される汎用性により、カラオケ機能を実現するための各種プログラムの開発、修正が容易になる。第２のメリットとしては、Ｗｅｂブラウザ２２は、汎用性のあるプロトコル（本実施形態ではＨＴＴＰを使用）で通信することで、他のプログラム、他の構成との通信を容易に行う、あるいは、その通信環境の開発が容易になる。また、第３のメリットとしては、インターネットの閲覧に使用されるＷｅｂブラウザ２２を使用することで、既存のＷｅｂサービスと連携したカラオケ機能を容易に実現することが可能となる。
【００２７】
ローカルＷｅｂサーバ２１は、上述するＷｅｂブラウザ２２のメリットを活かすため、ＨＴＴＰプロトコルを使用して、Ｗｅｂブラウザ２２との通信を行う。なお、このローカルＷｅｂサーバ２１は、必ずしも設ける必要は無いが、ローカルＷｅｂサーバ２１を設けることで、外部サーバ４との通信時におけるキャッシュ機能を実現することが可能となる。また、カラオケ装置１を外部サーバ４と接続しない構成（スタンドアロン構成）として使用する場合において、そのキャッシュ機能により、見かけ上、外部サーバ４を有する場合と同じように使用することが可能となる。したがって、スタンドアロン構成時においても、何らＷｅｂブラウザ２２に修正をかける必要なく、外部サーバ４と接続時と同じ環境で使用することも可能となる。
【００２８】
Ｗｅｂブラウザ２２を使用することで、カラオケ機能を実現する際の使用環境、開発環境は良好となることが考えられるが、ここで一つ重要な問題がある。カラオケ機能には、マイクロホン３２からマイク音声を入力し、エコー等の音響効果を付与した後、再生される楽曲音声とミキシングしてスピーカ３３から放音出力する処理（マイク音声処理）が必要とされる。このマイク音声処理における遅延の許容値は、大きくても１０ミリ秒程度であり、単なる楽曲再生やビデオ再生に許容される遅延の許容値と比べて非常に厳しいものとなっている。現状のＷｅｂブラウザ２２で、カラオケ機能に必要とされる全ての処理を実行した場合、マイク音声処理は遅延の許容値を超えてしまい、マイクロホン３２から入力されるマイク音声がスピーカ３３から遅れて聞こえ、歌唱が困難になってしまう。
【００２９】
そのため、本実施形態のカラオケ装置１では、カラオケ機能を実現するプログラムとして、Ｗｅｂブラウザ２２以外に、上述するマイク音声処理を実行するオーディオエンジン２３を設けたことを特徴としている。オーディオエンジン２３は、マイクロホン３２から入力されるマイク音声信号を受信し、マイク音声信号にエコーをかける等の加工（音響効果付与）を行う。また、オーディオエンジン２３は、Ｗｅｂブラウザ２２で再生された楽曲音声信号を受信して、加工されたマイク音声信号とミキシングしてスピーカ３３に出力する処理を実行する。
【００３０】
オーディオエンジン２３は、ＨＴＴＰプロトコルを使用して、Ｗｅｂブラウザ２２と通信する。図２には、Ｗｅｂブラウザ２２とオーディオエンジン２３は、２つのプロトコル（ＨＴＴＰプロトコル、ＷｅｂＳｏｃｋｅｔプロトコル）を使用して通信を行うことが示されているが、カラオケ機能の基本的な機能を実現するには、ＨＴＴＰプロトコルのみで構わない。ＷｅｂＳｏｃｋｅｔプロトコルは、Ｗｅｂブラウザ２２で採点処理を行う際、オーディオエンジン２３からＷｅｂブラウザ２２に対して、マイク音声を送信する場合に使用される。
【００３１】
図３は、本実施形態のマイク入出力処理を示すフロー図である。オーディオエンジン２３は、マイクロホン３２から入力されるマイク音声信号を、ＡＤ変換処理２３ｂにて、デジタル信号（マイク音声データ）に変換（Ｓ１０２）する。そして、一定量のマイク音声データを取り出し（Ｓ１０２）、マイク音声データ処理２３ｃにて、エコーを付与する等の加工が施される（Ｓ１０３）。なお、マイク音声データ処理２３ｃの加工において使用される各種パラメータは、Ｗｅｂブラウザ２２の操作ＵＩ処理等において、入力部１４を使用して設定されたパラメータであって、Ｗｅｂブラウザ２２からオーディオエンジン２３に対してＨＴＴＰプロトコルを使用して送信される。オーディオエンジン２３側のマイク音声データ処理２３ｃでは、受信したパラメータに基づいて、マイク音声データを加工し、ミキサー処理２３ｄに出力する。
【００３２】
また、Ｗｅｂブラウザ２２において、カラオケ再生処理が実行される場合、オーディオエンジン２３は、ＨＴＴＰプロトコルを使用して、楽曲音声データを受信する。受信した楽曲音声データ処理２３ａでは、受信した楽曲音声データをミキサー処理２３ｄに出力する。ミキサー処理２３ｄは、マイク音声データ処理２３ｃで出力されるマイク音声データと、楽曲音声データ処理２３ａで出力される楽曲音声データをミキシング（Ｓ１０５）し、ミキシングデータとしてＤＡ変換処理２３ｅに出力する。ＤＡ変換処理２３ｅは、ミキシングデータをアナログ信号に変換（Ｓ１０６）して、スピーカ３３に出力する。
【００３３】
このように、本実施形態のカラオケ装置１は、Ｗｅｂブラウザ２２において、楽曲情報の再生処理であるカラオケ再生処理を実行し、マイクロホン３２から入力されるマイク音声信号については、Ｗｅｂブラウザ２２を使用せず、オーディオエンジン２３を使用することで、前述するようなマイク音声信号に対する遅延を抑制し、歌唱に好適なカラオケ機能を実現することを可能としている。また、カラオケ再生処理等に、汎用性のあるＷｅｂブラウザ２２を使用することで、開発環境の良好化を図ることが可能となり、開発、修正、機能追加等を迅速に行うことが可能となる。また、Ｗｅｂブラウザ２２は、汎用性のあるＨＴＴＰプロトコルを通信に使用しているため、オーディオエンジン２３、ローカルＷｅｂサーバ２１等の周囲機能についても、既存の開発環境を利用し、迅速な開発、修正を行うことが可能となる。
【００３４】
図４は、本実施形態のカラオケ再生処理（Ｗｅｂブラウザ側）を示すフロー図である。カラオケ装置１において、カラオケ機能の開始が指示された場合、図２で説明したローカルＷｅｂサーバ２１、Ｗｅｂブラウザ２２、オーディオエンジン２３において処理が開始される。図４は、これら処理中、Ｗｅｂブラウザ２２の処理を示すフロー図である。Ｗｅｂブラウザ２２は、オーディオエンジン２３との接続処理を実行する（Ｓ２００）。そして、Ｗｅｂブラウザ２２は、オーディオエンジン２３間との遅延測定処理（Ｓ２０１）を実行する。この遅延測定処理は、Ｗｅｂブラウザ２２が楽曲音声データをオーディオエンジン２３に送信してから、実際に演奏されるまでの遅延時間を計測（予測）するための処理である。この遅延測定処理としては、Ｗｅｂブラウザ２２からオーディオエンジン２３にメッセージを送信し、オーディオエンジン２３からそのレスポンスを受信して往復にかかった時間（あるいは往復にかかった時間の１／２）を、遅延時間とする形態（プル型）、あるいは、オーディオエンジン２３自身で遅延時間を計測し、Ｗｅｂブラウザ２２に報告する形態（プッシュ型）を採用することが考えられる。
【００３５】
遅延測定処理（Ｓ２０１）の実行後、楽曲情報の再生にあたって、各種パラメータ（再生位置、再生速度）の初期化、パラメータ適用時刻の記録が実行される（Ｓ２０２）。そして、ローカルＷｅｂサーバ２１から楽曲情報のストリーム受信を開始する（Ｓ２０３）。この楽曲情報には、楽曲音声データ、映像データ、歌詞データが含まれており、Ｗｅｂブラウザ２２は、映像データ、歌詞データに基づいて映像を形成し、表示部３１に表示させる。また、Ｗｅｂブラウザ２２は、楽曲音声データをオーディオエンジン２３に送信する。
【００３６】
その際、Ｗｅｂブラウザ２２は、オーディオエンジン２３との間の遅延時間を使用し、映像データ、歌詞データの再生位置を調整する再生位置調整処理（Ｓ２５０）を実行する。特に、遅延時間を考慮しない場合、特に、歌詞データについては、オーディオエンジン２３からスピーカ３３から放音出力される演奏音との間で同期が取れなくなることが考えられる。具体的には、Ｗｅｂブラウザ２２側で歌詞表示処理、すなわち、歌うべき歌詞を表示部３１に表示させた後、演奏音の進行に合わせて歌詞の色変えを行う処理と、オーディオエンジン２３からの楽曲音声の出力との間にずれが生じてしまう。
【００３７】
本実施形態では、再生位置調整処理（Ｓ２５０）を実行することで、Ｗｅｂブラウザ２２側の歌詞表示処理と、オーディオエンジン２３側の楽曲音声データの放音処理との間のずれを抑制し、適切な歌唱位置をユーザに通知することを可能としている。また、映像データについても、同様に再生位置を適切に調整することが可能となる。本実施形態の再生位置調整処理（Ｓ２５０）では、遅延測定処理（Ｓ２０１）で測定した遅延時間を初期値として使用し、楽曲情報の再生期間中、ストリームの再生位置を更新することで、Ｗｅｂブラウザ２２とオーディオエンジン２３間の遅延時間が変動した場合であっても適切に追従することが可能となっている。
【００３８】
図５は、本実施形態の再生位置調整処理（Ｓ２５０）を示すフロー図である。再生位置調整処理（Ｓ２５０）では、ストリームから所定量をデコードして、映像データ、楽曲音声データ、歌詞データを取得する（Ｓ２５１）。ストリームから取得した楽曲音声データは、オーディオエンジン２３に送信される（Ｓ２５２）。そして、Ｗｅｂブラウザ２２は、オーディオエンジン２３から、楽曲音声データの現在の再生位置、再生速度の取得を試みる（Ｓ２５３）。現在の再生位置、再生速度が取得できた場合（Ｓ２５４：Ｙｅｓ）には、再生位置、再生速度、パラメータ適用時刻を更新（Ｓ２５５）して、オーディオエンジン２３における楽曲音声データの現在の推定再生位置を求める（Ｓ２５６）。一方、再生位置、再生速度、パラメータ適用時刻が取得できなかった場合（Ｓ２５４：Ｎｏ）、保持している再生位置、再生速度、パラメータ適用時刻を使用して、オーディオエンジン２３における楽曲音声データの現在の推定再生位置を求める（Ｓ２５６）。
【００３９】
Ｗｅｂブラウザ２２は、Ｓ２５６求めた推定再生位置を使用して、映像データ、及び、歌詞データの再生位置を更新する（Ｓ２５７）。このように、再生位置調整処理（Ｓ２５０）では、オーディオエンジン２３における楽曲音声データの推定再生位置を使用して、映像データ、及び、歌詞データの再生位置を調整することで、スピーカ３３から放音出力される楽曲音声と、表示部３１に表示される映像、歌詞を同期させることが可能となる。特に、表示部３１に表示される歌詞については、スピーカ３３から放音される楽曲音声と遅延を抑制した同期を取ることが可能となり、ユーザに対して歌唱位置を適切に通知することが可能となる。
【００４０】
以上、図１〜図５を使用して説明したように、本実施形態のカラオケ装置１は、一般的なパーソナルコンピュータで汎用性があるとともに、周辺機能（プログラム）との整合性を取りやすいＨＴＴＰプロトコルを使用するＷｅｂブラウザ２２を使用することで、カラオケ機能の開発、修正を容易にしている。また、カラオケ機能を実現するにあたって、マイクロホン３２から入力されるマイク音声信号については、マイク音声信号がスピーカ３３から出力されるまでの処理をＷｅｂブラウザ２２ではなく、別途設けたオーディオエンジン２３で処理することで、マイク音声信号に対する遅延を抑え、歌唱しやすい環境を実現している。更に、このようにカラオケ機能をＷｅｂブラウザ２２と、オーディオエンジン２３に分けて実現する場合において、両者間の再生位置のずれを考慮して、映像データ、歌詞データの再生位置を調整することで、楽曲の演奏と映像、歌詞の表示のずれを抑制することが可能となっている。特に、歌詞データの再生位置を調整することで、適切な歌唱位置をユーザに通知することが可能となっている。なお、再生位置調整処理は、少なくとも歌詞データに対して行えばよく、映像データについては行わないこととしてもよい。
【００４１】
上記実施形態中、図２には、Ｗｅｂブラウザ２２とオーディオエンジン２３間でＷｅｂＳｏｃｋｅｔプロトコルを使用する形態について説明しておく。このＷｅｂＳｏｃｋｅｔプロトコルによる通信は、楽曲を演奏して歌唱を行う通常のカラオケ機能では使用されず、オーディオエンジン２３からＷｅｂブラウザ２２に対して、マイク音声データを送信する必要がある場合に使用される。例えば、Ｗｅｂブラウザ２２側で採点処理（歌唱評価処理）を行う場合、マイクロホン３２を使用して取得したマイク音声データを複製し、ＷｅｂＳｏｃｋｅｔプロトコルを使用して、Ｗｅｂブラウザ２２側に送信する。Ｗｅｂブラウザ２２側では、受信したマイク音声データを使用して採点処理を実行する。採点処理は、カラオケ基本機能と異なり、多少の遅延は許容される処理である。そのため、楽曲を演奏しながら、歌唱すべき歌詞を表示するカラオケ基本機能以外（オプション機能）の通信には、ＨＴＴＰプロトコル（第１のプロトコル）とは異なるＷｅｂＳｏｃｋｅｔ（第２のプロトコル）を使用することで、カラオケ基本機能に対する遅延等の影響を抑え、カラオケ基本機能における良好な通信を確保することを可能としている。なお、本実施形態では、Ｗｅｂブラウザ２２において、採点処理を行うため、オーディオエンジン２３からマイク音声データを受信しているが、マイク音声データに代え、マイク音声データの特性を受信することとしてもよい。
【００４２】
図６、図７は、他の実施形態のカラオケシステムを説明するための図であり、図６は、カラオケシステムのハードウェア構成であり、図７は、カラオケシステムのソフトウェア構成を示す図である。図６に示されるように、本実施形態のカラオケシステムは、ハードウェア構成として、カラオケ装置１（第２の情報処理装置）、タブレット端末５（第１の情報処理装置）、マイクロホン３２、スピーカ３３、ルータ３４、アクセスポイント３５、外部サーバ４を有して構成されている。
【００４３】
カラオケ装置１は、図１で説明したハードウェア構成と同様、ＣＰＵ１１、ＲＡＭ１２、記憶部１３、入力部１４、音響処理部１６、通信部１７を有しているが、画像処理部１５を必ずしも必要としない点において異なっている。この画像処理部１５の代用となるのがタブレット端末５である。タブレット端末５は、ルータ３４に通信接続されるアクセスポイント３５と無線通信を行うことが可能となっている。したがって、タブレット端末５は、アクセスポイント３５、ルータ３４を介してカラオケ装置１と通信することが可能である。タブレット端末５とカラオケ装置１は、このようなＬＡＮ環境を使用した通信のみならず、互いに直接通信（ピア・ツー・ピア）することとしてもよい。
【００４４】
図７は、このようなカラオケシステムのソフトウェア構成を示す図である。本実施形態では、カラオケ機能を実行するにあたって、タブレット端末５においてＷｅｂブラウザ５１が立ち上がる。このＷｅｂブラウザ５１は、前述の実施形態と同様、操作ＵＩ処理、カラオケ再生処理、歌詞表示処理、採点表示処理を実行する。Ｗｅｂブラウザ５１で形成された各種画像、映像は、タブレット端末５の表示部５２に表示される。
【００４５】
一方、カラオケ装置１側では、ローカルＷｅｂサーバ２１と、オーディオエンジン２３が実行される。ローカルＷｅｂサーバ２１と、オーディオエンジン２３は、前述の実施形態と同様、ＨＴＴＰプロトコルを使用してＷｅｂブラウザ５１と通信を行う。但し、タブレット端末５とカラオケ装置１は、アクセスポイント３５を介して通信を行う点において前述の実施形態と異なっている。Ｗｅｂブラウザ５１は、カラオケ再生処理で再生された楽曲音声データを、ＨＴＴＰプロトコルを使用してオーディオエンジン２３に送信する。楽曲音声データは、アクセスポイント３５を介して無線送信され、オーディオエンジン２３によってスピーカ３３から放音出力されることになるが、再生位置調整処理Ｓ２５０では、アクセスポイント３５を使用することによる遅延時間も考慮した形態で、映像データ、歌詞データの再生位置を調整することができるため、スピーカ３３から放音出力される楽曲音声と、表示部５２に表示される映像、及び、歌詞間のずれを抑制することが可能となる。
【００４６】
このように、Ｗｅｂブラウザ５１と、オーディオエンジン２３は、異なる情報処理装置（この場合、カラオケ装置１とタブレット端末５）で実行することも可能である。Ｗｅｂブラウザ５１と、オーディオエンジン２３の間は、汎用性のあるＨＴＴＰプロトコルで通信するため、このように異なる情報処理装置で実行する場合においても、前述の実施形態と同様に、カラオケシステムを容易に構築することが可能である。
【００４７】
また、前述の実施形態と同様、Ｗｅｂブラウザ５１における採点処理では、Ｗｅｂブラウザ５１は、オーディオエンジン２３からＷｅｂＳｏｃｋｅｔを使用して、マイク音声データの複製を受信し、楽曲情報に含まれる主旋律情報と比較する等して、歌唱評価値となる得点を算出する。
【００４８】
なお、図７で説明した実施形態では、ローカルＷｅｂサーバ２１は、カラオケ装置１側に設けることとしているが、タブレット端末５側に設けることとしてもよい。また、本実施形態では、Ｗｅｂブラウザ５１を搭載する情報処理装置として、タブレット端末５を使用しているが、Ｗｅｂブラウザ５１を搭載する情報処理装置には、タブレット端末５のみならず、スマートホン、パーソナルコンピュータ等を使用することが可能である。
【符号の説明】
【００４９】
１：カラオケ装置
４：外部サーバ
５：タブレット端末
１１：ＣＰＵ
１２：ＲＡＭ
１３：記憶部
１４：入力部
１５：画像処理部
１６：音響処理部
１７：通信部
２１：ローカルＷｅｂサーバ（プログラム）
２２、５１：Ｗｅｂブラウザ（プログラム）
２３：オーディオエンジン（プログラム）
２３ａ：楽曲音声データ処理
２３ｂ：ＡＤ変換処理
２３ｃ：マイク音声データ処理
２３ｄ：ミキサー処理
２３ｅ：ＤＡ変換処理
３１、５２：表示部
３２：マイクロホン
３３：スピーカ
３４：ルータ
３５：アクセスポイント
【図１】
2019152808.tif 000003
【図２】
2019152808.tif 000004
【図３】
2019152808.tif 000005
【図４】
2019152808.tif 000006
【図５】
2019152808.tif 000007
【図６】
2019152808.tif 000008
【図７】
2019152808.tif 000009