【実施例1】
【0015】
以下、
図1を参照して本発明の実施例1の音声コンテンツ提供システムについて説明する。
図1は、本実施例の音声コンテンツ提供システム1の構成を示すブロック図である。
図1に示すように、本実施例の音声コンテンツ提供システム1は、サーバ装置11と、クライアント装置12と、提供者装置13とを含む。サーバ装置11と、クライアント装置12と、提供者装置13はネットワーク14を介して通信可能である。サーバ装置11は、サーバ装置11の管理者によって管理される。クライアント装置12は、クライアント装置12のユーザによって操作される。クライアント装置12は、例えば本発明用にカスタマイズされた観光案内アプリケーションなどにより後述する動作を実行可能に設定されているものとする。提供者装置13は、コンテンツ提供者(提供者装置13のユーザ)によって操作される。
【0016】
以下、
図2、
図3を参照してサーバ装置11について説明する。
図2は、本実施例のサーバ装置11の構成を示すブロック図である。
図3は、本実施例のサーバ装置11の動作を示すフローチャートである。
図2に示すように、本実施例のサーバ装置11は、音声合成部111と、音声合成用データ記憶部1111と、再生時間取得部112と、対応テーブル作成部113と、コンテンツ記憶部1131と、選択コンテンツ送信部114とを含む。
【0017】
コンテンツ提供者は提供者装置13を操作して、テキストコンテンツ及びコンテンツの登録位置を示す登録位置情報をサーバ装置11にアップロードする。アップロードが実行された場合、サーバ装置11はテキストコンテンツの音声合成処理を実行し、音声コンテンツを生成する。この際、サーバ装置11は音声コンテンツの再生時間を示す再生時間情報も取得する。サーバ装置11は、生成された音声コンテンツを、登録位置情報及び再生時間情報と紐づけた対応テーブルの形式でサーバ装置11内に蓄積する。一方、前述の観光案内アプリケーションを起動中のクライアント装置12は、クライアント装置12のユーザの現在位置を示す現在位置情報と、クライアント装置12の識別情報を一定時間間隔ごとにサーバ装置11に送信する。クライアント装置12のユーザの現在位置と登録位置間の距離が、呈示距離以下となった場合に、サーバ装置11は、該当する音声コンテンツをクライアント装置12に送信する。クライアント装置12は、受信した音声コンテンツを再生する。呈示距離は、一定時間ごとのユーザの現在位置の差分(移動距離)から算出されるユーザの移動速度と、ユーザのクライアント装置12で再生させようとする音声コンテンツの再生時間情報とに基づき決定される。また、移動速度は音声コンテンツが複数存在するエリアにおいて再生する音声コンテンツの決定にも用いられる。
【0018】
以下、コンテンツ提供者がテキストコンテンツをアップロードした際の処理を述べる。まずサーバ装置11には、提供者装置13から、テキストコンテンツ、登録位置情報がアップロード(送信)される。登録位置情報とはコンテンツ提供者が音声コンテンツの再生が期待される場所として設定した情報(例えば緯度−経度、基地局情報、アクセスポイント情報)のことである。なお、登録位置情報として基地局情報やアクセスポイント情報を用いる場合、これらの情報に緯度−経度のような定量的な位置情報に変換可能な情報が含まれているものとする。
【0019】
この場合、サーバ装置11の音声合成部111は、提供者装置13からテキストコンテンツを受信して、テキストコンテンツの音声合成処理を実行し、テキストコンテンツの合成音声(音声コンテンツ)を生成する(S111)。ステップS111の音声合成処理に必要なデータは、音声合成用データ記憶部1111に記憶されている。音声合成部111と、音声合成用データ記憶部1111をまとめて音声合成エンジンともいう。プラグインとして使用可能な音声合成エンジンが多数知られている。音声合成エンジンを用いてテキストコンテンツの合成音声を生成することができる。
【0020】
次に、再生時間取得部112は、生成された音声コンテンツの再生時間を示す再生時間情報を取得する(S112)。次に、対応テーブル作成部113は、音声コンテンツと、対応する再生時間情報と、対応する登録位置情報とを対応付けたテーブルである対応テーブルを作成する(S113)。対応テーブルには対応するテキストコンテンツが含まれてもよい。対応テーブル作成部113は、ステップS111で生成された音声コンテンツと本ステップで作成した対応テーブルとを合わせてコンテンツ記憶部1131に記憶する。このようにして、音声コンテンツは音声コンテンツと各種情報とを対応づける対応テーブルと合わせてサーバ装置11上に蓄積される。
【0021】
一方、本発明用にカスタマイズされた観光案内アプリケーションを起動中のクライアント装置12からは、クライアント装置12のユーザの現在位置を示す現在位置情報(例えば緯度−経度、クライアント装置12が利用中の基地局情報またはアクセスポイント情報)、クライアント装置12の識別情報が一定時間間隔おきにサーバ装置11に発信される。
【0022】
サーバ装置11の選択コンテンツ送信部114は、現在位置情報と識別情報を受信して、受信した情報と対応テーブルに基づいて音声コンテンツのうちの何れかを選択し、選択された音声コンテンツである選択音声コンテンツをクライアント装置12に送信する(S114)。
【0023】
<選択コンテンツ送信部114>
次に
図4、
図5を参照して、クライアント装置12から現在位置情報を含む各種情報が送信された場合の選択コンテンツ送信部114の処理の詳細について説明する。
図4は、本実施例の選択コンテンツ送信部114の構成を示すブロック図である。
図5は、本実施例の選択コンテンツ送信部114の動作を示すフローチャートである。
図4に示すように、本実施例の選択コンテンツ送信部114は、移動速度計算部1141と、候補検索部1142と、選択部1143と、呈示距離計算部1144と、送信部1145を含む。
【0024】
移動速度計算部1141は、所定時間ごとにクライアント装置12から現在位置情報を受信して、クライアント装置12のユーザの移動速度を計算して移動速度情報として出力する(S1141)。移動速度は例えば、ユーザのクライアント装置12が報告した最新の現在位置情報とその直前にクライアント装置12が送信した現在位置情報との間の距離を、送信間隔時間で除算することで算出できる。またこの方法で算出した個々の移動速度を何回か測定した平均値を移動速度として利用しても良いし、またクライアント装置12が一定回数分送信した現在位置情報の間のそれぞれの距離を累計し、一定回数に相当する送信間隔の時間長で除算して移動速度として利用しても良い。
【0025】
候補検索部1142は、クライアント装置12から受信した現在位置情報と対応テーブルに記録されている登録位置情報に基いて、現在位置情報が示す現在位置と登録位置情報が示す登録位置との距離を計算し、当該距離が所定の距離以内である音声コンテンツ(「候補」ともいう)と、対応する再生時間情報と、対応する登録位置情報を全て取得する(S1142)。ステップS1142において、移動速度が速いユーザへの音声コンテンツ呈示に影響が出ないようにするため(後述の送信部1145を参照)、所定の距離として充分長めの距離を設定しておくことが望ましい。ステップS1142において、該当する音声コンテンツが存在しない場合には、候補検索部1142は処理を終了する。
【0026】
選択部1143は、ステップS1142で取得した音声コンテンツ(候補)のうち、再生時間情報に応じて決定される再生時間クラスと、移動速度情報に応じて決定される移動速度クラスとを参照し、再生時間クラスと移動速度クラスの関係が予め定めた関係となる音声コンテンツを、送信に供する音声コンテンツとして選択する(S1143)。
【0027】
選択部1143は、候補検索部1142で取得された音声コンテンツ(候補)が1つのみである場合は、取得された音声コンテンツ(候補)を出力し、処理を終了する。候補検索部1142で取得された候補が複数である場合は、選択部1143は各候補を再生時間に基づいて数段階のクラスに分類する。例えば、3段階のクラスに分類する場合は、再生時間が15s以上を再生時間クラス1(再生時間が長いグループ)、再生時間5s〜15sを再生時間クラス2(再生時間が中程度のグループ)、再生時間5s以下を再生時間クラス3(再生時間が短いグループ)というように分類する。次に選択部1143は、予め設定されているユーザの移動速度クラスと再生時間クラスとの対応関係(移動速度が速いクラスほど再生時間が短いクラスと対応するように設定)に基づき、移動速度クラスに対応する再生時間クラスからランダムに音声コンテンツを1つ選択し出力する。例えば選択部1143は、移動速度が、2.5m/sより遅い場合は移動速度クラス1、2.5m/s〜5m/sの場合は移動速度クラス2、5m/sより速い場合は移動速度クラス3というように対応関係を設定しておく。例えばユーザの移動速度が4m/s(移動速度クラス2)であった場合、選択部1143は移動速度クラス2と対応する再生時間クラス2を選択し、再生時間クラス2に含まれる音声コンテンツ(候補)から、クライアント装置12に送信する音声コンテンツをランダムに1つ選択する。該当する再生時間クラス内に音声コンテンツが含まれない場合には、選択部1143は、再生時間が近い別の再生時間クラスから音声コンテンツを選択する。
【0028】
なお、選択した音声コンテンツが既にクライアント装置12に送信済であった場合には、選択部1143は、その音声コンテンツの選択を解除し、同じ条件の別の音声コンテンツを改めて選択する。また、既に同条件の全ての音声コンテンツを送信済であった場合は、選択部1143は、再生条件の近い音声コンテンツからランダムに1つ選択する。全ての音声コンテンツについてクライアント装置12に送信済であった場合には、選択部1143は音声コンテンツの選択を行わないか、もしくは送信済とした全ての音声コンテンツの情報を消去して改めて最も再生条件の合致する音声コンテンツからランダムに1つ選択する処理を行ってもよい。
【0029】
呈示距離計算部1144は、移動速度情報と予め設定された設定時間に基づいて、テキストコンテンツの登録位置と音声コンテンツの再生を開始する位置との距離を示す呈示距離を計算し、呈示距離情報として出力する(S1144)。呈示距離計算部1144は、クライアント装置12のユーザの移動速度で移動したときに設定された時間(設定時間)にユーザが移動する距離を算出し、算出された距離を呈示距離として設定し、当該呈示距離を示す情報を呈示距離情報として出力する。例えば、設定時間を10s、クライアント装置12のユーザの移動速度を5m/sとすると、呈示距離計算部1144は、10×5=50mを呈示距離として設定する。設定時間は、前記クラス分けした再生時間の各クラスの最大時間長よりも長い時間としておくことが望ましい。
【0030】
送信部1145は、現在位置情報を受信するたびに、受信した現在位置情報が示す現在位置と選択音声コンテンツの登録位置情報が示す登録位置との距離を計算し、計算された距離が呈示距離以下となった場合に、対応する選択音声コンテンツをクライアント装置12に送信する(S1145)。具体的には送信部1145は、現在位置情報を受信するたびに、現在位置と登録位置との間の距離計算を行い、その距離が呈示距離以下となった場合に該当する音声コンテンツをクライアント装置12に送信する。送信部1145は、現在位置と登録位置との間の距離が、呈示距離以下とならない限り、一定時間ごとに距離計算を繰り返し行う。また、クライアント装置12のユーザが既に呈示距離範囲内にいる場合は、送信部1145は、直ちに音声コンテンツの送信を行う。ステップS1145実行前にクライアント装置12のユーザが既に呈示距離範囲内にいるという状況を回避するため、候補検索部1142は、登録位置と現在位置との距離が、想定される呈示距離よりも短くならないように、再生時間クラス1のように再生時間の長い音声コンテンツは、登録位置と現在位置との距離が呈示距離よりも十分長く取れている場合に優先して候補として取得することが望ましい。
【0031】
次に、
図6、
図7、
図8を参照してクライアント装置12の処理について説明する。
図6は、本実施例のクライアント装置12の構成を示すブロック図である。
図7は、本実施例のクライアント装置12の送信動作を示すフローチャートである。
図8は、本実施例のクライアント装置12の受信動作を示すフローチャートである。
図6に示すように、本実施例のクライアント装置12は、現在位置取得部121と、ユーザ情報取得部122と、データ送信部123と、音声コンテンツ受信部124と、音声コンテンツ再生部125を含む。
【0032】
現在位置取得部121は、一定時間経過ごとに現在位置情報を取得する(S121)。例えば、現在位置取得部121は、一定時間ごとにクライアント装置12の現在位置をGPSにより測定して取得する。現在位置取得部121は、クライアント装置12のユーザが前述のアプリケーションを立ち上げている限り本処理を実行し続ける。クライアント装置12の位置情報を緯度・経度としてサーバ装置11に情報提供できるものであれば、測定手段はGPSに限定されない。例えば現在位置取得部121は、クライアント装置12と無線ネットワークで通信する複数の基地局からの電波強度をもとに位置情報を判定しても良い。
【0033】
ユーザ情報取得部122は、クライアント装置12の識別情報を取得する(S122)。ステップS122は、クライアント装置12のユーザが初めて前述のアプリケーションを立ち上げたとき、及びクライアント装置12のユーザが情報を更新した時のみ行われる。
【0034】
データ送信部123は、現在位置情報、クライアント装置12の識別情報をサーバ装置11に送信する(S123)。クライアント装置12の識別情報は、サーバ装置11にクライアント装置12を識別させるために用いられる。
【0035】
次に、クライアント装置12がサーバ装置11から選択音声コンテンツを受信した後の処理を説明する。音声コンテンツ受信部124は、サーバ装置11から選択音声コンテンツを受信する(S124)。
【0036】
音声コンテンツ再生部125は、受信した選択音声コンテンツを再生する(S125)。
【実施例2】
【0037】
以下、
図9、
図10、
図11を参照して、本発明の実施例2の音声コンテンツ提供システムについて説明する。
図9は、本実施例の音声コンテンツ提供システム2の構成を示すブロック図である。
図10は、本実施例のサーバ装置21の構成を示すブロック図である。
図11は、本実施例のサーバ装置21の動作を示すフローチャートである。
図9に示すように、本実施例の音声コンテンツ提供システム2は、サーバ装置21と、クライアント装置12と、提供者装置13とを含む。サーバ装置21と、クライアント装置12と、提供者装置13はネットワーク14を介して通信可能である。クライアント装置12と、提供者装置13は実施例1と同じであるため説明を略す。
【0038】
図10に示すように、本実施例のサーバ装置21は、音声合成部111と、音声合成用データ記憶部1111と、再生時間取得部112と、対応テーブル作成部213と、コンテンツ記憶部2131と、選択コンテンツ送信部214と、音声再合成部215を含む。音声合成部111と、音声合成用データ記憶部1111と、再生時間取得部112については、実施例1と同じであるから説明を略す。 まずステップS111、S112が実施例1と同様に実行され、音声コンテンツ、再生時間情報が取得される。本実施例においてはステップS111実行時に生成された音声コンテンツは、ステップS112において再生時間情報の取得が実行された後、一旦破棄されるものとする。このように、音声コンテンツをサーバ装置21内に蓄積しない構成とすることで、サーバ装置21に必要な記憶容量を削減することができる。次に、対応テーブル作成部213は、テキストコンテンツと、対応する再生時間情報と、対応する登録位置情報を対応付けた対応テーブルを作成する(S213)。対応テーブルは、コンテンツ記憶部2131に記憶される。実施例1との相違点は、コンテンツ記憶部2131には、音声コンテンツが記憶されない点である。次に、選択コンテンツ送信部214は、クライアント装置12から受信した情報と対応テーブルに基づいて、テキストコンテンツのうち何れかを選択する(S214A)。選択の方法は、実施例1(S1141〜S1143)と同様である。音声再合成部215は、選択されたテキストコンテンツ(以下、選択テキストコンテンツという)の合成音声(選択音声コンテンツ)を生成する(S215)。選択コンテンツ送信部214は、生成された選択音声コンテンツをクライアント装置12に送信する(S214B)。送信のタイミングは実施例1(S1144、S1145)と同様である。
【0039】
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【0040】
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【0041】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【0042】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【0043】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
【0044】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。