用于音频数据传送的动态校准的制作方法

文档序号:20516346发布日期:2020-04-24 19:08阅读:182来源:国知局
用于音频数据传送的动态校准的制作方法

相关申请的交叉引用

本专利申请要求于2017年8月24日提交的标题为“dynamiccalibrationforaudiodatatransfer(用于音频数据传送的动态校准)”的美国专利申请第62/549,691号的优先权。上述申请的全部内容通过引用完全结合在此。

本文公开的技术涉及最优的基于音频的数据传送硬件配置的动态校准。



背景技术:

移动计算设备通常经由互联网交换数据。在互联网连接不可用或不合需要的情况下,可以使用对等连接,诸如蓝牙或近场通信,来传送数据。然而,这些对等连接解决方案需要特有硬件和api才能起作用。因此,需要使能和使用通常在移动计算设备上发现的特征和硬件来交换数据。

默认情况下,每个电话或移动通信设备都具有麦克风和扬声器。通过利用一个移动通信设备的麦克风和另一移动通信设备的扬声器,可以通过声波发送数据。然而,每个移动通信设备具有为该移动通信设备提供最佳音频广播传输的特有硬件配置以及提供最佳音频接收的特有硬件配置。随着市场上可用的大量音频通信设备以及越来越多的新设备被发布,需要使移动通信设备能够在广播或接收基于音频的数据之前确定其最优配置。



技术实现要素:

本文的技术提供了用于基于音频的数据传送的动态校准的计算机实现的方法。在示例中,计算设备使用初始数据接收硬件配置来接收基于音频的数据传输。计算设备分析基于音频的数据传输的信号强度和基于音频的数据传输的可靠性,以确定针对初始数据接收硬件配置的置信度分数。如果置信度分数低于定义的阈值置信度分数,则计算设备修改数据接收硬件配置。该计算设备使用修改的数据接收硬件配置来接收重新发送的基于音频的数据传输,分析该重新发送的基于音频的数据传输的第二信号强度和基于音频的数据传输的第二可靠性,并确定针对修改的数据接收硬件配置的第二置信度分数。如果第二置信度分数处于或高于定义的阈值置信度分数,则计算设备根据修改的数据接收硬件配置来更新初始数据接收硬件配置。在示例中,计算设备通知第二计算设备修改数据广播硬件配置,其中第二计算设备在重新发送基于音频的数据传输之前修改数据广播硬件配置。

在本文所述的某些其他示例方面中,提供了动态地校准计算设备以用于基于音频的数据传送的系统和计算机程序产品。

在考虑了以下所示示例的详细描述之后,示例的这些和其他方面、目的、特征和优点对于本领域普通技术人员将变得显而易见。

附图说明

图1是描绘根据某些示例的用于基于音频的数据传送的动态校准的系统的框图。

图2是描绘根据某些示例的用于基于音频的数据传送的动态校准的方法的方框流程图。

图3是描绘根据某些示例的用于基于音频的数据广播的最优校准的方法的方框流程图。

图4是描绘根据某些示例的用于基于音频的数据接收的最优校准的方法的方框流程图。

图5是描绘根据某些示例的计算机器和模块的框图。

具体实施方式

概述

本文描述的示例提供了用于基于音频的数据传送的动态校准的计算机实现的技术。在提出的用于基于音频的数据传送的动态校准的计算机实现的方法中,计算设备使用初始数据接收硬件配置来接收基于音频的数据传输。计算设备分析基于音频的数据传输的信号强度和基于音频的数据传输的可靠性,以确定初始数据接收硬件配置的置信度分数。如果置信度分数低于定义的阈值置信度分数,则计算设备修改数据接收硬件配置。该计算设备使用修改后的数据接收硬件配置来接收重新发送的基于音频的数据传输,分析该重新发送的基于音频的数据传输的第二信号强度和基于音频的数据传输的第二可靠性,并确定修改后的数据接收硬件配置的第二置信度分数。如果第二置信度分数处于或高于定义的阈值置信度分数,则计算设备根据修改后的数据接收硬件配置来更新初始数据接收硬件配置。分析基于音频的数据传输的可靠性可以例如包括确定是否接收到完整的数据传输。确定是否接收到完整的数据传输可以包括:接收在基于音频的数据传输中计算设备已知的(以及广播到广播第二计算设备且该广播第二计算设备已知的)音频令牌,并比较音频令牌中接收的数据与音频令牌的已知(存储的)数据。计算设备因此可以将在基于音频的传输中接收的音频令牌的数据与已知的并因此被存储的参考音频令牌进行比较,以便分析是否接收到完整的数据传输并基于其值可以指示是否接收到完整的数据传输的可靠性参数来确定可靠性。可靠性参数的值还可以指示接收到已知音频令牌中的多少(例如多少百分比)并且因此接收到完整数据传输中的多少。

在示例中,计算设备通知第二计算设备修改数据广播硬件配置,其中第二计算设备在重新发送基于音频的数据传输之前修改数据广播硬件配置。被通知修改数据广播硬件配置的第二计算设备可以广播计算设备接收的基于音频的数据传输。

在示例中,初始数据接收硬件配置可以包括硬件配置参数的第一组合,该第一组合先前被配置为为计算设备提供预定的数据接收,特别是基于接收的基于音频的数据传输的不同接收和/或传输参数的特有组合被认为最佳的计算设备的数据接收。不同的接收和/或传输参数可以包括音量、频带、采样率、使用的麦克风输入、使用的扬声器输出、进行的重复尝试的数量、立体声通道的使用以及独白单声通道的使用。硬件配置参数的第一组合可以例如设置初始音量、频率、采样率、使用的扬声器输出、使用的音频通道或可以变动的施加声波或声音传输的其他属性。

在示例中,该方法可以进一步包括由计算设备分析完成基于音频的数据传输的传输逝去的时间。例如,计算设备确定完成基于音频的数据传输中包括的音频令牌或其他数据的传输逝去的时间,以评估音频令牌接收的质量。在该示例中,计算设备可以例如基于从每个音频令牌的每次接收记录的数据来确定针对音频令牌的每次接收的质量分数。在示例中,计算设备基于针对音频令牌的每次接收的质量分数来确定最优接收配置。

在示例中,将修改的数据接收硬件配置发送到包括与计算设备相似的型号(model)的多个计算设备。相似型号可以包括这样的计算设备的型号:其包括相同的型号号码或型号号码标识符。

在示例中,广播计算设备获取(retrieve)最优配置数据以用于经由音频通信信道来广播数据。示例最优配置描述了用于广播计算设备的最优广播硬件配置或用于类似广播计算设备(例如,具有相似品牌或型号的广播计算设备)的最优广播硬件配置。在示例中,从账户管理计算系统接收初始最优广播硬件配置。在另一示例中,初始最优广播配置由广播计算设备使用从账户管理计算系统下载的应用来确定。在该示例中,广播计算设备发送和/或接收音频令牌,而应用记录与每次接收和/或发送相关联的数据。

在示例中,为多个广播计算设备确定初始最优数据广播硬件配置数据。例如,每个广播计算设备使用变化的硬件配置来发送音频令牌。变化的硬件配置包括变化的配置,诸如音量、频率、采样率、所使用的扬声器输出、所使用的音频通道、或可以经由广播计算设备变动的施加声波或声音传输的其他属性。在示例中,每个广播通信设备使用预定的多组硬件配置进行发送。例如,每个广播计算设备使用预定数量的不同音量配置、预定数量的不同频率配置、预定数量的不同幅度配置、在保持所有其他配置不变的同时变动一个特定配置来进行发送。在其他示例中,账户管理计算系统确定一组优选的初始测试配置,将该组优选的初始测试配置发送到每个广播计算设备,并且每个广播计算设备通过该组初始测试配置中的每一个发送音频令牌到账户管理计算系统。

每个广播计算设备上、每个接收计算设备上和/或账户管理计算系统上的应用记录与每个音频令牌传输和接收相关联的数据。例如,账户管理计算系统与在广播计算设备和接收计算设备上运行的应用进行通信。例如,账户管理计算系统确定完成音频令牌或其他数据的传输逝去的时间,以评估音频传输的质量。在该示例中,账户管理计算系统基于从每个音频令牌的每次传输记录的数据,确定针对来自每个特定广播计算设备的音频令牌的每次传输的质量分数。在示例中,对于每个广播计算设备,基于针对音频令牌的每次传输的质量分数,账户管理计算系统确定最优传输配置。

在示例中,为了确定初始最优数据接收硬件配置,每个接收计算设备接收由广播计算设备发送的音频令牌,并使用与音频信号的接收相关联的变化的硬件配置。在示例中,每个接收计算设备通过预定的一组硬件配置接收音频令牌。例如,每个接收计算设备使用预定数量的不同音量配置、预定数量的不同频率配置、预定数量的不同幅度配置、在保持所有其他配置不变的同时变动一个特定配置来接收音频令牌。

在其他示例中,账户管理计算系统确定用于接收音频令牌的一组优选的初始测试配置。账户管理计算系统将该组优选的初始测试配置发送到每个接收计算设备。广播计算设备发送音频令牌,并且接收计算设备使用该组初始测试配置中的每一个接收音频令牌。接收计算设备、广播计算设备和/或账户管理计算系统上的应用记录与音频令牌的每次传输和接收相关联的数据。例如,对于音频令牌的每次传输和接收,账户管理计算系统与在广播计算设备和接收计算设备两者上运行的应用进行通信。例如,账户管理计算系统确定完成音频令牌或其他数据的传输逝去的时间,以评估音频令牌接收的质量。在该示例中,账户管理计算系统基于从每个音频令牌的每次接收记录的数据来确定针对每个特定接收计算设备的音频令牌的每次接收的质量分数。在示例中,账户管理计算系统基于针对音频令牌的每次接收的质量分数来确定针对每个接收计算设备的最优接收配置。在示例中,账户管理计算系统基于针对音频令牌的每次接收的质量分数来确定针对多个不同类型的计算设备中的每一个的最优数据广播和数据接收硬件配置。

在示例中,当广播计算设备被指引(direct)为将音频令牌发送到接收计算设备时,广播计算设备访问最优数据广播硬件配置。在示例中,接收计算设备访问最优数据接收硬件配置。在示例中,最优配置由账户管理计算系统维护,并且可以经由应用被广播计算设备和接收计算设备访问。广播计算设备根据用于由广播计算设备传输音频令牌的最优数据广播硬件配置来配置硬件设置,以发送音频令牌。在另一示例中,接收广播计算设备根据用于由接收计算设备接收音频令牌的最优数据接收硬件配置,配置硬件设置以接收由广播计算设备发送的音频令牌。

在示例中,广播计算设备和接收计算设备两者(和/或经由网络与计算设备通信的账户管理计算系统)上的应用都记录与音频令牌的传输和接收相关联的性能数据。例如,账户管理计算系统确定完成音频令牌或其他数据的传输逝去的时间,以评估音频令牌传输和接收的质量。在该示例中,账户管理计算系统基于由设备上的应用记录的数据,确定针对令牌的广播计算设备的传输和音频计算设备的接收两者的质量分数。

在示例中,账户管理计算系统基于传输的质量分数来更新用于音频令牌的传输的最优数据广播硬件配置。例如,在特定硬件配置下的传输的质量分数相比于初始最优配置数据减少。在该示例中,账户管理计算系统降低与针对该硬件配置的最优配置数据相关联的质量分数。在另一示例中,在特定硬件配置下的传输的质量分数相比于初始最优配置数据增加。在该示例中,账户管理计算系统增加与针对该硬件配置的最优配置数据相关联的质量分数。在示例中,如果改变大于阈值改变,账户管理计算系统才修改针对硬件配置的质量分数。

在示例中,作为修改针对数据广播硬件配置的质量分数的结果,账户管理计算系统确定该硬件配置不再是用于广播计算设备的最优传输配置。在该示例中,账户管理计算系统确定可替代硬件配置是用于广播计算设备的音频令牌的传输的最优配置,并且基于确定来更新最优数据广播硬件配置。

在另一示例中,账户管理计算系统基于传输的质量分数来更新用于接收音频令牌的最优数据接收硬件配置。例如,在特定硬件配置下的接收的质量分数相比于初始最优配置数据降低。在该示例中,账户管理计算系统降低与针对该硬件配置的最优配置数据相关联的质量分数。在另一示例中,在特定硬件配置下的接收的质量分数相比于初始最优配置数据增加。在该示例中,账户管理计算系统增加与针对该硬件配置的最优配置数据相关联的质量分数。在示例中,如果相比于先前质量分数的改变大于阈值改变,账户管理计算系统才修改针对硬件配置的质量分数。

在示例中,作为修改针对硬件配置的质量分数的结果,账户管理计算系统确定数据接收硬件配置不再是用于接收计算设备的最优接收配置。在该示例中,账户管理计算系统确定可替代硬件配置是用于接收设备的音频令牌的接收的最优配置,并且基于确定来更新最优数据接收硬件配置。

在示例中,账户管理计算系统向多个不同的计算设备提供更新的最优配置数据,以供多个计算设备中的每一个经由网络访问。在示例中,多个计算设备中的特定一个被指引为发送音频令牌。例如,特定广播计算设备的用户发起数据传送。特定广播计算设备获取更新的最优数据广播硬件配置,并根据更新的硬件配置发送音频令牌。在另一示例中,多个计算设备中的特定一个被指引为接收音频令牌。特定接收计算设备获取更新的最优数据接收配置,并根据最优硬件配置来配置硬件设置以接收音频令牌。

通过使用并依赖于本文所述的方法和系统,系统动态地校准最优的基于音频的数据传送硬件配置。这样,本文描述的系统和方法可以被用来抢先找到最佳的广播和最佳的接收配置,而不需要用户物理地操纵配置。该系统将最优设置与账户管理计算系统进行通信,该账户管理计算系统可以将最优设置推送到所有类似的计算设备,从而节省时间和资源。该系统的自动和动态本质在基于音频的数据的传输期间起作用。因此,该系统在比人们执行类似动作所能实现的速度更快的速度的传输的背景下出现。

可以在支持基于音频的数据传送的所有不同的计算设备当中共享动态配置方案。例如,当利用尚不知道理想配置的新计算设备进行基于音频的数据传送时,这种动态配置方案是有益的。在该示例中,安装在计算设备上的应用可以修改硬件配置以建议最优配置。然后,最优配置被经由网络发送到账户管理计算系统,并可供具有与计算设备相同型号的其他计算设备使用。

在另一示例中,例如,当在市场上推出新的计算设备型号时,这种动态配置方案是有益的。实验室测试可用于导出最优配置,并跨相同型号的计算设备共享最优配置。

在另一示例中,例如,当预期的(intended)基于音频的数据传送方案有转变(shift)时,该动态配置方案是有益的。例如,改变所有计算设备必须以其发射/接收的频带。在该示例中,可以将所确定的配置传达给所有计算设备。可以对这样的改变进行定时,使得所有计算设备在预定义时间移动到新方案。在另一示例中,将确定的配置传达给行为相似的设备组(例如,相同型号或来自相同制造商的相关型号的那些设备)。在该示例中,来自单个计算设备的确定的配置可以触发属于同一组的大量设备中的音频配置改变。

结合示出程序流程的附图,在下面的描述中将更详细地解释各种示例。

现在转向附图,其中在所有附图中类似的数字表示类似(但不一定相同)的元件,详细描述示例实施例。

示例系统架构

图1是描绘根据某些示例的用于基于音频的数据传送的动态校准的系统的框图。如图1中所描绘的,示例操作环境100包括被配置为经由网络计算设备经由一个或多个网络140彼此通信的计算系统110、120和130。在另一示例中,这些计算系统(包括系统110、120和130)中的两个或更多个被集成到同一系统中。在一些示例中,与计算设备相关联的用户必须安装应用和/或进行特征选择以获得本文所述技术的益处。

每个网络140包括有线或无线电信机制,网络计算系统(包括系统110、120和130)可以通过该机制来传达和交换数据。例如,每个网络140可以被实现为存储区域网络(san)、个人区域网络(pan)、城域网(man)、局域网(lan)、广域网(wan)、无线局域网(wlan)、虚拟专用网(vpn)、内联网、互联网、移动电话网络、卡网络、蓝牙、低功耗蓝牙(ble)、近场通信网络(nfc)、任何形式的标准化射频、红外、声音(例如,可听见的声音、旋律和超声)、其他短程通信信道或它们的任意组合、或有助于信号、数据和/或消息(通常称为数据)的通信的任何其他适当的体系结构或系统,或者可以是以上各项中的一部分。贯穿此说明书,应该理解,术语“数据”和“信息”在本文中可互换使用,以指代文本、图像、音频、视频或可以存在于基于计算机的环境中的任何其他形式的信息。

在示例中,每个网络计算系统(包括系统110、120和130)包括具有通信模块的计算设备,该通信模块能够通过网络140发送和接收数据。例如,每个网络计算系统(包括系统110、120和130)可以包括服务器、个人计算机、移动设备(例如,笔记本计算机、平板计算机、上网本计算机、个人数字助理(pda)、视频游戏设备、gps定位器设备、蜂窝电话、智能电话或其他移动设备)、具有嵌入其中和/或耦合到其的一个或多个处理器的电视、或包括或耦接到web浏览器或其他应用以经由网络140进行通信的其他适当技术。在图1中所描绘的示例中,网络计算系统(包括系统110、120和130)分别由用户和账户管理计算系统操作员来操作。

示例广播计算设备110包括用户接口111、应用113、麦克风组件115、音频组件117和数据存储单元119。在示例中,广播计算设备110可以是个人计算机、移动设备(例如,笔记本、计算机、平板计算机、上网本计算机、个人数字助理(pda)、视频游戏设备、gps定位器设备、蜂窝电话、智能电话或其他移动设备)、电视、可穿戴计算设备(例如,手表、环状物或眼镜)或者包括或耦接到web服务器(或与web页面文件进行交互的其他合适应用)或包括或耦接到应用113的其他适当技术。

用户可以使用用户接口111和应用113来使用广播计算设备110经由音频组件117广播基于音频的数据。例如,用户接口111包括触摸屏、基于语音的接口或允许用户提供输入并从应用113接收输出的任何其他接口。在示例中,用户经由用户接口111与应用113交互以选择或指令广播计算设备110经由音频组件117广播基于音频的数据。

应用113是存在于广播计算设备110上并在其上执行其操作的程序、功能、例程、小程序或类似实体。例如,应用113可以是音频应用、数据应用、账户管理计算系统130应用、互联网浏览器、用户接口111应用或在广播计算设备110上操作的其他合适的应用中的一个或多个。在一些示例中,用户必须在广播计算设备110上安装应用113和/或进行特征选择,以获得本文所述技术的益处。

在示例中,数据存储单元119和应用113可以在广播计算设备110上的安全元件或其他安全存储器(未示出)中实现。在另一示例中,数据存储单元119可以是驻留在广播计算设备110上的单独的存储器单元。示例数据存储单元119使得能够存储最优数据广播硬件配置。在示例中,数据存储单元119可以包括适于存储信息的广播计算设备110可访问的本地或远程数据存储结构。在示例中,数据存储单元119存储加密的信息,诸如html5本地存储。

在示例中,音频组件117包括扬声器设备或能够产生声音输出的其他设备。示例声音输出包括超声输出。在示例中,音频组件117与应用113通信以接收广播声音输出的指令。在示例中,音频组件117是广播计算设备110的组件。在另一示例中,音频组件117通信地耦接到广播计算设备110。

在示例中,麦克风组件115包括麦克风设备,该麦克风设备能够从广播计算设备110的环境接收声音输入。在示例中,麦克风组件115与应用113通信以接收从被动模式转换到主动模式并收听声音输入的指令。在示例中,麦克风组件115在处于主动模式中时接收声音输入,并将接收的声音输入发送到应用113。

示例广播计算设备110经由音频通信信道与接收计算设备120通信。经由音频通信信道的示例通信包括基于音频的数据的传输。在示例中,数据通过声波从广播计算设备110传送到接收计算设备120。

示例接收计算设备120包括用户接口121、应用123、麦克风组件125、音频组件127和数据存储单元129。在示例中,接收计算设备120可以是个人计算机、移动设备(例如,笔记本、计算机、平板计算机、上网本计算机、个人数字助理(pda)、视频游戏设备、gps定位器设备、蜂窝电话、智能电话或其他移动设备)、电视、可穿戴计算设备(例如,手表、环状物或眼镜)或者包括或耦接到web服务器(或与web页面文件进行交互的其他合适应用)或包括或耦接到应用123的其他适当技术。

用户可以使用用户接口121和应用123来使用接收计算设备120经由麦克风组件125接收基于音频的数据。例如,用户接口121包括触摸屏、基于语音的接口或允许用户提供输入并从应用123接收输出的任何其他接口。在示例中,用户经由用户接口121与应用123交互,以接收、读取经由麦克风组件125接收的基于音频的数据或与该基于音频的数据交互。

应用123是存在于接收计算设备120上并在其上执行其操作的程序、功能、例程、小程序或类似实体。例如,应用123可以是音频应用、数据应用、账户管理计算系统130应用、互联网浏览器、用户接口121应用或在接收计算设备120上操作的其他合适的应用中的一个或多个。在一些示例中,用户必须在接收计算设备120上安装应用123和/或进行特征选择,以获得本文所述技术的益处。

在示例中,数据存储单元129和应用123可以在接收计算设备120上的安全元件或其他安全存储器(未示出)中实现。在另一示例中,数据存储单元129可以是驻留在接收计算设备120上的单独的存储器单元。示例数据存储单元129使得能够存储最优数据接收硬件配置。在示例中,数据存储单元129可以包括适合于存储信息的接收计算设备120可访问的本地或远程数据存储结构。在示例中,数据存储单元129存储加密的信息,诸如html5本地存储。

在示例中,麦克风组件125包括麦克风设备,该麦克风设备能够从接收计算设备120的环境接收声音输入。在示例中,麦克风组件125与应用123通信以接收从被动模式转换到主动模式并收听声音输入的指令。在示例中,麦克风组件125在处于主动模式中时接收声音输入,并将接收的声音输入发送到应用123。

在示例中,音频组件127包括扬声器设备或能够产生声音输出的其他设备。示例声音输出包括超声输出。在示例中,音频组件127与应用123通信以接收用于广播声音输出的指令。在示例中,音频组件127是接收计算设备120的组件。在另一示例中,音频组件127通信地耦接到接收计算设备120。

在另一示例实施例中,接收计算设备120充当广播计算设备110,并执行本文描述的广播计算设备110的功能。在另一示例实施例中,广播计算设备110充当接收计算设备120,并执行本文描述的接收计算设备120的功能。

示例接收计算设备120和广播计算设备110与账户管理计算系统130通信。示例账户管理计算系统130包括账户管理组件131、音频传输配置组件133、音频接收配置组件135和数据存储单元137。

在示例中,接收计算设备120和广播计算设备110向账户管理计算系统130注册或以其他方式与账户管理计算系统130相关联。在该示例中,账户管理计算系统130能够识别接收计算设备120和广播计算设备110,并且将硬件配置、指令、更新或其他形式的数据传输发送到每个计算设备110和120。在另一示例中,账户管理计算系统130能够识别从接收计算设备120和广播计算设备110接收的通信或传输。在示例中,每个设备具有唯一的或以其他方式与其相关联的可识别码。在示例中,每个计算设备(包括110和120)将与账户管理计算系统130相关联的应用(包括113和123)下载到该设备上或对其授权以执行本文所述的技术。在示例中,在账户管理组件131内维护该信息。

在示例中,每个设备(包括110和120)包括最优音频传输和音频接收配置。在示例中,账户管理计算设备130与设备(包括110和120)通信以确定初始最优音频传输和音频接收配置。

在示例中,音频传输配置组件133确定用于多个广播计算设备(包括110)的初始最优广播配置数据。例如,每个广播计算设备(包括110)使用变化的硬件配置将音频令牌发送到账户管理计算系统130。在其他示例中,账户管理计算系统130确定一组优选的初始测试配置,将优选的初始测试配置发送到每个广播计算设备(包括110),并且每个广播计算设备(包括110)通过初始测试配置中的每一个发送音频令牌到账户管理计算系统130。账户管理计算系统130记录与音频令牌的每次传输相关联的数据,并基于从每个音频令牌的每次传输记录的数据,确定针对来自每个特定广播计算设备(包括110)的音频令牌的每次传输的质量分数。

在示例中,音频接收配置组件135确定用于多个接收计算设备(包括120)的初始最优接收配置数据。例如,每个接收计算设备(包括120)使用变化的硬件配置从账户管理计算系统130接收音频令牌。在其他示例中,账户管理计算系统130确定一组优选的初始测试配置,将该组优选的初始测试配置发送到每个接收计算设备(包括120),并且每个接收计算设备(包括120)使用来自账户管理计算系统130的该组优选的初始测试配置中的每一个接收音频令牌。账户管理计算系统130记录与音频令牌的每次接收相关联的数据,并基于从每个音频令牌的每次接收记录的数据来确定针对来自每个接收计算设备(包括120)的音频令牌的每次接收的质量分数。

计算设备(包括110和120)的最优硬件配置保存在数据存储单元137中。在示例中,数据存储单元137可以包括适合于存储信息的账户管理计算系统130可访问的任何本地或远程数据存储结构。在示例中,数据存储单元137存储加密的信息,诸如html5本地存储。

在另一示例中,计算设备(包括110和120)执行账户管理计算系统130的一些或全部功能。

在示例中,网络计算设备和与本文提出的技术相关联的任何其他计算机器可以是任何类型的计算机器,诸如但不限于关于图5更详细讨论的那些。此外,与这些计算机器中的任何一个相关联的任何功能、应用或组件,诸如本文所述的那些或与本文中呈现的技术相关联的任何其他(例如,脚本、web内容、软件、固件、硬件或模块)都可以是关于图5更详细讨论的任何组件。本文讨论的计算机器可以通过一个或多个网络,诸如网络140,彼此通信以及与其他计算机器或通信系统通信。网络140可以包括任何类型的数据或通信网络,包括关于图5讨论的任何网络技术。

示例过程

在下文中,参考图2至图4中示出的示例方法来描述示例操作环境100的组件。图2至图4的示例方法也可以利用其他系统以及在其他环境中执行。关于图2至图4中的任何一个描述的操作可以被实现为存储在计算机或机器可读的非暂时性有形存储介质(例如,软盘、硬盘、rom、eeprom、非易失性ram、cd-rom等)上的可运行代码,这些代码是基于由使用一个或多个集成电路实现的处理器电路运行代码来完成的;本文描述的操作也可以实现为在一个或多个非暂时性有形介质(例如,可编程逻辑阵列或器件、现场可编程门阵列、可编程阵列逻辑、专用集成电路等)中编码以供运行的可运行逻辑。

在示例中,当计算设备用于基于音频的数据传送时,为了最佳的数据传送结果,特有的硬件配置需要由其使用以广播和/或接收音频。计算设备的音频配置由许多参数组成,这些参数确定接收和广播如何发生。示例参数包括但不限于音量、频带、采样率、使用的麦克风输入、使用的扬声器输出、进行的重复尝试的数量、立体声通道的使用以及独白单声道的使用。在示例中,需要这些参数的特有组合以获得最佳广播和/或最佳接收。为了确定这些参数的正确的特有组合,需要对计算设备进行校准。

图2是描绘根据某些示例的用于基于音频的数据传送的动态校准的方法的方框流程图。参考图1中所示的组件描述方法200。

在框210中,广播计算设备110获取设备的最优数据广播硬件配置。在示例中,提供最佳数据传输的参数的特有组合已经被在先前配置,并且特有组合被广播计算设备110保存。在该示例中,广播计算设备110在发起新的基于音频的数据传送之前获取所保存的参数的组合,并且将该设备的硬件设置配置为与所获取的设置相对应。在示例中,应用113配置设备的硬件设置。在示例中,在在先的基于音频的数据传输期间确定设备的最优数据广播参数。在另一示例中,最优数据广播参数由账户管理计算系统130提供。

在另一示例中,广播计算设备110没有保存的最优数据广播参数。

在框215中,广播计算设备110确定最优数据广播参数是否已知。在示例中,应用113确定账户管理计算系统130是否提供了最优数据广播参数。在另一示例中,应用113确定广播计算设备110先前是否执行了基于音频的数据传送。

如果最优数据广播参数是已知的,则方法200前进到框225。

返回框215,如果最优数据广播参数未知,则方法200前进到框220。

在框220中,针对最优硬件配置校准广播计算设备110。在下文中,参考图3中描述的方法,更详细地描述用于基于音频的数据广播的最优校准的方法。

图3是方框流程图,其描绘了根据某些示例的用于基于音频的数据广播的最优校准的方法220,如框220中所提及的。参考图1中所示的组件描述方法220。

在示例中,用于基于音频的数据广播的最优校准包括广播计算设备110和账户管理计算系统130之间的一系列传输或通信。在另一示例中,用于基于音频的数据广播的最优校准包括广播计算设备110和另一计算设备(诸如接收计算设备120)之间的一系列传输或通信。在该示例中,接收计算设备120结合图3中执行的方法来执行本文所述的账户管理计算系统130的功能。

在框310中,广播计算设备110将数据广播硬件设置为初始测试配置。在示例中,应用113将数据广播硬件设置为初始测试配置。在示例中,初始测试配置设置包括初始制造设置、最近的已知设置或默认设置。

在示例中,应用113设置初始音量、频率、采样率、使用的扬声器输出、使用的音频通道、或可变动的施加声波或声音传输的其他属性。

在框320中,广播计算设备110向账户管理计算系统130播放音频令牌。在示例中,音频令牌包括账户管理计算系统130和广播计算设备110已知的基于音频的数据令牌。在示例中,在整个初始校准中使用相同的基于音频的数据令牌。

在示例中,应用113指令音频组件117使用框310中设置的初始音量、频率、采样率、使用的扬声器输出、音频通道或其他初始硬件配置设置,播放音频令牌。

在框330中,账户管理计算系统130接收音频令牌。在示例中,音频令牌由音频接收配置组件135接收。在示例中,音频接收配置组件135包括能够接收音频传输的麦克风组件和能够对在声波中发送的数据进行加密的应用。

在框340中,账户管理计算系统130分析接收的音频令牌。在示例中,账户管理计算系统130确定音频传输是否是人耳听不见,但是音频接收配置组件135的麦克风组件听得见。在该示例中,期望以用户听不到的方式,例如利用超声波,来发送基于音频的数据。

在另一示例中,账户管理计算系统130确定基于音频的数据传输的可靠性。在该示例中,账户管理计算系统130确定是否接收到完整的数据传输。由于音频令牌对于账户管理计算系统130和广播计算设备110两者都是已知的,因此可以将在音频令牌中接收的数据与已知数据进行比较,以确定是否接收到完整的数据。

在另一示例中,账户管理计算系统130确定完成音频令牌或其他数据的传输逝去的时间以评估传输的质量。在该示例中,传输包括时间戳或允许账户管理计算系统130确定发起传输的时间的其他指示符。账户管理计算系统130可以通过将接收到传输的时间与发起传输的时间进行比较来确定完成传输逝去的时间。

在另一示例中,账户管理计算系统130确定信号相关性。广播计算设备110发送具有某种音频波形的已知音频令牌。账户管理计算系统130确定音频信号与期望信号的互相关性。在示例中,即使在没有成功完成基于音频的数据传输的情况下,该确定也帮助基于针对每个广播计算设备110的信号互相关性分数来计算置信度打分。

在框350中,账户管理计算系统130将置信度分数分配给初始硬件配置。在示例中,账户管理计算系统130将子分数分配给在框340中分析的每个因素。各子分数被组合以确定置信度分数。在另一示例中,在确定置信度分数之前,对在框340中分析的一些因素进行加权。例如,如果可靠性比传输为人耳所听不见更为重要,则将传输的可靠性加权为大于传输的可听性。在另一示例中,权重、算法或方程式的任何组合都可以用于分配置信度分数。

在框360中,账户管理计算系统130确定置信度分数是否高于预定阈值。在示例中,账户管理计算系统130定义阈值置信度分数。在该示例中,确定的阈值分数必须处于或高于定义的阈值置信度分数才能被接受。

如果置信度分数处于或高于定义的阈值置信度分数,则方法220前进到框390。

返回图3中的框360,如果置信度分数低于定义的阈值置信度分数,则方法220前进到框370。

在框370中,账户管理计算系统130指令广播计算设备110改变或变动其广播硬件配置。在示例中,账户管理计算系统130向广播计算设备110发送置信度分数低于定义的阈值的通知。在另一示例中,通知包括用于改变广播计算设备110的硬件设置中的一个或多个的指令。在该示例中,账户管理计算系统130向广播计算设备110提供推荐的硬件设置。在另一示例中,广播计算设备110确定要改变哪些硬件设置。

在另一示例中,账户管理计算系统130将置信度分数发送到广播计算设备110,并且广播计算设备110确定置信度分数是高于还是低于预定义阈值。在该示例中,如果广播计算设备110确定置信度分数低于预定义阈值,则其改变其广播硬件配置。

在框380中,广播计算设备110改变广播硬件配置。在示例中,应用113改变一个或多个硬件配置。在示例中,广播计算设备110执行多个不同的基于音频的数据传送。在该示例中,每个基于音频的数据传送都是使用不同的配置进行的。示例硬件配置变动包括针对音量、频率、采样率、使用的扬声器输出、使用的音频通道或可经由广播计算设备110变动的施加声波或声音传输的其他属性的变化的配置。例如,广播计算设备110使用预定数量的不同音量配置、预定数量的不同频率配置以及预定数量的不同幅度配置进行发送。在示例中,广播计算设备110在保持所有其他硬件配置不变的同时变动一个特定的硬件配置。

方法220从框380前进到框320,并且广播计算设备110向账户管理计算设备130播放音频令牌。在示例中,框320至380中描述的方法重复,直到置信度分数处于或高于预定义阈值为止。

在另一示例中,框320至380中描述的方法重复,直到识别出最优硬件配置为止。在该示例中,两组或更多组硬件配置处于或高于预定义阈值。比较每组硬件配置的置信度分数,并且具有最高置信度分数的硬件配置是最优硬件配置。

返回框390,一旦识别出最优硬件配置,则广播计算设备110和账户管理计算系统130记录最优广播硬件配置。在示例中,账户管理计算系统130将包括最优硬件配置的通知发送到广播计算设备110。在另一示例中,广播计算设备110将包括最优硬件配置的通知发送到账户管理计算系统130。

在另一示例中,账户管理计算系统130比较来自从多个不同的广播计算设备110接收的多个不同的传输的多个不同的置信度分数,以确定最优广播硬件配置。

在示例中,账户管理计算系统130将更新的最优硬件配置数据提供给多个广播计算设备110。在该示例中,多个广播计算设备110中的每一个都包括相同品牌或型号的计算设备(例如,相同型号的智能电话)。在示例中,随着应用113更新,更新的最优硬件配置数据被推送到每个设备。

在另一示例中,由账户管理计算系统130执行的方法由接收计算设备120或能够与广播计算设备110进行通信的另一计算系统执行。

然后,方法220前进到图2中的框225。

在框225中,接收计算设备120获取设备的最优接收硬件配置。在示例中,提供最佳数据接收的参数的特有组合已经被在先前配置,并且特有组合由接收计算设备120保存。在该示例中,接收计算设备120在接收新的基于音频的数据传送之前获取所保存的参数的组合,并且将设备的硬件设置配置为与所获取的设置相对应。在示例中,应用123配置设备的硬件设置。在示例中,设备的最优数据接收参数在在先的基于音频的数据传输期间确定。在另一示例中,最优数据接收参数由账户管理计算系统130提供。在示例中,接收计算设备120接收通知或信号以指示新的基于音频的数据传送已经被发起。在另一示例中,用户打开应用123或在接收计算设备120上执行动作以指示新的基于音频的数据传送已经被发起。

在另一示例中,接收计算设备120没有保存的最优数据广播参数。

在框230中,接收计算设备120确定最优数据接收参数是否已知。在示例中,应用123确定账户管理计算系统130是否提供了最优数据接收参数。在另一示例中,应用123确定接收计算设备120是否在先前接收到了基于音频的数据传送。

如果最优数据接收参数是已知的,则方法200前进到框240。

返回框230,如果最优数据接收参数未知,则方法200前进到框235。

在框235中,针对最优硬件配置对接收计算设备120进行校准。在下文中,参考图4中所描述的方法来更详细地描述用于基于音频的数据接收的最优校准的方法。

图4是方框流程图,其描绘了根据某些示例的用于基于音频的数据接收的最优校准的方法235,如框235中所提及的。参考图1中所示的组件描述方法235。

在示例中,用于基于音频的数据接收的初始校准包括账户管理计算系统130与接收计算设备120之间的一系列传输或通信。在另一示例中,用于基于音频的数据接收的初始校准包括接收计算设备120与另一计算设备(诸如广播计算设备110)之间的一系列传输或通信。在该示例中,广播计算设备110结合图4中执行的方法来执行本文所述的账户管理计算系统130的功能。

在框410中,接收计算设备120将数据接收硬件设置为初始测试配置。在示例中,应用123将数据接收硬件设置为初始测试配置。在示例中,初始测试配置设置包括初始制造设置、最近的已知设置或默认设置。

在示例中,应用123设置初始音量、频率、采样率、使用的扬声器输出、使用的音频通道、或可变动的施加声波或声音传输的其他属性。

在框420中,账户管理计算系统130向接收计算设备120播放音频令牌。在示例中,音频令牌包括账户管理计算系统130和接收计算设备120已知的基于音频的数据令牌。在示例中,在整个校准过程中使用相同的基于音频的数据令牌。在示例中,音频传输配置组件133播放音频令牌。在示例中,音频传输配置组件133包括扬声器或能够发送音频传输的其他音频传输组件。

在框430中,接收计算设备120接收音频令牌。在示例中,音频令牌由麦克风组件127接收。在示例中,麦克风组件127接收音频传输,并且应用123能够对在声波中发送的数据进行加密。在示例中,应用123指令麦克风组件125使用框410中设置的初始音量、频率、采样率、使用的扬声器输出、音频通道或其他初始硬件配置设置,收听音频令牌。

在框440中,接收计算设备120分析接收的音频令牌。在示例中,应用123确定音频传输的信号强度。在该示例中,期望经由最强的信号强度来接收基于音频的数据。

在另一示例中,应用123确定基于音频的数据传输的可靠性。在该示例中,应用123确定是否接收到完整的数据传输。由于音频令牌对于账户管理计算系统130和接收计算设备120两者都是已知的,因此可以将在音频令牌中接收的数据与已知数据进行比较,以确定是否接收到完整数据。

在另一示例中,应用123确定完成音频令牌或其他数据的传输逝去的时间以评估传输的质量。在该示例中,传输包括时间戳或允许应用123确定发起传输的时间的其他指示符。应用123可以通过将接收到传输的时间与发起传输的时间进行比较来确定完成传输逝去的时间。

在另一示例中,接收计算设备120确定信号相关性。账户管理计算系统130发送具有某种音频波形的已知音频令牌。接收计算设备120确定音频信号与期望信号的互相关性。

在框450中,接收计算设备120将测试配置和分析发送到账户管理计算系统130。

在框460中,账户管理计算系统130将置信度分数分配给初始硬件配置。在示例中,账户管理计算系统130将子分数分配给在框440中分析的每个因素。各子分数被组合以确定置信度分数。在另一示例中,在确定置信度分数之前,对在框440中分析的一些因素进行加权。例如,如果可靠性比传输为人耳所听不见更为重要,则将传输的可靠性加权为大于传输的可听性。在另一示例中,权重、算法或方程式的任何组合都可以用于分配置信度分数。

在另一示例中,接收计算设备120将置信度分数分配给测试配置。

在框465中,账户管理计算系统130确定置信度分数是否高于预定阈值。在示例中,账户管理计算系统130定义阈值置信度分数。在该示例中,确定的阈值分数必须处于或高于定义的阈值置信度分数才能被接受。

如果置信度分数处于或高于定义的阈值置信度分数,则方法235前进到框490。

返回图4中的框465,如果置信度分数低于定义的阈值置信度分数,则方法235前进到框470。

在框470中,账户管理计算系统130指令接收计算设备120改变或变动其接收硬件配置。在示例中,账户管理计算系统130向接收计算设备120发送置信度分数低于定义的阈值的通知。在另一示例中,通知包括用于改变接收计算设备120的硬件设置中的一个或多个的指令。在该示例中,账户管理计算系统130向接收计算设备120提供推荐的硬件设置。在另一示例中,接收计算设备120确定要改变哪些硬件设置。

在另一示例中,账户管理计算系统130将置信度分数发送到接收计算设备120,并且接收计算设备120确定置信度分数是高于还是低于预定义阈值。在该示例中,如果接收计算设备120确定置信度分数低于预定义阈值,则其改变其接收硬件配置。

在另一示例中,接收计算设备120确定置信度分数,并且应用123确定置信度分数是高于还是低于预定义阈值。在该示例中,如果接收计算设备120确定置信度分数低于预定义阈值,则其改变其接收硬件配置。

在框480中,接收计算设备120改变接收硬件配置。在示例中,应用123改变一个或多个硬件配置。在示例中,接收计算设备120接收多个不同的基于音频的数据传送。在该示例中,使用不同的配置接收每个基于音频的数据传送。示例硬件配置变动包括针对音量、频率、采样率、使用的扬声器输出、使用的音频通道或可经由接收计算设备120变动的施加声波或声音接收的其他属性的变化的配置。例如,接收计算设备120使用预定数量的不同音量配置、预定数量的不同频率配置以及预定数量的不同幅度配置来接收基于音频的数据传输。在示例中,接收计算设备120在保持所有其他硬件配置不变的同时变动一个特定的硬件配置。

方法235从框480前进到框420,并且账户管理计算系统130向接收计算设备120播放音频令牌。在示例中,框420至480中描述的方法重复,直到置信度分数处于或高于预定义阈值为止。

在另一示例中,框420至480中描述的方法重复,直到识别出最优硬件配置为止。在该示例中,两组或更多组硬件配置处于或高于预定义阈值。比较每组硬件配置的置信度分数,并且具有最高置信度分数的硬件配置是最优硬件配置。

返回框490,一旦识别出最优硬件配置,则接收计算设备120和账户管理计算系统130记录最优接收硬件配置。在示例中,账户管理计算系统130将包括最优硬件配置的通知发送到接收计算设备120。在另一示例中,接收计算设备120将包括最优硬件配置的通知发送到账户管理计算系统130。

在另一示例中,账户管理计算系统130比较来自从多个不同的接收计算设备120接收的多个不同的传输的多个不同的置信度分数,以确定最优接收硬件配置。

在示例中,账户管理计算系统130将更新的最优硬件配置数据提供给多个接收计算设备120。在该示例中,多个接收计算设备120中的每一个都包括相同品牌或型号的计算设备(例如,相同型号的智能电话)。在示例中,随着应用123更新,更新的最优硬件配置数据被推送到每个设备。

在另一示例中,由账户管理计算系统130执行的方法由广播计算设备110或能够与接收计算设备120进行通信的另一计算系统执行。

然后,方法235前进到图2中的框240。

返回图2,在示例中,广播计算设备110已知初始最优数据广播硬件配置,并且接收计算设备120已知初始最优数据接收硬件配置。在示例中,实际的最优硬件配置可能随时间改变。例如,当预期的数据传送方案有转变时或条件有改变时。在该示例中,设备(包括110和120)响应于改变而动态配置硬件设置。

在框240中,广播计算设备110将基于音频的数据传输广播到接收计算设备120。在示例中,广播计算设备110的用户指令该设备以发送基于音频的传送中的数据。在示例中,使用应用113和初始最优数据广播硬件配置来发起该传送。

在框245中,接收计算设备120从广播计算设备110接收基于音频的数据传输。在示例中,接收计算设备120的用户指令该设备收听和接收基于音频的传送。在示例中,使用应用123和初始最优数据广播硬件配置来接收该传送。

在框250中,接收计算设备120分析接收的基于音频的数据传输并分配置信度分数。在示例中,应用123确定音频传输的信号强度。在该示例中,期望经由最强的信号强度来接收基于音频的数据。

在另一示例中,广播计算设备110分析发送的基于音频的数据传输并分配置信度分数。在示例中,应用113确定音频传输是否是人耳听不见但麦克风组件125听得见。在该示例中,期望以用户听不到的方式,例如利用超声波,来发送基于音频的数据。

在示例中,应用(包括113或123)确定基于音频的数据传输的可靠性。在该示例中,应用123确定是否接收到完整的数据传输。

在另一示例中,应用123确定完成音频令牌或其他数据的传输逝去的时间以评估传输的质量。在该示例中,传输包括时间戳或允许应用123确定发起传输的时间的其他指示符。应用123可以通过将接收到传输的时间与发起传输的时间进行比较来确定完成传输逝去的时间。

在示例中,接收计算设备120将置信度分数分配给硬件配置。在示例中,接收计算设备120将子分数分配给在框250中分析的每个因素。各子分数被组合以确定置信度分数。在另一示例中,在确定置信度分数之前,对在框250中分析的一些因素进行加权。例如,如果可靠性比传输为人耳所听不见更为重要,则将传输的可靠性加权为大于传输的可听性。在另一示例中,权重、算法或方程式的任何组合都可以用于分配置信度分数。

在另一示例中,广播计算设备110将置信度分数分配给配置。在又一示例中,分析被发送到账户管理计算系统130,并且账户管理计算系统130将置信度分数分配给配置。

在框260中,接收计算设备120确定置信度分数是否高于预定阈值。在另一示例中,广播计算设备110确定置信度分数是否高于预定阈值。在示例中,账户管理计算系统130定义阈值置信度分数。在该示例中,确定的阈值分数必须处于或高于定义的阈值置信度分数才能被接受。

如果置信度分数低于定义的阈值置信度分数,则方法200前进到框265。

在框265中,接收计算设备120改变接收硬件配置。在示例中,应用123改变一个或多个硬件配置。示例硬件配置变动包括针对音量、频率、采样率、使用的扬声器输出、使用的音频通道或可经由接收计算设备120变动的施加声波或声音接收的其他属性的变化的配置。在示例中,接收计算设备120在保持所有其他硬件配置不变的同时变动一个特定的硬件配置。

在另一示例中,广播计算设备110改变广播硬件配置。在示例中,应用113改变一个或多个硬件配置。示例硬件配置变动包括针对音量、频率、采样率、使用的扬声器输出、使用的音频通道或可经由广播计算设备110变动的施加声波或声音接收的其他属性的变化的配置。在示例中,广播计算设备110在保持所有其他硬件配置不变的同时变动一个特定的硬件配置。

然后,方法200前进到框240。在示例中,广播计算设备110使用新的广播硬件配置来重新广播基于音频的数据传输。在另一示例中,针对广播硬件配置的置信度分数处于或高于阈值置信度分数,并且广播计算设备110继续使用先前的广播硬件配置来广播基于音频的数据传输。在该示例中,接收计算设备120变动接收硬件配置。

在示例中,框240至265中描述的方法重复,直到针对广播计算设备110硬件设置和接收计算设备120硬件设置的置信度分数处于或高于预定义阈值为止。

返回框260,如果置信度分数高于预定义阈值,则方法200前进到框270。

在框270中,将硬件配置发送到账户管理计算系统130。在示例中,分析也被发送到账户管理计算系统130。

在框275中,账户管理计算系统130接收硬件配置。在示例中,账户管理计算系统130编译来自多个不同的广播计算设备110和多个不同的接收计算设备120的置信度分数。

在框280中,如果接收的硬件配置与所保存的硬件配置不匹配,则账户管理计算系统130更新最优硬件配置。

在示例中,账户管理计算系统130确定硬件配置是否不再是用于广播计算设备110的最优传输配置。在该示例中,账户管理计算系统130确定从广播计算设备110接收的可替代硬件配置是用于基于音频的数据的传输的新的最优配置,并且基于确定来更新最优硬件配置数据。

在另一示例中,账户管理计算系统130确定硬件配置是否不再是用于接收计算设备120的最优接收配置。在该示例中,账户管理计算系统130确定从接收计算设备120接收的可替代硬件配置是用于基于音频的数据的接收的新的最优配置,并且基于确定来更新最优硬件配置数据。

其他示例

图5描绘了根据某些示例的计算机器2000和模块2050。计算机器2000可以对应于本文提出的各种计算机、服务器、移动设备、嵌入式系统或计算系统中的任何一个。模块2050可以包括被配置为促进计算机器2000执行本文提出的各种方法和处理功能的一个或多个硬件或软件元件。计算机器2000可以包括各种内部或附接的组件,诸如处理器2010、系统总线2020、系统存储器2030、存储介质2040、输入/输出接口2060以及用于与网络2080通信的网络接口2070。

计算机器2000可以被实现为常规计算机系统、嵌入式控制器、膝上型计算机、服务器、移动设备、智能电话、机顶盒、信息亭、路由器或其他网络节点、车辆信息系统、与电视相关联的一个或多个处理器、定制的机器、任何其他硬件平台或其任意组合或多个。计算机器2000可以是被配置为使用经由数据网络或总线系统互连的多个计算机器而起作用的分布式系统。

处理器2010可以被配置为运行代码或指令以执行本文所述的操作和功能,管理请求流和地址映射以及执行计算并生成命令。处理器2010可以被配置为监视和控制计算机器2000中的组件的操作。处理器2010可以是通用处理器、处理器核心、多处理器、可重构处理器、微控制器、数字信号处理器(“dsp”)、专用集成电路(“asic”)、图形处理单元(“gpu”)、现场可编程门阵列(“fpga”)、可编程逻辑器件(“pld”)、控制器、状态机、门控逻辑、分立硬件组件、任何其他处理单元或其任意组合或多个。处理器2010可以是单个处理单元、多个处理单元、单个处理核心、多个处理核心、专用处理核心、协处理器或其任意组合。根据某些示例,处理器2010以及计算机器2000的其他组件可以是在一个或多个其他计算机器内运行的虚拟化计算机器。

系统存储器2030可以包括非易失性存储器,诸如只读存储器(“rom”)、可编程只读存储器(“prom”)、可擦除可编程只读存储器(“eprom”)、闪存、或能够在施加或不施加电力的情况下存储程序指令或数据的任何其他设备。系统存储器2030还可以包括易失性存储器,诸如随机存取存储器(“ram”)、静态随机存取存储器(“sram”)、动态随机存取存储器(“dram”)和同步动态随机存取存储器(“sdram”)。其他类型的ram也可以用于实现系统存储器2030。系统存储器2030可以使用单个存储器模块或多个存储器模块来实现。虽然系统存储器2030被描绘为计算机器2000的一部分,但是本领域技术人员将认识到,在不脱离本技术范围的情况下,系统存储器2030可以与计算机器2000分离。还应当领会,系统存储器2030可以包括诸如存储介质2040的非易失性存储设备或与之结合操作。

存储介质2040可以包括硬盘、软盘、光盘只读存储器(“cd-rom”)、数字多功能光盘(“dvd”)、蓝光盘、磁带、闪存、其他非易失性存储器设备、固态驱动器(“ssd”)、任何磁存储设备、任何光存储设备、任何电存储设备、任何半导体存储设备、任何基于物理的存储设备、任何其他数据存储设备、或者其任意组合或多个。存储介质2040可以存储一个或多个操作系统、应用程序和程序模块,诸如模块2050、数据或任何其他信息。存储介质2040可以是计算机器2000的一部分或连接到计算机器2000。存储介质2040也可以是与计算机器2000通信的一个或多个其他计算机器(诸如服务器、数据库服务器、云存储、网络附接存储等)的一部分。

模块2050可以包括被配置为促进计算机器2000执行本文中提出的各种方法和处理功能的一个或多个硬件或软件元件。模块2050可以包括与系统存储器2030、存储介质2040或两者相关联地被存储为软件或固件的一个或多个指令序列。因此,存储介质2040可以代表可以在其上存储指令或代码以供处理器2010运行的机器或计算机可读介质的示例。机器或计算机可读介质通常可以指代用于向处理器2010提供指令的(一个或多个)任何介质。与模块2050相关联的这样的机器或计算机可读介质可以包括计算机软件产品。应当领会,包括模块2050的计算机软件产品还可以与用于经由网络2080、任何承载信号的介质、或任何其他通信或递送技术将模块2050递送到计算机器2000的一个或多个过程或方法相关联。模块2050还可包括硬件电路或用于配置硬件电路的信息,诸如用于fpga或其他pld的微代码或配置信息。

输入/输出(“i/o”)接口2060可以被配置为耦接到一个或多个外部设备,以从一个或多个外部设备接收数据,并且向该一个或多个外部设备发送数据。这样的外部设备以及各种内部设备也可以称为外围设备。i/o接口2060可以包括用于将各种外围设备可操作地耦接到计算机器2000或处理器2010的电连接和物理连接两者。i/o接口2060可以被配置为在外围设备、计算机器2000或处理器2010之间传达数据、地址和控制信号。i/o接口2060可以被配置为实现任何标准接口,诸如小型计算机系统接口(“scsi”)、串行附接的scsi(“sas”)、光纤通道、外围组件互连(“pci”)、pciexpress(pcie)、串行总线、并行总线、高级技术附件(“ata”)、串行ata(“sata”)、通用串行总线(“usb”)、thunderbolt、firewire、各种视频总线等。i/o接口2060可以被配置为仅实现一种接口或总线技术。可替代地,i/o接口2060可以被配置为实现多种接口或总线技术。i/o接口2060可以被配置为系统总线2020的一部分、全部或与系统总线2020结合操作。i/o接口2060可以包括一个或多个缓冲器,用于缓冲一个或多个外部设备、内部设备、计算机器2000或处理器2010之间的传输。

i/o接口2060可以将计算机器2000耦接到各种输入设备,包括鼠标、触摸屏、扫描仪、电子数字化仪、传感器、接收器、触摸板、轨迹球、相机、麦克风、键盘、任何其他指示设备、或其任意组合。i/o接口2060可以将计算机器2000耦接到各种输出设备,包括视频显示器、扬声器、打印机、投影仪、触觉反馈设备、自动控制、机器人组件、致动器、电动机、风扇、螺线管、阀门、泵、发送器、信号发射器、灯等。

计算机器2000可以使用通过网络接口2070到网络2080上的一个或多个其他系统或计算机器的逻辑连接,在联网的环境中操作。网络2080可以包括广域网(wan)、局域网(lan)、内联网、互联网、无线接入网络、有线网络、移动网络、电话网络、光网络或其组合。网络2080可以是任何拓扑的分组交换、电路交换,并且可以使用任何通信协议。网络2080内的通信链路可以涉及各种数字或模拟通信介质,诸如光纤电缆、自由空间光学器件、波导、电导体、无线链路、天线、射频通信等。

处理器2010可以通过系统总线2020连接到计算机器2000的其他元件或本文讨论的各种外围设备。应当领会,系统总线2020可以在处理器2010之内、在处理器2010之外或这两者。根据某些示例,处理器2010、计算机器2000的其他元件或本文讨论的各种外围设备中的任何一个都可以集成到单个设备(诸如芯片上系统(“soc”)、封装上系统(“sop”)或asic设备)中。

在此处讨论的系统收集关于用户的个人信息或可以利用个人信息的情形下,可以为用户提供如下机会或选项:其控制程序或特征是否收集用户信息(例如关于用户的社交网络、社交动作或活动、职业、用户的偏好或用户的当前位置的信息)、或控制是否和/或如何从内容服务器接收可与用户更为相关的内容。此外,在存储或使用某些数据之前,可能以一种或多种方式处理这些数据,以便移除个人可识别信息。例如,可以处理用户的身份,使得无法为该用户确定个人可识别信息,或者可以在获得位置信息的情况下将用户的地理位置概括化(诸如,概括化到城市、邮政编码或州级别),使得无法确定用户的位置。因此,用户可以控制如何收集关于用户的信息以及如何由内容服务器使用信息。

示例可以包括体现本文描述和示出的功能的计算机程序,其中该计算机程序在计算机系统中实现,该计算机系统包括存储在机器可读介质中的指令和运行该指令的处理器。然而,应当显而易见的是,在计算机编程中可以有许多不同的方式来实现示例,并且示例不应被解释为限于任何一组计算机程序指令。此外,熟练的程序员将能够基于在申请文本中的所附流程图和相关联的描述来编写这样的计算机程序以实现所公开的示例中的示例。因此,对于充分理解如何作出和使用示例,公开一组特定的程序代码指令被认为是不必要的。此外,本领域技术人员将领会到,本文描述的示例的一个或多个方面可以由硬件、软件或其组合来执行,如可以体现在一个或多个计算系统中的。此外,任何对由计算机执行的动作的提及都不应解释为由单个计算机执行,因为一个以上的计算机也可以执行该动作。

本文描述的示例可以与执行本文描述的方法和处理功能的计算机硬件和软件一起使用。本文描述的系统、方法和进程可以体现在可编程计算机、计算机可运行软件或数字电路中。该软件可以存储在计算机可读介质上。例如,计算机可读介质可以包括软盘、ram、rom、硬盘、可移动介质、闪存、存储棒、光学介质、磁光介质、cd-rom等。数字电路可以包括集成电路、门阵列、构件块逻辑、现场可编程门阵列(fpga)等。

先前提出的示例中描述的示例系统、方法和动作是说明性的,并且在可替代示例中,某些动作可以以不同的顺序执行、彼此并行地执行、完全省略和/或在不同的示例之间组合,和/或某些附加动作可以被执行,而不脱离各种示例的范围和精神。因此,这样的可替代示例包括在所附权利要求的范围内,所附权利要求的范围应与最宽泛的解释相一致,以便涵盖这些替代示例。

尽管以上已经详细描述了特有示例,但是描述仅出于说明的目的。因此,应当领会,除非另有明确说明,否则上述许多方面并非旨在作为要求或必需的元素。除了上述那些之外,本领域的普通技术人员可以在不脱离所附权利要求中定义的示例的精神和范围的情况下,对示例的所公开方面做出修改以及与之相对应的等同组件或动作,所附权利要求的范围应与最宽泛的解释相一致,以便涵盖这样的修改和等同结构。

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