(57)【特許請求の範囲】
【請求項１】
音声ファイルを要求する要求端末と、音声ファイルを生成する音声ファイル生成装置とを含む情報処理システムであって、
前記要求端末は、
構造化文書の中から、被読上げデータを抽出する抽出手段と、
前記抽出手段により抽出された被読上げデータを、被読上げデータそれぞれに関連付けられたタグに対応する順序で前記音声ファイル生成装置に送信する送信手段と
を含み、
前記音声ファイル生成装置は、前記送信手段から受信した順序で、受信した被読上げデータを音声データに変換し、
プログラムファイルを要求するためのプログラム要求情報と、少なくとも読上げ範囲及び読上げ順序を指定するタグとが含まれた構造化文書を前記要求端末に提供する文書提供装置
をさらに含み、
前記要求端末は、構造化文書に含まれたプログラム要求情報を用いて、既定のプログラムファイルを取得し、
前記抽出手段は、取得された前記プログラムファイルを実行することにより、構造化文書に含まれるタグに従って、被読上げデータを抽出し、
前記送信手段は、取得された前記プログラムファイルを実行することにより、抽出された被読上げデータをタグに従って配列し、配列された被読上げデータを送信する
情報処理システム。
【請求項２】
前記音声ファイル生成装置は、変換された音声データを、変換された順序でストリーミング配信する
請求項１に記載の情報処理システム。
【請求項３】
前記文書提供装置は、音声データを配信するタイミングを指定するタイミング指定情報がさらに含まれた構造化文書を提供し、
前記音声ファイル生成装置は、前記タイミング指定情報により指定されたタイミングで、各被読上げデータに対応する音声データを前記要求端末に配信する
請求項１に記載の情報処理システム。
【請求項４】
文書提供装置が、要求端末に構造化文書を提供するステップと、
前記要求端末が、構造化文書に含まれたプログラム要求情報を用いて、既定のプログラムファイルを取得するステップと、
前記要求端末が、取得されたプログラムファイルを実行することにより、構造化文書に含まれるタグに従って、構造化文書の中から、被読上げデータを抽出するステップと、
前記要求端末が、取得されたプログラムファイルを実行することにより、抽出された被読上げデータを、被読上げデータそれぞれに関連付けられたタグに対応する順序で前記音声ファイル生成装置に送信するステップと、
音声ファイル生成装置が、被読上げデータを受信した順序で、受信した被読上げデータを音声データに変換する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムに関する。
【背景技術】
【０００２】
例えば、特許文献１には、音声プロキシサーバを用いて、ＷＷＷの情報に含まれるテキストなどを読み上げる方法が開示されている。
【特許文献１】特開平１１−１１０１８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、上述した背景からなされたものであり、より利便性の高い読上げサービスを提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するために、本発明にかかる情報処理システムは、音声ファイルを要求する要求端末と、音声ファイルを生成する音声ファイル生成装置とを含む情報処理システムであって、前記要求端末は、構造化文書の中から、被読上げデータを抽出する抽出手段と、前記抽出手段により抽出された被読上げデータを、被読上げデータそれぞれに関連付けられたタグに対応する順序で前記音声ファイル生成装置に送信する送信手段とを含み、前記音声ファイル生成装置は、前記送信手段から受信した順序で、受信した被読上げデータを音声データに変換する。
【０００５】
好適には、プログラムファイルを要求するためのプログラム要求情報と、少なくとも読上げ範囲及び読上げ順序を指定するタグとが含まれた構造化文書を前記要求端末に提供する文書提供装置をさらに含み、前記要求端末は、構造化文書に含まれたプログラム要求情報を用いて、既定のプログラムファイルを取得し、前記抽出手段は、取得された前記プログラムファイルを実行することにより、構造化文書に含まれるタグに従って、被読上げデータを抽出し、前記送信手段は、取得された前記プログラムファイルを実行することにより、抽出された被読上げデータをタグに従って配列し、配列された被読上げデータを送信する。
【０００６】
好適には、前記音声ファイル生成装置は、変換された音声データを、変換された順序でストリーミング配信する。
【０００７】
好適には、前記文書提供装置は、音声データを配信するタイミングを指定するタイミング指定情報がさらに含まれた構造化文書を提供し、前記音声ファイル生成装置は、前記タイミング指定情報により指定されたタイミングで、各被読上げデータに対応する音声データを前記要求端末に配信する。
【０００８】
また、本発明にかかるプログラムは、音声ファイルの要求操作を受け付けるステップと、前記要求操作に応じて、構造化文書に含まれるタグに従って、被読上げデータを抽出するステップと、抽出された被読上げデータを、被読上げデータに関連付けられたタグに対応する順序で送信するステップとをコンピュータに実行させる。
【発明の効果】
【０００９】
本発明の情報処理システムによれば、読上げサービスの利便性が向上する。
【発明を実施するための最良の形態】
【００１０】
図１は、本実施形態における情報処理システム１の全体構成を例示する図である。
図１に例示するように、情報処理システム１は、インターネットなどのネットワークに接続されたＷｅｂサーバ１０と読上げサーバ２０を含む。
Ｗｅｂサーバ１０は、コンピュータ装置であり、ＨＴＭＬファイルなどの提供を行う。
読上げサーバ２０は、コンピュータ装置であり、音声データの提供を行う。
ユーザ端末３０は、コンピュータ装置であり、インターネットを介して、Ｗｅｂサーバ１０からＨＴＭＬファイルを取得してウェブブラウザ等で表示し、表示された文字列などを読上げサーバ２０に送信して、送信した文字列に対応する音声データを読上げサーバ２０から取得する。
【００１１】
図２は、Ｗｅｂサーバ１０から提供されるデータファイルを例示する図である。
図２（Ａ）に例示するように、Ｗｅｂサーバ１０は、ユーザ端末３０からの要求に応じて、構造化文書ファイル５０が含まれたデータファイル５をユーザ端末３０に送信する。構造化文書ファイル５０は、例えば、ＨＴＭＬ又はＸＭＬなどのマークアップ言語で記述されたデータファイルである。本例の構造化文書ファイル５０は、図２（Ｂ）に例示するように、複数の文字列群（記事）を表示するためのタグと、図２（Ａ）に例示するスクリプト要求タグ５０２及び範囲順序指定情報５０４を含む。
スクリプト要求タグ５０２とは、図３に例示するスクリプトファイル６０を要求するための情報であり、スクリプトファイルの要求先特定情報（本例では、読上げサーバ２０のＵＲＬ）と、認証情報とが含まれている。
範囲順序指定情報５０４とは、構造化文書ファイル５０に含まれる情報の読上げを制御する情報であり、例えば、読上げの対象となる範囲を指定する情報と、読上げの順序を指定する情報とが含まれている。
ユーザ端末３０は、データファイル５をＷｅｂサーバ１０から受信すると、受信した構造化文書ファイル５０をウェブブラウザで表示する。本例では、「記事＃１」〜「記事＃３」がユーザ端末３０に表示される。
【００１２】
図３は、読上げサーバ２０（図１）により提供され、ユーザ端末３０で実行されるスクリプトファイル６０の機能構成を例示する図である。
図３に例示するように、スクリプトファイル６０は、要求受付部６００、抽出部６１０、順序決定部６２０、通信部６３０、及び出力制御部６４０を有する。
スクリプトファイル６０は、例えば、ユーザ端末３０のウェブブラウザ上で実行される。
【００１３】
スクリプトファイル６０において、要求受付部６００は、ユーザの操作を監視して、読上げの要求を受け付けると、読上げ処理の開始を他の構成に指示する。
本例の要求受付部６００は、ユーザ端末３０のウェブブラウザ上に、読上げボタン８２０（図６に例示）を表示して、この読上げボタン８２０がクリックされると、読上げ処理の開始を抽出部６１０に出力する。
【００１４】
抽出部６１０は、構造化文書ファイル５０（図２）の中から、被読上げデータを抽出する。被読上げデータとは、読上げサーバ２０によって音声データに変換されるデータであり、例えば、テキストデータなどである。
本例の抽出部６１０は、範囲順序指定情報５０４と、構造化文書ファイル５０に含まれているタグとに基づいて、抽出すべきテキストデータの範囲を特定し、特定された範囲内のテキストデータを１つのまとまり（ブロック）として抽出し、抽出されたブロックを通信部６３０に出力する。また、各ブロックのタグは、順序決定部６２０に出力される。
【００１５】
順序決定部６２０は、抽出部６１０により抽出された被読上げデータの送信順序を、被読上げデータのタグに基づいて決定する。
本例の順序決定部６２０は、範囲順序指定情報５０４と、抽出部６１０から入力された各ブロックのタグとに基づいて、各ブロックの送信順序を決定し、決定された送信順序を通信部６３０に通知する。
【００１６】
通信部６３０は、Ａｊａｘ（Asynchronous JavaScript（登録商標） + XML）などの通信機能を用いて読上げサーバ２０と通信を行い、被読上げデータの送信、及び、音声データの受信を行う。
本例の通信部６３０は、抽出部６１０により抽出された被読上げデータ（ブロック）を、順序決定部６２０により決定された送信順序で読上げサーバ２０に送信する。
また、通信部６３０は、読上げサーバ２０から受信した音声データを出力制御部６４０に出力する。
【００１７】
出力制御部６４０は、ユーザ端末３０に設けられた音声出力モジュールを制御して、読上げサーバ２０から受信した音声データを音声にして出力させる。
【００１８】
図４（Ａ）は、範囲順序指定情報５０４を例示し、図４（Ｂ）は、ブロックの並べ替えを例示する図である。
図４（Ａ）に例示するように、本例の範囲順序指定情報５０４には、抽出すべき範囲のタグが送信順序に配列されている。すなわち、本例では、「タグ＃２」、「タグ＃１」、「タグ＃３」の順序で配列されているため、図２（Ｂ）の構造化文書ファイル５０の中から、「タグ＃２」で囲まれた「記事＃２」、「タグ＃１」で囲まれた「記事＃１」、「タグ＃３」で囲まれた「記事＃３」が抽出され、読上げサーバ２０に送信される。
これにより、図４（Ｂ）に例示するように、各記事が並べ替えられた状態で送信される。この送信順序は、読上げの順序となる。
【００１９】
図５は、情報処理システム１の全体動作（Ｓ１０）のシーケンス図である。なお、本シーケンスは、動作の一例であり、ユーザの操作などによって変更されうる。
図５に例示するように、ステップ１００（Ｓ１００）において、Ｗｅｂサーバ１０は、ユーザ端末３０からのウェブアクセスに応じて、図２に例示するデータファイル５（ＨＴＭＬファイル）をユーザ端末３０に送信する。
ステップ１０５（Ｓ１０５）において、ユーザ端末３０は、ウェブブラウザ上で、Ｗｅｂサーバ１０から受信したＨＴＭＬファイルを表示する。ブラウザ画面８００には、図６に例示するように、構造化文書ファイル５０に含まれている「記事＃１」〜「記事＃３」が表示され、さらに、読上げボタン８２０が表示される。
【００２０】
ステップ１１０（Ｓ１１０）において、ユーザ端末３０は、データファイル５（ＨＴＭＬファイル）に含まれているスクリプト要求タグ５０２を用いて、読上げサーバ２０に対してスクリプトファイル６０の要求を行う。ユーザ端末３０は、スクリプトファイル６０の要求を行う時に、スクリプト要求タグ５０２に含まれている認証情報を読上げサーバ２０に送信する。
【００２１】
ステップ１１５（Ｓ１１５）において、読上げサーバ２０は、ユーザ端末３０からスクリプトファイル６０の要求を受信すると、認証情報に基づいて認証を行う。
ステップ１２０（Ｓ１２０）において、読上げサーバ２０は、認証結果に応じて、スクリプトファイル６０をユーザ端末３０に送信する。ユーザ端末３０は、スクリプトファイル６０を受信して起動させると、読上げボタン８２０を操作可能にする。
【００２２】
ステップ１２５（Ｓ１２５）において、ユーザ端末３０は、ユーザが読上げボタン８２０をクリックすると、以下の読上げ処理を開始する。
ステップ１３０（Ｓ１３０）において、ユーザ端末３０は、範囲順序指定情報５０４と、構造化文書ファイル５０に含まれるタグとに基づいて、読上げ部分（ブロック）を構造化文書ファイル５０から抽出する。
ステップ１３５（Ｓ１３５）において、ユーザ端末３０は、抽出された読上げ部分（ブロック）を範囲順序指定情報５０４に従って並び替える。
ステップ１４０（Ｓ１４０）において、ユーザ端末３０は、並び替えられた読上げ部分（ブロック）を読上げサーバ２０に送信する。
【００２３】
ステップ１４５（Ｓ１４５）において、読上げサーバ２０は、ユーザ端末３０から受信した読上げ部分（ブロック）を順に音声データに変換する。
ステップ１５０（Ｓ１５０）において、読上げサーバ２０は、ユーザ端末３０までの帯域を判定し、判定された帯域と、認証結果とに応じて、音声データの送信ビットレートを決定する。
ステップ１５５（Ｓ１５５）において、読上げサーバ２０は、決定された送信ビットレートで、音声データをユーザ端末３０にストリーミング配信する。
【００２４】
ステップ１６０（Ｓ１６０）において、ユーザ端末３０は、読上げサーバ２０から配信された音声データを音声として出力する。これにより、図６の記事が読み上げられる。
【００２５】
図７は、ユーザ端末３０におけるブラウジング処理（Ｓ２０）を説明するフローチャートである。
図７に例示するように、ステップ２００（Ｓ２００）において、ユーザ端末３０は、ユーザの操作に応じて、ウェブブラウザを起動させてＷｅｂサーバ１０にアクセスして、ＨＴＭＬファイル（データファイル５）を受信する。
ステップ２１０（Ｓ２１０）において、ユーザ端末３０は、図６に例示するように、ウェブブラウザで、受信したＨＴＭＬファイルを表示する。
【００２６】
ステップ２２０（Ｓ２２０）において、ユーザ端末３０は、ＨＴＭＬファイルに含まれるスクリプト要求タグ５０２（図２）に従って、読上げサーバ２０にスクリプトファイル６０を要求する。
ユーザ端末３０は、読上げサーバ２０からスクリプトファイル６０を受信すると、スクリプトファイル６０をウェブブラウザ上で起動させ、スクリプトファイル６０の要求受付部６００（図３）は、読上げボタン８２０（図６）を操作可能（アクティブ）にする。
【００２７】
ステップ２３０（Ｓ２３０）において、ユーザ端末３０は、読上げボタン８２０（図６）がクリックされた場合には、Ｓ２４０の処理に移行し、読上げボタン８２０がクリックされなかった場合には、ＨＴＭＬファイルの表示のみで処理を終了する。
【００２８】
ステップ２４０（Ｓ２４０）において、スクリプトファイル６０の要求受付部６００は、読上げボタン８２０のクリックを検知すると、抽出部６１０に対して読上げ処理の開始を指示する。
抽出部６１０は、範囲順序指定情報５０４で指定されたタグを特定し、ＨＴＭＬファイルの中から、特定されたタグに囲まれたテキストデータをブロックとして抽出する。
【００２９】
ステップ２５０（Ｓ２５０）において、順序決定部６２０は、範囲順序指定情報５０４に基づいて、送信順序を決定し、決定された送信順序を通信部６３０に出力する。
通信部６３０は、順序決定部６２０により決定された送信順序で、抽出部６１０により抽出されたブロックを並べ替える。
ステップ２６０（Ｓ２６０）において、通信部６３０は、並べ替えたブロックを順に読上げサーバ２０に送信する。
【００３０】
ステップ２７０（Ｓ２７０）において、通信部６３０は、読上げサーバ２０から音声データを受信すると、受信した音声データを出力制御部６４０に出力する。
ステップ２８０（Ｓ２８０）において、出力制御部６４０は、ユーザ端末３０の音声モジュールを制御して、通信部６３０から入力された音声データを音声として出力させる。
【００３１】
以上説明したように、本実施形態の情報処理システム１は、文書ファイルの読上げサービスを提供することができる。
【００３２】
［変形例］
次に、上記実施形態の変形例を説明する。
上記実施形態では、読上げボタンのクリックをトリガーとして、被読上げデータを音声データに変換する処理、及び、音声データの配信処理が行われたが、これに限定されるものではなく、例えば、音声データの配信処理を別のトリガーで行ってもよい。
そこで、本変形例では、音声データの配信処理について別個のトリガーを設定する形態を説明する。
【００３３】
図８は、出力トリガ情報５０６が含まれたデータファイル５を例示する図である。
図８（Ａ）に例示するように、本変形例のデータファイル５には、図２のデータファイルに、出力トリガ情報５０６が追加されている。
出力トリガ情報５０６は、図８（Ｂ）に例示するように、音声出力のタイミングを指定する情報をタグに対応付けている。音声出力のタイミングとは、例えば、読上げサーバ２０が音声データを配信するタイミングであり、例えば、ウェブブラウザの所定領域が操作されたタイミング（本例では、「領域Ａ」がポイントされたタイミング）、直前の音声配信が終了してから所定期間が経過したタイミング（本例では、タグ＃２で囲まれた領域が読み上げられた時から、５０秒経過したタイミング）などである。
本変形例の通信部６３０は、図８（Ｂ）の出力トリガ情報５０６に示された順序で、これらのトリガーを検知すると、トリガーに対応付けられたタグに囲まれた被読上げデータの音声データを読上げサーバ２０に要求する。
【００３４】
図９は、本変形例におけるブラウジング処理（Ｓ３０）を説明するフローチャートである。
図９に例示するように、ステップ３００（Ｓ３００）において、ユーザ端末３０は、ユーザの操作に応じて、ウェブブラウザを起動させてＷｅｂサーバ１０にアクセスして、ＨＴＭＬファイル（図８のデータファイル５）を受信する。データファイル５には、スクリプト要求タグ５０２及び範囲順序指定情報５０４に加えて、出力トリガ情報５０６が含まれている。
ステップ３１０（Ｓ３１０）において、ユーザ端末３０は、ウェブブラウザで、受信したＨＴＭＬファイルを表示する。
【００３５】
ステップ３２０（Ｓ３２０）において、ユーザ端末３０は、ＨＴＭＬファイルに含まれるスクリプト要求タグ５０２（図８）に従って、読上げサーバ２０にスクリプトファイル６０を要求する。
ステップ３３０（Ｓ３３０）において、ユーザ端末３０は、読上げサーバ２０からスクリプトファイル６０を受信すると、スクリプトファイル６０をウェブブラウザ上で起動させる。
スクリプトファイル６０の要求受付部６００は、起動後すぐに、読上げ処理の開始を指示する。
抽出部６１０は、範囲順序指定情報５０４で指定されたタグを特定し、ＨＴＭＬファイルの中から、特定されたタグに囲まれたテキストデータをブロックとして抽出する。
【００３６】
ステップ３４０（Ｓ３４０）において、順序決定部６２０は、範囲順序指定情報５０４に基づいて、送信順序を決定し、決定された送信順序を通信部６３０に出力する。
通信部６３０は、順序決定部６２０により決定された送信順序で、抽出部６１０により抽出されたブロックを並べ替える。
ステップ３５０（Ｓ３５０）において、通信部６３０は、並べ替えたブロックを順に読上げサーバ２０に送信する。読上げサーバ２０では、通信部６３０から受信したブロックが順に音声データに変換される。
【００３７】
ステップ３６０（Ｓ３６０）において、通信部６３０は、出力トリガ情報５０６に基づいて、音声出力のトリガーが検知されたか否かを判断する。なお、音声出力のトリガーは、出力トリガ情報５０６により指定されたものであるが、最初のトリガーについては、読上げボタン８２０のクリックであってもよい。
スクリプトファイル６０は、トリガーが検知されるまで待機し、トリガーが検知されるとＳ３７０の処理に移行する。
【００３８】
ステップ３７０（Ｓ３７０）において、通信部６３０は、検知されたトリガーに対応するタグを出力トリガ情報５０６で特定し、特定されたタグで囲まれた被読上げデータに対応する音声データを読上げサーバ２０に要求する。
ステップ３８０（Ｓ３８０）において、通信部６３０は、読上げサーバ２０から音声データを受信すると、受信した音声データを出力制御部６４０に出力する。出力制御部６４０は、ユーザ端末３０の音声モジュールを制御して、通信部６３０から入力された音声データを音声として出力させる。
【００３９】
ステップ３９０（Ｓ３９０）において、通信部６３０は、出力トリガ情報５０６により指定されたトリガーが全て検知されたか否かを判断し、全トリガーが検知された場合に、読上げ処理を終了し、検知されていないトリガーが存在する場合に、Ｓ３６０の処理に戻って、次のトリガーが検知されるまで待機する。
【００４０】
このように、本変形例の情報処理システム１は、ブロック（被読上げデータのかたまり）それぞれについて音声出力のトリガーを設定することにより、各トリガーを検知したタイミングで音声出力を行うことができる。
【図面の簡単な説明】
【００４１】
【図１】本実施形態における情報処理システム１の全体構成を例示する図である。
【図２】Ｗｅｂサーバ１０から提供されるデータファイルを例示する図である。
【図３】ユーザ端末３０で実行されるスクリプトファイル６０の機能構成を例示する図である。
【図４】（Ａ）は、範囲順序指定情報５０４を例示し、（Ｂ）は、ブロックの並べ替えを例示する図である。
【図５】情報処理システム１の全体動作（Ｓ１０）のシーケンス図である。
【図６】ユーザ端末３０に表示されるブラウザ画面８００を例示する図である。
【図７】ユーザ端末３０におけるブラウジング処理（Ｓ２０）を説明するフローチャートである。
【図８】出力トリガ情報５０６が含まれたデータファイル５を例示する図である。
【図９】変形例におけるブラウジング処理（Ｓ３０）を説明するフローチャートである。
【符号の説明】
【００４２】
１・・・情報処理システム
１０・・・Ｗｅｂサーバ
２０・・・読上げサーバ
３０・・・ユーザ端末
５０・・・構造化文書ファイル
６０・・・スクリプトファイル
【図１】
0005164251.tif 000002
【図２】
0005164251.tif 000003
【図３】
0005164251.tif 000004
【図４】
0005164251.tif 000005
【図５】
0005164251.tif 000006
【図６】
0005164251.tif 000007
【図７】
0005164251.tif 000008
【図８】
0005164251.tif 000009
【図９】
0005164251.tif 000010