説明

アプリケーションに対するマルチモーダルアクセスを可能にするフレームワーク

【課題】オーディオ対応デバイスをスピーチ駆動アプリケーションにリンクさせる方法および装置を提供する。
【解決手段】一実施形態において、これは、オーディオ対応デバイス独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、デジタル化スピーチオーディオを受け取り、送出する音声フレームワーク110を使用することにより達成される。音声フレームワーク110は、受け取ったデジタル化スピーチオーディオをコンピュータ読取可能テキストに変換する。さらに音声フレームワーク110は、スピーチ駆動アプリケーション独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、コンピュータ読取可能テキストを受け取り、スピーチ駆動アプリケーションに送出する。音声フレームワーク110は、次に、コンピュータ読取可能テキストを変換する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、包括的にはスピーチ対応(speech enabled)コンピューティングに関し、特に、スピーチ対応コンピューティングのための音声フレームワークに関する。
【背景技術】
【0002】
今日のますます競争的になってきているビジネス環境において、会社は、消費者、従業員および取引先と連絡を取り続けるためのより効率的かつ有効な方法を見つけなければならない。競争力を保つために、会社は、企業資源、取引データおよび他の情報に対し容易にどこからでもアクセスすることができるようにしなければならない。かかるサービスを提供するために、現行のインフラストラクチャに統合され、柔軟性およびスケーラビリティを維持し、かつオープン業界ソフトウェア標準を使用する音声ソリューションが必要とされている。
【0003】
音声ソリューションに対する(人々と対話するための)現行の音声フレームワークは、電話、PDA(携帯情報端末)、ラップトップおよびデスクトップ等のオーディオ対応デバイスに組み込まれたオーディオ入力デバイス(マイクロフォン)およびオーディオ出力デバイス(スピーカ)に依存するスピーチ駆動アプリケーションを使用する。オーディオ入力デバイスから受け取られるオーディオ入力データ(発話語(spoken word)データ)は、オーディオ回路を介してスピーチ認識エンジンに提供することができ、そこでコンピュータ認識可能テキストに変換される。そして、変換されたコンピュータ認識可能テキストは、一般に、電気通信アプリケーション、カスタマイズアプリケーション、ポータル、ウェブアプリケーション、CRMアプリケーション(顧客関係管理アプリケーション)、知識管理システムおよびさまざまなデータベース等、さまざまなスピーチ駆動ビジネスアプリケーションに送信される。オーディオ入力デバイスおよびオーディオ出力デバイスを有する各オーディオ対応デバイスは、それら自体の固有のスピーチ認識エンジンが、オーディオ対応デバイス依存パラメータに起因して、オーディオ回路を介してオーディオ入力データおよびオーディオ出力データをスピーチ駆動アプリケーションに提供することを必要とする場合がある。
【0004】
同様に、現行の音声アプリケーションは、スピーチ駆動アプリケーションにおいて発生するコンピュータ認識可能テキストをテキスト・スピーチ変換(TTS)エンジンに送出し、TTSエンジンは、オーディオ回路を介してオーディオ出力デバイスに提供されるオーディオ出力データに変換する。スピーチ駆動アプリケーションとオーディオ対応デバイスとの間におけるコンピュータ認識可能テキストのかかる転送に適応するために、TTSエンジンは、メディアトランスポートプロトコルおよびメディアトランスポート特定パラメータ、たとえばフレームサイズおよびパケット遅延等のアプリケーション依存パラメータのために、特有でなければならない場合がある。
【0005】
さらに、スピーチ認識およびTTSエンジンは、SAPI(スピーチアプリケーションプログラミングインタフェース)、VoiceXML(音声拡張マークアップ言語)および他のかかるカスタムソリューション等、進化しつつあるスピーチアプリケーションプラットフォームに準拠していなければならない場合もある。このため、スピーチ認識およびTTSエンジンは、スピーチアプリケーションプラットフォーム依存パラメータのために特有でなければならない場合もある。
【発明の開示】
【発明が解決しようとする課題】
【0006】
上述したデバイス、アプリケーションおよびプラットフォーム依存パラメータのために、スピーチ認識エンジンおよびTTSエンジンを含む現行の音声フレームワークでは、オーディオ対応デバイス、スピーチアプリケーションプラットフォームおよびスピーチ駆動アプリケーションにおける動的変化に適応するために広範囲なリアルタイムの変更が必要な場合がある。音声フレームワークに対するかかるリアルタイムの変更は、非常に費用および時間がかかる可能性がある。さらに、上述した依存パラメータのために、現行の音声フレームワークは柔軟性がなく、一般にスケーラブルでない可能性がある。さらに上述した依存パラメータために、現行の音声フレームワークは、オーディオ対応デバイス、スピーチ駆動アプリケーション、スピーチエンジンおよびスピーチアプリケーションプラットフォーム依存のままである。さらに、現行のソリューションは、計算集約的であって、特別なハードウェアインフラストラクチャが必要である場合があり、それは非常に費用がかかる可能性がある。
【0007】
したがって、既存のウェブおよびデータ資源を複製しないが利用する方法で音声ソリューションを提供することができ、現行のインフラストラクチャに統合され、柔軟性およびスケーラビリティを維持し、プラットフォーム独立であり、オープン業界ソフトウェア標準を使用する販売、保険、銀行業務、小売りおよび健康管理等の垂直アプリケーションにわたって容易に配備することができる、費用効率のよい音声フレームワークが必要とされている。
【課題を解決するための手段】
【0008】
本発明は、オーディオ対応デバイスをスピーチ駆動アプリケーションにリンクさせる音声フレームワークを提供する。一例としての実施形態では、本主題の音声フレームワークは、オーディオ対応デバイスアダプタと、スピーチエンジンハブと、スピーチ駆動アプリケーションアダプタと、を有する。この例としての実施形態では、オーディオ対応デバイスアダプタは、オーディオ対応デバイス独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、デジタル化スピーチオーディオを受け取りスピーチエンジンハブに送出する。そして、スピーチエンジンは、受け取ったデジタル化オーディオスピーチをコンピュータ読取可能テキストに変換する。実施形態によっては、スピーチエンジンを、受け取ったデジタル化オーディオスピーチをコンピュータ読取可能データに変換するように想定することができる。そして、スピーチ駆動アプリケーションアダプタは、スピーチ駆動アプリケーション独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、コンピュータ読取可能テキストを受け取りスピーチ駆動アプリケーションに送出する。
【0009】
この一例としての実施形態においてさらに、スピーチ駆動アプリケーションアダプタは、スピーチ駆動アプリケーション独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、コンピュータ読取可能テキストをスピーチ駆動アプリケーションから受け取り送出する。そして、スピーチエンジンハブは、コンピュータ読取可能テキストをデジタル化オーディオスピーチに変換する。そして、オーディオ対応デバイスアダプタは、オーディオ対応デバイス独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、デジタル化スピーチオーディオを受け取りオーディオ対応デバイスに送出する。
【発明を実施するための最良の形態】
【0010】
本主題は、スピーチエンジンハブを介してスピーチ駆動アプリケーションを1つまたは複数のオーディオ対応デバイスにリンクする音声フレームワークを提供する。さらに、本技法は、オーディオデバイスと、スピーチ駆動アプリケーションと、スピーチ対応アプリケーション、すなわち「話し聞く」能力を有し人間と対話することができるアプリケーションを構築するために使用することができるスピーチアプリケーションプラットフォーム独立音声フレームワークと、を提供する。さらに、音声フレームワークは、垂直またはさまざまなビジネスアプリケーションにわたって実施することができるように柔軟性を提供する。一例としての実施形態では、これを、一般に音声アプリケーションにみられる基本的なコンポーネントを使用することによって達成する。音声フレームワークは、オーディオ対応デバイスと、スピーチ駆動アプリケーションと、音声アプリケーションに対し費用効率がよくかつ配備がより容易なソリューションを提供するスピーチアプリケーションプラットフォーム独立コンポーネントと、を含む。
【0011】
本発明のさまざまな実施形態の以下の詳細な説明では、本明細書の一部を形成し、本発明を実施することができる特定の実施形態を例として示す添付図面を参照する。これらの実施形態について、当業者が本発明を実施することができるほど十分詳細に説明する。また、他の実施形態を利用してもよく、本発明の範囲から逸脱することなく変更を行ってもよい、ということを理解すべきである。したがって、以下の詳細な説明は、限定する意味でとられるべきではなく、本発明の範囲は添付の特許請求の範囲によってのみ定義される。
【0012】
図1は、本発明のさまざまな実施形態による、オーディオ対応デバイスをスピーチ駆動アプリケーションにリンクする動作を示す音声フレームワークのブロック図100である。図1に示すブロック図100は、1つまたは複数のオーディオ対応デバイス105と、音声フレームワーク110と、スピーチ駆動アプリケーションモジュール150と、を示す。図1に示すように、1つまたは複数のオーディオ対応デバイス105は、コンピュータネットワーク125を介して音声フレームワーク110に通信可能に結合される。また、図1には、コンピュータネットワーク125を介して音声フレームワーク110に通信可能に結合されたスピーチ駆動アプリケーションモジュール150も示す。
【0013】
さらに図1に示すように、スピーチ駆動アプリケーションモジュール150は、電気通信アプリケーション、カスタマイズアプリケーション、ポータル、ウェブアプリケーション、CRMシステムおよび知識管理システム等の1つまたは複数のスピーチ駆動アプリケーションを含む。さらに図1に示すように、音声フレームワーク110は、オーディオ対応デバイスアダプタ120と、スピーチエンジンハブ130と、マークアップインタプリタモジュール160と、セキュリティモジュール162と、スピーチ駆動アプリケーションアダプタ140と、を有する。また、図1には、オーディオ対応デバイスアダプタ120と、スピーチエンジンハブ130と、マークアップインタプリタモジュール160と、セキュリティモジュール162と、スピーチ駆動アプリケーションアダプタ140と、に通信可能に結合されたアプリケーション管理サービスモジュール166も示されている。さらに、図1に示すように、スピーチエンジンハブ130は、スピーチ認識エンジン132とテキスト・スピーチ変換(TTS)エンジン134と、を有する。
【0014】
動作時、オーディオ対応デバイスアダプタ120は、オーディオ対応デバイス独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、1つまたは複数のオーディオ対応デバイス105からデジタル化スピーチオーディオを受け取る。実施形態によっては、オーディオ対応デバイスアダプタ120は、ネットワーク125を介して1つまたは複数のオーディオ対応デバイス105からデジタル化スピーチオーディオを受信する。1つまたは複数のオーディオ対応デバイス105は、電話、携帯電話、PDA(携帯情報端末)、ラップトップコンピュータ、スマートフォン、タブレットパーソナルコンピュータ(タブレットPC)およびデスクトップコンピュータ等のデバイスを含むことができる。オーディオ対応デバイスアダプタ120には、電話アダプタ、PDAアダプタ、ウェブアダプタ、ラップトップコンピュータアダプタ、スマートフォンアダプタ、タブレットPCアダプタ、VoIPアダプタ、DTMF(dual-tone-multi-frequency)アダプタ、組み込みシステムアダプタおよびデスクトップコンピュータアダプタ等の関連アダプタが含まれる。
【0015】
そして、スピーチエンジンハブ130は、オーディオ対応デバイスアダプタ120を介して1つまたは複数のオーディオ対応デバイス105からデジタル化スピーチオーディオを受け取り、そのデジタル化オーディオスピーチをコンピュータ読取可能テキストに変換する。実施形態によっては、スピーチ認識エンジン132は、受け取ったデジタル化オーディオスピーチをコンピュータ読取可能データに変換する。音声フレームワーク110で使用されるスピーチエンジンハブ130は汎用的であってもよく、概して任意のベンダのスピーチエンジンをサポートすることができる。さらに、スピーチエンジンハブ130は、音声フレームワーク110が音声フレームワーク110内の他のモジュールと対話するために必要なルーチンおよび本質的なアクティビティを実行するコンポーネントを有することができる。
【0016】
これらの実施形態では、スピーチエンジンハブ130は、スピーチ認識およびスピーチ合成動作を実行し、すなわち、発話語はコンピュータ読取可能テキストに変換され、コンピュータ読取可能テキストは音声フレームワーク110の要求に応じてデジタル化スピーチオーディオに変換される。スピーチエンジンハブ130は、システム管理者によってより容易に構成されるように設計される。スピーチエンジンハブ130のアーキテクチャは、音声認識の精度を自動的に向上させる能力を有することができる。これを、文法モジュールを使用することによって達成する。マークアップインタプリタモジュール160とともにスピーチエンジンハブ130は、SALT(音声アプリケーション言語タグ)およびVoiceXML等、マークアップ言語に対して必要なサポートを提供する。さらに、スピーチエンジンハブ130はまた、複数の言語を使用する能力を提供するようにほとんどの言語を翻訳する能力も有する。
【0017】
またこれらの実施形態では、スピーチエンジンハブ130は、スピーチエンジンハブ130の性能を向上させるために必要な微調整により、認識の精度を向上させる手段を提供する。スピーチエンジンハブ130はまた、規格の準拠を支援するSALTおよびVoiceXML等のさまざまな新生の音声マークアップ言語に対する事前に定義された文法および支援をロードするインタフェースも提供することができる。これを、言語トランスレータモジュール230(図2に示す)を使用して適当な言語アダプタを利用することにより達成する。
【0018】
さらにこれらの実施形態では、TTSエンジン134は、基礎となるスピーチ認識エンジンを抽象化し音声フレームワーク110に対し一様なインタフェースを提供する、スピーチ認識部136を含む。たとえば、スピーチ認識タスクを要求している発呼者が、基礎となるスピーチエンジンに気付かない場合がある。かかる場合、発呼者は、音声入力を図2に示すスピーチ認識部136に送出することができ、文字に置き換えられたテキストストリングを取得することができる。またこれらの実施形態では、TTSエンジン134は、基礎となるスピーチ合成エンジンを抽象化し音声フレームワーク110に対し一様なインタフェースを提供する、図2に示すスピーチ合成部138を有する。同様に、スピーチ合成タスクを要求している発呼者は、基礎となるスピーチエンジンに気付かない場合がある。かかる場合、発呼者は、テキストストリングを合成部に対する入力として送出し、スピーチストリームを取得することができる。
【0019】
そして、スピーチ駆動アプリケーションアダプタ140は、スピーチ駆動アプリケーション独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、スピーチエンジンハブ130からコンピュータ読取可能テキストを受け取り、そのコンピュータ読取可能テキストを、ネットワーク125を介してスピーチ駆動アプリケーションモジュール150に送信する。スピーチ駆動アプリケーションモジュール150は、電話アプリケーション、カスタマイズアプリケーション、ポータル、ウェブアプリケーション、CRMシステム、知識管理システム、対話スピーチ対応音声応答システム、マルチモーダルアクセス対応ポータル等、1つまたは複数の企業アプリケーションを含むことができる。スピーチ駆動アプリケーションアダプタ140は、ウェブ/HTML(ハイパーテキストマークアップ言語)アダプタ、データベースアダプタ、レガシアプリケーションアダプタ、ウェブサービスアダプタ等の関連するアダプタを含むことができる。
【0020】
ここで図2を参照すると、本発明のさまざまな実施形態による、図1に示す音声フレームワークの一例としての実施態様のブロック図200が示されている。図2に示すブロック図200は、ヘッドエンドサーバ212と、特権サーバ214と、構成マネージャ216と、ログマネージャ218と、警報マネージャ220と、スピーチエンジンハブ130と、マークアップインタプリタモジュール160と、データサーバ224と、機能ネゴシエータ222と、オーディオストリーマ226と、生オーディオアダプタ228と、言語トランスレータモジュール230と、スピーチ駆動アプリケーションアダプタ140と、を示す。
【0021】
図2に示すように、マークアップインタプリタモジュール160は、VoiceXMLインタプリタ252と、SALTインタプリタ254と、命令インタプリタ256と、を有する。さらに図2に示すように、スピーチエンジンハブ130は、スピーチ認識エンジン132と、TTSエンジン134と、スピーチレジスタ260と、を有する。また、図2に示すように、スピーチ駆動アプリケーションアダプタ140は、ウェブアダプタ、PDAアダプタ、DTMFアダプタ、VoIP(ボイスオーバインターネットプロトコル)アダプタおよび組み込みシステムアダプタ等のアダプタを有する。
【0022】
動作時、マークアップインタプリタモジュール160により、スピーチ駆動アプリケーションおよびオーディオ対応デバイス105は、VoiceXMLインタプリタ252、SALTインタプリタ254、命令インタプリタ256、およびオーディオデバイスが音声フレームワーク110と通信するのを可能にするのを促進することができる他のかかるプロプラエタリ命令インタプリタ等のインタプリタを使用して、業界準拠命令セットおよびマークアップ言語を介して音声フレームワーク110と通信することができる。
【0023】
実施形態によっては、スピーチレジスタ260は、特定のアプリケーション要求に基づいてスピーチエンジンハブ130を起動し構成することにより特定のスピーチエンジンサービスをロードする。スピーチレジスタ260は、スピーチ認識部136およびスピーチ合成部138に関する構成情報を保持し、音声フレームワーク110が、スピーチレジスタ260を使用して、アプリケーション要求に基づいてスピーチエンジン合成部と認識部とのうちのいずれをロードすべきかを判断することができる。たとえば、これらのバージョンの各々を含む新たなモジュールを、レジストリの情報を更新することによって音声フレームワーク110にプラグインすることができる。これらの実施形態では、音声フレームワーク110は、スピーチ合成部およびスピーチ認識部の複数のインスタンスをサポートすることができる。スピーチレジスタ260はまた、単層ファイルまたはデータベース等、複数の方法で構成情報を保持することも可能である。これらの実施形態では、ヘッドエンドサーバ212は、図2に示すようにスピーチ駆動アプリケーションアダプタ140を起動し管理する。
【0024】
実施形態によっては、構成マネージャ216は、スピーチ駆動アプリケーションアダプタ140に関連する構成情報、すなわち音声フレームワーク110のスピーチ駆動アプリケーション150に関連する構成情報を維持する。これらの実施形態では、構成マネージャ216は、音声フレームワーク110に関連するすべての構成情報のための中央リポジトリであり得る。構成マネージャ216は、音声フレームワーク110のモジュールの各々がどこにあるかと、それらがいかに構成されるかと、に関する情報を含む。これは、概して、構成マネージャ216における管理モジュールを使用して、いくつかのモジュールを音声フレームワーク110の一部としてセットアップし、かつ/または他のモジュールをオフにすることにより達成される。
【0025】
これらの実施形態では、構成マネージャ216は、管理モジュールが要求するようにデータの翻訳を管理する構成データ提示部を備える。構成マネージャ216はまた、音声フレームワーク110に対する構成情報を検索し更新するために使用することも可能である。さらにこれらの実施形態では、構成マネージャ216は、構成データ格納および検索を管理する構成データディスパッチャを有する。構成データディスパッチャは、音声フレームワーク110におけるアクティビティの残りから各データ格納および検索アクティビティを抽出する。さらに、構成データ提示部は、構成データディスパッチャと対話することにより、異なる構成情報格納アクティビティからデータを送出し取得する。さらにこれらの実施形態では、構成マネージャ216は、構成格納アクティビティの実際の実施態様を発行する構成データ発行部を有する。
【0026】
他の実施形態では、ログマネージャ218は、音声フレームワーク110の動作を追跡する。さらに、ログマネージャ218は、動作メッセージを追跡し、ログ記録された動作メッセージの報告を生成する。これらの実施形態では、ログマネージャ218は、概して音声フレームワーク110に対しロギング能力を提供する。ログマネージャ218は、XML準拠であってもよい。また、ログマネージャ218を、ログメッセージスキーマ、重大度、出力ストリーム等、さまざまなロギングパラメータに対して構成してもよい。
【0027】
実施形態によっては、ログマネージャ218は、シリアライズすることができる、XML準拠のメッセージオブジェクトモジュールを含む。メッセージオブジェクトモジュールは、メッセージの所有者、メッセージ送信者の名前、メッセージタイプ、タイムスタンプ等、受け取ったメッセージに関するすべての情報を含む。またこれらの実施形態では、ログマネージャ218は、受け取ったメッセージのすべてをその中間形態で、すなわちメッセージがポストされた時とメッセージがロギングのために処理された時との間で保持するログメッセージ待ち行列モジュールを含む。メッセージ待ち行列モジュールはまた、ログエンジンサービスの非同期動作メカニズムに有用である。これらの実施形態では、待ち行列を、待ち行列にアクセスするインタフェースを開示(expose)するクラスによってカプセル化することができる。またこれらの実施形態では、ログマネージャ218を、ログマネージャ218のみがログメッセージ待ち行列にアクセスすることができるようにセットアップすることができる。待ち行列クラスを、受け取ったメッセージに対し新たなポスティングがある場合にログマネージャ218に通知されるようにセットアップしてもよい。さらに、これらの実施形態では、ログマネージャ218は、ログマネージャ218によってインスタンス化することができるログプロセッサを含む。これらの実施形態におけるログプロセスの役割は、ログメッセージを処理し、それらをログライタにディスパッチすることである。これらの実施形態において、ログプロセッサは、構成ファイルにおけるポリシ特定情報セットを顧慮し、ログメッセージに対し任意の指定されたルールを適用することができる。
【0028】
実施形態によっては、音声フレームワーク110は、特権サーバ214を有し、それは、音声フレームワーク110の動作中、クライアントに対し音声フレームワーク110にアクセスする特権を認証し、認可し、許可する。これらの実施形態では、データサーバ224は、データ記憶システムおよびデータ検索システムをスピーチエンジンハブ130にインタフェースするのを容易にする。
【0029】
実施形態によっては、警報マネージャ220は、音声フレームワークモジュール内にかつ複数箇所に配備された音声フレームワーク110間に警報をポストする。たとえば、モジュールがシャットダウンしまたはモジュールにエラーが発生した場合に、警報マネージャ220に対し警報をポストすることができる。そして、警報マネージャ220は、受け取った警報メッセージに対しポリシを適用し、シャットダウンおよび/または発生したエラーによって影響を受けるモジュールに対し警報を転送することができる。警報マネージャ220はまた、肯定応答を処理することもでき、モジュールが使用不能である場合に再試行することができる。これは、モジュールがマシンにわたって分散されている場合であり、ネットワーク状態がメッセージを再度送信することを必要とする可能性がある場合に、特に有用であり得る。
【0030】
これらの実施形態では、警報マネージャ220は、警報待ち行列モジュールを含む。警報待ち行列モジュールは、音声フレームワーク110における異なるコンポーネントにポストされるメッセージを保持する。警報マネージャ220は、入来メッセージを待ち行列に配置する。これらの実施形態ではまた、警報マネージャ220は警報プロセッサとともに、受け取った新たなメッセージに対し警報待ち行列をポーリングしそのメッセージをフェッチする。警報プロセッサは、ポリシエンジンと対話することにより、再試行回数、メッセージクライアント、満了時刻、肯定応答要求等、受け取ったメッセージに対して適用するルールを抽出することができる。これらの実施形態において、警報プロセッサは、待ち行列からメッセージをフェッチする。メッセージは、受取側モジュールから肯定応答を受け取るまで待ち行列に残ることができる。
【0031】
さらにこれらの実施形態では、警報マネージャ220は、警報ディスパッチャを有し、これは、さまざまなメッセージクライアントに対する実際のメッセージディスパッチングを処理することができる音声フレームワーク110のワーカモジュールである。警報ディスパッチャは、警報プロセッサからメッセージエンベロープを受け取り、再試行、メッセージクライアントタイプ等の指定されたルールを読み出す。そして、警報ディスパッチャは、通知者(notifier)レジスタに問合せすることにより、意図された受信者が理解することができるフォーマットに従ってメッセージを翻訳することができる適当な通知者オブジェクトを取得する。そして、警報ディスパッチャはメッセージを通知者にポストする。もし何らかの理由によりメッセージが音声フレームワークを通過しない場合には、警報ディスパッチャが再試行の動作を行い、メッセージを再送信する。
【0032】
またこれらの実施形態では、警報マネージャは、さまざまなメッセージに関するポリシ情報の格納および検索のすべてを抽象化するポリシエンジンを有する。これらの実施形態では、ポリシエンジンは、優先順位に基づくメッセージフィルタリング、再試行回数、満了時刻等に基づくポリシ情報を維持する。ポリシマネージャはまた、データベースおよび/または単層ファイルに対して実行されるさまざまな格納動作中にポリシ情報を維持することも可能である。
【0033】
警報マネージャ220はまた、報告マネージャを有することもでき、それは、肯定応答待ち行列からメッセージ肯定応答を抽出する。そして、報告マネージャは、ポリシエンジンに対し、各肯定応答をいかに処理するかに関する情報を問い合わせる。報告マネージャによる動作は、肯定応答が受け取られると警報待ち行列からオリジナルメッセージを除去することであることができる。
【0034】
警報マネージャ220はまた、音声フレームワーク110におけるさまざまな通知者から肯定応答メッセージを受け取る、肯定応答待ち行列モジュールを有することもできる。そして、報告マネージャは、待ち行列を読み出すことにより、肯定応答特定動作を実行する。警報マネージャ220はまた、音声フレームワーク110によって支援されるさまざまな通知者に関する情報を含むことができる通知者レジスタを有することもできる。通知者レジスタの情報は、後に警報ディスパッチャが、特定のメッセージの提供をインスタンス化するべく通知者のタイプを決定するために問い合わせることができる。警報マネージャ220はさらに、標準インタフェースを使用して異なるメッセージ受信者を抽象化する通知者を有することができる。警報ディスパッチャは、メッセージ受信者の基礎となる複雑性と通知者にメッセージを送信する方法とに気付かない可能性がある。通知者はまた、メッセージの提供が成功すると、肯定応答待ち行列モジュールに肯定応答を送出することもできる。
【0035】
実施形態によっては、音声フレームワーク110は、ネットワーク125を介して音声フレームワーク110に結合されたオーディオ対応デバイスの機能をネゴシエートする機能ネゴシエータ222を有する。音声フレームワーク110はまた、オーディオデータの連続したストリームをオーディオ対応デバイスに提供するオーディオストリーマ226を有することもできる。またこれらの実施形態では、音声フレームワーク110は、音声データをニュートラルフォーマットで格納しオーディオデータを要求されたオーディオフォーマットに変換する生オーディオアダプタ228を有する。さらに、音声フレームワーク110は、言語トランスレータ230を有することができ、それは、スピーチエンジンハブ130と協働して、1つの言語で受け取られたテキストを別の言語に変換する。たとえば、言語トランスレータ230は、英語で受け取られたテキストを中国語またはヒンディー語等に変換する。言語トランスレータ230は、スピーチエンジンハブ130が英語以外の言語をサポートする場合、英語以外の言語で受け取られたテキストを変換する翻訳を実行することができる。
【0036】
ここで図3を参照すると、図1および図2に示す音声フレームワーク110を介してスピーチ駆動アプリケーションを1つまたは複数のオーディオ対応デバイスにリンクする一例としての方法300が示されている。310において、この一例としての方法300は、オーディオ対応デバイス独立およびプラットフォーム独立パラメータのうちの特定のものを指定することなく、特定のオーディオ対応デバイスからデジタル化オーディオスピーチを受け取る。実施形態によっては、入力バッファは、特定のオーディオ対応デバイスからのデジタル化スピーチオーディオを受け取り格納するように構成される。
【0037】
320において、受け取られたデジタル化オーディオスピーチを、コンピュータ読取可能テキストに変換する。実施形態によっては、デジタル化オーディオスピーチを、スピーチエンジンハブを使用してコンピュータ読取可能テキストに変換する。
【0038】
330において、変換されたコンピュータ読取可能テキストを、コンピュータ読取可能テキストを転送するために必要なスピーチ駆動アプリケーション独立およびプラットフォーム独立パラメータのうちの特定のものを指定することなく、特定のスピーチ駆動アプリケーションに転送する。実施形態によっては、出力バッファは、デジタル化スピーチオーディオを特定のオーディオ対応デバイスに格納し送信するように構成される。
【0039】
340において、コンピュータ読取可能テキストを、スピーチ駆動アプリケーション独立およびプラットフォーム独立パラメータのうちの特定のものを指定することなく、特定のスピーチ駆動アプリケーションから受け取ることができる。350において、特定のスピーチ駆動アプリケーションから受け取られたコンピュータ読取可能テキストを、デジタル化スピーチオーディオに変換する。実施形態によっては、コンピュータ読取可能テキストを、スピーチエンジンハブを使用してデジタル化スピーチオーディオに変換する。
【0040】
360において、コンピュータ読取可能テキストを転送するために必要なスピーチ駆動アプリケーション独立およびプラットフォーム独立パラメータのうちの特定のものを指定せずに、デジタル化スピーチオーディオを特定のオーディオ対応デバイスに転送する。音声フレームワークを介してスピーチ駆動アプリケーションを1つまたは複数のオーディオ対応デバイスにリンクする動作については、図1および図2を参照してより詳細に説明している。
【0041】
本発明のさまざまな実施形態を、図4に示す環境(後述する)においてまたは他の任意の適当なコンピューティング環境において実行することができるソフトウェアで実施することができる。本発明の実施形態は、複数の汎用または専用コンピューティング環境で動作可能である。コンピューティング環境によっては、コンピュータ読取可能媒体に格納されたコードを実行する、パーソナルコンピュータ、汎用コンピュータ、サーバコンピュータ、ハンドヘルドデバイス(限定されないが、すべてのタイプの電話および携帯情報端末(PDA)を含む)、ラップトップデバイス、マルチプロセッサ、マイクロプロセッサ、セットトップボックス、プログラム可能な家電、ネットワークコンピュータ、ミニコンピュータ、メインフレームコンピュータ、分散コンピューティング環境等を含む。本発明の実施形態を、コンピュータが実行するプログラムモジュール等、機械実行可能命令として部分的にまたは全体として実施してもよい。一般に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データタイプを実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含む。分散コンピューティング環境では、プログラムモジュールを、ローカル記憶デバイスに配置してもよくまたはリモート記憶デバイスに配置してもよい。
【0042】
図4は、本発明の実施形態を実施する適当なコンピューティングシステム環境の一例を示す。図4および以下の論考は、本明細書に含まれる発明的概念のいくつかの実施形態を実施することができる適当なコンピューティング環境の簡単で包括的な説明を提供するように意図されている。
【0043】
コンピュータ410の形態の一般的なコンピューティングデバイスは、処理装置402と、メモリ404と、リムーバブル記憶装置412と、非リムーバブル記憶装置414と、を有することができる。コンピュータ410は、さらに、バス405とネットワークインタフェース(NI)401とを有する。
【0044】
コンピュータ410は、1つまたは複数の入力要素416と、1つまたは複数の出力要素418と、ネットワークインタフェースカードまたはUSB接続等の1つまたは複数の通信接続420と、を含むコンピューティング環境を有することができ、またはそれにアクセスすることができる。コンピュータ410は、ネットワーク環境において1つまたは複数のリモートコンピュータに接続する通信接続420を使用して動作することができる。リモートコンピュータは、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイスまたは他のネットワークノードおよび/または同様のものを含むことができる。通信接続は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)および/または他のネットワークを含むことができる。
【0045】
メモリ404は、揮発性メモリ406と不揮発性メモリ408とを有することができる。種々のコンピュータ読取可能媒体を、揮発性メモリ406および不揮発性メモリ408、リムーバブル記憶装置412および非リムーバブル記憶装置414等、コンピュータ410のメモリ要素に格納し、かつそこにアクセスすることができる。コンピュータメモリ要素は、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、消去可能なプログラマブルリードオンリメモリ(EPROM)、電気的に消去可能なプログラマブルリードオンリメモリ(EEPROM)、ハードドライブ、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、ディスケット、磁気テープカートリッジ、メモリカード、メモリスティック(商標)等を操作するリムーバブルメディアドライブ、化学的記憶機構、生物学的記憶機構および他のタイプのデータ記憶機構等、データおよび機械読取可能命令を格納する任意の適当なメモリデバイス(複数可)を含むことができる。
【0046】
本明細書で使用する「プロセッサ」または「処理装置」は、限定されないが、マイクロプロセッサ、マイクロコントローラ、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、明示的並列命令コンピューティング(EPIC)マイクロプロセッサ、グラフィックスプロセッサ、デジタル信号プロセッサまたは他の任意のタイプのプロセッサまたは処理回路等、任意のタイプの計算回路を意味する。この用語はまた、汎用またはプログラマブルロジックデバイスまたはアレイ、特定用途向け集積回路、シングルチップコンピュータ、スマートカード等の組み込みコントローラを含む。
【0047】
本発明の実施形態を、タスクを実行するかもしくは抽象データタイプまたは低レベルハードウェアコンテキストを定義する、機能、手続き、データ構造、アプリケーションプログラム等を含むプログラムモジュールとともに実施してもよい。
【0048】
上述した記憶媒体のうちの任意のものに格納された機械読取可能命令は、コンピュータ410の処理装置402によって実行可能である。たとえば、コンピュータプログラム425は、本発明の教示および本明細書で説明した実施形態に従ってオーディオ対応デバイスをスピーチ駆動アプリケーションにリンクすることができる機械読取可能命令を含むことができる。一実施形態では、コンピュータプログラム425を、CD−ROMに含め、そのCD−ROMから不揮発性メモリ408のハードドライブにロードしてもよい。機械読取可能命令により、コンピュータ410は、本発明の実施形態による音声フレームワークを使用してオーディオ対応デバイスをスピーチ駆動アプリケーションに通信可能にリンクする。
【0049】
本発明の音声フレームワークは、「分散された構成可能アーキテクチャ(Distributed Configurable Architecture)」の形態で使用するという意味でモジュール式であり柔軟である。その結果、音声フレームワークのいくつかの部分を、選択されるモデルに応じて、ネットワークの異なるポイントに配置することができる。たとえば、スピーチエンジンハブをサーバに配備してもよく、スピーチ認識とスピーチ合成とはともに、同じサーバで実行され、入力と出力とはそれぞれクライアントからサーバへかつその逆に流れる。ハブを各クライアントに配置し、データベース管理を集中化してもよい。かかる柔軟性により、より高速な配備が変化するビジネスニーズに対し費用効率のよいソリューションを提供することができる。
【0050】
上記説明は、例示的であることが意図されており、限定的であるようには意図されていない。当業者には他の多くの実施形態が明らかとなろう。したがって、本発明の範囲は、添付の特許請求の範囲と、かかる特許請求の範囲に対して権利が与えられる等価物の完全な範囲と、によって決定されるべきである。
【0051】
(結論)
上述した方法および装置は、スピーチ駆動アプリケーションを、音声フレームワークを介して1つまたは複数のオーディオ対応デバイスにリンクするさまざまな実施形態を提供する。
【0052】
上記説明は、例示的あることが意図されており限定的であるようには意図されていない、ということを理解すべきである。上記説明を検討することにより、当業者には他の多くの実施形態が明らかとなろう。したがって、本主題の範囲を、添付の特許請求の範囲と、かかる特許請求の範囲に対して権利が与えられる等価物の完全な範囲と、に関して決定すべきである。
【0053】
本明細書に示すように、本発明を、さまざまな方法、回路、I/Oデバイス、システム、および関連する命令を有する機械アクセス可能媒体を備える物品を含む複数の異なる実施形態で実施することができる。
【0054】
当業者には、他の実施形態が容易に明らかとなろう。要素、アルゴリズム、動作の順序を、特定の要求に適合するようにすべて変更することができる。図3に示す方法に関して上述した動作を、本明細書に示し説明したものとは異なる順序で実行してもよい。
【0055】
図1、図2、図3および図4は、単に代表的なものであり、一定の比例尺では描かれていない。その中には、いくらか大きさが誇張されているものもあり、最小にされているものもある。図1乃至図4は、当業者が理解し適当に実行することができる本発明のさまざまな実施形態を示す。
【0056】
要約書は、読者がその技術的開示の性質と要点とを即座に確かめることができるようにする要約書を要求する、米国特許法施行規則(37C.F.R.)第1.72条(b)項に従うように提供される、ということが強調される。それは、特許請求の範囲または意味を解釈しまたは限定するために使用されるものではないという了解の下に提出される。
【0057】
本発明の実施形態の上述した詳細な説明では、開示を簡素化するためにさまざまな特徴を一まとめにして1つの実施形態にしている。この開示の方法は、本発明の請求される実施形態が各特許請求の範囲において明示的に列挙されるより多くの特徴を必要とするという意図を反映するものとして解釈されるべきではない。むしろ、添付の特許請求の範囲が反映するように、発明の主題は、単一の開示された実施形態のすべての特徴にはない。このため、添付の特許請求の範囲は、これにより本発明の実施形態の詳細な説明に組み込まれ、各請求項は、別々の好ましい実施形態として独立している。
【図面の簡単な説明】
【0058】
【図1】本主題のさまざまな実施形態によるオーディオ対応デバイス、スピーチ駆動アプリケーションおよびアプリケーションプラットフォーム独立音声フレームワークを示すブロック図である。
【図2】本主題のさまざまな実施形態による図1に示す音声フレームワークの実施態様を示すブロック図である。
【図3】図1および図2に示す音声フレームワークを介してスピーチ駆動アプリケーションを1つまたは複数のオーディオ対応デバイスにリンクする一例としての方法を示すフローチャートである。
【図4】本主題の一実施形態による図1乃至図3に示す音声フレームワークを使用してスピーチ駆動アプリケーションを1つまたは複数のオーディオ対応デバイスにリンクするために使用される典型的なコンピュータシステムのブロック図である。
【符号の説明】
【0059】
105:オーディオ対応デバイス
110:音声フレームワーク
120:オーディオ対応デバイスアダプタ
125:コンピュータネットワーク
130:スピーチエンジンハブ
140:スピーチ駆動アプリケーションアダプタ
150:スピーチ駆動アプリケーションモジュール
166:アプリケーション管理サービスモジュール

【特許請求の範囲】
【請求項1】
オーディオ対応デバイス独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、かつ、スピーチ駆動アプリケーション独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、オーディオ対応デバイスをスピーチ駆動アプリケーションにリンクする音声フレームワーク。
【請求項2】
オーディオ対応デバイス独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、オーディオ対応デバイスをスピーチ駆動アプリケーションにリンクする前記音声フレームワークが、
前記オーディオ対応デバイス独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、デジタル化スピーチオーディオを受け取りかつ送出するオーディオ対応デバイスアダプタ、
を具備する、請求項1に記載の音声フレームワーク。
【請求項3】
スピーチ駆動アプリケーション独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、オーディオ対応デバイスをスピーチ駆動アプリケーションにリンクする前記音声フレームワークが、
前記スピーチ駆動アプリケーション独立およびスピーチアプリケーションプラットフォーム独立パラメータのうちの特定のものを指定することなく、前記スピーチ駆動アプリケーションからコンピュータ読取可能テキストを受け取りかつ送出するスピーチ駆動アプリケーションアダプタ、
を具備する、請求項2に記載の音声フレームワーク。
【請求項4】
前記受け取ったデジタル化スピーチオーディオを前記コンピュータ読取可能テキストに変換し、かつ前記受け取ったコンピュータ読取可能テキストを前記デジタル化スピーチオーディオに変換するスピーチエンジンハブであって、スピーチエンジンに依存しないスピーチエンジンハブ、
を具備する、請求項3に記載の音声フレームワーク。
【請求項5】
前記スピーチエンジンハブが、
前記受け取ったデジタル化スピーチオーディオを前記コンピュータ読取可能テキストに変換するスピーチ認識エンジンと、
前記コンピュータ読取可能テキストを前記デジタル化スピーチオーディオに変換するテキスト・スピーチ変換(TTS)エンジンと、
を備えている、請求項4に記載の音声フレームワーク。
【請求項6】
スピーチエンジンハブと、
特定のオーディオ対応デバイスと前記スピーチエンジンハブとの間にオーディオ対応デバイス独立インタフェースを提供するオーディオ対応デバイスアダプタであって、該オーディオ対応デバイスアダプタは、オーディオ対応デバイス独立およびソフトウェアプラットフォーム独立パラメータのうちの特定のものを指定することなく、前記特定のオーディオ対応デバイスからデジタル化スピーチオーディオを受け取り、前記スピーチエンジンハブは、該オーディオ対応デバイスアダプタに通信可能に結合されて、前記デジタル化オーディオスピーチをコンピュータ読取可能テキストに変換する、オーディオ対応デバイスアダプタと、
前記スピーチエンジンハブに通信可能に結合されて、スピーチ駆動アプリケーションと前記スピーチエンジンハブとの間にスピーチ駆動アプリケーション独立インタフェースを提供するスピーチ駆動アプリケーションアダプタであって、前記スピーチエンジンハブは、前記コンピュータ読取可能テキストを前記スピーチ駆動アプリケーションアダプタに送出し、該スピーチ駆動アプリケーションアダプタは、スピーチ駆動アプリケーション独立およびソフトウェアプラットフォーム独立パラメータのうちの特定のものを指定することなく前記デジタル化オーディオスピーチを特定のスピーチ駆動アプリケーションに送出する、スピーチ駆動アプリケーションアダプタと、
を具備するシステム。
【請求項7】
前記スピーチ駆動アプリケーションアダプタは、前記スピーチ駆動アプリケーション独立およびソフトウェアプラットフォーム独立パラメータのうちの特定のものを指定することなく、特定のスピーチ駆動アプリケーションから前記コンピュータ読取可能テキストを受け取り、前記スピーチエンジンハブは、前記スピーチ駆動アプリケーションアダプタから受け取った前記コンピュータ読取可能テキストを前記デジタル化スピーチオーディオに変換する、請求項6に記載のシステム。
【請求項8】
前記スピーチエンジンハブは、前記デジタル化スピーチオーディオを前記オーディオ対応デバイスアダプタに送出し、該オーディオ対応デバイスアダプタは、前記オーディオ対応デバイス独立およびソフトウェアプラットフォーム独立パラメータのうちの特定のものを指定することなく、前記デジタル化スピーチオーディオを特定のオーディオ対応デバイスに送出する、請求項7に記載のシステム。
【請求項9】
前記スピーチエンジンハブが、
前記デジタル化スピーチオーディオを前記コンピュータ読取可能テキストに変換するスピーチ認識エンジンと、
前記コンピュータ読取可能テキストを前記デジタル化スピーチオーディオに変換するTTSエンジンと、
を備えている、請求項6に記載のシステム。
【請求項10】
前記スピーチエンジンハブが、
アプリケーションニーズに基づき該スピーチエンジンハブを起動し構成することにより、特定のスピーチエンジンサービスをロードするスピーチレジスタ、
をさらに備えている、請求項9に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2006−31701(P2006−31701A)
【公開日】平成18年2月2日(2006.2.2)
【国際特許分類】
【出願番号】特願2005−201244(P2005−201244)
【出願日】平成17年7月11日(2005.7.11)
【出願人】(503003854)ヒューレット−パッカード デベロップメント カンパニー エル.ピー. (1,145)
【Fターム(参考)】