使用WIFI信标的时钟同步的制作方法

文档序号:12071917阅读:295来源:国知局
使用WIFI信标的时钟同步的制作方法与工艺

当在Wi-Fi网络上的多个模块之间共享数据(例如音频/视频内容)时,通常期望确保这样的数据在不同模块之间准确地维持同步。



技术实现要素:

本发明内容以简化的形式介绍了对概念的选择以便提供对本公开的一些方面的基本理解。本发明内容不是对本公开的广泛概述,并且不旨在标识本公开的关键或重要元素或记述本公开的范围。本发明内容仅仅呈现了本公开的概念中的一些以作为下面提供的具体实施方式的前序。

本公开通常涉及用于信号处理的方法和系统。更具体地,本公开的方面涉及通过使用Wi-Fi信标作为参考来使无线网络上的模块的时钟同步。

本公开的一个实施例涉及一种计算机实现的方法,该方法包括:在第一数据模块处,接收来自数据源的数据;将时间戳附加到所接收到的数据的每个部分,其中时间戳指示对数据的部分进行处理的时间;将附加有时间戳的数据的每个部分从第一数据模块发送到第二数据模块,其中第一数据模块与第二数据模块不同,并且第一和第二数据模块在相同网络上;在第二数据模块处,从第一数据模块接收信号,该信号指示在第一数据模块处接收到的与网络相关联的信标以及在第一数据模块处接收到该信标的时间,其中在第一数据模块处接收到该信标的时间基于与第一数据模块相关联的时钟;由第二数据模块基于从第一数据模块接收到的信号来确定与所述第一数据模块相关联的时钟和与第二数据模块相关联的时钟之间的差;以及根据在一个时间段上所过滤的时钟之间的多个所确定的差来将与第二数据模块相关联的时钟调节为和与第一数据模块相关联的时钟同步。

在另一实施例中,该方法进一步包括:在第一数据模块处和第二数据模块处接收与该网络相关联的信标;以及对所接收到的信标中的每一个识别在第一数据模块处接收到该信标的时间以及在第二数据模块处接收到该信标的时间,其中在第一数据模块处接收到该信标的时间基于与第一数据模块相关联的时钟,并且在第二数据模块处接收到该信标的时间基于与第二数据模块相关联的时钟。

在另一实施例中,也在第二数据模块处接收在第一数据模块处所接收到的与网络相关联的信标,并且该方法进一步包括:由第一数据模块记录在第一数据模块处接收到信标的时间;并且由第二数据模块记录在第二数据模块处接收到信标的时间。

在另一实施例中,该方法进一步包括:针对第一和第二数据模块中的每一个存储数据,该数据表示所接收到的信标以及在第一数据模块处和第二数据模块处接收到信标中的每一个的对应的时间。

在另一实施例中,该方法进一步包括:基于表示所接收到的信标以及在第一数据模块处和第二数据模块处接收到信标中的每一个的对应的时间的所存储的数据来确定与第一数据模块相关联的时钟和与第二数据模块相关联的时钟之间的差。

在另一实施例中,该方法中的由第二数据模块进行确定包括:对在第一数据模块处接收到该信标的时间与在第二数据模块处接收到该信标的时间进行比较,其中在第二数据模块处接收到信标的时间基于与第二数据模块相关联的时钟;以及基于所述比较来确定与第一数据模块相关联的时钟和与第二数据模块相关联的时钟之间的差。

在又一个实施例中,该方法进一步包括:在第一和第二数据模块处,根据附加到数据的部分的时间戳来对所接收到的数据的每个部分进行处理。

本公开的另一实施例涉及一种包括接入点以及与该接入点连接的多个数据模块的系统,其中数据模块中的每一个被配置为:接收来自数据源的数据;将时间戳附加到所接收到的数据的每个部分,其中时间戳指示对数据的部分进行处理的时间;将附加有时间戳的所接收到的数据的每个部分发送到与接入点连接的其它数据模块中的每一个;从其它数据模块中的每一个接收信号,该信号指示在其它数据模块处接收到的与接入点相关联的信标以及在其它数据模块处接收到信标的时间,其中在其它数据模块处接收到信标的时间基于与其它数据模块相关联的时钟;基于从其它数据模块接收到的信号来确定与该数据模块相关联的时钟和与其它数据模块中的每一个相关联的时钟之间的差;以及基于在一个时间段上所过滤的时钟之间的所确定的差来将同步信号发送到其它数据模块中的每一个。

在另一实施例中,系统的多个数据模块中的每一个进一步被配置为:接收与接入点相关联的信标;以及对于所接收到的信标中的每一个识别在数据模块处接收到该信标的时间以及在其它数据模块的每一个接收到该信标的时间,其中在数据模块处接收到该信标的时间基于与该数据模块相关联的时钟,并且在其它数据模块的每一个处接收到该信标的时间基于与其它数据模块中的每一个相关联的时钟。

在另一实施例中,系统的多个数据模块中的每一个进一步被配置为:存储数据,该数据表示所接收到的信标以及在该数据模块处和其它数据模块中的每一个处接收到该信标中的每一个的对应的时间。

在另一实施例中,系统的多个数据模块中的每一个进一步被配置为:基于表示所接收到的信标以及在该数据模块处和其它数据模块中的每一个处接收到信标中的每一个的对应的时间的所存储的数据,确定与进行接收的数据模块相关联的时钟和与其它数据模块中的每一个相关联的时钟之间的差。

在又一个实施例中,系统的多个数据模块中的每一个进一步被配置为:对在数据模块处接收到信标的时间与在其它数据模块中的每一个处接收到信标的时间进行比较,其中在其它数据模块中的每一个处接收到该信标的时间基于与该特定数据模块相关联的时钟;以及基于所述比较来确定与进行接收的数据模块相关联的时钟和与其它数据模块中的每一个相关联的时钟之间的差。

在又一个实施例中,系统的多个数据模块中的每一个进一步被配置为:根据附加到数据的部分的时间戳来对所接收到的数据的每个部分进行处理。

在一个或多个其它实施例中,本文中所描述的方法和系统可以可选地包括以下附加特征中的一个或多个:从数据源接收到的数据是音频数据并且将时间戳附加到所接收到的音频数据的每个帧上;第一数据模块和第二数据模块中的一个或两者是音频设备;该音频设备是扬声器设备;多个数据模块中的每一个是音频设备;和/或与接入点连接的多个数据模块中的至少一个是音频设备。

应当注意的是本文所公开的处理器和存储器系统中一些或所有的实施例还可以被配置为执行上面所公开的方法实施例中的一些或全部。另外,上面所公开的方法中的一些或所有的实施例还可以被表示为包含在诸如光或磁存储器的暂时性或非暂时性处理器可读存储介质上的指令或者被表示为经由诸如互联网或电话连接的通信网络而提供给处理器或数据处理设备的传播信号。

本公开的方法和系统的进一步适用范围根据下面给出的具体实施方式将变得显而易见。然而,应当理解的是,具体实施方式和具体示例虽然指示了优选实施例,但是仅是通过说明的方式给出,因为本文所公开的概念的精神和范围之内的各种变化和修改根据具体实施方式而对于本领域的技术人员变得显而易见。

附图说明

本公开的这些及其它目的、特征、以及特性根据结合其所有内容形成本说明书的一部分的所附权利要求书和附图将对本领域技术人员变得更显而易见,在附图中:

图1是图示根据本文所描述的一个或多个实施例的、用于使跨无线网络上的多个模块的数据同步的示例内容管理系统以及周围网络环境的框图。

图2是图示根据本文所描述的一个或多个实施例的、将Wi-Fi信标信号发送到其中每个模块包括高分辨率时钟的所连接的模块的示例接入点的框图。

图3是图示根据本文所描述的一个或多个实施例的、内容管理系统的组件之间的示例数据流的数据流图。

图4是图示根据本文所描述的一个或多个实施例的、内容管理系统中的播放器模块、跟随器模块、以及多个渲染器模块之间的示例数据流的数据流图。

图5是图示根据本文所描述的一个或多个实施例的、相同无线接入点上的第一和第二模块的信标信号与本地时钟时间的示例配对的一组表格。

图6是图示根据本文所描述的一个或多个实施例的、使用信标信号作为参考来使无线网络上的模块的时钟同步的示例方法的流程图。

图7是图示根据本文所描述的一个或多个实施例的、被布置用于使用信标信号作为参考来使无线网络上的模块的时钟同步的示例计算设备的框图。

本文所提供的标题仅仅是为了方便,并不一定影响本公开中要求保护的范围或含义。

在附图中,为了便于理解且出于方便起见,相同附图标记和任何首字母缩略词标识具有相同或相似结构或功能的元件或动作。在下面的具体实施方式中将详细描述附图。

具体实施方式

现在将描述本公开的方法和系统的各个示例和实施例。以下描述提供了用于彻底理解和实现这些示例的描述的具体细节。然而,相关领域的技术人员将理解的是可以在没有这些细节中的许多的情况下实践本文所描述的一个或多个实施例。同样的,相关领域的技术人员还将理解的是本公开的一个或多个实施例可包括本文未详细描述的其它特征。另外,一些公知的结构或功能可以不在下面详细地示出或描述以便避免不必要地模糊相关描述。

本公开的实施例涉及用于使在无线接入点上并行操作的模块之间的数据同步的方法和系统。例如,根据至少一个实施例,本公开的方法和系统可以被用于使在相同无线接入点上操作的音频设备(例如诸如例如本文中可以被称为扬声器模块的扬声器的音频输出设备)之间的音频数据播出同步。如在下面将更详细地描述的,该方法和系统被设计为在估计渲染(例如播出)时间时通过利用接入点所生成的Wi-Fi信标作为参考来实现并维持不同模块(例如音频设备)之间的高度精确同步(例如<20微秒(μs))。仅使用这样的Wi-Fi信标作为参考而不是作为实际时钟,确保所有模块的时钟维持同步,由此允许跨该系统中所包括的所有模块对数据进行相干渲染(例如音频的回放)。

在本公开的方法和系统的示例应用中,给予用户这样的能力,以向共享公共无线网络的音频设备的任何组合播放可从音频源得到的音频内容(例如存储在用户设备上的音频内容、与URL相关联且可通过用户设备访问的音频内容等)。例如,在多房间房子的场境(context)下,扬声器的系统可以位于房子的每个房间(例如客厅、饭厅、卧室等),并且形成针对给定房间的系统的扬声器可以处于房间各处的各个位置。根据本文所描述的一个或多个实施例,将跨用户所选的所有音频设备来同步地播出音频。然而,应当理解的是本文所描述的方法和系统可以适用于需要网络上的不同模块之间的任何数据类型的时间同步的任何系统,并且因此本公开的范围不以任何方式受限于上述示例应用。

对于在相同无线接入点上的数据模块(例如诸如扬声器模块等的音频设备),如将在下面进一步描述的,可以利用内置在接入点中的现有功能来实现模块之间的同步。应当注意的是虽然在音频数据和音频设备的场境中描述了本公开的许多特征和实施例,但是本公开的方法和系统绝不仅局限于音频数据或音频相关的组件。相反,除了音频数据和/或音频设备之外或者代替音频数据和/或音频设备,本文所描述的方法和系统可以与和相同无线接入点连接的众多其它类型的数据和/或模块一起使用。还应当理解的是虽然在与无线接入点连接的两个模块或设备的场境中呈现了一些示例,但是本文所描述的方法和系统类似地适用于涉及多于两个连接的设备(例如三个、四个、或甚至更多个连接的设备/模块)的安排。

接入点将Wi-Fi信标(其还可以被称为硬件(HW)Wi-Fi信标或简称为HW信标,因为它们通常是由包括接入点的无线路由器生成的)发出至在其无线网络上操作的每个设备。例如,Wi-Fi信标可以指代在基于IEEE 802.11的WLAN中的管理帧中的一个。Wi-Fi信标提供无线LAN的“心跳”,从而使得连接的设备能够建立并维持同步通信。这些Wi-Fi信标中的每一个能够被认为时间戳(“Wi-Fi信标时间戳”或“WFBT”),因为Wi-Fi信标指示或表示根据无线路由器的当前时间的。在许多现有系统中,连接的设备采取WFBT作为绝对时间并使用该时间戳来更新它们的本地时钟以便实现跨设备的同步。

然而,与这样的现有途径截然不同,本公开的方法和系统虑及与接入点连接的每个模块(例如音频设备)在不同时间对这些WI-FI信标进行处理(例如接收、确认、检测等)的事实。例如,在接入点与在该接入点上操作的每个模块之间存在一些延迟。虽然这种延迟可能是轻微的,但是它对本公开的方法和系统具有潜在的后果,本公开的方法和系统被设计为实现并维持不同模块之间的数据渲染的高度精确同步(例如<20微秒(μs))。在相同接入点上操作的模块(例如在房间内、在房子内等)之间的这样的紧密的数据同步使得无法觉察的差异(例如在音频的场境中的听不见的差异),从而改善总体用户体验。

如下面将更详细地描述的,本公开的方法和系统仅利用WFBT作为参考,而不是当在接入点上的不同模块之间执行数据同步时依赖于WFBT的实际值。例如,假设模块“A”和模块“B”在相同接入点上操作(例如作为相同内容或数据管理系统的一部分,其可以是位于房子的房间内的系统)。可以在模块A和B中的每一个处接收从无线路由器发送的Wi-Fi信标(例如数字)。根据本文所描述的一个或多个实施例,当模块A接收到Wi-Fi信标时,模块A标记(例如记录、注释、存储等)相对于模块A的本地时钟的信标的接收时间。类似地,在模块B接收到从无线路由器所发送的Wi-Fi信标的时刻,模块B标记相对于模块B的本地时钟的信标的接收时间。

Wi-Fi接入点通常每100毫秒(ms)产生HW信标。根据特定实施方式,本公开的方法和系统可以使用所有所接收到的信标或者所接收到的信标的子集作为用于递送对内容管理系统内的数据的同步渲染(例如音频管理系统内的同步音频回放)的参考。

图1是可以实现本文所描述的一个或多个实施例的示例内容管理系统100。数据源110(例如诸如音频源的内容源(例如在线流送音乐或视频服务、特定URL等)可以通过网络105(例如包括例如以太网、无线LAN、蜂窝网络等的任何种类的网络)与数据模块115连接。从内容源110所获得的内容(例如音频、视频、数据、混合媒体等)可以由数据模块115播出和/或通过网络125(例如无线LAN)由数据模块115输送到数据模块120a-120n中的一个或多个(其中“n”是任意数)。类似地,在数据模块120a-120n处获得的内容可以由数据模块120a-120n播出和/或通过网络135输送到对应的数据模块130a-130m、数据模块140a-140p、或者其一些组合(其中“m”和“p”二者都是任意数)。还应该注意的是网络125和135可以是相同或不同的网络(例如房子内的不同WLAN)。

如上所述,本公开的方法和系统利用Wi-Fi信标作为参考以根据“播放器”模块(其可以是与网络连接的模块中的任何一个或者可以是与网络连接的模块的任何组合)来确定时间,并且这个时间成为用于同步目的的“主”时间。本地硬件实现的HRAC(高分辨率音频时钟)可以被用于为与相同无线网络连接的每个数据模块计算精确的播出时间。根据至少一个实施例,可以假设音频时钟的分辨率足够高于连接的数据模块所支持的最大频率。

图2图示了将Wi-Fi信标(255)发送到连接的数据模块260a-260q(其中“q”是任意数)的接入点250的示例。根据本公开的一个或多个实施例,数据模块260a-260q中的每一个可以包括高分辨率音频时钟(HRAC),其细节将在下面进一步描述。

图3图示了数据或内容管理系统的组件之间的示例数据流。根据本公开的一个或多个实施例,数据源310、接入点350、播放器模块360、以及跟随器/渲染器模块370之间的示例数据流中的一个或多个可以对应于图1中所图示的且如下所描述的示例内容管理系统100中的数据源110、数据模块115、数据模块120a-120n、数据模块130a-130m、和/或数据模块140a-140p之间的一个或多个通信。例如,根据至少一个实施例,播放器模块360可以对应于数据模块115,而跟随器/渲染器模块370可以对应于数据模块120a-120n、数据模块130a-130m、或者数据模块140a-140p中的任一个。

播放器模块360可以接收来自数据源310的数据(例如音频数据)(312)。数据源310可以是例如在线音频/视频流送服务或网站、便携式用户设备(例如蜂窝电话、智能电话、个人数字助理、平板计算机、膝上型计算机、智能电视等)、包含用于存储音频/视频数据的存储器的存储设备(例如独立硬盘驱动器)等。在接收到(312)来自数据源310的音频数据后,播放器模块360可以将时间戳附加到所接收的音频数据的每个帧上(314)。例如,根据至少一个实施例,可以由播放器模块360附加到给定音频帧的时间戳可以指示或表示特定音频帧将要被播出的时间。播放器模块360可以将附加有其对应的时间戳的每个音频帧发送到(318)播放器模块360的相同的接入点350上的跟随器/渲染器模块370中的一个或多个。

跟随器/渲染器模块370可以被配置为在由播放器模块360附接到音频帧的特定时间戳(314)所指示的时间播出(318)从播放器模块360接收到的每个音频帧。然而,应当理解的是附加到每个音频帧的时间戳(例如特定音频帧将由跟随器/渲染器模块370播出的时间)与播放器模块360的时钟相对应;接收来自播放器模块360的这些音频帧的跟随器/渲染器模块370不具有该相同时钟。

因此,本公开的方法和系统被设计为使跟随器/渲染器模块370的时钟与播放器模块360的时钟同步以使得由跟随器/渲染器模块370和播放器模块360同步地播出音频数据。

根据本文所描述的一个或多个实施例,跟随器/渲染器模块370与播放器模块360的本地时钟的同步可以基于使用从接入点350发送出的Wi-Fi信标以作为参考。根据一个或多个其它实施例,跟随器/渲染器模块370与播放器模块360的本地时钟的同步可以基于使用从接入点350发送出的相同Wi-Fi信标作为参考。例如,播放器模块360和跟随器/渲染器模块370二者都可以接收来自接入点350(例如来自与跟随器/渲染器模块370和播放模块360所共享的接入点350相关联的无线路由器)的Wi-Fi信标(318)。在播放器模块360和跟随器/渲染器模块370处接收到的Wi-Fi信标(318)可以是相同的(例如相同数值)。然而,播放器模块360接收Wi-Fi信标(318)的时间(根据播放器模块360的本地时钟)可以与跟随器/渲染器模块370接收Wi-Fi信标(318)的时间(根据跟随器/渲染器模块370的本地时钟)不同。图4中图示了在播放器模块360和在跟随器/渲染器模块370处可以接收到Wi-Fi信标的本地时钟时间之间的这种可能的差异。

图4图示了数据或内容管理系统中的播放器模块460、跟随器模块470、以及多个渲染器模块480a-480x(其中“x”是任意数)之间的示例数据流。根据本公开的一个或多个实施例,播放器模块460、跟随器模块470、以及渲染器模块480a-480x中的一个或多个可以在结构、配置、和/或功能上与在图3中所图示的且在上面所述的示例布置中的播放器模块360和/或跟随器/渲染器模块470中的一个或多个相对应。另外,播放器模块460、跟随器模块470、以及渲染器模块480a-480x之间的示例数据流(414-432)中的一个或多个可以与在图3中所图示且在上面详细描述的播放器模块360和/或跟随器/渲染器模块370之间的示例数据流(312-326)中的一个或多个相对应。因此,处于简明的目的,不包括对播放器模块460、跟随器模块470、以及渲染器模块480a-480x及它们之间的各个示例数据流(414-432)的进一步描述。

图5是用于对相同无线网络上的第一数据模块和第二数据模块(例如图3中所示的示例中的接入点350上的播放器模块360和跟随器/渲染器模块370)的信标信号(例如Wi-Fi信标)与对应的本地时钟时间的示例对进行说明的一组表格(510,520)。根据本文所描述的一个或多个实施例,在数据模块处接收到的每个WFBT可以充当对模块的本地时钟的标识符。例如,表格510和520分别标识在第一和第二模块处接收到的WFBT(530,540)以及在模块处接收到每个WFBT(530,540)的对应的HRAC时间(535,545)(例如本地时钟时间)。应当注意的是无线网络上的一个数据模块可能没有接收在网络上的另一数据模块处接收到的所有Wi-Fi信标并且反之亦然。例如,表510指示第一数据模块分别在HRAC时间(535)1111、2222、3333、4444、和5555接收到WFBT(530)0、10、20、30、和40。另一方面,表格520指示第二数据模块分别在HRAC时间(545)1114、3330、4457、和5567接收到WFBT(540)0、20、30、和40。因此,第二数据模块未接收到在第一数据模块处接收到的WFBT 10。另外,从表格510和520可以看出对于相同WFBT(530,540)而言第一数据模块的HRAC时间(535)与第二数据模块的HRAC时间(545)之间存在一些差异。

再次参照图3,应当理解的是数据源310、接入点350、播放器模块360、以及跟随器/渲染器模块370之间的示例数据流不旨在指定或标明数据流的出现的特定顺序或者以任何方式将本公开的范围限制为任何特定的出现顺序。而是,组件之间的示例数据流中的一个或多个可以在其它示例数据流中的一个或多个之前、与其同时(例如在其期间)、或在其之后发生。对于在图4中所图示且在下面详细描述的播放器模块460、跟随器模块470、以及渲染器模块480a-480x之间的示例数据流也是如此。

例如,播放器模块360和跟随器/渲染器模块370可以在播放器模块360处接收到来自数据源310的音频数据(312)、通过播放器模块360将时间戳附加到音频数据的每个帧上(314)、或者将附加有时间戳的音频帧(316)从播放器模块360发送到跟随器/渲染器模块370之前、在其期间、和/或在其之后接收来自接入点350的Wi-Fi信标(318)。

因此,在播放器模块360接收到音频数据(312)之前,可以在播放器模块360和跟随器/渲染器模块370处接收多个Wi-Fi信标(318),并且播放器模块360和跟随器/渲染器模块370可以将这些Wi-Fi信标与根据设备的相应本地时钟在每个设备处接收到信标的时间共同存储。例如,可以将Wi-Fi信标(318)和对应的本地时钟时间存储为(WFBT,HRAC)数据对(例如图4中所示的示例表格410和420中的WFBT(430,440)以及对应的HRAC(435,445))。

返回对播放器模块360和跟随器/渲染器模块370的本地时钟的同步,在接收到Wi-Fi信标(318)后,播放器模块360可以将同步信号(320)发送到跟随器/渲染器模块370。根据至少一个实施例,从播放器模块360发送到跟随器/渲染器模块370的同步信号(320)可以是表示播放器模块360的Wi-Fi信标(318)和对应的HRAC时间的一对值。例如,同步信号(320)可以是指示播放器模块360在时间“x”(其中“x”是实数)接收到Wi-Fi信标(318)的消息。

因为跟随器/渲染器模块370还接收Wi-Fi信标(318)(以及在播放器模块360处接收到的来自接入点350的任何先前Wi-Fi信标中的一些或全部),因此跟随器/渲染器模块370可以使用包含在同步信号(320)中的数据来确定跟随器/渲染器模块370的本地时间相对于播放器模块360的本地时间的任何漂移和/或差异(322)。例如,根据至少一个实施例,跟随器/渲染器模块370可以对包含在同步信号(320)中的数据与存储用于跟随器/渲染器模块370的关于Wi-Fi信标(318)以及在跟随器/渲染器模块370处接收到的先前的Wi-Fi信标的数据进行比较。基于该比较,跟随器/渲染器模块370可以确定(322)(例如计算、运算等)跟随器/渲染器模块370的本地时间相对于播放器模块360的本地时间的漂移和/或差异的量。

根据一个或多个实施例,跟随器/渲染器模块370可以被配置为对在音频数据的播出期间在所发现的跟随器/渲染器模块370的本地时间相对于播放器模块360的本地时间的任何漂移和/或差异进行补偿(例如调节)(326)。虽然本领域技术人员已知的各种形式的过滤中的任何一个可以被用于对任何确定的漂移进行补偿或调节,但是所选的形式应在整个音频管理系统中一致。例如,锁相环(PLL)或任何其他过滤方法可以根据本文所述的实施例来实现。

音频的实际回放时间可以基于由播放器模块360附加到(314)音频数据的每个帧上的时间戳并且将其发送到(316)跟随器/渲染器模块370。每个音频帧可以与唯一的播出时间相关联,并且每个帧可以由播放器模块360和一个或多个跟随器/渲染器模块370在该唯一时间播出。根据本公开的一个或多个实施例,可以使用例如HW时钟(HRAC)、先前播出的音频帧的持续时间、期望的时延、和/或其一些组合来计算(例如由播放器模块360计算)音频帧的播出时间。

图6是使用Wi-Fi信标作为参考来使无线网络上的数据模块(例如音频设备)的时钟同步的示例过程600。根据至少一个实施例,与上面所描述的且在图1中所图示的内容管理系统100相似,示例过程600可以由数据或内容管理系统来执行。

图7是根据本文所述的一个或多个实施例的示例性计算机(700)的高级方框图,该示例性计算机(700)被布置用于使用Wi-Fi信标作为参考来使无线网络上的数据模块(例如音频设备)的时钟同步。在非常基本的配置(701)中,计算设备(700)通常包括一个或多个处理器(710)和系统存储器(720)。存储器总线(730)能够被用于处理器(710)与系统存储器(720)之间的通信。

根据期望的配置,处理器(710)能够是任何类型的处理器,包括但不限于微处理器(μP)、微控制器(μC)、数字信号处理器(DSP)、或其任何组合。处理器(710)能够包括诸如一级高速缓存(711)和二级高速缓存(712)的一个更多层级的高速缓存、处理器核心(713)、以及寄存器(714)。处理器核心(713)能够包括算术逻辑单元(ALU)、浮点单元(FPU)、数字信号处理核心(DSP核)、或其任何组合。存储器控制器(715)还能够与处理器(710)一起使用,或者在一些实施方式中,存储器控制器(715)能够是处理器(710)的内部部分。

根据期望的配置,系统存储器(720)能够是任何类型的存储器,包括但不局限于易失性存储器(诸如RAM)、非易失性存储器(诸如ROM,闪存等)、或者其任何组合。系统存储器(720)通常包括操作系统(721)、一个或多个应用(722)、以及程序数据(724)。应用(722)可以包括用于使用Wi-Fi信标作为参考来使连接在无线网络上的数据模块的时钟同步的系统(723)。根据本公开的至少一个实施例,用于使数据模块(723)的时钟同步的系统被设计为当估计待跨模块被渲染的数据的渲染时间时(例如估计待跨音频设备被播出的音频数据的播出时间时)通过利用由公共接入点生成的Wi-Fi信标作为参考来实现并维持不同模块之间的高度精确的同步(例如<20微秒(μs))。仅使用这样的Wi-Fi信标作为参考,而不是作为实际时钟,确保了所有数据模块的时钟维持同步,由此允许跨在该系统中所包括的所有模块对数据的相干渲染(例如音频的回放)。用于使数据模块(723)的时钟同步的系统能够实现在相同接入点上操作的模块之间的这样的紧密的音频同步——其使得数据中的任何可察觉的差异(例如所播出的音频数据中的可听见的差异)被消除,从而改善了总体用户体验。

程序数据(724)可以包括存储指令,该指令在由一个或多个处理设备执行时实现用于使用Wi-Fi信标作为参考来使连接在无线网络上的数据模块的时钟同步的系统(723)和方法。另外,根据至少一个实施例,程序数据(724)可以包括WFBT和HRAC数据(725),其可以涉及与这样的时间戳的接收相关联的Wi-Fi信标时间戳和本地时钟时间。根据至少一些实施例,应用(722)能够被布置为在操作系统(721)上与程序数据(724)一起操作。

计算设备(700)能够具有附加的特征或功能、和附加接口以促进基本配置(701)与任何所需设备和接口之间的通信。

系统存储器(720)是计算机存储介质的示例。计算机存储介质包括但不局限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光学储存器、磁带盒、磁带、磁盘储存器或其它磁性存储设备、或者能够被用于存储所需信息并且能够由计算设备700访问的任何其它介质。任何这样的计算机存储介质能够是设备(700)的一部分。

计算设备(700)能够被实现为小封装技术便携式(或者移动)电子设备的一部分,所述小封装技术便携式(或者移动)电子设备诸如蜂窝电话、智能电话、个人数字助理(PDA)、个人媒体播放器设备、平板计算机(平板计算机)、无线web手表设备、个人头戴式送受话器设备、专用设备、或者包括任何上面的功能的混合设备。计算设备(700)还能够被实现为为包括膝上型计算机和非膝上型计算机配置的个人计算机。

前述详细描述已经经由使用框图、流程图、和/或示例阐述了设备和/或过程的各个实施例。在这样的框图、流程图、和/或示例包含一个或多个功能和/或操作的范围内,本领域的技术人员将理解的是这样的框图、流程图、或者示例中的每个功能和/或操作可由范围广泛的硬件、软件、固件、或者其实际上任何组合单独地和/或共同地实现的。根据至少一个实施例,本文所描述的主题的几个部分可以经由专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、或者其它集成格式来实现。然而,本领域的技术人员将认识到本文所公开的实施例的一些方面能够整体地或部分地作为在一个或多个计算机上运行的一个或多个计算机程序、作为在一个或多个处理器上运行的一个或多个程序、作为固件、或者作为其实际上任何组合而在集成电路中等效地实现,并且鉴于本公开,设计电路和/或编写软件和/或固件的代码将在本领域技术人员的技术范围内。

另外,本领域技术人员将理解的是本文所描述的主题的机制能够作为程序产品以各种形式分发并且无论用于实际执行该分发的非暂时性信号承载介质的具体类型如何,本文所描述的主题的说明性实施例都适用。非暂时性信号承载介质的示例包括但不局限于以下:诸如软盘、硬盘驱动器、压缩盘(CD)、数字视频盘(DVD)、数字磁带、计算机存储器等的可记录型介质;以及诸如数字和/或模拟通信介质(例如光纤电缆、波导、有线通信链路、无线通信链路等)的传输型介质。

对于本文几乎任何复数和/或单数术语的使用而言,在适合于场境和/或应用的情况下本领域技术人员能够从复数转化为单数和/或从单数转化为复数。为了清楚起见,在本文可以明确地阐述各种单数/复数排列组合。

还应当注意的是在本文所描述的系统和方法可以收集与用户有关的个人信息或者可以利用个人信息的情况下可以向用户提供机会来控制与系统和/或方法相关联的程序或特征是否收集用户信息(例如与用户偏好有关的信息)。另外,某些数据可以在其被存储或使用之前以一个或多个方式被处理,使得去除个人可识别信息。例如,可以将用户的身份处理为使得不可针对用户确定个人可识别信息。因此,用户可以控制服务器如何收集并使用关于该用户的信息。

因而,已描述了本主题的特定实施例。其它实施例在所附权利要求书的范围之内。在一些情况下,在权利要求中记载的动作能够以不同的顺序执行并且仍实现了期望的结果。另外,在附图中所描绘的过程不一定要求所示的特定顺序或连续顺序以实现期望的结果。在某些实施方式中,多任务和并行处理可能是有利的。

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