用于同时的关键字发现、转录和实时通信的音频管线
文献发布时间:2023-06-19 11:55:48
背景技术
近年来,随着用于识别人类用户的语音并且理解命令的技术越来越成熟,带有使用语音识别的用户接口的计算设备越来越受欢迎。具有语音识别系统的计算设备使用音频捕获设备(诸如麦克风)来捕获用户的语音。然后,由计算设备处理所捕获的语音以识别所述语音中的一条或多条命令。然后,将这些命令转换为计算机化的任务。示例性任务可以包括从在线商店订购产品、在计算机化的日历应用中安排约会、搜索互联网等。采用语音识别的一些示例性用户界面包括基于软件的个人助理,诸如来自
附图说明
在不一定按比例绘制的附图中,相似的数字可以在不同的视图中描述相似的组件。具有不同字母后缀的相似数字可以表示相似组件的不同实例。附图通过示例而非限制的方式大体上示出了在本文档中所讨论的各种实施例。
图1图示了根据本公开的一些示例的示例性系统的示意图,所述系统包括防止意外激活语音激活设备的组件。
图2图示了根据本公开的一些示例的关键字检测器的框图。
图3图示了根据本公开的一些示例的防止意外语音激活的方法的流程图。
图4图示了根据本公开的一些示例示出确定是否激活语音命令处理的方法的流程图。
图5是图示了可以在其上实现一个或多个实施例的机器的示例的框图。
具体实施方式
当利用语音识别应用时,用户对被通信地耦合到计算设备的麦克风或其他声音捕获设备讲话。房间中的其他声音,包括由计算设备自身正在播放的声音,诸如来自通信事件的音乐、视频或音频,可能被麦克风拾取。为了防止这些噪声无意地激活所述计算设备的语音控制功能,通常仅在检测到一个或多个激活关键字时才激活所述语音命令功能。例如,通过在输入音频中检测到关键字“Hey Cortana”来激活
尽管使用了激活关键字来防止意外的激活,但是这并不总是足以防止意外的激活。例如,如果第一用户正在进行在线会议,而作为远程参与者的第二用户希望激活其自己的计算机化个人助理,则第二用户可以说出旨在仅激活其个人计算机助理的激活关键字。如果第二用户在讲出所述激活关键字之前没有在在线会议中使自己静音,那么可能通过第一用户的扬声器播放出所述激活关键字,并且可能被第一用户的麦克风拾取。这可能无意地激活第一用户的计算机化个人助理。这可能导致采取不符合第一用户的意愿的意外动作。在一些情况下,可以使用回声消除器来防止这种情况。回声消除器可能无法在所有情况下都可行,因为其降低了声音质量,并且趋于使得对激活关键字以及之后的命令的检测更加困难。
除了无意激活外,研究人员还已经发现了一些新颖的方式来隐藏音乐中使计算机化个人助理执行意外命令的激活命令。在一些情况下,这些命令是人耳听不到的。研究人员已经秘密地使这些计算机化个人助理拨打电话号码、打开网站、订购产品并且执行其他命令。这带来了严重的安全风险并且给用户带来了取消不希望的命令的不便。
在一些示例中,公开了用于防止对语音激活设备的语音命令处理的意外激活的方法、系统和机器可读介质。在一些示例中,由计算设备生成或接收到的第一音频信号和来自被耦合到计算设备的音频输入设备(例如,麦克风)的第二音频信号两者都被提交给关键字检测器。所述第一音频信号可以是来自以下的信号:媒体播放器,诸如音乐播放器、视频播放器等;通信应用,诸如在线会议应用或互联网协议语音(VoIP)应用;视频游戏;或者生成音频的其他应用。所述第一音频信号可以是将由被通信地耦合到计算设备的输出设备(诸如扬声器)输出的音频信号。所述第二音频信号可以从麦克风或其他音频捕获设备输入。这两种音频信号都被输入到关键字检测器,以检查是否存在激活关键字。
如果在所述第二音频信号中检测到(一个或多个)激活关键字而在所述第一音频信号中没有检测到,则激活所述设备的语音命令处理,因为这可能是来自用户的命令,而不是来自扬声器的反馈。如果在所述第一音频信号中检测到(一个或多个)激活关键字而在所述第二音频信号中没有检测到,则语音命令处理功能不被激活(例如,语音激活可能被禁止)。在所述第一信号中检测到(一个或多个)激活关键字而在所述第二信号中没有检测到的情况下,计算设备可以确定回声消除开启并且已经抑制了反馈。计算设备可以利用确定回声消除活动来调整一个或多个应用的一个或多个数字信号处理(DSP)设置,以增强声音质量,从而补偿所述回声消除。如果在两个信号中均未检测到(一个或多个)激活关键字,则所述语音命令处理可能不被激活。
如果在这两个音频信号中都检测到(一个或多个)激活关键字,则在一些示例中,可能不激活所述设备的语音命令处理(例如,禁止语音激活),因为所述输入中的关键字可能是由第一信号反馈到麦克风中或者通过本地用户和远程用户两者同时讲出激活关键字而引起的。在一些示例中,后一种情况可以被认为是罕见的,并且因此,可以忽略(例如,语音命令处理可能不被激活,并且用户可能不得不再次说出所述激活关键字)。在其他示例中,系统可以通过利用关于第一音频信号的所接收到的元数据来处理同时(或者接近同时)的激活关键字话语。例如,如果从在线通信会话中的远程参与者接收到第一音频信号,则远程计算设备可以将在该设备上本地执行的关键字检测的结果作为元数据与音频信号一起发送。亦即,远程参与者的计算设备也在被输入到音频输入设备的音频信号中检查激活关键字,并且将那些结果包括在被发送给远程参与者的音频中。在该示例中,元数据可以包括检测到的(一个或多个)关键字和检测到所述关键字的时间戳。这将允许所述系统通过比较在第一信号中检测到激活关键字的时间戳并且将其与在第二音频信号中检测到激活关键字的时间戳进行比较,来区分在所述第一音频信号中检测到的所述关键字和在所述第二音频信号中检测到的所述关键字。典型的反馈回路将具有特性延迟窗口。如果在所述第一音频信号和所述第二音频信号中同时或者在特性延迟窗口之外检测到所述关键字,则可以激活所述语音命令处理,否则可以不激活所述语音命令处理。
另外,元数据可以包括被检测到的关键字。例如,如果在所述第一音频信号和所述第二音频信号中检测到的激活关键字不同——例如,如果本地用户和远程用户使用不同的计算机化助手——那么可以激活所述语音命令处理。在另外的示例中,元数据还可以包括针对所检测到的激活关键字的语音特性信息。所述语音特性信息可以被本地设备用于确定在所述第二音频信号中检测到的关键字的语音特性与在所述第一音频信号中检测到的关键字的语音特性是相同的还是不同的。如果语音特性是相同的,则很有可能在所述第二音频信号中检测到的关键字是来自所述第一音频信号的反馈,并且因此,所述语音命令处理可能不会被激活。如果语音特性是不同的,则很可能本地用户和远程用户同时尝试在其各自的设备上激活语音命令处理。
如前所述,对通过输出音频信号意外激活语音激活设备的问题的先前解决方案已经利用了回声消除器。在一些情况下,这种回声消除是不希望的,因为其可能降低声音质量,并且其可能降低关键字检测的准确性。因此,本发明解决了对语音激活的计算设备的意外激活的问题,而不影响关键字检测以及命令识别(例如,识别在关键字检测之后的命令)的准确性。通过基于输出信号和输入信号中的哪个包含关键字来智能地激活语音激活功能,来解决该问题。该解决方案不依赖于对输入音频信号的修改,并且因此,不存在如回声消除器那样的保真度损失和关键字检测准确度的相应下降。此外,本解决方案针对每个音频信号使用双管线,所述双管线允许关键字检测以防止可能由关键字检测器引入的任何延迟以及最终语音命令处理的增加。
图1示出了根据本公开的一些示例的示例性系统100的示意图,系统100包括用于防止意外激活语音激活设备的组件。计算设备可以执行一个或多个组件,诸如音频输入/输出应用105、复制器119、复制器129、关键字检测器131、激活过滤器143和语音命令处理器149。在一些示例中,关键字检测器131、激活过滤器143和/或语音命令处理器149中的一个或多个可以是基于网络的服务,其可以由计算设备经由计算机网络通信地到达。语音命令处理器149可以例如通过转录第二音频信号127并且然后基于经转录的音频信号执行适当的命令,来执行一个或多个语音激活功能。语音激活功能可以与一个或多个不同的应用相关联,诸如计算机化个人助理。示例性语音激活功能包括:搜索互联网、搜索文件、请求信息、设置日历日期和提醒、订购产品、将语音转换为文字处理文档、激活设备的硬件、激活设备上的程序等。
所述计算设备可以包括扬声器115和麦克风125,或者可以被通信地耦合到扬声器115和麦克风125。可以从在计算设备上执行的各种音频输入/输出应用105来生成和/或接收第一音频信号117。在一个示例中,音频输入和输出应用可以包括通信应用107。通信应用107可以提供在线会议、语音通信(诸如互联网协议语音(VOIP)通信)等。示例性通信应用可以包括MICROSOFT
音频输入/输出应用105还可以包括可以播放或编辑音频、视频等的媒体应用109。示例性媒体应用可以包括WINDOWS MEDIA
第一音频信号117可以由复制器119复制。音频信号的一个副本可以被发送到输出设备音频管线,所述输出设备音频管线可以最终被输出到诸如扬声器115的输出设备。另一副本可以被发送到语音命令管线,所述语音命令管线可以包括关键字检测器131、激活过滤器143和语音命令处理器149。类似地,用户121可以向麦克风125(或者其他音频捕获设备)讲话,麦克风125捕获所述音频以产生第二音频信号127。也可以使用复制器129来复制第二音频信号127。复制器119和129可以是相同或不同的复制器。经复制的第二音频信号127的一个副本可以作为输入被发送到应用管线,诸如用于一个或多个音频输入/输出应用的管线。例如,作为用于通信应用107的在线会议的音频。可以将经复制的第二音频信号的另一副本发送到以关键字检测器131开始的语音命令处理管线。
复制器119和129可以被用于避免由可以由关键字检测器131在处理音频信号时引入的任何延时,并且提供不同地处理音频信号以针对特定用途来优化每个副本的能力。例如,可以以更适合人类可理解性的方式来处理用于实时通信的音频。然而,为实现该目标而进行的处理可能损害语音命令处理器149的语音可检测性。通过对第一音频信号使用两个管线,所述系统可以针对人类可理解性来处理音频信号的一个副本,以及针对语音识别的一个副本。
关键字检测器131可以在限定的时间段(例如,数秒、毫秒、微秒等)内对第一音频信号117和第二音频信号127进行采样,以解析针对所识别到的语音的音频信号并且确定任何语音是否包含激活关键字。关键字检测器131可以输出是否在音频信号中检测到激活关键字的指示。在一些示例中,关键字检测器131还可以将第二音频信号127是否包含激活关键字的指示作为第二音频信号元数据160输出到音频输入/输出应用105,音频输入/输出应用105可以将所述指示作为元数据发送给其他计算设备(其可以使用该元数据如下文所描述地使用的元数据155)。在一些示例中,所述元数据可以包括检测到的实际激活关键字、何时检测到关键字的时间戳、和/或语音特性。
激活过滤器143可以利用由关键字检测器131输出的指示,并且在一些示例中,利用第一音频信号元数据155(由远程计算设备以第一音频信号117提供的)来确定语音命令处理器149是否应当被激活。例如,激活过滤器143可以采用在图4中所示的方法。如果激活过滤器143基于(一个或多个)激活关键字是否存在于第一音频信号117和第二音频信号127两者中来确定语音命令处理器应当被激活,则激活过滤器143可以将激活信号和第二音频信号127发送给语音命令处理器149。
一旦被激活,语音命令处理器149就可以转录所述音频信号,并且基于所述转录,在计算设备上执行一个或多个语音命令以基于所述语音命令来执行各种功能。在一些示例中,所述语音命令处理器利用相同或相似的功能作为关键字检测器来确定第二音频信号127的语音的内容(例如,确定用户在第二音频信号127中的激活关键字之后说出的命令)。例如,在“Hey Cortana”之后的音频表示所请求的命令。在其他示例中,关键字检测器131可以是用于检测关键字的专用组件,这可以减少处理器密集度并且更快以防止运行完整语音识别模块(诸如可以由语音命令处理器实现)的任何性能下降。
图1的示例使用复制器119和129既避免了由关键字检测器131在处理音频信号时可能引入的任何延时,并且也提供了处理音频信号以便针对每种特定用途来优化其能力。在其他示例中,可以不使用复制器,并且可以在将流输出到扬声器115(或者其他输出设备)之前以及在将流提交给音频输入/输出应用105之前由关键字检测器131处理所述流。另外,图1的示例示出了两个音频信——第一音频信号117和第二音频信号127——分别地,一个音频信号是从输出设备输出的,并且一个音频信号是作为输入从音频捕获设备接收到的。本领域普通技术人员将意识到,可以使用所公开的技术来处理多个输入和输出音频信号,以防止意外的语音激活。图1的组件包括关键字检测器131、激活过滤器143、语音命令处理器149、复制器129和119,其可以以软件、硬件或者软件与硬件的组合来实现。
图2示出了根据本公开的一些示例的关键字检测器231的框图。关键字检测器231可以以硬件、软件或者硬件与软件的组合来实现。关键字检测器231可以是关键字检测器131的示例。关键字检测器231可以包括声学处理器210,声学处理器210可以处理音频信号205(其可以是来自图1的第一音频信号117和第二音频信号127)以优化音频信号205,从而用于关键字检测处理器215。例如,声学处理器210可以调整一个或多个音频属性,诸如增益、平衡、均衡器水平等,以优化所述音频信号。在一些示例中,声学处理器210可以计算音频信号205的一个或多个特征,诸如可以由关键字检测处理器215所使用的梅尔频率倒谱系数(MFCC)。
关键字检测处理器215被配置为检测在经处理的音频信号中的一个或多个激活关键字。在一些示例中,关键字检测处理器利用机器学习的关键字模型235。例如,关键字检测处理器215可以是卷积神经网络,其利用梅尔频率倒谱系数(由声学处理器210计算)来检测一个或多个激活关键字。关键字模型235可以表示所述模型的一个或多个权重和/或参数,然后由关键字检测处理器215用于实现模型。可以使用训练数据以有监督或无监督的机器学习方法以离线方式来训练关键字模型235。对于有监督的方法,可以将所述训练数据标记为包括或不包括激活关键字。关键字检测处理器215的输出可以是在音频信号205中是否检测到激活关键字的关键字指示符225。在一些示例中,所述关键字检测器还可以输出元数据,诸如检测到激活关键字时的时间戳、扬声器的声音特性等。
图3图示了根据本公开的一些示例的防止意外语音激活的方法300的流程图。在操作310处,识别第一音频信号。所述第一音频信号可以是由计算设备接收或产生的一个或多个音频信号。所述第一音频信号可以是由通信应用接收、由媒体播放器应用生成的音频等。在操作314处,所述音频信号被提交给所述关键字检测器。所述关键字检测器(例如,关键字检测器131和231)可以输出关于在所述第一音频信号中是否存在一个或多个激活关键字的第一指示。在向所述关键字检测器提交第一音频信号的同时或相继地,在操作312处识别第二音频信号,并且在操作316处将其提交给关键字检测器,以产生关于在所述第一音频信号中是否存在一个或多个激活关键字的第二指示。所述第二音频信号可以是来自一个或多个音频捕获设备的一个或多个输入音频信号。在一些示例中,可以并行地使用关键字检测器的多个实例,或者可以将信号串行地馈送到关键字检测器的单个实例。
在操作318处,所述系统基于第一指示和第二指示来确定是否经由语音激活来激活所述语音命令处理。语音命令处理是为了识别音频中的命令并且执行所述命令而进行的处理。在一些示例中,如果第二指示指示存在关键字,并且第一指示指示不存在关键字,则激活所述语音命令处理。例如,计算机化个人助理将被激活,并且将响应在所述关键字之后发出的命令。
如果第二指示指示存在关键字,并且第一指示指示存在关键字,则在一些示例中,不激活语音命令处理,因为这表示输出音频通过声音捕获设备被捕获。在其他示例中,如上所述,从远程计算设备发送的元数据可以被用于确定是否激活语音命令处理。例如,如果元数据指示在从远程计算设备发送的音频中没有检测到激活关键字,则可以激活所述语音命令处理。如果元数据指示在从远程计算设备发送的音频中检测到激活关键字,则在时间戳指示关键字出现在特性反馈窗口之外时,可以激活所述语音命令处理。在一些示例中,不是在本地提交这两个音频信号(例如,图1中的第一音频信号117和第二音频信号127),而是可以在本地仅提交第二音频信号127,并且远程关键字检测器的结果(以第一音频信号117作为元数据发送)可以被用于代替关键字检测器131对第一音频信号117的分析。
如果第二指示指示不存在关键字并且第一指示指示存在关键字,则不激活所述语音命令处理。这种情况也是输入设备正在采用回声消除的指示器。知道输入设备正在采用回声消除,这允许计算设备调整数字信号处理(DSP)设置,以改善关键字检测性能以及总体声音质量,以及允许一个或多个应用关闭其自己的回声消除器。例如,通信应用通常具有自己的回声消除算法(因为其不能够依赖系统中存在的那些算法)。一前一后地应用第二回声消除器(例如,一个在系统上,并且另一个在应用中)降低了质量。通过知道回声消除是否已经处于活动状态,所述应用能够关闭其自己的回声消除器——或者阻止其被激活。如果第二指示指示不存在关键字,并且第一指示指示不存在关键字,则不激活语音命令处理。
在操作320处,可以基于所述确定来选择性地激活所述语音命令处理。如果确定所述语音命令处理将被激活,则在操作320处,激活所述语音命令处理。如果确定所述语音命令处理不被激活,则在操作320处,不激活所述语音命令处理。
现在转到图4,示出了根据本公开的一些示例的执行操作318的方法的流程图。在操作410处,如果第二指示未指示存在一个或多个激活关键字,则在操作450处确定不激活所述语音命令处理。如果第二指示指示存在激活关键字,则在操作420处确定第一指示是否指示存在激活关键字。如果第一指示指示存在激活关键字,则在操作450处,不激活语音命令处理功能。如果第一指示指示不存在激活关键字,则在操作440处激活所述语音命令处理功能。如前所述,在一些示例中,如果第一指示和第二指示两者均指示检测到关键字,则从远程通信设备发送的元数据可以被用于确定是否激活所述语音命令处理。
图5图示了示例性机器500的框图,在该机器500上可以执行在本文中所讨论的技术中的任意一种或多种技术(例如,方法)。在替代实施例中,机器500可以作为独立设备来操作,或者可以被连接(例如,联网)到其他机器。在联网部署中,机器500可以在服务器-客户端网络环境中以服务器机器、客户端机器或者这两者的能力来操作。在示例中,机器500可以在对等(P2P)(或者其他分布式)网络环境中充当对等机器。机器500可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、智能电话、网络设备、网络路由器、交换机或桥、或者能够执行指定要由机器采取的动作的指令(顺序地或者以其他方式)的任何机器。机器500可以是可以实现图1和图2的系统并且执行图3和图4的方法的计算设备。此外,尽管仅图示了单个机器,但是术语“机器”也应当被理解为包括机器的任意集合,这些机器个体地或者共同地执行一组(或多组)指令以执行在本文中所讨论的方法中的任意一种或多种方法,诸如云计算、软件即服务(SaaS)、其他计算机集群配置。
如在本文中所描述的,示例可以包括逻辑单元或多个组件、模块或机构或者在其上操作。模块是能够执行指定的操作的有形实体(例如,硬件),并且可以以特定方式被配置或布置。在示例中,可以以指定的方式将电路布置(例如,内部地或者相对于诸如其他电路的外部实体)为模块。在示例中,一个或多个计算机系统(例如,独立机、客户端或服务器计算机系统)或者一个或多个硬件处理器的全部或部分可以由固件或软件(例如,指令、应用部分或应用)配置为操作用于执行指定的操作的模块。在示例中,软件可以驻留在机器可读介质上。在示例中,软件当由模块的基础硬件运行时,使所述硬件执行指定的操作。
因此,术语“模块”应当被理解为涵盖有形实体,其是被物理构造、专门配置(例如,硬接线)或临时(例如,暂时地)配置(例如,编程)以指定方式操作或者执行在本文中所描述的任何部分或全部操作的实体。考虑其中模块被临时配置的示例,所述模块中的每个模块都不需要在任何时刻被实例化。例如,在模块包括使用软件配置的通用硬件处理器的情况下,通用硬件处理器可以在不同时间被配置为相应的不同模块。软件可以因此配置硬件处理器,例如,以在一个时刻构成特定的模块,并且在不同的时刻构成不同的模块。
机器(例如,计算机系统)500可以包括硬件处理器502(例如,中央处理单元(CPU)、图形处理单元(GPU)、硬件处理器核心或者其任意组合)、主存储器504和静态存储器506,其中的一些或全部可以经由互连链路(例如,总线)508彼此通信。机器500还可以包括显示单元510、字母数字输入设备512(例如,键盘)以及用户界面(UI)导航设备514(例如,鼠标)。在示例中,显示单元510、输入设备512和UI导航设备514可以是触摸屏显示器。机器500可以另外地包括存储设备(例如,驱动单元)516、信号生成设备518(例如,扬声器)、网络接口设备520、以及一个或多个传感器521,诸如全球定位系统(GPS)传感器、指南针、加速度计或者其他传感器。机器500可以包括输出控制器528,诸如串行(例如,通用串行总线(USB))、并行或者其他有线或无线(例如,红外(IR)、近场通信(NFC)等)连接,以通信或控制一个或多个外围设备(例如,打印机、读卡器等)。
存储设备516可以包括机器可读介质522,在其上存储有体现在本文中所描述的任意一种或多种技术或功能或者由其利用的一组或多组数据结构或指令524(例如,软件)。在由机器500执行指令524期间,指令524还可以完全或者至少部分地驻留在主存储器504内、在静态存储器506内、或者在硬件处理器502内。在示例中,硬件处理器502、主存储器504、静态存储器506或存储设备516的一个或任意组合可以构成机器可读介质。
尽管机器可读介质522被图示为单个介质,但是术语“机器可读介质”可以包括被配置为存储一个或多个指令524的单个介质或多个介质(例如,集中式或分布式数据库,和/或相关联的高速缓存以及服务器)。
术语“机器可读介质”可以包括能够存储、编码或承载用于由机器500执行的指令并且使机器500执行本公开的任意一种或多种技术的任何介质,或者能够存储、编码或承载由这样的指令使用或者与其相关联的数据结构的任意介质。非限制性机器可读介质示例可以包括固态存储器以及光学和磁性介质。机器可读介质的特定示例可以包括:非易失性存储器,诸如半导体存储器设备(例如,电可编程只读存储器(EPROM)、电擦除可编程只读存储器(EEPROM))和闪存设备;磁盘,诸如内部硬盘和可移动磁盘;磁光盘;随机存取存储器(RAM);固态硬盘(SSD);以及CD-ROM和DVD-ROM磁盘。在一些示例中,机器可读介质可以包括非暂时性机器可读介质。在一些示例中,机器可读介质可以包括不是瞬态传播信号的机器可读介质。
指令524还可以经由网络接口设备520使用传输介质在通信网络526上发送或接收。机器500可以利用多种传输协议中的任意一种协议(例如,帧中继、互联网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传输协议(HTTP)等)与一台或多台其他机器进行通信。示例性通信网络可以包括局域网(LAN)、广域网(WAN)、分组数据网络(例如,互联网)、移动电话网络(例如,蜂窝网络)、普通老式电话(POTS)网络、以及无线数据网络(例如,被称为
其他说明和示例
示例1是一种用于验证用户激活设备的语音命令处理的意图的方法,所述方法包括:使用计算设备的一个或多个处理器:将第一音频信号提交给关键字检测器,所述关键字检测器产生关于在所述第一音频信号中是否存在被设计用于激活所述语音命令处理的一个或多个词语的第一指示;将从被通信地耦合到所述计算设备的音频捕获设备接收到的第二音频信号提交给所述关键字检测器,所述关键字检测器产生关于在所述第二音频信号中是否存在被设计用于激活所述语音命令处理的所述一个或多个词语的第二指示;基于关于是否存在所述一个或多个词语的所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理;以及基于所述确定来选择性地激活对所述设备的所述语音命令处理。
在示例2中,示例1的主题包括:其中,所述第一音频信号是来自通信应用的、源自一个或多个远程参与者的音频。
在示例3中,示例1-2的主题包括:其中,所述第一音频信号被复制,并且其中,第一副本被提交给所述关键字检测器,并且所述第二副本通过被通信地耦合到所述计算设备的输出设备来播放。
在示例4中,示例1-3的主题包括:其中,基于所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理包括:当所述第一指示指示不存在所述一个或多个词语并且所述第二指示指示存在所述一个或多个词语时,激活所述语音命令处理。
在示例5中,示例1-4的主题包括:其中,基于所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理包括:当所述第一指示和所述第二指示两者都指示存在所述一个或多个词语时,避免激活所述语音命令处理。
在示例6中,示例1-5的主题包括:其中,基于所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理包括:当所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语时,避免激活所述语音命令处理。
在示例7中,示例6的主题包括:基于所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语,来确定回声消除器是活动的;以及响应于确定所述回声消除器是活动的,而调整通信应用的数字信号处理设置以补偿所述回声消除器。
在示例8中,示例1-7的主题包括:其中,所述第一音频信号被发送到被通信地耦合到所述一个或多个处理器的输出设备,并且所述第二音频信号是从被通信地耦合到所述一个或多个处理器的输入设备接收到的。
示例9是一种验证用户激活计算设备的语音命令处理的意图的计算设备,所述计算设备包括:处理器;包括指令的存储器,所述指令当由所述处理器运行时,使所述处理器执行包括以下的操作:将第一音频信号提交给关键字检测器,所述关键字检测器产生关于在所述第一音频信号中是否存在被设计用于激活所述语音命令处理的一个或多个词语的第一指示;将从被通信地耦合到所述计算设备的音频捕获设备接收到的第二音频信号提交给所述关键字检测器,所述关键字检测器产生关于在所述第二音频信号中是否存在被设计用于激活所述语音命令处理的所述一个或多个词语的第二指示;基于关于是否存在所述一个或多个词语的所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理;以及基于所述确定来选择性地激活所述计算设备的所述语音命令处理。
在示例10中,示例9的主题包括:其中,所述第一音频信号是来自通信应用的、源自一个或多个远程参与者的音频。
在示例11中,示例9-10的主题包括:其中,所述操作还包括:复制所述第一音频信号,并且将第一副本提交给所述关键字检测器,以及第二副本被使得通过与被通信地耦合到所述计算设备的输出设备来播放。
在示例12中,示例9-11的主题包括:其中,基于所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理的操作包括:当所述第一指示指示不存在所述一个或多个词语并且所述第二指示指示存在所述一个或多个词语时,激活所述计算设备。
在示例13中,示例9-12的主题包括:其中,基于所述第一指示和所述第二指示来确定是否激活所述语音命令处理的操作包括:当所述第一指示和所述第二指示两者都指示存在所述一个或多个词语时,避免激活所述语音命令处理。
在示例14中,示例9-13所述的主题包括:其中,基于所述第一指示和所述第二指示来确定是否激活所述语音命令处理的操作包括:当所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语时,避免激活所述语音命令处理。
在示例15中,示例14的主题包括:其中,所述操作还包括:基于所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语,来确定回声消除器是活动的;以及响应于确定所述回声消除器是活动的,而调整通信应用的数字信号处理设置以补偿所述回声消除器。
在示例16中,示例9-15的主题包括:其中,所述操作还包括:将所述第一音频信号发送到被通信地耦合到所述计算设备的输出设备,以及从被通信地耦合到所述一个或多个处理器的输入设备接收所述第二音频信号。
示例17是一种包括用于验证用户激活机器的语音命令处理的意图的指令的机器可读介质,所述指令当由机器运行时使所述机器执行以下操作:将第一音频信号提交给关键字检测器,所述关键字检测器产生关于在所述第一音频信号中是否存在被设计用于激活所述语音命令处理的一个或多个词语的第一指示;将从被通信地耦合到所述计算设备的音频捕获设备接收到的第二音频信号提交给所述关键字检测器,所述关键字检测器产生关于在所述第二音频信号中是否存在被设计用于激活所述语音命令处理的所述一个或多个词语的第二指示;基于关于是否存在所述一个或多个词语的所述第一指示和所述第二指示两者,来确定是否激活所述语音命令处理;以及基于所述确定来选择性地激活所述机器的所述语音命令处理。
在示例18中,示例17的主题包括:其中,所述第一音频信号是来自通信应用的、源自一个或多个远程参与者的音频。
在示例19中,示例17-18的主题包括:其中,所述操作还包括:复制所述第一音频信号,并且将第一副本提交给所述关键字检测器,以及第二副本被使得通过被通信地耦合到所述机器的输出设备来播放。
在示例20中,示例17-19的主题包括:其中,基于所述第一指示和所述第二指示来确定是否激活所述语音命令处理的操作包括:当所述第一指示指示不存在所述一个或多个词语并且所述第二指示指示存在所述一个或多个词语时,激活所述语音命令处理。
在示例21中,示例17-20的主题包括:其中,基于所述第一指示和所述第二指示来确定是否激活所述语音命令处理的操作包括:当所述第一指示和所述第二指示两者都指示存在所述一个或多个词语时,避免激活所述语音命令处理。
在示例22中,示例17-21所述的主题包括:其中,基于所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理的操作包括:当所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语时,避免激活所述语音命令处理。
在示例23中,示例22的主题包括:其中,所述操作还包括:基于所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语,来确定所述回声消除器是活动的;以及响应于确定所述回声消除器是活动的,而调整通信应用的数字信号处理设置以补偿所述回声消除器。
在示例24中,示例17-23的主题包括:其中,所述操作还包括:将所述第一音频信号发送到被通信地耦合到所述机器的输出设备,以及从被通信地耦合到所述机器的输入设备接收所述第二音频信号。
示例25是一种验证用户激活计算设备的语音命令处理的意图的计算设备,所述计算设备包括:用于将第一音频信号提交给关键字检测器的单元,所述关键字检测器产生关于在所述第一音频信号中是否存在被设计用于激活所述语音命令处理的一个或多个词语的第一指示;用于将从被通信地耦合到所述计算设备的音频捕获设备接收到的第二音频信号提交给所述关键字检测器的单元,所述关键字检测器产生关于在所述第二音频信号中是否存在被设计用于激活所述语音命令处理的所述一个或多个词语的第二指示;用于基于关于是否存在所述一个或多个词语的所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理的单元;以及用于基于所述确定来选择性地激活所述设备的所述语音命令处理的单元。
在示例26中,示例25的主题包括:其中,所述第一音频信号是来自通信应用的、源自一个或多个远程参与者的音频。
在示例27中,示例25-26的主题包括:其中,所述第一音频信号被复制,并且第一副本被提交给所述关键字检测器,以及所述第二副本被使得通过被通信地耦合到所述计算设备的输出设备来播放。
在示例28中,示例25-27的主题包括:其中,用于基于所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理的单元包括:用于当所述第一指示指示不存在所述一个或多个词语并且所述第二指示指示存在所述一个或多个词语时激活所述语音命令处理的单元。
在示例29中,示例25-28的主题包括:其中,用于基于所述第一指示和所述第二指示两者来确定是否激活所述语音命令处理的单元包括:用于当所述第一指示和所述第二指示两者都指示存在所述一个或多个词语时避免激活所述语音命令处理的单元。
在示例30中,示例25-29所述的主题包括:其中,用于基于所述第一指示和所述第二指示来确定是否激活所述语音命令处理的单元包括:用于当所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语时避免激活所述语音命令处理的单元。
在示例31中,示例30的主题包括:用于基于所述第一指示指示存在所述一个或多个词语并且所述第二指示指示不存在所述一个或多个词语来确定回声消除器是活动的单元;以及用于响应于确定所述回声消除器是活动的而调整通信应用的数字信号处理设置以补偿所述回声消除器的单元。
在示例32中,示例25-31的主题包括:其中,所述第一音频信号被发送到被通信地耦合到所述一个或多个处理器的输出设备,并且所述第二音频信号是从被通信地耦合到所述一个或多个处理器的输入设备接收到的。
示例33是至少一种机器包括指令的可读介质,所述指令当由处理电路运行时使所述处理电路执行用于实施示例1-32中的任一项的操作。
示例34是一种包括用于实现示例1-32中的任一项的单元的装置。
示例35是一种实现示例1-32中的任一项的系统。
示例36是一种实现示例1-32中的任一项的方法。
- 用于同时的关键字发现、转录和实时通信的音频管线
- 上下文感知式实时会议音频转录