用于导航相关数据的语音包转让专利

申请号 : CN200880122722.7

文献号 : CN101911145B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : S·D·海莫施密特J·W·凯尔M·P·拉塞尔D·W·威斯库尔S·J·布伦克

申请人 : 佳明瑞士有限责任公司

摘要 :

描述了用于能够灵活地、动态地创建和/或修改用于定位装置的语音数据的技术。在一些实施例中,提供包括语言数据库和多个音频文件的语音包。语言数据库指定意图用于定位装置的音频输出的信息的合适的语法和词汇。音频文件包括可被定位装置访问以通过可听输出传达信息的单词和/或短语。一些实施例利用语音包工具箱来构造和/或定制语音包的一个部分或者多个部分。

权利要求 :

1.一种定位装置,包括:

导航信号接收器,可操作为确定所述定位装置的当前地理位置;

处理器,与所述导航信号接收器连接;

音频输出装置,与所述处理器连接;

计算机可读存储介质,可操作为被所述处理器访问;

语音包,被存储在计算机可读存储介质上,所述语音包包括:语言数据库,用于提供用于多个完整话语的语法和词汇,其中,所述语言数据库包括用于单一表达的多个完整话语;和音频数据仓库,包括与所述语言数据库提供的词汇对应的一个或多个音频文件;和计算机可执行操作软件,与所述语音包分离,被存储在所述计算机可读存储介质上,并可被所述处理器执行以:伪随机地选择用于单一表达的所述完整话语中的一个话语,在所述语言数据库中识别用于所选择的话语的语法和词汇;

从音频数据仓库检索所述音频文件中与识别的词汇对应的一个或多个音频文件;

使用识别的语法和检索的一个或多个音频文件来构造短语;和通过音频输出来输出构造的短语。

2.根据权利要求1所述的定位装置,还包括网络接口,所述网络接口可操作为被所述处理器用于从外部装置下载语音包。

3.根据权利要求2所述的定位装置,其中,所述操作软件可被处理器执行以确定一个或多个更新是否可用于语音包以及在不改变操作软件的情况下通过网络接口更新所述语音包的至少一部分。

4.根据权利要求1所述的定位装置,其中,所述操作软件可被处理器执行以:基于所述定位装置的当前地理位置来选择话语;和在语言数据库中识别用于所选择的话语的语法和词汇。

5.根据权利要求4所述的定位装置,其中,所述操作软件可被处理器执行以:基于所述定位装置的当前地理位置来生成导航路线;

基于生成的导航路线来选择一个或多个话语;和在语言数据库中识别用于所选择的一个或多个话语的语法和词汇。

6.根据权利要求1所述的定位装置,其中,可动态地配置语言数据库以包括用于多种语言的语法信息和词汇信息。

7.根据权利要求1所述的定位装置,其中,所述语言数据库为与单一表达对应的所述话语中的每个话语指定使用百分比,并至少部分基于指定的使用百分比伪随机地选择话语。

8.一种定位装置,包括:

导航信号接收器,可操作为确定所述定位装置的当前地理位置;

处理器,与所述导航信号接收器连接;

音频输出装置,与所述处理器连接;

计算机可读存储介质,可操作为被所述处理器访问,包括语言数据库,所述语言数据库包括多个单一表达和多个关联的话语;和计算机可执行指令,被存储在所述计算机可读存储介质上,并可被所述处理器执行以:识别与单一表达对应的多个话语;

伪随机地选择识别的话语中的一个话语;

对于选择的话语从音频数据仓库检索与语言数据库中识别的词汇对应的一个或多个音频文件,使用所检索的一个或多个音频文件来构建短语,和通过音频输出来输出选择的话语。

9.根据权利要求8所述的定位装置,其中,所述计算机可读存储介质被访问以识别与所述单一表达中的任何一个对应的话语。

10.根据权利要求8所述的定位装置,其中,所述语言数据库为与单一表达对应的每个话语指定使用百分比,并且至少部分基于指定的使用百分比来伪随机地选择话语。

11.根据权利要求8所述的定位装置,其中,所述计算机可读指令包括随机化函数,并且使用该随机化函数来伪随机地选择话语。

12.根据权利要求8所述的定位装置,其中,所述计算机可读指令可被所述处理器执行以基于所述定位装置的当前地理位置来识别所述单一表达。

13.根据权利要求12所述的定位装置,其中,所述计算机可读指令可被处理器执行以:基于所述定位装置的当前地理位置来生成导航路线;和基于所述定位装置的当前地理位置和生成的导航路线来识别所述单一表达。

14.一种选择供定位装置输出的话语的方法,该方法包括:在驻留于所述定位装置上的语言数据库中识别与单一表达对应的多个话语;

伪随机地选择识别的话语中的一个话语;

对于选择的话语从音频数据仓库检索与语言数据库中识别的词汇对应的一个或多个音频文件,使用所检索的一个或多个音频文件来构建短语,和通过与所述定位装置相关的音频输出可听地输出选择的话语。

15.根据权利要求14所述的选择供定位装置输出的话语的方法,其中,所述语言数据库为与单一表达对应的所述话语中的每个话语指定使用百分比,并至少部分基于指定的使用百分比来伪随机地选择话语。

16.根据权利要求14所述的选择供定位装置输出的话语的方法,其中,使用随机化函数来伪随机地选择话语。

17.根据权利要求14所述的选择供定位装置输出的话语的方法,还包括基于所述定位装置的当前地理位置来识别单一表达。

18.根据权利要求17所述的选择供定位装置输出的话语的方法,还包括生成导航路线以及基于所述定位装置的当前地理位置和生成的导航路线来识别单一表达。

说明书 :

用于导航相关数据的语音包

背景技术

[0001] 定位装置可使得用户能够通过一种或多种定位方法确定用户的地理位置。合适的定位方法包括利用基于卫星的导航系统、利用来自蜂窝电话系统的数据等。定位装置还可将位置相关数据传送给用户,例如,用户的当前位置或者从用户的当前位置到另一个位置的方向。例如,如果用户希望从用户的工作地点开车到特定的餐馆,则用户可通过定位装置请求从用户的工作地点到餐馆的开车方向。然后,该装置可以以各种形式提供方向,例如在图形显示器上可视地显示方向。定位装置还可通过可听的逐个转弯(turn-by-turn)指令将方向提供给用户。由于用户不必为了接收开车方向而将用户的焦点从道路转移到图形显示器上,所以可听的开车指令是有用的。
[0002] 当前的定位装置在提供可听的开车指令时通常使用预录语音(PRV)。然而,当前的PRV实现遇到许多障碍。首先,许多当前的PRV实现中的语法和词汇知识都是由定位装置的操作软件定义的,而定位装置的操作软件禁止修改现有的PRV和创建新的PRV。第二,在典型的操作软件内定义的严格的语法和词汇禁止随机选择特定事件的音频片段供定位装置输出。第三,典型的操作软件内定义的严格的语法和词汇禁止在随机时间或以随机间隔播放PRV中的音频片段和其它音频数据。最后,由于重新使用方向相关短语,并且即使有任何用于定制音频输出的选项,也是非常少,所以当前的PRV实现难以供第三方开发者使用。

发明内容

[0003] 描述了能够灵活地、动态地创建和/或修改用于定位装置的语音数据的技术。在一些实施例中,提供包括语言数据库和多个音频文件的语音包。语言数据库指定用于意图用于定位装置的音频输出的信息的合适的语法和词汇。音频文件包括可被定位装置访问以通过可听输出传达信息的单词和/或短语。
[0004] 提供这个概要仅仅是为了引入在详细说明书和附图中充分描述的主题内容。因此,不应该认为该概要是描述必要特征,也不应该将该概要用于确定权利要求的范围。

附图说明

[0005] 参照附图对详细说明进行描述。在附图中,标号的最左数字表示该标号首次出现的附图。说明书和附图中不同实例中的相同标号的使用可表示类似的或者相同的项目。
[0006] 图1是其操作为提供导航语音数据的灵活创建和修改的示例性定位系统环境的图示。
[0007] 图2是描绘用于生成语音数据包和将数据加载在定位装置上的示例性实现的过程的流程图。
[0008] 图3是描绘用于检索和排列音频数据以供定位装置输出的具体示例性实现的过程的流程图。
[0009] 图4是描绘用于更新语音包中的数据的具体示例性实现的过程的流程图。
[0010] 图5是描绘用于从多个可获得短语中选择短语以通过音频输出来输出信息的具体示例性实现的过程的流程图。

具体实施方式

[0011] 对创建和修改导航语音数据的技术和处理进行描述。在一些实施例中,提供包括语言数据库和多个音频文件的语音包。语言数据库指定用于意图用于定位装置的音频输出的信息的合适的语法和词汇。音频文件包括可被定位装置访问以通过可听输出传达信息的单词和/或短语。音频文件可以是任何合适的格式,例如.wav、.wma、.mp3、ogg等等。
[0012] 一些实施例还利用语音包工具箱来构造和/或定制语音包的一个部分或者多个部分。工具箱可包括存在于定位装置或其它计算装置上的一个或多个软件模块和/或应用。工具箱还可包括测试模块,开发者和/或终端用户可使用该测试模块来监听根据语音包中的语法和/或词汇信息而生成的音频文件的各种组合。测试包使得开发者和/或终端用户能够在受控环境下和在没有实际的定位装置的一些实施例(比如,测试包可存在于与定位装置分离的计算装置上)中测试各种导航场景。
[0013] 在以下论述中,首先对可操作为利用这里所述的用于创建和修改导航语音词汇和语法的技术和处理的示例性环境进行描述。然后对可用于示例性环境中以及在不脱离其精神和范围的情况下可用于其它环境中的示例性处理进行描述。然后对语音包工具箱进行论述,其后为可用于实现这里所述的各种技术和处理的脚本的一个示例。最后,对指定用于从多个可用的短语中选择一个或多个短语的标准的示例性处理进行描述,所述一个或多个短语将用于输出信息。虽然与定位环境相关地描述用于创建和修改导航语音数据的技术和处理,但是应该易于明白,这些技术可用于各种不同的环境。
[0014] 图1示出可操作为执行这里所述的处理和技术的示例性定位系统环境100。环境100可包括任意数量的位置数据平台和/或位置数据发送器,例如导航卫星102。在图1的环境100下,导航卫星102示为包括一个或多个分开的天线。每个天线发送可包括定位信息和导航信号的各个信号。
[0015] 环境100还包括蜂窝提供商104和互联网提供商106。蜂窝提供商104可为环境100的各个方面提供蜂窝电话和/或数据检索功能,互联网提供商106可为环境100的各个方面提供网络连接和/或数据检索功能。
[0016] 环境100还包括定位装置108,例如任意类型的基于地面的、基于海上的和/或基于空中的移动装置。在一些实施例中,定位装置108包括个人导航装置。定位装置108可实现各种类型的定位功能,为了以下论述的目的,这些定位功能可涉及各种不同的导航技术和可通过“知道”一个或多个位置而被支持的其它技术。例如,定位功能可用于提供位置信息、定时信息、速度信息、逐个转弯开车指令和各种其它导航相关数据。因此,可以以各种方式配置定位装置108来执行广泛种类的功能。例如,定位装置108可被配置为用于如所示的车辆导航、空中导航(比如,用于飞机、直升飞机)、海上导航、个人使用(比如,作为健康相关设备的一部分)等等。定位装置108可包括使用前述技术中的一种或多种来确定位置的各种装置。
[0017] 图1的定位装置108包括导航信号接收器110,其被配置为从一个或多个导航相关装置(比如,导航卫星102)接收导航信号。导航信号接收器110可支持各种不同的导航相关平台,例如,全球定位系统(GPS)、GLONASS、Galileo等。虽然这里没有明确地示出,但是定位装置108可包括用于接收各种类型的信号,例如导航信号的一个或多个天线。
[0018] 定位装置108还包括网络接口112,其可使得该装置能够与一个或多个网络(例如网络114)通信。网络114可包括任何合适的网络,例如局域网、广域网、互联网、卫星网络、蜂窝电话网络等。在一个或多个实施例中,导航信号接收器110可从网络112接收数据和/或信号来确定位置(比如,辅助GPS或“AGPS”)。因此,在一个或多个实施例中,接收器110可被配置为包括一个或多个网络接口能力。
[0019] 定位装置108还包括一个或多个输入/输出(I/O)装置116(比如,触摸屏、按钮、无线输入装置、数据输入、屏幕等)。输入/输出装置116包括一个或多个音频I/O装置118,例如麦克风、扬声器等。定位装置108的各种装置和模块与处理器120和存储器122通信连接。
[0020] 处理器120不受形成它的材料或其中所使用的处理机制的限制。这样,可通过半导体和/或晶体管(比如,集成电路(IC)、可编程逻辑器件)等来实现处理器120。另外,虽然显示了单个存储器122,但是可利用多种类型和组合的计算机可读存储器,例如随机存取存储器(RAM)、硬盘存储器、可拆卸介质存储器(比如,可通过容纳可拆卸存储器盒的槽来实现存储器122)和其它类型的计算机可读介质。虽然分开示出定位装置108的部件,但是应该明白,在不脱离其精神和范围的情况下,还可对这些部件进一步进行划分和/或组合。
[0021] 定位装置108被配置为接收由一个或多个位置数据平台和/或位置数据发送器(例如导航卫星102)发送的信号和/或数据。这些信号被提供给处理器120以供定位模块124进行处理,定位模块124可存储在存储器122中,并可在处理器120上执行。定位模块124代表确定地理位置的功能,例如通过对从各种平台/发送器获得的信号和/或数据进行处理来提供定位功能,例如确定位置、速度、时间等。信号和/或数据可包括位置相关数据(例如测距信号)、星历表(ephemeride)、历书(almanac)等。
[0022] 可执行定位模块124以使用存储在存储器122中的地图数据126来生成导航指令(比如,到达目的地的逐个转弯指令)和在地图上显示当前位置等。还可执行定位模块124以提供其它定位功能,例如确定当前速度、计算到达时间等。还可构思多种其它示例。
[0023] 还存储在存储器122上的是输入模式管理器128,其可使得定位装置108能够以各种输入模式(比如,触摸输入模式、自动速度识别模式等)工作。
[0024] 存储器122还存储语音模块130,其被构造为对定位装置108执行各种速度和/或语音相关功能。装置语音包132存储在存储器122内,包括语言数据库134和音频数据136。在各种实施例中,语音包132与定位装置108所利用的操作软件是分离的。语言数据库134包括可被定位装置108访问以用于传达可听信息的语法数据和词汇数据。语音数据
136为可被定位装置108的各种部件访问以提供音频输出功能的音频文件贮存库。
[0025] 存储器122可选地可存储语音包工具箱138,语音包工具箱138提供创建和/或定制装置语音包132的各个方面的功能。开发者、终端用户或任何其它实体可利用语音包工具箱138来添加、删除和/或改变语音包的数据和/或配置。例如,用户可将音频文件添加到将在通过定位装置108的音频输出来输出导航信息时使用的音频数据136中。用户可添加在可从音频数据136获得的当前分类的音频文件中没有表示的某种语言或方言的音频文件。用户还可定制语言数据库134当前提供的特定语法和/或词汇。语音包工具箱138提供用于装置语音包132内容的接口,并使得各种不同的用户能够在不修改定位装置108的操作软件的情况下修改装置语音包132内容。
[0026] 用户界面模块140存储在存储器122上,并被配置为生成各种不同的图形用户界面(GUI),例如被设计用于接收用户与定位装置108的物理交互的GUI、被设计为接收从装置用户输入的语音的GUI等。定位装置108的GUI还可被配置为通过单个GUI接收用户输入模式的任何组合,例如与装置的触觉交互和对装置的音频输入的组合。
[0027] 定位装置108还可执行蜂窝电话功能,例如通过与蜂窝提供商104所提供的蜂窝网络连接来执行蜂窝电话功能。还可通过互联网提供商106为定位装置108提供网络连接(比如,互联网接入)。通过使用互联网提供商106和/或蜂窝提供商104,定位装置108可检索地图、开车方向、系统更新、语音包132、语音包工具箱138等。
[0028] 定位系统环境100还包括计算装置142。虽然这里将计算装置142示为台式计算机,但是这并不意欲构成限制,可利用任何合适的计算装置,例如膝上型电脑、数字媒体播放器、PDA等。计算装置142包括一个或多个处理器144和计算机可读介质146。与定位装置108的存储器122一样,计算机可读介质146可包括多种类型和组合的计算机可读存储器。存储在计算机可读介质146上的是各种模块,包括远程语音包148和语音包工具箱150。包括在远程语音包148中的是语言数据库152和音频数据154。远程语音包148和语音包工具箱150可包括与对装置语音包132和语音包工具箱138描述的数据和功能类似的或相同的数据和功能。使用远程语音包148和语音包工具箱150使得能够在远离定位装置的装置上构造和/或定制语音包,然后将语音包加载到定位装置上。如所示,计算装置142可直接与定位装置108通信或者通过网络114与定位装置108通信。虽然这里没有明确地示出,但是语音包工具箱可被实现为可被用于创建和/或配置语音包和将语音包下载到定位装置的web应用。
[0029] 通常,可使用软件、固件、硬件(比如,固定逻辑电路)、人工处理或这些实现的组合来实现这里所述的任意功能。这里所使用的术语“模块”和“功能”通常表示软件、固件、硬件或者其组合。例如,在软件实现的情况下,模块表示当在处理器(例如图1的定位装置108的处理器120)上被执行时执行指定任务的可执行指令。程序代码可存储在一个或多个计算机可读介质上,计算机可读介质的示例为图1的定位装置108的存储器122。这里所述的用于创建和修改导航语音词汇和语法的技术和处理是不依赖于平台的,这表示这些技术可在具有各种处理器的各种商业计算平台上实现。
[0030] 示例性过程
[0031] 以下论述描述可利用前述系统和装置实现的用于创建和修改导航语音数据的技术和处理。可用硬件、固件、软件或者其组合来实现每个过程的方面。这些过程被显示为指定由一个或多个装置执行的操作的块的集合,但是不必限于各个块所显示的执行操作的顺序。在以下论述的部分中,将参照图1的环境100和/或其它示例性实施例。
[0032] 图2示出处理200,处理200为向定位装置提供语法信息、词汇信息和语音数据的处理的一个示例。提供用于生成和/或配置语音包的各个方面的语音包工具箱(块202)。生成包括语言语法信息和词汇信息的语言数据库(块204)。在一些实施例中,语法信息包括指定用于按特定语言排列单词以构成该语言的短语和/或句子的规则的数据。例如,应用于英语的特定语法规则可指定能够如何排列英文单词来传达信息。英语仅用于示例性目的,其它实施例可利用任何合适的语言和/或方言,而不脱离要求保护的实施例的精神和范围。词汇信息包括构成特定的一种语言、多种语言和/或方言的特定单词和/或短语。
[0033] 语言数据库所提供的语言和语法可与可通过定位装置108可听地输出的多个完整话语(utterance)对应。这里所使用的“话语”是指任意短语或者单词和/或数字的其它组合。在一些实施例中,语言数据库可表示多种表达(expression)和与每种表达对应的一种或多种话语。这里所使用的“表达”是指期望传达给用户的概念。所述表达可与可基于用户的当前位置、用户的行进路径或起始路径或者导航装置基于当前位置和其它导航信息、当前位置和其它导航信息的组合等生成的路线而传达给用户的多个导航相关表达对应。然而,所述表达可与可以可听地传达给用户的任意信息对应。
[0034] 例如,一种导航相关表达为用户应该在<距离(distance)>右转。语言数据库可指定用于与此单一表达对应的多个话语的语法和词汇。例如:
[0035] “Turn right in
[0036] “Turn right,
[0037] “In,turn right”
[0038] “,turn right”
[0039] 因此,通过访问语言数据库,定位装置108可识别用于话语和/或相应表达的语法和词汇。如在这里更详细论述地那样,可易于在不影响定位装置108上驻留的操作系统或其它系统指令的情况下对语言数据库和所提供的语法和/或词汇进行修改以提供任意期望的具有任何语法和词汇的话语。
[0040] 构造包括各种音频数据文件的音频数据仓库(块206)。如上所述,可以以任何合适的格式存储音频数据文件,音频数据文件可包括各种不同语言和方言的单词和/或短语。在一些实施例中,将语言数据库和音频数据仓库组装到可下载或者另外输出到一个或多个装置的语音包中。将语言数据库和音频数据仓库加载到装置上(块208)。另外或者可替换地,可将语言数据库和/或音频数据仓库加载到或者另外存储在装置(例如计算装置142)可访问的远程资源上。通常在远离定位装置的装置(比如,计算装置142)上全部或者部分实现处理200。可替换地和/或另外,语音包工具箱可驻留在定位装置上以用于配置语音包的一个或多个方面。
[0041] 图3示出处理300,处理300为用于提供导航相关信息的可听输出的处理的一个示例。确定将通过定位装置的音频输出来输出的信息(块302)。在一个示例中,定位装置用户请求从第一位置到第二位置的行进方向(比如,逐个转弯开车指令)。在这个示例中,定位装置可确定,为了从第一位置到达第二位置,应该指示用户在主街道上向西行进2英里。定位装置识别用于信息的合适的语法和/或词汇(块304)。继续当前示例,定位装置可访问语言数据库,并根据该数据库确定向用户传达信息的正确的语法和/或词汇,所述信息表示为了到达第二位置,用户应该在主街道上向西行进2英里。
[0042] 检索与所识别的用于信息的词汇对应的一个或多个音频文件(块306)。在当前示例中,词汇可包括例如“travel”、“drive for”、“two”、“Main”、“street”等单词和/或短语。因此,检索与这些单词和/或短语对应的音频文件(比如,从音频数据仓库,例如音频数据136)。在一些实施例中,可获得多个不同的音频文件,这些音频文件每个均与所述词汇中的单个单词对应。例如,信息“travel”可与几个不同的音频文件相关,例如“drive”、“walk”、“ride”,并且还可具有可用于每个单词的各种不同的重音和/或语音变形(inflection)。因此,当对词汇中的单个单词请求音频文件时,可获得满足该请求的各种不同的音频文件。根据所识别的合适的语法排列音频数据文件(块308)。在当前示例中,排列音频文件以形成例如“drive for two miles west on Main Street”或者“travel west on Main Street for two miles”等短语。使得排列的音频文件可供定位装置输出(块310)。例如,可将每个与行进指令序列中的离散行进指令对应的一个或多个句子和/或短语存储在缓冲器中,并且当与这些句子和/或短语对应的行进指令与用户的当前位置相关时,可将这些句子和/或短语(单独或成组)提供给音频输出装置。在当前示例中,当用户正靠近用户应该向右转的街道时,可将例如“turn right in 100meters”的指令存储在缓冲器中,并提供给音频输出装置。定位装置输出排列的音频文件(块312)。
[0043] 图4示出处理400,处理400为用于更新语音包的一个或多个方面(比如,语言数据库、音频数据仓库等)的处理的一个示例。该处理检查一个或多个更新是否可用于语音包(块402)。如果确定一个或多个更新可用于语音包(块404),则将所述一个或多个更新加载到定位装置上的语音包上(块406)。如果确定当前没有更新可用于语音包(块404),则所述处理返回到块402。可由软件和/或硬件开发者创建用于语音包的更新,还可由终端用户创建用于语音包的更新。更新可包括更新的语法和/或词汇信息,还可包括新的和/或编辑的音频文件。可通过语音包工具箱来实现处理400中的一种或多种操作。
[0044] 语音包工具箱
[0045] 如上所述,一些实施例可利用语音包工具箱来构造和/或定制语音包的一部分或者多个部分。在一些示例性实现中,语音包工具箱可包括用于在不影响定位装置所使用的操作软件变化的情况下创建和/或定制语音包的一个或多个部分的脚本语言,和/或可利用该脚本语言。例如,工具箱可对用该脚本语言编写的脚本进行处理以形成语音包的至少一部分(比如,语言数据库)。脚本语言和相关脚本可与语音包分离和/或构成语音包的一部分。可在任意时间利用工具箱、其它软件或者人工方法动态地更新语音包、数据库和/或相关音频数据。
[0046] 语音包工具箱还可包括用于处理脚本和建造语音包(包括数据库和相关音频数据)的命令行工具。还可并入测试套件以用于在不需要定位装置的情况下测试音频数据所表示的短语。这可使得开发者或其他用户可听到他们所使用的音频文件的各种组合。在至少一个实施例中,命令行工具可将每个短语的音频文件连接到一个音频文件中。另外或者可替换地,GUI应用程序可组装音频文件,并为一个或多个短语播放它们。
[0047] 示例性脚本
[0048] 以下是在一个或多个实施例中可用于定义用于各种话语的语法和词汇的脚本的一个示例。
[0049]
[0050] in{dist1}board ferry
[0051] board the ferry in{dist2}[0052]
[0053]
[0054] rurn right in{dist1}
[0055] in{dist1}turn right
[0056] turn right{dist1}
[0057] {dist1}turn right
[0058]
[0059]
[0060] drive{dist1}then enter roundabout[0061]
[0062]
[0063]
[0064]
[0065] one hundred feet[0066]
[0067]
[0068] two hundred feet[0069] two_hundred feet2[0070]
[0071] similar for rest of numbers
[0072]
[0073]
[0074] same as above
[0075]
[0076]
[0077] same as above
[0078]
[0079]
[0080] same as abave
[0081]
[0082]
[0083] same as above
[0084]
[0085]
[0086]
[0087] same as above
[0088]
[0089] 在以上部分中列出的各个单词(例如第一条目中的“in”、“board”和“ferry”)是(任何合适的文件格式的)音频文件的文件名,是用于定位装置108识别的表达的标签,以及是用于话语的标签。提供以上脚本仅仅是作为示例,本发明的实施例可利用可替换的脚本和数据库——比如,不将话语与表达相关联的非层次结构脚本和数据库。
[0090] 在一些实施例中,语音包工具箱可读取脚本的内容和创建语言数据库(例如表格、列表、.vpm文件等),该语言数据库指定对于任何特定的事件应该播放哪些音频文件和应该播放这些音频文件的顺序。可使用有线或无线连接(包括通过例如互联网的网络连接)将语言数据库和相关的音频数据(例如音频文件)传送到定位装置以供使用。然而,在一些实施例中,语音包工具箱和语音包可存在于定位装置上,以使用户可改变语音语法和其它语音包数据,而无需访问外部的或分离的计算装置。当定位装置所执行的操作软件需要播放可听指令或其它话语(比如,短语)时,它访问语音包以识别应该使用哪些音频文件和应该播放这些音频文件的顺序。然后可按指定的顺序向用户播放识别的音频文件。
[0091] 对于每个短语,不同的各个音频文件集合可被指定和给予与它们相对于彼此应该播放的次数相关的使用百分比。例如,对于以上的Board Ferry指令,90%的时间将播放第一集合,但是10%的时间将播放第二集合。对于定制语音,这允许语音改变所说的内容。这通过使得用户仅在10%的时间听到短语(例如著名演员所说的“I pity the fool who doesn’t board the ferry”)来防止这些短语变得陈旧。在一些实施例中,代替上述基于百分比的功能或者除了上述基于百分比的功能之外,定位装置还可生成随机数或伪随机数来选择用于播放的特定音频文件。
[0092] 对于每个短语,可使用用于距离的占位符({dist1},{dist2})。由于用于距离的单词可取决于短语中的其它单词或者使用它的位置(比如,变形的变化),所以这使得数据库可指定正确的单词用于每个短语中的距离。
[0093] 另外或者可替换地,对于每个短语,可使用用于可变内容的占位符({dist1},{dist2},{ord1})。由于用于这个可变内容的单词可取决于短语中的其它单词或者使用它的位置(比如,变形的变化),所以这使得数据库可指定正确的单词用于每个短语中的该可变内容。
[0094] 为了提供使用音频文件的更多的创造性,语音包和对应的语音数据可包括随机短语和非导航短语。这些短语的使用可基于定位装置的特定实现或配置而改变。例如,在路线行程长时,可讲随机短语。这些随机短语可以是笑话、俏皮话等。“You’re doing great!”或者“{snoring}Huh?What?Sorry,must have dozed off,hopefully I didn’t miss our turn”。
[0095] 图5示出处理500,处理500为用于从多个可获得短语中选择短语以通过语音输出来输出信息的处理的一个示例。确定将被可听地输出(比如,通过定位装置)的信息(块502)。构造多个不同的短语,每个短语可操作为输出确定的信息(块504)。例如,如果信息包括驾驶者应该在1千米处在第一街道向左转的事实,则可构造几个不同的短语来传递这个信息。一个短语可以是“travel 1 kilometer and turn left at First Street”,而另一个短语可以是“turn left at First Street after traveling 1kilometer”,再另一个短语可以是“you should continue traveling for one kilometer and then make a left turn onto First Street”。可容易明白,可构造多种不同的话语(比如,短语)来传递一种或多种表达,并且可伪随机地选择用于可听播放的话语。
[0096] 然后指定用于选择多个不同短语(比如,话语)中的一个或多个以传递信息的标准(块506)。例如,如上所述,可为每个短语分配一个百分比值,或者可基于随机或者伪随机生成的数来选择短语。在当前示例中,可为第一短语提供25%的时间,为第二短语提供25%的时间,为第三短语提供50%的时间。至少部分基于指定标准来选择多个短语中的一个或多个(块508)。可听地输出所选择的短语(比如,通过定位装置)(块510)。
[0097] 虽然用结构特征和/或方法行为特定的语言描述了本发明,但是应该理解,所附权利要求中所限定的本发明不必限于所述的特定特征或者行为。相反,作为实现要求保护的发明的示例性形式公开特定的特征和行为。