校准媒体回放信道用于同步呈现

文档序号:1617320 发布日期:2020-01-10 浏览:26次 >En<

阅读说明:本技术 校准媒体回放信道用于同步呈现 (Calibrating media playback channels for synchronous presentation ) 是由 L·M·瓦萨达 V·桑德拉姆 W·M·布姆加纳 D·H·洛伊德 C·J·桑德斯 S·A·拉 于 2019-06-25 设计创作,主要内容包括:本公开涉及校准媒体回放信道用于同步呈现。在一些具体实施中,计算设备可以通过确定通过媒体系统的媒体传播延迟来校准用于通过媒体系统呈现媒体内容的媒体回放信道。例如,计算设备可以发送校准内容(例如,音频数据、视频数据等)至媒体系统的各种回放设备(例如,回放信道)并记录指示校准内容何时被发送的时间戳。在回放设备呈现校准内容时,传感器设备(例如,遥控设备、智能电话等)可以检测校准内容的呈现。传感器设备可以发送校准数据(例如,可以包括校准内容的媒体样本和/或指示媒体样本何时被传感器设备检测到的时间戳)至计算设备。计算设备可以基于从传感器设备接收的校准数据来确定传播延迟(例如,呈现延时)。(The present disclosure relates to calibrating a media playback channel for synchronous presentation. In some implementations, a computing device may calibrate a media playback channel for presenting media content through a media system by determining a media propagation delay through the media system. For example, the computing device may send calibration content (e.g., audio data, video data, etc.) to various playback devices (e.g., playback channels) of the media system and record timestamps indicating when the calibration content was sent. While the playback device is rendering the calibration content, a sensor device (e.g., a remote control device, a smartphone, etc.) may detect the rendering of the calibration content. The sensor device may send calibration data (e.g., a media sample that may include calibration content and/or a timestamp indicating when the media sample was detected by the sensor device) to the computing device. The computing device may determine a propagation delay (e.g., a presentation delay) based on calibration data received from the sensor device.)

校准媒体回放信道用于同步呈现

技术领域

本公开整体涉及同步音频/视频数据通过多个信道的回放。

背景技术

当今市场上有各种类型的有线和/或无线媒体系统。这些系统中的许多系统通过多个信道(例如,设备、扬声器、显示器、耳机等)呈现音频和/或视频数据。例如,为了在整个房屋中播放音乐,用户可以将不同的扬声器放置在房屋的每个房间中。为了在观看电影时模拟影院环绕声,用户可以在具有电视机和/或其他媒体设备(例如,流式设备、机顶盒等)的房间中的不同位置处放置不同的扬声器。为了避免不谐和的回放体验,这各种回放设备(例如扬声器、电视机等)处音频和/或视频的回放必须被同步,使得每个回放设备同时呈现相同的媒体内容。

发明内容

在一些具体实施中,计算设备可以通过确定通过媒体系统的媒体传播延迟来校准用于通过媒体系统呈现媒体内容的媒体回放信道。例如,计算设备可以发送校准内容(例如,音频数据、视频数据等)至媒体系统的各种回放设备(例如,回放信道)并记录指示校准内容何时被发送的时间戳。在回放设备呈现校准内容时,传感器设备(例如,遥控设备、智能电话等)可以检测校准内容的呈现。传感器设备可以发送校准数据(例如,可以包括校准内容的媒体样本和/或指示媒体样本何时被传感器设备检测到的时间戳)至计算设备。计算设备可以基于从传感器设备接收的校准数据来确定传播延迟(例如,呈现延时)。

特定的具体实施提供了至少以下优点。可以利用不同类型的传感器设备(例如,专用遥控设备、智能电话、平板电脑等)针对在多个回放设备处的同步回放对媒体系统进行校准。可以针对通过第三方回放设备(例如,蓝牙扬声器、蓝牙耳机等)的同步回放对媒体系统进行校准。媒体系统可以在具有或没有显式用户输入启动校准过程的情况下被校准。例如,校准过程可以在用户在传感器设备上或以传感器设备执行其他任务时在后台执行。因此,校准过程可以自动地、动态地和/或频繁地执行,而不劳烦用户提供用于执行校准过程的显式输入。

在下面的附图和

具体实施方式

中阐述了一种或多种具体实施的细节。其他特征、方面和潜在优点将在具体实施方式和附图以及权利要求书中显而易见。

附图说明

图1是用于基于传感器设备处的蓝牙时钟校准媒体回放信道以用于同步回放的示例性媒体系统的框图。

图2是用于基于传感器设备处的系统时钟校准媒体回放信道以用于同步回放的示例性媒体系统的框图。

图3是用于基于在传感器设备处检测的视觉校准内容校准媒体回放信道以用于同步回放的示例性媒体系统的框图。

图4是用于基于校准数据在发送媒体设备处被接收的时间校准媒体回放信道以用于同步回放的示例性媒体系统的框图。

图5示出了用于确定媒体系统的通信信道上的传播延迟的示例性校准内容。

图6是用于基于传感器设备所确定的检测时间校准媒体回放信道以用于同步回放的示例性过程的流程图。

图7是用于基于媒体设备所确定的接收时间和在传感器设备和媒体设备之间传输数据的飞行时间来校准媒体回放信道以用于同步呈现的示例性过程的流程图。

图8是可以实现图1至图7的特征和过程的示例性计算设备的框图。

各个附图中的类似参考符号指示类似的元素。

具体实施方式

本文所述的技术提供了用于校准媒体回放信道以用于同步回放的若干机制。例如,媒体系统内的媒体设备(例如,计算设备、膝上型计算机、机顶盒、流式媒体播放器等)可以确定和/或计算媒体内容通过媒体系统的各个回放信道的传播延迟,使得媒体设备可以调节媒体内容通过回放信道的传输定时,以便提供媒体内容在回放设备(例如扬声器、显示器、电视机、耳机、头戴式耳机等)处的同步呈现。

回放信道可以对应于媒体内容从发送(例如,源发)媒体设备行进通过回放设备的通信路径(例如,包括回放设备),回放设备将媒体内容(例如,听觉地和/或视觉地)呈现至媒体系统的用户。回放信道可以是至相应回放设备(例如,电视机、扬声器、监视器、显示器等)的有线回放信道(例如HDMI、RCA缆线、同轴电缆、以太网、扬声器线等)或无线回放信道(例如,蓝牙、Wi-Fi等)。

传播延迟(例如,呈现延时)可以对应于媒体设备所发送的媒体内容在回放设备处被感知地呈现(例如,听觉地或视觉地)以用于供用户享受所消耗的时间量(例如,呈现时间-传输时间=传播延迟)。媒体设备可以确定对应于多个回放设备(例如,电视机、扬声器、头戴式耳机、机顶盒、计算设备等)的多个回放信道(例如,有线、无线、Wi-Fi、蓝牙等)中每一者上的传播延迟。然后,媒体设备可以基于为每个信道确定的传播延迟来调节媒体内容被发送至每个信道的定时,使得媒体内容被与每个回放信道关联的回放设备同步地呈现(例如,同时播放媒体内容的相同部分)。

图1是用于基于传感器设备处的蓝牙时钟校准媒体回放信道以用于同步回放的示例性媒体系统100的框图。例如,传感器设备处的蓝牙时钟可以被媒体系统100用于确定回放设备呈现校准内容的时间,使得可以确定通过媒体系统100的传播延迟。

在一些具体实施中,媒体系统100可以包括媒体设备110。例如,媒体设备110可以是能够将流式媒体传送至其他回放设备的计算设备(例如,膝上型计算机、机顶盒、流式媒体播放器、智能电话等)。媒体设备110可以利用多个有线(例如,HDMI、RCA缆线、同轴电缆、以太网、扬声器线等)或无线通信(例如,蓝牙、Wi-Fi等)信道将流式媒体传送至其他回放设备。

在一些具体实施中,媒体设备110可以包括媒体模块112。例如,媒体模块112可以是被配置为在媒体设备110上执行各种媒体管理功能的软件模块。媒体模块112可以例如根据媒体设备110的用户所指定的输出配置通过相应的回放信道将供用户享受的媒体内容(例如,音频内容、视频内容等)发送至各种回放设备。媒体模块112可以管理媒体内容到回放设备的传输,使得回放设备以同步方式呈现媒体内容。例如,媒体模块112可以根据为每个回放设备和/或相应回放信道确定的传播延迟来调节媒体内容被发送至回放设备的定时。

在一些具体实施中,媒体模块112可以执行校准过程以确定每个回放信道和/或相应回放设备的传播延迟。例如,媒体模块110可以具有回放模式和校准模式。媒体模块112在响应于用户请求播放音乐、视频、电影或用于用户娱乐的某个其他媒体内容而发送媒体至各个回放设备时可以正常工作于回放模式中。在一些具体实施中,媒体模块112可以进入校准模式以确定各个回放信道的传播延迟并基于所确定的传播延迟校准媒体系统100的各个回放信道以确保媒体内容在回放信道和/或回放设备上的同步回放。

媒体模块112可以多种方式进入校准模式。例如,媒体模块112可以响应于用户提供输入至媒体设备110而进入校准模式。例如,媒体设备110可以在电视机130上呈现图形用户界面,并且用户可以提供选择校准菜单项的输入以使得媒体模块112进入校准模式。

又如,媒体模块112可以在传感器设备140和/或媒体设备110的用户启用(例如,打开)麦克风144时自动进入校准模式。例如,传感器设备140的用户可以按压传感器设备140(例如,专用遥控设备)上的按钮以启用语音输入用于向媒体设备110提供输入。在麦克风144被启用时,媒体模块112可以进入校准模式以确定媒体系统100中的回放信道的传播延迟,并且基于在麦克风144被启用时所检测到的声音来校准回放信道以使得能够实现媒体内容的同步回放。因此,媒体系统100可以被自动和动态地(例如,频繁地)校准,而不劳烦用户提供用于校准媒体系统100的显式输入。

在一些具体实施中,当媒体模块112进入校准模式时,媒体模块112可以使传感器设备140进入校准模式。例如,媒体模块112可以通过网络150(例如,对等蓝牙、对等Wi-Fi、局域网等)发送消息,以使传感器设备140和/或远程模块142进入校准模式。在处于校准模式中时,远程模块142可以对麦克风144所检测到的声音(例如,或者传感器设备140的相机所捕获的视频)进行采样,使得媒体模块112可以确定校准内容118何时被回放设备(例如,扬声器132、扬声器160、电视机130等)呈现并确定传播延迟,如下文进一步所述。

为了确定传播延迟并执行校准过程,媒体模块112可以通过相应回放信道发送校准内容118至回放设备。例如,媒体模块112可以通过回放信道126(例如,HDMI信道)发送校准内容118至电视机130和扬声器132。扬声器132可以例如是附接或连接到电视机130的扬声器。

在一些具体实施中,校准内容118可以是包括专门为了校准媒体系统100而创建的音频内容和/或视频内容的媒体内容。通常,校准内容可以被配置为包括初始媒体片段、然后是校准媒体片段(例如,对于校准有用的音频或视频图案)、然后是结束媒体片段。初始媒体片段和结束媒体片段可以被配置为对于用户是令人愉悦的发声或有视觉吸引力,使得它们掩蔽校准媒体片段或使校准媒体片段更能忍受,该校准媒体片段对于用户而言可能比较没有吸引力。例如,初始媒体片段和结束媒体片段可以具有比校准媒体片段长的持续时间,并且因此对用户而言不太明显。通过将校准片段配置在初始媒体片段和结束媒体片段之间,媒体模块112可以确定校准媒体片段在校准内容内呈现的偏移。这个偏移可以允许在确定回放信道上的传播延迟时更高的精确度,如下文参考图5进一步所述。在图1的示例中,校准内容118可以包括要由电视机130和/或扬声器132呈现的音频数据。然而,在其他具体实施(例如,图4)中,校准内容118可以包括视频内容。

如上所述,校准过程的目的是确定在媒体模块112发送校准内容至电视机130和/或扬声器132之后校准内容118被传输至扬声器132以及被扬声器132呈现所花费的时间量(例如,传播延迟),使得来自媒体模块112的媒体内容的输出可以被校准(例如定时)以用于同步回放。例如,包括显示设备(例如,电视机130)的回放信道中的重要延迟源是显示设备所执行的视频处理。因此,通过不包括显示设备或其他执行视频处理的设备的回放信道发送媒体内容可能需要被延迟,以适应与在显示设备处执行的视频处理相关联的延时,以便在所有回放信道上为用户提供同步回放体验。

在一些具体实施中,在发送校准内容118时,媒体模块112可以基于系统时钟120来确定校准内容118被发送的时间(例如,传输时间)。例如,系统时钟120可以是被媒体设备110用于执行各种计算操作的内部时钟。在一些具体实施中,可以利用公知的协议使系统时钟120与网络时钟同步。媒体模块112可以记录和/或存储校准内容110被发送至回放设备(例如,电视机130和/或扬声器132)的系统时间,使得在计算回放信道(例如,回放信道126)上的传播延迟时,可以将传输时间与校准内容被回放设备呈现时的呈现时间(例如,传感器设备140所检测的)进行比较。

在电视机130和/或扬声器132接收校准内容118时,扬声器132可以呈现校准内容118。例如,扬声器132可以呈现对应于校准内容118中音频数据的声音(例如,令人愉悦的声音、然后是可听的测试图案、然后是令人愉悦的声音)。

在一些具体实施中,媒体系统100可以包括传感器设备140。例如,传感器设备140可以是计算设备,诸如遥控设备、智能电话、平板电脑、或被配置为具有声音和/或图像传感器并且能够通过网络150(例如,蓝牙网络、Wi-Fi网络、对等网络等)与媒体设备110通信的其他设备。在媒体系统100的具体示例中,传感器设备140可以对应于用于利用蓝牙连接来***体设备110和/或向媒体设备110提供输入的专用遥控设备。

在一些具体实施中,传感器设备140可以包括远程模块142。例如,远程模块142可以是提供传感器设备140相对于媒体设备110的遥控能力的软件模块。远程模块142可以获取传感器设备140所生成的媒体样本(例如,音频样本、视频样本等)并提供校准数据(包括媒体样本)至媒体模块112以用于确定通过媒体系统100的各个回放信道的传播延迟。

在一些具体实施中,传感器设备140可以包括用于检测声音诸如用于远程***体设备110的语音命令的麦克风144(例如,声音传感器)。麦克风144也可以被远程模块142用于检测扬声器132或任何其他音频回放设备(例如,扬声器160、头戴式耳机等)在处于校准模式中时所呈现的校准内容118。

在一些具体实施中,当远程模块142处于校准模式中时,远程模块142可以监视麦克风144所检测的声音并周期性地发送校准数据至媒体设备110。例如,校准数据可以包括传感器设备140利用传感器设备140的声音和/或图像传感器检测和/或生成的媒体样本(例如,声音样本、视频样本等)。校准数据可以包括时间戳,该时间戳指示校准数据中的媒体样本被传感器设备140检测和/或生成的时间。在处于校准模式中时,远程模块142可以周期性地生成和发送校准数据。例如,远程模块142可以周期性地采样传感器设备140上的传感器(例如,声音传感器、图像传感器等)所生成的传感器数据,并为每个采样周期生成校准数据。然后,远程模块142可以将采样周期的校准数据(包括当前采样周期的新收集的媒体样本)发送至媒体设备110。例如,当在校准模式中时,采样周期可以是50毫秒、1秒等。校准数据的每个实例可以包括或者可以不包括校准内容,并且更重要地,可以包括或者可以不包括校准媒体片段。因此,媒体设备110上的媒体模块112可以在接收到每个校准数据时对其进行分析,以确定校准数据是否包括校准媒体片段,如下文进一步所述。

在一些具体实施中,远程模块142可以使用蓝牙时钟146来确定校准数据的时间戳。例如,传感器设备140可以不具有系统时钟。因此,远程模块142可以在校准数据被生成时利用蓝牙时钟146来获取当前时间(例如,时间戳)。例如,当前时间可以通过蓝牙控制器148的API(应用编程接口)从蓝牙时钟146获取。然后,远程模块142可以将时间戳存储在校准数据中,该校准数据包括当前采样周期的媒体样本。在生成当前采样周期的校准数据之后,远程模块142可以发送消息149至媒体设备110,该消息包括远程模块142为当前采样周期生成的校准数据。

当消息149被媒体设备110接收时,媒体模块112可以确定对应于消息149中所包括的声音样本被传感器设备140检测到的蓝牙时间的系统时间。例如,作为蓝牙通信协议的一部分,可以同步传感器设备140上的蓝牙时钟146和媒体设备110上的蓝牙时钟116。然而,媒体设备110上的蓝牙时钟116和系统时钟120可能不同步。因此,当消息149被接收时,媒体模块可以获取蓝牙时钟116(例如,来自蓝牙控制器114)的当前时间和系统时钟120,以确定媒体设备110上系统时间和蓝牙时间之间的映射。例如,媒体模块112可以确定系统时钟120的系统时间在蓝牙时钟116的蓝牙时间之前(或之后)的时间量(例如,20毫秒、5秒、30秒等)。然后,媒体模块112可以向(或从)校准数据中所包括的蓝牙时间戳加上(或减去)这个时间量,以确定校准数据被生成和/或校准媒体样本被传感器设备140检测到的系统时间。

在确定传感器设备140生成消息149中的校准数据的系统时间之后,媒体模块112可以确定回放设备开始呈现校准内容118的呈现时间。例如,媒体模块112可以基于回放设备呈现校准媒体片段的时间来确定呈现时间,如下文参考图5所述。

然后,媒体模块112可以将媒体模块112向回放设备(例如,电视机130和/或扬声器132)发送校准内容118的系统时间(例如,传输时间)与回放设备呈现校准内容118的时间(例如,呈现时间)进行比较,以确定回放信道126上的传播延迟(例如,呈现延时)。例如,媒体模块112可以从呈现时间减去传输时间以确定回放信道126上的传播延迟。

在一些具体实施中,媒体模块112可以与上文参考回放信道126所述类似的方式确定通过其他(例如,附加)回放信道的传播延迟。例如,当媒体系统100处于校准模式中时,媒体模块112可以通过回放信道162向扬声器160(例如,智能扬声器、蓝牙扬声器、头戴式耳机、无线耳塞等)发送校准内容118。通过回放信道162发送的校准内容118可以包括与通过回放信道126发送的校准内容相同的校准媒体片段(例如,音频图案、视频图案等)。通过回放信道162发送的校准内容118可以包括与通过回放信道126发送的校准内容不同的校准媒体片段(例如,音频校准图案、视频校准图案等)。传感器设备140然后可以检测扬声器160所呈现的校准内容118,生成校准数据并将校准数据发送至媒体设备110,使得媒体模块112可以确定通过回放信道162的传播延迟,如上所述。

在一些具体实施中,媒体模块112可以同时向回放信道126和回放信道162发送校准内容118。例如,媒体模块112可以确定媒体设备110被配置为发送媒体内容所通过的所有回放信道(例如,回放信道126、回放信道162等)或回放设备(例如,电视机130、扬声器132、扬声器160等)。然后,媒体模块112可以通过每个信道和/或向每个回放设备发送校准内容118,使得当在回放设备处接收到时,回放设备呈现校准内容118。如上所述,校准内容118对于每个回放信道可以包括相同校准媒体片段,或者校准内容118对于每个回放信道可以包括不同校准媒体片段。例如,通过发送不同校准媒体片段至每个回放信道,媒体模块112可以通过将校准数据中的校准媒体片段匹配到被媒体模块112发送至每个回放信道的校准媒体片段来确定哪个校准数据(例如,所检测到的校准媒体片段)对应于哪个回放信道。

在任何情况下,当校准内容118被回放设备接收时,回放设备可以呈现校准内容118。由于每个信道(例如,信道126、信道162等)上的传播延迟的差异,每个回放设备可在不同时间或同时呈现校准内容118。然而,传感器设备140可以检测每个回放设备(例如,电视机130、扬声器132和/或扬声器160)所呈现的校准内容118,生成校准数据并将校准数据发送至媒体设备110,使得媒体模块112可以基于每个信道的校准数据来计算每个回放信道126和/或160的传播延迟,如本文所述。

在一些具体实施中,媒体模块112可以使用为每个回放信道计算的传播延迟来在回放信道上同步媒体内容回放。例如,(例如,电视机130执行的)视频处理通常是媒体系统100内最大传播延迟量的来源。因此,如果媒体模块112确定回放信道126(例如,电视机130、扬声器132)具有两(2)秒的传播延迟,并且回放信道162(例如,扬声器160)具有一(1)秒的传播延迟,则在发送媒体内容至回放设备用于呈现时,媒体模块112可以在媒体模块112向扬声器160发送媒体内容前一秒向电视机130和/或扬声器132发送媒体内容。换句话说,媒体模块112可以在向电视机130和/或扬声器132发送媒体内容之后将向扬声器160发送媒体内容延迟一秒,使得电视机130、扬声器132和/或扬声器160同时呈现媒体内容。因此,媒体模块112可以基于为每个回放信道确定的所确定传播延迟来校准各个回放信道上媒体内容的传输,使得与每个回放信道相关联的回放设备同时并且与其他回放设备同步呈现媒体内容。

图2是用于基于传感器设备处的系统时钟校准媒体回放信道以用于同步回放的示例性媒体系统200的框图。例如,媒体系统200可以对应于上文所述的系统100。在一些具体实施中,传感器设备处的系统时钟可以被媒体系统100用于确定回放设备呈现校准内容的时间,使得可以确定通过媒体系统100的传播延迟。例如,传感器设备140可以是包括系统时钟202的计算设备(例如,智能电话、平板电脑等)。媒体系统200的校准可以与上文所述的媒体系统100的校准类似地执行,但是校准数据的时间戳可以基于传感器设备140的系统时钟202、而不是蓝牙时钟146来确定的。系统时钟202可以利用公知的网络协议与媒体设备110的系统时钟120同步。因此,在确定每个回放信道的传播延迟时,媒体模块112可以直接使用校准数据时间戳(例如,不将蓝牙时钟时间转换为系统时间)。

为了校准系统200的回放信道,媒体模块112可以在媒体设备110的媒体模块112进入校准模式时向传感器设备140发送通知以使传感器设备140(例如,智能电话、平板电脑、智能手表、其他计算设备等)进入校准模式。如上所述,当用户选择媒体模块112在电视机130上呈现的校准菜单项时,媒体模块112可以进入校准模式。例如,传感器设备140可以在传感器设备140的显示器上呈现校准通知。传感器设备140的用户可以响应于所述通知而提供输入以使远程模块142进入校准模式。

另选地,传感器设备140的用户可以调用传感器设备140上的远程模块142(例如,软件应用程序)并向远程模块142提供输入以使媒体设备110上的媒体模块112和/或远程模块142进入校准模式。当处于校准模式中时,远程模块142可以对麦克风144所生成的传感器数据进行采样(例如,记录一段时间)并周期性地生成校准数据,如上所述。

当远程模块142生成校准数据时,远程模块142可以通过从系统时钟202请求当前时间来确定媒体样本被收集的时间。远程模块142可以在校准数据中包括采样时间,并且在消息204中将校准数据发送至媒体设备110上的媒体模块112。

当消息204被媒体模块112接收时,媒体模块112可以基于校准数据中的时间戳来确定传感器设备140生成消息204中的校准数据的系统时间。在确定传感器设备140生成消息204中的校准数据的系统时间之后,媒体模块112可以确定回放设备开始呈现校准内容118的呈现时间。例如,媒体模块112可以基于回放设备呈现校准媒体片段的时间来确定呈现时间,如下文参考图5所述。

为了确定回放信道上的传播延迟,媒体模块112可以计算媒体模块112向回放设备发送校准内容118的系统时间与呈现时间(例如,系统时间)之间的差值以确定每个回放信道上的传播延迟。在为每个回放信道确定传播延迟之后,媒体模块112可以校准每个回放信道上媒体内容的传输,使得与回放信道相关联的每个回放设备同步呈现媒体内容,如上所述。

图3是用于基于在传感器设备处检测的视觉校准内容校准媒体回放信道以用于同步回放的示例性媒体系统300的框图。例如,媒体系统300可以对应于上文所述的系统200。然而,媒体系统300可以利用视频校准内容来确定回放信道304的传播延迟,而不是基于音频校准内容来确定回放信道304的传播延迟。类似于媒体系统200,媒体系统300可以使用传感器设备处的系统时钟来确定视频校准内容的样本被相机302检测到的时间,使得可以确定通过媒体系统300(例如,回放信道304)的传播延迟。由于到扬声器160的回放信道162不包括视频回放设备,因此通过回放信道162的传播延迟可以(例如,同时或单独地)利用音频校准内容来确定,如上所述。

在一些具体实施中,媒体模块112可以确定回放设备的类型和/或能力,媒体模块112被配置为将媒体内容发送至该回放设备。例如,在建立到电视机130的回放信道304时,媒体模块112可以确定电视机130是能够呈现音频和视频内容的回放设备类型。在建立到扬声器160的回放信道162时,媒体模块112可以确定扬声器160是只能呈现音频内容的回放设备类型。因此,在向电视机140和/或扬声器160发送校准内容118时,媒体模块112可以根据与每个回放信道相关联的回放设备的能力来选择视频和/或音频校准内容。另选地,校准内容118可以包括音频和视频校准内容两者,并且回放设备可以根据回放设备的能力呈现音频和/或视频内容。

在图3的示例中,媒体模块112可以选择向电视机130发送视频校准内容以及向扬声器160发送音频校准内容,并且记录校准内容被发送至每个回放设备的系统时间。当电视机130接收到视频校准内容118时,电视机130可以在电视机130的显示器上呈现视频校准内容。

在一些具体实施中,传感器设备140可以被配置为具有相机302和/或麦克风144。传感器设备140可以使用麦克风144(例如,声音传感器)来检测扬声器160对音频校准内容118的呈现,如上所述。传感器设备140可以使用相机302(例如,图像传感器)来检测电视机130对视频校准内容118的呈现。例如,当媒体模块112进入校准模式时,媒体模块112可以向传感器设备140(例如,智能电话、平板电脑等)发送通知。所述通知可以包括指示媒体设备110已进入校准模式的信息。所述通知可以包括指示要被用于媒体系统300的校准的校准内容的类型(例如,视频内容、音频内容等)的信息。传感器设备140可以在传感器设备140的显示器上呈现校准通知。

当传感器设备140的用户选择传感器设备140上所呈现的校准通知或者与之交互以使传感器设备140进入校准模式时,远程模块142可以呈现用于执行媒体系统300的视频校准的指令。例如,当传感器设备140进入校准模式时,远程模块142可以启用(例如,打开)麦克风144和/或相机302并指示用户对传感器设备140进行取向使得相机302的镜头指向电视机130。因此,当电视机130呈现视频校准内容(例如,校准内容118)时,相机302可以检测视频校准内容的呈现。例如,当处于校准模式中时,远程模块142可以对相机302所生成的传感器数据进行采样(例如,记录一段时间)并周期性地生成校准数据,如上所述。

当远程模块142生成校准数据时,远程模块142可以通过从系统时钟202请求当前时间来确定媒体样本被收集的时间。远程模块142可以在校准数据中包括采样时间,并且在消息306中将校准数据发送至媒体设备110上的媒体模块112。

当消息306被媒体模块112接收时,媒体模块112可以基于校准数据中的时间戳来确定传感器设备140生成消息306中的校准数据的系统时间。在确定传感器设备140生成消息306中的校准数据(例如,采样数据)的系统时间之后,媒体模块112可以确定回放设备开始呈现校准内容118的呈现时间。例如,媒体模块112可以基于回放设备呈现校准媒体片段的时间来确定呈现时间,如下文参考图5所述。

为了确定回放信道上的传播延迟,媒体模块112可以计算媒体模块112向回放设备发送校准内容118的系统时间与呈现时间(例如,系统时间)之间的差值以确定每个回放信道上的传播延迟。在为每个回放信道确定传播延迟之后,媒体模块112可以校准每个回放信道上媒体内容的传输(例如,调节其定时),使得与回放信道相关联的每个回放设备同步呈现媒体内容,如上所述。

图4是用于基于校准数据在发送媒体设备处被接收的时间校准媒体回放信道以用于同步回放的示例性媒体系统400的框图。例如,系统400可以对应于上文所述的系统100。然而,在系统400中,远程模块142可以不具有对蓝牙时钟146(或系统时钟)的访问权限以确定校准内容何时被回放设备呈现和/或被麦克风144检测到。因此,媒体系统400可以被配置为基于媒体设备110的系统时钟和将校准内容从传感器设备140传输至媒体设备110的飞行时间来确定传播延迟。例如,媒体模块112可以通过从包括所检测到的校准内容118的媒体模块112接收消息402被媒体设备110接收到的时间(例如,接收时间)减去飞行时间(例如,通过通信信道404将数据从传感器设备140传输至媒体设备110所花费的时间量)来计算传感器设备140生成校准数据中的媒体样本的时间(例如,采样时间)。

在确定传感器设备140生成消息402中的校准数据的系统时间(例如,采样时间)之后,媒体模块112可以确定回放设备开始呈现校准内容118的呈现时间。例如,媒体模块112可以基于回放设备呈现校准媒体片段的时间来确定呈现时间,如下文参考图5所述。

在一些具体实施中,媒体模块112可以通过各个回放信道向回放设备发送校准内容118。例如,媒体模块112可以通过回放信道126向电视机130和/或扬声器132发送校准内容118,如上所述。媒体模块112可以通过回放信道162向扬声器160发送校准内容118,如上所述。

在一些具体实施中,当远程模块142处于校准模式中时,远程模块142可以监视麦克风144所检测的声音并周期性地发送校准数据至媒体设备110。例如,校准数据可以包括传感器设备140利用传感器设备140的声音和/或图像传感器检测和/或生成的媒体样本(例如,声音样本、视频样本等)。然而,在图4的示例中,远程模块142可能不具有对传感器设备140上的任何时钟(例如,蓝牙时钟146)的访问权限(例如,传感器设备140可能仅仅是没有任何系统时钟的遥控设备)。因此,远程模块142可以发送校准数据,包括媒体样本,而没有对应的时间戳指示校准数据和/或媒体样本何时被生成。

在处于校准模式中时,远程模块142可以周期性地生成和发送校准数据。例如,远程模块142可以周期性地采样传感器设备140上的传感器(例如,声音传感器、图像传感器等)所生成的传感器数据,并为每个采样周期生成校准数据。然后,远程模块142可以将采样周期的校准数据(包括新收集的媒体样本)发送至媒体设备110。例如,当在校准模式中时,采样周期可以是50毫秒、1秒等。校准数据的每个实例可以包括或者可以不包括校准内容,并且更重要地,可以包括或者可以不包括校准媒体片段。因此,媒体模块112可以在接收到每个校准数据时对其进行分析,以确定校准数据是否包括校准媒体片段,如下文进一步所述。在生成当前采样周期的校准数据之后,远程模块142可以发送消息402(包括远程模块142所生成的校准数据)至媒体设备110。

当媒体设备110接收到消息402时,媒体模块112可以计算媒体模块112向一个或多个回放设备发送校准内容的系统时间与媒体模块112接收到消息402的时间之间的差值(例如,往返时间)。然后,媒体模块112可以从所述往返时间减去飞行时间值以确定(例如,估计)传感器设备140何时生成消息402中所包括的校准数据和/或媒体样本。

在一些具体实施中,可以基于传感器设备140所传输的消息被媒体设备110接收所花费的时间量来确定飞行时间值。例如,飞行时间值可以基于传感器设备140和媒体设备110处的蓝牙时钟来确定。例如,虽然远程模块142可能不具有对蓝牙时钟146的访问权限以确定校准内容118被传感器设备140检测到的时间,但蓝牙控制器148可以将指示消息402被传感器设备140传输的时间的蓝牙时钟时间包括在消息402中,作为蓝牙通信协议的一部分。当消息402在媒体设备110处被接收到时,蓝牙控制器114可以基于蓝牙时钟116确定消息402被接收的蓝牙时间。蓝牙控制器114可以通过计算消息402中的蓝牙时间(例如,传输时间)与消息402在媒体设备110处被接收到的蓝牙时间之间的差值来确定飞行时间。所计算出的这个飞行时间可以被提供至媒体模块112。然后,媒体模块112可以从所述往返时间减去所述飞行时间以确定消息402中的校准数据和/或媒体样本何时被生成。

在一些具体实施中,飞行时间值可以是由为从传感器设备140发送至媒体设备110的多个消息计算的飞行时间值确定的统计值(例如,最小值)。例如,随时间推移,传感器设备140可以向媒体设备110发送多个(例如,数百个、数千个等)蓝牙消息。媒体模块112可以存储为在一段时间内(例如,所有时间、上一周、前一小时等)从传感器设备140接收的每条消息生成的飞行时间值。在一些具体实施中,媒体模块112可以从所有这些消息中确定最小飞行时间值,并且在基于传感器设备140和媒体设备110之间的飞行时间来计算传播延迟时使用最小飞行时间值,如上所述。在一些具体实施中,媒体模块112可以计算其他统计飞行时间值,诸如中值、平均值等,并且在基于传感器设备140和媒体设备110之间的飞行时间来计算传播延迟时使用这些其他统计飞行时间值,如上所述。

在确定传感器设备140生成消息149中的校准数据的系统时间之后,媒体模块112可以确定回放设备开始呈现校准内容118的呈现时间。例如,媒体模块112可以基于远程设备142生成校准媒体和/或媒体样本的时间来确定呈现时间,如下文参考图5所述。

然后,媒体模块112可以将媒体模块112向回放设备(例如,电视机130)发送校准内容118的系统时间(例如,传输时间)与回放设备呈现校准内容118的时间(例如,呈现时间)进行比较,以确定回放信道304上的传播延迟(例如,延时)。例如,媒体模块112可以从呈现时间减去传输时间以确定回放信道304上的传播延迟。

在利用如上所述的飞行时间计算来计算每个回放信道上的传播延迟之后,媒体模块112可以基于为每个回放信道计算的传播延迟来校准每个回放信道,如上所述。

图5示出了用于确定媒体系统的通信信道上的传播延迟的示例性校准内容500。例如,校准内容500可以对应于上文所述媒体系统100、200、300和/或400的校准内容118。如上所述,校准内容500可以包括视频内容和/或音频内容。

在一些具体实施中,校准内容500可以包括开始媒体片段502、校准片段504、和结束媒体片段506。例如,媒体片段502和媒体片段504可以包括某个听觉或视觉令人愉悦的媒体。校准片断504可以包括音频或视频图案,所述音频或视频图案可以被媒体设备110在执行本文所述的校准过程时进行匹配。例如,在确定校准片断504何时被回放设备呈现时,媒体模块112可以将校准片断504匹配到音频和/或视频样本数据以确定样本数据是否包括校准片断。在被回放设备(例如,电视机130、扬声器132、扬声器160等)呈现时,回放设备可以呈现媒体片断502持续第一持续时间(例如,时间512-时间510),呈现校准片段504持续第二持续时间(例如,时间514-时间512),并且呈现媒体片段506持续第三持续时间(例如,时间516-时间514)。例如,校准片断504的持续时间可以比媒体片段502和/或506的持续时间短。因此,校准内容500可以被呈现持续总持续时间(例如,时间516-时间510)。

在一些具体实施中,传感器设备140可以捕获包括校准内容500的一部分的传感器数据的样本。例如,传感器设备140可以捕获样本520。样本520可以是传感器设备140的声音传感器(例如,麦克风)或图像传感器(例如,相机)所捕获和/或生成的音频数据或视频数据的样本。如上所述,远程模块142可以在处于校准模式中时周期性地采样传感器数据。样本520是远程模块142所生成的样本数据的示例。样本520可以由远程模块142在校准数据中发送至媒体设备110。校准数据中所指示的时间可以对应于样本520被远程模块142捕获或生成的时间522。

如图5所示,样本520可以在时间522处生成并且在542处结束。因此,样本520可以不包括所有校准内容500(例如,从时间510延续到时间516)。此外,样本520的开始(例如,时间522)可以不与校准内容500的开始(例如,时间510)重合。例如,回放设备开始呈现校准内容500的时间(例如,时间510)与媒体模块112向回放设备发送校准内容500的时间之间的差值是到回放设备的通信信道的传播延迟,因此媒体模块112需要确定时间510以计算传播延迟。

在一些具体实施中,即使校准内容500在时间510处的开始不是样本520的一部分,媒体模块112也可以使用校准片断504确定回放设备何时开始呈现校准内容500。例如,媒体模块112可以确定校准片断504的校准时间偏移530。例如,校准时间偏移530可以对应于时间512(例如,校准片断504的开始)与时间510(例如,校准内容500的开始)之间的差值。媒体模块112可以使用校准片断504的校准时间偏移530来确定回放设备何时开始呈现校准内容500。例如,如果媒体模块112可以确定校准片断504被呈现的时间,则媒体模块112可以从这个时间减去校准偏移530以确定回放设备何时开始呈现校准内容500。这个“开始时间”或呈现时间可以被媒体模块112用于计算从媒体设备110通过呈现校准内容500的回放设备的传播延迟。

在一些具体实施中,当媒体模块112从传感器设备140接收包括样本520的校准数据时,媒体模块112可以分析样本520以确定对应于校准片断504在样本520内开始时的采样时间偏移540(例如,时间522与时间512之间的差值)。例如,校准片断504可以在相对于样本520的开始有一(1)秒采样时间偏移540处开始。

当校准数据被发送至媒体模块112时,媒体模块112可以确定样本520被生成的时间(例如,样本520的开始被捕获的时间)。例如,校准数据时间可以从校准数据本身(例如,在传感器设备140处确定的系统或蓝牙时钟时间)获得,或者可以从飞行时间计算导出,如上所述。

为了确定校准内容500第一次被呈现的时间(例如,时间510),媒体模块112可以将样本时间偏移540加到校准数据时间(例如,时间522)并减去校准时间偏移530。这些计算的结果可以对应于校准内容的呈现时间。例如,呈现时间对应于回放设备开始呈现校准内容500的时间。

示例性过程

为了使读者能够清楚地理解本文所述的技术概念,以下过程描述了以特定顺序执行的具体步骤。然而,特定过程的一个或多个步骤可以被重新安排和/或省略,同时保持在本文公开的技术的预期范围内。此外,可以组合、重新组合、重新安排、省略和/或并行执行不同的过程和/或其步骤,以创建也在本文公开的技术的预期范围内的不同处理流程。此外,尽管为了清楚起见,下面的过程可以省略或简要概述本文中公开的技术的一些细节,但是以上段落中描述的细节可以与下面描述的过程步骤组合以获得对这些过程和本文所公开的技术的更完整和全面的理解。

图6是用于基于传感器设备所确定的检测时间校准媒体回放信道以用于同步回放的示例性过程600的流程图。例如,过程600可以由上文所述的媒体系统100、200和/或300执行。过程600可以被执行以确定媒体系统100、200和/或300中每个回放信道(例如,包括回放设备)的传播延迟。然后,为每个回放信道确定的传播延迟可以被媒体设备110用于调节媒体内容通过每个回放信道的传输时间,使得媒体内容在所有回放设备上以同步方式呈现。

在步骤602,媒体设备110可以使媒体设备110和传感器设备140进入校准模式。例如,媒体设备110可以接收指示用户希望校准媒体系统100、200和/或300的显式用户输入。所述用户输入可以由媒体设备110通过与媒体设备110相关联的遥控器(例如,传感器设备140)接收。

在一些具体实施中,媒体设备110可以检测用户何时激活传感器设备140上的传感器(例如,麦克风、相机等)并利用这个机会(例如,无需显式用户输入)校准媒体系统100、200和/或300。例如,用户可以启用传感器设备140上的麦克风以向媒体设备110提供语音输入。媒体设备110可以从传感器设备140接收指示麦克风活动或打开的消息,并且使媒体设备110和传感器设备140进入校准模式。因此,媒体设备110可以伺机在用户启用传感器设备140上的校准传感器(例如,麦克风、相机等)时使媒体设备110和传感器设备140进入校准模式。

在一些具体实施中,媒体设备110可以周期性地校准媒体系统100、200和/或300。例如,媒体设备110可以反复周期性地(例如,每天、每周等)校准媒体系统100、200和/或300。如果媒体设备110最近还没有校准媒体系统100、200和/或300,则媒体设备110可以在所配置的周期结束时自动进入校准模式并发送通知至传感器设备140以使传感器设备140进入校准模式。例如,传感器设备140的用户可以与通知进行交互以允许传感器设备140进入校准模式并激活传感器设备140上的校准传感器(例如,麦克风、相机等),如上所述。

在步骤604,媒体设备110可以通过回放信道向回放设备发送校准内容并记录传输时间。例如,媒体设备110可以确定传感器设备140的传感器能力(例如,声音传感器-麦克风、图像传感器-相机等)。媒体设备110可以确定媒体系统100、200和/或300中回放设备的媒体呈现能力(例如,仅音频、音频和视频等)。媒体设备110可以基于所确定的传感器设备140和回放设备的能力来选择在每个回放信道上发送至每个回放设备的校准内容。例如,当传感器设备140只能检测声音(例如,仅被配置为具有麦克风)时,则媒体设备110可以将音频校准数据发送至媒体系统100、200和/或300中的各个回放设备。当传感器设备140能检测声音和图像时,媒体设备110可以根据回放设备的输出能力选择音频或视频校准数据。例如,视频校准数据可以被发送至具有显示器的回放设备。音频校准数据可以被发送至具有扬声器的回放设备。在通过回放信道向回放设备发送校准数据时,媒体设备110可以记录校准数据通过回放信道被发送的本地系统时间(例如,利用媒体设备110的系统时钟)。当回放设备接收到校准数据时,回放设备可以呈现校准数据(例如,利用回放设备的显示器或扬声器)。

在步骤606,传感器设备140可以检测回放设备所呈现的校准内容并记录检测时间。例如,在处于校准模式中时,传感器设备140的一个或多个校准传感器可以保持启用(例如,活动、打开),使得对应于回放设备所呈现的校准内容的声音和/或图像可以被传感器设备140检测到。远程模块142可以对传感器设备140在处于校准模式中时所检测到的声音和/或图像进行采样(例如,周期性地记录)。远程模块142可以记录每个样本被记录和/或校准数据被生成的时间。例如,传感器设备140可以记录在采样传感器数据和/或生成校准数据时传感器设备140上的当前蓝牙时钟时间或当前系统时间。当系统时钟在传感器设备140上不可用时,传感器设备140可以记录当前蓝牙时间。

在步骤608,传感器设备140可以发送校准数据至媒体设备110。例如,远程模块142可以发送当前采样周期的校准数据至媒体设备140。

在一些具体实施中,步骤606和步骤608可以当在校准模式中时被反复执行。例如,远程模块142可以周期性地(例如,每50毫秒、每一秒等)对传感器设备140上的校准传感器(例如,麦克风、相机等)所生成的数据进行采样,存储传感器数据(例如,所检测到的校准数据),记录当前样本的当前时间,以及将当前样本和当前时间发送至媒体设备110以用于进行分析。当在校准模式中时,远程模块142可以迭代通过多个采样周期。因此,远程模块142可以发送校准数据的多个实例至媒体设备110上的媒体模块112。

在步骤610,媒体设备110可以基于校准数据和校准内容的传输时间来计算传播延迟。例如,媒体模块112可以分析校准数据的每个实例以确定校准数据的哪个实例或哪些实例(当多个回放信道被校准时)包括校准片断(例如,音频和/或视频校准图案)。当媒体模块112标识包括校准片断的校准数据的实例时,媒体模块112可以确定校准数据(例如,所采样的传感器数据)的校准片断被回放设备呈现和/或被传感器设备140接收的时间。例如,可以通过将采样偏移加到校准数据中所指示的时间(例如,采样时间)来确定校准片断被呈现的时间。然后,媒体模块112可以基于校准片断的校准偏移来确定校准内容被回放设备呈现的时间(例如,呈现时间),如上所述。然后,媒体模块112可以基于校准内容的传输时间与校准片断的呈现时间之间的差值来计算传播延迟。例如,媒体模块112可以从基于校准数据确定的呈现时间减去在校准内容118通过回放信道被发送至回放设备时所记录的传输时间。

在步骤612,媒体设备110可以基于为回放信道确定的回放延迟来调节回放信道在发送用于回放的媒体内容时的传输延时。例如,媒体模块112可以将回放信道的呈现延迟与为其他回放信道计算的呈现延迟进行比较,并且调节每个回放信道的回放延时(例如,延迟发送媒体内容的时间量)以适应具有最长呈现延迟的回放信道。例如,如果回放信道126具有5秒的呈现延迟,并且回放信道162具有2秒的回放延迟,则媒体模块112可以在回放信道126上发送媒体内容之后延迟3秒在回放信道162上发送相同媒体内容,使得媒体内容将被与每个回放信道相关联的回放设备同时呈现。

图7是用于基于媒体设备所确定的接收时间和在传感器设备和媒体设备之间传输数据的飞行时间来校准媒体回放信道以用于同步呈现的示例性过程700的流程图。例如,过程700可以由上文所述的媒体系统400执行。过程700可以被执行以确定媒体系统400中每个回放信道(例如,包括回放设备)的传播延迟。然后,为每个回放信道确定的传播延迟可以被媒体设备110用于调节媒体内容通过每个回放信道的传输时间,使得媒体内容在所有回放设备上以同步方式呈现。

在步骤702,媒体设备110可以使媒体设备110和传感器设备140进入校准模式。例如,媒体模块112可以接收指示用户希望校准媒体系统400的显式用户输入。所述用户输入可以由媒体模块112通过与媒体设备110相关联的遥控器(例如,传感器设备140)接收。

在一些具体实施中,媒体设备112可以检测用户何时激活传感器设备140上的传感器(例如,麦克风、相机等)并利用这个机会(例如,无需显式用户输入)来校准媒体系统400。例如,用户可以启用传感器设备140上的麦克风以向媒体模块112提供语音输入。媒体模块112可以从传感器设备140接收指示麦克风活动或打开的消息,并且使媒体模块112和远程模块142进入校准模式。因此,媒体模块112可以伺机在用户启用传感器设备140上的校准传感器(例如,麦克风、相机等)时使媒体模块112和远程模块142进入校准模式。

在一些具体实施中,媒体模块112可以周期性地校准媒体系统400。例如,媒体模块可以反复周期性地(例如,每天、每周等)校准媒体系统400。如果媒体模块112最近还没有校准媒体系统400,则媒体模块112可以在所配置的周期结束时自动进入校准模式并发送通知至传感器设备140以使传感器设备140进入校准模式。例如,传感器设备140的用户可以与通知进行交互以允许远程模块142进入校准模式并激活传感器设备140上的校准传感器(例如,麦克风、相机等),如上所述。

在步骤704,媒体设备110可以通过回放信道向回放设备发送校准内容并记录传输时间。例如,媒体模块112可以确定传感器设备140的传感器能力(例如,声音传感器-麦克风、图像传感器-相机等)。媒体模块112可以确定媒体系统400中回放设备的媒体呈现能力(例如,仅音频、音频和视频等)。媒体模块112可以基于所确定的传感器设备140和回放设备的能力来选择发送至每个回放信道上的每个回放设备的校准内容。例如,当传感器设备140只能检测声音(例如,仅被配置为具有麦克风)时,则媒体模块112可以将音频校准数据发送至媒体系统400中的各个回放设备。

当传感器设备140能检测声音和图像时,媒体模块112可以根据回放设备的输出能力来选择音频或视频校准数据。例如,视频校准数据可以被发送至具有显示器的回放设备。音频校准数据可以被发送至具有扬声器的回放设备。在通过回放信道向回放设备发送校准数据时,媒体模块112可以记录校准数据通过回放信道被发送的本地系统时间(例如,利用媒体设备110的系统时钟)。当回放设备接收到校准数据118时,回放设备可以利用回放设备的显示器或扬声器呈现校准数据118。

在步骤706,传感器设备140可以检测回放设备所呈现的校准内容并记录检测时间。例如,在处于校准模式中时,传感器设备140的一个或多个校准传感器可以保持启用(例如,活动、打开),使得对应于回放设备所呈现的校准内容的声音和/或图像可以被传感器设备140检测到。远程模块142可以对传感器设备140在处于校准模式中时所检测到的声音和/或图像进行采样(例如,周期性地记录)。在媒体系统400的示例中,远程模块142将不记录每个样本被记录和/或校准数据被生成的时间,因为远程模块142不具有对传感器设备140上的时钟的访问权限。

在步骤708,传感器设备140可以发送校准数据至媒体设备110。例如,远程模块142可以发送当前采样周期的校准数据至媒体设备140。

在一些具体实施中,步骤706和步骤708可以当在校准模式中时被反复执行。例如,远程模块142可以周期性地(例如,每50毫秒、每一秒等)对传感器设备140上的校准传感器(例如,麦克风、相机等)所生成的数据进行采样,存储传感器数据(例如,所检测到的校准数据),记录当前样本的当前时间,以及将当前样本和当前时间发送至媒体设备110以用于进行分析。当在校准模式中时,远程模块142可以迭代通过多个采样周期。因此,远程模块142可以发送校准数据的多个实例至媒体设备110上的媒体模块112。

在步骤710,媒体设备110可以确定媒体设备从传感器设备140接收校准数据的时间。例如,当媒体设备110接收到校准数据时,媒体模块112可以从媒体设备110上的系统时钟获取当前系统时间,并将当前系统时间存储为校准数据的接收时间。

在步骤712,媒体设备110可以基于传输时间、校准数据、校准数据的接收时间、以及传感器设备140与媒体设备110之间的传输飞行时间来计算传播延迟。例如,媒体模块112可以分析校准数据的每个实例以确定校准数据的哪个实例或哪些实例(当多个回放信道被校准时)包括校准片断(例如,音频和/或视频校准图案)。当媒体模块112标识包括校准片断的校准数据的实例时,媒体模块112可以确定校准数据(例如,所采样的传感器数据)的校准片断被回放设备呈现和/或被传感器设备140接收的时间。例如,可以通过将采样偏移加到在校准数据中的样本被捕获的时间(例如,采样时间)来确定校准片断被呈现的时间。可以通过从在步骤710确定的校准数据接收时间减去飞行时间值(例如,对应于为消息从传感器设备140行进到媒体设备110所估计的时间量)来估计这个采样时间。然后,媒体模块112可以基于校准片断的校准偏移来确定校准内容被回放设备呈现的时间(例如,呈现时间)(例如,从校准片断被呈现的时间减去校准偏移),如上所述。然后,媒体模块112可以基于校准内容的传输时间与校准片断的呈现时间之间的差值来计算传播延迟。例如,媒体模块112可以从基于校准数据确定的呈现时间减去在校准内容118通过回放信道被发送至回放设备时所记录的传输时间。

在步骤714,媒体设备110可以基于为回放信道确定的回放延迟来调节回放信道在发送用于回放的媒体内容时的传输延时。例如,媒体模块112可以将回放信道的呈现延迟与为其他回放信道计算的呈现延迟进行比较,并且调节每个回放信道的回放延时(例如,延迟发送媒体内容的时间量)以适应具有最长呈现延迟的回放信道。例如,如果回放信道126具有5秒的呈现延迟,并且回放信道162具有2秒的回放延迟,则媒体模块112可以在回放信道126上发送媒体内容之后延迟3秒在回放信道162上发送相同媒体内容,使得媒体内容将被与每个回放信道相关联的回放设备同时呈现。

图形用户界面

本公开在上文描述了用于实现各种特征、过程或工作流的各种图形用户界面(GUI)。这些GUI可被呈现在各种电子设备上,包括但不限于膝上型计算机、台式计算机、计算机终端、电视系统、平板电脑、电子书阅读器和智能电话。这些电子设备中的一者或多者可包括触敏表面。触敏表面可处理多个同时的输入点,包括处理与每个输入点的压力、程度或位置相关的数据。此类处理可促进利用多个手指所进行的手势,该手势包括捏合和轻扫。

当本公开指“选择”GUI中的用户界面元素时,这些术语被理解为包括在用户界面元素上方利用鼠标或其他输入设备来点击或“悬停”,或利用一个或多个手指或触笔来在用户界面元素上触摸、轻敲或做手势。用户界面元素可以是虚拟按钮、菜单、选择器、开关、滑动条、刷子、旋钮、缩略图、链接、图标、单选框、复选框和用于从用户接收输入或向用户提供反馈的任何其他机构。

隐私

本公开认识到在本公开的技术中使用个人信息数据可用于使用户受益。例如,个人信息数据(例如,所检测到的音频和/或视频校准数据的样本)可以被用于校准回放设备,使得音频和/或视频数据可以在不同回放设备上以同步方式呈现。因此,使用此类个人信息数据使得能够对所呈现的音频和/或视频内容进行有计划的控制。虽然在一些情况下,用户的语音和/或传感器设备附近的其他声音可能在对音频和/或视频校准数据进行采样时被记录,但本文所述的系统通过仅响应于用户输入指示此类音频和/或视频检测传感器(例如,相机、麦克风等)应被激活、启用或打开而记录和/或检测音频/视频数据来保持和保护用户的隐私。因此,在本文所述的特定校准过程之外,本文所述的技术不被配置为在没有用户知情和/或同意的情况下记录音频和/或视频数据。

本公开还设想负责此类个人信息数据的收集、分析、公开、传输、存储或其他用途的实体将遵守已确立的隐私政策和/或隐私做法。具体地,此类实体应当实行并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。例如,来自用户的个人信息应当被收集用于实体的合法且合理的用途,并且不在这些合法用途之外共享或出售。另外,此类收集应当仅在用户知情同意之后进行。另外,此类实体应采取任何所需的步骤,以保障和保护对此类个人信息数据的访问,并且确保能够访问个人信息数据的其他人遵守他们的隐私政策和程序。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。

不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,就广告递送服务而言,本公开的技术可被配置为在注册服务期间允许用户选择“加入”或“退出”参与对个人信息数据的收集。又如,用户可选择不为目标内容递送服务提供位置信息。再如,用户可选择不提供精确的位置信息,但准许传输位置区域信息。

示例性系统架构

图8为可实现图1至图7的特征和过程的示例性计算设备800的框图。计算设备800可包括存储器接口802、一个或多个数据处理器、图像处理器和/或中央处理单元804以及***设备接口806。存储器接口802、一个或多个处理器804和/或***设备接口806可以是独立部件,或者可集成在一个或多个集成电路中。计算设备800中的各种部件可由一条或多条通信总线或信号线耦接。

传感器、设备和子系统可耦接到***设备接口806以促成多个功能。例如,运动传感器810、光传感器812和接近传感器814可耦接到***设备接口806以促进取向、照明和接近功能。其他传感器816也可连接到***设备接口806,诸如全球导航卫星系统(GNSS)(例如,GPS接收器)、温度传感器、生物识别传感器、磁力仪或其他感测设备,以促进相关功能。

可利用相机子系统820和光学传感器822(例如,电荷耦合设备(CCD)或互补金属氧化物半导体(CMOS)光学传感器)来促进相机功能,诸如拍摄照片和视频剪辑。相机子系统820和光学传感器822可用于收集要在认证用户期间使用的用户的图像,例如,通过执行面部识别分析。

可通过一个或多个无线通信子系统824来促进通信功能,该无线通信子系统可包括射频接收器和发射器和/或光学(例如,红外)接收器和发射器。通信子系统824的具体设计与实现可取决于计算设备800旨在通过其操作的一个或多个通信网络。例如,计算设备800可包括被设计用于通过GSM网络、GPRS网络、EDGE网络、Wi-Fi或WiMax网络以及BluetoothTM网络操作的通信子系统824。具体地讲,无线通信子系统824可包括主机协议,使得设备100可被配置为其他无线设备的基站。

音频子系统826可耦接到扬声器828和麦克风830以促进支持语音的功能,诸如讲话者识别、语音复制、数字记录和电话功能。音频子系统826可被配置为促进例如处理语音命令、声纹鉴别和语音认证。

I/O子系统840可包括触摸表面控制器842和/或一个或多个其他输入控制器844。触摸表面控制器842可耦接到触摸表面846。触摸表面846和触摸表面控制器842可例如使用多种触敏技术的任何一种检测接触及其运动或中断,触敏技术包括但不限于电容性、电阻性、红外和表面声波技术,以及用于确定与触摸表面846的一个或多个接触点的其他接近传感器阵列或其他元件。

一个或多个其他输入控制器844可耦接到其他输入/控制设备848,诸如一个或多个按钮、摇臂开关、拇指滚轮、红外端口、USB端口和/或指针设备诸如触笔。一个或多个按钮(未示出)可包括用于扬声器828和/或麦克风830的音量控制的增大/减小按钮。

在一种具体实施中,将按钮按下第一持续时间能够解除触摸表面846的锁定;并且将按钮按下比第一持续时间长的第二持续时间能够打开或关闭计算设备800的电源。将按钮按下第三持续时间能够激活使用户能够向麦克风830中说出命令以使得设备执行所说的命令的语音控制或语音命令模块。用户能够自定义一个或多个按钮的功能。例如,还可以使用触摸表面846来实现虚拟或软按钮和/或键盘。

在一些具体实施中,计算设备800可呈现记录的音频和/或视频文件,诸如MP3、AAC和MPEG文件。在一些具体实施中,计算设备800可包括MP3播放器的功能,诸如iPodTM

存储器接口802可耦接到存储器850。存储器850可包括高速随机存取存储器和/或非易失性存储器,诸如一个或多个磁盘存储设备、一个或多个光学存储设备和/或闪存存储器(例如,NAND、NOR)。存储器850可存储操作系统852,诸如Darwin、RTXC、LINUX、UNIX、OS X、WINDOWS或嵌入式操作系统诸如VxWorks。

操作系统852可包括用于处理基础系统服务以及用于执行硬件相关任务的指令。在一些具体实施中,操作系统852可以是内核(例如,UNIX内核)。在一些具体实施中,操作系统852可包括用于执行语音认证的指令。例如,操作系统852可实现参考图1至图7所述的媒体系统校准特征。

存储器850还可存储通信指令854以促进与一个或多个附加设备、一个或多个计算机和/或一个或多个服务器的通信。存储器850可包括促进图形用户界面处理的图形用户界面指令856;促进与传感器相关的处理及功能的传感器处理指令858;促进与电话相关的过程和功能的电话指令860;促进与电子消息处理相关的过程和功能的电子消息指令862;促进与网页浏览相关的过程和功能的网页浏览指令864;促进与媒体处理相关的过程和功能的媒体处理指令866;促进与GNSS和导航相关的过程和指令的GNSS/导航指令868;和/或促进与相机相关的过程和功能的相机指令870。

存储器850可存储促进其他过程和功能的其他软件指令872,诸如参考图1至图7所述的媒体系统校准过程和功能。

存储器850还可存储其他软件指令874,诸如促进与Web视频相关的过程和功能的Web视频指令;和/或促进与网络购物相关的过程和功能的网络购物指令。在一些具体实施中,媒体处理指令866分为音频处理指令和视频处理指令,分别用于促进与音频处理相关的过程和功能以及与视频处理相关的过程和功能。

上面所识别的指令和应用程序中的每一者可对应于用于执行上述一个或多个功能的指令集。这些指令不需要作为独立的软件程序、进程或模块来实现。存储器850可包括附加指令或更少的指令。此外,可在硬件和/或软件中,包括在一个或多个信号处理和/或专用集成电路中实现计算设备800的各种功能。

示例性实施方案

一些实施方案可包括一种方法,该方法包括:传感器设备检测第一回放设备所呈现的校准内容的一部分,校准内容的所述一部分在基于媒体设备处的第一时钟所确定的传输时间从媒体设备传输至第一回放设备;传感器设备生成校准数据,该校准数据包括所检测到的校准内容的所述一部分和指示校准内容的一部分何时被传感器设备检测到的检测时间,该检测时间是基于传感器设备上的第二时钟来确定的;传感器设备将校准数据发送至媒体设备,其中媒体设备基于传输时间、所检测到的校准内容的一部分和在校准数据中指示的检测时间来计算传播延迟值。

该方法可包括其中第一时钟为系统时钟并且第二时钟为蓝牙时钟的实施方案。该方法可包括其中第一时钟和第二时钟分别为媒体设备和传感器设备的系统时钟的实施方案。该方法可包括其中校准内容包括第一媒体片段、之后为校准媒体片段、之后为第二媒体片段的实施方案。该方法可包括其中校准内容为音频内容的实施方案。该方法可包括其中校准内容为视频内容的实施方案。该方法可包括其中传感器设备为用于远程***体设备的遥控设备的实施方案。

一些实施方案可包括一种系统,该系统包括:多个计算设备,包括媒体设备、传感器设备;和多个非暂态计算机可读介质,该多个非暂态计算机可读介质包括一个或多个指令序列,该指令序列当被计算设备执行时使得计算设备执行操作,该操作包括:媒体设备向与第一回放信道相关联的第一回放设备发送校准内容;媒体设备存储指示校准内容何时被发送至第一回放设备的传输时间,该传输时间是基于媒体设备上的第一时钟来确定的;传感器设备检测第一回放设备所呈现的校准内容的一部分;传感器设备生成校准数据,该校准数据包括所检测到的校准内容的一部分和指示校准内容的一部分何时被检测到的检测时间,该检测时间是基于传感器设备上的第二时钟来确定的;传感器设备向媒体设备发送校准数据;媒体设备基于传输时间、所检测到的校准内容的一部分和在校准数据中指示的检测时间来计算传播延迟值。

该系统可包括其中第一时钟为系统时钟并且第二时钟为蓝牙时钟的实施方案。该系统可包括其中第一时钟和第二时钟分别为媒体设备和传感器设备的系统时钟的实施方案。该系统可包括其中校准内容包括第一媒体片段、之后为校准媒体片段、之后为第二媒体片段的实施方案。该系统可包括其中校准内容为音频内容的实施方案。该系统可包括其中校准内容为视频内容的实施方案。该系统可包括其中校准媒体片段与时间偏移相关联、并且其中指令使得计算设备执行包括如下的操作的实施方案:媒体设备基于传输时间、检测时间和校准媒体片段的时间偏移来计算传播延迟值。

一些实施方案可包括一种媒体设备,该媒体设备包括:一个或多个处理器;和包括一个或多个指令序列的非暂态计算机可读介质,该指令序列当被一个或多个处理器执行时使得处理器执行操作,该操作包括:媒体设备向与第一回放信道相关联的第一回放设备发送校准内容;媒体设备存储指示校准内容何时被发送至第一回放设备的传输时间,该传输时间是基于媒体设备上的第一时钟来确定的;媒体设备从传感器设备接收校准数据,该校准数据包括由第一回放设备呈现并由传感器设备检测到的校准内容的一部分;媒体设备确定指示校准内容何时被媒体设备接收的接收时间,该接收时间是基于媒体设备上的第一时钟来确定的;以及媒体设备基于传输时间、接收时间、所检测到的校准内容的一部分以及表示消息在被传感器设备发送之后在媒体设备处被接收所花费的时间量的飞行时间值来计算传播延迟值。

该媒体设备可包括其中校准内容包括第一媒体片段、之后为校准媒体片段、之后为第二媒体片段的实施方案。该媒体设备可包括其中校准内容为音频内容的实施方案。该媒体设备可包括其中校准内容为视频内容的实施方案。该媒体设备可包括其中指令导致包括如下的操作的实施方案:基于接收时间和飞行时间值来确定校准内容的一部分的检测时间。该媒体设备可包括其中校准媒体片段与时间偏移相关联、并且其中所述指令导致包括如下的操作的实施方案:媒体设备基于传输时间、检测时间和校准媒体片段的时间偏移来计算传播延迟值。

30页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:视频流推荐方法、电子设备和存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类