具有语音辅助的媒体回放系统的制作方法

文档序号:21487046发布日期:2020-07-14 17:13阅读:278来源:国知局
具有语音辅助的媒体回放系统的制作方法

相关申请的交叉引用

本申请要求2017年9月29日提交的美国专利申请no.15/721,141的优先权,其全部内容通过引用并入本文。

本公开涉及消费品,并且更具体地涉及针对媒体回放或其某个方面的语音控制的方法、系统、产品、特征、服务和其他元素。



背景技术:

访问和收听外放设置的数字音频的选项是有限的,直到2003年sonos公司中请了其首批专利中请中的一件题为“methodforsynchronizingaudioplaybackbetweenmultiplenetworkeddevices”的专利申请,并在2005年开始出售媒体回放系统为止。sonos无线高保真(hifi)系统使人们可以通过一个或多个联网回放设备体验来自许多源的音乐。通过安装在智能电话、平板计算机或计算机上的软件控制应用,人们能够在具有联网回放设备的任何房间中播放他或她期望的内容。另外,使用控制器,例如,能够将不同的歌曲流传输到具有回放设备的每个房间,能够将房间组合在一起进行同步回放,或者可以在所有房间中同步收听相同的歌曲。

鉴于对数字媒体的兴趣日益增长,仍然需要开发一种消费者易于使用的技术以进一步增强收听体验。

附图说明

参考以下说明书、所附权利要求和附图,可以更好地理解所公开的技术的特征、方面和优点,在附图中:

图1示出了可以实践某些实施例的媒体回放系统;

图2a是示例回放设备的功能框图;

图2b是包括网络麦克风设备的示例回放设备的等距图;

图3a、3b、3c、3d和3e是示出了根据本公开各方面的示例区域和区域分组的图;

图4是根据本公开各方面的示例控制器设备的功能框图;

图4a和图4b是根据本公开各方面的控制器接口;

图5a是根据本公开各方面的示例网络麦克风设备的功能框图;

图5b是根据本公开各方面的示例语音输入的图;

图6是根据本公开各方面的示例远程计算设备的功能框图;

图7a是根据本公开各方面的示例网络系统的示意图;

图7b是根据本公开各方面的由图7a的示例网络系统实现的示例消息流;

图8a是根据本公开各方面的用于调用语音助手服务的示例方法的流程图;

图8b是根据本公开各方面的示例命令信息集合的框图;

图9a、9b和9c是根据本公开各方面的具有示例语音输入命令和相关联信息的表格;

图11a和图11b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图12a和图12b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图13a和图13b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图14a和图14b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图15a和图15b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图16a和图16b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图17a和图17b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图18a和图18b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;

图19a和图19b是示出了根据本公开各方面的用于调用vas的示例语音输入的图;以及

图20a和图20b是示出了根据本公开各方面的用于调用vas的示例语音输入的图。

附图用于示出示例实施例的目的,但可以理解,本发明不限于附图所示的布置和手段。在附图中,相同的附图标记识别至少大致相似的元件。为了促进对任何特定元件的讨论,任何参考数字中的一个或多个最高有效位指的是首次引入该元件的附图。例如,首先参照图1介绍和讨论元件107。

具体实施方式

i.概述

语音控制对于具有智能应用和相关设备(例如,无线照明设备、家庭自动化设备(例如,恒温器、门锁等)和音频回放设备)的“智能”家居可以是有益的。在一些实施方式中,联网的麦克风设备可以用于控制智能家居设备。网络麦克风设备通常将包括用于接收语音输入的麦克风。网络麦克风设备可以将语音输入转发到语音助手服务(vas)。传统vas可以是由云服务器实现以处理语音输入的远程服务。vas可以处理语音输入以确定该语音输入的意图。基于该响应,网络麦克风设备可以使一个或多个智能设备执行动作。例如,网络麦克风设备可以基于对来自vas的指令的响应来指示照明设备打开/关闭。

由网络麦克风设备检测到的语音输入通常将包括一个唤醒词,其后跟包含用户请求的发声。唤醒词通常是用于“唤醒”并调用vas来解释语音输入意图的预定词或短语。例如,在查询vas时,用户可能会说出唤醒词“alexa”。其他示例包括:用于调用vas的“ok,google”,以及用于调用vas的“hey,siri”,或者用于由提供的vas的“hey,sonos”。

网络麦克风设备在语音输入中侦听伴随唤醒字的用户请求或命令。在一些实例中,用户请求可以包括控制第三方设备(例如,恒温器(例如,恒温器)、照明设备(例如,philips照明设备)或媒体回放设备(例如,回放设备))的命令。例如,用户可以说出唤醒词“alexa”,其后跟“将恒温器设置为68度”的发声,以使用vas设置家庭中的温度。用户可以说出相同的唤醒词,其后跟“点亮客厅”的发声,以打开家庭客厅区域中的照明设备。用户可以类似地说出唤醒词,其后跟在家庭中的回放设备上播放特定歌曲、专辑或音乐播放列表的请求。

vas可以采用自然语言理解(nlu)系统来处理语音输入。nlu系统通常需要多个远程服务器,这些远程服务器被编程以检测给定语音输入的基本意图。例如,这些服务器可以维护语言词典;解析器;语法和语义规则;以及相关的处理算法来确定用户的意图。

传统vas遇到的一个挑战是nlu处理是计算密集型的。例如,语音处理算法需要定期更新,以处理措辞、句子结构、发音和其他语音特征中的细微差别。因此,vas提供商必须维护并不断开发处理算法,并部署越来越多的资源(例如,其他云服务器),以处理从世界各地的用户收到的无数的语音输入。

一个相关的挑战是某些智能设备的语音控制可能需要相对复杂的语音处理算法,这可能会进一步增加vas资源的负担。例如,要打开客厅中的一组照明设备,一个用户可能更喜欢说“开启灯”,而另一个用户可能更喜欢说“打开客厅”。两个用户都有打开照明设备的相同的基本意图,但是短语(包括动词)的结构不同,更不用说后一个短语标识了客厅中的设备,而前者则没有。为了解决这些问题,vas必须投入更多资源来破解用户意图,特别是在控制需要复杂语音处理资源和算法的智能设备时,例如,用于区分命令结构和相关语法中细微但有意义的变化的算法。

随着消费者对智能设备的需求增长,并且这些设备变得更加多样化,某些vas提供商可能很难跟上发展。在一些情况下,vas可能具有有限的系统资源,这削弱了vas成功响应入站语音输入的能力。例如,在以上示例中,vas可能具有处理语音发声“打开灯”的能力,但是可能缺乏处理语音发声“开启灯”的能力,因为该服务可能使用无法识别后者惯用语背后的意图的算法。在这种情况下,用户可能不得不用其他符合条件的信息来重述原始请求,例如,通过说“打开客厅的灯”。备选地,vas可以通知用户其无法处理这样的请求,或者vas可以简单地完全忽略该请求。在任何这些情况下,用户可能会由于不良的语音控制体验而感到不满意。

在媒体回放系统(例如,多区域回放系统)的情况下,常规vas可能特别受限制。例如,传统vas可能仅支持用于基本回放的语音控制,或者要求用户使用特定的并且惯用的措辞与设备进行交互,而不是自然对话。此外,传统vas可能不支持多区域回放或用户希望控制的其他特征,例如,设备组合、多房间音量、均衡参数和/或用于给定回放场景的音频内容。控制这些功能可能需要比基本回放所需的资源明显更多的资源。

本文描述的媒体回放系统可以解决传统vas的这些和其他限制。例如,在一些实施例中,媒体回放被配置为选择第一vas(例如,增强vas)而不是第二vas(例如,传统vas)以处理语音输入。在这种情况下,媒体回放系统可以通过选择第一vas而不是第二vas来干预以处理某些语音输入,例如,用于控制媒体回放系统的相对高级和其他特征的语音输入。在一个方面,相对于仅由第二vas提供的语音控制,第一vas可以增强语音控制。在一些实施例中,针对媒体回放系统的至少一些语音输入可能不能经由第二vas来调用。在这些和其他实施例中,可以经由第二vas调用至少一些语音输入,但是对于第一vas处理某些语音输入可以是优选的。例如,第一vas可以比第二vas更可靠并且更准确地处理某些请求。在一些实施例中,第二vas可以是默认vas,通常向其发送某些类型的语音输入。例如,在一些实施例中,传统vas可能更适合处理涉及通用互联网查询的请求,例如,说“告诉我今天的天气”的语音输入。在相关实施例中,当调用第一vas和第二vas中的任一个时,用户可以使用相同的唤醒工作(例如,“heysamantha”)。在一个方面,可能不知道在说出语音输入时幕后正在发生一个vas与另一个vas的选择。在一个实施例中,唤醒工作可以是与传统vas(例如,亚马逊的)相关联的唤醒词。

在一个实施例中,媒体回放系统可以包括被配置为捕获语音输入的网络麦克风设备。媒体回放系统被配置为(i)经由至少一个麦克风设备捕获语音输入,(ii)检测捕获的语音输入中是否包括一个或多个命令,(iii)确定该一个或多个命令满足命令信息集合中的相应命令标准,以及(iv)响应于该确定,(a)选择第一(vas)并放弃选择第二vas,(b)向第一vas发送语音输入,并且(c)在发送该语音输入之后,处理来自第一vas的对语音输入的响应。

在一些实施例中,网络麦克风设备被配置为在网络麦克风设备的本地存储器中存储命令信息集合。在一些实施例中,命令信息集合可以存储在另一个网络设备上,例如,另一个网络麦克风设备或局域网(lan)上的回放设备。在一些实施例中,命令信息集合可以跨lan上的多个网络设备和/或远程地跨多个网络设备存储。在以下所述的各种实施例中,可以在过程中使用命令信息集合来确定媒体回放系统是否应该选择第一vas并且放弃选择第二vas。

在一些实施例中,网络麦克风设备可以存储预定命令列表和与这些命令相关联的命令标准。这些命令可以包括例如回放、控制和区域定位命令。命令标准可以包括例如与特定命令相关联的预定关键字。语音输入中的关键字组合可以包括:例如,家庭中第一房间的名称的发声(例如,客厅)和该家庭中第二房间的名称的发声(例如,卧室)。当用户说出包括与关键字结合的特定命令(例如,播放音乐的命令)的语音输入时,媒体回放系统选择并调用第一vas来处理该语音输入。

在一些实施例中,可以通过训练和自适应学习算法来开发关键字。在某些实施例中,可以在处理包括关键字的语音输入时动态地确定这样的关键字。在这种情况下,关键字在处理语音输入之前不是预先确定的,但是仍然可以基于命令使第一vas被调用。在相关实施例中,关键字可以与具有相同意图的命令的某些认知相关联。

在一些实施例中,调用第一vas可以包括向第一vas的一个或多个远程服务器发送语音输入。在以上示例中,第一vas可以确定用户在第一房间和第二房间中播放的意图,并通过指示媒体回放系统在第一房间和第二房间中播放期望的音频来进行响应。第一vas还可以指示媒体回放系统形成包括第一房间和第二房间的分组。

尽管本文描述的一些实施例可以涉及由给定行动者(例如,“用户”和/或其他实体)执行的功能,但是应当理解,该描述仅出于解释的目的。除非权利要求本身的语言明确要求,否则不应将权利要求解释为要求任何此类示例行动者进行动作。

ii.示例操作环境

图1示出了可以实现本文公开的一个或多个实施例的媒体回放系统100的示例配置。如图所示的媒体回放系统100与具有若干房间和空间(例如,书房、餐厅和客厅)的示例家居环境相关联。在这些房间和空间内,媒体回放系统100包括回放设备102(单独地标识为回放设备102a-102m)、网络麦克风设备103(单独地标识为“nmd”103a-103g)以及控制器设备104a和104b(统称为“控制器设备104”)。家居环境可以包括其他网络设备,例如,一个或多个智能照明设备108和智能恒温器110。

媒体回放系统100的各种回放/网络麦克风和控制器设备102-104和/或其他网络设备可以经由点对点连接和/或经由包括网络路由器106的lan的其他连接(其可以是有线的和/或无线的)而彼此耦接。例如,回放设备102j(指定为“左”)可以与回放设备102a(指定为“右”)具有点对点连接。在一个实施例中,左回放设备102j可以通过点对点连接与右回放设备102a通信。在相关实施例中,左回放设备102j可以经由点对点连接和/或经由lan的其他连接与其他网络设备通信。

网络路由器106可以经由广域网(wan)107与一个或多个远程计算设备105耦接。在一些实施例中,一个或多个远程计算设备可以是云服务器。远程计算设备105可以被配置为以各种方式与媒体回放系统100交互。例如,远程计算设备可以被配置为促进在家居环境中流媒体和控制媒体内容(例如,音频)的回放。在下面更详细描述的技术的一个方面中,远程计算设备105被配置为为媒体回放系统100提供第一vas160。

在一些实施例中,一个或多个回放设备102可以包括机载(例如,集成的)网络麦克风设备。例如,回放设备102a-e分别包括对应的nmd103a-e。除非在说明书中另外指出,否则包括网络麦克风设备的回放设备在本文中可互换地称为回放设备或网络麦克风设备。

在一些实施例中,一个或多个nmd103可以是独立设备。例如,nmd103f和103g可以是独立网络麦克风设备。独立网络麦克风设备可以省略通常包括在回放设备(例如,扬声器或相关电子设备)中的组件。在这种情况下,独立网络麦克风设备可能不产生音频输出或可能产生有限的音频输出(例如,相对低质量的音频输出)。

在使用中,网络麦克风设备可以接收并处理来自其附近的用户的语音输入。例如,网络麦克风设备可以在检测到用户说出输入时捕获语音输入。在示出的示例中,客厅中的回放设备102a的nmd103a可以捕获在其附近的用户的语音输入。在一些实例中,语音输入源(例如,用户)附近的其他网络麦克风设备(例如,nmd103b和103f)也可以检测语音输入。在这种实例中,网络麦克风设备可以在彼此之间进行仲裁以确定哪个(哪些)设备应该捕获和/或处理检测到的语音输入。例如在2017年2月21日提交的题为“voicecontrolofamediaplaybacksystem”的美国申请no.15/438,749中可以找到在网络麦克风设备之间进行选择和仲裁的示例,该申请通过引用整体并入本文。

在某些实施例中,可以将网络麦克风设备分配给可能不包括网络麦克风设备的回放设备。例如,nmd103f可以被分配给其附近的回放设备102i和/或1021。在相关示例中,网络麦克风设备可以通过被分配了音频的回放设备输出音频。例如,在先前引用的美国专利申请no.15/438,749中可以找到关于将网络麦克风设备和回放设备关联为指定设备或默认设备的附加细节。

可以在以下部分中找到关于示例媒体回放系统100的不同组件以及不同组件可以如何交互以向用户提供媒体体验的其他方面。虽然本文的讨论可能总体上涉及示例媒体回放系统100,但是本文描述的技术不限于尤其如图1所示的家居环境内的应用。例如,本文所述的技术在其他家居环境配置中可能是有用的,该其他家居环境配置包括更多或更少的回放/网络麦克风和/或控制器设备102-104中的任何一个。另外,本文描述的技术在可能期望多区音频的环境中可能是有用的,例如,诸如餐馆、购物中心或机场之类的商业环境、诸如运动型多用途车(suv)、公共汽车或小汽车、轮船或船只、飞机之类的交通工具等。

a.示例回放和网络麦克风设备

图2a是示出了图1所示的所选择的回放设备102中的一个的某些方面的某些方面的功能框图。如图所示,这样的回放设备可以包括处理器212、软件组件214、存储器216、音频处理组件218、音频放大器220、扬声器222以及包括无线接口232和有线接口234的网络接口230。在一些实施例中,回放设备可以不包括扬声器222,而是可以包括用于将该回放设备与外部扬声器连接的扬声器接口。在某些实施例中,回放设备可以既不包括扬声器222也不包括音频放大器222,而是可以包括用于将回放设备与外部音频放大器或视听接收机连接的音频接口。

回放设备还可以包括用户界面236。用户界面236可以促进独立于或结合一个或多个控制器设备104的用户交互。在各种实施例中,除其他可能性之外,用户界面236包括一个或多个物理按钮和/或设置在触敏屏幕和/或表面上的图形界面,以供用户直接提供输入。用户界面236还可以包括灯和扬声器中的一个或多个,以向用户提供视觉和/或音频反馈。

在一些实施例中,处理器212可以是时钟驱动计算组件,其被配置为根据存储器216中存储的指令处理输入数据。存储器216可以是有形计算机可读介质,其被配置为存储可由处理器212执行的指令。例如,存储器216可以是数据存储设备,其可以加载有可由处理器212执行以实现某些功能的一个或多个软件组件214。在一个示例中,这些功能可以涉及回放设备从音频源或另一回放设备获取音频数据。在另一个示例中,这些功能可以涉及回放设备向网络上的另一设备发送音频数据。在又一示例中,这些功能可以涉及将回放设备与一个或多个其他回放设备配对以创建多声道音频环境。

某些功能可以涉及回放设备与一个或多个其他回放设备同步回放音频内容。在同步回放期间,听众可能无法感知同步回放设备在音频内容回放之间的时间延迟差异。通过引用整体并入本文的2004年4月4日提交的题为“systemandmethodforsynchronizingoperationsamongapluralityofindependentlyclockeddigitaldataprocessingdevices”的美国专利no.8,234,395,更详细地提供了回放设备之间的音频回放同步的一些示例。

音频处理组件218可以包括一个或多个数模转换器(dac)、音频预处理组件、音频增强组件或数字信号处理器(dsp)等。在一些实施例中,一个或多个音频处理组件218可以是处理器212的子组件。在一个示例中,音频处理组件218可以处理和/或有意地改变音频内容以产生音频信号。然后,所产生的音频信号可被提供至音频放大器210进行放大,并通过扬声器212回放。具体地,音频放大器210可以包括被配置为将音频信号放大到用于驱动扬声器212中的一个或多个的电平的设备。扬声器212可包括单独的换能器(例如,“驱动器”)或具有一个或多个驱动器的包括外壳的完整扬声器系统。例如,扬声器212的特殊驱动器可以包括例如低音喇叭(例如,针对低频)、中频段驱动器(例如,针对中频)和/或高频扬声器(例如,针对高频)。在一些情况下,一个或多个扬声器212中的每个换能器可以由音频放大器210的各个对应的音频放大器来驱动。除了产生用于回放的模拟信号之外,音频处理组件208可以被配置为处理要向一个或多个其他回放设备发送以进行回放的音频内容。

可以例如通过音频线路输入的输入连接(例如,自动检测3.5mm音频线路输入连接)或网络接口230从外部源接收要由回放设备处理和/或回放的音频内容。

网络接口230可以被配置为促进回放设备与数据网络上的一个或多个其他设备之间的数据流。因此,回放设备可以被配置为通过数据网络从与回放设备通信的一个或多个其他回放设备、局域网内的网络设备或广域网(例如,互联网)上的音频内容源接收音频内容。在一个示例中,回放设备发送和接收的音频内容和其他信号可以以包含基于互联网协议(ip)的源地址和基于ip的目的地地址的数字数据包数据的形式来发送。在这种情况下,网络接口230可以被配置为解析数字数据包数据,使得去往回放设备的数据被该回放设备正确地接收和处理。

如图所示,网络接口230可以包括无线接口232和有线接口234。无线接口232可以为回放设备提供网络接口功能,以根据通信协议(例如,任何无线标准,包括ieee802.11a、802.11b、802.11g、802.11n、802.11ac、802.15、4g移动通信标准等)与其他设备(例如,与回放设备相关联的数据网络内的其他回放设备、扬声器、接收器、网络设备、控制设备)无线通信。有线接口234可以为回放设备提供网络接口功能,以根据通信协议(例如,ieee802.3)通过有线连接与其他设备通信。虽然图2a中所示的网络接口230包括无线接口232和有线接口234,但是在一些实施例中,网络接口230可以仅包括无线接口或仅包括有线接口。

如上所述,回放设备可以包括网络麦克风设备,例如,图1所示的nmd103中的一个。网络麦克风设备可以共享回放设备的一些或全部组件,例如,处理器212、存储器216、麦克风224等。在其他示例中,网络麦克风设备包括专用于网络麦克风设备的操作方面的组件。例如,网络麦克风设备可以包括远场麦克风和/或语音处理组件,在一些实例中,回放设备可以不包括它们。在另一示例中,网络麦克风设备可以包括用于启用/禁用麦克风的触敏按钮。在又一示例中,如上所述,网络麦克风设备可以是独立设备。图2b是示出了并入了网络麦克风设备的示例回放设备202的等距图。回放设备202在设备顶部具有控制区域237,以用于启用/禁用麦克风。控制区域237与设备顶部处的另一区域239相邻,以用于控制回放。

举例来说,sonos公司目前提供(或已经提供)销售某些回放设备,包括“play:1”、“play:3”、“play:5”、“playbar”、“connect:amp”、“connect”、和“sub”。任何其他过去、现在和/或将来的回放设备可以附加地或备选地用于实现本文公开的示例实施例的回放设备。另外,应该理解,回放设备不限于图2a所示的示例或sonos产品供应。例如,回放设备可以包括有线或无线耳机。在另一示例中,回放设备可以包括个人移动媒体回放设备的扩展基座,或与其交互。在又一示例中,回放设备可以集成到另一设备或组件,例如,电视、照明器材或在室内或室外使用的一些其他设备。

b.示例回放设备配置

图3a-3e示出了区域和区域分组中的回放设备的示例配置。首先参考图3e,在一个示例中,单个回放设备可以属于一个区域。例如,阳台中的回放设备102c可以属于区域a。在以下所述的一些实施方式中,多个回放设备可以被“绑定”以形成“绑定对”,它们一起形成单个区域。例如,可以将图1中名为角落的回放设备102f与名为墙壁的回放设备102g绑定以形成区域b。绑定的回放设备可以具有不同的回放职责(例如,声道职责)。在以下所述的另一实施方式中,多个回放设备可以被合并以形成单个区域。例如,可以将名为书房的回放设备102d与名为窗户的回放设备102m合并以形成单个区域c。合并的回放设备102d和102m可以不被具体地分配不同的回放职责。即,合并的回放设备102d和102m除了可以同步播放音频内容之外,还可以如未合并时那样各自播放音频内容。

媒体回放系统100中的每个区域可以作为单个用户界面(ui)实体被提供以进行控制。例如,区域a可以作为名为阳台的单个实体提供。区域c可以作为名为书房的单个实体提供。区域b可以作为名为架子的单个实体提供。

在各种实施例中,区域可以采用属于该区域的回放设备中的一个的名称。例如,区域c可以采用书房设备102d的名称(如图所示)。在另一示例中,区域c可以采用窗户设备102m的名称。在另一示例中,区域c可以采用书房设备102d和窗户设备102m的某种组合的名称。选择的名称可以由用户选择。在一些实施例中,可以将区域命名为与属于该区域的设备不同的名称。例如,区域b被命名为架子,但是区域b中的所有设备都不具有该名称。

绑定的回放设备可以具有不同的回放职责,例如,某些音频声道的职责。例如,如图3a所示,角落和墙壁设备102f和102g可以被绑定,以便产生或增强音频内容的立体声效果。在该示例中,角落回放设备102f可以被配置为播放左声道音频分量,而墙壁回放设备102g可以被配置为播放右声道音频分量。在一些实施方式中,这种立体声绑定可以被称为“配对”。

另外,绑定的回放设备可以具有附加的和/或不同的相应扬声器驱动器。如图3b所示,可以将名为前置(front)的回放设备102b与名为低音炮(sub)的回放设备102k绑定。前置设备102b可以呈现中高频范围,并且低音炮设备102k可以呈现低频,例如,重低音。当未绑定时,前置设备102b可以呈现整个频率范围。作为另一示例,图3c示出了前置设备和低音炮设备102b和102k分别进一步与右回放设备和左回放设备102a和102k绑定。在一些实施方式中,右设备和左设备102a和102k可以形成家庭影院系统的环绕或“卫星”声道。绑定的回放设备102a、102b、102j和102k可以形成单个区域d(图3e)。

合并的回放设备可能没有分配回放职责,并且可以分别呈现相应回放设备能够回放的音频内容的全部范围。然而,合并的设备可以被表示为单个ui实体(即,如上所述的区域)。例如,书房中的回放设备102d和102m具有区域c的单个ui实体。在一个实施例中,回放设备102d和102m可以各自输出每个回放设备102d和102m能够同步回放的音频内容的全部范围。

在一些实施例中,独立网络麦克风设备本身可以在一个区域中。例如,图1中名为天花板的nmd103g可以是区域e。网络麦克风设备也可以与另一个设备绑定或合并,以形成区域。例如,可以将名为岛台的nmd设备103f与回放设备102i厨房绑定,后者一起形成区域g,该区域f也被称为厨房。例如,在先前引用的美国专利申请no.15/438,749中可以找到关于将网络麦克风设备和回放设备关联为指定设备或默认设备的附加细节。在一些实施例中,独立网络麦克风设备可以不与区域相关联。

可以将单个、绑定和/或合并的设备的区域分组,以形成区域分组。例如,参考图3e,区域a可以与区域b组合,以形成包括该两个区域的区域分组。作为另一示例,区域a可以与一个或多个其他区域c-i分在一组。可以以多种方式对区域a-i进行分组和取消分组。例如,可以将三个、四个、五个或更多个(例如,全部)区域a-i分在一组。如先前参考的美国专利no.8,234,395中所述,当被分组时,单个和/或绑定的回放设备的区域可以彼此同步地回放音频。回放设备可以动态分组和取消分组,以形成同步回放音频内容的新的或不同的分组。

在各种实施方式中,环境中的区域可以是分组内区域的默认名称,或者是区域分组内区域名称的组合,例如,餐厅+厨房,如图3e所示。在一些实施例中,还可以将区域分组命名为由用户选择的唯一名称,例如,尼克的房间(nick’sroom),如图3e所示。

再次参考图2a,某些数据可以作为一个或多个状态变量被存储在存储器213中,该状态变量被周期性地更新并且用于描述回放区域、回放设备和/或关联的区域分组的状态。存储器216还可以包括与媒体系统的其他设备的状态相关联的数据,并且间或地在设备之间共享,使得设备中的一个或多个具有与系统相关联的最新数据。

在一些实施例中,存储器可以存储与状态相关联的各种变量类型的实例。变量实例可以与对应于类型的标识符(例如,标签)一起存储。例如,某些标识符可以是用于识别区域的回放设备的第一类型“a1”、用于识别可以绑定在该区域中的回放设备的第二类型“b1”和用于识别该区域可能所属的区域分组的第三类型“c1”。作为相关示例,在图1中,与阳台相关联的标识符可以指示该阳台是特定区域的唯一回放设备,而不是在区域分组中。与客厅相关联的标识符可以指示该客厅没有与其他区域分在一组,而是包括绑定的回放设备102a、102b、102j和102k。与餐厅相关联的标识符可以指示该餐厅是餐厅+厨房组的一部分,并且设备103f和102i被绑定。由于厨房是餐厅+厨房区域分组的一部分,因此与该厨房关联的标识符可以指示相同或相似的信息。其他示例区域变量和标识符如下所述。

在又一示例中,媒体回放系统100可以表示区域和区域分组的其他关联的变量或标识符,例如,与区域相关联的标识符,如图3所示。区域可以涉及区域分组和/或不在区域分组内的区域的集群。例如,图3e示出了名为前部区域的第一区域和名为后部区域的第二区域。前部区域包括阳台、客厅、餐厅、厨房和浴室的区域和区域分组。后部区域包括浴室、尼克的房间(nick’sroom)、卧室和书房的区域和区域分组。在一个方面,区域可以用于调用共享另一集群的一个或多个区域和/或区域分组的区域分组和/或区域的集群。在另一方面,这不同于区域分组,区域分组不与另一区域分组共享区域。用于实现区域的技术的其他示例可以在例如2017年8月21日提交的题为“roomassociationbasedonname”的美国申请no.15/682,506和2007年9月11日提交的题为“controllingandmanipulatinggroupingsinamulti-zonemediasystem”的美国专利no.8,483,853中找到。这些申请中的每一个通过引用整体并入本文。在一些实施例中,媒体回放系统100可以不实现区域,在这种情况下,系统可以不存储与区域相关联的变量。

存储器216还可以被配置为存储其他数据。这样的数据可以涉及回放设备可访问的音频源或该回放设备(或一些其他回放设备)可以与之关联的回放队列。在以下所述的实施例中,存储器216被配置为在处理语音输入时存储用于选择特定vas(例如,第一vas160)的命令数据集合。

在操作过程中,图1环境中的一个或多个回放区可能每个都在播放不同的音频内容。例如,用户可能正在阳台区烧烤并收听由回放设备102c播放的嘻哈音乐,而另一用户可能正在厨房区中准备食物并收听由回放设备102i播放的古典音乐。在另一示例中,回放区可以与另一个回放区同步地播放相同的音频内容。例如,用户可以在书房区中,其中,回放设备102d正在播放与阳台区中的回放设备102c正在播放的嘻哈音乐相同的音乐。在这种情况下,回放设备102c和102d可以同步地播放嘻哈音乐,使得用户可以在不同回放区之间移动时无缝地(或至少基本上无缝地)欣赏被外放的音频内容。可以以类似于如先前引用的编号为8,234,395的美国专利中所述的回放设备之间的同步的方式来实现回放区域之间的同步。

如上所述,可以动态地修改媒体回放系统100的区域配置。因此,媒体回放系统100可以支持多种配置。例如,如果用户将一个或多个回放设备物理地移动到区域中或从区域中移出,则可以重新配置媒体回放系统100以适应改变。例如,如果用户将回放设备102c从阳台区物理地移动到书房区,则该书房区现在可以包括回放设备102c和102d。在一些情况下,用户可以使用例如控制器设备104中的一个和/或语音输入将移动的回放设备102c与书房区配对或组合和/或重命名书房区中的播放器。作为另一示例,如果将一个或多个回放设备102移动到家居环境中还不是回放区的特定空间,则可以将移动的回放设备重命名或与该特定区域的回放区相关联。

此外,媒体回放系统100的不同回放区可以被动态组合为区域分组或分成单独的回放区。例如,餐厅区和厨房区可以被组合成用于宴会的区域分组,使得回放设备102i和102l可以同步地呈现音频内容。作为另一示例,客厅区域中的绑定的回放设备102可以被划分为(i)电视区和(ii)单独的收听区。电视区可以包括前置回放设备102b。收听区可以包括右回放设备102a、左回放设备102j和低音炮回放设备102k,如上所述,它们可以被组合、配对或合并。以这种方式划分客厅区可以允许一个用户在客厅空间的一个区域中的收听区中听音乐,而另一用户在客厅空间的另一区域中观看电视。在相关示例中,用户可以在将客厅区划分为电视区和收听区之前,实现nmd103a或103b中的任何一个来控制客厅区。一旦划分,可以例如由nmd103a附近的用户控制收听区,并且可以例如由nmd103b附近的用户控制电视区。然而,如上所述,任何nmd103可以被配置为控制媒体回放系统100的各种回放设备和其他设备。

c.示例控制器设备

图4是示出了图1的媒体回放系统100的所选择的控制器设备104中的一个的某些方面的功能框图。这种控制器设备也可以被称为控制器。图3所示的控制器设备可以包括通常与上述网络设备的某些组件类似的组件,例如,处理器412、存储器416、麦克风424和网络接口430。在一个示例中,控制器设备可以是用于媒体回放系统100的专用控制器。在另一示例中,控制器设备可以是可以在其上安装媒体回放系统控制器应用软件网络设备,例如,iphonetm、ipadtm或任何其他智能电话、平板电脑或网络设备(例如,联网计算机(例如,pc或mactm))。

控制器设备的存储器416可以被配置为存储控制器应用软件以及与媒体回放系统100和系统100的用户相关联的其他数据。存储器416可以加载有一个或多个可由处理器412执行的软件组件414以实现某些功能,例如,促进媒体回放系统100的用户访问、控制和配置。如上所述,控制器设备通过网络接口430(例如,无线接口)与其他网络设备通信。

在一个示例中,可以经由网络接口430在控制器设备和其他设备之间传送数据和信息(例如,状态变量)。例如,媒体回放系统100中的回放区和区域分组配置可以由控制器设备从回放设备、网络麦克风设备或另一网络设备接收,或者由控制器设备经由网络接口406向另一回放设备或网络设备发送。在一些情况下,另一网络设备可以是另一控制器设备。

回放设备控制命令(例如,音量控制和音频回放控制)也可以经由网络接口430从控制器设备向回放设备传送。如以上所建议的,也可以由用户使用控制器设备来执行对媒体回放系统100的配置的更改。配置更改可以包括:将一个或多个回放设备添加到区域/从区域中删除;将一个或多个区域添加到区域分组/从区域分组中删除;形成绑定或合并的播放器;将一个或多个回放设备与绑定或合并的播放器分离等。

控制器设备的用户界面440可以被配置为通过分别提供控制器界面(例如,如图4a和图4b所示的控制器界面440a和440b,其可以统称为控制器界面440),来促进用户访问和控制媒体回放系统100。一起参考图4a和图4b,控制器界面440包括回放控制区域442、回放区域区域443、回放状态区域444、回放队列区域446和源区域448。如图所示的用户界面400仅是可以在网络设备(例如,图3所示的控制器设备)上提供并且由用户访问以控制媒体回放系统(例如,媒体回放系统100)的用户界面的一个示例。备选地,可以在一个或多个网络设备上实现变化的格式、样式和交互序列的其他用户界面,以提供对媒体回放系统的类似的控制访问。

回放控制区域442(图4a)可以包括可选择(例如,通过触摸或通过使用光标)图标,以使所选择的回放区域或区域分组中的回放设备播放或暂停、快进、快退、跳到下一个、跳到前一个、进入/退出随机播放模式、进入/退出重复模式、进入/退出交叉淡入淡出模式。回放控制区域442还可以包括用于修改均衡设置、回放音量等的可选择图标。

回放区域区域443(图4b)可以包括媒体回放系统100内的回放区域的表示。如图所示,回放区域区域也可以包括区域分组的表示,例如,餐厅+厨房区域分组。在一些实施例中,回放区域的图形表示可以是可选择的,以调出附加的可选择图标来管理或配置媒体回放系统中的回放区域,例如,创建绑定的区域、创建区域分组、分离区域分组、重命名区域分组等。

例如,如图所示,可以在回放区域的每个图形表示内提供“分组”图标。在特定区域的图形表示内提供的“分组”图标可以是可选择的,以调出用于选择媒体回放系统中要与特定区域分在一组的一个或多个其他区域的选项。一旦被分组,已经与特定区域分在一组的区域中的回放设备将被配置为与特定区域中的回放设备同步地播放音频内容。类似地,可以在区域分组的图形表示内提供“分组”图标。在这种情况下,“分组”图标可以是可选择的,以调出用于取消选择区域分组中的要从该区域分组中移除的一个或多个区域的选项。经由用户界面(例如,用户界面400)对区域进行分组和取消分组的其他交互和实现也是可能的。当回放区或区域分组配置被修改时,可以动态地更新回放区区域443(图4b)中的回放区的表示。

回放状态区域444(图4a)可以包括在所选择的回放区或区域分组中当前正在播放、先前播放或被安排为接下来播放的音频内容的图形表示。可以在用户界面上可视地区分所选择的回放区或区域分组,例如,在回放区区域443和/或回放状态区域444内。图形表示可以包括曲目名称、艺术家姓名、专辑名称、专辑年份、曲目长度以及当经由用户界面440控制媒体回放系统时用户知道了会有用的其他相关信息。

回放队列区域446可以包括与所选择的回放区或区域分组相关联的回放队列中的音频内容的图形表示。在一些实施例中,每个回放区或区域分组可以与回放队列相关联,该回放队列包含与由该回放区或区域分组回放的零个或更多个音频项相对应的信息。例如,回放队列中的每个音频项可以包括统一资源标识符(uri)、统一资源定位符(url)或一些其他标识符,其可以由回放区或区域分组中的回放设备用于从本地音频内容源或联网音频内容源查找和/或获取音频项,可能供回放设备回放。

在一个示例中,可以将播放列表添加到回放队列,在这种情况下,可以将与播放列表中的每个音频项对应的信息添加到回放队列。在另一示例中,回放队列中的音频项可以被保存为播放列表。在另外的示例中,当回放区域或区域分组正在持续播放流媒体音频内容(例如,互联网收音机,其可以持续播放直到被停止),而不是具有回放持续时间的分立音频项时,回放队列可以是空的或被填充但是“未使用”。在备选实施例中,回放队列可以包括互联网收音机和/或其他流媒体音频内容项,并且当回放区域或区域分组正在播放这些项时处于“使用中”。其他示例也是可能的。

当回放区域或区域分组被“分组”或“取消分组”时,可以清除与受影响的回放区域或区域分组相关联的回放队列,或者重新关联。例如,如果包括第一回放队列的第一回放区与包括第二回放队列的第二回放区分在一组,则所建立的区域分组可以具有相关联的回放队列,其最初是空的,包含来自第一回放队列的音频项(例如,如果第二回放区被添加到第一回放区),或包含来自第二回放队列的音频项(例如,如果第一回放区被添加到第二回放区),或包含来自第一回放队列和第二回放队列二者的音频项的组合。随后,如果所建立的区域分组被取消分组,则所得到的第一回放区可以与先前的第一回放队列重新关联,或者与新的回放队列相关联,该新的回放队列是空的,或者包含与来自在所建立的区域分组被取消分组之前所建立的区域分组相关联的回放队列的音频项。类似地,所得到的第二回放区可以与先前的第二回放队列重新关联,或者与新的回放队列相关联,该新的回放队列是空的,或者包含来自在与所建立的区域分组被取消分组之前所建立的区域分组相关联的回放队列的音频项。其他示例也是可能的。

仍然参考图4a和4b,回放队列区域446(图4b)中的音频内容的图形表示可以包括曲目标题、艺术家名称、曲目长度以及与回放队列中的音频内容相关联的其他相关信息。在一个示例中,音频内容的图形表示可以是可选择的,以调出附加的可选择图标来管理和/或操纵回放队列和/或回放队列中表示的音频内容。例如,可以将所表示的音频内容从回放队列中移除,将所表示的音频内容移动到回放队列内的不同位置,或者选择所表示的音频内容以立即播放,或者在任何当前播放的音频内容之后进行播放等。与回放区或区域分组相关联的回放队列可以存储于该回放区或区域分组中的一个或多个回放设备上、不在该回放区或区域分组中的回放设备上和/或一些其他指定设备上的存储器中。这种回放队列的回放可以涉及一个或多个回放设备可能按顺序或随机顺序回放队列中的媒体项。

源区域448可以包括与对应的vas相关联的可选择音频内容源和可选择语音助手的图形表示。可以选择性地分配vas。在一些示例中,同一网络麦克风设备可以调用多个vas,例如,amazon的和另一语音服务。在一些实施例中,用户可以将vas专门分配给一个或多个网络麦克风设备。例如,用户可以将第一vas160分配给图1所示的客厅中的nmd102a和102b中的一个或两者,并将第二vas分配给厨房中的nmd103f。其他示例是可能。

d.示例音频内容源

源区域448中的音频源可以是音频内容源,可以通过所选择的回放区或区域分组从该音频内容源中获取音频内容并播放。区域或区域分组中的一个或多个回放设备可以被配置为从各种可用音频内容源中获取回放音频内容(例如,根据音频内容的对应uri或url)。在一个示例中,回放设备可以直接从对应的音频内容源(例如,线路输入连接)中获取音频内容。在另一示例中,可以在网络上,经由一个或多个其他回放设备或网络设备向回放设备提供音频内容。

示例音频内容源可以包括:媒体回放系统(例如,图1的媒体回放系统100)中的一个或多个回放设备的存储器、一个或多个网络设备(例如,控制器设备、支持网络的个人计算机、或者网络附接存储器(nas)等)上的本地音乐库、通过互联网(例如,云)提供音频内容的流媒体音频服务、或者通过回放设备或网络设备上的线路输入连接连接至媒体回放系统的音频源等。

在一些实施例中,可以在媒体回放系统(例如,图1的媒体回放系统100)中定期添加音频内容源,或从中移除音频内容源。在一个示例中,每当添加、移除或更新一个或多个音频内容源时,可以执行对音频项编索引。对音频项编索引可以包括:扫描由媒体回放系统中的回放设备可访问的网络上共享的所有文件夹/目录中的可识别音频项,并且生成或更新包含元数据(例如,标题、艺术家、专辑、曲目长度等)及其他关联信息(例如,找到的每个可识别音频项的uri或url)的音频内容数据库。用于管理和维护音频内容源的其他示例也是可能的。

e.示例网络麦克风设备

图5a是示出了根据本公开各方面的一个或多个nmd103的附加特征的功能框图。图5a所示的网络麦克风设备可以包括与上述网络麦克风设备的某些组件大致类似的组件,例如,处理器212(图1)、网络接口230(图2a)、麦克风224和存储器216。尽管为了清楚起见未示出,网络麦克风设备可以包括其他组件,例如,扬声器、放大器、信号处理器,如上所述。

麦克风224可以是多个麦克风,其被布置为检测网络麦克风设备的环境中的声音。在一个示例中,麦克风224可以被布置为检测来自相对于网络麦克风设备的一个或多个方向的音频。麦克风224可以对频段的一部分敏感。在一个示例中,麦克风224的第一子集可以对第一频段敏感,而麦克风224的第二子集可以对第二频段敏感。麦克风224还可以被布置为捕获音频源(例如,语音,可听声音)的位置信息和/或帮助过滤背景噪声。值得注意的是,在一些实施例中,麦克风224可以具有单个麦克风而不是多个麦克风。

网络麦克风设备还可以包括波束形成器组件551、声学回声消除(aec)组件552、语音活动检测器组件553、唤醒词检测器组件554、语音/文本转换组件555(例如,语音到文本和文本到语音)以及vas选择器组件556。在各种实施例中,组件551-556中的一个或多个可以是处理器512的子组件。

波束成形和aec组件551和552被配置为检测音频信号并确定所检测的音频内的语音输入的各个方面,例如,方向、幅度、频谱等。例如,波束成形和aec组件551和552在过程中可以用于确定网络麦克风设备和与该网络麦克风设备讲话的用户之间的近似距离。在另一示例中,网络麦克风设备可以检测用户与媒体回放系统中的另一网络麦克风设备的相对接近度。

语音活动检测器活动组件553被配置为与波束成形以及aec组件551和552紧密协作,以捕获来自检测到语音活动的方向的声音。可以通过监视将语音与其他声音区分开的度量来识别潜在的语音方向。这种度量可以包括例如相对于背景噪声的语音频带内的能量和该语音频带内的熵(其是频谱结构的测量)。语音通常具有比大多数常见的背景噪声低的熵。

唤醒词检测器组件554被配置为监视和分析接收到的音频以确定该音频中是否存在任何唤醒词。唤醒词检测器组件554可以使用唤醒词检测算法来分析接收到的音频。如果唤醒词检测器554检测到唤醒词,则网络麦克风设备可以处理该接收到的音频中包含的语音输入。示例唤醒词检测算法接受音频作为输入,并且提供在该音频中是否存在唤醒词的指示。许多第一方和第三方唤醒词检测算法是已知的并且可商购的。例如,语音服务的运营商可以使其算法可用于第三方设备。备选地,可以训练算法以检测某些唤醒词。

在一些实施例中,唤醒词检测器554在接收到的音频上同时(或基本同时)运行多个唤醒词检测算法。如上所述,不同的语音服务(例如,amazon的apple的或microsoft的)各自使用不同的唤醒词来调用它们各自的语音服务。为了支持多种服务,唤醒词检测器554可以针对每个支持的语音服务通过唤醒词检测算法并行地运行接收到的音频。

vas选择器组件556被配置为检测语音输入内由用户说出的命令。语音/文本转换组件555可以通过将语音输入中的语音转换为文本来促进处理。在一些实施例中,网络麦克风设备可以包括针对与家庭相关联的特定用户或特定用户集合训练的语音识别软件。这样的语音识别软件可以实现被调谐到特定语音简档的语音处理算法。调谐到特定的语音简档可以需要比传统vas更少的计算密集型算法,传统vas通常从广泛的用户基础和不针对媒体回放系统的各种请求中进行采样。

vas选择器组件556还被配置为确定在语音输入中检测到的特定命令是否满足某些命令标准。针对语音输入中给定命令的命令标准可以例如基于在该语音输入内包括某些关键字。关键字可以是例如语音输入中识别媒体回放系统100中的特定设备或分组的单词。如本文所使用的,术语“关键字”可以指单个单词(例如,“bedroom(卧室)”)或一组单词(例如,“thelivingroom(客厅)”)。

附加地或备选地,针对给定命令的命令标准可以涉及与检测该给定命令结合的一个或多个控制状态和/或区域状态变量的检测。控制状态变量可以包括:例如,识别音量级别的指示符、与一个或多个设备相关联的队列以及回放状态,例如,设备是否正在播放队列、是否暂停等。区域状态变量可以包括:例如,识别哪些区域播放器被分在一组的指示符。vas选择器组件556可以在存储器216中存储命令信息集合,例如,在数据表590中,该命令信息集合包含命令列表和相关联的命令标准,下面将对其进行详细描述。

在一些实施例中,上述组件551-556中的一个或多个可以与麦克风224结合操作以检测和存储用户的语音简档,该语音简档可以与媒体回放系统100的用户账户相关联。在一些实施例中,语音简档可以被存储为和/或与存储在命令信息集合590中的变量进行比较,如下所述。语音简档可以包括用户语音的音调或频率方面和/或用户的其他独特方面,例如,先前引用的美国专利申请no.15/438,749中所描述的那些。

在一些实施例中,上述组件551-556中的一个或多个可以与麦克风阵列524结合操作以确定用户在家居环境中的位置和/或相对于一个或多个nmd103的位置。如下所述,可以检测用户的位置或接近度并将其与存储在命令信息590中的变量进行比较。用于确定用户的位置或接近度的技术可以包括在先前引用的美国专利申请no.15/438,749、2011年12月29日提交的题为“soundfieldcalibrationusinglistenerlocalization”的美国专利no.9,084,058、以及2012年8月31日提交的题为“acousticoptimization”的美国专利no.8,965,033中公开的更多技术。这些申请中的每一个通过引用整体并入本文。

图5b是根据本公开各方面的示例语音输入的图。语音输入可以由网络麦克风设备捕获,例如,由图1所示的一个或多个nmd103捕获。语音输入可以包括唤醒词部分557a和语音发声部分557b(统称为“语音输入557”)。在一些实施例中,唤醒词557a可以是已知的唤醒词,例如,与amazon的相关联的“alexa”。在其他实施例中,语音输入557可以不包括唤醒词。

在一些实施例中,网络麦克风设备可以在检测到唤醒词部分557a时输出听觉和/或视觉响应。附加地或备选地,网络麦克风设备可以在处理语音输入和/或一系列语音输入(例如,在多回合请求的情况下)之后输出听觉和/或视觉响应。

语音发声部分557b可以包括:例如,一个或多个口头命令558(分别被识别为第一命令558a和第二命令558b)和一个或多个口头关键字559(分别被识别为第一关键字559a和第二关键字559b)。在一个示例中,第一命令557a可以是播放音乐的命令,例如,特定的歌曲、专辑、播放列表等。在该示例中,关键字559可以是识别要在其中播放音乐的一个或多个区域(例如,图1中所示的客厅和餐厅)的一个或多个单词。在一些示例中,语音发声部分557b可以包括其他信息,例如,检测到的在用户说出的单词之间的停顿(例如,非语音的时段),如图5b所示。停顿可以在语音发声部分557b内划分由用户说出的单独命令、关键字或其他信息的位置。

在一些实施例中,媒体回放系统100被配置为在检测到唤醒词部分557a的同时临时减小其正在播放的音频内容的音量。媒体回放系统100可以在处理语音输入557之后恢复音量,如图5b所示。这样的过程可以被称为闪避,其示例在先前引用的美国专利申请no.15/438,749中公开。

f.示例网络和远程计算系统

图6是示出了图1中的远程计算设备105的附加细节的功能框图。在各种实施例中,远程计算设备105可以通过图1所示的wan107从一个或多个nmd103接收语音输入。为了说明的目的,由图6中的箭头表示语音输入557(图5b)的选定通信路径。在一个实施例中,由远程计算设备105处理的语音输入557可以包括语音发声部分557b(图5b)。在另一实施例中,处理后的语音输入557可以包括语音发声部分557b和唤醒词557a(图5b)。

远程计算设备105包括系统控制器612,该系统控制器612包括一个或多个处理器、意图引擎602和存储器616。存储器616可以是有形的计算机可读介质,其被配置为存储可由系统控制器612和/或回放/网络麦克风和/或控制器设备102-104中的一个或多个执行的指令。

意图引擎662被配置为处理语音输入并确定该输入的意图。在一些实施例中,意图引擎662可以是系统控制器612的子组件。意图引擎662可以与一个或多个数据库(例如,一个或多个vas数据库664)交互以处理语音输入。vas数据库664可以驻留在存储器616中或其他地方,例如,在回放/网络麦克风和/或控制器设备102-104中的一个或多个的存储器中。在一些实施例中,可以基于语音输入处理来更新vas数据库664以用于自适应学习和反馈。vas数据库664可以存储各种用户数据、分析、目录以及用于与nlu相关的和/或其他处理的其他信息。

远程计算设备105可以与媒体回放系统100的各种回放/网络麦克风和/或控制器设备102-104交换各种反馈、信息、指令和/或相关数据。这样的交换可以与包含语音输入的发送消息有关或独立于该消息。在一些实施例中,远程计算设备105和媒体回放系统100可以经由如本文所述的通信路径和/或使用如先前引用的美国专利申请no.15/438,749中所述的元数据交换信道来交换数据。

媒体回放系统100的设备对语音输入的处理可以至少部分地与远程计算设备105对该语音输入的处理并行地执行。另外,网络麦克风设备的语音/文本转换组件555可以将来自远程计算设备105的响应转换为语音,以经由一个或多个扬声器进行可听输出。

根据本公开的各种实施例,远程计算设备105为媒体回放系统100执行第一vas160的功能。图7a是包括第一vas160的示例网络系统700的示意图。如图所示,远程计算设备105经由wan107(图1)和/或与wan107连接的lan706与媒体回放系统100耦接。以此方式,媒体回放系统100的各种回放/网络麦克风和控制器设备102-104可以与远程计算设备105通信以调用第一vas160的功能。

网络系统700还包括附加的第一远程计算设备705a(例如,云服务器)和第二远程计算设备705b(例如,云服务器)。第二远程计算设备705b可以与媒体服务提供商767(例如,)相关联。在一些实施例中,第二远程计算设备705b可以与第一vas160的计算设备直接通信。附加地或备选地,第二远程计算设备705b可以与媒体回放系统100和/或其他中间远程计算设备通信。

第一远程计算设备705a可以与第二vas760相关联。第二vas760可以是与例如amazon的apple的microsoft的或其他vas提供商相关联的传统vas提供商。尽管为了清楚起见未示出,网络计算系统700还可以包括与一个或多个附加vas(例如,附加传统vas)相关联的远程计算设备。在这样的实施例中,媒体回放系统100可以被配置为选择第一vas160而不是第二vas760,以及另一vas。

图7b是示出了图7a的网络计算系统700中的各种数据交换的消息流程图。媒体回放系统100经由网络麦克风设备(例如,经由图1所示的一个或多个nmd103)捕获语音输入(框771)。如下所述,媒体回放系统100可以基于命令和命令信息集合590中的相关联的命令标准来选择适当的vas(框771-774)。如果选择了第二vas760,则媒体回放系统100可以向第二vas760发送包含语音输入的一个或多个消息781(例如,数据包)以进行处理。

另一方面,如果选择了第一vas160,则媒体回放系统100向vas160发送包含语音输入的一个或多个消息782(例如,数据包)。媒体回放系统100可以向vas160同时发送其他信息和消息782。例如,如先前引用的美国专利申请no.15/131,244中所述,媒体回放系统100可以在元数据信道上发送数据。

第一vas160可以处理消息782中的语音输入以确定意图(框775)。基于该意图,vas160可以向媒体回放系统100发送一个或多个响应消息783(例如,数据包)。在一些实例中,响应消息783可以包括有效载荷,该有效载荷指导媒体回放系统100的一个或多个设备执行指令(框776)。例如,该指令可以指导媒体回放系统100回放媒体内容、对设备进行分组和/或执行以下所述的其他功能。附加地或备选地,例如在多回合命令的情况下,来自vas160的响应消息783可以包括带有对更多信息的请求的有效载荷。

在一些实施例中,从第一vas160发送的响应消息783可以指导媒体回放系统100从媒体服务667请求媒体内容,例如,音频内容。在其他实施例中,媒体回放系统100可以从vas160独立地请求内容。在任一情况下,媒体回放系统100可以例如经由包括例如音频内容的媒体流784来交换用于接收内容的消息。

在一些实施例中,媒体回放系统100可以经由网络接口从回放/网络麦克风或局域网中的其他设备上的输入接口接收音频内容。示例音频内容包括一个或多个音频曲目、脱口秀、电影、电视节目、播客、互联网流视频以及许多其他可能形式的音频内容。音频内容可以伴随视频(例如,视频的音频曲目),或者音频内容可以是不伴随视频的内容。

在一些实施例中,媒体回放系统100和/或第一vas160可以使用语音输入,该语音输入导致来自vas的成功(或不成功)响应以用于训练以及自适应训练和学习(框777和778)。训练和自适应学习可以增强媒体回放系统100和/或第一vas160的语音处理的准确性。在一个示例中,意图引擎662(图6)可以针对与媒体回放系统100相关联的一个或多个用户帐户,更新和维护vas数据库664中的训练学习数据。

iii.用于调用vas的示例方法和系统

如上所述,本文描述的实施例可以涉及调用第一vas160。在一个方面,第一vas160可以为媒体回放系统100提供增强的控制特征。在另一方面,如上所述,与其他vas(例如,传统vas)相比,第一vas可以提供用于控制媒体回放系统100的改进的vas体验。

在一些实施例中,传统vas(例如,图7b所示的第二vas760)可以被媒体回放系统100调用以执行相对基本的控制,例如,相对简单的播放/暂停/跳过功能。在一些实施方式中,第二vas760可以提供可能无法经由第一vas160立刻调用的其他服务。例如,在某些实施方式中,传统vas可以提供基于语音的互联网搜索,而第一vas160无法提供。

图8是用于调用vas的方法800的示例流程图。方法800呈现了可以在涉及例如根据本公开的实施例配置的媒体回放系统100或另一媒体回放系统的操作环境内实现的方法的实施例。在以下所述的示例中,方法800涉及选择第一vas160而不是第二vas760。

方法800可以涉及发送和接收如本文所述和/或先前引用的美国专利申请no.15/438,749中所述的各种设备和系统之间的信息。例如,该方法可以涉及在回放系统的回放/网络麦克风、控制器和远程计算设备102-104、媒体服务667的远程计算设备705b和/或第二vas670的远程计算设备705a中的一个或多个之间发送和接收信息。尽管以连续顺序示出了图8中的框,但是这些框也可以并行执行,和/或以与本文描述的顺序不同的顺序执行。而且,根据所需的实现,可以将各个框组合成更少的框,分成更多的框,和/或移除框。

另外,针对本文公开的方法800以及其他过程和方法,流程图示出了本实施例的一种可能实现的功能和操作。在这方面,每个框可以表示模块、段或程序代码的一部分,其包括可由处理器执行以实现过程中的特定逻辑功能或步骤的一个或多个指令。程序代码可以存储在任何类型的计算机可读介质上,例如,包括磁盘或硬盘驱动器的储存设备。计算机可读介质可以包括非暂时性计算机可读介质,例如,短时间存储数据的计算机可读介质,如寄存器存储器、处理器高速缓存和随机存取存储器(ram)。计算机可读介质还可以包括非暂时性介质,例如,辅存或持久性长期储存器,如只读存储器(rom)、光盘或磁盘、紧凑盘只读存储器(cd-rom)等。计算机可读介质还可以是任何其他易失性或非易失性存储系统。计算机可读介质可以被认为是计算机可读存储介质,例如有形的储存设备。计算机可读介质可以由以上参照各种回放/网络麦克风、控制器和远程计算设备所述的一个或多个存储器构成。另外,针对本文公开的方法800以及其他过程和方法,图8中的每个框可以表示被连接以执行过程中的特定逻辑功能的电路。

在一些实施例中,方法800还可以涉及:接收用于启动应用的用户输入;接收用户和用户账户信息;确定系统参数;与音乐服务交互和/或与控制器交互,例如用于显示、选择以及输入系统信息。在各种实施例中,方法800可以结合在2016年7月29日提交的题为“voicecontrolofamediaplaybacksystem”的申请no.15/223,218中所述的示例方法和系统,该申请通过引用整体并入本文。

a.导致包括命令列表以及要存储在内存中的命令的相关标准的命令信息集合

在框801处,方法800涉及存储命令信息集合,例如,存储在网络麦克风设备的存储器216中的命令信息集合590。参照图8b,示例命令信息集合890可以包含命令列表892。命令信息集合890可以是数据表或其他数据结构。命令信息集合890可以例如存储在回放、控制器、网络麦克风和/或远程计算设备102-105中的一个或多个的存储器中。在一些实施例中,可以经由元数据交换信道和/或媒体回放系统与远程计算系统之间的任何其他通信路径来访问命令信息集合890。

在所示的示例中,命令集合892包括第一至第n命令。作为示例,第一命令可以是用于发起回放的命令,例如当用户说“播放音乐”时。第二命令可以是控制命令,例如,传输控制命令(例如,暂停、恢复、跳过、回放)。例如,第二命令可以是涉及用户要求“跳到歌曲中的下一曲目”的命令。第三命令可以是区域定位命令,例如,用于将回放设备组合、绑定和合并的命令。例如,第三命令可以是涉及用户要求“将客厅和餐厅分在一组”的命令。

本文描述的命令是示例,并且其他命令也是可能的。例如,图9a-9c示出了带有附加示例回放发起、控制和区域定位命令的表。作为附加示例,命令可以包括查询命令。查询命令可以涉及例如用户关于当前正在播放什么音频的查询。例如,用户可以说出询问命令“告诉我客厅里正在播放什么”。

如图8b进一步所示,命令892与也存储在命令数据集合890中的命令标准相关联。例如,第一命令与一个或多个第一命令标准_1(criteria_1)相关联,第二命令与一个或第二命令标准_2(criteria_2)相关联,并且第三命令与一个或多个第三命令标准-3(criteria_3)相关联。命令标准可以涉及与某些变量实例有关的确定。变量实例可以与标识符(例如,标签)一起存储,该标识符可以或可以不与用户帐户相关联。变量实例可以连续的、定期地或不定期地更新,以包括由用户添加或删除或与用户帐户相关联的新的自定义名称。自定义名称可以是用户提供的任何名称,其可能存在或不存在于数据库中。

变量实例可以出现在语音输入的关键字中;引用为存储在状态表中的名称和/或值;和/或经由回放/网络麦克风、控制器和远程计算设备102-105中的一个或多个,在状态表中动态存储和修改。示例变量实例可以包括区域变量实例、控制状态变量实例、目标变量实例和其他变量实例。区域变量实例可以涉及例如代表区域、区域分组、回放设备、网络麦克风设备、绑定状态、区域等的标识符,包括上述那些标识符。控制状态变量可以包括例如各个回放和网络麦克风设备和/或多个设备的当前控制状态,例如,指示播放音乐的设备的信息、设备的音量、存储在设备上的队列等。目标变量实例可以涉及例如与一组设备、绑定的设备和合并的设备相对应的某些控制状态和/或高级状态信息。目标变量还可以对应于媒体回放系统100中的各种设备的校准状态,例如,均衡设置。

其他变量实例也是可能的。例如,媒体变量实例可以识别媒体内容,例如,音频内容(例如,特定曲目、专辑、艺术家、播放列表、电台或音乐流派)。在一些实施例中,可以响应于在数据库中搜索用户期望的音频或内容来识别媒体变量。媒体变量可以出现在语音输入中;在状态表中引用、维护和更新;或在查询中引用,如上所述。作为另一示例,某些变量实例可以指示用户在家居环境中的位置或接近程度、是否在给定的语音输入中检测到用户的语音简档、是否检测到特定唤醒词等。变量实例可以包括自定义变量实例。

在某些实施例中,存储在命令信息集合890中的标准中的至少一些可以包括变量实例的标量向量或变量实例的其他此类集合。例如,标准_1可以包括向量,该向量识别表示图1的媒体回放系统100中所示的区域的区域变量。这样的向量可以包括[阳台,客厅,餐厅,厨房,书房,卧室,尼克的房间]。在一个实施例中,如果在语音输入中向量中的两个或更多个区域变量被检测为关键字,则可以满足标准_1。

命令信息集合890还可以包括其他信息,例如,用户特定信息894和自定义信息896。用户特定信息894可以与用户帐户和/或家庭标识符(hhi)相关联。自定义信息896可以包括例如自定义变量,例如,自定义区域名称、自定义播放列表和/或自定义播放列表名称。例如,“尼克的最爱”可以是具有用户创建的自定义名称的自定义播放列表。

b.捕获语音输入

返回参考图8a,在框802和803处,方法800涉及监视和检测语音输入中的唤醒词。例如,媒体回放系统100可以分析表示语音输入的接收到的音频以确定是否表示唤醒词。媒体回放系统100可以使用一个或多个种唤醒词检测算法来分析接收到的音频,例如,经由唤醒词检测组件,如上所述。

在框804处,方法800涉及在框802和803处检测到唤醒词之后捕获语音输入。在各种实施例中,可以经由回放系统100的一个或多个nmd103来捕获语音输入。如本文所使用的,术语“捕获”或“正在捕获”可以指代包括记录语音输入的至少一部分(例如,在唤醒词之后的语音发声)的过程。在一些实施例中,捕获到的语音输入可以包括唤醒词。在下文所述的某些实施例中,术语“捕获”或“正在捕获”还可以指代记录语音输入的至少一部分并使用例如语音到文本转换将语音输入转换为特定格式(例如,文本)。

c.检测捕获到的语音输入内的一个或多个命令

在框805和806处,方法800涉及检测在框804处捕获到的语音输入内的一个或多个命令892(图8b)。在各种实施例中,方法800可以通过解析语音输入并确定命令892中的一个是否具有与在捕获到的语音输入中找到的语法相匹配的语法来检测命令。以这种方式,方法800可以使用匹配语法来检测语音输入中的命令的意图。匹配语法可以是一个单词、一组单词、一个短语等。在一个示例命令中,用户可以说“在阳台和客厅中播放披头士(thebeatles)”。在该示例中,方法800可以将“播放”的语法识别为与命令信息集合890中的第一回放发起命令的语法相匹配。另外,方法800可以将“披头士(thebeatles)”识别为媒体变量,并且将“阳台”和“客厅”识别为区域变量。因此,命令的语法也可以以变量实例的形式表示,如下所示:“在[第一区域变量]和[第二区域变量]中播放[媒体变量]。”类似的命令可以包括“让我听见[第一区域变量]和[第二/组设备变量]中的[媒体变量]。”如下所述,“让我听见”可以是“播放”意图的关联。

在一些实施例中,用户可以说出伴随一个区域变量实例或没有区域变量实例的命令。在一个示例中,用户可以通过简单地说“播放一些披头士(beatles)”来给出语音输入。在这种情况下,方法800可以确定在默认区域中“播放一些披头士”的意图。在另一种情况下,方法800可以基于可能满足该命令的其他命令标准来确定在一个或多个回放设备上“播放一些披头士”的意图,例如,当在特定区域中检测到用户的存在时,用户请求播放披头士。例如,如果语音输入被位于该区域的右回放设备102a检测到,则媒体回放系统100可以在图1所示的客厅区域中回放一些披头士。

另一示例命令可以是播放下一首命令,其可以使所选择的媒体内容被添加到在区域中下一个要播放的队列的顶部。该命令的示例语法可以是“下一首播放[媒体变量]”。

命令的另一示例可以是移动或转移命令,其可以将当前正在播放的音乐和/或区域的回放队列从一个区域移动或转移到另一个区域。例如,用户可以说出“将音乐移动到[区域变量]”的语音输入,其中命令字“移动”或“传送”可以对应于将回放状态移动到另一区域的意图。作为相关示例,移动音乐的意图可以对应于两个媒体回放系统命令。这两个命令可以将第一区域与第二区域分在一组,然后从该组中移除第二区域,从而有效地将第二区域的状态传送到第一区域。

可以在语音输入中检测到的命令和变量实例的意图可以基于预定义语法中的任何一个,该预定义语法可以与用户意图(例如,播放、暂停、添加到队列、组合、其他传输控件、经由例如控制设备104的可用控件)相关联。在一些实施方式中,命令和相关联的变量实例的处理可以基于预定义的“槽(slots)”,其中,期望在语法中指定一个或多个命令和/或一个或多个变量。在这些和其他实施方式中,如上所述,可以响应于用户自定义和偏好、反馈和自适应学习来更新用于确定用户意图的单词或词汇集合。

在一些实施例中,用于命令的不同的单词、语法和/或短语可以与同一意图相关联。例如,在语音输入中包括命令词“播放”、“收听”或“听”可以对应于反映与媒体回放系统回放媒体内容相同意图的同源词。

图9a-图9c示出了同源词的其他例子。例如,表格900的左侧中的命令可以具有在该表格的右侧中表示的某些同源词。例如,参考图9a,左侧栏中的“播放”命令与右侧栏中的同源短语具有相同的意图,包括“跟我摇摆”、“让我们狂欢吧”、“嗨起来”。在各种实施例中,可以在表格900中添加、移除或编辑命令和同源词。例如,如上所述,可以响应于用户自定义和偏好、反馈、训练和自适应学习来添加、移除或编辑命令和同源词。图9b和图9c分别示出了与控制和区域定位有关的示例同源词。

在一些实施例中,变量实例可以具有以类似于命令的同源词的方式预定义的同源词。例如,媒体回放系统100中的“阳台”区域变量可以具有表示相同区域变量的同源词“外部”。作为另一示例,“客厅”区域变量可以具有“生活区域”、“电视室”、“家庭室”等同源词。

d.确定一个或多个命令符合命令信息集合中的相应标准

一起参考图8a和图8b,在框807处,方法800涉及确定在框806中检测到的一个或多个命令满足命令信息集合890中的相应命令标准。例如,参考图8b,如果检测到第一命令,则方法800将确定该第一命令是否满足标准_1;如果检测到第二命令,则方法800将确定该命令是否满足标准_2;以及以此类推。

可以将命令与多个命令标准集合进行比较。在一些实施例中,某些标准集合可以与逻辑运算符相关联。例如,将第三命令与命令标准_2和命令标准_3进行比较。这些命令由逻辑与(and)运算符连接。因此,第三命令需要满足两个标准集合。相比之下,第n命令与由逻辑或(or)运算符连接的标准(标准_x、标准_y和标准_z)相关联。在这种情况下,第n命令必须仅满足该命令的命令标准集合中的一个。逻辑运算符的各种组合(包括xor运算符)可以用于确定命令是否满足某些命令标准。

在一些实施例中,命令标准可以确定语音输入是否包括多于一个命令。例如,带有“播放[媒体变量]”命令的语音输入可以伴随有第二命令“也在[区域变量]中播放”。在该示例中,媒体回放系统100可以将“播放”识别为一个命令,并且将“也播放”识别为通过包含后一个命令而满足的命令标准。在一些实施例中,当以上示例命令在同一语音输入中一起被说出时,这可以对应于组合意图。

在类似的实施例中,语音输入可以包括依次说出的两个命令或短语。方法800可以识别这样依次的命令或短语可以是相关的。例如,用户可以提供语音输入“播放一些古典音乐”后跟在“客厅”和“餐厅”中,这是将客厅和餐厅中的回放设备组合的推论命令。

在一些实施例中,当依次处理单词或短语时,媒体回放系统100可以检测有限持续时间(例如,1至2秒)的暂停。在一些实施方式中,用户可以有意地暂停以在命令和短语之间划界以促进对相对较长的命令和信息链的语音处理。暂停可以具有足以捕获命令和信息链的预定持续时间,而不会引起媒体回放系统100空闲回到框802处的唤醒词监视。在一个方面中,用户可以使用这样的暂停来执行多个命令,而不必针对要执行的每个期望命令重新说出唤醒词。

e.响应于确定,选择第一vas并放弃选择其他vas,并经由第一vas处理一个或多个命令

满足某些预定命令标准的命令将使媒体回放系统100调用第一vas160,而不满足预定标准的命令可以使媒体回放系统100调用另一vas或根本不调用vas。示例方法800包括:如框807和框808所示,向vas160发送被确定为满足语音点中给定命令的命令标准的语音输入,并且如框809所示,在该给定命令不满足该标准时,向另一vas发送该语音输入。

在框810处,该方法涉及800接收和处理来自vas的响应,该vas接收框808处的语音输入。在一个实施例中,处理来自va的响应可以包括处理来自vas的指令以执行语音输入中的命令,例如,回放、控制、区域定向和以上讨论的其他命令。在一些实施例中,可以指示远程计算设备发起或控制与媒体变量相关联的内容的回放,该媒体变量可以被包括在初始语音输入中或者是数据库搜索的结果。

在一些实施例中,在框810中处理响应可以使媒体内容被获取。在一个实施例中,可以将媒体变量作为数据库搜索媒体内容的结果提供给媒体回放系统100。在一些实施例中,媒体回放系统100可以直接从一个或多个媒体服务中获取媒体内容。在其他实施例中,vas可以结合处理在框800处接收到的语音输入来自动获取媒体内容。在各种实施例中,可以通过元数据交换信道和/或在媒体回放系统100之间建立的任何其他通信路径来传递媒体变量。如上面参考图7b所讨论的,这样的通信可以发起内容流。

在一些实施例中,数据库搜索可以基于在语音输入中检测到的媒体变量来返回结果。例如,数据库搜索可以返回:具有专辑名称与媒体变量相同的艺术家、与媒体变量匹配或相似的专辑名称、名为媒体变量的曲目、媒体变量的广播电台、名为媒体变量的播放列表、与媒体变量有关的内容的流服务提供商标识符和/或原始语音到文本转换结果。使用“美国派(americanpie)”的示例,搜索结果可以返回:艺术家“donmclean”、名为“美国派”的专辑、名为“美国派”的曲目、名为“美国派”的广播电台(例如,“美国派”的pandora广播电台的标识符)、曲目“美国派”的音乐服务(例如,流音乐服务,例如,)曲目标识符(例如,“美国派”的曲目标识符、uri和/或url)和/或“美国派”的原始语音到文本结果。

在一些实施例中,方法800可以涉及响应于播放列表或存储在云网络上的回放队列的变化来更新存储在回放设备上的回放队列,以使得回放队列的一部分与云网络中播放列表或回放队列的一部分或全部相匹配。

响应于在媒体回放系统100中引起动作,方法800可以涉及在框800处更新和/或存储与该动作有关的信息。例如,可以在框800处更新一个或多个控制状态、区域状态、区域标识符或其他信息。可以更新的其他信息可以包括例如识别当前正在播放特定媒体项目的特定回放设备的信息和/或特定媒体项目被添加到存储在回放设备上的队列中。

在一些实施例中,如框811和框812所示,在框810中处理响应可以导致确定vas需要附加信息并以声音提示用户该信息。例如,方法800可以在执行多回合命令时提示用户附加信息。在这种情况下,方法800可以返回到框804以捕获附加语音输入。

虽然本文已经关于媒体内容(例如,音乐内容、视频内容)描述了方法和系统,但是本文描述的方法和系统可以应用于可以具有可由媒体回放系统播放的相关音频的各种内容。例如,可以响应于语音输入来播放可能不是音乐目录的一部分的预先录制的声音。一个示例是语音输入“夜莺的声音是什么样的?”。联网麦克风系统对该语音输入的响应可能不是具有标识符的音乐内容,而可能是短音频剪辑。媒体回放系统可以接收与回放短音频剪辑相关联的信息(例如,存储地址、链接、url、文件)以及用于播放短音频剪辑的媒体回放系统命令。其他示例是可能的,包括播客、新闻剪辑、通知声音、警报等。

iv.用于媒体回放系统的语音控制的示例实现

图10a-图20b是示出了由媒体回放系统100处理的语音输入和控制接口的各种示例的示意图,该控制接口可以表示在处理语音输入之前或之后媒体回放系统100的状态。如下所述,与语音输入内的特定语音命令相关联的命令标准可以为vas(例如,上述的vas160)提供增强的语音控制。语音输入可以由一个或多个nmd103接收,如上所述,该nmd103可以合并也可以不合并到回放设备102中的一个。

尽管为了清楚起见未示出,如上所述,以下各个示例中的语音输入可以在前面加上唤醒词,例如,amazon的或其他唤醒词。在一个方面,相同的唤醒词可以用于发起将要向第一vas或第二vas(例如,传统vas)发送的语音输入的语音捕获。在这种情况下,说出语音发声的用户可能不知道幕后正在发生一个vas与另一个vas的选择。在某些实施例中,用户可以说出独特唤醒词(例如,“heysonos”)来调用第一vas,而无需进一步考虑。在这种情况下,回放系统100可以避免确定选择第一vas而不是另一vas的步骤。

在一个方面中,命令标准可以被配置为对设备进行组合。在一些实施例中,当语音输入涉及媒体变量和/或受影响的设备与回放队列相关联时,这样的命令标准可以同时发起回放。例如,图10a示出了用户向nmd103a说出语音输入以“在客厅和阳台中播放披头士”,并且图10b中的控制器界面示出了客厅和阳台的结果分组。在另一示例中,用户可以说出特定曲目、播放列表、心情或其他信息,以发起本文所述的媒体回放。

图10a中的语音输入包括“在[第一区域变量]和[第二区域变量]中播放[媒体变量]”的语法结构。在该示例中,要播放的命令符合要求两个或更多个区域变量作为语音输入中的关键字的命令标准。在一些实施例中,客厅的回放设备102a、102b、102j和102k可以在图10a所示的语音输入之前和之后保持在绑定的媒体回放设备布置中。

在一些实施例中,说出的区域变量的顺序可以指示哪个回放设备被指定在“组头”。例如,当用户说出包含关键字“客厅”后跟关键字“阳台”的语音输入时,该顺序可以指示客厅将成为组头。组头可以作为区域变量存储在命令信息集合890中。组头可以是用于引用分组回放设备的句柄。当用户说出包含组句柄的语音输入时,媒体回放系统100可以检测到与客厅分在一组的所有设备的意图。以这种方式,当集中控制设备时,用户不必针对一组设备中的每一个区域说出关键字。在相关实施例中,用户可以说出语音输入以将组头更改为另一设备或区域。例如,用户可以将客厅区域的组头更改为阳台(在这种情况下,界面可以将分组的顺序显示为阳台+客厅而不是客厅+阳台)。

在备选示例中,图10c示出了用户说出语音输入“播放披头士”,但是省略了图10b的语音输入中的其他关键字。在该示例中,如上所述,如果命令不满足命令信息集合890中的任何标准,则可以向另一个vas发送语音输入。

在另一示例中,如果命令满足其他命令标准,则可以向第一vas160发送忽略上述关键字的“播放披头士”的语音输入。其他这样的命令标准可以包括例如涉及区域变量、控制状态变量、目标变量和/或其他变量的标准。在一个方面中,变量实例可以是用户与网络麦克风设备的接近度(例如,计算出的或以其他方式确定的距离)。例如,当检测到用户在nmd103附近(例如,具有预定半径r1)时,可以向第一vas160发送图10c的语音输入。接近度的确定可以基于例如语音输入源的信号强度。在另一方面中,当检测到用户的语音简档时,可以向第一vas160发送图10c的语音输入,这可以与是否检测到用户的接近度无关。

在另一方面中,接近度和/或其他命令标准可以促进解析传统vas无法立刻处理的语音输入。例如,如图11a所示,说出语音输入以“提高阳台音量”的用户可能无法通过传统vas解析,因为阳台包括照明设备108,其可以具有相同的名称。参照图1,第一vas160可以通过基于关联的控制变量确定用户是否在回放设备102c附近和/或阳台当前是否正在播放来解析这种冲突的设备名称。在相关方面中,当用户在阳台附近时,第一vas160可以确定增加阳台上的回放设备102c的音量,但是不增加用户不位于其内的客厅中的音量。在这种情况下,如图11b所示,媒体回放系统100可以增加阳台而不是客厅的音量。

类似地,第一vas160可以为具有相似命令命名约定的设备解析冲突的命令。例如,图1所示的餐厅中的恒温器110可以通过用户说出语音输入来编程,以由用户“设置”到特定温度(例如,在60度和85度之间的级别)。同样,用户可以说出语音输入以将餐厅区域“设置”到某个音量级别(例如,在0%和100%之间的级别)。在一个示例中,说出语音输入“将餐厅设置为75”的用户可以由第一vas160解析,因为基于存储在命令信息集合890中的命令标准检测到了餐厅区域正在播放。相比之下,传统vas可能无法确定是将餐厅区域的音量更改为75级还是将餐厅恒温器的温度设置为75。

在各种实施例中,可以经由各个回放/网络麦克风设备和控制器设备102-104结合来自用户的其他输入来处理语音输入。例如,用户可以使用图11b所示界面上的软按钮和控制特征来独立控制组音量、单个音量、回放状态等。另外,在图11b的示例中,用户可以按下标有“分组”的软按钮来访问另一个用于手动组合和取消分组设备的界面。在一个方面中,提供经由语音输入、控制器输入和手动设备输入来与媒体回放系统100交互的多种方式可以提供控件的无缝连续性以增强用户体验。

作为另一个分组/取消分组示例,语音输入“在阳台上播放bobmarley”可以使阳台自动从客厅取消分组。在这种情况下,阳台可以播放bobmarley,而客厅可以继续播放披头士。备选地,如果命令标准指示客厅不再是一组回放设备的组头,则客厅可以停止回放。在另一实施例中,命令标准可以指示设备不响应于回放发起命令而自动取消分组。

命令标准可以被配置为将当前正在播放的音乐和/或区域的回放队列从一个区域移动或转移到另一区域。例如,用户可以说出“将音乐从客厅移动到餐厅”的语音输入,如图12a所示。移动音乐的请求可以将在客厅区域中播放的音乐移动到餐厅,如图12b的控制器界面所示。在相关示例中,用户可以通过直接向图1所示餐厅附近的nmd103f说出“将音乐移动到这里”的语音输入,将音乐移动到餐厅。在这种情况下,用户没有明确提及餐厅,但是vas160可以基于用户与餐厅的接近程度来推断意图。在相关实施例中,如果vas160确定将nmd103f绑定到餐厅中的回放设备1021,则vas160可以确定将音乐移动到餐厅而不是另一个相邻房间(例如,厨房)。在另一示例中,回放系统100可以从当前正在播放内容的元数据推断信息。在一个这样的示例中,用户可以说“将‘letitbe’(或‘披头士’)移动到餐厅”,其识别特定音乐以移动到期望的回放区域和/或区域分组。以此方式,媒体回放系统可以在其他回放区域和/或区域分组中正在主动播放和/或排队等待回放的内容之间进行区分,以确定要转移的内容。

在又一示例中,与组头(例如,客厅)相关联的所有设备可以在将音乐从组头移动到餐厅时停止回放。在相关示例中,当音乐从客厅区域移开时,客厅区域可能失去其作为组头的头衔。

命令标准可以被配置为使用语音输入命令将设备添加到现有分组。例如,如图13a和图13b所示,用户可以通过说出“将客厅添加到餐厅”的语音输入,重新添加客厅区域以与餐厅区域形成组。在相关实施例中,用户可以通过直接向图1所示的客厅区域中的nmd103a说出“也在这里播放”的语音输入来添加客厅。在这种情况下,用户可能没有在语音输入中明确提及客厅,但是vas160可以基于用户的接近程度推断出要添加客厅区域。在另一示例中,如果假设听众在有该意图时在餐厅中,则他或她可以说出命令“添加客厅”。在这种情况下,输入设备的容纳房间可以暗示餐厅目标。

在又一示例中,用户可以在语音输入中指示客厅和餐厅中的哪一个将成为组头,或者vas160可以请求用户指定组头。

作为添加或形成组的另一示例,用户可以使用具有与自定义区域变量相关联的关键字的语音输入实例化组。例如,用户可以为上面讨论的前部区域创建自定义区域变量。用户可以通过说出语音输入(例如,“在前部区域播放vanhalen”)来实例化前部区域分组,如图14a和图14b所示。响应于图14a所示的语音输入,可以取代图13b所示的先前的餐厅组。

命令标准可以被配置为使用语音输入命令将设备移至现有分组。例如,用户可以说出“放弃阳台”的语音输入以将阳台从“前部区域”分组中移除,如图15a和15b所示。作为另一示例,阳台上的命令“停止/移除”可以执行相同的操作。如上所述,其他示例同源词也是可能的。在又一示例中,假设用户在阳台上,用户可以直接向图1所示阳台中的nmd103c讲话以达到相同的结果,例如通过说“在这里停止”或“在这个房间里停止”。

命令标准可以被配置为选择音频内容源并实现相关特征。例如,图16a示出了用户向nmd103a说出语音输入“我想看电视”。作为响应,媒体回放系统100将音频内容源从音乐源切换到电视源,如图16b所示。在一些实施例中,指示媒体回放系统100播放电视源可以自动取消客厅与其他区域的分组。例如,在图16b中,当客厅被切换到电视源时,vanhalen继续在餐厅和厨房中播放。在一些实例中,如上所述,用户随后可以通过分组说出命令以在家居环境中的其他区域中播放电视源。

在相关实施例中,媒体回放系统100可以存储指示客厅何时与电视源连接的状态信息。当客厅处于该状态时,命令标准可以指示与电视源相关的语音命令可以由vas实现,例如,图9b所示的源命令(例如,增强语音、打开静音模式等)。

命令标准可以被配置为绑定设备。例如,图17a示出了用户说出语音输入“我想看前置电视”。作为响应,vas160可以基于命令标准来确定图1中的前置回放设备102b以将其与客厅区域分开并形成电视区域,如图16b所示。在相关示例中,用户可以直接向前回放设备102b的nmd103b说出语音输入,以取消对该设备的绑定。客厅中其余的绑定设备,即,右、左和低音炮设备102a、102j和102k可以停止播放音乐。控制界面还可以将这些设备显示为不再是客厅区域的一部分。

作为绑定的另一示例,用户可以在分离前回放设备102b之后与客厅区域中的其余设备形成不同的绑定布置。例如,如图18a和图18b所示,用户可以通过说出“在我的卫星箱和低音炮上播放bobmarley并创建收听区域”的语音输入来形成收听区域。术语“卫星箱”可以是指代右回放设备102a和左回放设备102k的自定义区域变量。图18a中的语音输入也在新形成的收听区域中发起bobmarley的回放。在所示的示例中,图17a-图18b中的绑定操作并未中断在餐厅和厨房区域中vanhalen的回放,如图18b的控制器界面中进一步所示。

命令标准可以被配置为配对/绑定设备。例如,图17a示出了多回合命令,其中,用户说出语音输入以“将餐厅和厨房立体声配对”。在该示例中,vas指示一个或多个nmd103提示用户并查询餐厅区域是否为左声道。如果用户确认餐厅为右声道,则厨房区域将为右声道。如果用户指示餐厅不是右声道,则餐厅可以默认为左声道,而厨房区域将为右声道。当合并后,餐厅和厨房中的一个可以被指定为组头。vas可以提示用户为绑定设备指定名称,包括唯一名称,例如,“cocina”,如图19b所示。cocina区域可以继续vanhalen的回放,而vanhalen可能已经从先前的餐厅和厨房区域中的任何一个的回放队列中转移了。

在相关实施例中,如图20a和图20b所示,绑定和合并设备可以使vas发起多回合命令或其他命令来校准回放设备。在一个示例中,在将餐厅和厨房区域配对之后,vas160可以继续图19a中的多回合命令序列。在一些实施例中,命令标准可以要求在发起校准之前检测用户操作控制器设备103中的一个。以此方式,vas160可以准备校准软件(例如,sonos的软件)以进行校准,如图20b所示。

vii.结论

以上描述尤其公开了各种示例系统、方法、装置和尤其包括在硬件上执行的固件和/或软件的制品。应当理解的是,这些示例仅是示意性的,而不应当被认为是限制性的。例如,可以想到,这些固件、硬件和/或软件方面或组件中的任意一个或全部可以专门在硬件中实现、专门在软件中实现、专门在固件中实现、或在硬件、软件和/或固件的任意组合中实现。因此,所提供的示例不是实现这些系统、方法、装置和/或制品的唯一方式。

(特征1)一种为媒体回放系统调用第一语音助手服务(vas)的方法,所述方法包括:使包括命令列表和相关命令标准的命令信息集合被存储在存储器中;经由网络麦克风设备的至少一个麦克风捕获语音输入;检测所述语音输入中是否包括一个或多个命令;确定所述一个或多个命令满足所述命令信息集合中的相应命令标准;以及响应于所述确定,选择第一(vas)和放弃选择第二vas,(ii)向所述第一vas发送所述语音输入,(iii)在发送所述语音输入之后,接收来自所述第一vas的对所述语音输入的响应。

(特征2)根据特征1所述的方法,其中,所述媒体回放系统包括多个回放设备,并且其中,所述一个或多个命令包括用于将所述回放设备中的两个或更多个进行组合并在包括所述回放设备中的两个或更多个的组上发起音频内容回放的命令。

(特征3)根据特征2所述的方法,其中,所述确定包括:检测所述语音输入中是否包括一个或多个关键字,其中,所述一个或多个关键字包括以下中的至少一个:(i)与所述两个或更多个回放设备中的一个相关联的第一关键字,以及与所述两个或更多个回放设备中的另一个相关联的第二关键字,以及(ii)包括所述两个或更多个回放设备的分组。

(特征4)根据特征2所述的方法,其中,所述两个或更多个回放设备中的一个包括所述网络麦克风设备。

(特征5)根据特征1所述的方法,其中,所述一个或多个命令被定向到所述媒体回放系统,并且其中,所述功能还包括:基于来自所述第一vas的响应,经由所述媒体回放系统来处理所述一个或多个命令。

(特征6)根据特征5所述的方法,其中,所述一个或多个命令包括回放命令和传输控制命令中的至少一个。

(特征7)根据特征1所述的方法,其中,所述语音输入是第一语音输入,并且其中,所述功能还包括:基于来自所述第一vas的响应,输出声音提示。

(特征8)根据特征1所述的方法,其中,所述语音输入是第一语音输入,并且其中,所述功能还包括:基于来自所述第一vas的响应,输出用于第二语音输入的声音提示。

(特征9)根据特征8所述的方法,其中,所述媒体回放系统包括多个回放设备,其中,所述一个或多个命令包括将所述回放设备中的两个或更多个配对的命令,其中,所述声音提示包括将所述回放设备中的两个或更多个中的至少一个分配给音频声道的请求,并且其中,所述第二语音输入包括对所述回放设备中的两个或更多个中的至少一个的选择。

(特征10)根据特征8所述的方法,其中,所述媒体回放系统包括一个或多个回放设备,并且其中,所述声音提示包括用于校准所述回放设备中的一个或多个的均衡设置的请求。

(特征11)根据特征1所述的方法,其中,所述确定包括检测语音输入源的存在。

(特征12)根据特征11所述的方法,其中,检测所述存在包括:检测所述网络麦克风设备从所述语音输入源接收所述语音输入的方向。

(特征13)根据特征11的所述方法,其中,检测所述存在包括:检测所述网络麦克风设备与所述语音输入源之间的距离。

(特征14)根据特征所述的方法,其中,所述确定包括:检测对控制器设备的使用。

(特征15)根据特征1所述的方法,其中,所述确定包括:检测语音输入源的语音简档。

(特征16)根据特征1所述的方法,其中,所述一个或多个命令是一个或多个第一命令,并且其中,所述确定包括:检测所述语音输入内的一个或多个第二命令。

(特征17)根据特征16所述的方法,其中,所述确定还包括:在所述一个或多个第一命令与所述一个或多个第二命令之间的语音输入内检测至少一个暂停。

(特征18)一种媒体回放系统的网络麦克风设备,包括:(i)处理器;(ii)至少一个麦克风;以及(iii)具有存储在其上的指令的有形计算机可读存储器,所述指令在由所述处理器执行时使所述网络麦克风设备执行媒体回放系统的功能,所述功能包括:(a)使包括命令列表和相关联命令标准的命令信息集合被存储在存储器中;(b)经由所述至少一个麦克风捕获语音输入;(c)检测所述语音输入中是否包括一个或多个命令;(d)确定所述一个或多个命令满足与所述命令信息集合中的一个或多个命令相关联的相应命令标准;以及(e)响应于所述确定,(a)选择第一语音助手服务(vas)和放弃选择第二vas,(ii)向所述第一vas发送所述语音输入,(iii)并且在发送所述语音输入之后,接收来自所述第一vas的对所述语音输入的响应。

(特征19)根据特征18所述的网络麦克风设备,其中,所述媒体回放系统包括多个回放设备,并且其中,所述一个或多个命令包括用于将所述回放设备中的两个或更多个进行分组并在包括所述回放设备中的两个或更多个的分组上发起音频内容回放的命令。

(特征20)根据特征19所述的网络麦克风设备,其中,所述确定包括:检测所述语音输入中是否包括一个或多个关键字,其中,所述一个或多个关键字包括以下中的至少一个:(i)与所述两个或更多个回放设备中的一个相关联的第一关键字,以及与所述两个或更多个回放设备中的另一个相关联的第二关键字,以及(ii)包括所述两个或更多个回放设备的分组。

(特征21)根据特征19所述的网络麦克风设备,其中,所述两个或更多个回放设备中的一个包括所述网络麦克风设备。

(特征22)根据特征18所述的网络麦克风设备,其中,所述一个或多个命令被定向到所述媒体回放系统,并且其中,所述功能还包括:基于来自所述第一vas的响应,经由所述媒体回放系统来处理所述一个或多个命令。

(特征23)根据特征22所述的网络麦克风设备,其中,所述一个或多个命令包括回放命令和传输控制命令中的至少一个。

(特征24)根据特征18所述的网络麦克风设备,其中,所述语音输入是第一语音输入,并且其中,所述功能还包括:基于来自所述第一vas的响应,输出声音提示。

(特征25)根据特征18所述的网络麦克风设备,其中,所述语音输入是第一语音输入,并且其中,所述功能还包括:基于来自所述第一vas的响应,输出用于第二语音输入的声音提示。

(特征26)根据特征25所述的网络麦克风设备,其中,所述媒体回放系统包括多个回放设备,其中,所述一个或多个命令包括将所述回放设备中的两个或更多个配对的命令,其中,所述声音提示包括将所述回放设备中的两个或更多个中的至少一个分配给音频声道的请求,并且其中,所述第二语音输入包括选择所述回放设备中的两个或更多个中的至少一个。

(特征27)根据特征25所述的网络麦克风设备,其中,所述媒体回放系统包括一个或多个回放设备,并且其中,所述声音提示包括用于校准所述回放设备中的一个或多个的均衡设置的请求。

(特征28)根据特征18所述的网络麦克风设备,其中,所述确定包括检测语音输入源的存在。

(特征29)根据特征28所述的网络麦克风设备,其中,检测所述存在包括:检测所述网络麦克风设备从所述语音输入源接收所述语音输入的方向。

(特征30)根据特征28所述的网络麦克风设备,其中,检测所述存在包括:检测所述网络麦克风设备与所述语音输入源之间的距离。

(特征31)根据特征18所述的网络麦克风设备,其中,所述确定包括:检测对控制器设备的使用。

(特征32)根据特征18所述的网络麦克风设备,其中,所述确定包括:检测语音输入源的语音简档。

(特征33)根据特征18所述的网络麦克风设备,其中,所述一个或多个命令是一个或多个第一命令,并且其中,所述确定包括:检测所述语音输入内的一个或多个第二命令。

(特征34)根据特征33所述的网络麦克风设备,其中,所述确定还包括:在所述一个或多个第一命令与所述一个或多个第二命令之间的语音输入内检测至少一个暂停。

(特征35)一种为媒体回放系统调用第一语音助手服务(vas)的方法,所述方法包括:(i)使包括命令列表和相关命令标准的命令信息集合被存储在存储器中;(ii)经由网络麦克风设备的至少一个麦克风捕获语音输入;(iii)检测所述语音输入中是否包括一个或多个命令;(iv)确定所述一个或多个命令满足与所述命令信息集合中的一个或多个命令相关联的相应命令标准;以及(v)响应于所述确定,(a)选择第一语音助手服务(vas)和放弃选择第二vas,(b)向所述第一vas发送所述语音输入,(c)并且在发送所述语音输入之后,接收来自所述第一vas的对所述语音输入的响应。

(特征36)根据特征35所述的方法,其中,所述媒体回放系统包括多个回放设备,其中,所述一个或多个命令包括用于对两个或更多个回放设备进行组合并在包括以下各项的组上发起音频内容的回放的命令:所述两个或更多个回放设备,其中,所述确定包括检测所述语音输入中是否包括一个或多个关键字,其中,所述一个或多个关键字包括以下各项中的至少一个(i)与所述两个或更多个回放设备中的一个相关联的第一关键字,以及与所述两个或更多个回放设备中的另一个相关联的第二关键字,以及(ii)包括所述两个或更多个回放设备的组。

(功能37)一种有形的非暂时性计算机可读介质,其存储可由一个或多个处理器执行的指令,以使网络麦克风设备在媒体回放系统中执行操作,所述操作包括:(i)使包括命令列表和相关命令标准的命令信息集合被存储在存储器中;(ii)经由网络麦克风设备的至少一个麦克风捕获语音输入;(iii)检测所捕获的语音输入中的一个或多个命令;(iv)确定所述一个或多个命令满足所述命令信息集合中的一个或多个相应标准;以及(v)响应于所述确定,(a)选择第一语音助手服务(vas)和放弃选择第二vas,(b)向所述第一vas发送所述语音输入,(c)在发送所述语音输入之后,处理来自所述第一vas的对所述语音输入的响应。

主要在说明性的环境、系统、过程、步骤、逻辑块、处理以及直接或间接地与耦接到网络的数据处理设备的操作相类似的其他象征性表示的方面上,提出本说明书。本领域技术人员通常使用这些处理描述和表示,以向本领域技术人员的其他技术人员传播他们的工作内容。阐述了各种具体细节,以提供本公开的透彻理解。然而,本领域技术人员应理解,不需要特定、具体细节就可以实施本公开。在其他实例中,没有描述熟知的方法、过程、组件和电路,以避免不必要地使实施例的方面模糊不清。因此,本公开的范围由随附权利要求、而不是以上实施例的描述来界定。

当随附权利要求中的任一项权利要求被理解成涵盖纯软件和/或固件实现时,在此明确限定至少一个示例中的至少一个元素以包括存储软件和/或固件的非暂时性有形介质,如存储器、dvd、cd、蓝光等。

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