基于上下文自动监测话音输入的制作方法

文档序号:11864335阅读:305来源:国知局
基于上下文自动监测话音输入的制作方法与工艺

本申请是国际申请日为2011年8月4日、国家申请号为201180047154.0、发明名称为“基于上下文自动监测话音输入”的中国发明专利申请的分案申请。

相关申请的交叉引用

本申请要求于2010年8月6日提交的、名称为“AUTOMATICALLY MONITORING FOR VOICE INPUT BASED ON CONTEXT”的美国申请序列No.12/852,256的优先权,其公开内容通过引入并入于此。

技术领域

本文档总体上描述了用于使用移动计算设备(诸如,移动电话)自动地监测话音输入的方法、系统和技术。



背景技术:

移动计算设备(例如,移动电话、智能电话、个人数字助理(PDA)、便携式媒体播放器等)已经被配置为在用户明确提示接收并处理话音或话语输入时对话音或话语输入接收并处理。例如,移动计算设备已经被配置为响应于用户按压并保持按钮按下阈值时间(例如,一秒)开始监测话音。例如,如果用户期望向此类移动计算设备提交口头搜索请求,则用户需要在提交话音输入之前按压并保持按钮按下至少阈值时间,否则话音输入将不会被移动计算设备接收继而搜索请求也不会被处理。



技术实现要素:

通过本文档中描述的技术,计算设备的上下文(诸如,移动电话(例如,智能电话或应用程序电话))将被考虑以便自动确定何时监测话音输入,诸如口头搜索请求。自动确定是不需要明确用户指导的确定。通过本文档中描述的技术,移动计算设备可以基于与该移动计算设备相关联的当前上下文自动确定何时监测话音输入,而不是等待用户提示该移动计算设备开始监测话音输入(例如,按压并保持按钮阈值时间)。与移动计算设备(和/或该移动计算设备的用户)相关联的当前上下文可以包括:设备外部上下文(诸如表示设备周围的环境),或者设备内部上下文(诸如存储在设备中关于该设备的历史信息)。设备外部上下文例如可以包括移动计算设备所处的物理位置(例如,由设备中GPS或其他技术确定的家庭、单位、汽车等),以及移动计算设备的运动状态(例如,加速、静止等)。设备内部上下文可以包括移动计算设备上的最近活动(例如,社交网络活动、发送/接收的电子邮件、拨打/接听的电话呼叫等)。移动计算设备(和/或其用户)的当前上下文独立于指导设备听取话语输入的用户输入本身。

例如,设想用户带着他/她的移动计算设备下班回家以及该用户开始做晚饭。在检测到移动计算设备位于用户家中(该移动计算设备的上下文)之后,在此示例中该移动计算设备自动开始监测来自用户的话音输入。该设备例如可以经由GPS读数或者通过确定其停驻特定音乐码头(dock)或特定类型音乐码头来确定其上下文。用户在做晚饭时意识到其无法记下应该向盘中添加多少特定配料。用户可以简单地询问应当向盘中添加多少配料而不是需要停止准备饭菜去查找食谱(例如,洗手并且找到书中或电子文档中的食谱),这是因为移动计算设备已经在监测话音输入,该移动计算设备可以接收并处理口头请求。例如,移动计算设备可以定位包含该食谱的电子文档,标识所述配料的用量,以及通过用量信息(例如,“你的食谱要求1杯糖”)听觉上响应用户。通过本文档中描述的技术,该示例中的用户能够获取其问题的答案而不需要中断其饭菜准备(例如,不需要首先物理上提示移动计算设备接收话音输入)。

继续上段示例,移动计算设备可以基于该移动计算设备在用户家中被放置的码头类型确定其位于用户的家中。例如,移动计算设备可以基于彼此匹配的码头和设备上的物理电接触或者经由码头和设备之间的电子通信(例如,经由BLUETOOTH或RFID)标识码头的类型。例如,码头上可以提供旨在家庭使用的特定管脚布置,而可以向旨在和销售用于车内使用的码头提供不同布置。

通过仅在用户可以限定的特定上下文中启用此类侦听,这里的技术提供了强大的用户接口同时还允许用户控制对其信息的访问。因此,此类监测可以被提供作为启用侦听之前用户必须主动配置其设备支持的选项,以便给予用户对该特征的控制。另外,当设备进入侦听模式时,该设备可以向用户大声宣布。另外,这里所述处理可以被分离在设备和该设备与之通信的任意服务器系统之间,以便监测可以在该设备上发生,并且当此类监测触发要求与服务器系统通信的动作时,该设备可以向用户宣布此事实和/或从该用户寻求批准。此外,使用这里所述技术可以由设备采取的特定动作可以由用户预先限定(例如,在列表中),以便用户可以包括该用户可舒服执行的动作(例如,取得针对天气、电影时间、航班的信息以及用户确定不牵连隐私问题的类似动作)。

在一个实现中,计算机实现的方法包括检测与移动计算设备相关联的当前上下文,所述上下文在所述移动设备外部并且指示所述设备在其周围环境的当前状态,并且基于所述当前上下文确定是否将所述移动计算设备从当前操作模式切换至第二操作模式,在所述第二操作模式期间所述移动计算设备针对话音输入监测环境声音,所述话音输入指示用于执行操作的请求。响应于确定是否切换至所述第二操作模式,该方法可以进一步包括激活与所述移动计算设备相关联的一个或多个麦克风和语音分析子系统,以便所述移动计算设备接收音频数据流。该方法还可以包括在所述移动计算设备上提供响应于话音输入的输出,所述话音输入被检测在所述音频数据流中并且指示用于执行操作的请求。

在另一实现中,一种用于自动监测话音输入的系统包括移动计算设备以及一个或多个麦克风,所述一个或多个麦克风被配置为接收环境音频信号并且向所述移动计算设备提供电子音频数据。该系统还可以包括上下文确定单元,被配置为检测与所述移动计算设备相关联的当前上下文,所述上下文在所述移动设备外部并且指示所述设备在其周围环境中的当前状态,以及模式选择单元,被配置为基于由所述上下文确定单元确定的所述当前上下文确定是否将所述移动计算设备从当前操作模式切换至第二操作模式,在所述第二操作模式期间所述移动计算设备针对话音输入监测环境声音,所述话音输入指示用于执行操作的请求。该系统可以进一步包括所述移动计算设备的输入子系统,被配置为响应于确定是否切换至所述第二操作模式,激活与所述移动计算设备相关联的一个或多个麦克风和语音分析子系统,以便所述移动计算设备接收音频数据流。该系统还可以包括所述移动计算设备的输出子系统,被配置为在所述移动计算设备上提供响应于话音输入的输出,所述话音输入被检测在所述音频数据流中并且指示用于执行操作的请求。

在又一实现中,一种用于自动监测话音输入的系统包括移动计算设备以及一个或多个麦克风,所述一个或多个麦克风被配置为接收环境音频信号并且向所述移动计算设备提供电子音频数据。该系统还可以包括上下文确定单元,被配置为检测与所述移动计算设备相关联的当前上下文,所述上下文在所述移动设备外部并且指示所述设备在其周围环境中的当前状态,以及用于基于所述当前上下文确定是否将所述移动计算设备从当前操作模式切换至第二操作模式的装置,在所述第二操作模式期间所述移动计算设备针对话音输入监测环境声音,所述话音输入指示用于执行操作的请求。该系统可以进一步包括所述移动计算设备的输入子系统,被配置为响应于确定是否切换至所述第二操作模式,激活与所述移动计算设备相关联的一个或多个麦克风和语音分析子系统,以便所述移动计算设备接收音频数据流。该系统还可以包括所述移动计算设备的输出子系统,被配置为在所述移动计算设备上提供响应于话音输入的输出,所述话音输入被检测在所述音频数据流中并且指示用于执行操作的请求。

一个或多个实施方式的细节在以下附图和描述中进行了阐述。各种优势可以通过某些实现方式得以实现,诸如在向计算设备提供话音输入时向用户提供更好的便利性。当他/她需要话音输入时,用户可以简单地提供话音输入,而不是首先必须经过形式步骤提示移动计算设备接收话音输入。另外,移动计算设备可以推断用户何时期望提供话音输入并且在那些时间段期间监测话音输入。考虑到监测话音输入可以使得移动计算设备消耗比该设备处于待机模式更多的功率,此特征可以帮助保存被移动计算设备消耗的能量,尤其在移动计算设备正在使用便携式电源(诸如,电池)时。

在附图和下文描述中阐述一个或者多个实施方式的细节。通过描述和附图容易理解本发明的其他特征、目的和优点。

附图说明

图1A至图1C是用于基于上下文自动监测话音输入的示例移动计算设备的概念图。

图2A至图2B是用于基于与移动计算设备相关联的当前上下文自动监测话音输入的示例系统的示图。

图3A至图3C是用于基于移动计算设备的上下文自动监测话音输入的示例技术的流程图。

图4是可以用来实施本文档中描述的技术、系统、机制和方法的系统的概念图。

图5是作为客户端或者作为一个或者多个服务器的、可以用来实施本文档中描述的系统和方法的计算设备的框图。

各图中的相似参考符号指示相似元件。

具体实施方式

本文档描述了用于自动监测对移动计算设备(例如,移动电话、智能电话(例如,IPHONE、BLACKBERRY)、个人数字助理(PDA)、便携式媒体播放器(例如,IPOD)等)的话音/话语输入的技术、方法、系统和机制。关于何时开始和结束监测话音输入的确定可以基于与移动计算设备(和/或移动计算设备的用户)相关联的上下文。例如,当与移动计算设备(和/或移动计算设备的用户)相关联的上下文指示用户期望提供话音输入和/或提供基于话音的特征将对用户便利时,该移动计算设备可以自动监测话音输入。

随着移动计算设备变得更加强大,由移动计算设备提供的话音相关特征的数目也增多了。例如,用户可以采用话音命令指导移动计算设备发起电话呼叫(例如,“呼叫Bob”)以及播放音乐(例如,“播放Beck的音乐”)。然而,移动计算设备已经被配置为仅在由用户提示这样做时才会监测此类话音输入。例如,用户可能需要按压移动计算设备上的按钮或者激活特定应用上的话音特征用于移动计算设备接收并处理此类话音输入。

本文档中描述的技术、方法、系统和机制允许用户提供话音输入而不需要附加与提示移动计算设备使用话音输入相关联的手续。相反,移动计算设备可以基于与该移动计算设备(和/或该移动计算设备的用户)相关联的当前上下文确定何时开始监测话音输入,而不需要在确定时明确的用户指导。针对移动计算设备的当前上下文可以包括与该移动计算设备和/或该移动计算设备的用户相关联的各种信息。此类信息可以在设备外部并且由设备中的传感器标识,诸如当前物理位置(例如,家庭、单位、汽车、位于无线网络“testnet2010”附近等)、设备移动的方向和速率(例如,以20英里每小时北行)、当前地理位置(例如,第十街与Marquette大道的拐角)、移动计算设备停驻的码头类型(例如,汽车适配码头)、环境噪声(例如,低沉的嗡嗡声、音乐等)以及来自移动计算设备相机的当前图像。

上下文可以在设备内部,诸如设备关于时间和日期(例如,2010年7月29日下午2:00)、即将到来和/或近期约会日程安排(例如,2010年7月29日下午2:30与John见面)、近期设备活动(例如,向John发送关于2:30见面的电子邮件)以及来自移动计算设备相机没有反映该设备周围当前状态的历史图像进行的确定。

例如,移动计算设备可以基于所检测的该设备移动的高速率(例如,使用作为该设备标准组件的各种运动传感器中的任意传感器)和/或基于该设备正停驻在适配汽车的移动设备码头(例如,检测移动计算设备与码头之间物理电子连接的管脚布置)确定其当前在汽车中移动。移动计算设备可以基于该当前上下文确定是否监测话音输入。

各种方法可以用于确定哪些上下文允许话音输入监测以及哪些上下文不允许。例如,移动计算设备可以尝试推断当前上下文是否指示该用户至少具有提供话音输入的阈值可能性,并且如果是这样则作为响应监测话音输入。在另一示例中,移动计算设备可以尝试基于当前上下文推断监测话音输入是否可以向用户至少提供阈值水平的便利性,并且如果是这样则监测话音输入。在另一示例,预先标识和/或用户标识的上下文可以用于确定何时监测话音输入。还可以使用用于确定何时监测话音输入的其他技术。

对上文汽车上下文示例进行扩展,基于确定移动计算设备位于汽车中,移动计算设备可以推断用户能够提供话音输入非常方便(并且安全)。基于关于所确定上下文的本推断,移动计算设备可以开始监测并处理用户的话音输入。移动计算设备可以继续监测话音输入直到各种结束事件发生,诸如移动计算设备的当前上下文改变(例如,用户将移动计算设备从汽车中移除),用户指示其期望话音输入监测结束(例如,用户提供用于提供诸如“停止监测话音输入”的指示的话音输入),移动计算设备的电池即将用尽所存储的电量(例如,电池剩余电量在25%以下)等。

监测话音输入可以涉及将话音输入从可以由移动计算设备接收的其他环境噪声(例如,背景音乐、汽车喇叭等)分离,继而确定该话音输入是否可应用于该移动计算设备。例如,当两个用户在正在监测话音输入的移动计算设备前进行交谈时,该移动计算设备可以确定哪些话音输入是用户交谈的一部分以及哪些是请求移动计算设备执行操作。各种技术可以用于进行此类确定,诸如监测特定关键字(例如,“搜索”、“移动设备”等)、检查语法(例如,标识问题、标识命令等)等。

如下文进一步详细所述,移动计算设备可以在该移动计算设备本地和/或结合远离该移动计算设备的计算机系统监测并处理话音输入。例如,移动计算设备可以确定其当前上下文,确定是否监测话音输入,标识用于移动计算设备的话音输入,以及使得与话音输入相关联的命令作为单独设备(例如,不需要通过网络与其他设备交互)和/或通过与远程服务器系统交互来执行。

图1A至图1C是用于基于上下文自动监测话音输入的示例移动计算设备102a-b、142和162a-d的概念图100、140和160。参考图1A,示图100描绘了监测话音输入的示例,其中移动计算设备102a-b(旨在指代相同计算设备)在两个不同的上下文(上下文A 104和上下文B 106)中。

在上下文A 104中,移动计算设备102a被描绘为正被用户的手108持有而没有物理连接或系至其他设备或线。移动计算设备102a在该示例中被描绘为使用移动电源(例如,电池)进行操作。

在上下文B 106中,移动计算设备102b被描绘为正停驻在包括扬声器112和麦克风114和116的移动设备码头110中。移动计算设备102b被描绘为与码头110的移动设备接口118电子物理接触。移动计算设备102b和码头110可以通过该电子物理连接进行通信。例如,移动设备102b可以通过与接口118的连接将音频数据流传输到码头110,其可以使得码头110使用扬声器112播放音乐。类似地,码头110可以向移动设备102b提供通过扬声器114和116以及接口118接收的音频数据。

进一步针对上下文B 106,码头110被描绘为从插入电源插座122的电源线120接收功率。移动计算设备102b可以通过码头110的接口118从外部电源(例如,直接从码头110,间接从电源线122等)接收功率。

基于上下文104和106,移动计算设,102a-b确定是否自治地(不需要首先由用户提示或指示如何做)监测话音输入。针对上下文A 104,移动计算设备102a至少基于设备使用便携式电源(电池)而不是外部电源确定不监测话音输入。对于便携式电源,电源供应是有限的。然而,监测话音输入可以比移动计算设备102a的正常待机操作耗费更多的功率,并且可能继续不确定的时间量。因此,在上下文A 104中,移动计算设备102a可以确定对于用户监测话音输入的任意潜在便利性被在相对短时间(与待机操作相比时短)内潜在耗费电池对移动计算设备102a的非便利性超过。另外,移动计算设备102a可以确定由用户提供的任意话音输入基于依赖于其自己的麦克风(与外部麦克风不同,如麦克风114和116)的移动计算设备102a将无法足够清楚地接收以准确处理。因此,上下文A 104中的移动计算设备102a不监测话音输入,如符号124所示。

与此相反,参考上下文B 106,移动计算设备102b基于正连接至码头110的移动计算设备102b确定监测话音输入(如不存在像上下文A 104中符号124的符号所示)。如上文所述,移动计算设备102b可以基于接口118中使用的管脚布置将码头110标识为特定类型的码头。通过与码头110连接,移动计算设备102b接收外部电源(例如,码头110、插座122)和外部麦克风114和116的益处。在该示例中,移动计算设备102b可以基于连接码头110、移动计算设备102b连接的码头类型(例如,家庭立体声码头)、外部电源的可用性和外部麦克风114和116的可用性的任意组合监测话音输入。作为监测话音输入的一部分,移动计算设备102b可以从麦克风114和116接收音频数据流,从中用于标识(并处理)话音输入。同样,通过限制监测特定上下文B,系统可以帮助确保用户意识到被系统监测(当其发生时)。

设备102b还可以宣布何时其切换至监测模式。例如,当设备已经停驻时,码头上的扬声器可以宣布“设备现在监测请求-请说停止监测来禁用特征”。此类宣布可以向用户提供监测正在发生的附加通知,以便用户可以获得监测的优势,同时维持对监测内容的控制。

所描绘的Alice 126与Bob 128之间的交谈演示了由移动计算设备102a-b执行的话音输入监测。Alice向Bob说“你好,Bob。最近怎么样?”(130)。Alice回答“还不错。你呢?”(132)。Alice回答“不错。你知道本周末的天气预报吗?”(134),而Bob说“不知道。稍等,我查下移动设备。本周末的天气预报是什么?”(136)。

如符号124所示,基于确定不监测话音输入Alice 126与Bob 128之间的交谈130-136没有被上下文A 104中的移动计算设备102a接收。

相反,Alice 126与Bob 128之间的交谈130-136被接收作为由移动计算设备102b使用码头110的接口118和麦克风114和116接收的音频数据流的一部分。移动计算设备102b可以使用语音分析子系统从其他环境噪声(诸如,背景音乐)中检测话音输入130-136,并且标识话音输入130-136中的任意输入是否为对移动计算设备102b的请求。

如早先所述,移动计算设备102b可以使用各种技术来标识话音输入130-136中的任意输入是否为对移动计算设备102b的请求。例如,移动计算设备102b可以针对关键字扫描话音输入130-136,例如,命令“搜索附近餐馆”中使用的词语“搜索”,以及问题“移动设备,篮球比赛的当前比分是多少?”中使用的词语“移动设备”。在另一示例中,移动计算设备102b可以监测话音输入130-136的语法来尝试标识语音中可以用于移动计算设备102b的多个部分,诸如问题和命令。在又一示例中,移动计算设备102b可以基于话音输入结构中的改变(诸如,停顿(例如,用户等待来自移动计算设备102b的响应)),音频信号明显方向上的改变(例如,当提供命令时用户面向移动计算设备102b),递送速度的改变(例如,当用于移动计算设备102b时用户减慢速度),音调和声调的改变(例如,当处理移动计算设备102b时,用户降低音调并且减少声调水平)等透露某些话音输入被用于移动计算设备102b。还可以使用其他技术以及技术的组合。

在该示例中,Alice 126与Bob 128之间的话音输入130-136中存在多个问题,但只有话音输入136中的问题用于移动计算设备102b。使用先前段落中所述技术的任意组合,移动计算设备102b能够将该话音输入136正确地隔离作为移动计算设备102b执行操作的请求。例如,移动计算设备102b可以从Bob的话音输入136中标识短语“移动设备”,继而分析话音输入136的语法来将问题“本周末的天气预报是什么?”隔离用于移动计算设备102b。

响应于进行此类标识,移动计算设备102b可以发起搜索用于确定针对即将来临的周末移动计算设备102b当前地理位置的天气预报。移动计算设备102b可以本地(例如,查询移动计算设备102b上周期性获取并存储天气预报的天气应用)和/或通过经由网络(例如,因特网、蜂窝网络、3G/4G网络等)与远程信息服务器系统交互来标识该信息。

移动计算设备102b可以使用各种可用输出设备中的任意设备向Alice 126和Bob 128提供所请求的天气信息,所述输出设备诸如显示器(例如,移动计算设备102b的显示器、计算机监视器、电视等)、扬声器系统(例如,移动计算设备102b上的内部扬声器、码头110的扬声器112等)、投影仪(例如,作为移动计算设备102b和/或码头110的一部分的投影仪)等。在此示例中,移动计算设备102b使用移动计算设备118的文本到语音(TTS)子系统和码头110的扬声器112听觉上输出天气信息(138)。

参考图1B,示图140描绘了确定是否监测话音输入、标识来自话音输入的用户请求以及提供响应于该用户请求的输出的移动计算设备142的示例。

在步骤A,移动计算设备142检测移动计算设备142以及与该移动计算设备相关联的用户(未示出)的当前上下文(144)。如示例当前上下文146中所示,移动计算设备142当前位于用户的家(148a),当前日期和时间为星期一下午7:00(148b),用户周一剩余时间的日程安排没有约会(148c),以及移动计算设备142当前使用90%充电的电池作为其电源(148d)。移动计算设备142的当前位置可以通过各种方式确定,诸如使用地理位置信息(例如,地理定位系统(GPS)信息),标识周围计算设备和/或无线网络(例如,检测用户家中出现的无线网络),移动计算设备142正位于特定类型的码头(例如,码头110)等。

在步骤B,移动计算设备142基于该设备142及其用户的当前上下文146确定是否针对用户请求监测音频信号(150)。如上文参考图1A所述,各种技术可以用于确定是否监测来自用户的话音输入。在此示例中,移动计算设备142基于推断用户将向该用户和移动计算设备142两者提供用户请求和便利性的可能性(如上下文146所示)确定继续针对用户请求监测环境音频信号。提供用户请求的可能性可以至少从时间(下午7点)和用户的日程安排推断。虽然是在晚上,但用户可能还没有入睡(仅下午7点)以及该用户在该夜晚的剩余时间没有任何约会-用户在接下来若干小时期望自由时间可以至少指示向移动计算设备142提供基于话音请求的阈值可能性。至少基于移动计算设备142正位于用户家中,监测话音输入可以方便用户,其中用户可以与移动计算设备142大于一臂长度(例如,用户可以在房屋周围移动以便可以更方便用户简单地说出他/她的请求而不是需要定位移动计算设备142来针对每个请求手动提示计算设备142)。另外,至少基于电池至少具有阈值电荷并且基于监测将仅持续有限时间段(例如,移动计算设备142可以预测用户可能在若干小时后入睡)的推测,监测话音输入可以方便移动计算设备。

响应于确定监测音频信号,在步骤C,移动计算设备可以激活可用于移动计算设备的麦克风和语音分析子系统(152)。麦克风和/或语音分析子系统可以位于和/或远离移动计算设备142。例如,移动计算设备142使用的麦克风可以体现在移动计算设备中和/或远离移动计算设备(例如,码头110的麦克风114和116)。在另一示例中,语音分析子系统远程实现,移动计算设备142可以向远程语音分析子系统提供接收的音频信号,并且作为响应,接收指示是否已经检测到任意话音输入的信息。

移动计算设备142可以向用户显示指示正在进行针对用户请求监测音频信号的消息153。如果用户不期望上述操作发生,这可以向用户提供取消该操作的机会。

在步骤D,针对用户请求,移动计算设备142继续接收和监测环境音频信号(154)。例如,电视156a、人156b和宠物156c可以分别产生由移动计算设备142接收并检查的音频信号158a-c。

在所有这些音频信号当中,用户156b向移动计算设备142提出问题“缅因州的首府是?”(158b)作为用户请求。移动计算设备142(可能结合远程语音分析子系统)可以使用如上文参考图1A所述的各种技术中的任意技术从音频信号158a-c检测该用户请求。移动计算设备142继而可以本地(例如,搜索本地存储的信息数据库)或者通过与远程信息服务器系统交互来处理该用户请求。

获得了所标识用户请求的响应,如步骤F所示移动计算设备可以提供针对用户请求的输出(162)。在本示例中,移动计算设备在该移动计算设备142的显示器上显示用户问题的答案164。如上文参考图1A所述,还可以是向移动计算设备142提供此类输出的其他方式。

参考图1C,示图170描绘了使用四个不同上下文(上下文A 174、上下文B 176、上下文C 178和上下文D 180)中移动计算设备172a-d(旨在作为各不同上下文中描绘的单个移动计算设备)监测话音输入的示例。

参考上下文A 174,移动计算设备172a被描绘为正位于用户办公室182。在此示例中,移动计算设备172a能够基于出现的与办公室182相关联的无线网络“workwifi”184标识其当前位置。如符号186所示,移动计算设备172a基于上下文A 174确定不在用户办公室182监测话音输入。该确定可以基于上文参考图1A至图1B所述各种因素中的任意因素。

参考上下文B 176,移动计算设备172b被描绘为正位于用户汽车188中。在此示例中,移动计算设备172b可以至少基于与汽车适配停驻/充电线缆190连接确定其当前上下文。如出现的如符号186的符号所示,移动计算设备172b基于上下文B 176确定监测在用户汽车188内部进行的用户请求。该确定可以基于上文参考图1A至图1B所述各种因素中的任意因素。

上下文C 178描绘了移动计算设备172c正位于用户的家192中。移动计算设备172能够至少基于出现的与用户家192相关联的无线网络“homenet”193以及设备172c正置于移动设备码头194中确定其当前上下文。如先前所示,移动设备172可以基于各种因素(诸如,不同的管脚布置)区分与汽车适配停驻/充电线缆190连接还是与移动设备码头194连接。如不存在像符号186的符号所示,移动计算设备172c基于上下文C 178确定监测在用户家192内部进行的用户请求。该确定可以基于上文参考图1A至图1B所述各种因素中的任意因素。

上下文D 180示出了移动计算设备172d正位于购物中心195。移动计算设备172d至少基于相对高水平环境噪声196(例如,在购物中心195中说话的其他购物者、进入购物中心195中的背景音乐等)以及多个可用无线网络197确定其当前上下文。基于环境噪声196和无线网络197,移动设备172d可以大体上推断其位于公共区域。基于上下文D 180,如符号198所示,移动计算设备可以确定不监测话音输入。

移动计算设备172可以随着该移动计算设备172的上下文改变在监测话音输入与不监测用户请求之间切换。例如,当用户带着移动计算设备172离开办公室182进入汽车188时,移动计算设备172可以从不监测用户请求(在办公室182中)切换至监测用户请求(在汽车188中)。

其中移动计算设备172监测用户请求的上下文可以在设备和/或相关联的用户之间不同,并且可以随时间改变。反馈环路可以用于连续细化其中移动计算设备172监测话音输入的上下文。例如,如果用户超时没有向上下文C 178中的计算设备172提供多个基于话音的请求,则移动计算设备172可以停止在上下文C 178中监测话音输入。相反,如果用户频繁地手动提示计算设备172在上下文A 174中接收话音输入,则移动计算设备172可以开始在上下文A 174中监测话音输入。

图2A至图2B是用于基于与移动计算设备202相关联的当前上下文自动监测话音输入的示例系统200的示图。在此示例中,移动计算设备202被配置为基于与移动计算设备和/或该移动计算设备的用户相关联的当前上下文自动确定何时开始以及何时结束监测话音输入,类似于上文参考图1A至图1C所述的移动计算设备102、142和172。

移动计算设备202被描绘为包括输入子系统,通过该输入子系统话音输入(以及其他类型的输入)可以由移动计算设备202接收。参考图2B,输入子系统204被描绘为包括麦克风206a(被配置为接收基于音频的输入)、键盘206b(被配置为接收基于按键的输入)、触摸屏206c(被配置为接收基于屏幕触摸的输入)、加速度计206d(被配置为接收基于运动的输入)、追踪球206e(被配置为接收基于GUI指针的输入)、相机206f(被配置为接收视觉输入)和光传感器206g(被配置为接收基于光强的输入)。输入子系统204还包括网络接口208(例如,无线网络接口、通用串行总线(USB)接口、BLUETOOTH接口、公共交换电话网(PSTN)接口、以太网接口、蜂窝网络接口、3G和/或4G网络接口等),被配置为接收基于网络的输入和输出。没有提到的其他类型的输入设备也可以作为输入子系统204的一部分。

移动计算设备202的输入解析器210可以被配置为从输入子系统204接收输入(诸如电子音频数据),并且确定接收的音频数据是否包括话音输入。输入解析器210可以包括语音分析子系统212。该语音分析子系统212可以在监测用户请求时分析并确定麦克风206a接收的音频数据中是否存在任意话音输入。输入解析器210可以包括没有描绘用于解释通过输入子系统204接收的用户输入的其他模块,诸如计算机视觉模块,用于解释通过相机206f得到的图像,以及手势模块,用于解释由加速度计206d提供的物理移动数据。

移动设备上下文确定单元214可以确定移动计算设备202的当前上下文。该移动设备上下文确定单元214可以使用由输入子系统204接收并且由输入解析器210解释的输入以及移动计算设备202的各种上下文监测单元来确定移动设备202的当前上下文。

例如,全球定位系统(GPS)单元216可以向移动设备上下文确定单元214提供地理位置信息,以及功率/连接管理单元217可以提供关于移动计算设备的当前电源和/或功率状态的信息(例如,连接至外部电源、电池充电80%等),以及关于移动计算设备202的充电和/或通信连接的信息(例如,设备被停驻、设备被连接至无线网络等)。移动监测单元218(结合移动数据仓库220)可以提供与当前正在移动的路线以及移动计算设备202移动的习惯路线有关的信息。活动监测单元222(结合活动数据仓库224)可以提供与移动设备202上最近和习惯用户活动(例如,使用的应用、多次访问的特定信息等)有关的信息。位置监测单元226可以提供关于移动计算设备202当前物理位置(例如,家、单位、汽车中等)的信息。位置监测单元226可以使用位置数据仓库227确定当前物理位置。位置数据仓库227可以将关于移动计算设备202检测到周围事物(例如,可用无线网络、周围声音、附近计算设备等)的信息与物理位置相关联。位置监测单元226还可以标识物理上位于该移动设备202附近的实体(例如,企业、公园、节庆场所、公共交通等)。

时间和日期单元228可以提供当前时间和日期信息,以及日历单元230(结合日历数据仓库232)可以提供与用户约会有关的信息。电子邮件单元234(结合电子邮件数据仓库236)可以通过电子邮件有关的信息(例如,最近发送/接收的电子邮件)。移动上下文确定单元214可以从没有提到或描绘的其他上下文监测单元接收信息。

在某些实现中,上下文监测单元216-236可以部分或整体远离移动计算设备202实现。例如,电子邮件单元234可以为仅显示由远程服务器系统维护并提供的电子邮件相关数据的瘦客户端。在此示例中,电子邮件单元234可以与远程服务器系统交互获得用于向移动设备上下文确定单元214提供的电子邮件相关信息。

模式选择单元238可以使用移动设备202的当前上下文(由移动设备上下文确定单元214确定)确定开始还是停止针对话音输入监测音频数据,话音输入指示针对移动计算设备202的用户请求。模式选择单元238可以确定是否从至少音频监测模式(期间针对用户请求监测音频数据)和非监测模式(期间移动计算设备202不监测音频数据)中进行选择。确定是否在模式(开始还是停止音频监测)之间进行切换可以基于如上文参考图1A至图1C所述从移动设备202(和/或与移动设备202相关联的用户)的当前上下文采取的各种考虑和推断中的任意考虑和推断。

除了使用当前上下文,模式选择单元238还可以基于用户行为数据仓库242中存储的与音频数据监测相关联的用户行为数据来确定开始还是停止针对用户请求监测音频数据。用户行为数据仓库242可以记录先前模式选择、进行模式选择时移动设备202的上下文以及针对所选模式用户的后续行为(例如,用户在音频监测模式期间有或者没有通过话音输入提供请求、用户手动切换至不同的操作模式、在处于非监测模式时用户手动提示设备接收并处理话音输入等)。用户行为数据仓库242中存储的用户行为数据可以指示基于设备202的上下文选择的模式是否被正确地推断出对用户有用和/或方便。上文参考图1C描述了使用用户行为数据选择操作模式的示例。

关于模式选择,模式选择单元238可以至少通知输入子系统204和输入解析器210。例如,响应于通知移动计算设备202被切换至音频监测模式,输入子系统204可以激活麦克风206a开始接收音频数据,并且输入解析器210可以激活语音分析子系统处理由麦克风206a提供的音频数据。在另一示例中,响应于通知移动计算设备202被切换至非监测操作模式,输入子系统204可以解激活麦克风206a,并且输入解析器210可以解激活语音分析子系统。

当至少麦克风206a和语音分析子系统212在音频监测操作模式期间被激活并且语音分析子系统212从麦克风206a和输入子系统204提供的音频数据流检测话音输入时,用户请求标识器241可以被通知该标识。用户请求标识器241可以确定所检测话音输入是否指示用户向移动计算设备请求执行操作(例如,搜索信息、播放媒体文件、提供行车路线等)。用户请求标识器241可以使用各种子系统辅助确定特定话音输入是否指示用户请求,诸如关键字标识器242a、语法模块242b和话音结构分析模块242c。

关键字标识器242a可以基于特定话音输入中存在关键字仓库243中存储的预先确定的关键字分组中的关键字来确定该特定话音输入是否用于移动计算设备202。例如,用户用于指代移动计算设备202的名称(例如,“移动设备”)可以是关键字仓库243中的关键字。在另一示例中,可以被移动计算设备202频繁处理的命令(诸如“搜索”(如在“搜索本地新闻”中)和“播放”(如在“播放Beatles的歌曲”中))可以包括在关键字仓库243。关键字仓库243中的关键字可以被预先确定和/或用户限定,并且关键字可以随时间改变。例如,反馈环路可以用于确定基于关键字的用户请求标识是否正确(例如,用户期望话音输入被标识为用户请求?)。此反馈环路可以使用从随后用户动作得到的推断来确定关键字是否应当被添加至关键字仓库243或者从关键字仓库243移除。例如,如果用户对响应于标识用户语音中词语“搜索”提供的搜索结果频繁给出古怪的响应(诸如,“哈?”和“那是什么?”),则词语“搜索”可以从关键字仓库243移除。

类似于使用上文针对图1A提供的语法和话音输入结构的论述,语法模块242b可以分析话音输入的语法,并且话音结构分析模块242c可以分析话音输入结构以确定该话音输入是否可能用于移动计算设备202。类似于关键字标识器242a,语法模块242b和/或话音结构分析模块242c可以使用反馈环路随时间将话音输入的标识细化为用户请求。

使用用户请求标识器241标识的用户请求,输入处理单元244可以处理用户请求。在某些实现中,输入处理单元244可以向与用户输入相关联的应用和/或服务转发用户请求(例如,向音乐播放器应用提供用于播放音乐的用户请求)。在某些实现中,输入处理单元244可以使得与用户请求相关联的一个或多个操作被执行。例如,输入处理单元244可以与远程服务器系统通信,该远程服务器系统被配置为至少执行与用户输入相关联的操作的一部分。

如上文针对图1A至图1C所述,与上下文确定、模式选择、话音输入标识、用户请求标识和/或用户请求处理相关联的操作可以在移动计算设备202本地和/或远离移动计算设备202执行。例如,在日历应用在移动计算设备202本地实现的实现中,针对日历信息的用户请求可以在移动计算设备202本地执行(例如,针对日历数据仓库232中存储的相关日历信息查询日历单元230)。在另一示例中,在针对日历应用的日历数据在远程服务器系统上提供的实现中,移动计算设备202可以与远程服务器系统交互以访问相关日历信息。

移动计算设备202的输出子系统246可以向设备202的用户提供由输入处理单元244获得的输出。输出子系统246可以包括各种输出设备,诸如显示器248a(例如,液晶显示器(LCD)、触摸屏)、投影仪248b(例如,能够向设备202外部投射图像的图像投影仪)、扬声器248c、耳机插孔248d等。网络接口208还可以作为输出子系统246的一部分并且可以被配置为提供由输入处理单元244获得的结果(例如,向BLUETOOTH头戴耳机传输结果)。输出子系统246还可以包括文本到语音(TTS)模块248e,被配置为将文本转换成可以由扬声器248c输出的音频数据。例如,TTS模块248e可以将输入处理单元244处理用户请求生成的基于文本的输出转换成可以向移动计算设备202的用户播放的音频输出。

参考图2A,移动计算设备202可以与无线发射器250(例如,蜂窝网络收发器、无线网络路由器等)无线通信,并且获得对网络252(例如,因特网、PSTN、蜂窝网络、局域网(LAN)、虚拟专用网(VPN)等)的访问。通过网络252,移动计算设备202可以与移动设备服务器系统254(一个或多个联网的服务器计算机)通信,其可以被配置为向移动设备202提供移动设备相关服务和数据(例如,提供日历数据、电子邮件数据、将电话呼叫连接到其他电话等)。

移动设备202还可以通过网络252与一个或多个信息服务器系统256通信。信息服务器系统256可以作为提供可以与处理用户请求有关的信息的服务器系统。例如,信息服务器系统256可以提供当前交通状况、最新行车路线、天气预报以及与位于移动设备202当前地理位置附近的企业有关的信息。

图3A至图3C是用于基于移动计算设备的上下文自动监测话音输入的示例技术300、330和350的流程图。示例技术300、330和350可以由各种移动计算设备中的任意移动计算设备执行,诸如上文针对图1A至图1C描述的移动计算设备102、142和172和/或上文针对图2A至图2B描述的移动计算设备202。

参考图3A,示例技术300总体上用于基于移动计算设备的上下文自动监测话音输入。技术300通过检测与移动计算设备(和/或与移动计算设备相关联的用户)相关联的当前上下文从步骤302开始。例如,移动设备上下文确定单元214可以基于如针对图2B所述的各种上下文相关信息源(诸如,输入子系统204和上下文监测单元216-236)检测与移动计算设备202和/或移动计算设备202的用户相关联的当前上下文。

基于当前上下文可以确定是否从当前操作模式切换至第二操作模式(304)。例如,移动计算设备202的模式选择单元238可以基于由移动设备上下文确定单元214确定当前上下文确定是否开始监测话音输入(从当前操作模式切换至第二操作模式)。

响应于确定是否切换至第二操作模式可以激活一个或多个麦克风和/或语音分析子系统(306)。例如,响应于确定开始监测话音输入,模式选择单元238可以指示输入子系统204和输入解析器210激活麦克风206a和语音分析子系统212。

继续监测从激活麦克风提供的音频数据流可以为监测话音输入(308)。例如,语音分析子系统212可以监测由激活麦克风提供的音频数据流以从包括在该流中的其他声音和噪声中检测话音输入。

可以确定在继续监测期间检测的话音输入是否指示用于执行操作的请求(310)。例如,用户请求标识器241可以检查由语音分析子系统212标识的话音输入来确定话音输入是否指示用户请求移动计算设备202执行操作。

响应于确定用户请求被所检测话音输入指示,可以使得由用户请求指示的所请求操作被执行(312)。例如,用户请求标识器241可以指示输入处理单元244执行用户请求指示的操作。在某些实现中,输入处理单元244可以在移动计算设备202本地执行操作(例如,访问本地数据、服务和/或应用以执行操作)。在某些实现中,输入处理单元244可以与移动设备服务器系统254和/或信息服务器系统256交互以执行所请求操作。

响应于由所检测话音输入指示的用户请求的输出可以被提供(314)。例如,输出子系统246可以基于所请求操作的性能使用子系统246的组件248a-e中的一个或多个组件提供输出。

对于移动计算设备(和/或移动计算设备的用户)的当前上下文的改变可以被检测(316)。例如,由输入子系统204和/或上下文监测单元216-234生成的事件可以使得移动设备上下文确定单元214评估针对移动计算设备和/或移动计算设备的用户的上下文是否已经改变。

响应于检测上下文中的(至少阈值)改变,可以基于改变的上下文确定是否切换至第三操作模式(318)。例如,模式选择单元238可以检查移动计算设备202改变的上下文以确定是否停止监测话音输入(切换至第三操作模式)。

基于确定切换至第三操作模式,可以解激活一个或多个麦克风和/或语音分析子系统(320)。例如,在确定停止监测话音输入(切换至第三操作模式)之后,模式选择单元238可以指示输入子系统204和输入解析器210分别解激活麦克风206a和语音分析子系统212。

参考图3B,示例技术330总体上用于基于移动计算设备的当前上下文确定是否开始监测话音输入(从当前操作模式切换至第二操作模式)。示例技术330可以被执行作为上文针对图3A所述技术300的一部分。例如,技术330可以在技术300的步骤304执行。

技术330可以通过标识与当前上下文有关的用户行为数据从步骤332开始。例如,基于如上下文确定单元214确定的移动计算设备202的当前上下文,模式选择单元238可以从与类似于当前上下文的上下文相关联的用户行为数据仓库240访问用户行为数据。

基于各种因素(诸如,标识为与当前上下文有关的用户行为数据)可以确定用户是否至少具有提供话音输入的阈值可能性(334)。例如,如果移动计算设备202开始监测话音输入,则模式选择单元238可以基于各种因素(诸如,响应于话音监测先前在相似上下文中执行的先前用户动作(用户行为数据))确定用户是否将可能提供话音输入。如果至少存在用户提供话音输入的阈值可能性,则模式选择单元238可以开始监测话音输入。

可以确定监测话音输入是否将至少具有针对用户和移动计算设备阈值水平的便利性(336)。例如,类似于上文针对图1B中所示步骤B 150所述,模式选择单元238可以检查监测话音输入是否将方便移动计算设备202的用户以及/或者监测话音输入是否将方便移动计算设备202(例如,检查移动计算设备202是否具有足够的电源供应用于继续监测话音输入)。

参考图3C,示例技术350总体上用于确定监测音频数据时检测的话音输入是否为用于执行操作的用户请求。示例技术350可以被执行作为上文针对图3A所述技术300的一部分。例如,技术350可以在技术300的步骤310执行。

技术350可以通过标识预先确定的关键字分组中的一个或多个关键字是否存在于所检测的话音输入从步骤352开始。例如,用户请求标识器241的关键字标识器242a可以检查关键字数据仓库243中存储的一个或多个关键字是否存在于继续监测话音输入时语音分析子系统212检测的话音输入中。

基于话音输入的语法可以确定该话音输入是命令还是问题(354)。例如,语法模块242b可以确定语音分析子系统212所检测话音输入的语法是指示用户用于移动计算设备202的命令还是问题。

与话音输入相关联的结构中的改变可以被标识(356),并且基于所标识的改变,可以确定该话音输入是否用于移动计算设备(358)。例如,用户请求标识器241的话音结构分析模块242c可以确定由语音分析子系统212检测的话音输入的结构是否已经以指示话音输入用于移动计算设备202的方式改变。

图4是可以用来实施本文档中描述的技术、系统、机制和方法的系统的概念图。移动计算设备410可以与基站440无线通信,该基站可以通过网络450向移动计算设备提供对多个服务460的访问。

在这一例示中,将移动计算设备410描绘为手持移动电话(例如,智能电话或者应用电话),该手持移动电话包括用于向移动计算设备410的用户呈现内容的触摸屏显示设备412。移动计算设备410包括用于接收对移动计算设备410的操作有影响的用户输入的各种输入设备(例如,键盘414和触摸屏显示设备412)。在更多实现方式中,移动计算设备410可以是膝上型计算机、平板计算机、个人数字助理、嵌入式系统(例如,汽车导航系统)、台式计算机或者计算机化工作站。

移动计算设备410可以包括各种视觉、听觉和触觉用户输出机制。示例视觉输出机制是可以可视地显示视频、图形、图像和文本的显示设备412,该视频、图形、图像和文本组合以提供可视用户界面。例如,显示设备412可以是3.7英寸AMOLED屏幕。其他可视输出机制可以包括LED状态灯(例如,在已经接收语音邮件时闪烁的灯)。

示例触觉输出机制是小型电马达,其连接到失衡重物以提供振动提醒(例如,振动以便向用户提醒传入电话呼叫或者确认用户与触摸屏412接触)。另外,移动计算设备410可以包括将电信号转换成声音(例如,电话呼叫中的音乐、可听提醒或者个人的语音)的一个或者多个扬声器420。

用于接收用户输入的示例机制包括键盘414,其可以是全qwerty键盘或者是包括数字“0-9”、“*”和“#”的传统小键盘。键盘414在用户物理地接触或者按下键盘键时接收输入。用户操控轨迹球416或者与轨迹板交互让用户能够向移动计算设备410供应方向和旋转速率信息(例如,以操控光标在显示设备412上的位置)。

移动计算设备410可以能够确定与触摸屏显示设备412的物理接触的位置(例如,手指或者触笔的接触的位置)。使用触摸屏412可以产生各种“可视”输入机制,其中用户通过接触在触摸屏412上描绘的图形用户接口元件来与图形用户接口元件交互。“可视”输入机制的示例是“软件键盘”,其中键盘显示于触摸屏上并且用户通过按压触摸屏412的与每个键对应的区域来选择键。

移动计算设备410可以包括机械或者触敏按钮418a-418d。此外,移动计算设备可以包括用于调整一个或者多个扬声器420的音量输出的按钮和用于打开或者关闭移动计算设备的按钮。麦克风422允许移动计算设备410将可听声音转换成可以在计算机可读存储器中数字编码和存储的或者向另一计算设备传输的电信号。移动计算设备410还可以包括数字罗盘、加速计、邻近传感器和环境光传感器。

操作系统可以提供在移动计算设备的硬件(例如,输入/输出机制和执行从计算机可读介质取回的指令的处理器)与软件之间的接口。示例操作系统包括ANDROID移动计算设备平台;APPLE IPHONE/MAC OS X操作系统;MICROSOFT WINDOWS7/WINDOWS MOBILE操作系统;SYMBIAN操作系统;RIM BLACKBERRY操作系统;PALM WEB操作系统;多种支持UNIX的操作系统;或者用于计算机化设备的私有操作系统。操作系统可以提供用于执行应用程序的平台,这些应用程序有助于在计算设备与用户之间的交互。

移动计算设备410可以呈现与触摸屏412的图形用户界面。图形用户界面是一个或者多个图形界面元件的汇集并且可以是静态的(例如,显示器看来在时间段内保持相同)或者可以是动态的(例如,图形用户界面包括在没有用户输入时动画的图形界面元件)。

图形界面元件可以是文本、线条、形状、图形或者其组合。例如,图形界面元件可以是显示于桌面上的图标和图标的相关联的文本。在一些示例中,可用用户输入来选择图形界面元件。例如,用户可以通过按压触摸屏的与图形界面元件的显示对应的区域来选择图形界面元件。在一些示例中,用户可以操控轨迹球以醒目显示单个图形界面元件为具有聚焦。用户选择图形界面元件可以调用移动计算设备的预定义动作。在一些示例中,可选图形界面元件还对应于或者备选地对应于键盘404上的按钮。用户选择按钮可以调用预定义动作。

在一些示例中,操作系统提供在打开移动计算设备410时、在从睡眠状态激活移动计算设备410时、在“解锁”移动计算设备410时或者在接收用户对“home”按钮418c的选择时显示的“桌面”用户界面。桌面图形界面可以显示在用用户输入来选择时调用对应应用程序的若干图标。调用的应用程序可以呈现代替桌面图形界面的图形界面直至应用程序终止或者从视图中被隐藏。

用户输入可以操控移动计算设备410的操作序列。例如,单动作用户输入(例如,触摸屏的单敲、扫过触摸屏、与按钮接触或者这些动作的同时组合)可以调用使用户界面的显示改变的操作。在没有用户输入时,用户界面可能尚未在特定时间改变。例如,用触摸屏412的多触摸用户输入可以调用绘图应用以“放大”位置,即使绘图应用可以已经在若干秒之后默认放大。

桌面图形界面也可以显示“配件”。配件是与已经被执行的应用程序相关联并且在由执行应用程序控制的桌面内容上显示的一个或者多个图形界面元件。不同于直至用户选择对应图标才可以调用的应用程序,配件的应用程序可以始于移动电话。另外,配件可以不进行全显示的聚焦。备选地,配件可以仅“拥有”桌面的小部分,从而在桌面的该部分内显示内容并且接收触摸屏用户输入。

移动计算设备410可以包括一个或者多个位置标识机制。位置标识机制可以包括提供操作系统和应用并且对移动电话的地理位置的估计编程的硬件和软件的汇集。位置标识机制可以运用基于卫星的定位技术、基站传输天线标识、多基站三角测量、因特网访问点IP位置确定、基于搜索引擎查询对用的位置的推理标识以及用户供应的位置的标识(例如,通过向位置“签到”)。

移动计算设备410可以包括其他应用模块和硬件。呼叫处理单元可以接收传入电话呼叫的指示并且向用户提供应答传入电话呼叫的能力。媒体播放器可以允许用户收听音乐或者播放电影,这些音乐和电影在移动计算设备410的本地存储器中存储。移动电话410可以包括数字相机传感器以及对应的图像和视频捕获和编辑软件。因特网浏览器可以让用户能够通过键入与网页对应的地址或者选择指向网页的链接来查看来自网页的内容。

移动计算设备410可以包括向基站440无线传达信息的天线。基站440可以是基站汇集(例如,移动电话蜂窝网络)中的许多基站之一,该基站汇集使移动计算设备410能够在移动计算设备在地理上移动时维持与网络450的通信。计算设备410可以备选地或者附加地还通过Wi-Fi路由器或者有线连接(例如,以太网、USB或者FIREWIRE)与网络450通信。计算设备410还可以使用蓝牙协议来与其他计算设备通信或者可以运用自组织无线网络。

操作基站的网络的服务提供商可以将移动计算设备410连接到网络450以实现在移动计算设备410与提供服务460的其他计算机化设备之间的通信。虽然可以通过不同网络(例如,服务提供商的内部网络、公共交换电话网络和因特网)提供服务460,但是将网络450图示为单个网络。服务提供商可以操作服务器系统452,该服务器系统452在移动计算设备410和与服务460相关联的计算设备之间对信息分组和语音数据路由。

网络450可以将移动计算设备410连接到公共交换电话网络(PSTN)462以便建立在移动计算设备410与另一计算设备之间的语音或者传真通信。例如,服务提供商服务器系统452可以从PSTN462接收用于移动计算设备410的传入呼叫的指示。相反地,移动计算设备410可以向服务提供商服务器系统452发送通信,该通信发起用如下电话号码的电话呼叫,该电话号码与通过PSTN 462可访问的设备相关联。

网络450可以连接移动计算设备410与网际协议语音(VoIP)服务464,该VoIP服务通过IP网络对语音通信路由,这有别于PSTN。例如,移动通信设备410的用户可以调用VoIP应用并且使用程序来发起呼叫。服务提供商服务器系统452可以向VoIP服务转发来自呼叫的语音数据,该VoIP服务可以潜在地将PSTN用于连接的最终支路通过因特网将呼叫向对应计算设备路由。

应用商店466可以向移动计算设备410的用户提供浏览用户可以通过网络450下载并且在移动计算设备410上安装的、远程存储的应用程序的列表的能力。应用商店466可以作为由第三方应用开发者开发的应用的贮存库。在移动计算设备410上安装的应用程序可以能够通过网络450与针对应用程序而指派的服务器系统通信。例如,可以从应用商店466下载VoIP应用程序从而让用户能够与VoIP服务464通信。

移动计算设备410可以通过网络450访问因特网468上的内容。例如,移动计算设备410的用户可以调用web浏览器应用,该web浏览器应用请求来自在指派的通用资源位置可访问的远程计算设备的数据。在各种示例中,服务460中的一些服务通过因特网可访问。

移动计算设备可以与个人计算机470通信。例如,个人计算机470可以是用于移动计算设备410的用户的家用计算机。因此,用户可以能够从他的个人计算机470用流传输媒体。用户也可以查看他的个人计算机470的文件结构并且在计算机化设备之间传输所选文档。

话音识别服务472可以接收用移动计算设备的麦克风422记录的语音通信数据,并且将语音通信转译成对应的文本数据。在一些示例中,向搜索引擎提供转译的文本作为web查询,并且向移动计算设备410传输响应搜索引擎搜索结果。

移动计算设备410可以与社交网络474通信。社交网络可以包括多个成员,这些成员中的一些成员已经同意作为相识者来相关。移动计算设备410上的应用程序可以访问社交网络474以基于移动计算设备的用户的相识取回信息。例如,“地址簿”应用程序可以取回用于用户的相识者的电话号码。在各种示例中,可以基于从用户到其他成员的社交网络距离向移动计算设备410递送内容。例如,可以基于与用户“接近”的成员(例如,作为“好友”或者“好友的好友”的成员)与这样的内容的交互水平针对用户选择广告和新闻文章内容。

移动计算设备410可以通过网络450访问个人联系人集476。每个联系人可以标识个人并且包括关于该个人的信息(例如,电话号码、电子邮件地址和生日)。由于与移动计算设备410远程托管联系人集,所以用户可以跨越若干设备访问和维护联系人476作为共同联系人集。

移动计算设备410可以访问基于云的应用程序478。云计算提供与移动计算设备410远程托管的应用程序(例如,字处理器或者电子邮件程序),并且可以由设备410使用web浏览器或者专用程序来访问。作为示例的基于云的应用程序包括GOOGLE DOCS字处理器和电子数据表服务、GOOGLE GMAIL网页邮件服务和PICASA图片管理器。

绘图服务480可以向移动计算设备410提供街道地图、路线规划信息和卫星图像。示例绘图服务是GOOGLE MAPS。绘图服务480也可以接收查询并且返回位置专属结果。例如,移动计算设备410可以向绘图服务480发送移动计算设备的估计的位置和用户录入的用于“披萨店”的查询。绘图服务480可以返回街道地图,该街道地图具有在地图上叠加的“标记”,这些“标记”标识附近“披萨店”的地理位置。

分路段服务482可以向移动计算设备410提供去往用户供应的目的地的分路段指引。例如,分路段服务482可以将设备的估计的位置的街道级示图与用于提供音频命令的数据和将设备410的用户引向目的地的叠加箭头一起向设备410用流传输。

移动计算设备410可以请求各种形式的流媒体484。例如,计算设备410可以请求用于预记录视频文件、实况电视节目或者实况电台节目的流。提供流媒体的示例服务包括YOUTUBE和PANDORA。

微博服务486可以从移动计算设备410接收用户输入公告,该公告未标识公告的接收者。微博服务486可以向微博服务486的同意向用户订阅的其他成员散布公告。

搜索引擎488可以从移动计算设备410接收用户录入的文本或者口头查询、确定响应于查询的因特网可访问文档集并且向设备410提供用于显示用于响应文档的搜索结果的列表的信息。在其中接收口头查询的示例中,话音识别服务472可以将接收的音频转译成向搜索引擎发送的文本查询。

这些和其他服务可以实施于服务器系统490中。服务器系统可以是提供服务或者服务集的硬件与软件的组合。例如,物理上分离和联网的计算机化设备集可以一起作为逻辑服务器系统单元来操作以处理为了向数以百计个别计算设备提供服务而必需的操作。

在各种实现方式中,如果在先操作未成功(例如,如果未执行确定),则不执行“响应于”另一操作(例如,确定或者标识)而执行的操作。在本文档中的用条件语言描述的特征可以描述可选的实现方式。在一些示例中,从第一设备向第二设备“传输”包括第一设备将数据放入网络中,但是可以不包括第二设备接收数据。相反地,从第一设备“接收”可以包括从网络接收数据,但是可以不包括第一设备传输数据。

图5是可以用来将在本文档中描述的系统和方法实施为客户端或者一个或者多个服务器的计算设备500、计算设备550的框图。计算设备500旨在于代表各种形式的数字计算机,比如膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、主机和其他适当计算机。计算设备550旨在于代表各种形式的移动设备,比如个人数字助理、蜂窝电话、智能电话和其他相似计算设备。此外,计算设备500或者计算设备550可以包括通用串行总线(USB)快闪驱动。USB快闪驱动可以存储操作系统和其他应用。USB快闪驱动可以包括输入/输出部件,比如可以向另一计算设备的USB端口中插入的无线发射器或者USB连接器。这里所示部件、它们的连接和关系以及它们的功能仅为了举例说明而并非为了限制本文档中描述和/或要求保护的实现方式。

计算设备500包括处理器502、存储器504、存储设备506、连接到存储器504和高速扩展端口510的高速接口508以及连接到低速总线514和存储设备506的低速接口512。部件502、504、506、508、510和512中的每个部件使用各种总线来互连,并且可以装配于共同母板上或者如适合的那样以其他方式来装配。处理器502可以处理用于在计算设备500内执行的指令,这些指令包括存储于存储器504中或者存储设备506上以用于在外部输入/输出设备(比如耦合到高速接口508的显示器516)上显示用于GUI的图形信息的指令。在其他实现方式中,多个处理器和/或多个总线可以如适合的那样与多个存储器和存储器类型一起使用。也可以连接多个计算设备500而每个设备提供必需操作的部分(例如,作为服务器组、一组刀片服务器或者多处理器系统)。

存储器504存储计算设备500内的信息。在一个实现方式中,存储器504是一个或者多个易失性存储器单元。在另一实现方式中,存储器504是一个或者多个非易失性存储器单元。存储器504也可以是另一形式的计算机可读介质,比如磁盘或者光盘。

存储设备506能够提供用于计算设备500的海量存储。在一个实现方式中,存储设备506可以是或者包含计算机可读介质,比如软盘设备、硬盘设备、光盘设备或者带设备、闪存或者其他相似固态存储器设备或者设备阵列,该设备阵列包括存储区域网络或者其他配置中的设备。计算机程序产品可以有形地体现于信息载体中。计算机程序产品也可以包含在被执行时执行一种或者多种方法(比如上文描述的方法)的指令。信息载体是计算机或者机器可读介质(比如存储器504、存储设备506或者在处理器502)上的存储器。

高速控制器508管理用于计算设备500的带宽密集操作,而低速控制器512管理更低带宽密集操作。这样的功能分配仅为示例。在一个实现方式中,高速控制器508耦合到存储器504、显示器516(例如,通过图形处理器或者加速器)和可以接受各种扩展卡(未示出)的高速扩展端口510。在该实现方式中,低速控制器512耦合到存储设备506和低速扩展端口514。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器耦合到一个或者多个输入/输出设备(比如键盘、指示设备、扫描仪)或者联网设备(比如交换机或者路由器)。

如图所示,可以用多个不同形式实施计算设备500。例如,它可以被实施为标准服务器520或者多次实施于一组这样的服务器中。它也可以被实施为机架服务器系统524的部分。此外,它还可以被实施于个人计算机(比如膝上型计算机522)中。备选地,来自计算设备500的部件可以与移动设备(未示出)(比如设备550中的其他部件)组合。这样的设备中的每个设备可以包含计算设备500、550中的一个或者多个计算设备,并且整个系统可以由相互通信的多个计算设备500、550组成。

计算设备550包括处理器552、存储器564、输入/输出设备(比如显示器554)、通信接口566和收发器568以及其他部件。设备550也可以具有用于提供附加存储的存储设备(比如微驱动)或者其他设备。使用各种总线来互连部件550、552、564、554、566和568中的每个部件,并且部件中的若干部件可以装配于共同母板上或者如适合的那样以其他方式来装配。

处理器552可以执行计算设备550内的指令,这些指令包括存储于存储器564中的指令。处理器可以被实施为包括单独以及多个模拟和数字处理器的芯片组。此外,还可以使用多种架构中的任何架构来实施处理器。例如,处理器410可以是CISC(复杂指令集计算机)处理器、RISC(精简指令集计算机)处理器或者MISC(最小指令集计算机)处理器。处理器可以例如提供协调设备550的其他部件、比如控制用户接口、设备550运行的应用和设备550的无线通信。

处理器552可以通过控制接口558和耦合到显示器554的显示接口556与用户通信。显示器554可以例如是TFT(薄膜晶体管液晶显示器)显示器或者OLED(有机发光二极管)显示器或者其他适当显示技术。显示接口556可以包括用于驱动显示器554以向用户呈现图形和其他信息的适当电路。控制接口558可以从用户接收命令并且转换它们以用于向处理器552提交。此外,还可以提供与处理器552通信的外部接口562以便实现设备550与其他设备的近场通信。外部接口562可以例如在一些实现方式中提供有线通信或者在其他实现方式中提供无线通信,并且也可以使用多个接口。

存储器564存储计算设备550内的信息。存储器564可以被实施为一个或者多个计算机可读介质、一个或者多个易失性存储器单元或者一个或者多个非易失性存储器单元中的一个或者多个介质或者单元。也可以提供扩展存储器574并且通过扩展接口572连接到设备550,该扩展接口可以例如包括SIMM(单列存储器模块)卡接口。这样的扩展存储器574可以提供用于设备550的额外存储空间或者也可以存储用于设备550的应用或者其他信息。具体而言,扩展存储器574可以包括用于实现或者补充上文描述的过程的指令并且也可以包括安全信息。因此,例如,可以提供扩展存储器574作为用于设备的安全模块,并且可以用允许安全使用设备550的指令对扩展存储器574编程。此外,还可以经由SIMM卡将安全应用与附加信息一起提供,比如以不可黑客方式将标识信息放置于SIMM卡上。

如下文讨论的那样,存储器可以例如包括闪存和/或NVRAM存储器。在一个实现方式中,计算机程序产品有形地体现于信息载体中。计算机程序产品包含在被执行时执行一种或者多种方法(比如上文描述的方法)的指令。信息载体是计算机或者机器可读介质,比如存储器564、扩展存储器574或者可以例如通过收发器568或者外部接口562接收的在处理器552上的存储器。

设备550可以通过通信接口566无线通信,该通信接口可以在必需时包括数字信号处理电路。通信接口566可以提供在各种模式或者协议(比如GSM语音呼叫、SMS、EMS或者MMS消息接发、CDMA、TDMA、PDC、WCDMA、CDMA2000或者GPRS)以及其他模式或者协议之下的通信。这样的通信可以例如通过射频收发器568发生。此外,近程通信可以比如使用蓝牙、WiFi或者其他这样的收发器(未示出)来发生。此外,GPS(全球定位系统)接收器模块570可以向设备550提供附加的与导航和位置有关的无线数据,该数据可以如适当的那样由在设备550上运行的应用使用。

设备550还可以使用音频编码解码器560来可听地通信,该音频编码解码器可以从用户接收口述信息并且将它转换成可用数字信息。音频编码解码器560可以类似地比如通过例如设备550的听筒中的扬声器生成用于用户的可听声音。这样的声音可以包括来自语音电话呼叫的声音、可以包括记录的声音(例如,语音消息、音乐文件等)并且也可以包括由在设备550上操作的应用所生成的声音。

如图中所示,可以用多个不同形式实施计算设备550。例如,它可以被实施为蜂窝电话580。它也可以被实施为智能电话582、个人数字助理或者其他相似移动设备的部分。

这里描述的系统和技术的各种实现方式可以实现于数字电子电路、集成电路、特殊设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中。这些各种实现方式可以包括在可编程系统上可执行和/或可解译的一个或者多个计算机程序中的实现方式,该可编程系统包括可以是特殊或者专用的至少一个可编程处理器、至少一个输入设备和至少一个输出设备,该至少一个可编程处理器被耦合成从存储系统接收数据和指令以及向存储系统传输数据和指令。

这些计算机程序(也称为程序、软件、软件应用或者代码)包括用于可编程处理器的机器指令并且可以用高级过程和/或面向对象编程语言和/或用汇编/机器语言来实施。如这里所用,术语“机器可读介质”、“计算机可读介质”指代任何用来向可编程处理器提供机器指令和/或数据的计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),该计算机程序产品、装置和/或设备包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”指代任何用来向可编程处理器提供机器指令和/或数据的信号。

为了提供与用户的交互,这里描述的系统和技术可以实施于计算机上,该计算机具有用于向用户和键盘显示信息的显示设备(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器)以及用户可以用来向计算机提供输入的键盘和指示设备(例如鼠标或者轨迹球)。其他种类的设备也可以用来提供与用户的交互;例如,向用户提供的反馈可以是任何形式的感测反馈(例如,可视反馈、可听反馈或者触觉反馈);并且可以用包括声学、话音或者触觉输入的任何形式接收来自用户的输入。

这里描述的系统和技术可以实施于计算系统中,该计算系统包括后端部件(例如,作为数据服务器)或者包括中间件部件(例如,应用服务器)或者包括前端部件(例如,具有图形用户界面或者web浏览器的客户端计算机,用户可以通过该图形用户界面或者web浏览器与这里描述的系统和技术的实现方式交互)或者这样的后端、中间件或者前端部件的任何组合。系统的部件可以由任何数字数据通信形式或者介质(例如通信网络)互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)、对等网络(具有自组织或者静态成员)、网格计算基础结构和因特网。

计算系统可以包括客户端和服务器。客户端和服务器一般相互远离并且通常通过通信网络交互。客户端和服务器的关系借助在相应计算机上运行并且相互具有客户端-服务器关系的计算机程序来产生。

虽然上文已经具体描述数个实现方式,但是其他修改是可能的。另外,可以使用其他用于自动监测话音输入的机制。此外,在图中描绘的逻辑流程无需所示特定顺序或者依序顺序以实现希望的结果。可以提供其他步骤或者可以从描述的过程消除步骤,并且可以向描述的系统添加或者从描述的系统去除其他部件。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1