JP2002099405A - クライアント・アプリケーションを音声口述でイネーブルにする方法、音声イネーブル・クライアント・アプリケーション、および機械可読ストレージ - Google Patents

クライアント・アプリケーションを音声口述でイネーブルにする方法、音声イネーブル・クライアント・アプリケーション、および機械可読ストレージ

Info

Publication number
JP2002099405A
JP2002099405A JP2001210559A JP2001210559A JP2002099405A JP 2002099405 A JP2002099405 A JP 2002099405A JP 2001210559 A JP2001210559 A JP 2001210559A JP 2001210559 A JP2001210559 A JP 2001210559A JP 2002099405 A JP2002099405 A JP 2002099405A
Authority
JP
Japan
Prior art keywords
text
client application
application
input method
inter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001210559A
Other languages
English (en)
Inventor
Erik A Sea
エリック・エー・シー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2002099405A publication Critical patent/JP2002099405A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output

Abstract

(57)【要約】 【課題】 インプット・メソッドを使用して、クライ
アント・アプリケーションで音声口述を可能にする方
法、システム、および装置を提供すること。 【解決手段】クライアント・アプリケーションを音声で
イネーブルにする方法は、インプット・メソッドをクラ
イアント・アプリケーションへ結合し、インプット・メ
ソッドと音声口述アプリケーションとの間でプロセス間
通信リンクを確立し、音声口述アプリケーション内で音
声入力をテキストへ変換し、プロセス間通信リンクを介
してテキストをインプット・メソッドへ送信するステッ
プを含むことができる。テキストは、クライアント・ア
プリケーションの変更を必要とすることなく、クライア
ント・アプリケーションへ結合されたインプット・メソ
ッドを介して、クライアント・アプリケーションへ提供
される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は音声認識の分野に関
し、更に具体的には、インプット・メソッドを使用して
クライアント・アプリケーションで直接音声口述(direc
t voice dictation)を可能にするシステム、方法、及び
装置に関する。
【0002】
【従来の技術】現在、様々な専門タスクをコンピュータ
・ユーザに実行させるクライアント・アプリケーション
として知られる非常に多様なコンピュータ・ソフトウェ
アが市販されている。例えば、ワード処理、スプレッド
シート分析、スケジューリング、及びビジネス並びに技
術に関連した多数の他の通常のタスクを実行できるクラ
イアント・アプリケーションが存在する。これらのプロ
グラムは、或るグループのユーザの或る周知の必要性を
満足させるために開発されており、一般的に、そのよう
な必要性に普通に関連づけられたタスクの全てを満足さ
せる能力を提供するように設計されている。この範囲
で、公衆が一般に利用することのできる市販のクライア
ント・アプリケーションは、全く満足できるものであ
る。
【0003】しかし、時には、或るユーザは、ソフトウ
ェア開発者によって見過ごされたか意図的に無視されて
きた専門的必要性を有するかも知れない。なぜなら、そ
のような特徴を実装する技術がそれまで利用できなかっ
たか、特定のクライアント・アプリケーション開発者の
専門的技術を超えているためである。他方では、或る機
能的特徴は、既存のソフトウェア・アプリケーションに
存在しないかも知れない。なぜなら、そのような必要性
に対処する機能的特徴の実装は、そのような機能的特徴
を必要とするユーザが比較的少数者であると仮定すれ
ば、不経済であると思われるからである。このような特
性の双方を有する機能的特徴の1つの例は、音声認識技
術、又は話された語を認識するソフトウェア・アプリケ
ーションの能力である。音声認識は、開発者の側で著し
い専門的技術を必要とする高度に複雑な技術である。音
声認識機能をクライアント・アプリケーションに組み込
むことは、費用のかかる仕事であることを立証すること
ができる。特に、クライアント・アプリケーションにお
けるテキスト入力の手段として、より伝統的なキーボー
ド入力に代えて音声口述の提供を好むアプリケーション
・ユーザが少数者であるときにそうである。
【0004】特定の商業的ソフトウェア開発者が、特定
の製品特徴、例えば音声認識をアプリケーション・プロ
グラムの中に実装しないことを選択する場合、第3者の
ソフトウェア開発者が、そのような特徴又は機能を独立
的に提供することを望むかも知れない。そのような場
合、第3者のソフトウェア開発者が、そのような機能を
開発し、シームレスに提供できることが望ましいであろ
う。この点に関して理解すべきことは、ここで使用され
る「シームレス統合」の語句は、特定のアプリケーショ
ンへ付加される追加機能が、既存のクライアント・アプ
リケーションの統合部分又は結合部分としてユーザに現
れることを意味することである。
【0005】しかし、重要なことに、既存のクライアン
ト・アプリケーションの前後関係の中に追加のソフトウ
ェア機能及び特徴、特に音声認識をシームレスに統合す
ることは、幾つかの問題を作り出す。具体的には、既存
のクライアント・アプリケーションのコンテキストの中
に音声認識機能をシームレスに実装するためにクライア
ント・アプリケーションを変更することは、一般的にク
ライアント・アプリケーションのソース・コードへアク
セスすることを必要とする。この必要性は、音声認識機
能の実装に対して克服できない障害を与える。なぜな
ら、ソフトウェアの所有者は、クライアント・アプリケ
ーションのソース・コードにアクセスする許可を第3者
に与えることを全く嫌がる場合が多いからである。最小
限で、クライアント・アプリケーションのソース・コー
ドにアクセスする必要があること、及び、そのようなコ
ードを変更して音声認識をサポートするため、所有者の
許可を得なければならないことは、必然的に遅延と付加
的費用を生じる。
【0006】
【発明が解決しようとする課題】従って、既存のクライ
アント・アプリケーションへ音声認識機能を付与する方
法を提供することが望ましいであろう。更に具体的に
は、そのような既存のクライアント・アプリケーション
・ソース・コードへのアクセス、又はソース・コードの
変更を必要とすることなく、音声から生成された(speec
h originated)テキストをクライアント・アプリケーシ
ョンの中へシームレスに挿入し、検索し、訂正する方法
及びシステムを提供することが望ましいであろう。
【0007】
【課題を解決するための手段】インプット・メソッドを
使用してクライアント・アプリケーションの中で直接音
声口述をイネーブルにする方法は、インプット・メソッ
ド又はその同等物をサポートするクライアント・アプリ
ケーションの中へ音声起源テキストを挿入、検索、及び
訂正する一様な手段を提供する。重要なことに、本発明
の配列に従った方法は、クライアント・アプリケーショ
ンのソース・コードへの変更を必要としない。むしろ、
本発明は、普通に利用可能なインプット・メソッド・サ
ービスを使用して、クライアント・アプリケーションの
中へ透過的に直接口述を提供することができる。
【0008】クライアント・アプリケーションを音声で
イネーブルにする方法は、インプット・メソッドをクラ
イアント・アプリケーションへ結合し、インプット・メ
ソッドと音声口述アプリケーションとの間にプロセス間
通信リンクを確立し、音声口述アプリケーション内で音
声入力をテキストへ変換し、プロセス間通信リンクを介
してテキストをインプット・メソッドへ送信するステッ
プを含むことができる。注目すべきことに、インプット
・メソッドはテキストをクライアント・アプリケーショ
ンへ提供することができる。その結果、テキストは、ク
ライアント・アプリケーションの変更を必要とすること
なく、クライアント・アプリケーションへ結合されたイ
ンプット・メソッドを介して、クライアント・アプリケ
ーションへ提供される。
【0009】好ましい実施形態において、提供するステ
ップは、シミュレートされるキーボード・ストロークを
クライアント・アプリケーションへ通信することなく実
行される。むしろ、テキストは、クライアント・アプリ
ケーションのテキスト・バッファの中へ直接挿入され
る。重要なことに、方法は、更に、クライアント・アプ
リケーションの中でテキストのユーザ選択を検出し、選
択されたテキストを、プロセス間通信リンクを介して音
声口述アプリケーションへ送信し、選択されたテキスト
のために代わりの語を決定し、代わりの語を表示し、代
わりの語の1つの選択を受け入れ、選択された代わりの
語を、プロセス間通信リンクを介してインプット・メソ
ッドへ送信するステップを含むことができる。その後、
インプット・メソッドは、選択されたテキストを、選択
された代わりの語で置換することができる。
【0010】好ましい実施形態において、プロセス間通
信リンクは、アップル・イベント・インタープロセス・
メッセージング・プロトコル(Apple Event Interproce
ss Messaging Protocol)リンクである。しかし、他の
プロセス間通信リンク、例えばTCP/IPで十分であ
る。従って、インプット・メソッド及びクライアント・
アプリケーションは、別々のコンピュータ・システムに
存在することができる。更に、好ましくは、インプット
・メソッドは、Macintosh(R)システム・ソフトウェ
アのText Services Manager(R)を使用してクライア
ント・アプリケーションへ結合される。
【0011】本発明の配列に従った音声イネーブル・ク
ライアント・アプリケーションは、クライアント・アプ
リケーション、クライアント・アプリケーションへ結合
されたインプット・メソッド、及び音声口述アプリケー
ションを含むことができる。音声口述アプリケーション
は、プロセス間通信リンクを介してインプット・メソッ
ドへ通信的にリンクされる。音声口述アプリケーション
は、音声入力を受け入れて、音声入力をテキストへ変換
することができる。その後、音声口述アプリケーション
は、プロセス間通信リンクを介してテキストをインプッ
ト・メソッドへ送信することができる。最後に、インプ
ット・メソッドは、送信されたテキストを受け取り、ク
ライアント・アプリケーション内のテキスト・バッファ
の中にテキストを挿入することができる。
【0012】音声イネーブル・クライアント・アプリケ
ーションは、クライアント・アプリケーションにおける
テキストのユーザ選択を検出する手段を含むことができ
る。その場合、検出手段は、選択されたテキストをイン
プット・メソッドへ通信することができる。そして今度
は、インプット・メソッドは、プロセス間通信リンクを
介して、選択されたテキストを音声口述アプリケーショ
ンへ送信することができる。音声口述アプリケーション
は、選択されたテキストのために代わりの語を決定し、
代わりの語を表示し、代わりの語の1つの選択を受け入
れることができる。最後に、音声口述アプリケーション
は、プロセス間通信リンクを介して、選択された代わり
の語をインプット・メソッドへ送信することができる。
ここで、インプット・メソッドは、選択されたテキスト
を、選択された代わりの語で置換することができる。
【0013】注目すべきことに、インプット・メソッド
は、シミュレートされるキーボード・ストロークをクラ
イアント・アプリケーションへ通信することなく、テキ
ストをテキスト・バッファの中へ挿入する手段を含むこ
とができる。更に、好ましい実施形態において、プロセ
ス間通信リンクは、アップル・イベント・インタープロ
セス・メッセージング・プロトコル・リンクである。し
かし、本発明は、この点に関して制限はない。むしろ、
他のプロセス間通信リンク、例えばTCP/IPで十分
である。従って、インプット・メソッド及びクライアン
ト・アプリケーションは、別々のコンピュータ・システ
ムに存在することができる。最後に、音声イネーブル・
クライアント・アプリケーションは、インプット・メソ
ッドをクライアント・アプリケーションへ結合するた
め、Macintosh(R)システム・ソフトウェアのText Se
rvices Manager(R)を含むことができる。
【0014】
【発明の実施の形態】本発明は、音声口述テキストをク
ライアント・アプリケーションの中に挿入する方法であ
る。更に、具体的には、本発明は、インプット・メソッ
ドをサポートするクライアント・アプリケーションの中
へ音声起源テキストを挿入、検索、及び訂正する一様な
手段を提供する。重要なことに、本発明では、ホストの
クライアント・アプリケーションを変更する必要はな
い。本発明の好ましい実施形態は、米Apple Computer社
によって製造されたMacOS(R)オペレーティング
・システムを使用して実現されたが、本発明は、特定の
オペレーティング・システムへ限定されない。むしろ、
本発明は、インプット・メソッドをサポートするオペレ
ーティング・システムの上で実行されているクライアン
ト・アプリケーションの中へ直接口述を提供することが
できる。注目すべきことに、Java(R)プログラミ
ング言語は、インプット・メソッドの枠組みを提供す
る。従って、Java(R)のプラットフォーム独立性
によって、本発明は特定のオペレーティング・システム
へ限定されない。
【0015】図1は、本発明と共に使用するのに適した
コンピュータ・システムを示す。図1に示されるよう
に、コンピュータ・システム1は、好ましくは中央処理
装置(CPU)2、内部メモリ装置3、例えばランダム
・アクセス・メモリ(RAM)、及び固定ストレージ
4、例えばハード・ディスク・ドライブ(HDD)を含
む。更に、コンピュータ・システム1は、それをコンピ
ュータ通信ネットワークへ通信的に接続するネットワー
ク・インターフェース回路(NIC)(図示されていな
い)を含むことができる。コンピュータ・システム1
は、音声口述システムと共に使用されるように構成され
ることができる。従って、コンピュータ・システム1
は、更に、オーディオ(AUDIO)回路5、例えばサ
ウンド・カード、オーディオ入力装置6、例えばマイク
ロホン、及びオーディオ出力装置7、例えばオーディオ
・スピーカを含むことができる。更に、コンピュータ・
システム1は、キーボード10、マウス・ポインティン
グ・デバイス9、及びユーザ・インターフェース表示装
置8、例えば、コンピュータ・システム1と対話するた
め動作的に接続されたビデオ表示端末(VDT)を含む
ことができる。
【0016】更に、本発明は、図1に示されたコンピュ
ータ・システム1に限定されない。むしろ、本発明は、
音声口述をサポートする適切な機能を有する任意のコン
ピュータ・システムに実装されることができる。更に、
本発明のシステム及び方法は、コンピュータ通信ネット
ワークへ通信的に接続された複数のコンピュータ・シス
テムにまたがって分散様式で実装されることができる。
分散直接口述システムの場合、音声口述システムは、1
つのコンピュータ・システムの中に存在することがで
き、プロセス間通信機能、例えばTCP/IPを使用す
る遠隔通信リンクを介して、インプット・メソッドと通
信することができる。重要なことに、直接口述システム
の分散性によって、音声口述システムは、インプット・
メソッドが存在することのできる別個のコンピュータ・
システムのオペレーティング・システムとは異なったオ
ペレーティング・システムを有するコンピュータ・シス
テムに存在することができる。
【0017】CPU2は、当業者に周知であるように、
任意適切なマイクロプロセッサ又は他の電子処理装置を
含むことができる。適切なCPUの例は、Motoro
laPowerPC(R)クラスのプロセッサ又は68
Kクラスのプロセッサである。固定ストレージ4は、そ
の中にオペレーティング・システム、例えばMacOS
(R)を記憶することができる。好ましい実施形態にお
いて、本発明の方法は、前記のオペレーティング・シス
テムと共に使用するように設計された開発ツールを使用
して実現されることができる。特に、Metrowerks CodeW
arrior (R)総合開発環境は、MacOS(R)で使
用されるインプット・メソッドを開発するための好まし
い開発環境である。
【0018】図2は、図1のコンピュータ・システムで
使用されるコンピュータ・システム・アーキテクチャを
示す。前述したように、本発明は、オペレーティング・
システム11、好ましくはMacOS(R)を含むこと
ができる。重要なことに、MacOS(R)は、アップ
ル・イベント・インタープロセス・メッセージング・プ
ロトコルを実行し、その使用は、アップル・イベント・
マネージャ(Apple Event Manager; AEM)13によ
って管理されることができる。AEM13を使用して、
音声口述アプリケーション16は、インプット・モジュ
ール15と通信することができる。更に、前述したよう
に、他の適切なプロセス間通信プロトコル、例えばTC
P/IPが、アップル・イベント・インタープロセス・
メッセージング・プロトコルに代用されることができ
る。しかし、本発明は、MacOS(R)内のAEM1
3によって、アップル・イベント・インタープロセス・
メッセージング・プロトコルの簡便性及び容易性を利用
する。
【0019】アップル・イベントは、アップル・イベン
ト・インタープロセス・メッセージング・プロトコルに
準拠した高レベルのイベントである。アップル・イベン
ト・マネージャは、イベント・マネージャを使用して、
同じコンピュータ上のアプリケーションの間又は遠隔コ
ンピュータ上のアプリケーションの間でアップル・イベ
ントを送る。その結果、本発明の好ましい実施形態にお
いて、音声口述アプリケーション16及びインプット・
モジュール15は、AEM13を使用して、アップル・
イベントを相互へ直接送ることができる。更に、各々の
アプリケーションは、AEM13を使用して、アップル
・イベントへ適切に応答することができる。
【0020】AEM13に加えて、MacOS(R)
は、更に、Text Services Manager(R)、即ちTSM
12を組み込んでいる。TSM12は、アプリケーショ
ンがテキスト・サービス、例えばインプット・メソッド
を使用するための環境を提供するMacOS(R)構成
要素である。TSM12は、テキスト・サービスを要求
するクライアント・アプリケーションと、要求されたテ
キスト・サービスを提供するソフトウェア・モジュール
(テキスト・サービス構成要素として知られる)との間
の通信を処理する。TSM12は、それが提供する特徴
へ2つの別々のプログラミング・インターフェースを与
える。即ち、1つはクライアント・アプリケーションの
ためのプログラミング・インターフェース、他の1つは
テキスト・サービス構成要素のためのプログラミング・
インターフェースである。TSM12は、これら2つの
タイプのプログラムが、相互の内部構造又はアイデンテ
ィティに関する知識を必要としないで相互に働くことが
できるように存在する。
【0021】テキスト・サービスは、多くの異なったタ
イプのタスクを含むことができる。テキスト・サービス
の1つのタイプであるインプット・メソッドは、テキス
ト入力を処理する。インプット・メソッドは、キーをタ
イプする、又はペン装置を使用して書く、などのユーザ
動作を解釈して、クライアント・アプリケーションのた
めにテキスト入力を生成するテキスト・サービス構成要
素である。インプット・メソッドは、ユーザ入力のため
の言語特定及び、又は装置特定メカニズムの集合として
定義されることができる。インプット・メソッドは、例
えばキー入力の組み合わせと、アジア系言語のマルチオ
クテット(multi-octet)符号化文字コードとの間のマ
ッピングを提供する。現在の時点で、インプット・メソ
ッドは、様々なシステム・プラットフォーム上で広く使
用され、クライアント・アプリケーションを入力の詳細
から分離している。
【0022】好ましい実施形態において、クライアント
・アプリケーション14は、TSM12を使用してイン
プット・メソッド15からテキスト・サービスを要求す
るTSM指向テキスト処理プログラムである。クライア
ント・アプリケーション14は、TSM12にTSM文
書の作成を命令する新TSM文書関数(NewTSMDocument
function)を使用して、TSM文書を作り出すことに
より、TSM指向クライアント・アプリケーションとし
て活性化させられるようになる。TSM12は、TSM
文書IDを返す。これは、後でTSM12への関数呼び
出しで与えられることのできる識別子である。典型的に
は、TSM文書は、クライアント・アプリケーション1
4が使用する各々のウィンドウのために作り出されるべ
きである。重要なことに、新TSM文書関数は、現在の
キーボード・スクリプトのためにデフォルトのインプッ
ト・メソッドをオープンし、それをTSM文書へ割り当
て、TSM文書IDを返す。
【0023】インプット・メソッド15は、TSM12
への活性化TSM文書関数(ActivateTSMDocument func
tion)によって、クライアント・アプリケーション14
へ自動的に結合されるようになる。具体的には、クライ
アント・アプリケーション14のためにTSM文書を活
性化させる前に、音声口述アプリケーション16は、イ
ンプット・モジュール15をデフォルトのインプット・
メソッドとして選択することができる。その後、活性化
TSM文書関数呼び出しを受け取ると、直ちにTSM1
2は、新しいTSM文書を現在アクティブなTSM文書
として記憶することができる。更に、インプット・モジ
ュール15が活性化される。更に、新TSM文書及び活
性化TSM文書への明白な呼び出しは、必ずしも必要で
はない。特に、TSMへのTSMTE拡張を使用してい
るとき、そうである。TSMTEの場合、一度TSMが
初期化されると、TSMTEは、TSM文書を活性化及
び非活性化することに加えて、TSM文書を自動的に作
り出すであろう。
【0024】図3は、図1のコンピュータ・システム1
における音声イネーブル・クライアント・アプリケーシ
ョン14の略図である。コンピュータ・システム1は、
本発明の配列に従った図2のアーキテクチャを有する。
オペレーティング・システム11内のマルチ処理システ
ムが示されており、オペレーティング・システム11の
上では,2つのアプリケーション、即ち、クライアント
・アプリケーション14及び音声口述アプリケーション
16が、別々の処理アドレス空間で実行されている。注
目すべきことに、クライアント・アプリケーション14
の変更なしに音声口述機能を提供するため、インプット
・メソッド15は、クライアント・アプリケーション1
4と音声口述アプリケーション16との間に配置され
る。インプット・メソッド15は、TSM12を使用し
てクライアント・アプリケーション14と通信すること
ができる。更に、インプット・メソッド15は、プロセ
ス間通信を使用して、音声口述アプリケーション16と
通信することができる。
【0025】インプット・メソッド15は、キーボード
入力への代替として、オペレーティング・システム11
によってロードされることができる。注目すべきこと
に、本発明のインプット・メソッド15は、プロセス間
通信を介して、別々に実行されている外部アプリケーシ
ョン(音声口述アプリケーション16)からテキスト入
力を受け取り、それをクライアント・アプリケーション
14のテキスト・バッファの中へ挿入する点で、既存の
MacOS(R)インプット・メソッドと異なる。好ま
しい実施形態において、プロセス間通信は、AEM13
によって管理されることができる。更に、本発明は、特
定のプロセス間通信メソッドの使用に限定されない。
【0026】動作において、インプット・メソッド15
は、クライアント・アプリケーション14が、TSM活
性化されるようになったとき、直ちにインプット・メソ
ッド15へ結合されることができるように、デフォルト
のインプット・メソッドへ設定されることができる。同
時に、音声口述アプリケーション16は、インプット・
メソッド15とのプロセス間通信接続を確立することが
できる。注目すべきことに、プロセス間通信接続は、A
EM13又は任意適切な他のプロセス間通信プロトコル
管理機能によって提供されることができる。その後、ユ
ーザは、音声口述アプリケーション16へ口述すること
ができる。音声口述アプリケーション16は、口述を受
け取ることができ、音声認識で周知の音声/テキスト変
換方法を使用して、口述された音声をテキストへ変換す
ることができる。テキストは、確立されたプロセス間通
信リンクを介してインプット・メソッド15へ通信され
ることができる。最後に、インプット・メソッド15
は、TSM12のテキスト挿入機能を使用して、クライ
アント・アプリケーション14のテキスト・バッファの
中へテキストを挿入することができる。注目すべきこと
に、インプット・メソッド15は、挿入されるテキスト
内の各々の文字のためにユーザがキーボードの各々のキ
ーを打つことをシミュレートすることなく、テキストを
テキスト・バッファの中へ挿入することができる。
【0027】更に、インプット・メソッド15は、TS
M12によって提供されるインプット・メソッド・フッ
クを使用して、クライアント・アプリケーション14の
テキスト・バッファ内のテキストを変更又は置換するこ
とができる。具体的には、ユーザが、クライアント・ア
プリケーション14のテキスト・バッファ内のテキスト
を選択するか、クライアント・アプリケーション14の
テキスト・バッファ内のテキストを変更するとき、イベ
ントは、TSM12によって提供されるゲットテキスト
(GetText)及びゲットイベント(GetEvent)・メソッ
ドを使用して、インプット・メソッド15によってトラ
ップされることができる。ゲットテキストは、日本のイ
ンプット・メソッドによってのみ使用されるオプション
のイベントである。ゲットテキストは、Takayuki Mizun
oによって、「Kotoeri's PrivateApple Event, GetTex
t」と題する1994年3月のテクニカル・ノートに文
書化されている。ゲットテキストは、インプット・メソ
ッドが、既に確認されたテキストを検索するメカニズム
としての、TSMプロトコルの拡張である。注目すべき
ことに、TSMTEは、ゲットテキスト・イベントのサ
ポートを提供する。
【0028】選択又は変更されるテキスト自体は、イベ
ントの中に埋め込まれている。従って、インプット・メ
ソッド15は、プロセス間通信リンクを介して、選択又
は変更されるテキストを更なる処理のために音声口述ア
プリケーション16へ送信することができる。推定でき
ることとして、ユーザが音声イネーブル・アプリケーシ
ョンのテキスト・バッファ内のテキストを選択又は変更
するとき、ユーザは誤った認識を特定する可能性があ
る。従って、プロセス間通信リンクを介してテキストを
受け取ると、直ちに音声口述アプリケーション16は、
音声/テキスト変換プロセスによって提供された元のテ
キストと、変更されるテキストとを比較することができ
る。その後、周知及び広く利用される音声認識エンジン
で提供される標準音声訂正機能に従って、代用語のリス
トが提供されることができる。
【0029】本発明の好ましい実施形態において、音声
口述アプリケーションは、代用語のリストを、グラフィ
カル・ユーザ・インターフェースの中でユーザへ表示す
ることができる。ユーザが代用語を選択すると(又は、
代替として、手作業で代用語を提供すると)、直ちに音
声口述アプリケーション16は、プロセス間通信リンク
を介して、代用語をインプット・メソッド15へ送信す
ることができる。そして今度は、インプット・メソッド
15が、TSM12によって提供されるテキスト挿入メ
ソッドを使用して、クライアント・アプリケーション1
4のテキスト・バッファへ代用テキストを挿入すること
ができる。
【0030】このようにして、音声認識機能をクライア
ント・アプリケーションの中へ統合する既存の方法とは
異なり、本発明の方法は、別々に実行されているクライ
アント・アプリケーションと音声口述アプリケーション
との間の仲介者としてインプット・メソッドを利用する
ことができる。インプット・メソッドを使用することに
よって、クライアント・アプリケーションは、音声でイ
ネーブルになるように変更される必要はない。むしろ、
インプット・メソッドを変更するだけでよい。更に、T
SMテキスト挿入機能を使用することによって、音声口
述テキストをクライアント・アプリケーションのテキス
ト・バッファへ挿入するためキーボード・ストロークを
シミュレートする必要はない。最後に、インプット・メ
ソッドをクライアント・アプリケーション内の足がかり
として使用することによって、インプット・メソッド及
び音声口述クライアント・アプリケーションは、誤って
認識された可能性のあるテキストの代用テキストを列挙
して選択された代用テキストをクライアント・アプリケ
ーションのテキスト・バッファへ戻すことのできる音声
口述インターフェースを駆動するため、双方向的に通信
することができる。
【0031】まとめとして、本発明の構成に関して以下
の事項を開示する。 (1)クライアント・アプリケーションを音声でイネー
ブルにする方法であって、インプット・メソッドを前記
クライアント・アプリケーションへ結合するステップ
と、前記インプット・メソッドと音声口述アプリケーシ
ョンとの間でプロセス間通信リンクを確立するステップ
と、前記音声口述アプリケーションの中で音声入力をテ
キストへ変換するステップと、前記プロセス間通信リン
クを介して、前記テキストを前記インプット・メソッド
へ送信するステップと、前記インプット・メソッドが、
前記テキストを前記クライアント・アプリケーションの
変更なしに、該クライアント・アプリケーションへ結合
された前記インプット・メソッドを介して、該クライア
ント・アプリケーション内のテキスト・バッファへ挿入
するステップとを含む、方法。 (2)前記挿入するステップが、シミュレートされるキ
ーボード・ストロークを前記クライアント・アプリケー
ションへ通信することなく実行される、上記(1)に記
載の方法。 (3)前記クライアント・アプリケーションにおけるテ
キストのユーザ選択を検出するステップと、前記選択さ
れたテキストを前記プロセス間通信リンクを介して、前
記音声口述アプリケーションへ送信するステップと、前
記選択されたテキストのために代わりの語を決定し、前
記代わりの語を表示し、前記代わりの語の1つの選択を
受け入れるステップと、前記選択された代わりの語を前
記プロセス間通信リンクを介して、前記インプット・メ
ソッドへ送信するステップと、前記インプット・メソッ
ドが、前記選択されたテキストを前記選択された代わり
の語で置換するステップとをさらに含む、上記(1)に
記載の方法。 (4)前記プロセス間通信リンクが、アップル・イベン
ト・インタープロセス・メッセージング・プロトコル・
リンクである、上記(1)に記載の方法。 (5)前記インプット・メソッド及びクライアント・ア
プリケーションが、別々のコンピュータ・システムに存
在する、上記(1)に記載の方法。 (6)クライアント・アプリケーションと、前記クライ
アント・アプリケーションへ結合されたインプット・メ
ソッドと、プロセス間通信リンクを介して、前記インプ
ット・メソッドへ通信的にリンクされる音声口述アプリ
ケーションとを含み、前記音声口述アプリケーション
は、音声入力を受け入れて前記音声入力をテキストへ変
換し、前記プロセス間通信リンクを介して、前記テキス
トを前記インプット・メソッドへ送信し、前記インプッ
ト・メソッドは、前記送信されたテキストを受け取っ
て、前記テキストを前記クライアント・アプリケーショ
ン内のテキスト・バッファへ挿入する、音声イネーブル
・クライアント・アプリケーション。 (7)前記インプット・メソッドが、シミュレートされ
るキーボード・ストロークを前記クライアント・アプリ
ケーションへ通信することなく、前記テキストを前記テ
キスト・バッファへ挿入する手段を含む、上記(6)に
記載の音声イネーブル・クライアント・アプリケーショ
ン。 (8)前記クライアント・アプリケーションにおけるテ
キストのユーザ選択を検出する手段をさらに含み、前記
検出手段が、前記選択されたテキストを前記インプット
・メソッドへ通信し、前記インプット・メソッドが、前
記プロセス間通信リンクを介して、前記選択されたテキ
ストを前記音声口述アプリケーションへ送信し、前記音
声口述アプリケーションが、前記選択されたテキストの
ために代わりの語を決定し、前記代わりの語を表示し、
前記代わりの語の1つの選択を受け入れ、前記プロセス
間通信リンクを介して前記選択された代わりの語を前記
インプット・メソッドへ送信し、前記インプット・メソ
ッドが、前記選択されたテキストを、前記選択された代
わりの語で置換する、上記(6)に記載の音声イネーブ
ル・クライアント・アプリケーション。 (9)前記プロセス間通信リンクが、アップル・イベン
ト・インタープロセス・メッセージング・プロトコル・
リンクを含む、上記(6)に記載の音声ネーブル・クラ
イアント・アプリケーション。 (10)前記インプット・メソッド及び前記音声口述ア
プリケーションが、別々のコンピュータ・システムに存
在する、上記(6)に記載の音声イネーブル・クライア
ント・アプリケーション。 (11)クライアント・アプリケーションを変更するこ
となく、該クライアント・アプリケーションを音声でイ
ネーブルにし、実行可能な複数のコード・セクションを
有するコンピュータ・プログラムを記憶する機械可読ス
トレージであって、インプット・メソッドを前記クライ
アント・アプリケーションへ結合するステップと、前記
インプット・メソッドと音声口述アプリケーションとの
間でプロセス間通信リンクを確立するステップと、前記
音声口述アプリケーション内で音声入力をテキストへ変
換するステップと、前記プロセス間通信リンクを介し
て、前記テキストを前記インプット・メソッドへ送信す
るステップと、前記インプット・メソッドが、前記テキ
ストを前記クライアント・アプリケーションの変更なし
に、該クライアント・アプリケーションへ結合された前
記インプット・メソッドを介して、該クライアント・ア
プリケーション内の前記テキスト・バッファへ挿入する
ステップとをコンピュータに実行させるコンピュータ・
プログラムを記憶する、機械可読ストレージ。 (12)前記挿入するステップが、シミュレートされる
キーボード・ストロークを前記クライアント・アプリケ
ーションへ通信することなく実行される、上記(11)
に記載の機械可読ストレージ。 (13)前記クライアント・アプリケーションにおける
テキストのユーザ選択を検出するステップと、前記プロ
セス間通信リンクを介して、前記選択されたテキストを
前記音声口述アプリケーションへ送信するステップと、
前記選択されたテキストのために代わりの語を決定し、
前記代わりの語を表示し、前記代わりの語の1つの選択
を受け入れるステップと、前記プロセス間通信リンクを
介して、前記選択された代わりの語を前記インプット・
メソッドへ送信するステップと、前記インプット・メソ
ッドが、前記選択されたテキストを前記選択された代わ
りの語で置換するステップとをさらに含む、上記(1
1)に記載の機械可読ストレージ。 (14)前記プロセス間通信リンクが、アップル・イベ
ント・インタープロセス・メッセージング・プロトコル
・リンクである、上記(11)に記載の機械可読ストレ
ージ。 (15)前記インプット・メソッド及びクライアント・
アプリケーションが、別々のコンピュータ・システムに
存在する、上記(11)に記載の機械可読ストレージ。
【図面の簡単な説明】
【図1】本発明の方法を実行できるように構成された音
声口述用コンピュータ・システムである。
【図2】図1のコンピュータ・システムのコンピュータ
・システム・アーキテクチャを示す。
【図3】本発明の配列に従った図1のコンピュータ・シ
ステムにおける音声イネーブル・クライアント・アプリ
ケーションの略図である。
【符号の説明】
1 コンピュータ・システム 2 中央処理装置(CPU) 3 RAM 4 HDD 5 オーディオ回路 6 オーディオ入力装置 7 オーディオ出力装置 8 ユーザ・インターフェース表示装置 9 マウス・ポインティング・デバイス 10 キーボード 11 オペレーティング・システム 12 テキスト・サービス・マネージャ(TSM) 13 アップル・イベント・マネージャ(AEM) 14 クライアント・アプリケーション 15 インプット・メソッド(インプット・モジュー
ル) 16 音声口述アプリケーション
───────────────────────────────────────────────────── フロントページの続き (72)発明者 エリック・エー・シー アメリカ合衆国33410 フロリダ州パー ム・ビーチ・ガーデンズ ガーデンズ・イ ースト・ドライブ 3349−シー Fターム(参考) 5D015 AA05 KK02

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】クライアント・アプリケーションを音声で
    イネーブルにする方法であって、 インプット・メソッドを前記クライアント・アプリケー
    ションへ結合するステップと、 前記インプット・メソッドと音声口述アプリケーション
    との間でプロセス間通信リンクを確立するステップと、 前記音声口述アプリケーションの中で音声入力をテキス
    トへ変換するステップと、 前記プロセス間通信リンクを介して、前記テキストを前
    記インプット・メソッドへ送信するステップと、 前記インプット・メソッドが、前記テキストを前記クラ
    イアント・アプリケーションの変更なしに、該クライア
    ント・アプリケーションへ結合された前記インプット・
    メソッドを介して、該クライアント・アプリケーション
    内のテキスト・バッファへ挿入するステップとを含む、
    方法。
  2. 【請求項2】前記挿入するステップが、シミュレートさ
    れるキーボード・ストロークを前記クライアント・アプ
    リケーションへ通信することなく実行される、請求項1
    に記載の方法。
  3. 【請求項3】前記クライアント・アプリケーションにお
    けるテキストのユーザ選択を検出するステップと、 前記選択されたテキストを前記プロセス間通信リンクを
    介して、前記音声口述アプリケーションへ送信するステ
    ップと、 前記選択されたテキストのために代わりの語を決定し、
    前記代わりの語を表示し、前記代わりの語の1つの選択
    を受け入れるステップと、 前記選択された代わりの語を前記プロセス間通信リンク
    を介して、前記インプット・メソッドへ送信するステッ
    プと、 前記インプット・メソッドが、前記選択されたテキスト
    を前記選択された代わりの語で置換するステップとをさ
    らに含む、請求項1に記載の方法。
  4. 【請求項4】前記プロセス間通信リンクが、アップル・
    イベント・インタープロセス・メッセージング・プロト
    コル・リンクである、請求項1に記載の方法。
  5. 【請求項5】前記インプット・メソッド及びクライアン
    ト・アプリケーションが、別々のコンピュータ・システ
    ムに存在する、請求項1に記載の方法。
  6. 【請求項6】クライアント・アプリケーションと、 前記クライアント・アプリケーションへ結合されたイン
    プット・メソッドと、 プロセス間通信リンクを介して、前記インプット・メソ
    ッドへ通信的にリンクされる音声口述アプリケーション
    とを含み、 前記音声口述アプリケーションは、音声入力を受け入れ
    て前記音声入力をテキストへ変換し、前記プロセス間通
    信リンクを介して、前記テキストを前記インプット・メ
    ソッドへ送信し、 前記インプット・メソッドは、前記送信されたテキスト
    を受け取って、前記テキストを前記クライアント・アプ
    リケーション内のテキスト・バッファへ挿入する、 音声イネーブル・クライアント・アプリケーション。
  7. 【請求項7】前記インプット・メソッドが、シミュレー
    トされるキーボード・ストロークを前記クライアント・
    アプリケーションへ通信することなく、前記テキストを
    前記テキスト・バッファへ挿入する手段を含む、請求項
    6に記載の音声イネーブル・クライアント・アプリケー
    ション。
  8. 【請求項8】前記クライアント・アプリケーションにお
    けるテキストのユーザ選択を検出する手段をさらに含
    み、 前記検出手段が、前記選択されたテキストを前記インプ
    ット・メソッドへ通信し、 前記インプット・メソッドが、前記プロセス間通信リン
    クを介して、前記選択されたテキストを前記音声口述ア
    プリケーションへ送信し、 前記音声口述アプリケーションが、前記選択されたテキ
    ストのために代わりの語を決定し、前記代わりの語を表
    示し、前記代わりの語の1つの選択を受け入れ、前記プ
    ロセス間通信リンクを介して前記選択された代わりの語
    を前記インプット・メソッドへ送信し、 前記インプット・メソッドが、前記選択されたテキスト
    を、前記選択された代わりの語で置換する、 請求項6に記載の音声イネーブル・クライアント・アプ
    リケーション。
  9. 【請求項9】前記プロセス間通信リンクが、アップル・
    イベント・インタープロセス・メッセージング・プロト
    コル・リンクを含む、請求項6に記載の音声イネーブル
    ・クライアント・アプリケーション。
  10. 【請求項10】前記インプット・メソッド及び前記音声
    口述アプリケーションが、別々のコンピュータ・システ
    ムに存在する、請求項6に記載の音声イネーブル・クラ
    イアント・アプリケーション。
  11. 【請求項11】クライアント・アプリケーションを変更
    することなく、該クライアント・アプリケーションを音
    声でイネーブルにし、実行可能な複数のコード・セクシ
    ョンを有するコンピュータ・プログラムを記憶する機械
    可読ストレージであって、 インプット・メソッドを前記クライアント・アプリケー
    ションへ結合するステップと、 前記インプット・メソッドと音声口述アプリケーション
    との間でプロセス間通信リンクを確立するステップと、 前記音声口述アプリケーション内で音声入力をテキスト
    へ変換するステップと、 前記プロセス間通信リンクを介して、前記テキストを前
    記インプット・メソッドへ送信するステップと、 前記インプット・メソッドが、前記テキストを前記クラ
    イアント・アプリケーションの変更なしに、該クライア
    ント・アプリケーションへ結合された前記インプット・
    メソッドを介して、該クライアント・アプリケーション
    内の前記テキスト・バッファへ挿入するステップとをコ
    ンピュータに実行させるコンピュータ・プログラムを記
    憶する、機械可読ストレージ。
  12. 【請求項12】前記挿入するステップが、シミュレート
    されるキーボード・ストロークを前記クライアント・ア
    プリケーションへ通信することなく実行される、請求項
    11に記載の機械可読ストレージ。
  13. 【請求項13】前記クライアント・アプリケーションに
    おけるテキストのユーザ選択を検出するステップと、 前記プロセス間通信リンクを介して、前記選択されたテ
    キストを前記音声口述アプリケーションへ送信するステ
    ップと、 前記選択されたテキストのために代わりの語を決定し、
    前記代わりの語を表示し、前記代わりの語の1つの選択
    を受け入れるステップと、 前記プロセス間通信リンクを介して、前記選択された代
    わりの語を前記インプット・メソッドへ送信するステッ
    プと、 前記インプット・メソッドが、前記選択されたテキスト
    を前記選択された代わりの語で置換するステップとをさ
    らに含む、請求項11に記載の機械可読ストレージ。
  14. 【請求項14】前記プロセス間通信リンクが、アップル
    ・イベント・インタープロセス・メッセージング・プロ
    トコル・リンクである、請求項11に記載の機械可読ス
    トレージ。
  15. 【請求項15】前記インプット・メソッド及びクライア
    ント・アプリケーションが、別々のコンピュータ・シス
    テムに存在する、請求項11に記載の機械可読ストレー
    ジ。
JP2001210559A 2000-07-12 2001-07-11 クライアント・アプリケーションを音声口述でイネーブルにする方法、音声イネーブル・クライアント・アプリケーション、および機械可読ストレージ Pending JP2002099405A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US61583500A 2000-07-12 2000-07-12
US09/615835 2000-07-12

Publications (1)

Publication Number Publication Date
JP2002099405A true JP2002099405A (ja) 2002-04-05

Family

ID=24467008

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001210559A Pending JP2002099405A (ja) 2000-07-12 2001-07-11 クライアント・アプリケーションを音声口述でイネーブルにする方法、音声イネーブル・クライアント・アプリケーション、および機械可読ストレージ

Country Status (2)

Country Link
JP (1) JP2002099405A (ja)
DE (1) DE10129634A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182805A (ja) * 2003-12-19 2005-07-07 Fuji Xerox Co Ltd 既存のユーザインターフェースを拡張するための方法およびシステム
JP2018060568A (ja) * 2007-08-16 2018-04-12 クリムソン コーポレイション 音声を利用できるテルネットインターフェイス
US10873621B1 (en) 2014-08-20 2020-12-22 Ivanti, Inc. Terminal emulation over html
US11100278B2 (en) 2016-07-28 2021-08-24 Ivanti, Inc. Systems and methods for presentation of a terminal application screen

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182805A (ja) * 2003-12-19 2005-07-07 Fuji Xerox Co Ltd 既存のユーザインターフェースを拡張するための方法およびシステム
JP2018060568A (ja) * 2007-08-16 2018-04-12 クリムソン コーポレイション 音声を利用できるテルネットインターフェイス
US10938886B2 (en) 2007-08-16 2021-03-02 Ivanti, Inc. Scripting support for data identifiers, voice recognition and speech in a telnet session
US10873621B1 (en) 2014-08-20 2020-12-22 Ivanti, Inc. Terminal emulation over html
US11100278B2 (en) 2016-07-28 2021-08-24 Ivanti, Inc. Systems and methods for presentation of a terminal application screen

Also Published As

Publication number Publication date
DE10129634A1 (de) 2002-01-24

Similar Documents

Publication Publication Date Title
KR101027548B1 (ko) 통신 시스템용 보이스 브라우저 다이얼로그 인에이블러
JP5179375B2 (ja) クライアント−サーバー計算システムにおいて音声アプリケーションを処理する方法及びサーバー
US7680816B2 (en) Method, system, and computer program product providing for multimodal content management
US7137126B1 (en) Conversational computing via conversational virtual machine
US7146323B2 (en) Method and system for gathering information by voice input
US7890333B2 (en) Using a WIKI editor to create speech-enabled applications
US7139715B2 (en) System and method for providing remote automatic speech recognition and text to speech services via a packet network
US8463608B2 (en) Interactive speech recognition model
US7519536B2 (en) System and method for providing network coordinated conversational services
US9065914B2 (en) System and method of providing generated speech via a network
EP1394692A1 (en) Method, terminal, browser application, and mark-up language for multimodal interaction between a user and a terminal
US20120259641A1 (en) Methods and apparatus for initiating actions using a voice-controlled interface
KR101098716B1 (ko) 컴퓨터 판독가능 매체 및 대화형 사용자 인터페이스 제공방법
JP2003216574A (ja) ダイアログを目的とするアプリケーション抽象化のための記録媒体及び方法
KR20050045817A (ko) 순차 멀티모달 입력
WO2003062941A2 (en) Multi-mode interactive dialogue apparatus and method
JP2002099405A (ja) クライアント・アプリケーションを音声口述でイネーブルにする方法、音声イネーブル・クライアント・アプリケーション、および機械可読ストレージ
JP7465124B2 (ja) 音声処理システム、音声処理方法、及び音声処理プログラム
Saha et al. A Framework for Artificially Intelligent Customized Voice Response System Design using Speech Synthesis Markup Language
EP1209660A2 (en) Voice navigation in web applications
JP2004246865A (ja) 音声応答ウェブシステム及びその入出力制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050315

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050315

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20050315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050316

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060626

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20060626