JP2019003657A - ゼロレイテンシデジタルアシスタント - Google Patents

ゼロレイテンシデジタルアシスタント Download PDF

Info

Publication number
JP2019003657A
JP2019003657A JP2018126316A JP2018126316A JP2019003657A JP 2019003657 A JP2019003657 A JP 2019003657A JP 2018126316 A JP2018126316 A JP 2018126316A JP 2018126316 A JP2018126316 A JP 2018126316A JP 2019003657 A JP2019003657 A JP 2019003657A
Authority
JP
Japan
Prior art keywords
user
processor
input
digital assistant
microphone
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
JP2018126316A
Other languages
English (en)
Inventor
ウィリアム エフ. スタシオ,
F Stasior William
ウィリアム エフ. スタシオ,
ディビッド エー. カーソン,
A Carson David
ディビッド エー. カーソン,
ロヒット ダサリ,
Dasari Rohit
ロヒット ダサリ,
ヨーン キム,
Yoon Kim
ヨーン キム,
Original Assignee
アップル インコーポレイテッドApple Inc.
Apple Inc
アップル インコーポレイテッドApple Inc.
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
Priority to US201562215608P priority Critical
Priority to US62/215,608 priority
Application filed by アップル インコーポレイテッドApple Inc., Apple Inc, アップル インコーポレイテッドApple Inc. filed Critical アップル インコーポレイテッドApple Inc.
Publication of JP2019003657A publication Critical patent/JP2019003657A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/06Digital input from or digital output to record carriers, e.g. RAID, emulated record carriers, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0602Dedicated interfaces to storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/06Digital input from or digital output to record carriers, e.g. RAID, emulated record carriers, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0628Dedicated interfaces to storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/06Digital input from or digital output to record carriers, e.g. RAID, emulated record carriers, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0668Dedicated interfaces to storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/285Memory allocation or algorithm optimisation to reduce hardware requirements
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/40Electronic components, circuits, software, systems or apparatus used in telephone systems using speech recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/74Details of telephonic subscriber devices with voice recognition means

Abstract

【課題】レイテンシを短縮したデジタルアシスタントを提供する。【解決手段】電子装置は、マイクからオーディオ入力を取り込み、第1のプロセッサを使用して、取り込んだオーディオ入力を表すオーディオデータをメモリバッファに書き込むことにより、ゼロ待ち時間デジタルアシスタントを実現する。オーディオ入力を取り込みながらユーザ入力を検出することに応答して、装置はユーザ入力が所定の基準を満たすか否かを判定する。ユーザ入力が基準を満たす場合、装置は、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてタスクを識別して実行する。【選択図】図9

Description

本願は、2015年9月8日に提出された米国仮特許出願第62/215608号「ゼロレイテンシデジタルアシスタント」、及び、2016年5月5日に提出された米国特許出願第15/147726「ゼロレイテンシデジタルアシスタント」に対する優先権を主張するものである。この出願の内容は、ここに全ての目的のために参照として組み込まれる。
本発明は、一般にデジタルアシスタントに関し、特にデジタルアシスタントのレイテンシの短縮に関する。
インテリジェントな自動アシスタント(又はデジタルアシスタント)は、人間のユーザと電子装置との間の有用なインタフェースを提供する。そのようなアシスタントにより、ユーザは音声及び/又はテキストで自然言語を使用して装置又はシステムと対話できる。例えばユーザは、電子装置に関連するデジタルアシスタントに音声でユーザ要求を提供することにより、電子装置のサービスにアクセスできる。デジタルアシスタントは、音声によるユーザ要求からユーザの意図を解釈でき、ユーザの意図をタスクとして実行できるようにする。識別されたタスクは電子装置の1つ以上のサービスを実行することにより実行され、関連する出力がユーザに返される。
電子装置でデジタルアシスタントを実現するいくつかの技術では、ユーザがデジタルアシスタントセッションを要求する時点と装置がデジタルアシスタントへの口頭入力を受信できる時点との間にレイテンシが発生し、ユーザにとって非効率的であり、直観的でない。既存の技術は必要以上に長い時間がかかり、ユーザの時間及び装置のエネルギーを浪費する。この後者の問題点は、バッテリ式装置において特に重要である。
従って、デジタルアシスタントセッションを呼び出すユーザが経験する上述したレイテンシを短縮又は除去する更に高速で効率的な方法及びインタフェースを有する電子装置が必要とされる。そのような方法及びインタフェースは、デジタルアシスタントの効率及び精度を向上する他の方法を任意に補完するか又はその代わりとなる。そのような方法及びインタフェースはユーザにかかる認知負担を軽減し、更に効率的なヒューマンマシンインタフェースを生成する。バッテリ式コンピューティングデバイスの場合、そのような方法及びインタフェースにより、タイミングが不適切な音声入力の発生及びそれに対応して要求されたタスクが誤って識別されることが減少し、それにより節電され、バッテリ充電間隔が延びる。
いくつかの実施形態において、デジタルアシスタントを実現する方法は、マイク、第1のプロセッサ及び第2のプロセッサを含む電子装置において、マイクからオーディオ入力を取り込むことと、第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込むことと、マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出することと、第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定することと、ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別することと、ユーザ入力が基準を満たさなかったという判定に基づいて、タスクを識別することを見送ることとを含む。
いくつかの実施形態において、非一時的コンピュータ可読記憶媒体は、マイクを有する電子装置の第1のプロセッサ及び第2のプロセッサにより実行される場合に、装置に、マイクからオーディオ入力を取り込ませる命令と、第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込ませる命令と、マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出させる命令と、第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定させる命令と、ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別させる命令と、ユーザ入力が基準を満たさなかったという判定に基づいて、タスクを識別することを見送らせる命令とを含む1つ以上のプログラムを記憶する。
いくつかの実施形態において、一時的コンピュータ可読記憶媒体は、マイクを有する電子装置の第1のプロセッサ及び第2のプロセッサにより実行される場合に、装置に、マイクからオーディオ入力を取り込ませる命令と、第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込ませる命令と、マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出させる命令と、第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定させる命令と、ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別させる命令と、ユーザ入力が基準を満たさなかったという判定に基づいて、タスクを識別することを見送らせる命令とを含む1つ以上のプログラムを記憶する。
いくつかの実施形態において、電子装置は、マイクと、2つ以上のプロセッサと、メモリと、1つ以上のプログラムとを含み、1つ以上のプログラムはメモリに記憶され、2つ以上のプロセッサにより実行されるように構成され、1つ以上のプログラムは、マイクからオーディオ入力を取り込むための命令と、第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込むための命令と、マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出するための命令と、第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定するための命令と、ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別するための命令と、ユーザ入力が基準を満たさなかったという判定に基づいて、タスクを識別することを見送るための命令とを含む。
いくつかの実施形態において、デジタルアシスタントを実現する方法は、マイク、第1のプロセッサ及び第2のプロセッサを含む電子装置において、第2のプロセッサが低電力モードの間に、マイクからオーディオ入力を取り込むことと、第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込むことと、第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定することと、バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、第2のプロセッサに低電力モードを終了させることと、第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別することと、第2のプロセッサを使用して、識別されたタスクを実行することと、バッファの少なくとも第1の部分が基準を満たさないという判定に基づいて、第2のプロセッサに低電力モードを終了させることを見送ることとを含む。
いくつかの実施形態において、非一時的コンピュータ可読記憶媒体は、マイクを有する電子装置の第1のプロセッサ及び第2のプロセッサにより実行される場合に、装置に、第2のプロセッサが低電力モードの間に、マイクからオーディオ入力を取り込ませる命令と、第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込ませる命令と、第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定させる命令と、バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、第2のプロセッサに低電力モードを終了させる命令と、第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別させる命令と、第2のプロセッサを使用して、識別されたタスクを実行させる命令と、バッファの少なくとも第1の部分が基準を満たさないという判定に基づいて、第2のプロセッサに低電力モードを終了させることを見送らせる命令とを含む1つ以上のプログラムを記憶する。
いくつかの実施形態において、一時的コンピュータ可読記憶媒体は、マイクを有する電子装置の第1のプロセッサ及び第2のプロセッサにより実行される場合に、装置に、第2のプロセッサが低電力モードの間に、マイクからオーディオ入力を取り込ませる命令と、第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込ませる命令と、第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定させる命令と、バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、第2のプロセッサに低電力モードを終了させる命令と、第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別させる命令と、第2のプロセッサを使用して、識別されたタスクを実行させる命令と、バッファの少なくとも第1の部分が基準を満たさないという判定に基づいて、第2のプロセッサに低電力モードを終了させることを見送らせる命令とを含む1つ以上のプログラムを記憶する。
いくつかの実施形態において、電子装置は、マイクと、2つ以上のプロセッサと、メモリと、1つ以上のプログラムとを含み、1つ以上のプログラムはメモリに記憶され、2つ以上のプロセッサにより実行されるように構成され、1つ以上のプログラムは、第2のプロセッサが低電力モードの間に、マイクからオーディオ入力を取り込むための命令と、第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込むための命令と、第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定するための命令と、バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、第2のプロセッサに低電力モードを終了させるための命令と、第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別するための命令と、第2のプロセッサを使用して、識別されたタスクを実行するための命令と、バッファの少なくとも第1の部分が基準を満たさないという判定に基づいて、第2のプロセッサに低電力モードを終了させることを見送るための命令とを含む。
それらの機能を実行するための実行可能命令は、1つ以上のプロセッサにより実行されるように構成された非一時的コンピュータ可読記憶媒体又は他のコンピュータプログラムに任意に含まれる。それらの機能を実行するための実行可能命令は、2つ以上のプロセッサにより実行されるように構成された一時的コンピュータ可読記憶媒体又は他のコンピュータプログラムに任意に含まれる。
このように、デジタルアシスタントを実現する更に高速で効率的な方法及びインタフェースが装置に提供され、そのような装置の有効性及び効率、並びにそのような装置に対するユーザ満足度が向上する。そのような方法及びインタフェースは、デジタルアシスタントを実現する他の方法を補完するか又はその代わりとなってもよい。
説明される種々の実施形態を更に理解するために、以下の図面と関連して以下の発明を実施するための形態を参照する。図中、同様の図中符号は対応する部分を表す。
図1は、種々の例に係るデジタルアシスタントを実現するシステム及び環境を示すブロック図である。 図2Aは、種々の例に係るデジタルアシスタントのクライアント側部分を実現するポータブル多機能装置を示すブロック図である。 図2Bは、種々の例に係るイベント処理のための例示的な構成要素を示すブロック図である。 図3は、種々の例に係るデジタルアシスタントのクライアント側部分を実現するポータブル多機能装置を示すブロック図である。 図4は、種々の例に係るディスプレイ及びタッチセンシティブ表面を有する例示的な多機能装置を示すブロック図である。 図5Aは、種々の例に係るポータブル多機能装置におけるアプリケーションのメニューを表す例示的なユーザインタフェースを示す図である。 図5Bは、種々の例に係るディスプレイとは別のタッチセンシティブ表面を有する多機能装置の例示的なユーザインタフェースを示す図である。 図6Aは、種々の例に係るパーソナル電子装置を示す図である。 図6Bは、種々の例に係るパーソナル電子装置を示すブロック図である。 図7Aは、種々の例に係るデジタルアシスタントシステム又はそのサーバ部分を示すブロック図である。 図7Bは、種々の例に係る図7Aに示すデジタルアシスタントの機能を示す図である。 図7Cは、種々の例に係るオントロジの一部分を示す図である。 図8Aは、レイテンシを伴う従来技術のデジタルアシスタントを示す概念図である。 図8Bは、種々の例に係る電子装置でデジタルアシスタントを実現するために使用されるプロセッサを示すブロック図である。 図8Cは、種々の例に係るゼロレイテンシデジタルアシスタントを示す概念図である。 図8Dは、種々の例に係るゼロレイテンシデジタルアシスタントを示す概念図である。 図8Eは、種々の例に係るゼロレイテンシデジタルアシスタントを示す概念図である。 図9は、種々の例に係るゼロレイテンシデジタルアシスタントを実現する方法を示すフローチャートである。 図10は、種々の例に係るゼロレイテンシデジタルアシスタントを実現する方法を示すフローチャートである。 図11は、種々の例に係る電子装置を示す機能ブロック図である。 図12は、種々の例に係る電子装置を示す機能ブロック図である。
以下の説明は、例示的な方法、パラメータなどを挙げる。しかし、そのような説明は本開示の範囲を制限することを意図せず、例示的な実施形態の説明として提供されることを認識すべきである。
非特定の構造化されていない自然言語での要求に基づいてタスクを識別して実行する効率的な方法及びインタフェースを提供する電子装置が必要とされる。ユーザがデジタルアシスタントセッションを呼び出して音声要求を即座に提供できるようにするゼロレイテンシデジタルアシスタントは、ユーザにかかる認知負担を軽減し、生産性を向上する。更に、そのような技術は、冗長なユーザ入力又は遅延により浪費されるプロセッサ及びバッテリの電力を減少できる。
以下、図1、図2A、図2B、図3、図4、図5A、図5B、図6A〜図6C、図8B、図11及び図12は、ゼロレイテンシデジタルアシスタントを実現する技術を実行する例示的な装置の説明を提供する。図7A〜図7Cは、デジタルアシスタントシステム又はそのサーバ部分、並びにデジタルアシスタントシステムに関連するオントロジの一部分を示すブロック図である。図8Aは、レイテンシを伴うデジタルアシスタントの概念図である。図8C〜図8Eは、いくつかの実施形態に係るゼロレイテンシデジタルアシスタントの概念図である。図9及び図10は、いくつかの実施形態に係るゼロレイテンシデジタルアシスタントを実現する方法を示すフローチャートである。
以下の説明では、種々の要素を説明するために「第1の」、「第2の」などの用語を使用するが、それらの要素はその用語により限定されるべきではない。それらの用語は、1つの要素を別の要素と区別するために使用されるにすぎない。例えば、説明される種々の実施形態の範囲から逸脱せずに第1のタッチを第2のタッチということは可能であり、同様に、第2のタッチを第1のタッチということも可能だろう。第1のタッチ及び第2のタッチは共にタッチであるが、同一のタッチではない。
説明される種々の実施形態の説明で使用される用語は、特定の実施形態を説明することを目的としており、限定的な意味を持つことを意図しない。説明される種々の実施形態の説明及び添付の特許請求の範囲で使用される場合の単数形は、文脈上、明示して指示されない限り、複数形も含むことを意図する。また、本明細書で使用される場合の用語「及び/又は」は、列挙される関連項目のうち1つ以上を表し、それらの項目の可能なあらゆる組み合わせを含むことが理解されるだろう。更に、本明細書で使用される場合の用語「含む」及び/又は「備える」は、そこで述べられる特徴、数字、ステップ、動作、要素及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、数字、ステップ、動作、要素、構成要素及び/又はそれらの集合の存在又は追加を除外しないことが更に理解されるだろう。
用語「〜である場合」は、文脈に応じて、「〜であるとき」又は「〜の時点で」又は「〜との判定に応答して」又は「〜の検出に応答して」を意味すると解釈されてもよい。同様に、「〜と判定された場合」又は「『そこに挙げられている条件又はイベント』が検出された場合」は、文脈に応じて、「〜と判定されたとき」又は「〜との判定に応答して」又は「『そこに挙げられている条件又はイベント』を検出したとき」又は「『そこに挙げられている条件又はイベント』の検出に応答して」を意味すると解釈されてもよい。
電子装置、そのような装置のユーザインタフェース及びそのような装置を使用するための関連処理の実施形態が説明される。いくつかの実施形態において、装置は、PDA機能及び/又は音楽プレーヤ機能などの他の機能を更に含む移動電話のようなポータブル通信装置である。ポータブル多機能装置の例示的な実施形態は、カリフォルニア州クパチーノのApple Inc.によるiPhone(登録商標)、iPod Touch(登録商標)及びiPad(登録商標)の各装置を含むが、それらに限定されない。タッチセンシティブ表面(例えば、タッチ画面ディスプレイ及び/又はタッチパッド)を有するラップトップ、タブレットコンピュータ又はスマートウォッチなどの他のポータブル電子装置が任意に使用される。いくつかの実施形態において、装置はポータブル通信装置ではなく、タッチセンシティブ表面(例えば、タッチ画面ディスプレイ及び/又はタッチパッド)を有するデスクトップコンピュータであることも理解すべきである。
以下の説明中、ディスプレイ及びタッチセンシティブ表面を含む電子装置が説明される。しかし、電子装置は、物理的キーボード、マウス及び/又はジョイスティックなどの1つ以上の他の物理的ユーザインタフェース装置を任意に含むことを理解すべきである。
装置は、描画アプリケーション、プレゼンテーションアプリケーション、文書処理アプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、ビデオ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、ワークアウトサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブ閲覧アプリケーション、デジタル音楽プレーヤアプリケーション及び/又はデジタルビデオプレーヤアプリケーションのうち1つ以上などの多様なアプリケーションをサポートしてもよい。
装置で実行される種々のアプリケーションは、タッチセンシティブ表面などの少なくとも1つの一般的な物理的ユーザインタフェース装置を任意に使用する。タッチセンシティブ表面並びに装置に表示される対応する情報の1つ以上の機能は、アプリケーションごとに及び/又はそれぞれのアプリケーションの中で任意に調整され及び/又は変更される。このように、装置の一般的な物理的アーキテクチャ(タッチセンシティブ表面など)は、直観的であり、ユーザにわかりやすいユーザインタフェースによって、多様なアプリケーションを任意にサポートする。
図1は、種々の例に係るシステム100のブロック図である。いくつかの例では、システム100はデジタルアシスタントを実現する。用語「デジタルアシスタント」、「仮想アシスタント」、「インテリジェント自動アシスタント」又は「自動デジタルアシスタント」は、音声及び/又はテキストでの自然言語入力を解釈してユーザの意図を推論し、推論されたユーザの意図に基づく動作を実行するあらゆる情報処理システムを表す。例えば推論されたユーザの意図に基づいて動作するために、システムは、推論されたユーザの意図を達成するように設計されたステップ及びパラメータを有するタスクフローを識別すること、推論されたユーザの意図に含まれる特定の条件をタスクフローに入力すること、プログラム、方法、サービス又はAPIなどを呼び出すことによりタスクフローを実行すること、ユーザへの出力応答を可聴(例えば、音声)及び/又は視覚形態で生成することのうちの1つ以上を実行できる。
特に、デジタルアシスタントは、少なくとも部分的に自然言語での命令、要求、発言、文章及び/又は問合せの形態のユーザ要求を受け取ることができる。通常、ユーザ要求はデジタルアシスタントによる情報の回答又はタスクの実行を求める。ユーザ要求に対する十分な応答は、要求された情報の回答を提供すること、要求されたタスクを実行すること又はそれらの組み合わせである。例えばユーザは、「現在地はどこ?」などの質問をデジタルアシスタントに尋ねることができる。ユーザの現在地に基づいて、デジタルアシスタントは「現在地はセントラルパークの西門周辺です」と回答できる。また、ユーザは、「友達を来週のガールフレンドの誕生会に招待して」などのタスクの実行を要求できる。それに応答して、デジタルアシスタントは、「はい、今すぐに」と述べることにより要求を受け取ったことを通知し、ユーザの電子アドレス帳に列挙されたユーザの友達のそれぞれに適切なカレンダ招待をユーザの代わりに送信できる。要求されたタスクを実行する間、場合によっては、デジタルアシスタントは長時間にわたる複数の情報交換を含む継続的会話でユーザと対話する。情報又は種々のタスクの実行を要求するためにデジタルアシスタントと対話する多くの他の方法が存在する。音声応答の提供及びプログラミングされた動作の実行に加えて、デジタルアシスタントは例えばテキスト、アラート、音楽、ビデオ、アニメーションなどの他の視覚又はオーディオ形態で応答を更に提供できる。
図1に示すように、いくつかの例では、デジタルアシスタントはクライアントサーバモデルに従って実現可能である。デジタルアシスタントは、ユーザ装置104で実行されるクライアント側部分102(以下、「DAクライアント102」)とサーバシステム108で実行されるサーバ側部分106(以下、「DAサーバ106」)とを含む。DAクライアント102は、1つ以上のネットワーク110を介してDAサーバ106と通信する。DAクライアント102は、ユーザに対する入出力処理及びDAサーバ106との通信などのクライアント側機能性を提供する。DAサーバ106は、各ユーザ装置104に各々が常駐するあらゆる数のDAクライアント102に対するサーバ側機能性を提供する。
いくつかの例では、DAサーバ106は、クライアントに対するI/Oインタフェース112、1つ以上の処理モジュール114、データ及びモデル116、外部サービスに対するI/Oインタフェース118を含む。クライアントに対するI/Oインタフェース112は、DAサーバ106のクライアントに対する入出力処理を容易にする。1つ以上の処理モジュール114は、データ及びモデル116を使用して音声入力を処理し、自然言語入力に基づいてユーザの意図を判定する。更に、1つ以上の処理モジュール114は、推論されたユーザの意図に基づいてタスクを実行する。いくつかの例では、DAサーバ106は、タスクを完了するか又は情報を取得するために、ネットワーク110を介して外部サービス120と通信する。外部サービスに対するI/Oインタフェース118は、そのような通信を容易にする。
ユーザ装置104は、あらゆる適切な電子装置である。例えばユーザ装置は、ポータブル多機能装置(例えば、図2Aを参照して以下に説明する装置200)、多機能装置(例えば、図4を参照して以下に説明する装置400)又はパーソナル電子装置(例えば、図6A及び図6Bを参照して以下に説明する装置600)である。ポータブル多機能装置は、例えばPDA及び/又は音楽プレーヤ機能などの他の機能を更に含む移動電話である。ポータブル多機能装置の具体例は、カリフォルニア州クパチーノのApple Inc.によるiPhone(登録商標)、iPod Touch(登録商標)及びiPad(登録商標)の各装置を含む。ポータブル多機能装置の他の例はラップトップ又はラブレットコンピュータを含むが、それらに限定されない。更に、いくつかの例では、ユーザ装置104は非ポータブル多機能装置である。特に、ユーザ装置104は、デスクトップコンピュータ、ゲームコンソール、テレビ又はテレビのセットトップボックスである。いくつかの例では、ユーザ装置104はタッチセンシティブ表面(例えば、例えば、タッチ画面ディスプレイ及び/又はタッチパッド)を含む。更に、ユーザ装置104は、物理的キーボード、マウス及び/又はジョイスティックなどの1つ以上の他の物理的ユーザインタフェース装置を任意に含む。多機能装置などの電子装置の種々の例を以下に更に詳細に説明する。
通信ネットワーク110の例は、ローカルエリアネットワーク(LAN)、例えばインターネットであるワイドエリアネットワーク(WAN)を含む。通信ネットワーク110は、例えばイーサネット、ユニバーサルシリアルバス(USB)、FIREWIRE、汎欧州デジタル移動電話方式(GSM)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、Bluetooth、Wi−Fi、ボイスオーバーインターネットプロトコル(VoIP)、Wi−MAX、あるいは他の何らかの適切な通信プロトコルなどの種々の有線プロトコル又は無線プロトコルを含むあらゆる既知のネットワークプロトコルを使用して実現可能である。
サーバシステム108は、1つ以上の独立型データ処理装置又はコンピュータの分散ネットワークにおいて実現可能である。いくつかの例では、サーバシステム108は、サーバシステム108の下層のコンピューティングリソース及び/又はインフラストラクチャリソースを提供するために第3者のサービスプロバイダ(例えば、第3者のクラウドサービスプロバイダ)の種々の仮想装置及び/又はサービスを更に使用できる。
いくつかの例では、ユーザ装置104は第2のユーザ装置122を介してDAサーバ106と通信する。第2のユーザ装置122は、ユーザ装置104と同様又は同一である場合がある。例えば第2のユーザ装置122は、図2A、図4、図6A及び図6Bを参照して以下に説明する装置200、400又は600と同様である。ユーザ装置104は、Bluetooth、NFC又はBTLEなどの直接通信接続を介して、あるいはローカルWi−Fiネットワークなどの有線又は無線ネットワークを介して、第2のユーザ装置122と通信可能に結合するように構成される。いくつかの例では、第2のユーザ装置122は、ユーザ装置104とDAサーバ106との間のプロキシとして動作するように構成される。例えばユーザ装置104のDAクライアント102は、第2のユーザ装置122を介してDAサーバ106に情報(例えば、ユーザ装置104で受信されたユーザ要求)を送信するように構成される。DAサーバ106は、情報を処理し、第2のユーザ装置122を介してユーザ装置104に関連データ(例えば、ユーザ要求に応答するデータ内容)を返す。
いくつかの例では、ユーザ装置104は、ユーザ装置104から送信される情報量を減少するために、短縮されたデータ要求を第2のユーザ装置122に通信するように構成される。第2のユーザ装置122は、短縮された要求に追加する補足情報を判定して、DAサーバ106へ送信される完全な要求を生成するように構成される。このシステムアーキテクチャにより、通信容量及び/又はバッテリ電力が制限されるユーザ装置104(例えば、ウォッチ又は同様の小型電子装置)は通信容量及び/又はバッテリ電力が多い第2のユーザ装置122(例えば、移動電話、ラップトップコンピュータ又はタブレットコンピュータなど)をDAサーバ106に対するプロキシとして使用して、DAサーバ106により提供されるサービスに有利にアクセスできる。2つのユーザ装置104及び122のみを図1に示すが、システム100は、このプロキシ構成でDAサーバシステム106と通信するように構成されるあらゆる数及び種類のユーザ装置を含むことができることを理解するべきである。
図1に示すデジタルアシスタントはクライアント側部分(例えば、DAクライアント102)及びサーバ側部分(例えば、DAサーバ106)の双方を含むが、いくつかの例では、デジタルアシスタントの機能はユーザ装置にインストールされた独立型アプリケーションとして実現可能である。更に、デジタルアシスタントの機能性のクライアント部分とサーバ部分との分配は種々の実現例で異なる。例えばいくつかの例では、DAクライアントは、ユーザに対する入出力処理機能のみを提供し、デジタルアシスタントの全ての他の機能性をバックエンドサーバに委任するシンクライアントである。
1.電子装置
次に、デジタルアシスタントのクライアント側部分を実現する電子装置の実施形態に注目する。図2Aは、いくつかの実施形態に係るタッチセンシティブディスプレイシステム212を有するポータブル多機能装置200を示すブロック図である。タッチセンシティブディスプレイ212は、便宜上、「タッチ画面」と呼ばれる場合もあり、場合によっては「タッチセンシティブディスプレイシステム」として知られているか又はそう呼ばれている。装置200は、メモリ202(1つ以上のコンピュータ可読記憶媒体を任意に含む)、メモリコントローラ222、1つ以上の処理部(CPU)220、周辺機器インタフェース218、RF回路網208、オーディオ回路網210、スピーカ211、マイク213、入出力(I/O)サブシステム206、他の入力制御装置216及び外部ポート224を含む。装置200は1つ以上の光センサ264を任意に含む。装置200は、装置200(例えば、装置200のタッチセンシティブディスプレイシステム212などのタッチセンシティブ表面)への接触の強度を検出する1つ以上の接触強度センサ265を任意に含む。装置200は、装置200で触覚出力を生成する(例えば、装置200のタッチセンシティブディスプレイシステム212又は装置400のタッチパッド455などのタッチセンシティブ表面で触覚出力を生成する)1つ以上の触覚出力生成器267を任意に含む。それらの構成要素は、任意に1つ以上の通信バス又は信号回線203を介して通信する。
明細書及び特許請求の範囲で使用される場合の用語であるタッチセンシティブ表面への接触の「強度」という用語は、タッチセンシティブ表面への接触(例えば、指による接触)の力又は圧力(単位面積当たりの力)、あるいはタッチセンシティブ表面への接触の力又は圧力に代わるもの(プロキシ)を表す。接触の強度は、少なくとも4つの個別の値を含み、より一般的には数百の個別の値(例えば、少なくとも256の値)を含む値の範囲を有する。接触の強度は、任意に、種々の方式及び種々のセンサ又はセンサの種々の組み合わせを使用して判定(又は測定)される。例えば、タッチセンシティブ表面の種々のポイントにおける力を測定するために、タッチセンシティブ表面の下方の又はタッチセンシティブ表面に隣接する1つ以上の力センサが任意に使用される。いくつかの実現形態では、接触の推定力を判定するために、複数の力センサからの力測定値が組み合わされる(例えば、加重平均)。同様に、タッチセンシティブ表面へのスタイラスの圧力を判定するために、スタイラスの感圧先端部が任意に使用される。あるいは、タッチセンシティブ表面への接触の力又は圧力に代わるものとして、タッチセンシティブ表面で検出される接触面積の大きさ及び/又はその変化、接触部に近接するタッチセンシティブ表面のキャパシタンス及び/又はその変化、及び/又は接触部に近接するタッチセンシティブ表面の抵抗及び/又はその変化が任意に使用される。いくつかの実現形態では、強度閾値を超えたか否かを判定するために、接触の力又は圧力の代替測定値が直接使用される(例えば、強度閾値は代替測定値に対応する単位で記述される)。いくつかの実現形態では、接触の力又は圧力の代替測定値は推定力又は推定圧力に変換され、強度閾値を超えたか否かを判定するために、この推定力又は推定圧力が使用される(例えば、強度閾値は圧力の単位で測定される圧力閾値である)。ユーザ入力の属性として接触の強度を使用することにより、ユーザは、アフォーダンスを(例えば、タッチセンシティブディスプレイに)表示するための面積が限定されている小型装置ではユーザがアクセス不可能であるかもしれない装置の追加機能性にアクセスでき及び/又は(例えば、タッチセンシティブディスプレイ、タッチセンシティブ表面、あるいはつまみ又はボタンなどの物理的/機械的制御要素を介して)ユーザ入力を受信できる。
明細書及び特許請求の範囲で使用される場合の用語「触覚出力」は、ユーザの触覚によってユーザにより検出される装置の以前の位置に対する装置の物理的変位、装置の別の構成要素(例えば、筐体)に対する装置の構成要素(例えば、タッチセンシティブ表面)の物理的変位、又は装置の質量の中心に対する構成要素の変位を表す。例えば、装置又は装置の構成要素が接触を感知するユーザの皮膚面(例えば、ユーザの手の指、手のひら又は他の部分)と接触している状況で、物理的変位により発生される触覚出力は、装置又は装置の構成要素の物理的特性の認知された変化に対応する触知感覚としてユーザにより解釈される。例えば、タッチセンシティブ表面(例えば、タッチセンシティブディスプレイ又はトラックパッド)の動きは、任意に、物理的アクチュエータボタンの「ダウンクリック」又は「アップクリック」としてユーザにより解釈される。場合によっては、ユーザの動きにより物理的に押圧(例えば、変位)されたタッチセンシティブ表面と関連する物理的アクチュエータボタンに動きがなくても、ユーザは「ダウンクリック」又は「アップクリック」などの触感を感じる。別の例として、タッチセンシティブ表面の動きは、タッチセンシティブ表面の平滑度に変化がない場合であっても、タッチセンシティブ表面の「凹凸」として任意にユーザにより解釈又は感知される。ユーザによるこのような接触の解釈はユーザ個人の感覚認知により影響を受けるが、大多数のユーザに共通する接触の感覚認知は数多く存在する。従って、触覚出力がユーザの特定の感覚認知(例えば、「アップクリック」、「ダウンクリック」又は「凹凸」)に対応するものとして説明される場合、特に指示のない限り、発生される触覚出力は、通常の(又は平均的な)ユーザに関して説明される感覚認知を生成する装置又はその構成要素の物理的変位に対応する。
装置200はポータブル多機能装置の単なる一例にすぎず、装置200は、図示されている構成要素より多くの数の又は少ない数の構成要素を任意に有するか、2つ以上の構成要素を任意に組み合わせるか、あるいは構成要素の異なる構成又は配置を任意に有することを理解すべきである。図2Aに示される種々の構成要素は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含めて、ハードウェア、ソフトウェア又はハードウェアとソフトウェアの双方の組み合わせで実現される。
メモリ202は1つ以上のコンピュータ可読記憶媒体を含んでもよい。コンピュータ可読記憶媒体は有形且つ非一時的であってもよい。メモリ202は高速ランダムアクセスメモリを含んでもよく、1つ以上の磁気ディスク記憶装置、フラッシュメモリ装置又は他の不揮発性固体メモリ装置などの不揮発性メモリを更に含んでもよい。メモリコントローラ222は、装置200の他の構成要素によるメモリ202へのアクセスを制御してもよい。
いくつかの例では、コンピュータベースのシステム、プロセッサを含むシステムなどの命令実行システム又は装置、あるいは命令実行システム又は装置から命令を取り出して実行できる他のシステムにより使用されるか又はそれらと関連して使用される命令(例えば、以下に説明する方法900の側面を実行するための)を記憶するために、メモリ202の非一時的コンピュータ可読記憶媒体を使用できる。他の例では、命令(例えば、以下に説明する方法900の側面を実行するための)はサーバシステム108の非一時的コンピュータ可読記憶媒体(図示せず)に記憶されるか、あるいはメモリ202の非一時的コンピュータ可読記憶媒体とサーバシステム108の非一時的コンピュータ可読記憶媒体とに分割される。本明細書中、「非一時的コンピュータ可読記憶媒体」は、命令実行システム又は装置により使用されるか又はそれらと関連して使用されるプログラムを含むか又は記憶できるあらゆる媒体である。
周辺機器インタフェース218は、装置の入力周辺機器及び出力周辺機器をCPU220及びメモリ202に結合するために使用可能である。1つ以上のプロセッサ220は、装置200の種々の機能を実行し且つデータを処理するために、メモリ202に記憶された種々のソフトウェアプログラム及び/又は命令のセットを実行する。いくつかの実施形態では、周辺機器インタフェース218、CPU220及びメモリコントローラ222は、チップ204のような単一のチップで実現されてもよい。いくつかの他の実施形態では、それらは個別のチップで実現されてもよい。
RF(無線周波数)回路網208は、電磁信号とも呼ばれるRF信号を受信し、送信する。RF回路網208は、電気信号を電磁信号に変換し、また、電磁信号から電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信装置と通信する。RF回路網208は、それらの機能を実行するために、アンテナシステム、RFトランシーバ、1つ以上の増幅器、チューナ、1つ以上の発振器、デジタルシグナルプロセッサ、CODECチップセット、サブスクライバアイデンティティモジュール(SIM)カード、メモリなどを含むが、それらに限定されない周知の回路網を任意に含む。RF回路網208は、ワールドワイドウェブ(WWW)とも呼ばれるインターネット、イントラネット及び/又は携帯電話網、無線ローカルエリアネットワーク(LAN)及び/又はメトロポリタンエリアネットワーク(MAN)などの無線ネットワークのようなネットワーク及び他の装置と無線通信により任意に通信する。RF回路網208は、近距離通信無線などにより近距離通信(NFC)フィールドを検出する周知の回路網を任意に含む。無線通信は、汎欧州デジタル移動電話方式(GSM)、拡張データGSM環境(EDGE)、高速ダウンリンクパケットアクセス(HSDPA)、高速アップリンクパケットアクセス(HSUPA)、Evolution Data−Only(EV−DO)、HSPA、HSPA+、デュアルセルHSPA(DC−HSPDA)、ロングタームエボリューション(LTE)、近距離通信(NFC)、広帯域符号分割多元接続(W−CDMA)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、Bluetooth、Bluetooth Low Energy(BTLE)、Wireless Fidelity(Wi−Fi)(例えば、IEEE802.11a、IEEE802.11b、IEEE802.11g、IEEE802.11n及び/又はIEEE802.11ac)、ボイスオーバーインターネットプロトコル(VoIP)、Wi−MAX、電子メール用プロトコル(例えば、インターネットメッセージアクセスプロトコル(IMAP)及び/又はポストオフィスプロトコル(POP))、インスタントメッセージング(例えば、エクステンシブルメッセージングアンドプレゼンスプロトコル(XMPP)、セッションイニシエーションプロトコルフォアインスタントメッセージングアンドプレゼンスレバレッジングエクステンションズ(SIMPLE)、インスタントメッセージングアンドプレゼンスサービス(IMPS))及び/又はショートメッセージサービス(SMS)、あるいは本明細書の出願日までにまだ開発されていない通信プロトコルを含めた他の何らかの適切な通信プロトコルを含むが、それらに限定されない複数の通信規格、通信プロトコル及び通信技術の中のいずれかを任意に使用する。
オーディオ回路網210、スピーカ211及びマイク213は、ユーザと装置200との間にオーディオインタフェースを提供する。オーディオ回路網210は、周辺機器インタフェース218からオーディオデータを受信し、オーディオデータを電気信号に変換し、電気信号をスピーカ211へ送信する。スピーカ211は、電気信号を人が聴き取れる音波に変換する。オーディオ回路網210は、音波からマイク213により変換された電気信号を更に受信する。オーディオ回路網210は電気信号をオーディオデータに変換し、オーディオデータを処理のために周辺機器インタフェース218へ送信する。オーディオデータは、周辺機器インタフェース218によりメモリ202及び/又はRF回路網208から受信され及び/又はメモリ202及び/又はRF回路網208へ送信されてもよい。いくつかの実施形態では、オーディオ回路網210はヘッドセットジャック(例えば、図3の312)を更に含む。ヘッドセットジャックは、オーディオ回路網210と、出力専用ヘッドホン又は出力(例えば、片耳用又は両耳用ヘッドホン)及び入力(例えば、マイク)の双方を備えるヘッドセットなどの取り外し可能オーディオ入出力周辺機器との間にインタフェースを提供する。
I/Oサブシステム206は、タッチ画面212及び他の入力制御装置216などの装置200の入出力周辺機器を周辺機器インタフェース218に結合する。I/Oサブシステム206は、ディスプレイコントローラ256、光センサコントローラ258、強度センサコントローラ259、触感フィードバックコントローラ261及び他の入力装置又は制御装置のための1つ以上の入力コントローラ260を任意に含む。1つ以上の入力コントローラ260は、他の入力制御装置216から電気信号を受信し且つ他の入力制御装置216へ電気信号を送信する。他の入力制御装置216は、物理的ボタン(例えば、押しボタン、ロッカボタンなど)、ダイアル、スライダスイッチ、ジョイスティック、クリックホイールなどを任意に含む。いくつかの代替実施形態では、入力コントローラ260は、キーボード、赤外線ポート、USBポート及びマウスなどのポインタ装置のうちいずれかに任意に結合される(又はいずれにも結合されない)。1つ以上のボタン(例えば、図3の308)は、スピーカ211及び/又はマイク213の音量制御のための強弱ボタンを任意に含む。1つ以上のボタンは押しボタン(例えば、図3の306)を任意に含む。
本明細書に参考として全内容が取り入れられている2005年12月23日出願の米国特許出願第11/322,549号「Unlocking a Device by Performing Gestures on an Unlock Image」(米国特許第7,657,849号公報)で説明されるように、押しボタンを素早く押すと、タッチ画面212のロックが外れるか又は装置のロックを解除するためにタッチ画面のジェスチャーを使用する処理が開始されてもよい。押しボタン(例えば、306)を長押しすると、装置200への給電がオン/オフされてもよい。ユーザは、1つ以上のボタンの機能性をカスタマイズ可能であってもよい。タッチ画面212は、仮想ボタン又はソフトボタン及び1つ以上のソフトキーボードを実現するために使用される。
タッチセンシティブディスプレイ212は、装置とユーザとの間に入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ256は、タッチ画面212から電気信号を受信し及び/又はタッチ画面212へ電気信号を送信する。タッチ画面212はユーザに視覚出力を提示する。視覚出力は、グラフィックス、テキスト、アイコン、ビデオ及びそれらの何らかの組み合わせ(まとめて「グラフィックス」と呼ぶ)を含んでもよい。いくつかの実施形態では、視覚出力の一部又はすべてはユーザインタフェースオブジェクトに対応してもよい。
タッチ画面212は、触感接触及び/又は触覚接触に基づくユーザからの入力を受け取るタッチセンシティブ表面、センサ又はセンサのセットを有する。タッチ画面212及びディスプレイコントローラ256は(メモリ202の関連するいずれかのモジュール及び/又は命令のセットと共に)、タッチ画面212への接触(及び接触の何らかの移動又は中断)を検出し、検出された接触をタッチ画面212に表示されるユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ又は画像)とのインタラクションに変換する。例示的な一実施形態において、タッチ画面212とユーザとの接触点は、ユーザの指に対応する。
タッチ画面212はLCD(液晶ディスプレイ)技術、LPD(発光ポリマーディスプレイ)技術又はLED(発光ダイオード)技術を使用してもよいが、他の実施形態では他の表示技術が使用されてもよい。タッチ画面212及びディスプレイコントローラ256は、容量技術、抵抗技術、赤外線技術及び表面弾性波技術、並びにタッチ画面212との1つ以上の接触点を判定する他の近接センサアレイ又は他の要素を含むが、それらに限定されない現在知られている複数の接触感知技術又は後の時点で開発される接触感知技術のうちいずれかを使用して、接触及び接触の何らかの移動又は中断を検出してもよい。例示的な一実施形態において、カリフォルニア州クパチーノのApple Inc.によるiPhone(登録商標)及びiPod Touch(登録商標)のような投影型相互静電容量式感知技術が使用される。
タッチ画面212のいくつかの実施形態におけるタッチセンシティブディスプレイは、いずれも本明細書に参考として全内容が取り入れられている米国特許第6,323,846号公報(Westerman他)、米国特許第6,570,557号公報(Westerman他)及び/又は米国特許第6,677,932号公報(Westerman)及び/又は米国特許出願第2002/0015024A1号で説明されるマルチタッチセンシティブタッチパッドに類似していてもよい。しかし、タッチ画面212は、装置200からの視覚出力を表示するが、タッチセンシティブタッチパッドは視覚出力を提供しない。
タッチ画面212のいくつかの実施形態におけるタッチセンシティブディスプレイは、(1)2006年5月2日出願の米国特許出願第11/381,313号「Multipoint Touch Surface Controller」、(2)2004年5月6日出願の米国特許出願第10/840,862号「Multipoint Touchscreen」、(3)2004年7月30日出願の米国特許出願第10/903,964号「Gestures For Touch Sensitive Input Devices」、(4)2005年1月31日出願の米国特許出願第11/048,264号「Gestures For Touch Sensitive Input Devices」、(5)2005年1月18日出願の米国特許出願第11/038,590号「Mode−Based Graphical User Interfaces For Touch Sensitive Input Devices」、(6)2005年9月16日出願の米国特許出願第11/228,758号「Virtual Input Device Placement On A Touch Screen User Interface」、(7)2005年9月16日出願の米国特許出願第11/228,700号「Operation Of A Computer With A Touch Screen Interface」、(8)2005年9月16日出願の米国特許出願第11/228,737号「Activating Virtual Keys Of A Touch−Screen Virtual Keyboard」及び(9)2006年3月3日出願の米国特許出願第11/367,749号「Multi−Functional Hand−Held Device」で説明される通りであってもよい。これらの出願は、すべて本明細書に参考として全内容が取り入れられている。
タッチ画面212は100dpiを超えるビデオ解像度を有してもよい。いくつかの実施形態では、タッチ画面は約160dpiのビデオ解像度を有する。ユーザは、スタイラス、指などの何らかの適切な物体又は付属器官を使用してタッチ画面212に触れてもよい。いくつかの実施形態では、ユーザインタフェースは、主に指による接触及びジェスチャーで動作するように設計されるが、タッチ画面への指の接触の面積はスタイラスの場合より広いため、指による接触はスタイラスを利用する入力ほど正確ではないといえる。いくつかの実施形態では、装置は、大まかな指利用入力をユーザが希望する動作を実行するための精密なポインタ/カーソル位置又はコマンドに変換する。
いくつかの実施形態では、装置200は、タッチ画面に加えて、特定の機能を有効化又は無効化するタッチパッド(図示せず)を含んでもよい。いくつかの実施形態では、タッチパッドは、タッチ画面とは異なり、ビデオ出力を表示しない装置のタッチセンシティブ領域である。タッチパッドは、タッチ画面212とは別のタッチセンシティブ表面であるか、又はタッチ画面により形成されるタッチセンシティブ表面の拡張であってもよい。
装置200は、種々の構成要素に給電する電源系統262を更に含む。電源系統262は、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC))、再充電システム、停電検出回路、パワーコンバータ又はパワーインバータ、電力状態指示器(例えば、発光ダイオード(LED))及びポータブル装置における電力の発生、管理及び配分と関連する他の何らかの構成要素を含んでもよい。
装置200は1つ以上の光センサ264を更に含んでもよい。図2Aは、I/Oサブシステム206の光センサコントローラ258に結合された光センサを示す。光センサ264は、電荷結合素子(CCD)又は相補型金属酸化膜半導体(CMOS)フォトセンサを含んでもよい。光センサ264は、1つ以上のレンズを介して投影される環境からの光を受け取り、その光を画像を表すデータに変換する。撮像モジュール243(カメラモジュールとも呼ばれる)と関連して、光センサ264はスチル画像又はビデオを取り込んでもよい。いくつかの実施形態では、スチル画像及び/又はビデオ画像を取得するためのビューファインダとしてタッチ画面ディスプレイを使用できるように、光センサは、装置200の背面に、装置の前面にあるタッチ画面ディスプレイ212に対向して配置される。いくつかの実施形態では、ユーザがタッチ画面ディスプレイで他のビデオ会議参加者を見ている間にビデオ会議に関するユーザの画像を取得できるように、光センサは装置の前面に配置される。いくつかの実施形態では、ビデオ会議及びスチル画像及び/又はビデオ画像の取得の双方に1つの光センサ264をタッチ画面ディスプレイと共に使用できるように、ユーザにより(例えば、装置筐体の中でレンズ及びセンサを回転させることにより)光センサ264の位置を変更することができる。
装置200は1つ以上の接触強度センサ265を任意に更に含む。図2Aは、I/Oサブシステム206の強度センサコントローラ259に結合された接触強度センサを示す。接触強度センサ265は、1つ以上のピエゾ抵抗歪み計、容量式力センサ、電気力センサ、圧電力センサ、光学力センサ、容量式タッチセンシティブ表面又は他の強度センサ(例えば、タッチセンシティブ表面への接触の力(又は圧力)を測定するために使用されるセンサ)を任意に含む。接触強度センサ265は、環境から接触強度情報(例えば、圧力情報又は圧力情報のプロキシ)を受信する。いくつかの実施形態では、少なくとも1つの接触強度センサがタッチセンシティブ表面(例えば、タッチセンシティブディスプレイシステム212)と同一の位置に又はそれに近接して配置される。いくつかの実施形態では、少なくとも1つの接触強度センサは、装置200の背面に、装置200の前面に配置されたタッチ画面ディスプレイ212に対向して配置される。
装置200は1つ以上の近接センサ266を更に含んでもよい。図2Aは、周辺機器インタフェース218に結合された近接センサ266を示す。あるいは、近接センサ266は、I/Oサブシステム206の入力コントローラ260に結合されてもよい。近接センサ266は、本明細書に参考として全内容が取り入れられている米国特許出願第11/241,839号「Proximity Detector In Handheld Device」、米国特許出願第11/240,788号「Proximity Detector In Handheld Device」、米国特許出願第11/620,702号「Using Ambient Light Sensor To Augment Proximity Sensor Output」、米国特許出願第11/586,862号「Automated Response To And Sensing Of User Activity In Portable Devices」及び米国特許出願第11/638,251号「Methods And Systems For Automatic Configuration Of Peripherals」で説明されるように実行してもよい。いくつかの実施形態では、近接センサは、多機能装置がユーザの耳の近傍に配置された場合(例えば、ユーザが電話をかけている場合)にターンオフし、タッチ画面212を無効化する。
装置200は1つ以上の触覚出力生成器267を任意に更に含む。図2Aは、I/Oサブシステム206の触覚フィードバックコントローラ261に結合された触覚出力生成器を示す。触覚出力生成器267は、スピーカ又は他のオーディオコンポーネントなどの1つ以上の電気音響装置及び/又はモータ、ソレノイド、電気活性ポリマー、圧電アクチュエータ、静電アクチュエータ又は他の触覚出力生成構成要素(例えば、電気信号を装置の触覚出力に変換する構成要素)などのエネルギーを線形運動に変換する電気機械装置を任意に含む。接触強度センサ265は、触覚フィードバックモジュール233から触覚フィードバック発生命令を受信し、装置200で、装置200のユーザにより感知可能な触覚出力を発生する。いくつかの実施形態では、少なくとも1つの触覚出力生成器は、タッチセンシティブ表面(例えば、タッチセンシティブディスプレイシステム212)と同一の位置に又はそれに近接して配置され、タッチセンシティブ表面を縦方向(例えば、装置200の面に出入りする方向)又は横方向(例えば、装置200の面と同一の平面で往復する方向)に動かすことにより任意に触覚出力を発生する。いくつかの実施形態では、少なくとも1つの触覚出力生成器センサは、装置200の前面に配置されたタッチ画面ディスプレイ212に対向して装置200の背面に配置される。
装置200は1つ以上の加速度計268を更に含んでもよい。図2Aは、周辺機器インタフェース218に結合された加速度計268を示す。あるいは、加速度計268は、I/Oサブシステム206の入力コントローラ260に結合されてもよい。加速度計268は、共に本明細書に参考として全内容が取り入れられている米国特許出願公開第20050190059号公報「Acceleration−based Theft Detection System for Portable Electronic Devices」及び米国特許出願公開第20060017692号公報「Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer」で説明されるように実行してもよい。いくつかの実施形態では、1つ以上の加速度計から受信されるデータの解析に基づいて、タッチ画面ディスプレイにポートレートビュー又はランドスケープビューで情報が表示される。装置200は、加速度計268に加えて、装置200の位置及び配向(例えば、ポートレート又はランドスケープ)に関する情報を取得するための磁気計(図示せず)及びGPS(又はGLONASS又は他の全地球航法システム)受信機(図示せず)を任意に含む。
いくつかの実施形態では、メモリ202に記憶されるソフトウェア構成要素は、オペレーティングシステム226、通信モジュール(又は命令のセット)228、接触/動きモジュール(又は命令のセット)230、グラフィックスモジュール(又は命令のセット)232、テキスト入力モジュール(又は命令のセット)234、全地球測位システム(GPS)モジュール(又は命令のセット)235、デジタルアシスタントクライアントモジュール229及びアプリケーション(又は命令のセット)236を含む。更にメモリ202は、ユーザデータ及びモデル231のようなデータ及びモデルを記憶する。更に、いくつかの実施形態では、メモリ202(図2A)又は470(図4)は、図2A及び図4に示されるように、装置/グローバル内部状態257を記憶する。装置/グローバル内部状態257は、アプリケーションがある場合、どのアプリケーションが現時点で実行中であるかを示す実行中アプリケーション状態、どのアプリケーション、ビュー又は他の情報がタッチ画面ディスプレイ212の種々の領域を占めているかを示す表示状態、装置の種々のセンサ及び入力制御装置216から取得される情報を含むセンサ状態、並びに装置の位置及び/又は姿勢に関する位置情報のうち1つ以上を含む。
オペレーティングシステム226(例えば、Darwin、RTXC、LINUX、UNIX、OS X、iOS、WINDOWS又はVxWorksなどの組み込みオペレーティングシステム)は、一般システムタスク(例えば、メモリ管理、記憶装置制御、電力管理など)を制御し、管理するための種々のソフトウェア構成要素及び/又はドライバを含み、種々のハードウェア構成要素とソフトウェア構成要素との通信を容易にする。
通信モジュール228は、1つ以上の外部ポート224を介する他の装置との通信を容易にし、RF回路網208及び/又は外部ポート224により受信されるデータを処理する種々のソフトウェア構成要素を更に含む。外部ポート224(例えば、ユニバーサルシリアルバス(USB)、FIREWIREなど)は、他の装置に直接結合するか又はネットワーク(例えば、インターネット、無線LANなど)を介して間接的に結合するように適合される。いくつかの実施形態では、外部ポートは、iPod(Apple Inc.の商標)装置で使用される30ピンコネクタと同一であり、それに類似し及び/又はそれに互換性のあるマルチピン(例えば、30ピン)コネクタである。
接触/動きモジュール230は、タッチ画面212及び他のタッチセンシティブ装置(例えば、タッチパッド又は物理クリックホイール)との接触を(ディスプレイコントローラ256と関連して)任意に検出する。接触/動きモジュール230は、接触が起こったか否かを判定すること(例えば、指を下ろすイベントを検出すること)、接触の強度(例えば、接触の力又は圧力、あるいは接触の力又は圧力に代わるもの)を判定すること、接触の移動があるか否かを判定し、タッチセンシティブ表面に沿った移動を追跡すること(例えば、1つ以上の指ドラッグイベントを検出すること)及び接触が停止したか否かを判定すること(例えば、指を上げるイベント又は接触の中断を検出すること)のような、接触の検出に関連する種々の動作を実行するための種々のソフトウェア構成要素を含む。接触/動きモジュール230は、タッチセンシティブ表面から接触データを受信する。一連の接触データにより表される接触点の移動の判定は、接触点の速さ(大きさ)、速度(大きさ及び方向)及び/又は加速度(大きさ及び/又は方向の変化)を判定することを任意に含む。それらの動作は、任意に個別の接触点(例えば、1本の指の接触)に適用されるか又は複数の同時接触(例えば、「マルチタッチ」/複数の指の接触)に適用される。いくつかの実施形態では、接触/動きモジュール230及びディスプレイコントローラ256は、タッチパッドへの接触を検出する。
いくつかの実施形態では、接触/動きモジュール230は、ユーザにより操作が実行されたか否かを判定するために(例えば、ユーザがアイコンを「クリック」したか否かを判定するために)1つ以上の強度閾値のセットを使用する。いくつかの実施形態では、ソフトウェアパラメータに従って、少なくとも強度閾値のサブセットが判定される(例えば、特定の物理アクチュエータの起動閾値により強度閾値は判定されず、装置200の物理ハードウェアを変更することなく、強度閾値を調整できる)。例えば、トラックパッド又はタッチ画面ディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチ画面ディスプレイハードウェアを変更することなく、広い範囲の事前定義済み閾値の中のいずれかの値に設定可能である。更に、いくつかの実現形態では、装置のユーザは、強度閾値のセットのうち1つ以上の強度閾値を調整するための(例えば、個別の強度閾値を調整することにより及び/又はシステムレベルクリック「強度」パラメータによって複数の強度閾値を一度に調整することにより)ソフトウェア設定を与えられる。
接触/動きモジュール230は、ユーザによるジェスチャー入力を任意に検出する。タッチセンシティブ表面での異なるジェスチャーは、異なる接触パターン(例えば、検出される接触の異なる移動、タイミング及び/又は強度)を有する。従って、ジェスチャーは、特定の接触パターンの検出により任意に検出される。例えば、指によるタップジェスチャーの検出は、指を下ろすイベントを検出することと、それに続いて指を下ろすイベントと同一の位置(又はほぼ同一の位置)で指を上げる(リフトオフ)イベントを検出すること(例えば、アイコンの位置で)を含む。別の例として、タッチセンシティブ表面上の指によるスワイプジェスチャーの検出は、指を下ろすイベントを検出することと、それに続いて1つ以上の指をドラッグするイベントを検出することと、更にその後に指を上げる(リフトオフ)イベントを検出することとを含む。
グラフィックスモジュール232は、表示されるグラフィックスの視覚効果(例えば、輝度、透明度、彩度、コントラスト又は他の視覚的特性)を変化させるための構成要素を含めて、タッチ画面212又は他のディスプレイにグラフィックをレンダリングし、表示するための種々の既知のソフトウェア構成要素を含む。本明細書で使用される場合の用語「グラフィックス」は、テキスト、ウェブページ、アイコン(ソフトキーを含むユーザインタフェースオブジェクトなど)、デジタル画像、ビデオ、アニメーションなどを含むが、それらに限定されないユーザに対して表示可能なあらゆるオブジェクトを含む。
いくつかの実施形態では、グラフィックスモジュール232は、使用されるグラフィックスを表すデータを記憶する。各グラフィックには対応するコードが任意に割り当てられる。グラフィックスモジュール232は、アプリケーションなどから、表示されるグラフィックスを指定する1つ以上のコードを、必要に応じて座標データ及び他のグラフィック特性データと共に受信し、ディスプレイコントローラ256へ出力する画面画像データを生成する。
触覚フィードバックモジュール233は、ユーザと装置200とのインタラクションに応答して装置200の1つ以上の位置で触覚出力を発生するために触覚出力生成器267により使用される命令を生成するための種々のソフトウェア構成要素を含む。
グラフィックスモジュール232の1つの構成要素であってもよいテキスト入力モジュール234は、種々のアプリケーション(例えば、連絡先237、電子メール240、IM241、ブラウザ247及びテキスト入力を必要とする他の何らかのアプリケーション)でテキストを入力するためのソフトキーボードを提供する。
GPSモジュール235は、装置の位置を判定し、この情報を種々のアプリケーション(例えば、位置ベース通話で使用するために電話238、画像/ビデオメタデータとしてカメラ243且つ天気ウィジェット、ローカルイエローページウィジェット及び地図/ナビゲーションウィジェットなどの位置ベースサービスを提供するアプリケーション)で使用するために提供する。
デジタルアシスタントクライアントモジュール229は、デジタルアシスタントのクライアント側機能性を提供する種々のクライアント側デジタルアシスタント命令を含むことができる。例えばデジタルアシスタントクライアントモジュール229は、ポータブル多機能装置200の種々のユーザインタフェース(例えば、マイク213、加速度計268、タッチセンシティブディスプレイシステム212、光センサ229、他の入力制御装置216など)を介して、声による入力(例えば、音声入力)、テキスト入力、タッチ入力及び/又はジェスチャー入力を受け取ることができる。また、デジタルアシスタントクライアントモジュール229は、ポータブル多機能装置200の種々の出力インタフェース(例えば、スピーカ211、タッチセンシティブディスプレイシステム212、触覚出力生成器267など)を介して、オーディオ(例えば、音声出力)形態、視覚形態及び/又は触覚形態で出力を提供できる。例えば出力は、音声、音、アラート、テキストメッセージ、メニュー、グラフィック、ビデオ、アニメーション、振動及び/又はそれらのうちの2つ以上の組み合わせとして提供される。動作中、デジタルアシスタントクライアントモジュール229はRF回路網208を使用してDAサーバ106と通信できる。
ユーザデータ及びモデル231は、デジタルアシスタントのクライアント側機能性を提供するために、ユーザに関連する種々のデータ(例えば、ユーザ別語彙データ、ユーザの基本設定データ、ユーザ別の氏名の発音、ユーザの電子アドレス帳からのデータ、やることリスト、買い物リストなど)を含む。更に、ユーザデータ及びモデル231は、ユーザ入力を処理してユーザの意図を判定するための種々のモデル(例えば、音声認識モデル、統計的言語モデル、自然言語処理モデル、オントロジ、タスクフローモデル、サービスモデルなど)を含むことができる。
いくつかの例では、デジタルアシスタントクライアントモジュール229は、ポータブル多機能装置200の種々のセンサ、サブシステム及び周辺機器を使用してポータブル多機能装置200の周辺環境から追加情報を収集して、ユーザ、現在のユーザ対話及び/又は現在のユーザ入力に関連するコンテキストを確立する。いくつかの例では、デジタルアシスタントクライアントモジュール229は、ユーザの意図の推論を補助するために、ユーザ入力と共にコンテキスト情報又はそのサブセットをDAサーバ106に提供する。いくつかの例では、デジタルアシスタントはコンテキスト情報を更に使用して、ユーザに対する出力を用意して提供する方法を判定する。コンテキスト情報をコンテキストデータと呼ぶ場合もある。
いくつかの例では、ユーザ入力に添付されるコンテキスト情報は、例えば照明、周辺雑音、周辺温度、周辺環境の画像又はビデオなどであるセンサ情報を含む。いくつかの例では、コンテキスト情報は、例えば装置の姿勢、装置の位置、装置の温度、電力レベル、速度、加速度、動きのパターン、セルラ信号の強度などである装置の物理的状態を更に含む。いくつかの例では、例えば実行中の処理、インストール済みプログラム、過去及び現在のネットワークを介したやり取り、バックグラウンドサービス、エラーログ、リソース使用量などDAサーバ106のソフトウェア状態に関する情報とポータブル多機能装置200のソフトウェア状態に関する情報とが、ユーザ入力に関連するコンテキスト情報としてDAサーバ106に提供される。
いくつかの例では、デジタルアシスタントクライアントモジュール229は、DAサーバ106からの要求に応答して、ポータブル多機能装置200に記憶された情報(例えば、ユーザデータ231)を選択的に提供する。いくつかの例では、デジタルアシスタントクライアントモジュール229は、DAサーバ106に要求された際に、自然言語の会話又は他のユーザインタフェースを介してユーザからの追加入力を更に誘導する。デジタルアシスタントクライアントモジュール229はDAサーバ106に追加入力を渡して、DAサーバ106がユーザ要求で示されるユーザの意図を推測し且つ/又は実行するのを補助する。
図7A〜図7Cを参照して、デジタルアシスタントの更に詳細な説明を以下に述べる。デジタルアシスタントクライアントモジュール229は以下に説明するデジタルアシスタントモジュール726のサブモジュールをいくつでも含むことができることが認識されるべきである。
アプリケーション236は、以下のモジュール(又は命令のセット)又はその下位セット又は上位セットを含んでもよい。
・連絡先モジュール237(アドレス帳又は連絡先リストと呼ばれる場合もある)、
・電話モジュール238、
・ビデオ会議モジュール239、
・電子メールクライアントモジュール240、
・インスタントメッセージング(IM)モジュール241、
・ワークアウトサポートモジュール242、
・スチル画像及び/又はビデオ画像用カメラモジュール243、
・画像管理モジュール244、
・ビデオプレーヤモジュール、
・音楽プレーヤモジュール、
・ブラウザモジュール247、
・カレンダモジュール248、
・天気ウィジェット249−1、株価ウィジェット249−2、計算器ウィジェット249−3、目覚まし時計ウィジェット249−4、辞書ウィジェット249−5及びユーザにより取得された他のウィジェット、並びにユーザ作成ウィジェット249−6のうち1つ以上を含んでもよいウィジェットモジュール249、
・ユーザ作成ウィジェット249−6を作成するためのウィジェット作成器モジュール250、
・探索モジュール251、
・ビデオプレーヤモジュール及び音楽プレーヤモジュールを併合するビデオ/音楽プレーヤモジュール252、
・メモモジュール253、
・地図モジュール254及び/又は
・オンラインビデオモジュール255。
メモリ202に記憶されてもよい他のアプリケーション236の例は、他の文書処理アプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA有効化アプリケーション、暗号、デジタル著作権管理、音声認識及び音声複製を含む。
連絡先モジュール237は、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232及びテキスト入力モジュール234と関連して、アドレス帳に名前を追加すること、アドレス帳から名前を削除すること、電話番号、電子メールアドレス、物理的アドレス又は他の情報を名前と関連付けること、画像を名前と関連付けること、名前をカテゴリ化し、分類すること、電話238、ビデオ会議モジュール239、電子メール240又はIM241による通信を開始し及び/又は容易にするために電話番号又は電子メールアドレスを提供することなどを含めて、アドレス帳又は連絡先リスト(例えば、メモリ202又はメモリ470の連絡先モジュール237のアプリケーション内部状態292に記憶される)を管理するために使用されてもよい。
電話モジュール238は、RF回路網208、オーディオ回路網210、スピーカ211、マイク213、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232及びテキスト入力モジュール234と関連して、電話番号に対応する一連の文字を入力し、連絡先モジュール237の1つ以上の電話番号にアクセスし、入力されていた電話番号を修正し、各電話番号に電話をかけ、会話を実行し、会話が完了したときに通話を遮断するか又は電話を切るために使用されてもよい。先に述べた通り、無線通信は、複数の通信規格、通信プロトコル及び通信技術のうちいずれかを使用してもよい。
ビデオ会議モジュール239は、RF回路網208、オーディオ回路網210、スピーカ211、マイク213、タッチ画面212、ディスプレイコントローラ256、光センサ264、光センサコントローラ258、接触/動きモジュール230、グラフィックスモジュール232、テキスト入力モジュール234、連絡先モジュール237及び電話モジュール238と関連して、ユーザ命令に従ってユーザと1人以上の他の参加者との間のビデオ会議を開始し、実施し、終了するための実行可能命令を含む。
電子メールクライアントモジュール240は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232及びテキスト入力モジュール234と関連して、ユーザ命令に応答して電子メールを作成し、送信し、受信し、管理するための実行可能命令を含む。電子メールクライアントモジュール240は、画像管理モジュール244と関連して、カメラモジュール243によって撮影されたスチル画像又はビデオ画像と共に電子メールを作成し、送信することを非常に容易にする。
インスタントメッセージングモジュール241は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232及びテキスト入力モジュール234と関連して、インスタントメッセージに対応する一連の文字を入力し、以前に入力された文字を修正し、各インスタントメッセージを送信し(例えば、電話ベースインスタントメッセージの場合はショートメッセージサービス(SMS)又はマルチメディアメッセージサービス(MMS)プロトコルを使用して、あるいはインターネットベースインスタントメッセージの場合はXMPP、SIMPLE又はIMPSを使用して)、インスタントメッセージを受信し、受信されたインスタントメッセージを閲覧するための実行可能命令を含む。いくつかの実施形態では、送信及び/又は受信されるインスタントメッセージは、グラフィックス、写真、オーディオファイル、ビデオファイル及び/又はMMS及び/又はエンハンストメッセージングサービス(EMS)でサポートされるような他の添付ファイルを含んでもよい。本明細書で使用される場合の用語「インスタントメッセージング」は、電話ベースメッセージ(例えば、SMS又はMMSを使用して送信されるメッセージ)及びインターネットベースメッセージ(例えば、XMPP、SIMPLE又はIMPSを使用して送信されるメッセージ)の双方を表す。
ワークアウトサポートモジュール242は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、テキスト入力モジュール234、GPSモジュール235、地図モジュール254及び音楽プレーヤモジュールと関連して、ワークアウト(例えば、時間、距離及び/又はカロリー消費の目標を含む)を作成し、ワークアウトセンサ(スポーツ装置)と通信し、ワークアウトセンサデータを受信し、ワークアウトを監視するために使用されるセンサを校正し、ワークアウトのための音楽を選択し、再生し、ワークアウトデータを表示し、記憶し、送信するための実行可能命令を含む。
カメラモジュール243は、タッチ画面212、ディスプレイコントローラ256、光センサ264、光センサコントローラ258、接触/動きモジュール230、グラフィックスモジュール232及び画像管理モジュール244と関連して、スチル画像又はビデオ(ビデオストリームを含む)を取り込み、それらをメモリ202に記憶し、スチル画像又はビデオの特性を修正し、又はスチル画像又はビデオをメモリ202から削除するための実行可能命令を含む。
画像管理モジュール244は、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、テキスト入力モジュール234及びカメラモジュール243と関連して、スチル画像及び/又はビデオ画像を配列し、修正(例えば、編集)し又はその他の手段で操作し、ラベル付けし、削除し、提示し(例えば、デジタルスライドショー又はアルバムとして)、記憶するための実行可能命令を含む。
ブラウザモジュール247は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232及びテキスト入力モジュール234と関連して、ウェブページ又はその一部並びにウェブページにリンクされた添付ファイル及び他のファイルを探索し、リンクし、受信し、表示することを含めて、ユーザ命令に従ってインターネットを閲覧するための実行可能命令を含む。
カレンダモジュール248は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、テキスト入力モジュール234、電子メールクライアントモジュール240及びブラウザモジュール247と関連して、ユーザ命令に従ってカレンダ及びカレンダと関連するデータ(例えば、カレンダエントリ、ToDoリストなど)を作成し、表示し、修正し、記憶するための実行可能命令を含む。
ウィジェットモジュール249は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、テキスト入力モジュール234及びブラウザモジュール247と関連して、ユーザによりダウンロードされ、使用されてもよいミニアプリケーション(例えば、天気ウィジェット249−1、株価ウィジェット249−2、計算器ウィジェット249−3、目覚まし時計ウィジェット249−4及び辞書ウィジェット249−5)又はユーザにより作成されてもよいミニアプリケーション(例えば、ユーザ作成ウィジェット249−6)である。いくつかの実施形態では、ウィジェットは、HTML(ハイパーテキストマークアップ言語)ファイル、CSS(カスケーディングスタイルシート)ファイル及びJavaScriptファイルを含む。いくつかの実施形態では、ウィジェットは、XML(拡張可能マークアップ言語)ファイル及びJavaScriptファイル(例えば、Yahoo! Widgets)を含む。
ウィジェット作成器モジュール250は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、テキスト入力モジュール234及びブラウザモジュール247と関連して、ウィジェットを作成するために(例えば、ウェブページのユーザ指定部分をウィジェットに変換する)ユーザにより使用されてもよい。
探索モジュール251は、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232及びテキスト入力モジュール234と関連して、ユーザ命令に従って1つ以上の探索基準(例えば、1つ以上のユーザ指定探索期間)に整合するメモリ202内のテキストファイル、音楽ファイル、音声ファイル、画像ファイル、ビデオファイル及び/又は他のファイルを探索するための実行可能命令を含む。
ビデオ/音楽プレーヤモジュール252は、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、オーディオ回路網210、スピーカ211、RF回路網208及びブラウザモジュール247と関連して、MP3又はAACファイルなどの1つ以上のファイルフォーマットで記憶された音楽ファイル及び他の音声ファイルをユーザがダウンロードし、再生することを可能にする実行可能命令と、ビデオを(例えば、タッチ画面212に又は外部ポート224を介して接続されている外部ディスプレイに)表示し、提示し又は他の方法により再生するための実行可能命令とを含む。いくつかの実施形態では、装置200は、iPod(Apple Inc.の商標)のようなMP3プレーヤの機能性を任意に含む。
メモモジュール253は、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232及びテキスト入力モジュール234と関連して、ユーザ命令に従ってメモ、やることリストなどを作成し、管理するための実行可能命令を含む。
地図モジュール254は、RF回路網208、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、テキスト入力モジュール234、GPSモジュール235及びブラウザモジュール247と関連して、ユーザ命令に従って地図及び地図と関連するデータ(例えば、運転方向、特定の位置に又はその近傍にある関心店舗及び他の関心地点及び他の位置ベースデータ)を受信し、表示し、修正し、記憶するために使用されてもよい。
オンラインビデオモジュール255は、タッチ画面212、ディスプレイコントローラ256、接触/動きモジュール230、グラフィックスモジュール232、オーディオ回路網210、スピーカ211、RF回路網208、テキスト入力モジュール234、電子メールクライアントモジュール240及びブラウザモジュール247と関連して、特定のオンラインビデオに至るリンクを伴う電子メールにユーザがアクセスし、電子メールを閲覧し、受信し(例えば、ストリーミング及び/又はダウンロードにより)、再生し(例えば、タッチ画面に又は外部ポート224を介して接続された外部ディスプレイに)、送信し、H.264のような1つ以上のファイルフォーマットのオンラインビデオを管理することを可能にする命令を含む。いくつかの実施形態では、特定のオンラインビデオに至るリンクを送信するために、電子メールクライアントモジュール240ではなく、インスタントメッセージングモジュール241が使用される。オンラインビデオアプリケーションの更なる説明は、本明細書に参考として全内容が取り入れられている2007年6月20日出願の米国特許仮出願第60/936,562号「Portable Multifunction Device, Method and Graphical User Interface for Playing Online Videos」及び2007年12月31日出願の米国特許出願第11/968,067号「Portable Multifunction Device, Method and Graphical User Interface for Playing Online Videos」で見られる。
以上説明したモジュール及びアプリケーションの各々は、先に説明した1つ以上の機能及び本出願で説明される方法(例えば、本明細書で説明されるコンピュータ実現方法及び他の情報処理方法)を実行するための実行可能命令のセットに対応する。それらのモジュール(例えば、命令のセット)は、個別のソフトウェアプログラム、手順又はモジュールとして実現されなくてもよく、従って、種々の実施形態において、それらのモジュールの種々のサブセットが組み合わされるか又は再配列されてもよい。例えば、ビデオプレーヤモジュールは、音楽プレーヤモジュールと単一のモジュール(例えば、図2Aのビデオ/音楽プレーヤモジュール252)として組み合わされてもよい。いくつかの実施形態では、メモリ202は、先に確認したモジュール及びデータ構造のサブセットを記憶してもよい。更に、メモリ202は、先に説明されなかった追加のモジュール及びデータ構造を記憶してもよい。
いくつかの実施形態では、装置200は、装置の機能の事前定義済みセットの動作がタッチ画面及び/又はタッチパッドのみを介して実行されるような装置である。装置200の動作の主な入力制御装置としてタッチ画面及び/又はタッチパッドを使用することにより、装置200の物理的入力制御装置(押しボタン、ダイアルなど)の数が減少されてもよい。
タッチ画面及び/又はタッチパッドのみを介して実行される機能の事前定義済みセットは、ユーザインタフェース間のナビゲーションを任意に含む。いくつかの実施形態では、タッチパッドにユーザが触れると、タッチパッドは、装置200に表示されている何らかのユーザインタフェースからメインメニュー、ホームメニュー又はルートメニューへ装置200をナビゲートする。そのような実施形態では、「メニューボタン」はタッチパッドを使用して実現される。いくつかの他の実施形態では、メニューボタンは、タッチパッドではなく、物理的押しボタン又は他の物理的入力制御装置である。
図2Bは、いくつかの実施形態に係るイベント処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態では、メモリ202(図2A)又は470(図4)は、イベントソータ270(例えば、オペレーティングシステム226にある)及び各アプリケーション236−1(例えば、先に挙げたアプリケーション237〜251、255、480〜490の中のいずれか)を含む。
イベントソータ270はイベント情報を受信し、アプリケーション236−1及びイベント情報を出力するアプリケーション236−1のアプリケーションビュー291を判定する。イベントソータ270はイベントモニタ271及びイベントディスパッチャモジュール274を含む。いくつかの実施形態では、アプリケーション236−1は、アプリケーションが実行中又は実行中である場合にタッチセンシティブディスプレイ212に表示されている現在アプリケーションビューを示すアプリケーション内部状態292を含む。いくつかの実施形態では、装置/グローバル内部状態257は、どのアプリケーションが現時点で実行中であるかを判定するためにイベントソータ270により使用され、アプリケーション内部状態292は、イベント情報を出力するアプリケーションビュー291を判定するためにイベントソータ270により使用される。
いくつかの実施形態では、アプリケーション内部状態292は、アプリケーション236−1が実行を再開する場合に使用される再開情報、表示中の情報を示すか又はアプリケーション236−1による表示の準備が完了しているユーザインタフェース状態情報、ユーザがアプリケーション236−1の以前の状態又はビューに戻ることを可能にする状態キュー及びユーザにより実行された以前のアクションの再実行/非実行キューのうち1つ以上などの追加情報を含む。
イベントモニタ271は、周辺機器インタフェース218からイベント情報を受信する。イベント情報は、サブイベント(例えば、マルチタッチジェスチャーの一部としてのタッチセンシティブディスプレイ212へのユーザのタッチ)に関する情報を含む。周辺機器インタフェース218は、I/Oサブシステム206又は近接センサ266などのセンサ、加速度計268及び/又はマイク213から(オーディオ回路網210を介して)受信する情報を送信する。周辺機器インタフェース218がI/Oサブシステム206から受信する情報は、タッチセンシティブディスプレイ212又はタッチセンシティブ表面からの情報を含む。
いくつかの実施形態では、イベントモニタ271は、所定の間隔で周辺機器インタフェース218へ要求を送信する。それに応答して、周辺機器インタフェース218はイベント情報を送信する。他の実施形態では、周辺機器インタフェース218は、重大なイベント(例えば、所定の雑音閾値を超える入力及び/又は所定の持続時間を超える長さの入力を受信すること)が存在する場合に限りイベント情報を送信する。
いくつかの実施形態では、イベントソータ270は、ヒットビュー判定モジュール272及び/又は有効イベント認識器判定モジュール273を更に含む。
ヒットビュー判定モジュール272は、タッチセンシティブディスプレイ212が2つ以上のビューを表示する場合に1つ以上のビューの中でサブイベントが起こったことを判定するソフトウェア手順を提供する。ビューは、ユーザがディスプレイで見ることができる制御要素及び他の要素から構成される。
アプリケーションと関連するユーザインタフェースの別の態様は、アプリケーションビュー又はユーザインタフェースウィンドウと呼ばれる場合もあるビューのセットであり、その中で情報が表示され、タッチベースジェスチャーが実行される。タッチが検出されるアプリケーションビュー(各アプリケーションの)は、アプリケーションのプログラム階層又はビュー階層の中のプログラムレベルに対応してもよい。例えば、タッチが検出される最低レベルのビューはヒットビューと呼ばれてもよく、適正な入力として認識されるイベントのセットは、タッチベースジェスチャーを開始させる最初のタッチのヒットビューに少なくとも部分的に基づいて判定されてもよい。
ヒットビュー判定モジュール272は、タッチベースジェスチャーのサブイベントに関連する情報を受信する。アプリケーションが1つの階層として編成された複数のビューを有する場合、ヒットビュー判定モジュール272は、そのサブイベントを処理すべき階層中の最低レベルのビューとしてヒットビューを識別する。多くの状況で、ヒットビューは、開始サブイベント(イベント又は潜在イベントを形成するサブイベントのシーケンスの中の最初のサブイベント)が起こる最低レベルのビューである。ヒットビュー判定モジュール272によりヒットビューが識別された後、ヒットビューは、通常、そのビューがヒットビューとして識別されたのと同一のタッチ又は入力源に関連するすべてのサブイベントを受信する。
有効イベント認識器判定モジュール273は、ビュー階層の中のどのビューが特定のサブイベントのシーケンスを受信すべきかを判定する。いくつかの実施形態では、有効イベント認識器判定モジュール273は、ヒットビューのみが特定のサブイベントのシーケンスを受信すべきであると判定する。他の実施形態では、有効イベント認識器判定モジュール273は、サブイベントの物理的位置を含むすべてのビューが有効関連ビューであると判定し、従って、有効関連ビューのすべてが特定のサブイベントのシーケンスを受信すべきであると判定する。他の実施形態では、タッチサブイベントが1つの特定のビューと関連するエリアに完全に封じ込められている場合でも、階層の中で上位にあるビューは依然として有効関連イベントのままだろう。
イベントディスパッチャモジュール274は、イベント情報をイベント認識器(例えば、イベント認識器280)へ出力する。有効イベント認識器判定モジュール273を含む実施形態では、イベントディスパッチャモジュール274は、有効イベント認識器判定モジュール273により判定されたイベント認識器へイベント情報を出力する。いくつかの実施形態では、イベントディスパッチャモジュール274はイベント情報をイベントキューに記憶し、イベント情報は各イベント受信器282により検索される。
いくつかの実施形態では、オペレーティングシステム226がイベントソータ270を含む。あるいは、アプリケーション236−1がイベントソータ270を含む。更に別の実施形態では、イベントソータ270は独立型モジュールであるか、又は接触/動きモジュール230などの、メモリ202に記憶された別のモジュールの一部である。
いくつかの実施形態では、アプリケーション236−1は、複数のイベントハンドラ290及び1つ以上のアプリケーションビュー291を含み、各アプリケーションビューは、アプリケーションのユーザインタフェースの各ビューの中で起こるタッチイベントを処理するための命令を含む。アプリケーション236−1の各アプリケーションビュー291は、1つ以上のイベント認識器280を含む。通常、各アプリケーションビュー291は複数のイベント認識器280を含む。他の実施形態では、イベント認識器280のうち1つ以上は、ユーザインタフェースキット(図示せず)又はアプリケーション236−1に方法及び他の特性を継承させる更に上位のレベルのオブジェクトなどの別のモジュールの一部である。いくつかの実施形態では、各イベントハンドラ290は、データ更新器276、オブジェクト更新器277、GUI更新器278及び/又はイベントソータ270から受信されたイベントデータ279のうち1つ以上を含む。イベントハンドラ290は、データ更新器276、オブジェクト更新器277又はGUI更新器278を利用するか又は呼び出して、アプリケーション内部状態292を更新してもよい。あるいは、アプリケーションビュー291のうち1つ以上は各々1つ以上のイベントハンドラ290を含む。また、いくつかの実施形態では、データ更新器276、オブジェクト更新器277及びGUI更新器278のうち1つ以上は各アプリケーションビュー291に含まれる。
各イベント認識器280は、イベントソータ270からイベント情報(例えば、イベントデータ279)を受信し、イベント情報からイベントを識別する。イベント認識器280はイベント受信器282及びイベント比較器284を含む。いくつかの実施形態では、イベント認識器280は、メタデータ283及びイベント出力命令288(サブイベント出力命令を含んでもよい)の少なくともサブセットを更に含む。
イベント受信器282はイベントソータ270からイベント情報を受信する。イベント情報は、サブイベント、例えば、タッチ又はタッチ移動に関する情報を含む。サブイベントに応じて、イベント情報は、サブイベントの位置などの追加情報を更に含む。サブイベントがタッチの移動に関する場合、イベント情報はサブイベントの速度及び方向を更に含んでもよい。いくつかの実施形態では、イベントは、装置の1つの配向から別の配向への(例えば、ポートレート配向からランドスケープ配向への、又は逆にランドスケープ配向からポートレート配向への)回転を含み、イベント情報は、装置の現在の配向(装置姿勢とも呼ばれる)に関する対応する情報を含む。
イベント比較器284は、イベント情報を事前定義済みイベント定義又はサブイベント定義と比較し、その比較に基づいて、イベント又はサブイベントを判定するか、あるいはイベント又はサブイベントの状態を判定又は更新する。いくつかの実施形態では、イベント比較器284はイベント定義286を含む。イベント定義286はイベントの定義(例えば、サブイベントの事前定義済みシーケンス)、例えば、イベント1(287−1)、イベント2(287−2)及び他のイベントを含む。いくつかの実施形態では、イベント(287)のサブイベントは、例えば、タッチ開始、タッチ終了、タッチ移動、タッチ取り消し及び多重タッチを含む。一例では、イベント1(287−1)の定義は、表示されるオブジェクトに対するダブルタップである。ダブルタップは、例えば、所定の段階での表示オブジェクトへの第1のタッチ(タッチ開始)と、所定の段階での第1のリフトオフ(タッチ終了)と、所定の段階での表示オブジェクトへの第2のタッチ(タッチ開始)と、所定の段階での第2のリフトオフ(タッチ終了)とを含む。別の例では、イベント2(287−2)の定義は、表示オブジェクトに対するドラッグである。ドラッグは、例えば、所定の段階での表示オブジェクトへのタッチ(又は接触)と、タッチセンシティブディスプレイ212に沿ったタッチの移動と、タッチのリフトオフ(タッチ終了)とを含む。いくつかの実施形態では、イベントは、1つ以上の関連するイベントハンドラ290に関する情報を更に含む。
いくつかの実施形態では、イベント定義287は、ユーザインタフェースオブジェクトごとのイベントの定義を含む。いくつかの実施形態では、イベント比較器284は、どのユーザインタフェースオブジェクトがサブイベントと関連するかを判定するためにヒットテストを実行する。例えば、タッチセンシティブディスプレイ212に3つのユーザインタフェースオブジェクトが表示されるアプリケーションでは、タッチセンシティブディスプレイ212でタッチが検出されたときに、イベント比較器284は、3つのユーザインタフェースオブジェクトのうちどれがそのタッチ(サブイベント)と関連するかを判定するためにヒットテストを実行する。表示される各オブジェクトが各イベントハンドラ290と関連している場合、イベント比較器は、ヒットテストの結果を使用してどのイベントハンドラ290を起動すべきかを判定する。例えば、イベント比較器284は、ヒットテストをトリガするサブイベント及びオブジェクトと関連するイベントハンドラを選択する。
いくつかの実施形態では、各イベント(287)の定義は、サブイベントのシーケンスがイベント認識器のイベント型に対応するか又は対応しないかが判定される後までイベント情報の出力を遅延させる遅延アクションを更に含む。
一連のサブイベントがイベント定義286のイベントのいずれにも整合しないと各イベント認識器280が判定した場合、その各イベント認識器280はイベント不能状態、イベント失敗状態又はイベント終了状態に入り、その後、イベント認識器は、タッチベースジェスチャーの後続するサブイベントを無視する。この状況で、ヒットビューに関して実行中のままである他のイベント認識器が存在する場合に、そのイベント認識器は、進行中のタッチベースジェスチャーのサブイベントを追跡し続け、処理し続ける。
いくつかの実施形態では、各イベント認識器280は、イベント出力システムが有効関連イベント認識器へのサブイベント出力をどのように実行すべきかを示す構成可能特性、フラグ及び/又はリストを伴うメタデータ283を含む。いくつかの実施形態では、メタデータ283は、イベント認識器が互いにどのように対話してもよいか又は互いに対話するためにどのように有効化されるかを示す構成可能特性、フラグ及び/又はリストを含む。いくつかの実施形態では、メタデータ283は、サブイベントがビュー階層又はプログラム階層の中の種々のレベルへ出力されるか否かを示す構成可能特性、フラグ及び/又はリストを含む。
いくつかの実施形態では、各イベント認識器280は、イベントの1つ以上の特定のサブイベントが認識される場合にイベントと関連するイベントハンドラ290を起動する。いくつかの実施形態では、各イベント認識器280は、イベントと関連するイベント情報をイベントハンドラ290に出力する。イベントハンドラ290の起動は、各ヒットビューへのサブイベントの送信(及び送信の延期)とは区別される。いくつかの実施形態では、イベント認識器280は、認識されたイベントと関連するフラグを投げ、フラグと関連するイベントハンドラ290はフラグをキャッチして、事前定義済み処理を実行する。
いくつかの実施形態では、イベント出力命令288は、イベントハンドラを起動せずにサブイベントに関するイベント情報を出力するサブイベント出力命令を含む。サブイベント出力命令は、イベントハンドラを起動する代わりに、一連のサブイベントと関連するイベントハンドラ又は有効関連ビューにイベント情報を出力する。一連のサブイベント又は有効関連ビューと関連するイベントハンドラはイベント情報を受信し、所定の処理を実行する。
いくつかの実施形態では、データ更新器276は、アプリケーション236−1で使用されるデータを作成し、更新する。例えば、データ更新器276は、連絡先モジュール237で使用される電話番号を更新するか、又はビデオプレーヤモジュールで使用されるビデオファイルを記憶する。いくつかの実施形態では、オブジェクト更新器277は、アプリケーション236−1で使用されるオブジェクトを作成し、更新する。例えば、オブジェクト更新器277は、新規のユーザインタフェースオブジェクトを作成するか又はユーザインタフェースオブジェクトの位置を更新する。GUI更新器278はGUIを更新する。例えば、GUI更新器278は表示情報を準備し、タッチセンシティブディスプレイで表示するために表示情報をグラフィックスモジュール232へ送信する。
いくつかの実施形態では、イベントハンドラ290は、データ更新器276、オブジェクト更新器277及びGUI更新器278を含むか又はそれらの更新器にアクセス可能である。いくつかの実施形態では、データ更新器276、オブジェクト更新器277及びGUI更新器278は、各アプリケーション236−1又はアプリケーションビュー291の単一のモジュールに含まれる。他の実施形態では、それらの更新器は2つ以上のソフトウェアモジュールに含まれる。
タッチセンシティブディスプレイにおけるユーザタッチのイベント処理に関する以上の説明は、入力装置を有する多機能装置200を動作させるための他の形のユーザ入力にも同様に適用され、それらのユーザ入力のすべてがタッチ画面で開始されるとは限らないことを理解すべきである。例えば、キーボードの1回又は複数回の押下又は押し続ける操作と任意に協調されるマウスの移動及びマウスボタンの押下、タッチパッドにおけるタップ、ドラッグ、スクロールなどの接触移動、ペンスタイラス入力、装置の移動、口頭命令、検出される目の動き、バイオメトリック入力及び/又はそれらの何らかの組み合わせは、認識されるイベントを定義するサブイベントに対応する入力として任意に利用される。
図3は、いくつかの実施形態に係るタッチ画面212を有するポータブル多機能装置200を示す。タッチ画面は、ユーザインタフェース(UI)300の中に1つ以上のグラフィックスを任意に表示する。本実施形態及び以下に説明される他の実施形態では、ユーザは、例えば、1本以上の指302(図には縮尺通りに示されていない)又は1つ以上のスタイラス303(図には縮尺通りに示されていない)によってグラフィックス上でジェスチャーを実行することにより、グラフィックスのうち1つ以上を選択できる。いくつかの実施形態では、1つ以上のグラフィックスの選択は、ユーザがそれらの1つ以上のグラフィックスとの接触を中止したときに起こる。いくつかの実施形態では、ジェスチャーは、1回以上のタップ、1回以上のスワイプ(左から右へ、右から左へ、下から上へ及び/又は上から下へ)及び/又は装置200と接触していた指のローリング(右から左へ、左から右へ、下から上へ及び/又は上から下へ)を任意に含む。いくつかの実現形態又は状況では、グラフィックスに偶発的に触れても、そのグラフィックスは選択されない。例えば、アプリケーションアイコンをかすめるスワイプジェスチャーは、選択に対応するジェスチャーがタップである場合には対応するアプリケーションを任意に選択しない。
装置200は、「ホーム」ボタン又はメニューボタン304などの1つ以上の物理的ボタンを更に含んでもよい。先に説明したように、メニューボタン304は、装置200で実行されてもよいアプリケーションのセットの中のいずれかのアプリケーション236へナビゲートするために使用されてもよい。あるいは、いくつかの実施形態では、メニューボタンは、タッチ画面212に表示されるGUIのソフトキーとして実現される。
一実施形態において、装置200は、タッチ画面212と、メニューボタン304と、装置の電源オン/オフ及び装置のロックのための押しボタン306と、音量調整ボタン308と、サブスクライバアイデンティティモジュール(SIM)カードスロット310と、ヘッドセットジャック312と、ドッキング/充電用外部ポート224とを含む。押しボタン306は、ボタンを押下し、事前定義済み時間にわたりボタンを押下状態に保持することにより装置の電源をオン/オフし、ボタンを押下し、事前定義済み時間が経過する前にボタンを離すことにより装置をロックしかつ/又は装置のロックを解除するか又はロック解除処理を開始するために任意に使用される。別の実施形態では、装置200は、いくつかの機能を起動又は停止するための口頭入力をマイク213を介して更に受信する。装置200は、タッチ画面212への接触の強度を検出する1つ以上の接触強度センサ265及び/又は装置200のユーザに対して触覚出力を発生する1つ以上の触覚出力生成器267を更に任意に含む。
図4は、いくつかの実施形態に係るディスプレイ及びタッチセンシティブ表面を有する例示的な多機能装置のブロック図である。装置400はポータブルでなくてもよい。いくつかの実施形態では、装置400は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディアプレーヤ装置、ナビゲーション装置、教育用装置(小児用学習玩具など)、ゲームシステム又は制御装置(例えば、家庭用コントローラ又は工業用コントローラ)である。装置400は、通常、1つ以上の処理部(CPU)410、1つ以上のネットワーク又は他の通信インタフェース460、メモリ470及びそれらの構成要素を相互接続する1つ以上の通信バス420を含む。通信バス420は、システム構成要素を互いに接続し且つシステム構成要素間の通信を制御する回路網(チップセットと呼ばれる場合もある)を任意に含む。装置400は、通常はタッチ画面ディスプレイであるディスプレイ440を備える入出力(I/O)インタフェース430を含む。I/Oインタフェース430は、キーボード及び/又はマウス(又は他のポインティング装置)450及びタッチパッド455、装置400で触覚出力を発生する触覚出力生成器457(例えば、先に図2Aを参照して説明した触覚出力生成器267に類似する)、センサ459(例えば、光センサ、加速センサ、近接センサ、タッチセンシティブセンサ及び/又は先に図2Aを参照して説明した接触強度センサ265に類似する接触強度センサ)を更に任意に含む。メモリ470は、DRAM、SRAM、DDR RAM又は他のランダムアクセス固体メモリ装置などの高速ランダムアクセスメモリを含み、1つ以上の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリ装置又は他の不揮発性固体記憶装置などの不揮発性メモリを任意に含む。メモリ470は、CPU410から離れた位置に配置された1つ以上の記憶装置を任意に含む。いくつかの実施形態では、メモリ470は、ポータブル多機能装置200(図2A)のメモリ202に記憶されたプログラム、モジュール及びデータ構造と同様のプログラム、モジュール及びデータ構造、又はそのサブセットを記憶する。更に、メモリ470は、ポータブル多機能装置200のメモリ202には存在しない追加のプログラム、モジュール及びデータ構造を任意に記憶する。例えば、装置400のメモリ470は、描画モジュール480、プレゼンテーションモジュール482、文書処理モジュール484、ウェブサイト作成モジュール486、ディスクオーサリングモジュール488及び/又はスプレッドシートモジュール490を任意に記憶するが、ポータブル多機能装置200(図2A)のメモリ202は、それらのモジュールを任意に記憶しない。
図4の上記の要素の各々は、前述のメモリ装置のうち1つ以上に記憶されてもよい。上記のモジュールの各々は、先に説明した機能を実行するための命令のセットに対応する。上記のモジュール又はプログラム(例えば、命令のセット)は、個別のソフトウェアプログラム、手順又はモジュールとして実現される必要はなく、従って、種々の実施形態において、それらのモジュールの種々のサブセットは組み合わされるか又は再配列されてもよい。いくつかの実施形態では、メモリ470は、先に挙げたモジュール及びデータ構造のサブセットを記憶してもよい。更に、メモリ470は、先に説明されなかった追加のモジュール及びデータ構造を記憶してもよい。
次に、例えば、ポータブル多機能装置200で実現されてもよいユーザインタフェースの実施形態に注目する。
図5Aは、いくつかの実施形態に係るポータブル多機能装置200におけるアプリケーションのメニューを表す例示的なユーザインタフェースを示す。装置400でも同様のユーザインタフェースが実現されてよい。いくつかの実施形態では、ユーザインタフェース500は以下の要素、あるいはその下位セット又は上位セットを含む。
・セルラ信号及びWi−Fi信号などの無線通信のための信号強度標識502、
・時刻504、
・Bluetooth標識505、
・バッテリ状態標識506、
・次のような頻繁に使用されるアプリケーションのアイコンを伴うトレイ508
〇不在着信又はボイスメールメッセージの数を示す標識514を任意に含む「電話」とラベル付けされた電話モジュール238のアイコン516、
〇未読電子メールの数を示す標識510を任意に含む「メール」とラベル付けされた電子メールクライアントモジュール240のアイコン518、
〇「ブラウザ」とラベル付けされたブラウザモジュール247のアイコン520、及び
〇「iPod」とラベル付けされたiPod(Apple Inc.の商標)モジュール252とも呼ばれるビデオ・音楽プレーヤモジュール252のアイコン522、
・次のような他のアプリケーションのアイコン
〇「メッセージ」とラベル付けされたIMモジュール241のアイコン524、
〇「カレンダ」とラベル付けされたカレンダモジュール248のアイコン526、
〇「写真」とラベル付けされた画像管理モジュール244のアイコン528、
〇「カメラ」とラベル付けされたカメラモジュール243のアイコン530、
〇「オンラインビデオ」とラベル付けされたオンラインビデオモジュール255のアイコン532、
〇「株価」とラベル付けされた株価ウィジェット249−2のアイコン534、
〇「地図」とラベル付けされた地図モジュール254のアイコン536、
〇「天気」とラベル付けされた天気ウィジェット249−1のアイコン538、
〇「時計」とラベル付けされた目覚まし時計ウィジェット249−4のアイコン540、
〇「ワークアウトサポート」とラベル付けされたワークアウトサポートモジュール242のアイコン542、
〇「メモ」とラベル付けされたメモモジュール253のアイコン544、及び
〇装置200及びその種々のアプリケーション236の設定へのアクセスを提供する「設定」とラベル付けされた設定アプリケーション又はモジュールのアイコン546。
尚、図5Aに示されるアイコンラベルは単なる例である。例えば、ビデオ/音楽プレーヤモジュール252のアイコン522は、任意に「音楽」又は「音楽プレーヤ」とラベル付けされてもよい。種々のアプリケーションアイコンに対して他のラベルが任意に使用される。いくつかの実施形態では、各アプリケーションアイコンを表すラベルは、その各アプリケーションアイコンに対応するアプリケーションの名称である。いくつかの実施形態では、特定のアプリケーションアイコンを表すラベルは、その特定のアプリケーションアイコンに対応するアプリケーションの名称とは異なる。
図5Bは、ディスプレイ550(例えば、タッチ画面ディスプレイ212)とは別のタッチセンシティブ表面551(例えば、図4のタブレット又はタッチパッド455)を有する装置(例えば、図4の装置400)の例示的なユーザインタフェースを示す。装置400は、タッチセンシティブ表面551への接触の強度を検出する1つ以上の接触強度センサ(例えば、センサ457のうち1つ以上)及び/又は装置400のユーザに対して触覚出力を発生する1つ以上の触覚出力生成器459を更に任意に含む。
以下に示す例のうちいくつかはタッチ画面ディスプレイ212(タッチセンシティブ表面とディスプレイが組み合わされている)への入力に関連して説明されるが、いくつかの実施形態では、装置は、図5Bに示されるように、ディスプレイとは別であるタッチセンシティブ表面への入力を検出する。いくつかの実施形態では、タッチセンシティブ表面(例えば、図5Bの551)は、ディスプレイ(例えば、550)の主軸(例えば、図5Bの553)に対応する主軸(例えば、図5Bの552)を有する。それらの実施形態によれば、装置は、ディスプレイのそれぞれの位置に対応する位置におけるタッチセンシティブ表面551との接触(例えば、図5Bの560及び562)を検出する(例えば、図5Bでは、560は568に対応し、562は570に対応する)。このように、タッチセンシティブ表面(例えば、図5Bの551)で装置により検出されるユーザ入力(接触560及び562、並びにその移動)は、タッチセンシティブ表面がディスプレイとは別である場合に多機能装置のディスプレイ(例えば、図5Bの550)でユーザインタフェースを操作するために装置により使用される。尚、本明細書で説明される他のユーザインタフェースに対しても類似の方法が任意に使用されることを理解すべきである。
更に、以下に示す例は主に指による入力(例えば、指の接触、指のタップジェスチャー、指のスワイプジェスチャー)に関連して説明されるが、いくつかの実施形態では、指入力のうち1つ以上の代わりに別の入力装置(例えば、マウスベース入力又はスタイラス入力)が使用されることを理解すべきである。例えば、スワイプジェスチャーの代わりに、マウスクリック(例えば、接触の代わりに)と、その後に続くスワイプの経路に沿ったカーソルの移動(例えば、接触の移動の代わりに)とが任意に使用される。別の例として、タップジェスチャーの代わりに(例えば、接触の検出及びその後に続く接触検出の停止の代わりに)、タップジェスチャーの位置にカーソルを置いたままでマウスをクリックする操作が任意に使用される。同様に、複数のユーザ入力が同時に検出される場合に、複数のコンピュータマウスが任意に同時に使用されるか、又はマウスと指による接触が任意に同時に使用されることを理解すべきである。
図6Aは、例示的なパーソナル電子装置600を示す。装置600は本体602を含む。いくつかの実施形態では、装置600は、装置200及び400(例えば、図2A及び図4B)に関して説明した特徴の一部又はすべてを含むことができる。いくつかの実施形態では、装置600はタッチセンシティブディスプレイ画面604(以下、タッチ画面604)を有する。タッチ画面604の代わりに又はそれに加えて、装置600はディスプレイ及びタッチセンシティブ表面を有する。いくつかの実施形態では、装置200及び400の場合と同様に、タッチ画面604(又はタッチセンシティブ表面)は、加えられている接触(例えば、タッチ)の強度を検出する1つ以上の強度センサを有してもよい。タッチ画面604(又はタッチセンシティブ表面)の1つ以上の強度センサは、タッチの強度を表す出力データを提供できる。装置600のユーザインタフェースは、タッチの強度に基づいてタッチに応答でき、これは、異なる強度のタッチが装置600で異なるユーザインタフェース動作を呼び出すことができることを意味する。
タッチの強度を検出し、処理する技術は、例えば、いずれも本明細書に参考として全内容が取り入れられている2013年5月8日に出願された国際特許出願第PCT/US2013/040061号、名称「Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application」及び2013年11月11日に出願された国際特許出願第PCT/US2013/069483号、名称「Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships」の関連出願で見られる。
いくつかの実施形態では、装置600は1つ以上の入力機構606及び608を有する。入力機構606及び608が含まれる場合、それらは物理的機構であることが可能である。物理的入力機構の例は、押しボタン及び回転可能機構を含む。いくつかの実施形態では、装置600は1つ以上の装着機構を有する。そのような装着機構が含まれる場合、それらの機構により、装置600を、例えば、帽子、眼鏡、イヤリング、ネックレス、シャツ、ジャケット、ブレスレット、時計のバンド、チェーン、ズボン、ベルト、靴、財布、バックパックなどに装着できる。それらの装着機構により、ユーザは装置600を装着してもよい。
図6Bは、例示的なパーソナル電子装置600を示す。いくつかの実施形態では、装置600は、図2A、図2B及び図4に関して説明した構成要素の一部又はすべてを含むことができる。装置600は、I/O部614を1つ以上のコンピュータプロセッサ616及びメモリ618と動作可能に結合するバス612を有する。I/O部614はディスプレイ604に接続可能であり、ディスプレイ604はタッチセンシティブ構成要素622を有することができ、タッチ強度感知構成要素624を任意に有することができる。更に、I/O部614は、Wi−Fi、Bluetooth、近距離通信(NFC)、セルラ通信技術及び/又は他の無線通信技術を使用してアプリケーション及びオペレーティングシステムデータを受信する通信部630と接続可能である。装置600は入力機構606及び/又は608を含むことができる。入力機構606は、例えば、回転可能入力装置又は押下可能/回転可能入力装置であってもよい。いくつかの例では、入力機構608はボタンであってもよい。
いくつかの例では、入力機構608はマイクであってもよい。パーソナル電子装置600は、GPSセンサ632、加速度計634、方向センサ640(例えば、コンパス)、ジャイロスコープ636、動きセンサ638及び/又はそれらの組み合わせなどの種々のセンサを含むことができ、センサのすべてはI/O部614に動作可能に接続できる。
パーソナル電子装置600のメモリ618は、コンピュータ実行可能命令を記憶する非一時的コンピュータ可読記憶媒体であることが可能であり、コンピュータ実行可能命令は、1つ以上のコンピュータプロセッサ616により実行される場合に、例えば、コンピュータプロセッサに、方法900(図8A〜図8D)を含む以下に説明した技術を実行させることができる。コンピュータ実行可能命令は、コンピュータベースシステム、プロセッサを含むシステム、あるいは命令実行システム、装置又はデバイスから命令をフェッチし、それらの命令を実行できる他のシステムのような命令実行システム、装置又はデバイスにより使用するための又は命令実行システム、装置又はデバイスと関連して使用するための何らかの非一時的コンピュータ可読記憶媒体に記憶され及び/又は搬送されることも可能である。パーソナル電子装置600は、図6Bの構成要素及び構成に限定されず、多数の構成で他の構成要素又は追加の構成要素を含むことができる。
本明細書で使用される場合の用語「アフォーダンス」は、装置200、400及び/又は600(図2、図4及び図6)の表示画面に表示されてもよいユーザ対話型グラフィカルユーザインタフェースオブジェクトを表す。例えば、画像(例えば、アイコン)、ボタン及びテキスト(例えば、ハイパーリンク)は、それぞれアフォーダンスを構成してもよい。
本明細書で使用される場合の用語「フォーカスセレクタ」は、ユーザが対話しているユーザインタフェースの現在部分を指示する入力要素を表す。カーソル又は他の位置マーカを含むいくつかの実施形態では、カーソルが特定のユーザインタフェース要素(例えば、ボタン、ウィンドウ、スライダ又は他のユーザインタフェース要素)の上に位置している間に、タッチセンシティブ表面(例えば、図4のタッチパッド455又は図5Bのタッチセンシティブ表面551)で入力(例えば、押し入力)が検出された場合に、検出された入力に従ってその特定のユーザインタフェース要素が調整されるように、カーソルは「フォーカスセレクタ」として機能する。タッチ画面ディスプレイのユーザインタフェース要素との直接対話を可能にするタッチ画面ディスプレイ(例えば、図2Aのタッチセンシティブディスプレイシステム212又は図5Aのタッチ画面212)を含むいくつかの実現形態では、タッチ画面ディスプレイの特定のユーザインタフェース要素(例えば、ボタン、ウィンドウ、スライダ又は他のユーザインタフェース要素)の位置で入力(例えば、接触による押し入力)が検出された場合に、検出された入力に従ってその特定のユーザインタフェース要素が調整されるように、タッチ画面で検出される接触が「フォーカスセレクタ」として機能する。いくつかの実現形態では、フォーカスは、ユーザインタフェースの1つの領域からユーザインタフェースの別の領域へ移動される(例えば、タブキー又は矢印キーを使用して、フォーカスを1つのボタンから別のボタンへ移動させることによる)が、それに伴ってタッチ画面ディスプレイでカーソルが移動すること又は接触部が移動することはなく、そのような実現形態では、フォーカスセレクタは、ユーザインタフェースの異なる領域の間のフォーカスの移動に従って動く。フォーカスセレクタがどのような特定の形態をとるかにかかわらず、フォーカスセレクタは、一般に、ユーザが意図するユーザインタフェースとの対話を通信するように(例えば、ユーザが対話することを意図しているユーザインタフェースの要素を装置に指示することにより)ユーザにより制御されるユーザインタフェース要素(又はタッチ画面ディスプレイへの接触)である。例えば、タッチセンシティブ表面(例えば、タッチパッド又はタッチ画面)で押し入力が検出されている間に各ボタン上にあるフォーカスセレクタ(例えば、カーソル、接触又はセレクションボックス)の位置は、ユーザがその各ボタンを(装置のディスプレイに示される他のユーザインタフェース要素ではなく)起動することを意図していることを示す。
本明細書及び特許請求の範囲で使用される場合の用語である接触の「特性強度」は、その接触の1つ以上の強度に基づく接触の特性を表す。いくつかの実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、事前定義済みの数の強度サンプル、又は事前定義済みイベントに対して所定の期間(例えば、0.05秒、0.1秒、0.2秒、0.5秒、1秒、2秒、5秒、10秒)の間に収集された強度サンプルのセットに任意に基づく(例えば、接触の検出後、接触のリフトオフの検出前、接触の移動の開始前又は開始後、接触の終了の検出前、接触の強度の増加の検出前又は検出後及び/又は接触の強度の減少の検出前又は検出後)。接触の特性強度は、接触の強度の最大値、接触の強度の平均値、接触の強度の算術平均値、接触の強度の上から10パーセンタイルの値、接触の強度の半値の値、接触の強度の90%最大値の値などのうち1つ以上の任意に基づく。いくつかの実施形態では、特性強度を判定するときに接触の持続時間が使用される(例えば、特性強度が時間の経過に伴う接触の強度の平均である場合)。いくつかの実施形態では、ユーザにより操作が実行されたか否かを判定するために、特性強度は1つ以上の強度閾値のセットと比較される。例えば、1つ以上の強度閾値のセットは、第1の強度閾値及び第2の強度閾値を含んでもよい。本例では、第1の閾値を超えない特性強度による接触は第1の動作を実行させ、第1の強度閾値を超えるが、第2の強度閾値を超えない特性強度による接触は第2の動作を実行させ、第2の閾値を超える特性強度による接触は第3の動作を実行させる。いくつかの実施形態では、特性強度と1つ以上の閾値との比較は、第1の動作を実行するか又は第2の動作を実行するかを判定するために使用されるのではなく、1つ以上の動作を実行するか否か(例えば、各動作を実行するか又はその各動作の実行を控えるか)を判定するために使用される。
いくつかの実施形態では、特性強度を判定する目的で、ジェスチャーの一部が識別される。例えば、タッチセンシティブ表面は、開始位置から移行し、終了位置に到達し、終了点で接触の強度が増加するような連続スワイプ接触を受信してもよい。本例では、終了位置における接触の特性強度は、スワイプ接触全体ではなく、連続スワイプ接触の一部のみ(例えば、終了位置におけるスワイプ接触の部分のみ)に基づいてもよい。いくつかの実施形態では、接触の特性強度を判定する前に、スワイプ接触の強度に平滑化アルゴリズムが適用されてもよい。例えば、平滑化アルゴリズムは、非加重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム及び/又は指数平滑化アルゴリズムのうち1つ以上を任意に含む。いくつかの状況では、それらの平滑化アルゴリズムは、特性強度を判定するという目的のために、スワイプ接触の強度における幅の狭いスパイク又は押下を排除する。
タッチセンシティブ表面における接触の強度は、接触検出強度閾値、浅押し強度閾値、深押し強度閾値及び/又は1つ以上の他の強度閾値などの1つ以上の強度閾値に対して特徴付けられてもよい。いくつかの実施形態では、浅押し強度閾値は、物理的マウス又はトラックパッドのボタンをクリックすることと通常関連する動作を装置が実行する強度に対応する。いくつかの実施形態では、深押し強度閾値は、物理的マウス又はトラックパッドのボタンをクリックすることと通常関連する動作とは異なる動作を装置が実行する強度に対応する。いくつかの実施形態では、浅押し強度閾値未満である(例えば、それに加えて、接触が検出されなくなる公称接触検出強度は上回る)特性強度で接触が検出された場合に、装置は、浅押し強度閾値又は深押し強度閾値と関連する動作を実行することなく、タッチセンシティブ表面に沿った接触の移動に従ってフォーカスセレクタを移動させる。一般に、特に指示のない限り、それらの強度閾値は、異なる一連のユーザインタフェース図の間で一貫している。
接触の特性強度が浅押し強度閾値未満の強度から浅押し強度閾値と深押し強度閾値との間の強度まで増加することを「浅押し」入力と呼ぶ場合もある。接触の特性強度が深押し強度閾値未満の強度から深押し強度閾値を超える強度まで増加することを「深押し」入力と呼ぶ場合もある。接触の特性強度が接触検出強度閾値未満の強度から接触検出強度閾値と浅押し強度閾値との間の強度まで増加することをタッチ面における接触の検出と呼ぶ場合もある。接触の特性強度が接触検出強度閾値を超える強度から接触検出強度閾値未満の強度まで減少することをタッチ面からの接触のリフトオフの検出と呼ぶ場合もある。いくつかの実施形態では、接触検出強度閾値は0である。いくつかの実施形態では、接触検出強度閾値は0より大きい。
本明細書で説明されるいくつかの実施形態では、各押し入力を含むジェスチャーを検出すること又は1回の接触(又は複数回の接触)によって実行される各押し入力の検出に応答して1つ以上の動作が実行され、各押し入力は、接触(又は複数回の接触)の強度が押し入力強度閾値を超えて増加することに少なくとも部分的に基づいて検出される。いくつかの実施形態では、各接触の強度が押し入力強度閾値(例えば、各押し入力の「ダウンストローク」)を超えて増加したことの検出に応答して動作が実行される。いくつかの実施形態では、押し入力は、各接触の強度が押し入力強度閾値を超えて増加することと、その後、接触の強度が押し入力強度閾値未満に減少することとを含み、各動作は、各接触の強度が増加後に押し入力閾値未満に減少すること(例えば、各押し入力の「アップストローク」)の検出に応答して実行される。
いくつかの実施形態において、装置は、「ジッタ」と呼ばれる場合もある偶発入力を回避するために強度ヒステリシスを使用し、装置は、押し入力強度閾値に対して事前定義済み関係を有するヒステリシス強度閾値を定義又は選択する(例えば、ヒステリシス強度閾値は押し入力強度閾値より低いX強度単位であるか、又はヒステリシス強度閾値は押し入力強度閾値の75%、90%又は何らかの妥当な割合の値である)。従って、いくつかの実施形態では、押し入力は、押し入力強度閾値を超えるまでの各接触の強度の増加と、その後の押し入力強度閾値に対応するヒステリシス強度閾値未満に至るまでの接触の強度の減少とを含み、増加後のヒステリシス強度閾値未満に至るまでの各接触の強度の減少(例えば、各押し入力の「アップストローク」)の検出に応答して動作が実行される。同様に、いくつかの実施形態では、押し入力は、装置がヒステリシス強度閾値以下の強度から押し入力強度閾値以上の強度までの接触の強度の増加を検出し、任意に、その後にヒステリシス強度以下に至る接触の強度の減少を検出した場合に限り検出され、押し入力(例えば、状況に応じて接触の強度の増加又は接触の強度の減少)の検出に応答して各動作が実行される。
説明を容易にするために、押し入力強度閾値と関連する押し入力に応答して又は押し入力を含むジェスチャーに応答して実行される動作の説明は、任意に、押し入力強度閾値を超えるまでの接触の強度の増加、ヒステリシス強度閾値未満の強度から押し入力強度閾値を超える強度までの接触の強度の増加、押し入力強度閾値未満までの接触の強度の減少及び/又は押し入力強度閾値に対応するヒステリシス強度閾値未満までの接触の強度の減少のうちいずれかの検出に応答して開始される。更に、押し入力強度閾値未満までの接触の強度の減少の検出に応答して実行されるものとして動作が説明される例では、動作は、任意に、押し入力強度閾値に対応し、それより低いヒステリシス強度閾値未満までの接触の強度の減少の検出に応答して実行される。
2.デジタルアシスタントシステム
図7Aは、種々の例に係るデジタルアシスタントシステム700を示すブロック図である。いくつかの例では、デジタルアシスタントシステム700は独立型コンピュータシステムで実現される。いくつかの例では、デジタルアシスタントシステム700は複数のコンピュータに分散される。いくつかの例では、デジタルアシスタントのモジュール及び機能のうちのいくつかはサーバ部分及びクライアント部分に分割され、クライアント部分は1つ以上のユーザ装置(例えば、装置104、122、200、400又は600)に常駐し、例えば図1に示すように1つ以上のネットワークを介してサーバ部分(例えば、サーバシステム108)と通信する。いくつかの例では、デジタルアシスタントシステム700は図1に示すサーバシステム108(及び/又はDAサーバ106)の一実現形態である。尚、デジタルアシスタントシステム700はデジタルアシスタントシステムの一例にすぎず、デジタルアシスタントシステム700は、図示されている構成要素より多くの数の又は少ない数の構成要素を有することができ、2つ以上の構成要素を組み合わせてもよく、あるいは構成要素の異なる構成又は配置を有してもよい。図7Aに示される種々の構成要素は、ハードウェアで、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含む1つ以上のプロセッサ、ファームウェアにより実行されるソフトウェア命令で、あるいはそれらの組み合わせで実現される。
デジタルアシスタントシステム700は、メモリ702、1つ以上のプロセッサ704、入出力(I/O)インタフェース706及びネットワーク通信インタフェース708を含む。これらの構成要素は、1つ以上の通信バス又は信号線710を介して互いに通信できる。
いくつかの例では、メモリ702は、高速ランダムアクセスメモリ及び/又は不揮発性コンピュータ可読記憶媒体(例えば、1つ以上の磁気ディスク記憶装置、フラッシュメモリ装置又は他の不揮発性固体メモリ装置)などの非一時的コンピュータ可読媒体を含む。
いくつかの例では、I/Oインタフェース706は、ディスプレイ、キーボード、タッチ画面及びマイクなどのデジタルアシスタントシステム700の入出力装置716をユーザインタフェースモジュール722に結合する。I/Oインタフェース706は、ユーザインタフェースモジュール722と関連して、ユーザ入力(例えば、音声入力、キーボード入力、タッチ入力など)を受信し、それらを適宜処理する。いくつかの例では、例えばデジタルアシスタントが独立型ユーザ装置で実現される場合、デジタルアシスタントシステム700は、図2Aの装置200、図4の装置400又は図6A及び図6Bの装置600に関して説明する構成要素及びI/O通信インタフェースのうちのいずれかを含む。いくつかの例では、デジタルアシスタントシステム700はデジタルアシスタントの実現形態のサーバ部分を表し、ユーザ装置(例えば、装置104、200、400又は600)に常駐するクライアント側部分を介してユーザと対話する。
いくつかの例では、ネットワーク通信インタフェース708は有線通信ポート712及び/又は無線送受信回路網714を含む。有線通信ポートは、例えばイーサネット、ユニバーサルシリアルバス(USB)、FIREWIREなどである1つ以上の有線インタフェースを介して通信信号を送受信する。無線回路網714は、通信ネットワーク及び他の通信装置との間でRF信号及び/又は光信号を送受信する。無線通信は、GSM、EDGE、CDMA、TDMA、Bluetooth、Wi−Fi、VoIP、Wi−MAX又は他の何らかの適切な通信プロトコルなどの複数の通信規格、通信プロトコル及び通信技術のいずれも使用できる。ネットワーク通信インタフェース708は、デジタルアシスタントシステム700とインターネット、イントラネットなどのネットワーク及び/又は携帯電話網、無線ローカルエリアネットワーク(LAN)及び/又はメトロポリタンエリアネットワーク(MAN)などの無線ネットワーク及び他の装置との間の通信を可能にする。
いくつかの例では、メモリ702又はメモリ702のコンピュータ可読記憶媒体は、プログラムと、モジュールと、命令と、オペレーティングシステム718、通信モジュール720、ユーザインタフェースモジュール722、1つ以上のアプリケーション724及びデジタルアシスタントモジュール726のうちの全て又はサブセットを含むデータ構造とを記憶する。特に、メモリ702又はメモリ702のコンピュータ可読記憶媒体は、以下に説明する方法900を実行するための命令を記憶する。1つ以上のプロセッサ704は、それらのプログラム、モジュール及び命令を実行し、データ構造から読み出し、データ構造に書き込む。
オペレーティングシステム718(例えば、Darwin、RTXC、LINUX、UNIX、iOS、OS X、WINDOWS、VxWorksなどの組み込みオペレーティングシステム)は、一般システムタスク(例えば、メモリ管理、記憶装置制御、電力管理など)を制御し、管理するための種々のソフトウェア構成要素及び/又はドライバを含み、種々のハードウェア構成要素、ファームウェア構成要素及びソフトウェア構成要素との通信を容易にする。
通信モジュール720は、ネットワーク通信インタフェース708を介するデジタルアシスタントシステム700と他の装置との間の通信を容易にする。例えば通信モジュール720は、図2Aの装置200、図4の装置400、図6A及び図6Bの装置600などの電子装置のRF回路網208と通信する。通信モジュール720は、無線回路網714及び/又は有線通信ポート712により受信したデータを処理するための種々の構成要素を更に含む。
ユーザインタフェースモジュール722は、I/Oインタフェース706を介して(例えば、キーボード、タッチ画面、ポインティングデバイス、コントローラ及び/又はマイクから)ユーザからコマンド及び/又は入力を受信し、ディスプレイ上にユーザインタフェースオブジェクトを生成する。また、ユーザインタフェースモジュール722は、I/Oインタフェース706を介して(例えば、ディスプレイ、オーディオチャネル、スピーカ、タッチパッドなどを介して)ユーザに対する出力(例えば、音声、音、アニメーション、テキスト、アイコン、振動、触覚フィードバック、光など)を用意して提供する。
アプリケーション724は、1つ以上のプロセッサ704により実行されるように構成されるプログラム及び/又はモジュールを含む。例えばデジタルアシスタントシステムが独立型ユーザ装置で実現される場合、アプリケーション724は、ゲーム、カレンダアプリケーション、ナビゲーションアプリケーション又は電子メールアプリケーションなどのユーザアプリケーションを含む。デジタルアシスタントシステム700がサーバで実現される場合、アプリケーション724は、例えばリソース管理アプリケーション、診断アプリケーション又はスケジューリングアプリケーションを含む。
メモリ702はデジタルアシスタントモジュール726(又はデジタルアシスタントのサーバ部分)を更に含む。いくつかの例では、デジタルアシスタントモジュール726は、入出力処理モジュール728、音声/テキスト(STT)処理モジュール730、自然言語処理モジュール732、会話フロー処理モジュール734、タスクフロー処理モジュール736、サービス処理モジュール738及び音声合成モジュール740などのサブモジュール、あるいはそれらの下位セット又は上位セットを含む。これらのモジュールの各々は、デジタルアシスタントモジュール726のオントロジ760、語彙インデックス744、ユーザデータ748、タスクフローモデル754、サービスモデル756及びASRシステムなどのシステム又はデータ及びモデルのうちの1つ以上、あるいはそれらの下位セット又は上位セットにアクセスできる。
いくつかの例では、デジタルアシスタントモジュール726で実現される処理モジュール、データ及びモデルを使用して、デジタルアシスタントは、音声入力をテキストに変換すること、ユーザから受信した自然言語入力で表されたユーザの意図を識別すること、ユーザの意図を完全に推論するために必要な情報を能動的に誘導して取得すること(例えば、単語、ゲーム、意思などを明確にすることにより)、推論された意図を実行するためのタスクフローを判定すること、推論された意図を実行するためにタスクフローを実行することのうちの少なくともいくつかを実行する。
いくつかの例では、図7Bに示すように、I/O処理モジュール728は図7AのI/O装置716を介してユーザと対話するか又は図7Aのネットワーク通信インタフェース708を介してユーザ装置(例えば、装置104、200、400又は600)と対話して、ユーザ入力(例えば、音声入力)を取得し、ユーザ入力に対する応答(例えば、音声出力)を提供する。I/O処理モジュール728は、ユーザ入力に関連するコンテキスト情報をユーザ入力の受信と共に又はその受信直後にユーザ装置から任意に取得する。コンテキスト情報は、ユーザ入力に関連するユーザ別のデータ、語彙及び/又は好みを含む。いくつかの例では、コンテキスト情報は、ユーザ要求が受信された時点のユーザ装置のソフトウェア状態及びハードウェア状態、並びに/又はユーザ要求が受信された時点のユーザの周辺環境に関する情報を更に含む。いくつかの例では、I/O処理モジュール728は更にユーザ要求に関する補足質問をユーザに対して送信して回答を受信する。ユーザ要求がI/O処理モジュール728により受信され、ユーザ要求が音声入力を含む場合、I/O処理モジュール728は音声/テキスト変換のためにSTT処理モジュール730(又は音声認識器)に音声入力を転送する。
STT処理モジュール730は1つ以上のASRシステムを含む。1つ以上のASRシステムは、I/O処理モジュール728を介して受信した音声入力を処理して認識結果を生成する。各ASRシステムは、フロントエンド音声前処理器を含む。フロントエンド音声前処理器は、音声入力から代表特徴を抽出する。例えばフロントエンド音声前処理器は、音声入力にフーリエ変換を実行して、一連の代表多次元ベクトルとして音声入力を特徴付けるスペクトル特徴を抽出する。更に、各ASRシステムは1つ以上の音声認識モデル(例えば、音響モデル及び/又は言語モデル)を含み、1つ以上の音声認識エンジンを実現する。音声認識モデルの例は、隠れマルコフモデル、混合ガウスモデル、ディープニューラルネットワークモデル、nグラム言語モデル及び他の統計モデルを含む。音声認識エンジンの例は、動的時間伸縮を使用するエンジン及び重み付き有限状態トランスデューサ(WFST)を使用するエンジンを含む。1つ以上の音声認識モデル及び1つ以上の音声認識エンジンは、フロントエンド音声前処理器の抽出された代表特徴を処理して中間認識結果(例えば、音素、音素列及び部分語)を生成し、最終的にテキスト認識結果(例えば、単語、単語列又はトークンシーケンス)を生成する。いくつかの例では、音声入力は、認識結果を生成するために第3者のサービス又はユーザの装置(例えば、装置104、200、400又は600)で少なくとも部分的に処理される。STT処理モジュール730がテキスト列(例えば、単語、単語シーケンス又はトークンシーケンス)を含む認識結果を生成すると、認識結果は意図を推測するために自然言語処理モジュール732に渡される。
音声/テキスト処理の更なる詳細は、本明細書に参考として全内容が取り入れられている2011年9月20日出願の米国特許出願第13/236,942号「Consolidating Speech Recognition Results」で説明される。
いくつかの例では、STT処理モジュール730は、音標文字変換モジュール731を介して認識可能な単語の語彙を含み且つ/又はそれにアクセスする。各単語は、音声認識音標文字で表された単語の1つ以上の候補発音に関連付けられる。特に、認識可能な単語の語彙は、複数の候補発音に関連付けられる単語を含むことができる。例えば語彙は、
及び
の候補発音に関連付けられる単語「tomato」を含む。更に、単語は、ユーザからの以前の音声入力に基づくカスタム候補発音に関連付けられることができる。カスタム候補発音はSTT処理モジュール730に記憶され、装置のユーザのプロファイルを介して特定のユーザと関連付けられる。いくつかの例では、単語の候補発音は、単語の綴りと1つ以上の言語学的規則及び/又は音声規則とに基づいて判定される。いくつかの例では、候補発音は、例えば既知の標準発音に基づいて手動で生成される。
いくつかの例では、候補発音はそれらの一般性に基づいてランク付けされる。例えば候補発音
はより一般に使用される発音であるため(例えば、全てのユーザの間で、特定の地理的領域のユーザの場合に又は他の何らかの適切な一部のユーザの場合に)、
より上位にランク付けされる。いくつかの例では、候補発音は、それがユーザに関連付けられたカスタム候補発音であるか否かに基づいてランク付けされる。例えばカスタム候補発音は、標準候補発音より上位にランク付けされる。これは、標準発音と異なる特有の発音を有する適切な名詞を認識するのに有用である。いくつかの例では、候補発音は、出身地、国籍又は民族などの1つ以上の音声特徴に関連付けられる。例えば候補発音
は米国に関連付けられ、候補発音
は英国に関連付けられる。更に、候補発音のランクは、装置のユーザのプロファイルに記憶されたユーザの1つ以上の特徴(例えば、出身地、国籍、民族など)に基づく。例えば、ユーザが米国に関連付けられることがユーザのプロファイルから判定される。ユーザが米国に関連付けられることに基づいて、候補発音
(米国に関連付けられる)が候補発音
(英国に関連付けられる)より上位にランク付けされる。いくつかの例では、ランク付けされた候補発音のうちの1つが予測発音(例えば、可能性が最も高い発音)として選択される。
音声入力が受信された場合、STT処理モジュール730を使用して音声入力に対応する音素が判定され(例えば、音響モデルを使用して)、音素に一致する単語の判定が試みられる(例えば、言語モデルを使用して)。例えばSTT処理モジュール730が最初に、音声入力の一部分に対応する音素シーケンス
を識別した場合、語彙インデックス744に基づいて、当該シーケンスは単語「tomato」に対応すると判定できる。
いくつかの例では、STT処理モジュール730は近似マッチング技術を使用して、発言内の単語を判定する。従って、例えばSTT処理モジュール730は、特定の音素シーケンス
が単語「tomato」の候補音素シーケンスの1つでない場合でも、当該音素シーケンスが単語「tomato」に対応すると判定できる。
いくつかの例では、自然言語処理モジュール732は音声入力に関連するメタデータを受信するように構成される。メタデータは、音声入力(あるいは、音声入力に対応する単語シーケンス又はトークンシーケンス)に自然言語処理を実行するか否かを示す。自然言語処理が実行されるとメタデータが示す場合、自然言語処理モジュールはSTT処理モジュールから単語シーケンス又はトークンシーケンスを受信して自然言語処理を実行する。しかし、自然言語処理が実行されないとメタデータが示す場合、自然言語処理モジュールは無効化され、STT処理モジュールからの単語シーケンス又はトークンシーケンス(例えば、テキスト列)がデジタルアシスタントから出力される。いくつかの例では、メタデータは、ユーザ要求に対応する1つ以上の領域を更に識別する。1つ以上の領域に基づいて、自然言語プロセッサは、1つ以上の領域以外のオントロジ760内の領域を無効化する。このようにして、自然言語処理はオントロジ760内の1つ以上の領域に限定される。特に、構造クエリ(以下に説明する)は、オントロジ内の他の領域を使用せずに1つ以上の領域を使用して生成される。
デジタルアシスタントの自然言語処理モジュール732(「自然言語プロセッサ」)は、STT処理モジュール730により生成された単語又はトークンのシーケンス(「トークンシーケンス」)を取得し、トークンシーケンスとデジタルアシスタントにより認識される1つ以上の「実行可能な意図」とを関連付けようとする。「実行可能な意図」はデジタルアシスタントにより実行可能なタスクを表し、タスクフローモデル754で実現される関連するタスクフローを有する。関連するタスクフローは、タスクを実行するためにデジタルアシスタントが行う一連のプログラミングされた動作及びステップである。デジタルアシスタントの機能の範囲は、実現されてタスクフローモデル754に記憶されたタスクフローの数及び多様性に依存し、換言すると、デジタルアシスタントが認識する「実行可能な意図」の数及び多様性に依存する。しかし、デジタルアシスタントの有効性は、自然言語で表されたユーザ要求から正確な「実行可能な意図」を推論するデジタルアシスタントの能力にも依存する。
いくつかの例では、STT処理モジュール730から取得した単語シーケンス又はトークンシーケンスに加えて、自然言語処理モジュール732は、例えばI/O処理モジュール728からユーザ要求に関連するコンテキスト情報を更に受信する。自然言語処理モジュール732は、STT処理モジュール730から受信したトークンシーケンスに含まれる情報を明確にし、補足し且つ/又は更に定義するためにコンテキスト情報を任意に使用する。コンテキスト情報は、例えばユーザの好み、ユーザ装置のハードウェア状態及び/又はソフトウェア状態、ユーザ要求の前、最中又は直後に収集されたセンサ情報、デジタルアシスタントとユーザとの間の以前の対話(例えば、会話)などを含む。本明細書で説明するように、コンテキスト情報は動的であり、時間、場所、会話の内容及び他の要素と共に変化する。
いくつかの例では、自然言語処理は例えばオントロジ760に基づく。オントロジ760は、各ノードが複数の「実行可能な意図」又は他の「特性」のうちの1つ以上に関する1つの「実行可能な意図」又は「特性」を表す多くのノードを含む階層構造である。上述したように、「実行可能な意図」はデジタルアシスタントが実行できるタスクを表し、すなわち、これは「実行可能である」か又は対処される。「特性」は、実行可能な意図又は別の特性の下位の側面に関連するパラメータを表す。オントロジ760における実行可能な意図ノードと特性ノードとの間のリンクは、特性ノードにより表されるパラメータが実行可能な意図ノードにより表されるタスクにどのように関係するかを定義する。
いくつかの例では、オントロジ760は実行可能な意図ノード及び特性ノードで構成される。オントロジ760内で、各実行可能な意図ノードは1つ以上の特性ノードに直接又は1つ以上の中間特性ノードを介してリンクされる。同様に、各特性ノードは1つ以上の実行可能な意図ノードに直接又は1つ以上の中間特性ノードを介してリンクされる。例えば図7Cに示すように、オントロジ760は「レストラン予約」ノード(すなわち、実行可能な意図ノード)を含む。特性ノード「レストラン」、「日付/時刻」(予約用)及び「人数」はそれぞれ、実行可能な意図ノード(すなわち、「レストラン予約」ノード)に直接リンクされる。
更に、特性ノード「料理」、「価格帯」、「電話番号」及び「場所」は特性ノード「レストラン」のサブノードであり、中間特性ノード「レストラン」を介して「レストラン予約」ノード(すなわち、実行可能な意図ノード)にそれぞれリンクされる。別の例として、図7Cに示すように、オントロジ760は「リマインダ設定」ノード(すなわち、別の実行可能な意図ノード)を更に含む。特性ノード「日付/時刻」(リマインダ設定用)及び「件名」(リマインダ用)がそれぞれ「リマインダ設定」ノードにリンクされる。特性「日付/時刻」はレストランを予約するタスク及びリマインダを設定するタスクの双方に関係するため、特性ノード「日付/時刻」はオントロジ760において「レストラン予約」ノード及び「リマインダ設定」ノードの双方にリンクされる。
実行可能な意図ノード及びそれにリンクされたコンセプトノードを「領域」として説明する。本説明において、各領域は各々の実行可能な意図に関連付けられ、特定の実行可能な意図に関連付けられるノードのグループ(及びそれらの間の関係)を示す。例えば図7Cに示すオントロジ760は、オントロジ760内のレストラン予約領域762の一例及びリマインダ領域764の一例を含む。レストラン予約領域は、実行可能な意図ノード「レストラン予約」、特性ノード「レストラン」、「日付/時刻」及び「人数」、サブ特性ノード「料理」、「価格帯」、「電話番号」及び「場所」を含む。リマインダ領域764は、実行可能な意図ノード「リマインダ設定」、特性ノード「件名」及び「日付/時刻」を含む。いくつかの例では、オントロジ760は多くの領域で構成される。各領域は、1つ以上の他の領域と1つ以上の特性ノードを共有できる。例えば「日付/時刻」特性ノードは、レストラン予約領域762及びリマインダ領域764に加えて多くの異なる領域(例えば、スケジューリング領域、旅行予約領域、映画チケット領域など)と関連付けられる。
図7Cはオントロジ760内の領域の2つの例を示すが、他の領域は、例えば「映画検索」、「電話発信」、「方向検索」、「会議スケジューリング」、「メッセージ送信」、及び「質問に回答する」、「リストを読む」、「ナビゲーション命令を提供する」、「タスクに対する命令を提供する」などを含む。「メッセージ送信」領域は、「メッセージ送信」実行可能な意図ノードと関連付けられ、「宛先」、「メッセージの種類」及び「メッセージの本文」などの特性ノードを更に含んでもよい。特性ノード「宛先」は、例えば「宛先名」及び「メッセージアドレス」などのサブ特性ノードにより更に定義される。
いくつかの例では、オントロジ760は、デジタルアシスタントが理解できて対処できる全ての領域(及び実行可能な意図)を含む。いくつかの例では、オントロジ760は、領域全体又はノードを追加するか又は除去すること、あるいはオントロジ760内のノード間の関係を変更することなどにより変更可能である。
いくつかの例では、複数の関連する実行可能な意図に関連付けられたノードがオントロジ760内の「上位領域」内でクラスタリングされる。例えば「旅行」上位領域は、旅行に関係する特性ノード及び実行可能な意図ノードのクラスタを含む。旅行に関係する実行可能な意図ノードは、「飛行機予約」、「ホテル予約」、「自動車レンタル」、「行先案内」、「地点情報検索」などを含む。同一の上位領域(例えば、「旅行」上位領域)内の実行可能な意図ノードは、多くの特性ノードを共有する。例えば「飛行機予約」、「ホテル予約」、「自動車レンタル」、「行先案内」、「地点情報検索」の実行可能な意図ノードは、特性ノード「出発地」、「目的地」、「出発日/時刻」、「到着日/時刻」及び「人数」のうちの1つ以上を共有する。
いくつかの例では、オントロジ760内の各ノードは、ノードが表す特性又は実行可能な意図に関係する単語及び/又は語句のセットと関連付けられる。各ノードに関連付けられる単語及び/又は語句の各セットは、ノードに関連付けられたいわゆる「語彙」である。各ノードに関連付けられが単語及び/又は語句の各セットは、ノードが表す特性又は実行可能な意図と関連付けて語彙インデックス744に記憶される。例えば図7Bを再度参照すると、「レストラン」の特性に対するノードと関連付けられる語彙は、「食べ物」、「飲み物」、「料理」、「空腹」、「食べる」、「ピザ」、「ファーストフード」及び「食事」などの単語を含む。別の例では、「電話発信」の実行可能な意図に対するノードと関連付けられる語彙は、「電話する」、「電話」、「ダイアル」、「発信」、「この番号に電話する」及び「電話をかける」などの単語及び語句を含む。語彙インデックス744は、種々の言語の単語及び語句を任意に含む。
自然言語処理モジュール732はSTT処理モジュール730からトークンシーケンス(例えば、テキスト列)を受信し、トークンシーケンス内の単語により暗示されるノードを判定する。いくつかの例では、トークンシーケンス内の単語又は語句がオントロジ760内の1つ以上のノードに関連付けられると判明した場合(語彙インデックス744を介して)、単語又は語句はそれらのノードを「トリガする」か又は「有効にする」。有効にされたノードの数及び/又は相対的重要性に基づいて、自然言語処理モジュール732は実行可能な意図のうちの1つをデジタルアシスタントが実行することをユーザが意図したタスクとして選択する。いくつかの例では、「トリガされた」ノードが最も多い領域が選択される。いくつかの例では、信頼値が最も高い領域(例えば、トリガされた種々のノードの相対的重要性に基づいて)が選択される。いくつかの例では、領域は、トリガされたノードの数及び重要性の組み合わせに基づいて選択される。いくつかの例では、デジタルアシスタントがユーザからの同様の要求を以前に正確に解釈したか否かなどの更なる要素がノードを選択する際に更に考慮される。
ユーザデータ748は、ユーザ別語彙、ユーザの好み、ユーザの住所、ユーザのデフォルト言語及び二次言語、ユーザの連絡先リスト及びユーザ毎の他の短期又は長期情報などのユーザ別情報を含む。いくつかの例では、自然言語処理モジュール732はユーザ別情報を使用して、ユーザの意図を更に定義するためにユーザ入力に含まれる情報を補足する。例えばユーザ要求「友達を誕生会に招待して」に対して、自然言語処理モジュール732は、誰が「友達」か及び「誕生会」が開催される日時と場所をユーザが要求において明示的に提供する必要がなく、ユーザデータ748にアクセスしてそのような情報を判定できる。
トークン列に基づくオントロジの探索の他の詳細は、本明細書に参考として全内容が取り入れられている2008年12月22日出願の米国特許出願第12/341,743号「Method and Apparatus for Searching Using An Active Ontology」で説明される。
いくつかの例では、自然言語処理モジュール732がユーザ要求に基づいて実行可能な意図(又は領域)を識別すると、自然言語処理モジュール732は識別された実行可能な意図を表すために構造化クエリを生成する。いくつかの例では、構造化クエリは実行可能な意図に対する領域内の1つ以上のノードに対するパラメータを含み、パラメータの少なくともいくつかはユーザ要求で指定された特定の情報及び条件がポピュレートされる。例えばユーザは「夕食に7時に寿司屋を予約して」と述べる。この場合、自然言語処理モジュール732はユーザ入力に基づいて、実行可能な意図が「レストラン予約」であると正確に識別できる。オントロジによると、「レストラン予約」領域に対する構造化クエリは{料理}、{時刻}、{日付}及び{人数}などのパラメータを含む。いくつかの例では、音声入力及びSTT処理モジュール730を使用して音声入力から導出されたテキストに基づいて、自然言語処理モジュール732はレストラン予約領域に対する部分的な構造化クエリを生成する。この場合、部分的な構造化クエリは、パラメータ{料理=「寿司」}及び{時刻=「午後7時」}を含む。しかし、本例では、ユーザの発言が含む情報は、領域に関連する構造化クエリを完成するには不十分である。従って、{人数}及び{日付}などの他の必要なパラメータは、現在利用可能な情報に基づく構造化クエリにおいて指定されない。いくつかの例では、自然言語処理モジュール732は、構造化クエリのいくつかのパラメータに受信したコンテキスト情報をポピュレートする。例えばいくつかの例では、ユーザが「近所の」寿司屋を要求した場合、自然言語処理モジュール732は、構造化クエリの{場所}パラメータにユーザ装置からのGPS座標をポピュレートする。
いくつかの例では、自然言語処理モジュール732は、生成された構造化クエリ(何らかの完成されたパラメータを含む)をタスクフロー処理モジュール736(「タスクフロープロセッサ」)に渡す。タスクフロー処理モジュール736は、自然言語処理モジュール732から構造化クエリを受信し、必要に応じて構造化クエリを完成し、ユーザの最終的な要求を「完了する」ために必要な動作を実行するように構成される。いくつかの例では、それらのタスクを完了するのに必要な種々の手順がタスクフローモデル754で提供される。いくつかの例では、タスクフローモデル754は、ユーザから追加情報を取得する手順と、実行可能な意図に関連する動作を実行するためのタスクフローとを含む。
上述したように、構造化クエリを完成するために、タスクフロー処理モジュール736は、追加情報を取得するために及び/又は潜在的に曖昧な発言を明確にするために、ユーザとの更なる会話を開始する必要がある場合がある。そのような対話が必要な場合、タスクフロー処理モジュール736は、ユーザと会話するために会話フロー処理モジュール734を呼び出す。いくつかの例では、会話フロー処理モジュール734は、ユーザに追加情報を尋ねる方法(及び/又は時間)を判定でき、ユーザ応答を受信して処理する。I/O処理モジュール728を介して質問が提供され、回答がユーザから受信される。いくつかの例では、会話フロー処理モジュール734はオーディオ及び/又は視覚出力を介して会話出力をユーザに提示し、音声応答又は物理的(例えば、クリック)応答を介してユーザから入力を受信する。上記の例を続けると、タスクフロー処理モジュール736が領域「レストラン予約」に関連付けられる構造化クエリに対する「人数」及び「日付」情報を判定するために会話フロー処理モジュール734を呼び出す場合、会話フロー処理モジュール734は「人数は?」及び「日付は?」などの質問を生成してユーザに伝える。ユーザから回答を受信すると、会話フロー処理モジュール734は欠落している情報を構造化クエリにポピュレートするか、あるいは構造化クエリの欠落している情報を完成するために情報をタスクフロー処理モジュール736に渡す。
タスクフロー処理モジュール736が実行可能な意図に対する構造化クエリを完成すると、タスクフロー処理モジュール736は実行可能な意図に関連する最終タスクの実行に進む。従って、タスクフロー処理モジュール736は、構造化クエリに含まれる特定のパラメータに従ってタスクフローモデル内のステップ及び命令を実行する。例えば「レストラン予約」の実行可能な意図に対するタスクフローモデルは、レストランに連絡して特定の時刻に特定の人数で実際に予約するためのステップ及び命令を含む。例えば{レストラン予約,レストラン=ABC Cafe,日付=3/12/2012,時刻=7pm,人数=5}などの構造化クエリを使用して、タスクフロー処理モジュール736は、(1)ABC Cafeのサーバ又はOPENTABLE(登録商標)等のレストラン予約システムにログインするステップと、(2)ウェブサイトのフォームに日付、時刻及び人数の情報を入力するステップと、(3)フォームを提出するステップと、(4)ユーザのカレンダに予約のカレンダエントリを入力するステップとを実行する。
いくつかの例では、タスクフロー処理モジュール736はサービス処理モジュール738(「サービス処理モジュール」)の支援を使用して、ユーザ入力で要求されたタスクを完了するか又はユーザ入力で要求された情報の回答を提供する。例えばサービス処理モジュール738は、タスクフロー処理モジュール736の代わりに、電話を発信し、カレンダエントリを設定し、地図探索を呼び出し、ユーザ装置にインストールされた他のユーザアプリケーションを呼び出すか又はそれと対話し、第3者のサービス(例えば、レストラン予約ポータル、ソーシャルネットワーキングウェブサイト、バンキングポータルなど)を呼び出すか又はそれと対話する。いくつかの例では、各サービスにより必要とされるプロトコル及びアプリケーションプログラミングインタフェース(API)は、サービスモデル756中の各サービスモデルにより指定される。サービス処理モジュール738は、サービスモデルに従ってサービスにより必要とされるプロトコル及びAPIに従い、サービスに対する適切なサービスモデルにアクセスし、サービスに対する要求を生成する。
例えば、あるレストランがオンライン予約サービスで有効になった場合、レストランは予約を行うために必要なパラメータ及び必要なパラメータの値をオンライン予約サービスに通信するためのAPIを指定するサービスモデルを提出する。タスクフロー処理モジュール736により要求された場合、サービス処理モジュール738はサービスモデルに記憶されたウェブアドレスを使用してオンライン予約サービスとのネットワーク接続を確立し、予約の必要なパラメータ(例えば、時刻、日付、人数)をオンライン予約サービスのAPIに従うフォーマットでオンライン予約インタフェースへ送信する。
いくつかの例では、自然言語処理モジュール732、会話フロー処理モジュール734及びタスクフロー処理モジュール736は、ユーザの意図を推論して定義し、ユーザの意図を更に明確にするための情報を取得し、ユーザの意図を実行するための応答(すなわち、ユーザに対する出力又はタスクの完了)を最終的に生成するために、まとめて繰り返し使用される。生成される応答は音声入力に対する会話応答であり、これはユーザの意図を少なくとも部分的に実行する。更にいくつかの例では、生成された応答は音声出力として出力される。それらの例では、生成された応答は音声合成モジュール740(例えば、音声合成器)へ送信され、音声会話応答を合成するために処理される。更に別の例では、生成される応答は、音声入力におけるユーザ要求を満たすことに関係するデータコンテンツである。
音声合成モジュール740は、ユーザに提示するための音声出力を合成するように構成される。音声合成モジュール740は、デジタルアシスタントにより提供されたテキストに基づいて音声出力を合成する。例えば生成される会話応答は、テキスト列の形態である。音声合成モジュール740は、テキスト列を可聴音声出力に変換できる。音声合成モジュール740は、テキストから音声出力を生成するために、波形接続合成、単位選択合成、ダイフォン合成、分野限定合成、フォルマント合成、調音合成、隠れマルコフモデル(HMM)に基づく合成、正弦波合成を含むがそれらに限定されない何らかの適切な音声合成技術を使用する。いくつかの例では、音声合成モジュール740は、単語に対応する音韻列に基づいて個々の単語を合成するように構成される。例えば音韻列は、生成された会話応答内の単語と関連付けられる。音韻列は、単語に関連するメタデータに記憶される。音声合成モジュール740は、メタデータ内の音韻列を直接処理して単語を音声に合成するように構成される。
いくつかの例では、音声合成モジュール740を使用する代わりに(又はそれに加えて)、音声合成はリモート装置(例えば、サーバシステム108)で実行され、合成された音声はユーザに対して出力するためにユーザ装置へ送信される。例えばこれは、デジタルアシスタントに対する出力がサーバシステムで生成されるいくつかの実現形態で当てはまる。サーバシステムは一般にユーザ装置より多くの処理能力又はリソースを有するため、クライアント側での合成で実際に得られるより高品質の音声出力を得ることができる。
デジタルアシスタントに関する更なる詳細は、本明細書に参考として全内容が取り入れられている2011年1月10日出願の米国特許出願第12/987,982号「Intelligent Automated Assistant」及び2011年9月30日出願の米国特許出願第13/251,088号「Generating and Processing Task Items That Represent Tasks to Perform」で見られる。
次に、ゼロレイテンシデジタルアシスタントの実施形態に注目する。
3.ゼロレイテンシデジタルアシスタント
上述したように、通常、ユーザが装置に適切な入力を提供する(又は提供し始める)ことによりデジタルアシスタントセッションを要求する時点とユーザがデジタルアシスタントに音声入力を提供し始められる時点との間には何らかのレイテンシが存在する。そのようなレイテンシは100〜900ミリ秒(又は更に長い時間)であり、明らかな遅延としてユーザが知覚するのに十分な長さである。ユーザが話し始めるのが早すぎると、装置はレイテンシが経過する前に提供された口頭入力の部分を無視する(又は受信し損ねる)。そのような装置の挙動によりデジタルアシスタントの効率は低下し、ユーザは苛立つか又は混乱する。
上述したレイテンシは、デジタルアシスタントセッションを開始するために使用される回路網を起動するのに必要な時間、あるいは例えばマイク又はスピーカなどのデジタルアシスタントにより必要とされるオーディオコンポーネント又は回路網を起動するのに必要な時間などのハードウェアレイテンシを含んでもよい。
当該レイテンシは、ソフトウェアにより制御されるレイテンシを更に含んでもよい。例えばいくつかの装置は、ユーザが適切な入力を提供することによりデジタルアシスタントを起動することを要求したと十分な信頼度で判定するまで、デジタルアシスタントセッションを開始し始めない。例えばデジタルアシスタントセッションの開始を求める要求に対応するユーザ入力がボタンの長押しである場合、装置は必要なボタン押下時間全体が経過するまで待って、デジタルアシスタントソフトウェアを起動する。いくつかの実施形態では、装置は、デジタルアシスタントを開始する用意ができるまで、マイク(又は他のオーディオコンポーネント)の制御をデジタルアシスタントに移行しない。この方法により、電話発信又は口述アプリケーションなどの別のアプリケーションによるマイク又はスピーカの制御を早まって停止することを回避できる。
上述したハードウェアレイテンシ及びソフトウェアレイテンシに関連する1つの欠点は、ユーザが通常は音声入力などの要求をデジタルアシスタントに提供する前にレイテンシが経過するまで待つ必要があることである。しかし、ユーザは要求を提供するまでにどれくらい待つべきかわからない。そのため、図8Aに示すように、装置はデジタルアシスタントが要求を受信する用意ができたという可視指示又は可聴指示をユーザに提供する必要がある。
図8Aの例では、装置は、デジタルアシスタントを要求するユーザ入力(又はユーザ入力の始まり)を時間T1で検出し、レイテンシが経過後、デジタルアシスタントに口頭入力を提供するように時間T2でユーザに指示する。
装置は、ユーザがデジタルアシスタントを要求した際にレイテンシの経過を待たずに即座に口頭入力を提供し始められるのが望ましい。例えばユーザがデジタルアシスタントを要求する入力を提供し始めた時に、(1)ユーザ入力がデジタルアシスタントの起動を求める要求に対応するか否かを判定することと(2)デジタルアシスタントを実際に起動することとに関連するソフトウェアレイテンシ又はハードウェアレイテンシが完全に経過する前にデジタルアシスタントに口頭入力を即座に提供できるのが望ましい。
いくつかの実施形態では、装置は、マイクからのオーディオ入力を装置のメモリバッファに継続的に取り込んで記録するために低電力プロセッサを使用することにより本目的を達成する。デジタルアシスタントが起動されると、装置はデジタルアシスタントセッションの開始を要求するユーザ入力の前又はその間に取り込まれた音声入力を含むバッファの内容の一部又は全てをデジタルアシスタントに提供する。このように、以下に更に詳細に説明するように、装置はバッテリ寿命を必要以上に縮めることなく、ユーザが「ゼロレイテンシ」デジタルアシスタントとして知覚するものを達成できる。
図8Bに示すように、いくつかの実施形態では、装置はそのメインプロセッサ808とは別の低電力プロセッサ810を含む。低電力プロセッサは、オーディオデータをメモリバッファ812に書き込むことによりユーザの音声入力の履歴を保持するために使用される。いくつかの実施形態では、低電力プロセッサはメインプロセッサより消費電力が少なく、メインプロセッサとは異なるコンピュータ実行可能命令を実行し且つ/又はメインプロセッサより物理的に小型である。従って、低電力プロセッサは、バッテリ寿命を縮めることなくオーディオデータをメモリバッファに継続的に書き込むことができる。
いくつかの実施形態では、メインプロセッサ808は、例えばオペレーティングシステムとデジタルアシスタントを含むアプリケーションとを実行するアプリケーションプロセッサである。
いくつかの実施形態では、低電力プロセッサ810は、メインプロセッサ808が低電力モードで動作している場合でも通常モードで有効であり動作している。いくつかの例では、低電力モードで動作中に実行できる動作の数又は種類が制限される場合に、メインプロセッサは低電力モードである。いくつかの例では、プロセッサ回路網の一部が無効な状態で動作している場合に、メインプロセッサは低電力モードである。いくつかの例では、通常モードで動作している場合の値と比較して低クロック速度、低電圧又は低電流で動作している場合に、メインプロセッサは低電力モードである。いくつかの例では、メインプロセッサは、アプリケーションの起動又は実行などの特定の機能性を提供するために低電力モードを終了する必要がある。
いくつかの実施形態では、装置は自身のマイク804からオーディオ入力を継続的に取り込み、マイク804から受信したオーディオ入力を表すオーディオデータを自身のメモリバッファ812に書き込むために低電力プロセッサ810を使用する。いくつかの実施形態では、装置はオーディオ入力を取り込み、装置が何らかのオーディオ入力を検出したか否かに関係なくオーディオデータをメモリバッファ812に継続的に又は所定のサンプリング頻度で書き込む。他の実施形態では、ユーザがマイクに向かって話していることを装置が検出した場合など、装置がオーディオ入力を検出した場合のみ、装置は低電力プロセッサを使用してオーディオデータをバッファに書き込む。このように、いくつかの実施形態では、装置は低電力プロセッサを使用してマイクのオーディオ入力を監視し、そのようなオーディオ入力が検出された場合、低電力プロセッサを使用してオーディオ入力を表すオーディオデータをメモリバッファに書き込む。
いくつかの実施形態では、メモリバッファは循環バッファである。循環バッファは固定長メモリバッファであり、データが一杯になった場合、新規のデータ列がバッファの先頭から上書きされる。いくつかの実施形態では、メモリバッファは、マイクにより取り込まれる所定の長さのオーディオ入力を記憶するのに十分な容量を有する。例えばメモリバッファは、1秒、2秒又は3秒のオーディオ入力を記憶するのに十分な容量を有する。
いくつかの実施形態では、装置がマイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出した場合、装置は低電力プロセッサを使用して、ユーザ入力がデジタルアシスタントセッションの開始を求める要求に対応するか否かを判定する。ユーザ入力は、例えばボタンの押下又は例えばタッチセンシティブディスプレイへの接触であってもよい。
いくつかの実施形態では、ユーザ入力が所定の基準を満たすためデジタルアシスタントの起動を求める要求に対応すると装置が判定した場合、装置はメモリバッファの内容の少なくとも一部に基づくコンピューティングタスクの識別及び実行を即座に開始する。要求されるコンピューティングタスクは、デジタルアシスタントシステムに関して上述したように、例えば情報検索を求める要求、電話発信、テキスト送信、予約、アプリケーションの起動などの機能を実行することを装置に求める要求であってもよい。
いくつかの実施形態では、装置は、メインプロセッサでデジタルアシスタントセッションを開始してメモリバッファの内容の少なくとも一部をデジタルアシスタントに提供することにより、タスクを識別して実行する。メモリバッファは装置によるユーザ入力の検出前、検出中及び検出後に取り込まれて書き込まれたオーディオデータを含むため、バッファは、ユーザがデジタルアシスタントセッションを開始することを要求する(ユーザ入力を介して)時点とユーザがデジタルアシスタントに口頭入力を提供できる時点との間の遅延を減少するか又は除去するために使用できるオーディオ履歴を提供する。
いくつかの実施形態では、装置は、ユーザ入力が特定の所定の基準を満たすか否かを判定することにより、ユーザ入力がデジタルアシスタントの起動を求める要求に対応するか否かを判定する。いくつかの実施形態では、基準はボタン押下が最小持続時間を満たす場合に満たされる基準を含む。すなわち、デジタルアシスタントセッションの開始を求める要求として識別されるためには、ボタン押下入力は閾値持続時間より長い必要がある。ボタン押下閾値持続時間は、例えば100ミリ秒、200ミリ秒、300ミリ秒、400ミリ秒、500ミリ秒、600ミリ秒、700ミリ秒、800ミリ秒又は900ミリ秒であってもよい。
いくつかの実施形態では、ユーザ入力がデジタルアシスタントセッションの開始を求める要求に対応するか否かを判定するための基準は、タッチセンシティブディスプレイへの接触がディスプレイ上の特定の位置で検出される場合、接触が特定の種類の接触(例えば、スワイプ又はダブルタップ)である場合及び/又は特定のアイコンが選択されたと装置が検出する場合に満たされる基準を含む。
いくつかの実施形態では、装置は低電力プロセッサを使用して、オーディオデータがデジタルアシスタントセッションの開始を求める要求に対応する「トリガ語句」を含むか否かを判定するためにメモリバッファ内のオーディオデータを解析する。そのようなトリガ語句は、例えば語句「ヘイ、シリ」又は「起きて」又は別の語句、単語又は音であってもよい。
いくつかの実施形態では、デジタルアシスタントの起動を求める要求に対応するユーザ入力はトリガ語句を含む音声入力である。メモリバッファがトリガ語句を含むと装置が低電力プロセッサを使用して判定した場合、装置はメインプロセッサでデジタルアシスタントを起動する。このように、いくつかの実施形態では、基準は、メモリバッファの少なくとも一部分がトリガ語句を含む場合に満たされる基準を含む。
いくつかの実施形態では、基準は、トリガ語句が許可ユーザにより発声されたと装置が判定した場合に満たされる基準を含む。装置は、メモリバッファ内のオーディオデータの音声又は話し方の特徴と許可ユーザの既知の特徴のセットとを比較することにより、トリガ語句が許可ユーザにより話されたか否かを判定してもよい。そのような特徴は、特徴的なスペクトルパターン、音声パターン、抑揚などを含んでもよい。
いくつかの実施形態では、ユーザ入力が所定の基準を満たしたと装置が判定した(低電力プロセッサを使用して)時にメインプロセッサが低電力モードで動作している場合、装置はメインプロセッサに低電力モードを終了させ、デジタルアシスタントセッションを開始させる。いくつかの実施形態では、装置は、デジタルアシスタントへの後続の音声入力の受信及び応答に備えて装置のオーディオ回路網を起動する。そのようなオーディ回路網は、例えばユーザからオーディオ入力を受信するため又はユーザにオーディオ出力を提供するためにデジタルアシスタントにより使用されてもよい追加のマイク又はオーディオ出力ハードウェア(スピーカなど)を含んでもよい。いくつかの実施形態では、デジタルアシスタントセッションを開始することは、そのようなオーディオ回路網の制御をデジタルアシスタントセッションに移行することを含む。
いくつかの実施形態では、デジタルアシスタントセッションを開始することは、タッチ画面104などの装置のディスプレイ上にデジタルアシスタントセッションに関連するユーザインタフェースを表示することを含む。ユーザインタフェースは、例えばデジタルアシスタントセッションに関連する1つ以上のアフォーダンス、波形又はテキスト出力を含む。図8Aは、デジタルアシスタントセッションに関連するユーザインタフェース802の一例を示す。
いくつかの実施形態では、デジタルアシスタントに関連するユーザインタフェースは、図8Aに示すように全画面ビューで表示される。いくつかの実施形態では、装置がメインプロセッサでデジタルアシスタントセッションを開始する場合、装置は別のアプリケーションビューの表示をデジタルアシスタントに関連するユーザインタフェースの表示に置換する。
図8Cは、いくつかの実施形態に従って実現されるゼロレイテンシデジタルアシスタントの概念の一例を示す。本例では、ユーザはデジタルアシスタントに口頭入力を提供するために、デジタルアシスタントを呼び出した後に待つ必要がない。実際、本例では、ユーザはデジタルアシスタントを呼び出す「前に」口頭入力の提供を開始する。すなわち、ユーザは、要求を既に話している間にデジタルアシスタントの起動を求める要求に対応するボタンを押下する。その後、以下に説明するように、装置は口頭入力を使用して、要求されたタスクを識別して実行する。
図8Cに示すように、時間T1において、装置200がオーディオ入力を取り込んでメモリバッファ(本例では、循環バッファ816)に書き込んでいる間に、装置はユーザ入力(本例では、ボタン押下)を検出する。尚、時間T1において、装置がボタン押下を検出する時、ユーザは音声入力「チューリッヒの時刻は?」を既に提供し始めており、当該語句の一部分は巡回バッファ816に既に書き込まれている。装置200は、ユーザ入力がデジタルアシスタントの起動を求める要求に対応する所定の基準を満たす(例えば、ボタン押下が閾値持続時間を満たす)と判定し、メインプロセッサを使用して、巡回バッファ816の内容の一部分814に基づいてタスクを識別して実行する。バッファの一部分814はクエリ「チューリッヒの時刻は?」を含み、装置はチューリッヒの現在時刻を判定するタスクを識別して実行する。装置は、テキスト「チューリッヒの時刻は9:41AMです」を表示することにより、タスクの結果をディスプレイ上でユーザに提供する。いくつかの実施形態では、装置はタスクの結果をユーザに提示するためにオーディオ出力を更に提供する。
図8Cに示す例では、装置は、タスクを識別及び実行するためにユーザからの追加入力を必要とせず、図8Aに示したようにユーザに入力を指示しない。
図8Dは、いくつかの実施形態に従って実現されるゼロレイテンシデジタルアシスタントの概念の一例を示す。本例は図8Cに示す例に類似するが、本例では、ユーザ入力は所定の基準を満たさず、従って、デジタルアシスタントの起動を求める要求として解釈されない。例えば、ボタンが閾値持続時間を満たすのに十分な長さで押下されない。この場合、装置は音声要求を取り込んでメモリバッファに書き込んでいるが、メモリバッファの内容に基づくタスクの識別及び実行を開始せず、デジタルアシスタントセッションを開始しない。バッファの内容は、後で新規のオーディオデータに上書きされる。
図8Eは、いくつかの実施形態に従って実現されるゼロレイテンシデジタルアシスタントの概念の一例を示す。本例では、装置はメモリバッファが所定のトリガ語句を含むと判定し、それに応答して、装置はメモリバッファの内容に基づいてタスクを即座に識別して実行する。
図8Eに示す例では、時間T1において、メインプロセッサが低電力モードであり且つ装置200が低電力プロセッサを使用してオーディオ入力を取り込んで循環バッファ816に書き込んでいる間に、装置はメモリバッファの第1の部分818がデジタルアシスタントの起動を求める要求に関連するトリガ語句を含むと判定する(低電力プロセッサを使用して)。当該判定に応答して、装置はメインプロセッサに低電力モードを終了させ、循環バッファ816の内容の第2の部分820に基づいてタスクを識別して実行させる。このように、本例では、ユーザはデジタルアシスタントに関連するトリガ語句を発声し、デジタルアシスタントに対する要求を即座に話し始める。装置は、メモリバッファの内容の一部分に基づいてタスクを識別して実行し、タスクの結果をユーザに提供する。本例では、装置は、タスクを識別及び実行するためにユーザからの追加入力を必要とせず、図8Aに示したようにユーザに入力を指示しない。
図1に関して説明したように、デジタルアシスタントシステムは、例えば自然言語処理をリモートに実行してタスクを識別するために使用可能なリモートサーバシステム108を含んでもよい。いくつかの実施形態では、装置はデジタルアシスタントに関連付けられたリモートサーバにメモリバッファの内容の一部又は全てを提供する。装置は、例えば有線又は無線ネットワーク接続を介してサーバにメモリバッファの内容を提供する。
いくつかの実施形態では、装置は複数のマイクを含む。その場合、装置は、低電力プロセッサを使用してオーディオ入力を取り込んでメモリバッファに書き込むために1つのマイクを使用してもよく、電話発信又はデジタルアシスタントなどのメインプロセッサで実行されるアプリケーション又は機能により使用されるオーディオを取り込むために第2のマイクを使用してもよい。このように、いくつかの実施形態では、装置は、第1のマイクを使用してオーディオ入力を取り込んでメモリバッファに書き込むのと同時に、第2のマイクを使用して電話発信などの別のオーディオ使用アプリケーションを実行できる。
いくつかの実施形態では、ユーザ入力が所定の基準を満たしたためユーザがデジタルアシスタントセッションを要求したと装置が判定した場合、装置はデジタルアシスタントにメモリバッファの内容の一部又は全てを提供し、第2のマイクの制御をデジタルアシスタントに移行し(当該制御が別のアプリケーションに割り当てられる場合)、第2のマイクにより検出される後続のオーディオをデジタルアシスタントにストリーミング(例えば、継続的に提供)し始める。
図9は、種々の例に係るゼロレイテンシデジタルアシスタントを実現する方法900を示す。方法900は、デジタルアシスタントを実現する1つ以上の電子装置を使用して実行可能である。方法900のいくつかの動作は組み合わされてもよく、いくつかの動作の順序は変更されてもよく、いくつかの動作は省略されてもよい。いくつかの例では、方法900はデジタルアシスタントを実現するクライアントサーバシステム(例えば、システム100)を使用して実行可能である。方法900の個々のブロックは、何らかの適切な方法で1つ以上のコンピュータ、システム又は電子装置に分散されてもよい。例えばいくつかの例では、電子装置(例えば、装置104、200、400又は600)で方法900を完全に実行できる。本明細書中でいずれか1つの特定の電子装置(104、200、400又は600)を参照する場合、それらの電子装置(104、200、400又は600)の1つ以上が文脈上で明らかに除外されない限り、電子装置(104、200、400又は600)の全てを含むと理解されるべきである。例えば複数の例で使用される電子装置(104、200、400又は600)はスマートフォンである。しかし、方法900はスマートフォンでの使用に限定されず、タブレット、デスクトップコンピュータ、ラップトップ又はスマートウォッチなどの他の何らかの適切な電子装置で実現されてもよい。計算能力が高くバッテリ寿命が長い電子装置は、方法900のより多くのブロックを実行してもよい。方法900のブロックの分散は固定される必要がなく、ネットワーク接続帯域幅、ネットワーク接続品質、サーバ負荷、電子装置(例えば、104、200、400、600)の計算能力及びバッテリ電力の使用可能量、並びに/又は他の要素に依存して変化してもよい。更に、以下の説明はデジタルアシスタントシステム(例えば、システム100及び/又はデジタルアシスタントシステム700)により実行されるものとして方法900を説明するが、方法又は方法の何らかの特定の部分は何らかの特定の装置、装置の組み合わせ又は実現形態による実行に限定されないことが認識されるべきである。方法の説明は、図8B〜図8D及びそれらの図に関連する上記説明により更に図示され且つ例示される。
以下に説明するように、方法900は直観的な「ゼロレイテンシ」デジタルアシスタントを実現する方法を提供する。方法は、デジタルアシスタントを呼び出して要求を提供するためにユーザにかかる認知負担を軽減することにより、更に効率的なヒューマンマシンインタフェースを作成する。バッテリ式コンピューティングデバイスの場合、ユーザがデジタルアシスタントに音声入力を即座に提供し始められるようにすることでレイテンシが短縮し且つ誤り(タイミングが不適切な音声入力に起因する)が減少し、それにより節電され、バッテリ充電間隔が延びる。
方法900のブロック902において、電子装置(例えば、104、200、400、600)はマイク(例えば、マイク213)からオーディオ入力を取り込む。オーディオ入力は、音声によるユーザ要求などのユーザの音声を含む。
ブロック904において、装置は第1のプロセッサ(例えば、低電力プロセッサ810)を使用して、取り込んだオーディオ入力を表すデータをメモリバッファ(例えば、メモリバッファ812)に書き込む。メモリバッファは、例えば図8Cに示すような循環バッファであってもよい。
ブロック906において、装置はマイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出する。ユーザ入力は、例えば図8Cに示すようなボタン押下であってもよく、タッチ画面(例えば、タッチ画面212)への接触であってもよく、あるいはマイクにより取り込まれた口頭入力であってもよい。
ブロック908において、装置はブロック906で検出されたユーザ入力が所定の基準を満たすか否かを判定する。所定の基準は、例えばボタン押下の最低持続時間、タッチ画面への接触の種類(例えば、タップ又はスワイプ)又はメモリバッファに特定のトリガ語句が存在することを含んでもよい。
ブロック910において、ユーザ入力が所定の基準を満たすという判定に従って、装置は第2のプロセッサ(例えば、図8Bに示すメインプロセッサ808)を使用して、メモリバッファの少なくとも一部分に基づいてコンピューティングタスクを識別して実行する。いくつかの実施形態では、装置は第2のプロセッサを使用して、ブロック906での装置によるユーザ入力の検出前、検出中及び/又は検出後に書き込まれたバッファの一部分に基づいてタスクを識別して実行する。
ブロック912において、ユーザ入力が所定の基準を満たさないという判定に従って、装置は図8Dに示すようにタスクを識別することを見送る。
図10は、種々の例に係るゼロレイテンシデジタルアシスタントを実現する方法1000を示す。方法1000は、デジタルアシスタントを実現する1つ以上の電子装置を使用して実行可能である。方法1000のいくつかの動作は組み合わされてもよく、いくつかの動作の順序は変更されてもよく、いくつかの動作は省略されてもよい。いくつかの例では、方法1000はデジタルアシスタントを実現するクライアントサーバシステム(例えば、システム100)を使用して実行可能である。方法1000の個々のブロックは、何らかの適切な方法で1つ以上のコンピュータ、システム又は電子装置に分散されてもよい。例えばいくつかの例では、電子装置(例えば、装置104、200、400又は600)で方法1000を完全に実行できる。本明細書中でいずれか1つの特定の電子装置(104、200、400又は600)を参照する場合、それらの電子装置(104、200、400又は600)の1つ以上が文脈上で明らかに除外されない限り、電子装置(104、200、400又は600)の全てを含むと理解されるべきである。例えば複数の例で使用される電子装置(104、200、400又は600)はスマートフォンである。しかし、方法1000はスマートフォンでの使用に限定されず、タブレット、デスクトップコンピュータ、ラップトップ又はスマートウォッチなどの他の何らかの適切な電子装置で実現されてもよい。計算能力が高くバッテリ寿命が長い電子装置は、方法1000のより多くのブロックを実行してもよい。方法1000のブロックの分散は固定される必要がなく、ネットワーク接続帯域幅、ネットワーク接続品質、サーバ負荷、電子装置(例えば、104、200、400、600)の計算能力及びバッテリ電力の使用可能量、並びに/又は他の要素に依存して変化してもよい。更に、以下の説明はデジタルアシスタントシステム(例えば、システム100及び/又はデジタルアシスタントシステム700)により実行されるものとして方法1000を説明するが、方法又は方法の何らかの特定の部分は何らかの特定の装置、装置の組み合わせ又は実現形態による実行に限定されないことが認識されるべきである。方法1000の説明は、図8B及び図8E及びそれらの図に関連する上記説明により更に図示され且つ例示される。
以下に説明するように、方法1000はゼロレイテンシデジタルアシスタントを実現する直観的な方法を提供する。方法は、デジタルアシスタントを呼び出して音声による要求を提供するためにユーザにかかる認知負担を軽減することにより、更に効率的なヒューマンマシンインタフェースを作成する。バッテリ式コンピューティングデバイスの場合、ユーザがデジタルアシスタントに音声入力を即座に提供し始められるようにすることでレイテンシが短縮し且つ誤り(不適切に時間のかかる音声入力による)が減少し、それにより節電され且つバッテリ充電間隔が長くなる。
方法1000において、電子装置(例えば、装置104、200、400、600)の第2のプロセッサ(例えば、メインプロセッサ808)が低電力モードの間、装置はブロック1002、1004及び1006を実行する。
ブロック1002において、電子装置はマイク(例えば、マイク213)からオーディオ入力を継続的に取り込む。オーディオ入力は、音声によるユーザ要求などのユーザの音声を含む。ブロック1004において、装置は第1のプロセッサ(例えば、低電力プロセッサ810)を使用して、取り込んだオーディオ入力を表すデータをメモリバッファ(例えば、メモリバッファ812)に継続的に書き込む。メモリバッファは、例えば図8Eに示すような循環バッファであってもよい。ブロック1006において、装置は第1のプロセッサを使用して、メモリバッファの内容の少なくとも第1の部分が所定の基準を満たすか否かを判定する。基準は、メモリバッファの内容の少なくとも第1の部分が例えば図8Eに示すように所定のトリガ語句を含む場合に満たされる基準を含んでもよい。
ブロック1008において、バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、装置は第2のプロセッサに低電力モードを終了させる。
ブロック1008で第2のプロセッサに低電力モードを終了させた後、ブロック1010において、装置は第2のプロセッサを使用して、メモリバッファの少なくとも第2の部分に基づいてコンピューティングタスクを識別する。いくつかの実施形態において、第2の部分は、第1の部分の後に書き込まれたメモリバッファの一部分であってもよい(例えば、トリガ語句の後に発声された音声による要求)。いくつかの実施形態において、第2の部分は、第1の部分を含む部分であってもよく、第1の部分の前に書き込まれた部分であってもよい。いくつかの実施形態では、第2の部分はメモリバッファ全体である。
ブロック1012において、装置は第2のプロセッサを使用して、ブロック1010で識別されたコンピューティングタスクを実行する。第2のプロセッサは、図1に関して説明したようにコンピューティングタスクを実行してもよい。
ブロック1014において、バッファの少なくとも第1の部分が所定の基準を満たさないという判定に従って、装置は第2のプロセッサに低電力モードを終了させることを見送る。
いくつかの実施形態に従って、図11は、説明された種々の実施形態の原理に従って構成された電子装置1100の機能ブロック図の一例を示す。いくつかの実施形態に従って、電子装置1100の機能ブロックは上述した技術を実行するように構成される。装置1100の機能ブロックは、説明された種々の例の原理を実行するようにハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組み合わせにより任意に実現される。図11で説明される機能ブロックは、説明された種々の例の原理を実現するようにサブブロックに任意に組み合わされるか又は分離されることが当業者には理解される。従って、本明細書中の説明は、本明細書中で説明される機能ブロックのあらゆる可能な組み合わせ、分離又は更なる定義に任意に対応する。
図11に示すように、電子装置1100は、オーディオ入力を取り込むように構成されたマイク部1102と、マイク部により取り込まれたオーディオ入力を表すオーディオデータが書き込まれるように構成されたメモリバッファ部1104とを含み、ユーザインタフェースを表示するように構成された表示部1106と、オーディオコンテンツを受信又は出力するように構成されたオーディオコンポーネント部1108とを任意に含む。装置1100は、マイク部1102、メモリバッファ部1104及び任意に表示部1106に結合された処理部1110を含む。処理部1110は、少なくとも2つのプロセッサ(例えば、低電力プロセッサ810及びメインプロセッサ808)を含む。
処理部は、マイク部1102からオーディオ入力を取り込み(例えば、取り込み部1112を用いて)、第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファ部1104に書き込み(例えば、書込み部1114を用いて)、マイク部を使用してオーディオ入力を取り込んでいる間にユーザ入力を検出し(例えば、検出部1116を用いて)、第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定する(例えば、判定部1118を用いて)ように構成される。処理部は、ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別し(例えば、識別部1120を用いて)、ユーザ入力が基準を満たさなかったという判定に従って、コンピューティングタスクを識別することを見送るように更に構成される。
いくつかの実施形態では、メモリバッファの内容の少なくとも一部分は、ユーザ入力が検出される前にバッファに書き込まれたデータを含む。
いくつかの実施形態では、メモリバッファの内容の少なくとも一部分は、ユーザ入力の検出中にバッファに書き込まれたデータを含む。
いくつかの実施形態では、処理部は、ユーザ入力が基準を満たしたという判定に従って、識別されたコンピューティングタスクを実行する(例えば、実行部1122を用いて)ように更に構成される。
いくつかの実施形態では、コンピューティングタスクを識別することは、第2のプロセッサでデジタルアシスタントセッションを開始することを含む。
いくつかの実施形態では、デジタルアシスタントがコンピューティングタスクを識別して実行する。
いくつかの実施形態では、デジタルアシスタントセッションを開始することは、デジタルアシスタントセッションに関連するユーザインタフェースを表示部1106に表示することを含む。
いくつかの実施形態では、デジタルアシスタントに関連するユーザインタフェースは全画面ビューで表示される。
いくつかの実施形態では、デジタルアシスタントを起動することは、装置の(例えば、オーディオコンポーネント部1108の)1つ以上のオーディオコンポーネントを起動する(例えば、起動部1124を用いて)ことを含む。
いくつかの実施形態では、メモリバッファの少なくとも一部分は、デジタルアシスタントに関連付けられたリモートサーバに提供される。
いくつかの実施形態では、処理部は、ユーザ入力が基準を満たしたという判定に従って、装置の(例えば、マイク部1102の)第2のマイクを起動し(例えば、起動部1124を用いて)、第2のマイクにより検出されたオーディオをデジタルアシスタントにストリーミングする(例えば、ストリーミング部1126を用いて)ように更に構成される。
いくつかの実施形態では、ユーザ入力はボタン押下である。
いくつかの実施形態では、基準は、ボタン押下が所定の閾値持続時間を上回る場合に満たされる基準を含む。
いくつかの実施形態では、ユーザ入力は、マイクにより取り込まれてバッファに書き込まれるオーディオデータである。
いくつかの実施形態では、基準は、バッファの少なくとも第2の部分が所定のトリガを表すオーディオデータを含むと装置が判定する場合に満たされる基準を含む。
いくつかの実施形態では、基準は、オーディオデータが許可ユーザに対応すると装置が判定する場合に満たされる基準を含む。
いくつかの実施形態では、オーディオ入力は第2のプロセッサが低電力モードの間に取り込まれ、処理部は、ユーザ入力が基準を満たしたという判定に更に従って、第2のプロセッサに低電力モードを終了させる(例えば、起因部(causing unit)1128を用いて)ように更に構成される。
図9を参照して上述した動作は、図2A及び図2B又は図11に示した構成要素により任意に実現される。例えば取り込み動作902、書き込み動作904、検出動作906及び判定動作908は、周辺機器インタフェース218、メモリ202、イベントソータ270、イベント認識器280及びイベントハンドラ290により任意に実現される。周辺機器インタフェース218は、メモリ202のメモリバッファに書き込むためにオーディオ入力を取り込むことができる。イベントソータ270内のイベントモニタ271はユーザ入力を検出し、イベントディスパッチャモジュール274はイベント情報をアプリケーション236−1に出力する。アプリケーション236−1の各イベント認識器280は、イベント情報と各自のイベント定義286とを比較し、ユーザ入力がデジタルアシスタントの起動を求める要求などの事前定義済みのイベント又はサブイベントに対応する所定の基準を満たすか否かを判定する。各自の事前定義済みのイベント又はサブイベントが検出された場合、イベント認識器280はイベント又はサブイベントの検出に関連付けられたイベントハンドラ290を起動する。イベントハンドラ290は、アプリケーション内部状態292を更新するために、データ更新器276又はオブジェクト更新器277を任意に使用するか又は呼び出す。いくつかの実施形態では、イベントハンドラ290は各自のGUI更新器278にアクセスして、アプリケーションにより表示されるGUIを更新する。同様に、他の処理が図2A及び図2Bに示す構成要素に基づいて実現される方法は当業者には明らかだろう。
いくつかの実施形態に従って、図12は、説明された種々の実施形態の原理に従って構成された電子装置1200の機能ブロック図の一例を示す。いくつかの実施形態に従って、電子装置1200の機能ブロックは上述した技術を実行するように構成される。装置1200の機能ブロックは、説明された種々の例の原理を実行するようにハードウェア、ソフトウェア又はハードウェアとソフトウェアとの組み合わせにより任意に実現される。図12で説明される機能ブロックは、説明された種々の例の原理を実現するようにサブブロックに任意に組み合わされるか又は分離されることが当業者には理解される。従って、本明細書中の説明は、本明細書中で説明される機能ブロックのあらゆる可能な組み合わせ、分離又は更なる定義に任意に対応する。
図12に示すように、電子装置1200は、オーディオ入力を取り込むように構成されたマイク部1202と、マイク部により取り込まれたオーディオ入力を表すオーディオデータが書き込まれるように構成されたメモリバッファ部1204とを含み、ユーザインタフェースを表示するように構成された表示部1206と、オーディオコンテンツを受信又は出力するように構成されたオーディオコンポーネント部1208とを任意に含む。装置1200は、マイク部1202、メモリバッファ部1204及び任意に表示部1206及びオーディオコンポーネント部1208に結合された処理部1210を含む。処理部1210は、少なくとも2つのプロセッサ(例えば、低電力プロセッサ810及びメインプロセッサ808)を含む。
処理部は、第2のプロセッサが低電力モードの間に、マイク部1202からオーディオ入力を取り込み(例えば、取り込み部1212を用いて)、第1のプロセッサを使用して、継続的に取り込んだオーディオ入力を表すデータをメモリバッファ部1204に継続的に書き込み(例えば、書込み部1214を用いて)、メモリバッファ部の少なくとも第1の部分が所定の基準を満たすか否かを判定し(例えば、判定部1216を用いて)、メモリバッファ部の少なくとも第1の部分が所定の基準を満たすという判定に従って、第2のプロセッサに低電力モードを終了させ(例えば、起因部(causing unit)1228を用いて)、第2のプロセッサを使用して、メモリバッファ部の内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別し(例えば、識別部1218を用いて)、第2のプロセッサを使用して、識別されたタスクを実行する(例えば、実行部1224を使用して)ように構成される。処理部は、メモリバッファ部の少なくとも第1の部分が基準を満たさないという判定に従って、第2のプロセッサに低電力モードを終了させることを見送るように更に構成される。
いくつかの実施形態では、第2のプロセッサは、ユーザからの追加入力を必要とせずに、識別されたタスクを即座に実行する。
いくつかの実施形態では、基準は、メモリバッファの少なくとも第1の部分が所定のトリガを表すオーディオデータを含むと装置が判定する場合に満たされる基準を含む。
いくつかの実施形態では、コンピューティングタスクを識別することは、第2のプロセッサでデジタルアシスタントセッションを開始することを含む。
いくつかの実施形態では、デジタルアシスタントがタスクを識別して実行する。
いくつかの実施形態では、デジタルアシスタントセッションを開始することは、デジタルアシスタントセッションに関連するユーザインタフェースを表示することを含む。
いくつかの実施形態では、デジタルアシスタントに関連するユーザインタフェースは全画面ビューで表示される。
いくつかの実施形態では、デジタルアシスタントを起動することは、装置の1つ以上のオーディオコンポーネントを起動することを含む。
いくつかの実施形態では、バッファの少なくとも一部分は、デジタルアシスタントに関連付けられたリモートサーバに提供される。
いくつかの実施形態では、処理部は、ユーザ入力が基準を満たしたという判定に更に従って、装置のマイク部(1202)の第2のマイクを起動し(例えば、起動部1226を用いて)、第2のマイクにより検出されたオーディオをデジタルアシスタントにストリーミングするように更に構成される。
いくつかの実施形態では、基準は、オーディオデータが許可ユーザに対応すると装置が判定する場合に満たされる基準を含む。
図10を参照して上述した動作は、図2A及び図2B又は図12に示した構成要素により任意に実現される。例えば取り込み動作1002、書き込み動作1004及び判定動作1006は、周辺機器インタフェース218、メモリ202、イベントソータ270、イベント認識器280及びイベントハンドラ290により任意に実現される。周辺機器インタフェース218は、メモリ202のメモリバッファに書き込むためにオーディオ入力を取り込むことができる。アプリケーション236−1の各イベント認識器280は、メモリバッファ内の内容などのイベント情報と各自のイベント定義286とを比較し、メモリバッファの一部分がデジタルアシスタントの起動を求める要求などの事前定義済みのイベント又はサブイベントに対応する所定の基準を満たすか否かを判定する。各自の事前定義済みのイベント又はサブイベントが検出された場合、イベント認識器280はイベント又はサブイベントの検出に関連付けられたイベントハンドラ290を起動する。イベントハンドラ290は、アプリケーション内部状態292を更新するために、データ更新器276又はオブジェクト更新器277を任意に使用するか又は呼び出す。いくつかの実施形態では、イベントハンドラ290は各自のGUI更新器278にアクセスして、アプリケーションにより表示されるGUIを更新する。同様に、他の処理が図2A及び図2Bに示す構成要素に基づいて実現される方法は当業者には明らかだろう。
方法、非一時的コンピュータ可読媒体、システム及び電子装置の例を以下の項目に記載する。
1.マイク、第1のプロセッサ及び第2のプロセッサを含む電子装置において、
マイクからオーディオ入力を取り込むことと、
第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込むことと、
マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出することと、
第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定することと、
ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別することと、
ユーザ入力が基準を満たさなかったという判定に従って、タスクを識別することを見送ることと、
を有する方法。
2.メモリバッファの内容の少なくとも一部分は、ユーザ入力が検出される前にバッファに書き込まれたデータを含む項目1記載の方法。
3.メモリバッファの内容の少なくとも一部分は、ユーザ入力の検出中にバッファに書き込まれたデータを含む項目1及び2のいずれか1つに記載の方法。
4.ユーザ入力が基準を満たしたという判定に更に従って、識別されたコンピューティングタスクを実行することを更に備える項目1から3のいずれか1つに記載の方法。
5.コンピューティングタスクを識別することは、第2のプロセッサでデジタルアシスタントセッションを開始することを含む項目1から4のいずれか1つに記載の方法。
6.デジタルアシスタントがコンピューティングタスクを識別して実行する項目5記載の方法。
7.デジタルアシスタントセッションを開始することは、デジタルアシスタントセッションに関連するユーザインタフェースを表示することを含む項目5及び6のいずれか1つに記載の方法。
8.デジタルアシスタントに関連するユーザインタフェースは全画面ビューで表示される項目7記載の方法。
9.デジタルアシスタントセッションを開始することは、装置の1つ以上のオーディオコンポーネントを起動することを含む項目5から8のいずれか1つに記載の方法。
10.メモリバッファの内容の少なくとも一部分は、デジタルアシスタントに関連付けられたリモートサーバに提供される項目5から9のいずれか1つに記載の方法。
11.ユーザ入力が基準を満たしたという判定に更に従って、
装置の第2のマイクを起動することと、
第2のマイクにより検出されたオーディオをデジタルアシスタントにストリーミングすることと、
を更に備える項目1から10のいずれか1つに記載の方法。
12.ユーザ入力はボタン押下である項目1から11のいずれか1つに記載の方法。
13.基準は、ボタン押下が所定の閾値持続時間を上回る場合に満たされる基準を含む項目12記載の方法。
14.ユーザ入力は、マイクにより取り込まれてバッファに書き込まれるオーディオデータである項目1から11のいずれか1つに記載の方法。
15.基準は、メモリバッファの少なくとも第2の部分が所定のトリガを表すオーディオデータを含むと装置が判定する場合に満たされる基準を含む項目14記載の方法。
16.基準は、オーディオデータが許可ユーザに対応すると装置が判定する場合に満たされる基準を含む項目14及び15のいずれか1つに記載の方法。
17.オーディオ入力は第2のプロセッサが低電力モードの間に取り込まれ、
ユーザ入力が基準を満たしたという判定に更に従って、第2のプロセッサに低電力モードを終了させることを更に備える項目1から16のいずれか1つに記載の方法。
18.マイクを有する電子装置の第1のプロセッサ及び第2のプロセッサにより実行される場合に、装置に、
マイクからオーディオ入力を取り込ませる命令と、
第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込ませる命令と、
マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出させる命令と、
第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定させる命令と、
ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別させる命令と、
ユーザ入力が基準を満たさなかったという判定に従って、タスクを識別することを見送らせる命令と、
を備える1つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体。
19.マイクと、
2つ以上のプロセッサと、
メモリと、
1つ以上のプログラムとを備え、1つ以上のプログラムはメモリに記憶され、2つ以上のプロセッサにより実行されるように構成され、1つ以上のプログラムは、
マイクからオーディオ入力を取り込むための命令と、
第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込むための命令と、
マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出するための命令と、
第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定するための命令と、
ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別するための命令と、
ユーザ入力が基準を満たさなかったという判定に従って、タスクを識別することを見送るための命令と、
を含む電子装置。
20.マイクと、
第1のプロセッサと、
第2のプロセッサと、
マイクからオーディオ入力を取り込む手段と、
第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込む手段と、
マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出する手段と、
第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定する手段と、
ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別する手段と、
ユーザ入力が基準を満たさなかったという判定に従って、タスクを識別することを見送る手段と、
を備える電子装置。
21.マイクと、
少なくとも2つのプロセッサと、
メモリと、
1つ以上のプログラムとを備え、1つ以上のプログラムはメモリに記憶され、少なくとも2つのプロセッサにより実行されるように構成され、1つ以上のプログラムは、項目1から17のいずれか1つに記載の方法を実行するための命令を含む電子装置。
22.マイク及び少なくとも2つのプロセッサを有する電子装置により実行される場合に、項目1から17のいずれか1つに記載の方法を装置に実行させる命令を備える1つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体。
23.マイクと、
少なくとも2つのプロセッサと、
項目1から17のいずれか1つに記載の方法を実行する手段と、
を備える電子装置。
24.マイク部と、
メモリバッファ部と、
マイク部及びメモリバッファ部に結合された処理部であり、第1のプロセッサ及び第2のプロセッサを備え、
マイクからオーディオ入力を取り込み、
第1のプロセッサを使用して、取り込んだオーディオ入力を表すデータをメモリバッファに書き込み、
マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出し、
第1のプロセッサを使用して、ユーザ入力が所定の基準を満たしたか否かを判定し、
ユーザ入力が基準を満たしたという判定に従って、第2のプロセッサを使用して、メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別し、
ユーザ入力が基準を満たさなかったという判定に従って、タスクを識別することを見送るように構成された処理部と、
を備える電子装置。
25.メモリバッファの内容の少なくとも一部分は、ユーザ入力が検出される前にバッファに書き込まれたデータを含む項目24記載の電子装置。
26.メモリバッファの内容の少なくとも一部分は、ユーザ入力の検出中にバッファに書き込まれたデータを含む項目24及び25のいずれか1つに記載の電子装置。
27.処理部は、ユーザ入力が基準を満たしたという判定に更に従って、識別されたコンピューティングタスクを実行するように更に構成される項目24から26のいずれか1つに記載の電子装置。
28.コンピューティングタスクを識別することは、第2のプロセッサでデジタルアシスタントセッションを開始することを含む項目24から27のいずれか1つに記載の電子装置。
29.デジタルアシスタントがコンピューティングタスクを識別して実行する項目28記載の電子装置。
30.デジタルアシスタントセッションを開始することは、デジタルアシスタントセッションに関連するユーザインタフェースを表示することを含む項目28及び29のいずれか1つに記載の電子装置。
31.デジタルアシスタントに関連するユーザインタフェースは全画面ビューで表示される項目30記載の電子装置。
32.デジタルアシスタントを起動することは、装置の1つ以上のオーディオコンポーネントを起動することを含む項目28から31のいずれか1つに記載の電子装置。
33.メモリバッファの少なくとも一部分は、デジタルアシスタントに関連付けられたリモートサーバに提供される項目28から32のいずれか1つに記載の電子装置。
34.処理部は、
ユーザ入力が基準を満たしたという判定に更に従って、
装置の第2のマイクを起動し、
第2のマイクにより検出されたオーディオをデジタルアシスタントにストリーミングするように更に構成される項目28から33のいずれか1つに記載の電子装置。
35.ユーザ入力はボタン押下である項目24から34のいずれか1つに記載の電子装置。
36.基準は、ボタン押下が所定の閾値持続時間を上回る場合に満たされる基準を含む項目35記載の電子装置。
37.ユーザ入力は、マイクにより取り込まれてバッファに書き込まれるオーディオデータである項目24から34のいずれか1つに記載の電子装置。
38.基準は、バッファの少なくとも第2の部分が所定のトリガを表すオーディオデータを含むと装置が判定する場合に満たされる基準を含む項目37記載の電子装置。
39.基準は、オーディオデータが許可ユーザに対応すると装置が判定する場合に満たされる基準を含む項目37及び38のいずれか1つに記載の電子装置。
40.オーディオ入力は第2のプロセッサが低電力モードの間に取り込まれ、処理部は、
ユーザ入力が基準を満たしたという判定に更に従って、第2のプロセッサに低電力モードを終了させるように更に構成される項目24から39のいずれか1つに記載の電子装置。
41.マイク、第1のプロセッサ及び第2のプロセッサを含む電子装置において、
第2のプロセッサが低電力モードの間に、
マイクからオーディオ入力を取り込むことと、
第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込むことと、
第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定することと、
バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、
第2のプロセッサに低電力モードを終了させることと、
第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別することと、
第2のプロセッサを使用して、識別されたタスクを実行することと、
バッファの少なくとも第1の部分が基準を満たさないという判定に従って、第2のプロセッサに低電力モードを終了させることを見送ることと、
を備える方法。
42.第2のプロセッサは、ユーザからの追加入力を必要とせずに、識別されたコンピューティングタスクを即座に実行する項目41記載の方法。
43.基準は、メモリバッファの少なくとも第1の部分が所定のトリガを表すオーディオデータを含むと装置が判定する場合に満たされる基準を含む項目41及び42のいずれか1つに記載の方法。
44.コンピューティングタスクを識別することは、第2のプロセッサでデジタルアシスタントセッションを開始することを含む項目41から43のいずれか1つに記載の方法。
45.デジタルアシスタントがコンピューティングタスクを識別して実行する項目44記載の方法。
46.デジタルアシスタントセッションを開始することは、デジタルアシスタントセッションに関連するユーザインタフェースを表示することを含む項44及び45のいずれか1つに記載の方法。
47.デジタルアシスタントに関連するユーザインタフェースは全画面ビューで表示される項目46記載の方法。
48.デジタルアシスタントを起動することは、装置の1つ以上のオーディオコンポーネントを起動することを含む項目46及び47のいずれか1つに記載の方法。
49.バッファの少なくとも第2の部分は、デジタルアシスタントに関連付けられたリモートサーバに提供される項44から48のいずれか1つに記載の方法。
50.ユーザ入力が基準を満たしたという判定に更に従って、
装置の第2のマイクを起動することと、
第2のマイクにより検出されたオーディオをデジタルアシスタントにストリーミングすることと、
を更に備える項目44から49のいずれか1つに記載の方法。
51.基準は、オーディオデータが許可ユーザに対応すると装置が判定する場合に満たされる基準を含む項目41から50のいずれか1つに記載の方法。
52.マイクを有する電子装置の第1のプロセッサ及び第2のプロセッサにより実行される場合に、装置に、
第2のプロセッサが低電力モードの間に、
マイクからオーディオ入力を取り込ませる命令と、
第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込ませる命令と、
第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定させる命令と、
バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、
第2のプロセッサに低電力モードを終了させる命令と、
第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別させる命令と、
第2のプロセッサを使用して、識別されたタスクを実行させる命令と、
バッファの少なくとも第1の部分が基準を満たさないという判定に従って、第2のプロセッサに低電力モードを終了させることを見送らせる命令と、
を備える1つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体。
53.マイクと、
2つ以上のプロセッサと、
メモリと、
1つ以上のプログラムとを備え、1つ以上のプログラムはメモリに記憶され、2つ以上のプロセッサにより実行されるように構成され、1つ以上のプログラムは、
第2のプロセッサが低電力モードの間に、
マイクからオーディオ入力を取り込むための命令と、
第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込むための命令と、
第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定するための命令と、
バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、
第2のプロセッサに低電力モードを終了させるための命令と、
第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別するための命令と、
第2のプロセッサを使用して、識別されたタスクを実行するための命令と、
バッファの少なくとも第1の部分が基準を満たさないという判定に従って、第2のプロセッサに低電力モードを終了させることを見送るための命令と、
を含む電子装置。
54.マイクと、
第1のプロセッサと、
第2のプロセッサと、
第2のプロセッサが低電力モードの間に、
マイクからオーディオ入力を取り込み、
第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込み、
第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定する手段と、
バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、
第2のプロセッサに低電力モードを終了させ、
第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別し、
第2のプロセッサを使用して、識別されたタスクを実行する手段と、
バッファの少なくとも第1の部分が基準を満たさないという判定に従って、第2のプロセッサに低電力モードを終了させることを見送る手段と、
を備える電子装置。
55.マイクと、
少なくとも2つのプロセッサと、
メモリと、
1つ以上のプログラムとを備え、1つ以上のプログラムはメモリに記憶され、少なくとも2つのプロセッサにより実行されるように構成され、1つ以上のプログラムは、項目41から51のいずれか1つに記載の方法を実行するための命令を含む電子装置。
56.マイク及び少なくとも2つのプロセッサを有する電子装置により実行される場合に、項目41から51のいずれか1つに記載の方法を装置に実行させる命令を備える1つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体。
57.マイクと、
少なくとも2つのプロセッサと、
項目41から51のいずれか1つに記載の方法を実行する手段と、
を備える電子装置。
58.マイク部と、
メモリバッファ部と、
マイク部及びメモリバッファ部に結合された処理部であり、第1のプロセッサ及び第2のプロセッサを備え、
第2のプロセッサが低電力モードの間に、
マイクからオーディオ入力を取り込み、
第1のプロセッサを使用して、継続的に取り込まれるオーディオ入力を表すデータをメモリバッファに継続的に書き込み、
第1のプロセッサを使用して、メモリバッファの少なくとも第1の部分が所定の基準を満たすか否かを判定し、
バッファの少なくとも第1の部分が所定の基準を満たすという判定に従って、
第2のプロセッサに低電力モードを終了させ、
第2のプロセッサを使用して、メモリバッファの内容の少なくとも第2の部分に基づいてコンピューティングタスクを識別し、
第2のプロセッサを使用して、識別されたタスクを実行し、
バッファの少なくとも第1の部分が基準を満たさないという判定に従って、第2のプロセッサに低電力モードを終了させることを見送るように構成された処理部と、
を備える電子装置。
59.第2のプロセッサは、ユーザからの追加入力を必要とせずに、識別されたコンピューティングタスクを即座に実行する項目58記載の電子装置。
60.基準は、メモリバッファの少なくとも第2の部分が所定のトリガを表すオーディオデータを含むと装置が判定する場合に満たされる基準を含む項目58及び59のいずれか1つに記載の電子装置。
61.コンピューティングタスクを識別することは、第2のプロセッサでデジタルアシスタントセッションを開始することを含む項目58から60のいずれか1つに記載の電子装置。
62.デジタルアシスタントがタスクを識別して実行する項目61記載の電子装置。
63.デジタルアシスタントセッションを開始することは、デジタルアシスタントセッションに関連するユーザインタフェースを表示することを含む項61及び62のいずれか1つに記載の電子装置。
64.デジタルアシスタントに関連するユーザインタフェースは全画面ビューで表示される項目63記載の電子装置。
65.デジタルアシスタントを起動することは、装置の1つ以上のオーディオコンポーネントを起動することを含む項目61から64記載の電子装置。
66.バッファの少なくとも一部分は、デジタルアシスタントに関連付けられたリモートサーバに提供される項61から65のいずれか1つに記載の電子装置。
67.処理部は、
ユーザ入力が基準を満たしたという判定に更に従って、
装置のマイク部内の第2のマイクを起動し、
第2のマイクにより検出されたオーディオをデジタルアシスタントにストリーミングするように更に構成される項目61から66のいずれか1つに記載の電子装置。
68.基準は、オーディオデータが許可ユーザに対応すると装置が判定する場合に満たされる基準を含む項目58から67のいずれか1つに記載の電子装置。
説明することを目的とする上記の説明は、特定の実施形態を参照して述べられた。しかし、上記の説明は、本発明を網羅する意図はなく、あるいは開示された厳密な形式に本発明を限定する意図はない。多くの変更及び変形が上記の教示の下で可能である。実施形態は、技術の原理及びその実際的な適用例を最適に説明するために選択され且つ説明された。それにより、当業者は特定の使用に適すると考えられる種々の変更を伴って技術及び種々の実施形態を最適に使用できるようになる。
添付の図面を参照して開示及び例を十分に説明したが、種々の変形及び変更が当業者には明らかになるだろう。そのような変形及び変更は、特許請求の範囲により定義される開示及び例の範囲に含まれると理解されるべきである。

Claims (20)

  1. マイク、第1のプロセッサ、及び第2のプロセッサを含む電子装置において、
    前記マイクからオーディオ入力を取り込むことと、
    前記第1のプロセッサを使用して、取り込んだ前記オーディオ入力を表すデータをメモリバッファに書き込むことと、
    前記マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出することと、
    前記第1のプロセッサを使用して、前記ユーザ入力が所定の基準を満たしたか否かを判定することと、
    前記ユーザ入力が前記基準を満たしたという判定に従って、前記第2のプロセッサを使用して、前記メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別することと、
    前記ユーザ入力が前記基準を満たさなかったという判定に従って、前記タスクを識別することを見送ることと、
    を有する方法。
  2. 前記メモリバッファの内容の前記少なくとも一部分は、前記ユーザ入力が検出される前に前記バッファに書き込まれたデータを含む、
    ことを特徴とする請求項1に記載の方法。
  3. 前記メモリバッファの内容の前記少なくとも一部分は、前記ユーザ入力の前記検出の間に前記バッファに書き込まれたデータを含む、
    ことを特徴とする請求項1又は2に記載の方法。
  4. 前記ユーザ入力が前記基準を満たしたという判定にさらに従って、識別された前記コンピューティングタスクを実行することをさらに有する、
    ことを特徴とする請求項1から3のいずれか1項に記載の方法。
  5. 前記コンピューティングタスクを識別することは、前記第2のプロセッサでデジタルアシスタントのセッションを開始することを含む、
    ことを特徴とする請求項1から4のいずれか1項に記載の方法。
  6. 前記デジタルアシスタントが、前記コンピューティングタスクを識別して実行する、
    ことを特徴とする請求項5に記載の方法。
  7. 前記デジタルアシスタントのセッションを開始することは、前記デジタルアシスタントのセッションに関連するユーザインタフェースを表示することを含む、
    ことを特徴とする請求項5又は6に記載の方法。
  8. 前記デジタルアシスタントに関連する前記ユーザインタフェースは、全画面ビューで表示される、
    ことを特徴とする請求項7に記載の方法。
  9. 前記デジタルアシスタントのセッションを開始することは、前記装置の1つ以上のオーディオコンポーネントを起動することを含む、
    ことを特徴とする請求項5から8のいずれか1項に記載の方法。
  10. 前記メモリバッファの内容の前記少なくとも一部分が、前記デジタルアシスタントに関連付けられたリモートサーバに提供される、
    ことを特徴とする請求項5から9のいずれか1項に記載の方法。
  11. 前記ユーザ入力が前記基準を満たしたという判定にさらに従って、
    前記装置の第2のマイクを起動することと、
    前記第2のマイクにより検出されたオーディオをデジタルアシスタントにストリーミングすることと、
    をさらに有することを特徴とする請求項1から10のいずれか1項に記載の方法。
  12. 前記ユーザ入力はボタン押下である、
    ことを特徴とする請求項1から11のいずれか1項に記載の方法。
  13. 前記基準は、前記ボタン押下が所定の閾値持続時間を上回る場合に満たされる基準を含む、
    ことを特徴とする請求項12に記載の方法。
  14. 前記ユーザ入力は、前記マイクにより取り込まれて前記バッファに書き込まれるオーディオデータである、
    ことを特徴とする請求項1から11のいずれか1項に記載の方法。
  15. 前記基準は、前記メモリバッファの少なくとも第2の部分が所定のトリガを表すオーディオデータを含むと前記装置が判定する場合に満たされる基準を含む、
    ことを特徴とする請求項14に記載の方法。
  16. 前記基準は、前記オーディオデータが許可ユーザに対応すると前記装置が判定する場合に満たされる基準を含む、
    ことを特徴とする請求項14又は15に記載の方法。
  17. 前記オーディオ入力は前記第2のプロセッサが低電力モードである間に取り込まれ、
    前記方法は、前記ユーザ入力が前記基準を満たしたという判定にさらに従って、前記第2のプロセッサに前記低電力モードを終了させることをさらに有する、
    ことを特徴とする請求項1から16のいずれか1項に記載の方法。
  18. マイクを有する電子装置の第1のプロセッサ及び第2のプロセッサにより実行される場合に、当該装置に、
    前記マイクからオーディオ入力を取り込ませ、
    前記第1のプロセッサを使用して、取り込んだ前記オーディオ入力を表すデータをメモリバッファに書き込ませ、
    前記マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出させ、
    前記第1のプロセッサを使用して、前記ユーザ入力が所定の基準を満たしたか否かを判定させ、
    前記ユーザ入力が前記基準を満たしたという判定に従って、前記第2のプロセッサを使用して、前記メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別させ、
    前記ユーザ入力が前記基準を満たさなかったという判定に従って、前記タスクを識別することを見送らせる、
    命令を含んでいる1つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体。
  19. マイクと、
    2つ以上のプロセッサと、
    メモリと、
    1つ以上のプログラムとを有し、前記1つ以上のプログラムは前記メモリに記憶されると共に、前記2つ以上のプロセッサにより実行されるように構成され、前記1つ以上のプログラムは、
    前記マイクからオーディオ入力を取り込み、
    第1のプロセッサを使用して、取り込んだ前記オーディオ入力を表すデータを前記メモリにおけるメモリバッファに書き込み、
    前記マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出し、
    前記第1のプロセッサを使用して、前記ユーザ入力が所定の基準を満たしたか否かを判定し、
    前記ユーザ入力が前記基準を満たしたという判定に従って、第2のプロセッサを使用して、前記メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別し、
    前記ユーザ入力が前記基準を満たさなかったという判定に従って、前記タスクを識別することを見送る、
    ための命令を含む、
    ことを特徴とする電子装置。
  20. マイクと、
    第1のプロセッサと、
    第2のプロセッサと、
    前記マイクからオーディオ入力を取り込む手段と、
    前記第1のプロセッサを使用して、取り込んだ前記オーディオ入力を表すデータをメモリバッファに書き込む手段と、
    前記マイクを使用してオーディオ入力を取り込んでいる間にユーザ入力を検出する手段と、
    前記第1のプロセッサを使用して、前記ユーザ入力が所定の基準を満たしたか否かを判定する手段と、
    前記ユーザ入力が前記基準を満たしたという判定に従って、前記第2のプロセッサを使用して、前記メモリバッファの内容の少なくとも一部分に基づいてコンピューティングタスクを識別する手段と、
    前記ユーザ入力が前記基準を満たさなかったという判定に従って、前記タスクを識別することを見送る手段と、
    を有することを特徴とする電子装置。
JP2018126316A 2015-09-08 2018-07-02 ゼロレイテンシデジタルアシスタント Pending JP2019003657A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US201562215608P true 2015-09-08 2015-09-08
US62/215,608 2015-09-08

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016161377 Division 2016-08-19

Publications (1)

Publication Number Publication Date
JP2019003657A true JP2019003657A (ja) 2019-01-10

Family

ID=56893717

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016161377A Active JP6630248B2 (ja) 2015-09-08 2016-08-19 ゼロレイテンシデジタルアシスタント
JP2018126316A Pending JP2019003657A (ja) 2015-09-08 2018-07-02 ゼロレイテンシデジタルアシスタント

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016161377A Active JP6630248B2 (ja) 2015-09-08 2016-08-19 ゼロレイテンシデジタルアシスタント

Country Status (8)

Country Link
US (2) US10747498B2 (ja)
EP (1) EP3141987B1 (ja)
JP (2) JP6630248B2 (ja)
KR (1) KR102208318B1 (ja)
CN (1) CN107949823A (ja)
AU (2) AU2016320585A1 (ja)
DE (1) DE102016214955A1 (ja)
WO (1) WO2017044160A1 (ja)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
AU2014214676A1 (en) 2013-02-07 2015-08-27 Apple Inc. Voice trigger for a digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
EP3149728B1 (en) 2014-05-30 2019-01-16 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US9691378B1 (en) * 2015-11-05 2017-06-27 Amazon Technologies, Inc. Methods and devices for selectively ignoring captured audio data
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10459874B2 (en) * 2016-05-18 2019-10-29 Texas Instruments Incorporated System and method for managing electromagnetic interference for electronic devices
US10915234B2 (en) * 2016-06-01 2021-02-09 Motorola Mobility Llc Responsive, visual presentation of informational briefs on user requested topics
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US10347245B2 (en) * 2016-12-23 2019-07-09 Soundhound, Inc. Natural language grammar enablement by speech characterization
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. Far-field extension for digital assistant services
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10395658B2 (en) * 2017-05-22 2019-08-27 International Business Machines Corporation Pre-processing partial inputs for accelerating automatic dialog response
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
EP3646141A4 (en) * 2017-06-30 2020-07-08 Razer (Asia-Pacific) Pte. Ltd. ADJUSTABLE TACTILE FEEDBACK WITH FORCE SENSORS AND HAPTICAL ACTUATORS
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10761802B2 (en) * 2017-10-03 2020-09-01 Google Llc Identifying music as a particular song
CN107808670A (zh) * 2017-10-25 2018-03-16 百度在线网络技术(北京)有限公司 语音数据处理方法、装置、设备及存储介质
US10916252B2 (en) 2017-11-10 2021-02-09 Nvidia Corporation Accelerated data transfer for latency reduction and real-time processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US20190188328A1 (en) * 2017-12-19 2019-06-20 Motorola Solutions, Inc. Methods and systems for determining an action to be taken in response to a user query as a function of pre-query context information
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK201870382A1 (en) 2018-06-01 2020-01-13 Apple Inc. ATTENTION AWARE VIRTUAL ASSISTANT DISMISSAL
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US10944859B2 (en) 2018-06-03 2021-03-09 Apple Inc. Accelerated task performance
CN112334977A (en) * 2018-08-14 2021-02-05 华为技术有限公司 Voice recognition method, wearable device and system
US20200104093A1 (en) * 2018-09-28 2020-04-02 Microsoft Technology Licensing, Llc Providing historical captured audio data to applications
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system

Family Cites Families (4170)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1559320A (en) 1924-11-17 1925-10-27 Albert A Hirsh Tooth cleaner
US2180522A (en) 1938-11-01 1939-11-21 Henne Isabelle Dental floss throw-away unit and method of making same
US2495222A (en) 1946-03-01 1950-01-24 Alvie S Morningstar Automatic clock calendar
US3828132A (en) 1970-10-30 1974-08-06 Bell Telephone Labor Inc Speech synthesis by concatenation of formant encoded words
US3710321A (en) 1971-01-18 1973-01-09 Ibm Machine recognition of lexical symbols
US3704345A (en) 1971-03-19 1972-11-28 Bell Telephone Labor Inc Conversion of printed text into synthetic speech
US3787542A (en) 1971-10-14 1974-01-22 Ici Ltd Production of extruded foamed synthetic thermoplastic polymeric materials
US3859005A (en) 1973-08-13 1975-01-07 Albert L Huebner Erosion reduction in wet turbines
US3979557A (en) 1974-07-03 1976-09-07 International Telephone And Telegraph Corporation Speech processor system for pitch period extraction using prediction filters
US4013085A (en) 1974-07-17 1977-03-22 Wright Charles E Dental cleaning means and method of manufacture therefor
US4108211A (en) 1975-04-28 1978-08-22 Fuji Photo Optical Co., Ltd. Articulated, four-way bendable tube structure
US4107784A (en) 1975-12-22 1978-08-15 Bemmelen Henri M Van Management control terminal method and apparatus
US4090216A (en) 1976-05-26 1978-05-16 Gte Sylvania Incorporated Ambient light contrast and color control circuit
BG24190A1 (en) 1976-09-08 1978-01-10 Antonov Method of synthesis of speech and device for effecting same
US4081631A (en) 1976-12-08 1978-03-28 Motorola, Inc. Dual purpose, weather resistant data terminal keyboard assembly including audio porting
US4384169A (en) 1977-01-21 1983-05-17 Forrest S. Mozer Method and apparatus for speech synthesizing
US4159536A (en) 1977-04-08 1979-06-26 Willard E. Kehoe Portable electronic language translation device
GB1545406A (en) 1977-12-16 1979-05-10 Ibm Keyboard apparatus
US4181821A (en) 1978-10-31 1980-01-01 Bell Telephone Laboratories, Incorporated Multiple template speech recognition system
JPS597120B2 (ja) 1978-11-24 1984-02-16 Nippon Electric Co
JPS5580084A (en) 1978-12-12 1980-06-16 Seiko Instr & Electronics Ltd Electronic wrist watch with computer
US4241286A (en) 1979-01-04 1980-12-23 Mack Gordon Welding helmet lens assembly
US4253477A (en) 1979-08-02 1981-03-03 Eichman John J Dental floss holder
JPH0122634B2 (ja) 1979-12-10 1989-04-27 Nippon Electric Co
US4310721A (en) 1980-01-23 1982-01-12 The United States Of America As Represented By The Secretary Of The Army Half duplex integral vocoder modem system
US4348553A (en) 1980-07-02 1982-09-07 International Business Machines Corporation Parallel pattern verifier with dynamic time warping
JPS5741731A (en) 1980-08-25 1982-03-09 Fujitsu Ltd Coordinate input device
US4332464A (en) 1980-09-22 1982-06-01 Xerox Corporation Interactive user-machine interface method and apparatus for copier/duplicator
NZ199001A (en) 1981-01-30 1984-02-03 Mobil Oil Corp Alkylation of aromatic compounds using catalyst with metal component and a zeolite
EP0059880A3 (en) 1981-03-05 1984-09-19 Texas Instruments Incorporated Text-to-speech synthesis system
US4495644A (en) 1981-04-27 1985-01-22 Quest Automation Public Limited Company Apparatus for signature verification
JPH0123798B2 (ja) 1981-04-27 1989-05-08 Nippon Electric Co
US4433377A (en) 1981-06-29 1984-02-21 Eustis Mary S Data processing with format varying
US4386345A (en) 1981-09-22 1983-05-31 Sperry Corporation Color and brightness tracking in a cathode ray tube display system
GB2109617B (en) 1981-11-14 1985-01-16 Nippon Musical Instruments Mfg Music sheet
US5047617A (en) 1982-01-25 1991-09-10 Symbol Technologies, Inc. Narrow-bodied, single- and twin-windowed portable laser scanning head for reading bar code symbols
DE3382478D1 (de) 1982-06-11 1992-01-30 Mitsubishi Electric Corp Vektor-groessenwandler.
US4451849A (en) 1982-06-23 1984-05-29 Rca Corporation Plural operating mode ambient light responsive television picture control
USRE32632E (en) 1982-07-19 1988-03-29 Apple Computer, Inc. Display system
US4485439A (en) 1982-07-27 1984-11-27 S.A. Analis Standard hardware-software interface for connecting any instrument which provides a digital output stream with any digital host computer
US4513379A (en) 1982-09-07 1985-04-23 General Electric Company Customization window for a computer numerical control system
JPS5957336A (en) 1982-09-27 1984-04-02 Toshiba Corp Picture display device
US4555775B1 (en) 1982-10-07 1995-12-05 Bell Telephone Labor Inc Dynamic generation and overlaying of graphic windows for multiple active program storage areas
US4587670A (en) 1982-10-15 1986-05-06 At&T Bell Laboratories Hidden Markov model speech recognition arrangement
US4831551A (en) 1983-01-28 1989-05-16 Texas Instruments Incorporated Speaker-dependent connected speech word recognizer
US4688195A (en) 1983-01-28 1987-08-18 Texas Instruments Incorporated Natural-language interface generating system
US4586158A (en) 1983-02-22 1986-04-29 International Business Machines Corp. Screen management system
DE3381300D1 (de) 1983-03-31 1990-04-12 Ibm Abbildungsraumverwaltung und wiedergabe in einem bestimmten teil des bildschirms eines virtuellen mehrfunktionsterminals.
US4654875A (en) 1983-05-23 1987-03-31 The Research Foundation Of State University Of New York System to achieve automatic recognition of linguistic strings
SE8303123L (sv) 1983-06-02 1984-12-03 Fixfabriken Ab PARTY ARRANGEMENTS
US4618984A (en) 1983-06-08 1986-10-21 International Business Machines Corporation Adaptive automatic discrete utterance recognition
JPS603056A (en) 1983-06-21 1985-01-09 Toshiba Corp Information rearranging device
DE3335358A1 (de) 1983-09-29 1985-04-11 Siemens Ag Verfahren zur bestimmung von sprachspektren fuer die automatische spracherkennung und sprachcodierung
US4611346A (en) 1983-09-29 1986-09-09 International Business Machines Corporation Method and apparatus for character recognition accommodating diacritical marks
FR2553555B1 (fr) 1983-10-14 1986-04-11 Texas Instruments France Procede de codage de la parole et dispositif pour sa mise en oeuvre
US4802223A (en) 1983-11-03 1989-01-31 Texas Instruments Incorporated Low data rate speech encoding employing syllable pitch patterns
US4797930A (en) 1983-11-03 1989-01-10 Texas Instruments Incorporated constructed syllable pitch patterns from phonological linguistic unit string data
US5212638A (en) 1983-11-14 1993-05-18 Colman Bernath Alphabetic keyboard arrangement for typing Mandarin Chinese phonetic data
US5164900A (en) 1983-11-14 1992-11-17 Colman Bernath Method and device for phonetically encoding Chinese textual data for data processing entry
US4680805A (en) 1983-11-17 1987-07-14 Texas Instruments Incorporated Method and apparatus for recognition of discontinuous text
US4589022A (en) 1983-11-28 1986-05-13 General Electric Company Brightness control system for CRT video display
JPH023224B2 (ja) 1983-11-29 1990-01-22 Enu Kee Bii Kk
US4736296A (en) 1983-12-26 1988-04-05 Hitachi, Ltd. Method and apparatus of intelligent guidance in natural language
US4726065A (en) 1984-01-26 1988-02-16 Horst Froessl Image manipulation by speech signals
US4955047A (en) 1984-03-26 1990-09-04 Dytel Corporation Automated attendant with direct inward system access
US4811243A (en) 1984-04-06 1989-03-07 Racine Marsh V Computer aided coordinate digitizing system
US4692941A (en) 1984-04-10 1987-09-08 First Byte Real-time text-to-speech conversion system
US4709390A (en) 1984-05-04 1987-11-24 American Telephone And Telegraph Company, At&T Bell Laboratories Speech message code modifying arrangement
JPH067397Y2 (ja) 1984-07-30 1994-02-23 カシオ計算機株式会社 文書入力装置
JPH0724055B2 (ja) 1984-07-31 1995-03-15 株式会社日立製作所 単語分割処理方法
US4783807A (en) 1984-08-27 1988-11-08 John Marley System and method for sound recognition with feature selection synchronized to voice pitch
JP2607457B2 (ja) 1984-09-17 1997-05-07 株式会社東芝 パターン認識装置
JPH0510703B2 (ja) 1984-10-29 1993-02-10 Hitachi Ltd
US4718094A (en) 1984-11-19 1988-01-05 International Business Machines Corp. Speech recognition system
US5165007A (en) 1985-02-01 1992-11-17 International Business Machines Corporation Feneme-based Markov models for words
US4686522A (en) 1985-02-19 1987-08-11 International Business Machines Corporation Method of editing graphic objects in an interactive draw graphic system using implicit editing actions
US4783804A (en) 1985-03-21 1988-11-08 American Telephone And Telegraph Company, At&T Bell Laboratories Hidden Markov model speech recognition arrangement
US4944013A (en) 1985-04-03 1990-07-24 British Telecommunications Public Limited Company Multi-pulse speech coder
US4670848A (en) 1985-04-10 1987-06-02 Standard Systems Corporation Artificial intelligence system
US4658425A (en) 1985-04-19 1987-04-14 Shure Brothers, Inc. Microphone actuation control system suitable for teleconference systems
US4833712A (en) 1985-05-29 1989-05-23 International Business Machines Corporation Automatic generation of simple Markov model stunted baseforms for words in a vocabulary
US4819271A (en) 1985-05-29 1989-04-04 International Business Machines Corporation Constructing Markov model word baseforms from multiple utterances by concatenating model sequences for word segments
US4698625A (en) 1985-05-30 1987-10-06 International Business Machines Corp. Graphic highlight adjacent a pointing cursor
US4829583A (en) 1985-06-03 1989-05-09 Sino Business Machines, Inc. Method and apparatus for processing ideographic characters
US5067158A (en) 1985-06-11 1991-11-19 Texas Instruments Incorporated Linear predictive residual representation via non-iterative spectral reconstruction
US5175803A (en) 1985-06-14 1992-12-29 Yeh Victor C Method and apparatus for data processing and word processing in Chinese using a phonetic Chinese language
US4713775A (en) 1985-08-21 1987-12-15 Teknowledge, Incorporated Intelligent assistant for using and operating computer system capabilities to solve problems
EP0218859A3 (en) 1985-10-11 1989-09-06 International Business Machines Corporation Signal processor communication interface
US4826405A (en) 1985-10-15 1989-05-02 Aeroquip Corporation Fan blade fabrication system
US4754489A (en) 1985-10-15 1988-06-28 The Palantir Corporation Means for resolving ambiguities in text based upon character context
US5133023A (en) 1985-10-15 1992-07-21 The Palantir Corporation Means for resolving ambiguities in text based upon character context
US4655233A (en) 1985-11-04 1987-04-07 Laughlin Patrick E Dental flossing tool
US4776016A (en) 1985-11-21 1988-10-04 Position Orientation Systems, Inc. Voice control system
NL8503304A (nl) 1985-11-29 1987-06-16 Philips Nv Werkwijze en inrichting voor het segmenteren van een uit een akoestisch signaal, bij voorbeeld een spraaksignaal, afgeleid elektrisch signaal.
JPH0469652B2 (ja) 1985-12-27 1992-11-06 Sanwa Kako Co
JPH0833744B2 (ja) 1986-01-09 1996-03-29 株式会社東芝 音声合成装置
US4680429A (en) 1986-01-15 1987-07-14 Tektronix, Inc. Touch panel
US4807752A (en) 1986-01-21 1989-02-28 Placontrol Corporation Dental floss holders and package assembly of same
US4724542A (en) 1986-01-22 1988-02-09 International Business Machines Corporation Automatic reference adaptation during dynamic signature verification
US5128752A (en) 1986-03-10 1992-07-07 Kohorn H Von System and method for generating and redeeming tokens
US5759101A (en) 1986-03-10 1998-06-02 Response Reward Systems L.C. Central and remote evaluation of responses of participatory broadcast audience with automatic crediting and couponing
US5032989A (en) 1986-03-19 1991-07-16 Realpro, Ltd. Real estate search and location system and method
DE3779351D1 (ja) 1986-03-28 1992-07-02 American Telephone And Telegraph Co., New York, N.Y., Us
JPS62235998A (en) 1986-04-05 1987-10-16 Sharp Kk Syllable identification system
JPH0814822B2 (ja) 1986-04-30 1996-02-14 カシオ計算機株式会社 命令入力装置
US4903305A (en) 1986-05-12 1990-02-20 Dragon Systems, Inc. Method for representing word models for use in speech recognition
US4759070A (en) 1986-05-27 1988-07-19 Voroba Technologies Associates Patient controlled master hearing aid
US4837798A (en) 1986-06-02 1989-06-06 American Telephone And Telegraph Company Communication system having unified messaging
GB8618665D0 (en) 1986-07-31 1986-09-10 British Telecomm Graphical workstation
US4790028A (en) 1986-09-12 1988-12-06 Westinghouse Electric Corp. Method and apparatus for generating variably scaled displays
JP2848458B2 (ja) 1986-10-03 1999-01-20 ブリテッシュ・テレコミュニケイションズ・パブリック・リミテッド・カンパニー 言語翻訳システム
US5765131A (en) 1986-10-03 1998-06-09 British Telecommunications Public Limited Company Language translation system and method
US5083268A (en) 1986-10-15 1992-01-21 Texas Instruments Incorporated System and method for parsing natural language by unifying lexical features of words
US4837831A (en) 1986-10-15 1989-06-06 Dragon Systems, Inc. Method for creating and using multiple-word sound models in speech recognition
AU592236B2 (en) 1986-10-16 1990-01-04 Mitsubishi Denki Kabushiki Kaisha Amplitude-adapted vector quantizer
US5123103A (en) 1986-10-17 1992-06-16 Hitachi, Ltd. Method and system of retrieving program specification and linking the specification by concept to retrieval request for reusing program parts
US4829576A (en) 1986-10-21 1989-05-09 Dragon Systems, Inc. Voice recognition system
US4887212A (en) 1986-10-29 1989-12-12 International Business Machines Corporation Parser for natural language text
US4833718A (en) 1986-11-18 1989-05-23 First Byte Compression of stored waveforms for artificial speech
US4852168A (en) 1986-11-18 1989-07-25 Sprague Richard P Compression of stored waveforms for artificial speech
US4727354A (en) 1987-01-07 1988-02-23 Unisys Corporation System for selecting best fit vector code in vector quantization encoding
US4827520A (en) 1987-01-16 1989-05-02 Prince Corporation Voice actuated control system for use in a vehicle
US5179627A (en) 1987-02-10 1993-01-12 Dictaphone Corporation Digital dictation system
US4965763A (en) 1987-03-03 1990-10-23 International Business Machines Corporation Computer method for automatic extraction of commonly specified information from business correspondence
JP2595235B2 (ja) 1987-03-18 1997-04-02 富士通株式会社 音声合成装置
US4755811A (en) 1987-03-24 1988-07-05 Tektronix, Inc. Touch controlled zoom of waveform displays
US4803729A (en) 1987-04-03 1989-02-07 Dragon Systems, Inc. Speech recognition method
US5027408A (en) 1987-04-09 1991-06-25 Kroeker John P Speech-recognition circuitry employing phoneme estimation
US5125030A (en) 1987-04-13 1992-06-23 Kokusai Denshin Denwa Co., Ltd. Speech signal coding/decoding system based on the type of speech signal
US5644727A (en) 1987-04-15 1997-07-01 Proprietary Financial Products, Inc. System for the operation and management of one or more financial accounts through the use of a digital communication and computation system for exchange, investment and borrowing
AT386947B (de) 1987-04-17 1988-11-10 Rochus Marxer Spannbarer faden, behaelter fuer diesen faden und halter zur zahnpflege, insbesondere zur reinigung von zahnzwischenraeumen
JPS63285598A (en) 1987-05-18 1988-11-22 Kokusai Denshin Denwa Co Ltd Phoneme connection type parameter rule synthesization system
EP0293259A3 (en) 1987-05-29 1990-03-07 Kabushiki Kaisha Toshiba Voice recognition system used in telephone apparatus
US5231670A (en) 1987-06-01 1993-07-27 Kurzweil Applied Intelligence, Inc. Voice controlled system and method for generating text from a voice controlled input
CA1265623A (en) 1987-06-11 1990-02-06 Eddy Lee Method of facilitating computer sorting
DE3723078A1 (de) 1987-07-11 1989-01-19 Philips Patentverwaltung Verfahren zur erkennung von zusammenhaengend gesprochenen woertern
US4974191A (en) 1987-07-31 1990-11-27 Syntellect Software Inc. Adaptive natural language computer interface system
CA1288516C (en) 1987-07-31 1991-09-03 Leendert M. Bijnagte Apparatus and method for communicating textual and image information between a host computer and a remote display terminal
US4827518A (en) 1987-08-06 1989-05-02 Bell Communications Research, Inc. Speaker verification system using integrated circuit cards
CA1280215C (en) 1987-09-28 1991-02-12 Eddy Lee Multilingual ordered data retrieval system
JP2602847B2 (ja) 1987-09-29 1997-04-23 株式会社日立製作所 マルチメディアメールシステム
US5022081A (en) 1987-10-01 1991-06-04 Sharp Kabushiki Kaisha Information recognition system
EP0380572B1 (en) 1987-10-09 1994-07-27 Sound Entertainment, Inc. Generating speech from digitally stored coarticulated speech segments
JPH0355838B2 (ja) 1987-10-12 1991-08-26
US4852173A (en) 1987-10-29 1989-07-25 International Business Machines Corporation Design and construction of a binary-tree system for language modelling
US5072452A (en) 1987-10-30 1991-12-10 International Business Machines Corporation Automatic determination of labels and Markov word models in a speech recognition system
EP0314908B1 (en) 1987-10-30 1992-12-02 International Business Machines Corporation Automatic determination of labels and markov word models in a speech recognition system
US4914586A (en) 1987-11-06 1990-04-03 Xerox Corporation Garbage collector for hypermedia systems
US4992972A (en) 1987-11-18 1991-02-12 International Business Machines Corporation Flexible context searchable on-line information system with help files and modules for on-line computer system documentation
US4908867A (en) 1987-11-19 1990-03-13 British Telecommunications Public Limited Company Speech synthesis
US5220657A (en) 1987-12-02 1993-06-15 Xerox Corporation Updating local copy of shared data in a collaborative system
JP2739945B2 (ja) 1987-12-24 1998-04-15 株式会社東芝 音声認識方法
US5053758A (en) 1988-02-01 1991-10-01 Sperry Marine Inc. Touchscreen control panel with sliding touch control
US4984177A (en) 1988-02-05 1991-01-08 Advanced Products And Technologies, Inc. Voice language translator
GB2219178A (en) 1988-02-11 1989-11-29 Benchmark Technologies State machine controlled video processor
CA1333420C (en) 1988-02-29 1994-12-06 Tokumichi Murakami Vector quantizer
US5079723A (en) 1988-03-04 1992-01-07 Xerox Corporation Touch dialogue user interface for reproduction machines
US4994966A (en) 1988-03-31 1991-02-19 Emerson & Stern Associates, Inc. System and method for natural language parsing by initiating processing prior to entry of complete sentences
JPH01254742A (en) 1988-04-05 1989-10-11 Sekisui Plastics Co Ltd Production of foamed polyethylene resin
FI80536C (fi) 1988-04-15 1990-06-11 Nokia Mobira Oy Matrisdisplay.
US4914590A (en) 1988-05-18 1990-04-03 Emhart Industries, Inc. Natural language understanding system
US4975975A (en) 1988-05-26 1990-12-04 Gtx Corporation Hierarchical parametric apparatus and method for recognizing drawn characters
US5315689A (en) 1988-05-27 1994-05-24 Kabushiki Kaisha Toshiba Speech recognition system having word-based and phoneme-based recognition means
US5029211A (en) 1988-05-30 1991-07-02 Nec Corporation Speech analysis and synthesis system
US5111423A (en) 1988-07-21 1992-05-05 Altera Corporation Programmable interface for computer system peripheral circuit card
US4931783A (en) 1988-07-26 1990-06-05 Apple Computer, Inc. Method and apparatus for removable menu window
KR910007197B1 (ko) 1988-08-23 1991-09-19 삼성전자 주식회사 리모트 콘트롤회로
FR2636163B1 (fr) 1988-09-02 1991-07-05 Hamon Christian Procede et dispositif de synthese de la parole par addition-recouvrement de formes d'onde
US5161102A (en) 1988-09-09 1992-11-03 Compaq Computer Corporation Computer interface for the configuration of computer system and circuit boards
US5257387A (en) 1988-09-09 1993-10-26 Compaq Computer Corporation Computer implemented method and apparatus for dynamic and automatic configuration of a computer system and circuit boards including computer resource allocation conflict resolution
US5353432A (en) 1988-09-09 1994-10-04 Compaq Computer Corporation Interactive method for configuration of computer system and circuit boards with user specification of system resources and computer resolution of resource conflicts
US4839853A (en) 1988-09-15 1989-06-13 Bell Communications Research, Inc. Computer information retrieval using latent semantic structure
JPH0286057A (en) 1988-09-21 1990-03-27 Japan Storage Battery Co Ltd Electrolyte pouring method for reserve battery
JPH0286397A (en) 1988-09-22 1990-03-27 Nippon Telegr & Teleph Corp <Ntt> Microphone array
JPH0581917B2 (ja) 1988-09-30 1993-11-16 Ibm
US5201034A (en) 1988-09-30 1993-04-06 Hitachi Ltd. Interactive intelligent interface
US4905163A (en) 1988-10-03 1990-02-27 Minnesota Mining & Manufacturing Company Intelligent optical navigator dynamic information presentation and navigation system
US5282265A (en) 1988-10-04 1994-01-25 Canon Kabushiki Kaisha Knowledge information processing system
US4918723A (en) 1988-10-07 1990-04-17 Jerry R. Iggulden Keyboard to facsimile machine transmission system
DE3837590A1 (de) 1988-11-05 1990-05-10 Ant Nachrichtentech Verfahren zum reduzieren der datenrate von digitalen bilddaten
EP0372734B1 (en) 1988-11-23 1994-03-09 Digital Equipment Corporation Name pronunciation by synthesizer
US5027110A (en) 1988-12-05 1991-06-25 At&T Bell Laboratories Arrangement for simultaneously displaying on one or more display terminals a series of images
US5027406A (en) 1988-12-06 1991-06-25 Dragon Systems, Inc. Method for interactive speech recognition and training
JPH02153415A (en) 1988-12-06 1990-06-13 Hitachi Ltd Keyboard device
GB8828796D0 (en) 1988-12-09 1989-01-18 British Telecomm Data compression
US4935954A (en) 1988-12-28 1990-06-19 At&T Company Automated message retrieval system
US5127055A (en) 1988-12-30 1992-06-30 Kurzweil Applied Intelligence, Inc. Speech recognition apparatus & method having dynamic reference pattern adaptation
DE3853885T2 (de) 1988-12-30 1995-09-14 Ezel Inc Vektorisationsverfahren.
US5047614A (en) 1989-01-23 1991-09-10 Bianco James S Method and apparatus for computer-aided shopping
JP2574892B2 (ja) 1989-02-15 1997-01-22 株式会社日立製作所 自動車における負荷分担制御方法
US5086792A (en) 1989-02-16 1992-02-11 Placontrol Corp. Dental floss loop devices, and methods of manufacture and packaging same
US4928307A (en) 1989-03-02 1990-05-22 Acs Communications Time dependent, variable amplitude threshold output circuit for frequency variant and frequency invariant signal discrimination
SE466029B (sv) 1989-03-06 1991-12-02 Ibm Svenska Ab DEVICE AND PROCEDURE FOR ANALYSIS OF NATURAL LANGUAGES IN A COMPUTER-BASED INFORMATION PROCESSING SYSTEM
JPH0636156B2 (ja) 1989-03-13 1994-05-11 インターナショナル・ビジネス・マシーンズ・コーポレーション 音声認識装置
JP2763322B2 (ja) 1989-03-13 1998-06-11 キヤノン株式会社 音声処理方法
US5033087A (en) 1989-03-14 1991-07-16 International Business Machines Corp. Method and apparatus for the automatic determination of phonological rules as for a continuous speech recognition system
JPH0782544B2 (ja) 1989-03-24 1995-09-06 インターナショナル・ビジネス・マシーンズ・コーポレーション マルチテンプレートを用いるdpマツチング方法及び装置
US5003577A (en) 1989-04-05 1991-03-26 At&T Bell Laboratories Voice and data interface to a voice-mail service system
US4977598A (en) 1989-04-13 1990-12-11 Texas Instruments Incorporated Efficient pruning algorithm for hidden markov model speech recognition
US5252951A (en) 1989-04-28 1993-10-12 International Business Machines Corporation Graphical user interface with gesture recognition in a multiapplication environment
US5197005A (en) 1989-05-01 1993-03-23 Intelligent Business Systems Database retrieval system having a natural language interface
US4994983A (en) 1989-05-02 1991-02-19 Itt Corporation Automatic speech recognition system using seed templates
US5287448A (en) 1989-05-04 1994-02-15 Apple Computer, Inc. Method and apparatus for providing help information to users of computers
JP2904283B2 (ja) 1989-05-22 1999-06-14 マツダ株式会社 車両用多重伝送装置
US4953106A (en) 1989-05-23 1990-08-28 At&T Bell Laboratories Technique for drawing directed graphs
US5010574A (en) 1989-06-13 1991-04-23 At&T Bell Laboratories Vector quantizer search arrangement
JPH03163623A (en) 1989-06-23 1991-07-15 Articulate Syst Inc Voice control computer interface
JP2527817B2 (ja) 1989-07-14 1996-08-28 シャープ株式会社 主題連想装置および単語連想装置
JP2940005B2 (ja) 1989-07-20 1999-08-25 日本電気株式会社 音声符号化装置
JPH03113578A (en) 1989-09-27 1991-05-14 Fujitsu Ltd Graphic output processing system
US5091945A (en) 1989-09-28 1992-02-25 At&T Bell Laboratories Source dependent channel coding with error protection
US5293448A (en) 1989-10-02 1994-03-08 Nippon Telegraph And Telephone Corporation Speech analysis-synthesis method and apparatus therefor
US5276616A (en) 1989-10-16 1994-01-04 Sharp Kabushiki Kaisha Apparatus for automatically generating index
CA2027705C (en) 1989-10-17 1994-02-15 Masami Akamine Speech coding system utilizing a recursive computation technique for improvement in processing speed
US5075896A (en) 1989-10-25 1991-12-24 Xerox Corporation Character and phoneme recognition based on probability clustering
US4980916A (en) 1989-10-26 1990-12-25 General Electric Company Method for improving speech quality in code excited linear predictive speech coding
US5020112A (en) 1989-10-31 1991-05-28 At&T Bell Laboratories Image recognition method using two-dimensional stochastic grammars
DE69028072T2 (de) 1989-11-06 1997-01-09 Canon Kk Verfahren und Einrichtung zur Sprachsynthese
US5220639A (en) 1989-12-01 1993-06-15 National Science Council Mandarin speech input method for Chinese computers and a mandarin speech recognition machine
US5021971A (en) 1989-12-07 1991-06-04 Unisys Corporation Reflective binary encoder for vector quantization
US5179652A (en) 1989-12-13 1993-01-12 Anthony I. Rozmanith Method and apparatus for storing, transmitting and retrieving graphical and tabular data
US5077669A (en) 1989-12-27 1991-12-31 International Business Machines Corporation Method for quasi-key search within a national language support (nls) data processing system
US5091790A (en) 1989-12-29 1992-02-25 Morton Silverberg Multipurpose computer accessory for facilitating facsimile communication
EP0438662A3 (ja) 1990-01-23 1994-01-26 Ibm
US5175814A (en) 1990-01-30 1992-12-29 Digital Equipment Corporation Direct manipulation interface for boolean information retrieval
US5218700A (en) 1990-01-30 1993-06-08 Allen Beechick Apparatus and method for sorting a list of items
US5255386A (en) 1990-02-08 1993-10-19 International Business Machines Corporation Method and apparatus for intelligent help that matches the semantic similarity of the inferred intent of query or command to a best-fit predefined command intent
CH681573A5 (en) 1990-02-13 1993-04-15 Astral Automatic teller arrangement involving bank computers - is operated by user data card carrying personal data, account information and transaction records
US5208862A (en) 1990-02-22 1993-05-04 Nec Corporation Speech coder
US5062143A (en) 1990-02-23 1991-10-29 Harris Corporation Trigram-based method of language identification
US5067503A (en) 1990-03-21 1991-11-26 Stile Thomas W Dental apparatus for flossing teeth
US5266949A (en) 1990-03-29 1993-11-30 Nokia Mobile Phones Ltd. Lighted electronic keyboard
US5299284A (en) 1990-04-09 1994-03-29 Arizona Board Of Regents, Acting On Behalf Of Arizona State University Pattern classification using linear programming
US5125022A (en) 1990-05-15 1992-06-23 Vcs Industries, Inc. Method for recognizing alphanumeric strings spoken over a telephone network
US5127043A (en) 1990-05-15 1992-06-30 Vcs Industries, Inc. Simultaneous speaker-independent voice recognition and verification over a telephone network
US5157779A (en) 1990-06-07 1992-10-20 Sun Microsystems, Inc. User extensible testing system
US5301109A (en) 1990-06-11 1994-04-05 Bell Communications Research, Inc. Computerized cross-language document retrieval using latent semantic indexing
JP3266246B2 (ja) 1990-06-15 2002-03-18 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 自然言語解析装置及び方法並びに自然言語解析用知識ベース構築方法
US5202952A (en) 1990-06-22 1993-04-13 Dragon Systems, Inc. Large-vocabulary continuous speech prefiltering and processing system
EP0464712A3 (en) 1990-06-28 1993-01-13 Kabushiki Kaisha Toshiba Display/input control system for software keyboard in information processing apparatus having integral display/input device
US5442780A (en) 1991-07-11 1995-08-15 Mitsubishi Denki Kabushiki Kaisha Natural language database retrieval system using virtual tables to convert parsed input phrases into retrieval keys
DE4023318A1 (de) 1990-07-21 1992-02-20 Fraunhofer Ges Forschung Verfahren zur durchfuehrung eines variablen dialogs mit technischen geraeten
US5175536A (en) 1990-08-01 1992-12-29 Westinghouse Electric Corp. Apparatus and method for adapting cards designed for a VME bus for use in a VXI bus system
US5103498A (en) 1990-08-02 1992-04-07 Tandy Corporation Intelligent help system
JPH0493894A (en) 1990-08-03 1992-03-26 Canon Inc Method and device for character processing
CA2089177C (en) 1990-08-09 2002-10-22 Bruce R. Baker Communication system with text message retrieval based on concepts inputted via keyboard icons
GB9017600D0 (en) 1990-08-10 1990-09-26 British Aerospace An assembly and method for binary tree-searched vector quanisation data compression processing
DE4126902C2 (de) 1990-08-15 1996-06-27 Ricoh Kk Sprachintervall - Feststelleinheit
US5404295A (en) 1990-08-16 1995-04-04 Katz; Boris Method and apparatus for utilizing annotations to facilitate computer retrieval of database material
US5309359A (en) 1990-08-16 1994-05-03 Boris Katz Method and apparatus for generating and utlizing annotations to facilitate computer text retrieval
US5297170A (en) 1990-08-21 1994-03-22 Codex Corporation Lattice and trellis-coded quantization
EP0473864A1 (en) 1990-09-04 1992-03-11 International Business Machines Corporation Method and apparatus for paraphrasing information contained in logical forms
US5400434A (en) 1990-09-04 1995-03-21 Matsushita Electric Industrial Co., Ltd. Voice source for synthetic speech system
JPH0833739B2 (ja) 1990-09-13 1996-03-29 三菱電機株式会社 パターン表現モデル学習装置
US5119079A (en) 1990-09-17 1992-06-02 Xerox Corporation Touch screen user interface with expanding touch locations for a reprographic machine
US5216747A (en) 1990-09-20 1993-06-01 Digital Voice Systems, Inc. Voiced/unvoiced estimation of an acoustic signal
US5276794A (en) 1990-09-25 1994-01-04 Grid Systems Corporation Pop-up keyboard system for entering handwritten data into computer generated forms
US5164982A (en) 1990-09-27 1992-11-17 Radish Communications Systems, Inc. Telecommunication display system
US5305205A (en) 1990-10-23 1994-04-19 Weber Maria L Computer-assisted transcription apparatus
US5128672A (en) 1990-10-30 1992-07-07 Apple Computer, Inc. Dynamic predictive keyboard
US5325298A (en) 1990-11-07 1994-06-28 Hnc, Inc. Methods for generating or revising context vectors for a plurality of word stems
US5317507A (en) 1990-11-07 1994-05-31 Gallant Stephen I Method for document retrieval and for word sense disambiguation using neural networks
US5260697A (en) 1990-11-13 1993-11-09 Wang Laboratories, Inc. Computer with separate display plane and user interface processor
US5450523A (en) 1990-11-15 1995-09-12 Matsushita Electric Industrial Co., Ltd. Training module for estimating mixture Gaussian densities for speech unit models in speech recognition systems
US5247579A (en) 1990-12-05 1993-09-21 Digital Voice Systems, Inc. Methods for speech transmission
US5345536A (en) 1990-12-21 1994-09-06 Matsushita Electric Industrial Co., Ltd. Method of speech recognition
US5127053A (en) 1990-12-24 1992-06-30 General Electric Company Low-complexity method for improving the performance of autocorrelation-based pitch detectors
US5133011A (en) 1990-12-26 1992-07-21 International Business Machines Corporation Method and apparatus for linear vocal control of cursor position
US5196838A (en) 1990-12-28 1993-03-23 Apple Computer, Inc. Intelligent scrolling
US5210689A (en) 1990-12-28 1993-05-11 Semantic Compaction Systems System and method for automatically selecting among a plurality of input modes
US5497319A (en) 1990-12-31 1996-03-05 Trans-Link International Corp. Machine translation and telecommunications system
JPH04236624A (en) 1991-01-18 1992-08-25 Sony Corp Control system
US5712949A (en) 1991-01-29 1998-01-27 Sony Corporation Disc reproduction system with sequential reproduction of audio and image data
FI88345C (fi) 1991-01-29 1993-04-26 Nokia Mobile Phones Ltd Belyst tastatur
US5268990A (en) 1991-01-31 1993-12-07 Sri International Method for recognizing speech using linguistically-motivated hidden Markov models
US5369577A (en) 1991-02-01 1994-11-29 Wang Laboratories, Inc. Text searching system
US5689618A (en) 1991-02-19 1997-11-18 Bright Star Technology, Inc. Advanced tools for speech synchronized animation
US5167004A (en) 1991-02-28 1992-11-24 Texas Instruments Incorporated Temporal decorrelation method for robust speaker verification
GB9105367D0 (en) 1991-03-13 1991-04-24 Univ Strathclyde Computerised information-retrieval database systems
EP0505621A3 (en) 1991-03-28 1993-06-02 International Business Machines Corporation Improved message recognition employing integrated speech and handwriting information
US5212821A (en) 1991-03-29 1993-05-18 At&T Bell Laboratories Machine-based learning system
US5327342A (en) 1991-03-31 1994-07-05 Roy Prannoy L Method and apparatus for generating personalized handwriting
DE4290947T1 (ja) 1991-04-08 1993-04-01 Hitachi, Ltd., Tokio/Tokyo, Jp
US5303406A (en) 1991-04-29 1994-04-12 Motorola, Inc. Noise squelch circuit with adaptive noise shaping
US5163809A (en) 1991-04-29 1992-11-17 Pratt & Whitney Canada, Inc. Spiral wound containment ring
US5367640A (en) 1991-04-30 1994-11-22 Hewlett-Packard Company System for configuring an input/output board in a computer
US5274771A (en) 1991-04-30 1993-12-28 Hewlett-Packard Company System for configuring an input/output board in a computer
JP3123558B2 (ja) 1991-05-09 2001-01-15 ソニー株式会社 情報入力処理装置および方法
US5341466A (en) 1991-05-09 1994-08-23 New York University Fractal computer user centerface with zooming capability
US5202828A (en) 1991-05-15 1993-04-13 Apple Computer, Inc. User interface system having programmable user interface elements
US5500905A (en) 1991-06-12 1996-03-19 Microelectronics And Computer Technology Corporation Pattern recognition neural network with saccade-like operation
US5241619A (en) 1991-06-25 1993-08-31 Bolt Beranek And Newman Inc. Word dependent N-best search method
US5475587A (en) 1991-06-28 1995-12-12 Digital Equipment Corporation Method and apparatus for efficient morphological text analysis using a high-level language for compact specification of inflectional paradigms
US5293452A (en) 1991-07-01 1994-03-08 Texas Instruments Incorporated Voice log-in using spoken name input
WO1993001664A1 (en) 1991-07-08 1993-01-21 Motorola, Inc. Remote voice control system
US5477451A (en) 1991-07-25 1995-12-19 International Business Machines Corp. Method and system for natural language translation
US5687077A (en) 1991-07-31 1997-11-11 Universal Dynamics Limited Method and apparatus for adaptive control
JPH05197389A (ja) 1991-08-13 1993-08-06 Toshiba Corp 音声認識装置
US5278980A (en) 1991-08-16 1994-01-11 Xerox Corporation Iterative technique for phrase query formation and an information retrieval system employing same
US5450522A (en) 1991-08-19 1995-09-12 U S West Advanced Technologies, Inc. Auditory model for parametrization of speech
JPH05197573A (ja) 1991-08-26 1993-08-06 Hewlett Packard Co <Hp> タスク指向パラダイムによるタスク管理システム
US5305421A (en) 1991-08-28 1994-04-19 Itt Corporation Low bit rate speech coding system and compression
US5326270A (en) 1991-08-29 1994-07-05 Introspect Technologies, Inc. System and method for assessing an individual's task-processing style
JP2970964B2 (ja) 1991-09-18 1999-11-02 株式会社日立製作所 監視装置
US5199077A (en) 1991-09-19 1993-03-30 Xerox Corporation Wordspotting for voice editing and indexing
DE4131387A1 (de) 1991-09-20 1993-03-25 Siemens Ag Verfahren zur erkennung von mustern in zeitvarianten messsignalen
US5305420A (en) 1991-09-25 1994-04-19 Nippon Hoso Kyokai Method and apparatus for hearing assistance with speech speed control function
US5488727A (en) 1991-09-30 1996-01-30 International Business Machines Corporation Methods to support multimethod function overloading with compile-time type checking
JP2662120B2 (ja) 1991-10-01 1997-10-08 インターナショナル・ビジネス・マシーンズ・コーポレイション 音声認識装置および音声認識用処理ユニット
JPH05108065A (ja) 1991-10-15 1993-04-30 Kawai Musical Instr Mfg Co Ltd 自動演奏装置
JP3155577B2 (ja) 1991-10-16 2001-04-09 キヤノン株式会社 文字認識方法及び装置
US5222146A (en) 1991-10-23 1993-06-22 International Business Machines Corporation Speech recognition apparatus having a speech coder outputting acoustic prototype ranks
US5371853A (en) 1991-10-28 1994-12-06 University Of Maryland At College Park Method and system for CELP speech coding and codebook for use therewith
US5757979A (en) 1991-10-30 1998-05-26 Fuji Electric Co., Ltd. Apparatus and method for nonlinear normalization of image
KR940002854B1 (ko) 1991-11-06 1994-04-04 한국전기통신공사 음성 합성시스팀의 음성단편 코딩 및 그의 피치조절 방법과 그의 유성음 합성장치
US5293254A (en) 1991-12-06 1994-03-08 Xerox Corporation Method for maintaining bit density while converting images in scale or resolution
US5386494A (en) 1991-12-06 1995-01-31 Apple Computer, Inc. Method and apparatus for controlling a speech recognition function using a cursor control device
JPH05165459A (ja) 1991-12-19 1993-07-02 Toshiba Corp 拡大表示方式
US5475796A (en) 1991-12-20 1995-12-12 Nec Corporation Pitch pattern generation apparatus
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US6081750A (en) 1991-12-23 2000-06-27 Hoffberg; Steven Mark Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US5502790A (en) 1991-12-24 1996-03-26 Oki Electric Industry Co., Ltd. Speech recognition method and system using triphones, diphones, and phonemes
US5349645A (en) 1991-12-31 1994-09-20 Matsushita Electric Industrial Co., Ltd. Word hypothesizer for continuous speech decoding using stressed-vowel centered bidirectional tree searches
JPH05188994A (ja) 1992-01-07 1993-07-30 Sony Corp 騒音抑圧装置
US5392419A (en) 1992-01-24 1995-02-21 Hewlett-Packard Company Language identification system and method for a peripheral unit
US5357431A (en) 1992-01-27 1994-10-18 Fujitsu Limited Character string retrieval system using index and unit for making the index
US5274818A (en) 1992-02-03 1993-12-28 Thinking Machines Corporation System and method for compiling a fine-grained array based source program onto a course-grained hardware
US5267345A (en) 1992-02-10 1993-11-30 International Business Machines Corporation Speech recognition apparatus which predicts word classes from context and words from word classes
US5621806A (en) 1992-02-14 1997-04-15 Texas Instruments Incorporated Apparatus and methods for determining the relative displacement of an object
US5483261A (en) 1992-02-14 1996-01-09 Itu Research, Inc. Graphical input controller and method with rear screen image detection
US5412735A (en) 1992-02-27 1995-05-02 Central Institute For The Deaf Adaptive noise reduction circuit for a sound reproduction system
ES2128390T3 (es) 1992-03-02 1999-05-16 At & T Corp Metodo de adiestramiento y dispositivo para reconocimiento de voz.
US6222525B1 (en) 1992-03-05 2001-04-24 Brad A. Armstrong Image controllers with sheet connected sensors
US5353376A (en) 1992-03-20 1994-10-04 Texas Instruments Incorporated System and method for improved speech acquisition for hands-free voice telecommunication in a noisy environment
US6055514A (en) 1992-03-20 2000-04-25 Wren; Stephen Corey System for marketing foods and services utilizing computerized centraland remote facilities
US5333266A (en) 1992-03-27 1994-07-26 International Business Machines Corporation Method and apparatus for message handling in computer systems
US5757358A (en) 1992-03-31 1998-05-26 The United States Of America As Represented By The Secretary Of The Navy Method and apparatus for enhancing computer-user selection of computer-displayed objects through dynamic selection area and constant visual feedback
US5283818A (en) 1992-03-31 1994-02-01 Klausner Patent Technologies Telephone answering device linking displayed data with recorded audio message
US5390236A (en) 1992-03-31 1995-02-14 Klausner Patent Technologies Telephone answering device linking displayed data with recorded audio message
US5440615A (en) 1992-03-31 1995-08-08 At&T Corp. Language selection for voice messaging system
CA2088080C (en) 1992-04-02 1997-10-07 Enrico Luigi Bocchieri Automatic speech recognizer
US5317647A (en) 1992-04-07 1994-05-31 Apple Computer, Inc. Constrained attribute grammars for syntactic pattern recognition
JPH05293126A (ja) 1992-04-15 1993-11-09 Matsushita Electric Works Ltd 歯科用フロス
US5412804A (en) 1992-04-30 1995-05-02 Oracle Corporation Extending the semantics of the outer join operator for un-nesting queries to a data base
US5745873A (en) 1992-05-01 1998-04-28 Massachusetts Institute Of Technology Speech recognition using final decision based on tentative decisions
US5369575A (en) 1992-05-15 1994-11-29 International Business Machines Corporation Constrained natural language interface for a computer system
US5377103A (en) 1992-05-15 1994-12-27 International Business Machines Corporation Constrained natural language interface for a computer that employs a browse function
DE69323874T2 (de) 1992-05-20 1999-12-02 Ind Res Ltd Verbesserungen in einem breitband-nachhallsystem
US5293584A (en) 1992-05-21 1994-03-08 International Business Machines Corporation Speech recognition system for natural language translation
US5477447A (en) 1992-05-27 1995-12-19 Apple Computer, Incorporated Method and apparatus for providing computer-implemented assistance
US5463696A (en) 1992-05-27 1995-10-31 Apple Computer, Inc. Recognition system and method for user inputs to a computer system
US5434777A (en) 1992-05-27 1995-07-18 Apple Computer, Inc. Method and apparatus for processing natural language
US5390281A (en) 1992-05-27 1995-02-14 Apple Computer, Inc. Method and apparatus for deducing user intent and providing computer implemented services
US5734789A (en) 1992-06-01 1998-03-31 Hughes Electronics Voiced, unvoiced or noise modes in a CELP vocoder
JP2795058B2 (ja) 1992-06-03 1998-09-10 松下電器産業株式会社 時系列信号処理装置
US5488204A (en) 1992-06-08 1996-01-30 Synaptics, Incorporated Paintbrush stylus for capacitive touch sensor pad
US5880411A (en) 1992-06-08 1999-03-09 Synaptics, Incorporated Object position detector with edge motion feature and gesture recognition
US5543588A (en) 1992-06-08 1996-08-06 Synaptics, Incorporated Touch pad driven handheld computing device
US5502774A (en) 1992-06-09 1996-03-26 International Business Machines Corporation Automatic recognition of a consistent message using multiple complimentary sources of information
AU4013693A (en) 1992-06-16 1993-12-23 Honeywell Inc. A method for utilizing a low resolution touch screen system in a high resolution graphics environment
JPH064093A (ja) 1992-06-18 1994-01-14 Matsushita Electric Ind Co Ltd Hmm作成装置、hmm記憶装置、尤度計算装置及び、認識装置
US5333275A (en) 1992-06-23 1994-07-26 Wheatley Barbara J System and method for time aligning speech
US5325297A (en) 1992-06-25 1994-06-28 System Of Multiple-Colored Images For Internationally Listed Estates, Inc. Computer implemented method and system for storing and retrieving textual data and compressed image data
JPH0619965A (ja) 1992-07-01 1994-01-28 Canon Inc 自然言語処理装置
US5303308A (en) 1992-07-07 1994-04-12 Gn Netcom A/S Audio frequency signal compressing system
JP3230319B2 (ja) 1992-07-09 2001-11-19 ソニー株式会社 音響再生装置
US5625554A (en) 1992-07-20 1997-04-29 Xerox Corporation Finite-state transduction of related word forms for text indexing and retrieval
US5325462A (en) 1992-08-03 1994-06-28 International Business Machines Corporation System and method for speech synthesis employing improved formant composition
US5999908A (en) 1992-08-06 1999-12-07 Abelow; Daniel H. Customer-based product design module
JPH0669954A (ja) 1992-08-18 1994-03-11 Fujitsu Commun Syst Ltd メッセージ廃棄通達方式
GB9220404D0 (en) 1992-08-20 1992-11-11 Nat Security Agency Method of identifying,retrieving and sorting documents
US5412806A (en) 1992-08-20 1995-05-02 Hewlett-Packard Company Calibration of logical cost formulae for queries in a heterogeneous DBMS using synthetic database
US5305768A (en) 1992-08-24 1994-04-26 Product Development (Zgs) Ltd. Dental flosser units and method of making same
DE4229577A1 (de) 1992-09-04 1994-03-10 Daimler Benz Ag Verfahren zur Spracherkennung mit dem eine Anpassung von Mikrofon- und Sprachcharakteristiken erreicht wird
US5425108A (en) 1992-09-04 1995-06-13 Industrial Technology Research Institute Mobile type of automatic identification system for a car plate
US5333236A (en) 1992-09-10 1994-07-26 International Business Machines Corporation Speech recognizer having a speech coder for an acoustic match based on context-dependent speech-transition acoustic models
US5982352A (en) 1992-09-18 1999-11-09 Pryor; Timothy R. Method for providing human input to a computer
US5384893A (en) 1992-09-23 1995-01-24 Emerson & Stern Associates, Inc. Method and apparatus for speech synthesis based on prosodic analysis
FR2696036B1 (fr) 1992-09-24 1994-10-14 France Telecom Procédé de mesure de ressemblance entre échantillons sonores et dispositif de mise en Óoeuvre de ce procédé.
JPH0772840B2 (ja) 1992-09-29 1995-08-02 日本アイ・ビー・エム株式会社 音声モデルの構成方法、音声認識方法、音声認識装置及び音声モデルの訓練方法
JP2779886B2 (ja) 1992-10-05 1998-07-23 日本電信電話株式会社 広帯域音声信号復元方法
CA2105034C (en) 1992-10-09 1997-12-30 Biing-Hwang Juang Speaker verification with cohort normalized scoring
JP2851977B2 (ja) 1992-10-14 1999-01-27 シャープ株式会社 再生装置
US5758313A (en) 1992-10-16 1998-05-26 Mobile Information Systems, Inc. Method and apparatus for tracking vehicle location
US5353374A (en) 1992-10-19 1994-10-04 Loral Aerospace Corporation Low bit rate voice transmission for use in a noisy environment
US5636325A (en) 1992-11-13 1997-06-03 International Business Machines Corporation Speech synthesis and analysis of dialects
US6092043A (en) 1992-11-13 2000-07-18 Dragon Systems, Inc. Apparatuses and method for training and operating speech recognition systems
US5850627A (en) 1992-11-13 1998-12-15 Dragon Systems, Inc. Apparatuses and methods for training and operating speech recognition systems
EP0598598B1 (en) 1992-11-18 2000-02-02 Canon Information Systems, Inc. Text-to-speech processor, and parser for use in such a processor
US5455888A (en) 1992-12-04 1995-10-03 Northern Telecom Limited Speech bandwidth extension method and apparatus
US7835989B1 (en) 1992-12-09 2010-11-16 Discovery Communications, Inc. Electronic book alternative delivery systems
US8073695B1 (en) 1992-12-09 2011-12-06 Adrea, LLC Electronic book with voice emulation features
US5465401A (en) 1992-12-15 1995-11-07 Texas Instruments Incorporated Communication system and methods for enhanced information transfer
US5335276A (en) 1992-12-16 1994-08-02 Texas Instruments Incorporated Communication system and methods for enhanced information transfer
WO1994014270A1 (en) 1992-12-17 1994-06-23 Bell Atlantic Network Services, Inc. Mechanized directory assistance
US5561444A (en) 1992-12-21 1996-10-01 Apple Computer, Inc. Method and apparatus for providing visual feedback during manipulation of text on a computer screen
US5533182A (en) 1992-12-22 1996-07-02 International Business Machines Corporation Aural position indicating mechanism for viewable objects
US5412756A (en) 1992-12-22 1995-05-02 Mitsubishi Denki Kabushiki Kaisha Artificial intelligence software shell for plant operation simulation
WO1994015286A1 (en) 1992-12-23 1994-07-07 Taligent, Inc. Object oriented framework system
US5373566A (en) 1992-12-24 1994-12-13 Motorola, Inc. Neural network-based diacritical marker recognition system and method
FR2700055B1 (fr) 1992-12-30 1995-01-27 Sextant Avionique Procédé de débruitage vectoriel de la parole et dispositif de mise en Óoeuvre.
US5613036A (en) 1992-12-31 1997-03-18 Apple Computer, Inc. Dynamic categories for a speech recognition system
DE4397100T1 (de) 1992-12-31 1995-11-23 Apple Computer Rekursive Grammatik mit endlicher Zustandsanzahl
US5390279A (en) 1992-12-31 1995-02-14 Apple Computer, Inc. Partitioning speech rules by context for speech recognition
US5463725A (en) 1992-12-31 1995-10-31 International Business Machines Corp. Data processing system graphical user interface which emulates printed material
US6311157B1 (en) 1992-12-31 2001-10-30 Apple Computer, Inc. Assigning meanings to utterances in a speech recognition system
US5384892A (en) 1992-12-31 1995-01-24 Apple Computer, Inc. Dynamic language model for speech recognition
US5734791A (en) 1992-12-31 1998-03-31 Apple Computer, Inc. Rapid tree-based method for vector quantization
US5335011A (en) 1993-01-12 1994-08-02 Bell Communications Research, Inc. Sound localization system for teleconferencing using self-steering microphone arrays
JP2752309B2 (ja) 1993-01-19 1998-05-18 松下電器産業株式会社 表示装置
US5878396A (en) 1993-01-21 1999-03-02 Apple Computer, Inc. Method and apparatus for synthetic speech in facial animation
US5490234A (en) 1993-01-21 1996-02-06 Apple Computer, Inc. Waveform blending technique for text-to-speech system
US6122616A (en) 1993-01-21 2000-09-19 Apple Computer, Inc. Method and apparatus for diphone aliasing
US5642466A (en) 1993-01-21 1997-06-24 Apple Computer, Inc. Intonation adjustment in text-to-speech systems
DE69418908T2 (de) 1993-01-26 2000-01-20 Sun Microsystems Inc Verfahren und Gerät zum Informationsanschauen in einer Rechnerdatenbank
US5491758A (en) 1993-01-27 1996-02-13 International Business Machines Corporation Automatic handwriting recognition using both static and dynamic parameters
US5890122A (en) 1993-02-08 1999-03-30 Microsoft Corporation Voice-controlled computer simulateously displaying application menu and list of available commands
US5449368A (en) 1993-02-18 1995-09-12 Kuzmak; Lubomyr I. Laparoscopic adjustable gastric banding device and method for implantation and removal thereof
US5864844A (en) 1993-02-18 1999-01-26 Apple Computer, Inc. System and method for enhancing a user interface with a computer based training tool
US5473728A (en) 1993-02-24 1995-12-05 The United States Of America As Represented By The Secretary Of The Navy Training of homoscedastic hidden Markov models for automatic speech recognition
US5467425A (en) 1993-02-26 1995-11-14 International Business Machines Corporation Building scalable N-gram language models using maximum likelihood maximum entropy N-gram models
CA2091658A1 (en) 1993-03-15 1994-09-16 Matthew Lennig Method and apparatus for automation of directory assistance using speech recognition
CA2119397C (en) 1993-03-19 2007-10-02 Kim E.A. Silverman Improved automated voice synthesis employing enhanced prosodic treatment of text, spelling of text and rate of annunciation
JPH06274586A (ja) 1993-03-22 1994-09-30 Mitsubishi Electric Corp 表示方式
US6055531A (en) 1993-03-24 2000-04-25 Engate Incorporated Down-line transcription system having context sensitive searching capability
EP0626635B1 (en) 1993-05-24 2003-03-05 Sun Microsystems, Inc. Improved graphical user interface with method for interfacing to remote devices
DE69420955T2 (de) 1993-03-26 2000-07-13 British Telecomm Umwandlung von text in signalformen
US5536902A (en) 1993-04-14 1996-07-16 Yamaha Corporation Method of and apparatus for analyzing and synthesizing a sound by extracting and controlling a sound parameter
US5444823A (en) 1993-04-16 1995-08-22 Compaq Computer Corporation Intelligent search engine for associated on-line documentation having questionless case-based knowledge base
US6496793B1 (en) 1993-04-21 2002-12-17 Borland Software Corporation System and methods for national language support with embedded locale-specific language driver identifiers
CA2095452C (en) 1993-05-04 1997-03-18 Phillip J. Beaudet Dynamic hierarchical selection menu
US5428731A (en) 1993-05-10 1995-06-27 Apple Computer, Inc. Interactive multimedia delivery engine
US5860064A (en) 1993-05-13 1999-01-12 Apple Computer, Inc. Method and apparatus for automatic generation of vocal emotion in a synthetic text-to-speech system
US5652897A (en) 1993-05-24 1997-07-29 Unisys Corporation Robust language processor for segmenting and parsing-language containing multiple instructions
JPH06332617A (ja) 1993-05-25 1994-12-02 Pfu Ltd タッチパネル入力装置における表示方法
US5710922A (en) 1993-06-02 1998-01-20 Apple Computer, Inc. Method for synchronizing and archiving information between computer systems
WO1994029788A1 (en) 1993-06-15 1994-12-22 Honeywell Inc. A method for utilizing a low resolution touch screen system in a high resolution graphics environment
KR950001695A (ko) 1993-06-18 1995-01-03 오오가 노리오 디스크 재생장치
US5574823A (en) 1993-06-23 1996-11-12 Her Majesty The Queen In Right Of Canada As Represented By The Minister Of Communications Frequency selective harmonic coding
US5481739A (en) 1993-06-23 1996-01-02 Apple Computer, Inc. Vector quantization using thresholds
US5515475A (en) 1993-06-24 1996-05-07 Northern Telecom Limited Speech recognition method using a two-pass search
JPH0756933A (ja) 1993-06-24 1995-03-03 Xerox Corp 文書検索方法
JP2648558B2 (ja) 1993-06-29 1997-09-03 インターナショナル・ビジネス・マシーンズ・コーポレイション 情報選択装置及び情報選択方法
JP3685812B2 (ja) 1993-06-29 2005-08-24 ソニー株式会社 音声信号送受信装置
US5860075A (en) 1993-06-30 1999-01-12 Matsushita Electric Industrial Co., Ltd. Document data filing apparatus for generating visual attribute values of document data to be filed
US5973676A (en) 1993-06-30 1999-10-26 Kabushiki Kaisha Toshiba Input apparatus suitable for portable electronic device
WO1995002221A1 (en) 1993-07-07 1995-01-19 Inference Corporation Case-based organizing and querying of a database
JPH0736882A (ja) 1993-07-19 1995-02-07 Fujitsu Ltd 辞書検索装置
US5729704A (en) 1993-07-21 1998-03-17 Xerox Corporation User-directed method for operating on an object-based model data structure through a second contextual image
US5818182A (en) 1993-08-13 1998-10-06 Apple Computer, Inc. Removable media ejection system
US5495604A (en) 1993-08-25 1996-02-27 Asymetrix Corporation Method and apparatus for the modeling and query of database structures using natural language-like constructs
US5619694A (en) 1993-08-26 1997-04-08 Nec Corporation Case database storage/retrieval system
US5940811A (en) 1993-08-27 1999-08-17 Affinity Technology Group, Inc. Closed loop financial transaction method and apparatus
US5377258A (en) 1993-08-30 1994-12-27 National Medical Research Council Method and apparatus for an automated and interactive behavioral guidance system
US5627939A (en) 1993-09-03 1997-05-06 Microsoft Corporation Speech recognition system and method employing data compression
US5500937A (en) 1993-09-08 1996-03-19 Apple Computer, Inc. Method and apparatus for editing an inked object while simultaneously displaying its recognized object
US5568540A (en) 1993-09-13 1996-10-22 Active Voice Corporation Method and apparatus for selecting and playing a voice mail message
JPH0792993A (ja) 1993-09-20 1995-04-07 Fujitsu Ltd 音声認識装置
US5689641A (en) 1993-10-01 1997-11-18 Vicor, Inc. Multimedia collaboration system arrangement for routing compressed AV signal through a participant site without decompressing the AV signal
US6594688B2 (en) 1993-10-01 2003-07-15 Collaboration Properties, Inc. Dedicated echo canceler for a workstation
US5873056A (en) 1993-10-12 1999-02-16 The Syracuse University Natural language processing system for semantic vector representation which accounts for lexical ambiguity
JP2986345B2 (ja) 1993-10-18 1999-12-06 インターナショナル・ビジネス・マシーンズ・コーポレイション 音声記録指標化装置及び方法
US5708659A (en) 1993-10-20 1998-01-13 Lsi Logic Corporation Method for hashing in a packet network switching system
US6606101B1 (en) 1993-10-25 2003-08-12 Microsoft Corporation Information pointers
JP3697276B2 (ja) 1993-10-27 2005-09-21 ゼロックス コーポレイションXerox Corporation 画像ディスプレイ方法及び画像ディスプレイ装置並びに画像スケーリング方法
US5835732A (en) 1993-10-28 1998-11-10 Elonex Ip Holdings, Ltd. Miniature digital assistant having enhanced host communication
US5422656A (en) 1993-11-01 1995-06-06 International Business Machines Corp. Personal communicator having improved contrast control for a liquid crystal, touch sensitive display
JP2813728B2 (ja) 1993-11-01 1998-10-22 インターナショナル・ビジネス・マシーンズ・コーポレイション ズーム/パン機能付パーソナル通信機
US6243071B1 (en) 1993-11-03 2001-06-05 Apple Computer, Inc. Tool set for navigating through an electronic book
US5689616A (en) 1993-11-19 1997-11-18 Itt Corporation Automatic language identification/verification system
US5977950A (en) 1993-11-29 1999-11-02 Motorola, Inc. Manually controllable cursor in a virtual image
WO1995016950A1 (en) 1993-12-14 1995-06-22 Apple Computer, Inc. Method and apparatus for transferring data between a computer and a peripheral storage device
EP0658855A1 (en) 1993-12-16 1995-06-21 International Business Machines Corporation Method and system for integration of multimedia within an object oriented user interface
ZA9408426B (en) 1993-12-22 1995-06-30 Qualcomm Inc Distributed voice recognition system
US5578808A (en) 1993-12-22 1996-11-26 Datamark Services, Inc. Data card that can be used for transactions involving separate card issuers
US5384671A (en) 1993-12-23 1995-01-24 Quantum Corporation PRML sampled data channel synchronous servo detector
AU1554795A (en) 1993-12-23 1995-07-10 Diacom Technologies, Inc. Method and apparatus for implementing user feedback
JP2610114B2 (ja) 1993-12-30 1997-05-14 インターナショナル・ビジネス・マシーンズ・コーポレイション ポインティング・システム、コンピュータ・システムおよび力応答方法
EP0668558B1 (en) 1994-01-14 2002-04-17 Sun Microsystems, Inc. Method and apparatus for automating the localization of a computer program
US5621859A (en) 1994-01-19 1997-04-15 Bbn Corporation Single tree method for grammar directed, very large vocabulary speech recognizer
US5577164A (en) 1994-01-28 1996-11-19 Canon Kabushiki Kaisha Incorrect voice command recognition prevention and recovery processing method and apparatus
JP3454897B2 (ja) 1994-01-31 2003-10-06 株式会社日立製作所 音声対話システム
US5583993A (en) 1994-01-31 1996-12-10 Apple Computer, Inc. Method and apparatus for synchronously sharing data among computer
US6463176B1 (en) 1994-02-02 2002-10-08 Canon Kabushiki Kaisha Image recognition/reproduction method and apparatus
US5822720A (en) 1994-02-16 1998-10-13 Sentius Corporation System amd method for linking streams of multimedia data for reference material for display
US5577135A (en) 1994-03-01 1996-11-19 Apple Computer, Inc. Handwriting signal processing front-end for handwriting recognizers
AU684872B2 (en) 1994-03-10 1998-01-08 Cable And Wireless Plc Communication system
US6216102B1 (en) 1996-08-19 2001-04-10 International Business Machines Corporation Natural language determination using partial words
US5913185A (en) 1996-08-19 1999-06-15 International Business Machines Corporation Determining a natural language shift in a computer document
US5548507A (en) 1994-03-14 1996-08-20 International Business Machines Corporation Language identification process using coded language words
US5724406A (en) 1994-03-22 1998-03-03 Ericsson Messaging Systems, Inc. Call processing system and method for providing a variety of messaging services
US5584024A (en) 1994-03-24 1996-12-10 Software Ag Interactive database query system and method for prohibiting the selection of semantically incorrect query parameters
US5574824A (en) 1994-04-11 1996-11-12 The United States Of America As Represented By The Secretary Of The Air Force Analysis/synthesis-based microphone array speech enhancer with variable signal distortion
CH689410A5 (de) 1994-04-21 1999-03-31 Info Byte Ag Verfahren und Vorrichtung zur sprachgesteuerten Fernbedienung elektrischer Verbraucher.
GB9408042D0 (en) 1994-04-22 1994-06-15 Hewlett Packard Co Device for managing voice data
US5642519A (en) 1994-04-29 1997-06-24 Sun Microsystems, Inc. Speech interpreter with a unified grammer compiler
US5670985A (en) 1994-05-09 1997-09-23 Apple Computer, Inc. System and method for adjusting the output of an output device to compensate for ambient illumination
US5786803A (en) 1994-05-09 1998-07-28 Apple Computer, Inc. System and method for adjusting the illumination characteristics of an output device
US5828768A (en) 1994-05-11 1998-10-27 Noise Cancellation Technologies, Inc. Multimedia personal computer with active noise reduction and piezo speakers
US5596260A (en) 1994-05-13 1997-01-21 Apple Computer, Inc. Apparatus and method for determining a charge of a battery
JPH07320051A (ja) 1994-05-20 1995-12-08 Nippon Telegr & Teleph Corp <Ntt> 図形の任意領域拡大縮小表示方法及び図形の任意領域拡大縮小表示装置
JPH07320079A (ja) 1994-05-20 1995-12-08 Nippon Telegr & Teleph Corp <Ntt> 図形の部分拡大表示方法及び図形の部分拡大表示装置
KR100250509B1 (ko) 1994-05-25 2000-04-01 슈즈이 다께오 가변 전송속도 데이터 전송장치
JPH07325591A (ja) 1994-05-31 1995-12-12 Nec Corp 疑似音楽演奏環境生成方法および装置
US5535121A (en) 1994-06-01 1996-07-09 Mitsubishi Electric Research Laboratories, Inc. System for correcting auxiliary verb sequences
US5477448A (en) 1994-06-01 1995-12-19 Mitsubishi Electric Research Laboratories, Inc. System for correcting improper determiners
US5485372A (en) 1994-06-01 1996-01-16 Mitsubishi Electric Research Laboratories, Inc. System for underlying spelling recovery
US5521816A (en) 1994-06-01 1996-05-28 Mitsubishi Electric Research Laboratories, Inc. Word inflection correction system
US5537317A (en) 1994-06-01 1996-07-16 Mitsubishi Electric Research Laboratories Inc. System for correcting grammer based parts on speech probability
US5644656A (en) 1994-06-07 1997-07-01 Massachusetts Institute Of Technology Method and apparatus for automated text recognition
US5493677A (en) 1994-06-08 1996-02-20 Systems Research & Applications Corporation Generation, archiving, and retrieval of digital images with evoked suggestion-set captions and natural language interface
US5812697A (en) 1994-06-10 1998-09-22 Nippon Steel Corporation Method and apparatus for recognizing hand-written characters using a weighting dictionary
US5675819A (en) 1994-06-16 1997-10-07 Xerox Corporation Document information retrieval using global word co-occurrence patterns
JPH0869470A (ja) 1994-06-21 1996-03-12 Canon Inc 自然言語処理装置及びその方法
US5610812A (en) 1994-06-24 1997-03-11 Mitsubishi Electric Information Technology Center America, Inc. Contextual tagger utilizing deterministic finite state transducer
US5948040A (en) 1994-06-24 1999-09-07 Delorme Publishing Co. Travel reservation information and planning system
US5581484A (en) 1994-06-27 1996-12-03 Prince; Kevin R. Finger mounted computer input device
WO1996001453A1 (en) 1994-07-01 1996-01-18 Palm Computing, Inc. Multiple pen stroke character set and handwriting recognition system
US6442523B1 (en) 1994-07-22 2002-08-27 Steven H. Siegel Method for the auditory navigation of text
US5568536A (en) 1994-07-25 1996-10-22 International Business Machines Corporation Selective reconfiguration method and apparatus in a multiple application personal communications device
CN1059303C (zh) 1994-07-25 2000-12-06 国际商业机器公司 在个人通讯设备的显示屏幕上标记文本的装置和方法
JP3359745B2 (ja) 1994-07-29 2002-12-24 シャープ株式会社 動画像再生装置、及び動画像記録装置
US5907597A (en) 1994-08-05 1999-05-25 Smart Tone Authentication, Inc. Method and system for the secure communication of data
US5764852A (en) 1994-08-16 1998-06-09 International Business Machines Corporation Method and apparatus for speech recognition for distinguishing non-speech audio input events from speech audio input events
JP3586777B2 (ja) 1994-08-17 2004-11-10 富士通株式会社 音声入力装置
JP3565453B2 (ja) 1994-08-23 2004-09-15 キヤノン株式会社 画像入出力装置
US6137476A (en) 1994-08-25 2000-10-24 International Business Machines Corp. Data mouse
JPH0877173A (ja) 1994-09-01 1996-03-22 Fujitsu Ltd 文字列修正システムとその方法
US5559301A (en) 1994-09-15 1996-09-24 Korg, Inc. Touchscreen interface having pop-up variable adjustment displays for controllers and audio processing systems
DE69524340T2 (de) 1994-09-22 2002-08-14 Aisin Aw Co Berührungsanzeige für ein Informationseingabesystem
GB9419388D0 (en) 1994-09-26 1994-11-09 Canon Kk Speech analysis
JP3027321B2 (ja) 1994-09-27 2000-04-04 財団法人工業技術研究院 拘束のない手書き英数字のオンライン認識の方法及び装置
US5799268A (en) 1994-09-28 1998-08-25 Apple Computer, Inc. Method for extracting knowledge from online documentation and creating a glossary, index, help database or the like
US5682539A (en) 1994-09-29 1997-10-28 Conrad; Donovan Anticipated meaning natural language interface
US5678053A (en) 1994-09-29 1997-10-14 Mitsubishi Electric Information Technology Center America, Inc. Grammar checker interface
IT1266943B1 (it) 1994-09-29 1997-01-21 Cselt Centro Studi Lab Telecom Procedimento di sintesi vocale mediante concatenazione e parziale sovrapposizione di forme d'onda.
GB2293667B (en) 1994-09-30 1998-05-27 Intermation Limited Database management system
US5831615A (en) 1994-09-30 1998-11-03 Intel Corporation Method and apparatus for redrawing transparent windows
US5678039A (en) 1994-09-30 1997-10-14 Borland International, Inc. System and methods for translating software into localized versions
US5715468A (en) 1994-09-30 1998-02-03 Budzinski; Robert Lucius Memory system for storing and retrieving experience and knowledge with natural language
US5777614A (en) 1994-10-14 1998-07-07 Hitachi, Ltd. Editing support system including an interactive interface
US5737609A (en) 1994-10-18 1998-04-07 Marcam Corporation Method and apparatus for testing object-oriented programming constructs
AT502354T (de) 2000-01-13 2011-04-15 Digimarc Corp Authentifizierende metadaten und einbettung von metadaten in wasserzeichen von mediensignalen
US5661787A (en) 1994-10-27 1997-08-26 Pocock; Michael H. System for on-demand remote access to a self-generating audio recording, storage, indexing and transaction system
US5845255A (en) 1994-10-28 1998-12-01 Advanced Health Med-E-Systems Corporation Prescription management system
JPH08138321A (ja) 1994-11-11 1996-05-31 Pioneer Electron Corp ディスクプレーヤ
DE4440598C1 (de) 1994-11-14 1996-05-23 Siemens Ag Durch gesprochene Worte steuerbares Hypertext-Navigationssystem, Hypertext-Dokument für dieses Navigationssystem und Verfahren zur Erzeugung eines derartigen Dokuments
US5652884A (en) 1994-11-14 1997-07-29 Object Technology Licensing Corp. Method and apparatus for dynamic update of an existing object in an object editor
US5613122A (en) 1994-11-14 1997-03-18 Object Technology Licensing Corp. Object-oriented operating system
US5577241A (en) 1994-12-07 1996-11-19 Excite, Inc. Information retrieval system and method with implementation extensible query architecture
US5748974A (en) 1994-12-13 1998-05-05 International Business Machines Corporation Multimodal natural language interface for cross-application tasks
DE4445023A1 (de) 1994-12-16 1996-06-20 Thomson Brandt Gmbh Erschütterungsresistentes Abspielgerät mit verringertem Energieverbrauch
JPH08185265A (ja) 1994-12-28 1996-07-16 Fujitsu Ltd タッチパネル制御装置
US5682475A (en) 1994-12-30 1997-10-28 International Business Machines Corporation Method and system for variable password access
US5774859A (en) 1995-01-03 1998-06-30 Scientific-Atlanta, Inc. Information system having a speech interface
US5794050A (en) 1995-01-04 1998-08-11 Intelligent Text Processing, Inc. Natural language understanding system
US5835077A (en) 1995-01-13 1998-11-10 Remec, Inc., Computer control device
US5634084A (en) 1995-01-20 1997-05-27 Centigram Communications Corporation Abbreviation and acronym/initialism expansion procedures for a text to speech reader
SE505156C2 (sv) 1995-01-30 1997-07-07 Ericsson Telefon Ab L M Procedure for noise suppression by spectral subtraction
JPH08223281A (ja) 1995-02-10 1996-08-30 Kokusai Electric Co Ltd 携帯電話機
DE69637799D1 (de) 1995-02-13 2009-02-12 Intertrust Tech Corp Systeme und Verfahren zur gesicherten Transaktionsverwaltung und elektronischem Rechtsschutz
US5565888A (en) 1995-02-17 1996-10-15 International Business Machines Corporation Method and apparatus for improving visibility and selectability of icons
JPH08227341A (ja) 1995-02-22 1996-09-03 Mitsubishi Electric Corp ユーザインターフェース
US6009237A (en) 1995-02-24 1999-12-28 Hitachi Ltd. Optical disk and optical disk reproduction apparatus
US5748512A (en) 1995-02-28 1998-05-05 Microsoft Corporation Adjusting keyboard
US5543897A (en) 1995-03-07 1996-08-06 Eastman Kodak Company Reproduction apparatus having touch screen operator interface and auxiliary keyboard
US5701400A (en) 1995-03-08 1997-12-23 Amado; Carlos Armando Method and apparatus for applying if-then-else rules to data sets in a relational data base and generating from the results of application of said rules a database of diagnostics linked to said data sets to aid executive analysis of financial data
US5801702A (en) 1995-03-09 1998-09-01 Terrabyte Technology System and method for adding network links in a displayed hierarchy
US5564446A (en) 1995-03-27 1996-10-15 Wiltshire; Curtis B. Dental floss device and applicator assembly
US5749081A (en) 1995-04-06 1998-05-05 Firefly Network, Inc. System and method for recommending items to a user
MX9707759A (es) 1995-04-12 1997-11-29 British Telecomm SYSTESIS OF SPEECH IN THE FORM OF WAVES.
US5616876A (en) 1995-04-19 1997-04-01 Microsoft Corporation System and methods for selecting music on the basis of subjective content
US5943049A (en) 1995-04-27 1999-08-24 Casio Computer Co., Ltd. Image processor for displayed message, balloon, and character's face
US5642464A (en) 1995-05-03 1997-06-24 Northern Telecom Limited Methods and apparatus for noise conditioning in digital speech compression systems using linear predictive coding
US5812698A (en) 1995-05-12 1998-09-22 Synaptics, Inc. Handwriting recognition system and method
US5708822A (en) 1995-05-31 1998-01-13 Oracle Corporation Methods and apparatus for thematic parsing of discourse
US6070140A (en) 1995-06-05 2000-05-30 Tran; Bao Q. Speech recognizer
TW338815B (en) 1995-06-05 1998-08-21 Motorola Inc Method and apparatus for character recognition of handwritten input
US5920327A (en) 1995-06-06 1999-07-06 Microsoft Corporation Multiple resolution data display
US6268859B1 (en) 1995-06-06 2001-07-31 Apple Computer, Inc. Method and system for rendering overlapping opaque graphical objects in graphic imaging systems
US5664055A (en) 1995-06-07 1997-09-02 Lucent Technologies Inc. CS-ACELP speech compression system with adaptive pitch prediction filter gain based on a measure of periodicity
US5991441A (en) 1995-06-07 1999-11-23 Wang Laboratories, Inc. Real time handwriting recognition system
US6496182B1 (en) 1995-06-07 2002-12-17 Microsoft Corporation Method and system for providing touch-sensitive screens for the visually impaired
FI99072C (fi) 1995-06-08 1997-09-25 Nokia Telecommunications Oy Menetelmä toimitusvahvistusten antamiseksi puhelinverkossa suoritetuista sanomatoimituksista
JP3385146B2 (ja) 1995-06-13 2003-03-10 シャープ株式会社 会話文翻訳装置
EP0832481B1 (en) 1995-06-13 2002-04-03 BRITISH TELECOMMUNICATIONS public limited company Speech synthesis
US5710886A (en) 1995-06-16 1998-01-20 Sellectsoft, L.C. Electric couponing method and apparatus
JP3284832B2 (ja) 1995-06-22 2002-05-20 セイコーエプソン株式会社 音声認識対話処理方法および音声認識対話装置
US5828991A (en) 1995-06-30 1998-10-27 The Research Foundation Of The State University Of New York Sentence reconstruction using word ambiguity resolution
JPH0918585A (ja) 1995-07-03 1997-01-17 Matsushita Electric Ind Co Ltd ボイスメールシステム
JPH0916598A (ja) 1995-07-03 1997-01-17 Fujitsu Ltd エラー・パターンを用いた文字列修正システムおよび方法
US6038533A (en) 1995-07-07 2000-03-14 Lucent Technologies Inc. System and method for selecting training text
JPH0927000A (ja) 1995-07-13 1997-01-28 Matsushita Electric Ind Co Ltd スケジュール管理システム
US5684513A (en) 1995-07-17 1997-11-04 Decker; Mark Randall Electronic luminescence keyboard system for a portable device
US5760760A (en) 1995-07-17 1998-06-02 Dell Usa, L.P. Intelligent LCD brightness control system
US5949961A (en) 1995-07-19 1999-09-07 International Business Machines Corporation Word syllabification in speech synthesis system
US5999895A (en) 1995-07-24 1999-12-07 Forest; Donald K. Sound operated menu method and apparatus
US5818142A (en) 1995-07-27 1998-10-06 Black & Decker Inc. Motor pack armature support with brush holder assembly
KR0183726B1 (ko) 1995-07-31 1999-04-15 윤종용 씨디 오케이와 비디오 씨디로부터 신호를 재생하는 씨디 재생장치
US5864815A (en) 1995-07-31 1999-01-26 Microsoft Corporation Method and system for displaying speech recognition status information in a visual notification area
US5724985A (en) 1995-08-02 1998-03-10 Pacesetter, Inc. User interface for an implantable medical device using an integrated digitizer display screen
US5745843A (en) 1995-08-04 1998-04-28 Motorola, Inc. Selective call receivers with integer divide synthesizers for achieving fast-lock time
JPH0955792A (ja) 1995-08-11 1997-02-25 Ricoh Co Ltd ボイスメールシステム
US6026388A (en) 1995-08-16 2000-02-15 Textwise, Llc User interface and other enhancements for natural language information retrieval system and method
JP3697748B2 (ja) 1995-08-21 2005-09-21 セイコーエプソン株式会社 端末、音声認識装置
US5835721A (en) 1995-08-21 1998-11-10 Apple Computer, Inc. Method and system for data transmission over a network link between computers with the ability to withstand temporary interruptions
WO1997008685A2 (en) 1995-08-28 1997-03-06 Philips Electronics N.V. Method and system for pattern recognition based on dynamically constructing a subset of reference vectors
US5586540A (en) 1995-08-29 1996-12-24 Marzec; Steven E. Multiple stage supercharging system
KR19990037724A (ko) 1995-09-02 1999-05-25 헨리 에이지마 인사카드 및 그 유사카드
US5570324A (en) 1995-09-06 1996-10-29 Northrop Grumman Corporation Underwater sound localization system
US5712957A (en) 1995-09-08 1998-01-27 Carnegie Mellon University Locating and correcting erroneously recognized portions of utterances by rescoring based on two n-best lists
US5855000A (en) 1995-09-08 1998-12-29 Carnegie Mellon University Method and apparatus for correcting and repairing machine-transcribed input using independent or cross-modal secondary input
DE19533541C1 (de) 1995-09-11 1997-03-27 Daimler Benz Aerospace Ag Verfahren zur automatischen Steuerung eines oder mehrerer Geräte durch Sprachkommandos oder per Sprachdialog im Echtzeitbetrieb und Vorrichtung zum Ausführen des Verfahrens
TR199800475T1 (xx) 1995-09-14 1998-06-22 Ericsson Inc. Gürültülü çevre şartlarında konuşmanın anlaşılabilirliğinin arttırılması amacıyla ses sinyallerinin uyarlamalı olarak filtreden geçirilmesi için bir sistem.
US5790978A (en) 1995-09-15 1998-08-04 Lucent Technologies, Inc. System and method for determining pitch contours
US5737734A (en) 1995-09-15 1998-04-07 Infonautics Corporation Query word relevance adjustment in a search of an information retrieval system
JPH0981320A (ja) 1995-09-20 1997-03-28 Matsushita Electric Ind Co Ltd ペン入力式選択入力装置及びその方法
US5852801A (en) 1995-10-04 1998-12-22 Apple Computer, Inc. Method and apparatus for automatically invoking a new word module for unrecognized user input
US5761687A (en) 1995-10-04 1998-06-02 Apple Computer, Inc. Character-based correction arrangement with correction propagation
US5771276A (en) 1995-10-10 1998-06-23 Ast Research, Inc. Voice templates for interactive voice mail and voice response system
US5884323A (en) 1995-10-13 1999-03-16 3Com Corporation Extendible method and apparatus for synchronizing files on two different computer systems
US5833134A (en) 1995-10-27 1998-11-10 Ho; Tienhou Joseph Wireless remote temperature sensing thermostat with adjustable register
US5758083A (en) 1995-10-30 1998-05-26 Sun Microsystems, Inc. Method and system for sharing information between network managers
US5806021A (en) 1995-10-30 1998-09-08 International Business Machines Corporation Automatic segmentation of continuous text using statistical approaches
US6560707B2 (en) 1995-11-06 2003-05-06 Xerox Corporation Multimedia coordination system
US5799276A (en) 1995-11-07 1998-08-25 Accent Incorporated Knowledge-based speech recognition system and methods having frame length computed based upon estimated pitch period of vocalic intervals
JPH09146708A (ja) 1995-11-09 1997-06-06 Internatl Business Mach Corp <Ibm> タッチパネルの駆動方法及びタッチ入力方法
JP3152871B2 (ja) 1995-11-10 2001-04-03 富士通株式会社 ラティスをキーとした検索を行う辞書検索装置および方法
US5799279A (en) 1995-11-13 1998-08-25 Dragon Systems, Inc. Continuous speech recognition of text and commands
US5794237A (en) 1995-11-13 1998-08-11 International Business Machines Corporation System and method for improving problem source identification in computer systems employing relevance feedback and statistical source ranking
US5802526A (en) 1995-11-15 1998-09-01 Microsoft Corporation System and method for graphically displaying and navigating through an interactive voice response menu
US5801692A (en) 1995-11-30 1998-09-01 Microsoft Corporation Audio-visual user interface controls
US6240384B1 (en) 1995-12-04 2001-05-29 Kabushiki Kaisha Toshiba Speech synthesis method
US5987401A (en) 1995-12-08 1999-11-16 Apple Computer, Inc. Language translation for real-time text-based conversations
US5697793A (en) 1995-12-14 1997-12-16 Motorola, Inc. Electronic book and method of displaying at least one reading metric therefor
US5893132A (en) 1995-12-14 1999-04-06 Motorola, Inc. Method and system for encoding a book for reading using an electronic book
US5880731A (en) 1995-12-14 1999-03-09 Microsoft Corporation Use of avatars with automatic gesturing and bounded interaction in on-line chat session
US5761640A (en) 1995-12-18 1998-06-02 Nynex Science & Technology, Inc. Name and address processor
US5706442A (en) 1995-12-20 1998-01-06 Block Financial Corporation System for on-line financial services using distributed objects
JPH09179719A (ja) 1995-12-26 1997-07-11 Nec Corp 音声合成装置
US5859636A (en) 1995-12-27 1999-01-12 Intel Corporation Recognition of and operation on text data
US5825352A (en) 1996-01-04 1998-10-20 Logitech, Inc. Multiple fingers contact sensing method for emulating mouse buttons and mouse operations on a touch sensor pad
US5787422A (en) 1996-01-11 1998-07-28 Xerox Corporation Method and apparatus for information accesss employing overlapping clusters
US6119101A (en) 1996-01-17 2000-09-12 Personal Agents, Inc. Intelligent agents for electronic commerce
AU1836297A (en) 1996-01-17 1997-08-11 Personal Agents, Inc. Intelligent agents for electronic commerce
US6125356A (en) 1996-01-18 2000-09-26 Rosefaire Development, Ltd. Portable sales presentation system with selective scripted seller prompts
US6011585A (en) 1996-01-19 2000-01-04 Apple Computer, Inc. Apparatus and method for rotating the display orientation of a captured image
JPH09265731A (ja) 1996-01-24 1997-10-07 Sony Corp 音声再生装置及び方法、音声録音装置及び方法、音声録音再生システム、音声データの転送方法、情報受信装置、記録媒体
US5987404A (en) 1996-01-29 1999-11-16 International Business Machines Corporation Statistical natural language understanding using hidden clumpings
SE506034C2 (sv) 1996-02-01 1997-11-03 Ericsson Telefon Ab L M Method and apparatus for improving parameters representing noise speech
US5946647A (en) 1996-02-01 1999-08-31 Apple Computer, Inc. System and method for performing an action on a structure in computer-generated data
US5729694A (en) 1996-02-06 1998-03-17 The Regents Of The University Of California Speech coding, reconstruction and recognition using acoustics and electromagnetic waves
US6535610B1 (en) 1996-02-07 2003-03-18 Morgan Stanley & Co. Incorporated Directional microphone utilizing spaced apart omni-directional microphones
US20050182765A1 (en) 1996-02-09 2005-08-18 Technology Innovations, Llc Techniques for controlling distribution of information from a secure domain
US6076088A (en) 1996-02-09 2000-06-13 Paik; Woojin Information extraction system and method using concept relation concept (CRC) triples
US5864868A (en) 1996-02-13 1999-01-26 Contois; David C. Computer control system and user interface for media playing devices
US5737487A (en) 1996-02-13 1998-04-07 Apple Computer, Inc. Speaker adaptation based on lateral tying for large-vocabulary continuous speech recognition
US5835893A (en) 1996-02-15 1998-11-10 Atr Interpreting Telecommunications Research Labs Class-based word clustering for speech recognition using a three-level balanced hierarchical similarity
FI102343B1 (fi) 1996-02-20 1998-11-13 Finland Telecom Oy Järjestelmä ja menetelmä datan lähettämiseksi
GB2310559B (en) 1996-02-23 2000-09-20 Nokia Mobile Phones Ltd Audio output apparatus for a mobile communication device
US5864855A (en) 1996-02-26 1999-01-26 The United States Of America As Represented By The Secretary Of The Army Parallel document clustering process
KR100422263B1 (ko) 1996-02-27 2004-07-30 코닌클리케 필립스 일렉트로닉스 엔.브이. 음성을자동으로분할하기위한방법및장치
US5842165A (en) 1996-02-29 1998-11-24 Nynex Science & Technology, Inc. Methods and apparatus for generating and using garbage models for speaker dependent speech recognition purposes
US5895448A (en) 1996-02-29 1999-04-20 Nynex Science And Technology, Inc. Methods and apparatus for generating and using speaker independent garbage models for speaker dependent speech recognition purpose
US6226533B1 (en) 1996-02-29 2001-05-01 Sony Corporation Voice messaging transceiver message duration indicator and method
US6069622A (en) 1996-03-08 2000-05-30 Microsoft Corporation Method and system for generating comic panels
GB9605216D0 (en) 1996-03-12 1996-05-15 Ncr Int Inc Display system and method of moving a cursor of the display system
JP3160707B2 (ja) 1996-03-22 2001-04-25 富士通株式会社 データ送受信装置、データ送信装置及びデータ受信装置
US5937163A (en) 1996-03-26 1999-08-10 Industrial Technology Research Institute Method and system at a host node for hierarchically organizing the links visited by a world wide web browser executing at the host node
CA2247006C (en) 1996-03-29 2002-09-17 British Telecommunications Public Limited Company Speech processing
JPH09265457A (ja) 1996-03-29 1997-10-07 Hitachi Ltd オンライン会話システム
US5901287A (en) 1996-04-01 1999-05-04 The Sabre Group Inc. Information aggregation and synthesization system
US5790671A (en) 1996-04-04 1998-08-04 Ericsson Inc. Method for automatically adjusting audio response for improved intelligibility
US5867799A (en) 1996-04-04 1999-02-02 Lang; Andrew K. Information system and method for filtering a massive flow of information entities to meet user information classification needs
US5963964A (en) 1996-04-05 1999-10-05 Sun Microsystems, Inc. Method, apparatus and program product for updating visual bookmarks
US6173194B1 (en) 1996-04-15 2001-01-09 Nokia Mobile Phones Limited Mobile terminal having improved user interface
US5987140A (en) 1996-04-26 1999-11-16 Verifone, Inc. System, method and article of manufacture for secure network electronic payment and credit collection
US5963924A (en) 1996-04-26 1999-10-05 Verifone, Inc. System, method and article of manufacture for the use of payment instrument holders and payment instruments in network electronic commerce
US5913193A (en) 1996-04-30 1999-06-15 Microsoft Corporation Method and system of runtime acoustic unit selection for speech synthesis
US5857184A (en) 1996-05-03 1999-01-05 Walden Media, Inc. Language and method for creating, organizing, and retrieving data from a database
US5828999A (en) 1996-05-06 1998-10-27 Apple Computer, Inc. Method and system for deriving a large-span semantic language model for large-vocabulary recognition systems
FR2748342B1 (fr) 1996-05-06 1998-07-17 France Telecom Procede et dispositif de filtrage par egalisation d'un signal de parole, mettant en oeuvre un modele statistique de ce signal
US5826261A (en) 1996-05-10 1998-10-20 Spencer; Graham System and method for querying multiple, distributed databases by selective sharing of local relative significance information for terms related to the query
US6493006B1 (en) 1996-05-10 2002-12-10 Apple Computer, Inc. Graphical user interface having contextual menus
US5917487A (en) 1996-05-10 1999-06-29 Apple Computer, Inc. Data-driven method and system for drawing user interface objects
US6366883B1 (en) 1996-05-15 2002-04-02 Atr Interpreting Telecommunications Concatenation of speech segments by use of a speech synthesizer
US5758314A (en) 1996-05-21 1998-05-26 Sybase, Inc. Client/server database system with methods for improved soundex processing in a heterogeneous language environment
US5727950A (en) 1996-05-22 1998-03-17 Netsage Corporation Agent based instruction system and method
US6556712B1 (en) 1996-05-23 2003-04-29 Apple Computer, Inc. Methods and apparatus for handwriting recognition
US5848386A (en) 1996-05-28 1998-12-08 Ricoh Company, Ltd. Method and system for translating documents using different translation resources for different portions of the documents
US5850480A (en) 1996-05-30 1998-12-15 Scan-Optics, Inc. OCR error correction methods and apparatus utilizing contextual comparison
US5966533A (en) 1996-06-11 1999-10-12 Excite, Inc. Method and system for dynamically synthesizing a computer program by differentially resolving atoms based on user context data
US5835079A (en) 1996-06-13 1998-11-10 International Business Machines Corporation Virtual pointing device for touchscreens
US5915249A (en) 1996-06-14 1999-06-22 Excite, Inc. System and method for accelerated query evaluation of very large full-text databases
US5987132A (en) 1996-06-17 1999-11-16 Verifone, Inc. System, method and article of manufacture for conditionally accepting a payment method utilizing an extensible, flexible architecture
US6952799B2 (en) 1996-06-17 2005-10-04 British Telecommunications User interface for network browser including pre-processor for links embedded in hypermedia documents
WO1997049044A1 (en) 1996-06-17 1997-12-24 British Telecommunications Public Limited Company Network based access system
US5832433A (en) 1996-06-24 1998-11-03 Nynex Science And Technology, Inc. Speech synthesis method for operator assistance telecommunications calls comprising a plurality of text-to-speech (TTS) devices
US5758024A (en) 1996-06-25 1998-05-26 Microsoft Corporation Method and system for encoding pronunciation prefix trees
JP2973944B2 (ja) 1996-06-26 1999-11-08 富士ゼロックス株式会社 文書処理装置および文書処理方法
US5912952A (en) 1996-06-27 1999-06-15 At&T Corp Voice response unit with a visual menu interface
US5963893A (en) 1996-06-28 1999-10-05 Microsoft Corporation Identification of words in Japanese text by a computer system
US5825881A (en) 1996-06-28 1998-10-20 Allsoft Distributing Inc. Public network merchandising system
US5802466A (en) 1996-06-28 1998-09-01 Mci Communications Corporation Personal communication device voice mail notification apparatus and method
US6070147A (en) 1996-07-02 2000-05-30 Tecmark Services, Inc. Customer identification and marketing analysis systems
US6054990A (en) 1996-07-05 2000-04-25 Tran; Bao Q. Computer system with handwriting annotation
US5915238A (en) 1996-07-16 1999-06-22 Tjaden; Gary S. Personalized audio information delivery system
JP3700266B2 (ja) 1996-07-18 2005-09-28 株式会社日立製作所 音声対話制御方法および音声対話システム
US5987440A (en) 1996-07-22 1999-11-16 Cyva Research Corporation Personal information security and exchange tool
US5862223A (en) 1996-07-24 1999-01-19 Walker Asset Management Limited Partnership Method and apparatus for a cryptographically-assisted commercial network system designed to facilitate and support expert-based commerce
JP2856390B2 (ja) 1996-07-26 1999-02-10 株式会社日立製作所 情報記録媒体及びそれを用いた記録再生方法
JPH1078952A (ja) 1996-07-29 1998-03-24 Internatl Business Mach Corp <Ibm> 音声合成方法、音声合成装置、ハイパーテキストの制御方法及び制御装置
US6453281B1 (en) 1996-07-30 2002-09-17 Vxi Corporation Portable audio database device with icon-based graphical user-interface
KR100260760B1 (ko) 1996-07-31 2000-07-01 모리 하루오 터치패널을 병설한 정보표시장치
US5818924A (en) 1996-08-02 1998-10-06 Siemens Business Communication Systems, Inc. Combined keypad and protective cover
US5797008A (en) 1996-08-09 1998-08-18 Digital Equipment Corporation Memory storing an integrated index of database records
US5765168A (en) 1996-08-09 1998-06-09 Digital Equipment Corporation Method for maintaining an index
US5818451A (en) 1996-08-12 1998-10-06 International Busienss Machines Corporation Computer programmed soft keyboard system, method and apparatus having user input displacement
US7113958B1 (en) 1996-08-12 2006-09-26 Battelle Memorial Institute Three-dimensional display of document set
US6298174B1 (en) 1996-08-12 2001-10-02 Battelle Memorial Institute Three-dimensional display of document set
US5822730A (en) 1996-08-22 1998-10-13 Dragon Systems, Inc. Lexical tree pre-filtering in speech recognition
US5950123A (en) 1996-08-26 1999-09-07 Telefonaktiebolaget L M Cellular telephone network support of audible information delivery to visually impaired subscribers
KR100627378B1 (ko) 1996-08-28 2006-09-22 임베디드 테크놀로지스, 엘엘씨 터치 스크린 장치 및 방법
US5999169A (en) 1996-08-30 1999-12-07 International Business Machines Corporation Computer graphical user interface method and system for supporting multiple two-dimensional movement inputs
US5794207A (en) 1996-09-04 1998-08-11 Walker Asset Management Limited Partnership Method and apparatus for a cryptographically assisted commercial network system designed to facilitate buyer-driven conditional purchase offers
US5850629A (en) 1996-09-09 1998-12-15 Matsushita Electric Industrial Co., Ltd. User interface controller for text-to-speech synthesizer
US5745116A (en) 1996-09-09 1998-04-28 Motorola, Inc. Intuitive gesture-based graphical user interface
US5878393A (en) 1996-09-09 1999-03-02 Matsushita Electric Industrial Co., Ltd. High quality concatenative reading system
EP0829811A1 (en) 1996-09-11 1998-03-18 Nippon Telegraph And Telephone Corporation Method and system for information retrieval
US5973612A (en) 1996-09-19 1999-10-26 Microsoft Corporation Flexible object notification
JP3359236B2 (ja) 1996-09-25 2002-12-24 株式会社アクセス インターネットユニットおよびインターネットテレビ
JP3212618B2 (ja) 1996-09-26 2001-09-25 三菱電機株式会社 対話処理装置
US6181935B1 (en) 1996-09-27 2001-01-30 Software.Com, Inc. Mobility extended telephone application programming interface and method of use
US5876396A (en) 1996-09-27 1999-03-02 Baxter International Inc. System method and container for holding and delivering a solution
JPH10105556A (ja) 1996-09-27 1998-04-24 Sharp Corp 電子式辞書および情報表示方法
US5794182A (en) 1996-09-30 1998-08-11 Apple Computer, Inc. Linear predictive speech encoding systems with efficient combination pitch coefficients computation
US6208932B1 (en) 1996-09-30 2001-03-27 Mazda Motor Corporation Navigation apparatus
US6199076B1 (en) 1996-10-02 2001-03-06 James Logan Audio program player including a dynamic program selection controller
US5721827A (en) 1996-10-02 1998-02-24 James Logan System for electrically distributing personalized information
US5732216A (en) 1996-10-02 1998-03-24 Internet Angles, Inc. Audio message exchange system
US20070026852A1 (en) 1996-10-02 2007-02-01 James Logan Multimedia telephone system
US5913203A (en) 1996-10-03 1999-06-15 Jaesent Inc. System and method for pseudo cash transactions
US5930769A (en) 1996-10-07 1999-07-27 Rose; Andrea System and method for fashion shopping
US5890172A (en) 1996-10-08 1999-03-30 Tenretni Dynamics, Inc. Method and apparatus for retrieving data from a network using location identifiers
WO1998030963A1 (en) 1997-01-14 1998-07-16 Benjamin Slotznick System for calculating occasion dates and converting between different calendar systems, and intelligent agent for using same
US6073033A (en) 1996-11-01 2000-06-06 Telxon Corporation Portable telephone with integrated heads-up display and data terminal functions
DE69626285T2 (de) 1996-11-04 2004-01-22 Molex Inc., Lisle Elektrischer Verbinder für Telefonhandapparat
US6233318B1 (en) 1996-11-05 2001-05-15 Comverse Network Systems, Inc. System for accessing multimedia mailboxes and messages over the internet and via telephone
US5873064A (en) 1996-11-08 1999-02-16 International Business Machines Corporation Multi-action voice macro method
US5956667A (en) 1996-11-08 1999-09-21 Research Foundation Of State University Of New York System and methods for frame-based augmentative communication
US5915001A (en) 1996-11-14 1999-06-22 Vois Corporation System and method for providing and using universally accessible voice and speech data files
US5918303A (en) 1996-11-25 1999-06-29 Yamaha Corporation Performance setting data selecting apparatus
US5836771A (en) 1996-12-02 1998-11-17 Ho; Chi Fai Learning method and system based on questioning
US6282511B1 (en) 1996-12-04 2001-08-28 At&T Voiced interface with hyperlinked information
US5875427A (en) 1996-12-04 1999-02-23 Justsystem Corp. Voice-generating/document making apparatus voice-generating/document making method and computer-readable medium for storing therein a program having a computer execute voice-generating/document making sequence
US5889888A (en) 1996-12-05 1999-03-30 3Com Corporation Method and apparatus for immediate response handwriting recognition system that handles multiple character sets
US6665639B2 (en) 1996-12-06 2003-12-16 Sensory, Inc. Speech recognition in consumer electronic products
US6078914A (en) 1996-12-09 2000-06-20 Open Text Corporation Natural language meta-search system and method
JP3349905B2 (ja) 1996-12-10 2002-11-25 松下電器産業株式会社 音声合成方法および装置
US6023676A (en) 1996-12-12 2000-02-08 Dspc Israel, Ltd. Keyword recognition system and method
US20140098247A1 (en) 1999-06-04 2014-04-10 Ip Holdings, Inc. Home Automation And Smart Home Control Using Mobile Devices And Wireless Enabled Electrical Switches
US5839106A (en) 1996-12-17 1998-11-17 Apple Computer, Inc. Large-vocabulary speech recognition using an integrated syntactic and semantic statistical language model
US6157935A (en) 1996-12-17 2000-12-05 Tran; Bao Q. Remote data access and management system
US6177931B1 (en) 1996-12-19 2001-01-23 Index Systems, Inc. Systems and methods for displaying and recording control interface with television programs, video, advertising information and program scheduling information
US5926789A (en) 1996-12-19 1999-07-20 Bell Communications Research, Inc. Audio-based wide area information system
US5966126A (en) 1996-12-23 1999-10-12 Szabo; Andrew J. Graphic user interface for database system
US5905498A (en) 1996-12-24 1999-05-18 Correlate Technologies Ltd System and method for managing semantic network display
US5739451A (en) 1996-12-27 1998-04-14 Franklin Electronic Publishers, Incorporated Hand held electronic music encyclopedia with text and note structure search
US5932869A (en) 1996-12-27 1999-08-03 Graphic Technology, Inc. Promotional system with magnetic stripe and visual thermo-reversible print surfaced medium
IL119948A (en) 1996-12-31 2004-09-27 News Datacom Ltd Voice activated communication system and program guide
US6111562A (en) 1997-01-06 2000-08-29 Intel Corporation System for generating an audible cue indicating the status of a display object
US7787647B2 (en) 1997-01-13 2010-08-31 Micro Ear Technology, Inc. Portable system for programming hearing aids
JP3579204B2 (ja) 1997-01-17 2004-10-20 富士通株式会社 文書要約装置およびその方法
US5815225A (en) 1997-01-22 1998-09-29 Gateway 2000, Inc. Lighting apparatus for a portable computer with illumination apertures
US5933477A (en) 1997-01-22 1999-08-03 Lucent Technologies Inc. Changing-urgency-dependent message or call delivery
US5953541A (en) 1997-01-24 1999-09-14 Tegic Communications, Inc. Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use
US6684376B1 (en) 1997-01-27 2004-01-27 Unisys Corporation Method and apparatus for selecting components within a circuit design database
US6006274A (en) 1997-01-30 1999-12-21 3Com Corporation Method and apparatus using a pass through personal computer connected to both a local communication link and a computer network for indentifying and synchronizing a preferred computer with a portable computer
US5924068A (en) 1997-02-04 1999-07-13 Matsushita Electric Industrial Co. Ltd. Electronic news reception apparatus that selectively retains sections and searches by keyword or index for text to speech conversion
US6191792B1 (en) 1997-02-10 2001-02-20 Nippon Telegraph And Telephone Corporation Scheme for automatic data conversion definition generation according to data feature in visual multidimensional data analysis tool
US6519565B1 (en) 1998-11-10 2003-02-11 Voice Security Systems, Inc. Method of comparing utterances for security control
US5926769A (en) 1997-02-18 1999-07-20 Nokia Mobile Phones Limited Cellular telephone having simplified user interface for storing and retrieving telephone numbers
US5930783A (en) 1997-02-21 1999-07-27 Nec Usa, Inc. Semantic and cognition based image retrieval
US6005495A (en) 1997-02-27 1999-12-21 Ameritech Corporation Method and system for intelligent text entry on a numeric keypad
US5941944A (en) 1997-03-03 1999-08-24 Microsoft Corporation Method for providing a substitute for a requested inaccessible object by identifying substantially similar objects using weights corresponding to object features
US5930801A (en) 1997-03-07 1999-07-27 Xerox Corporation Shared-data environment in which each file has independe