CN101809906B - 同步互连网络中的相关数据流 - Google Patents
同步互连网络中的相关数据流 Download PDFInfo
- Publication number
- CN101809906B CN101809906B CN200880105208.2A CN200880105208A CN101809906B CN 101809906 B CN101809906 B CN 101809906B CN 200880105208 A CN200880105208 A CN 200880105208A CN 101809906 B CN101809906 B CN 101809906B
- Authority
- CN
- China
- Prior art keywords
- packet
- timestamp
- receiving
- time
- receiving equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2365—Multiplexing of several video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
- H04N21/43072—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4347—Demultiplexing of several video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43615—Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44231—Monitoring of peripheral device or external card, e.g. to detect processing problems in a handheld device or the failure of an external recording device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Abstract
一种用于同步互连网络中的相关数据流的方法和装置。一种装置的一些实施例包括用于向第二装置发送数据流的发送器,其中该发送器向该第二装置发送数据分组。该装置还包括时钟,该装置在发送数据分组时使用时钟来向该数据分组提供第一时间戳。该装置包括从第二装置接收响应的接收器,该装置在从该第二装置接收到所返回的分组时提供第二时间戳,所返回的分组包含该第二装置接收到和发送该分组时的时间戳。该装置包括指导该装置的操作的网络单元,该网络单元至少部分地基于该分组的各个时间戳来确定第二装置解码数据流的开始时间。
Description
技术领域
本发明的各实施例一般涉及网络领域,并且更具体地涉及用于同步互连网络中的相关数据流的方法和装置。
背景
网络可包括诸如个人电子娱乐媒体等多个设备的互连。在这样的网络中,互连设备可以共享数据,包括共享相关数据流。发送设备可包括要被流传输到多个设备的数据。在一个示例中,发送设备可以是包含要被流传输以供一个或多个显示设备进行显示或用于其他用途的媒体数据(如运动图片或其他音频视频数据)集合或有权访问该集合的设备,显示设备可能包括用于显示视频的屏幕、用于产生音频的扬声器、或两者。为简化术语,对流传输数据的任何使用都指的是对这一数据的“显示”,并且利用这一数据的设备指的是“显示设备”或“接收设备”。
在这样的网络中,存在对数据的显示进行同步的需求。同步质量将取决于对这一数据的使用和接收者对不匹配的显示的敏感度。这一环境内的常见场景是从单个源向具有同步它们的显示的需求的多个目的地传递多个媒体流。如果接收设备正在显示媒体数据并且各显示器在彼此的视觉或听觉范围内,则可以要求同步足够接近以使人类观看者或收听者不能检测出各显示设备之间的显示时间差异。
例如,视频服务器可以向将流发送到音频接收机以供环绕立体声解码并将流发送到分开的数字电视机以供视频显示。在这种情况下,在设备之间必须维持正确的嘴唇同步以进行正确的显示。第二示例是将同一媒体流分发给多个数字电视机。在这种情况下,针对每一个流的音频和视频解码可以在单个设备内完成,这将为设备确保正确地嘴唇同步,但多个显示器必须彼此协调以确保所有流被一起同步。
然而,同步一般需要设备之间相对接近的协调和通信。该同步过程在消息收发和处理方面可能需要大量开销。诸如互连包括个人娱乐设备等低资源设备的网络等受限网络可能难以提供这样的设备间协调和通信。
发明内容
提供了一种用于同步互连网络中的相关数据流的方法和装置。
在本发明的第一方面,一种装置包括用于向第二装置发送数据流的发送器,其中该发送器向该第二装置发送数据分组。该装置还包括时钟,该装置在发送数据分组时向该数据分组提供第一时间戳。该装置在接收到从第二装置返回的分组时提供第二时间戳,所返回的分组包含第二装置接收到和发送该分组时的时间戳。一种网络单元至少部分地基于分组的各个时间戳来确定第二装置解码数据流的开始时间。
在本发明的第二方面,一种装置包括用于从第二装置接收数据流的接收器和时钟,该装置在从第二装置接收到同步分组时提供第一时间戳并在发送所返回的同步分组时提供第二时间戳。该装置包括保持数据流的数据的缓冲区,在来自第二装置的数据流的开始时间到达时该缓冲区开始流出数据。该装置还包括用于解码数据流的解码器。
在本发明的第三方面,一种用于同步相关数据流的方法包括准备分组来发送到第一接收设备,其中该第一接收设备接收相关数据流的至少第一数据流。在发送分组时提供第一时间戳并且在接收到返回分组时提供第二时间戳,其中所返回的分组还包括第一接收设备接收该分组时的时间戳和第一接收设备发送所返回的分组时的时间戳。第一接收设备的第一开始时间是至少部分地基于该分组的各个时间戳和所返回的分组的各个时间戳来确定的。
附图简述
本发明的各实施例在各附图中是作为示例而非作为限制示出的,在附图中相同的附图标记指代相同的元素。
图1是传递到多个接收设备的数据流的实施例的图示;
图2是用于确定相位关系的过程的实施例的图示;
图3示出在某些实施例中接收设备所提供来用于同步的数据;
图4提供示出供发送器来同步相关数据流的过程的实施例的流程图;
图5提供示出供接收器来同步相关数据流的过程的实施例的流程图;
图6是娱乐网络的实施例的图示;
图7是网络设备的实施例的图示;以及
图8是网络设备的各组件的实施例的图示。
详细描述
本发明的各实施例一般针对同步互连网络中的相关数据流。
如此处所使用的,“相关数据流”指的是以任何方式彼此相关的同一数据流或不同数据流的多个版本。在一个示例中,定向到多个显示设备的单个视频数据流将提供相关数据流。在第二示例中,定向到同一或不同显示设备的视频数据流和音频数据流构成将提供相关数据流。
如此处所使用的,“娱乐网络”指的是用于在设备之间传递媒体内容(包括音乐、音频/视频、游戏、照片、以及其他)的互连网络。娱乐网络可包括个人娱乐网络(如家庭中的网络)、商业环境中的娱乐网络、或娱乐设备的任何其他网络。在这样的网络中,某些网络设备可以是媒体内容的源,如数字电视调谐器、有线电视机顶盒、视频存储服务器、和其他源设备。其他设备可以显示或使用媒体内容,如数字电视机、家庭影院系统、音频系统、游戏系统、以及其他设备。此外,某些设备意在存储或传输媒体内容,如视频和音频存储服务器。某些设备可以执行多种媒体功能。在某些实施例中,各网络设备可以共同位于单个局域网中。在其他实施例中,各网络设备可以跨多个网络段,如通过局域网之间的隧道。娱乐网络可包括多个数据编码和加密过程。
在某些实施例中,同步网络中的多个相关数据流。在某些实施例中,通过确定发送和每一接收设备之间的相位差并且至少部分地基于适用的相位差调整每一接收设备的操作来同步数据流。在某些实施例中,发送设备与接收设备之间的相位差是至少部分地通过向接收设备发送数据分组并接收所返回的数据分组并且利用所收集的数据分组的时间戳数据来确定的。在某些实施例中,数据流的同步还利用关于接收设备操作的信息。
在某些实施例中,提供了一种过程,该过程用于维持流同步以使质量足以供人类使用或操作同时最小化该过程的复杂度。在某些实施例中,提供允许其在低资源设备内实现的同步过程,如单片解决方案。
图1是传递到多个接收设备的数据流的实施例的图示。在该图示中,网络105可包括多个设备,并且相关数据流可以在这些设备之间传输。该数据流可包括但不限于媒体数据。例如,存在对发送设备向诸如接收设备A115、接收设备B120、以及接收设备C125等多个接收设备传递特定一个或多个数据流130的请求。在一个示例中,该一个或多个数据流130可以是要在多个位置显示的音频视频数据流,或可包括要一起显示的音频流和视频流。如果这些位置足够接近使得可由一个人观察到,则这个人将注意到这些显示是否同步。。然而,这些设备可能不同,并且到每一设备的距离可能不同。出于这一原因,接收设备之间通常存在未知大小的相位差。在某些实施例中,一种过程或系统允许同步每一接收设备的数据流。
在某些实施例中,一种系统可以将“推(push)模型”用于数据流传输。在某些实施例中,单个源可能正通过互连网络将媒体流传递到单个目的地。在这种情况下,涉及三个时钟域:发生器时钟、接收器时钟、以及解码器时钟。在推模型实施例中,发送器能以已知速度向接收器发送媒体流而不考虑其他设备(从而将数据推给接收器),同时不从接收器要求反馈。接收器维护用于传入流的缓冲区来承受通过网络的可变等待时间并将该流数据转发到解码器,解码器恢复来自该流的时钟并经由标准PLL和VCO技术将其时钟锁定。这一时钟恢复是基于接收器向解码器传递流数据的速度的,传递速度又是基于流速度和接收器的本地时钟的。
在该示例中,为使解码器能够正确地恢复来自流的时钟,接收器实现“漏桶”过程或类似过程。随着流分组从网络中到达,这些分组被接收器缓冲(以承受网络抖动),并且随后根据接收器的本地时钟被以统一速度传递到解码器。因为接收器时钟会与发送器时钟不同,所以接收器周期性地调整从缓冲区流出数据的速度。没有这一调整,缓冲区最终将下溢或外溢。
在某些实施例中,可以使用标准速度匹配技术来控制从接收器缓冲区流出数据的速度,而各种技术都是可能的。在该过程中,监视缓冲区深度并应用平滑功能。随时间流逝,有效结果是接收器的时钟频率与发送器的时钟频率相匹配。这确保接收器将以发送器所确定的速度回放该流,而无需接收器与发送器之间的反馈或通信。
在某些实施例中,接收器缓冲区的大小可以因条件变化而调整。缓冲区的大小将确定可以承受的网络抖动量以及速度匹配算法有效的时间段。较大的缓冲区可以提供较好的承受网络变动的结果,但这一优点以操作中的初始等待时间为成本。因此,缓冲区大小是设计折衷。
在某些实施例中,解决诸如显示器等设备之间的相位关系。上述用于从单个源向单个目的地发送诸如媒体流等数据流的推模型允许三个时钟(发送器、接收器、以及解码器)有效地锁定到同一频率,从而确保平滑的解码和回放。如果发送器随后将同一个流(或其不同的部分)传递到多个目的地,则所有时钟的速度将以与单个目的地的情况相同的方式锁定到同一频率。因此,各个流不会随时间逐渐分开。
然而,这些设备的时钟相位会不同。具体地,取决于接收到第一个分组的时间、缓冲等待时间、以及解码器等待时间,每一个流可实时地在不同的点开始解码。在某些实施例中,提供了附加机制以确保所有相关流的接收器在同一时间开始解码。这需要确定接收器时钟与发送器时钟之间的相位偏移。
可以使用诸如NTP(网络时间协议)或以太网AV(音频视频)等时钟同步技术来将所有时钟设置成具有同一相位,但因为只有最初偏移对数据流才是重要的(因为与源的速度匹配阻止长期漂移),所以这是不必要的。在某些实施例中,通过发送器和每一接收器之间的简单定时分组交换序列来评估相位差。确定流启动时的即时相位差足以确保多个流之间的正确同步。
图2是用于确定相位关系的过程的实施例的图示。在该图示中,发送器205具有本地时钟210,接收器215具有本地时钟220。在某些实施例中,发送器205向接收器215发送分组225。发送器205根据其本地时钟210在分组225启程时插入时间戳Ts0230。在分组225到达接收器215时,根据接收器的时钟220,新时间戳Tr1235被插入到分组225中。分组225随后被发送回发送器205,并且根据接收器的本地时钟220,在分组225启程时插入第三时间戳Tr2240。最后,在分组225回到发送器205时,根据发送器的时钟210记录第四时间戳Ts3245。在某些实施例中,这些只可至少部分地用于确定两时钟之间的相位差。
现代时钟,如在网络设备中使用的时钟,是高度精确的并且与标称频率的差异通常不超过100ppm(百万分之一),这暗示了大约100微秒/秒的最大偏斜。在诸如媒体流等数据流的上下文中,该偏斜一般是不重要的并可被安全地忽略。因此,出于建立两个时钟之间的相位关系的目的,简单地假定这两个时钟的频率相同是安全的。具体地,往返延迟δ可以如下确定:
δ=(Ts3-Ts0)–(Tr2–Tr1) [1]
其中发送器的时间通过下式转换成特定接收器的时间:
在一实施例中,对相位偏移的确定是基于往返延迟δ对称的假定的。然而,实际上,网络抖动是不可预测的,并且因此相位偏移精确到一半往返延迟δ/2内。对于除紧耦合音频之外的诸如立体声等媒体流同步,人类通常发现高达80毫秒的偏斜是可以忍受的。因此,假若δ/2<80小于80毫秒,则相位偏移将产生可以接受的性能。因为在该过程中相位偏移是在发送器和每一接收器之间而非在各接收器之间确定的,所以接收器之间的最大偏斜是附加性的。因此,在往返延迟小于人类容忍阈值的一半(从而δ/2<40ms)时,各接收器之间可接受的流同步是能实现的。
在某些实施例中,利用以上信息,重复用于确定发送器和每个接收器之间的相位偏移的过程,直至往返延迟处于正确的范围内。在其中目标环境是本地网络的实现中,相位确定的重复实际上是次要约束并且只需要解决瞬时猝发或噪声。
接收器的时钟相对于发送器的相位偏移的最后分量是通过接收器处的媒体流解码器的等待时间(等待时间是媒体流解码器在转发所得数据之前持有数据分组的时间段)。例如,MPEG(运动图像专家组)解码器因其内部缓冲需求而增加附加等待时间。在某些实施例中,为将该额外延迟计算在内,接收器在其对定时分组请求的响应中包括该值。
发送器和接收器中的定时分组请求的处理开销可能是高度变化的。因此,在某些实施例中,一种系统或过程将定时分组应答器实现为具有有限且已知延迟的硬件状态机。以类似的方式,发送器处的分组进入和外出时间戳可由硬件来生成以提高时间戳的准确度。在其中对时间戳的生成不由硬件来执行的实施例中,在确定时钟之间的相位偏移时需要附加误差补偿。然而,在其中只需将误差限制在人类容忍度内(如人类对声音相位差的容忍度)的实施例中,不需要硬件支持。
在某些实施例中,知道了接收器时钟的每一个之间的相位差以及附加解码等待时间,发送器能以很大的准确度来确定何时指示接收器中的每一个开始解码它们各自的流以与该数据流的显示或其他用途相匹配。然而,一般而言,每一接收器会具有对承受网络等待时间的不同缓冲需求。在某些实施例中,发送器为接收器设置将该接收器的最大解码器等待时间计算在内的将来解码时间。
图3示出在某些实施例中接收设备所提供来用于同步的数据。在某些实施例中,与时钟时间戳和解码器等待时间一起,每一接收器在其对定时分组请求的响应中包括其缓冲区信息。这包括最小值(即最低水位)-在开始解码之前必须缓冲的最小流数据量和最大值(即最高水位)-能缓冲的最大流数据量。
例如,图3再次示出具有本地时钟120的接收器115。在某些实施例中,接收器115正在接收包含发送器所提供的发送时间戳Ts0130的分组125。在分组125到达接收器115时,根据接收器的时钟120,新时间戳Tr1135被插入到分组125中。在某些实施例中,接收器115向接收器115的解码器375提供等待时间值350(指示解码器在转发所得数据之前将持有数据分组的时间段)。在某些实施例中,接收器115还提供描述接收器115的缓冲区380的缓冲区信息360。本发明可包括最高水位365(能缓冲的最大流数据量)和最低水位(在开始解码之前必须缓冲的最小流数据量)。分组125随后被发送回发送器105,并且根据接收器的本地时钟120,在分组125启程时插入另一时间戳Tr2140。
在某些实施例中,为同步所有接收器,发送器为接收器设置初始解码时间。在某些实施例中,解码时间基于当前时间、对所有接收器都足够的网络等待时间、将所有接收器的缓冲区填充到足以开始处理的水平所需的时间、以及将所有接收器的缓冲区填充到足以允许解码器等待时间的时间。在某些实施例中,确定解码时间是当前时间加上跨所有接收器的最大往返延迟的一半(以将预期网络等待时间计算在内),加上将缓冲区填充到所有接收器的最大最低水位所花的时间,加上将缓冲区填充到所有接收器的最大解码器等待时间所花的时间。
T解码=T当前+δ最大/2+T最大最低水位+T最大解码器等待时间 [4]
等式4中,时间T解码相对于发送器的时钟来确定。该值将根据等式3来转换成每一接收器的时钟的等效时间。
如果接收器处的缓冲区支持允许,则可以加上附加初始等待时间以帮助降低误差余量。在一实施例中,如果开始时间对应于超过最高水位的缓冲区需求,则放弃该流或可以冒降低同步性能的风险来放松需求。
在某些实施例中,发送器根据每一接收器时钟来确定开始时间,其中该开始时间是从等式4求得的T解码值加上给定接收器的适当偏移:
发送器通过向每一接收器发送(根据接收器的时钟)开始时间、第一分组的序列号、以及分组速度、其后是流数据来启动数据流。在该过程中,发送器要确保流启动信息被可靠地传递到接收器,以确保正确的解码和同步。
在某些实施例中,接收数据流的每一接收器缓冲传入流,直至开始时间根据该接收器的时钟到达,并且此时接收器开始从其缓冲区中流出数据并将该流数据传递到解码器。接收器行为随后如上所述地继续进行。如果某些流数据分组在流开始时丢失,则接收器可以基于流分组速度和第一个可用序列号来确定在开始解码该流之前需要延迟多久。
图4提供示出供发送器来同步相关数据流的过程的实施例的流程图。在该图示中,接收对数据流的请求。如果相关数据流不存在多个数据接收器404,则在某些实施例中,发送器可以在无需同步的情况下开始数据流430。如果存在多个数据接收器404,则过程前进,以同步数据的解码。在该过程中,准备同步分组来发送到接收器406。将第一时间戳插入到数据分组中408并且将该数据分组发送到接收器。发送器随后从接收设备接收所返回的分组412,同时在接收到该分组时提供第二时间戳414。数据分组还包括来自接收设备的、关于该分组的到达和发送时的时间戳,并还可包括解码器等待时间信息和缓冲区信息。利用该数据,发送器可以确定接收器的往返延迟等于数据分组在发送器处的发送和到达之间的时间差减去该数据分组在接收器处的到达和发送之间的差416。如果所确定的延迟不在阈值内418,则这可指示变化的网络抖动正在引起额外延迟,并且重复确定该延迟。如果延迟在阈值内418,则基于时间戳值来确定相位偏移420。如果要解决更多接收器422,则可以重复同步过程406。否则,确定供每一接收器解码的开始时间。在一实施例中,解码时间可被确定为当前时间加上各接收设备的最大往返延迟的一半,加上各接收设备的最大最低水位的时间,加上各接收设备的最大解码器等待时间424。特定接收设备的开始时间随后被确定为通过该接收设备的偏移调整的解码时间425。如果任何接收设备的开始时间大于该接收设备的最高水位的时间(从而造成缓冲区外溢),则可采取动作来解决这一问题428,如对该特定接收设备放弃该流或降低同步要求。如果接收设备具有可以使用的开始时间或可用其他方式解决同步,则可以对每一接收设备开始数据流430。
图5提供示出供接收器来同步相关数据流的过程的实施例的流程图。在该图示中,存在着在接收器处接收数据流的请求502。如果相关数据流不存在多个数据接收器504,则在某些实施例中,该数据流可以在无需同步的情况下开始,包括缓冲接收到的数据506和在缓冲了最小数据量时将数据传递到解码器508。如果相关数据流存在多个数据接收器504,则数据接收器将从发送器接收到同步分组510。接收器在接收到分组时将第一时间戳插入到该分组中512。接收器准备将该分组返回给发送器514,并可将与该接收器的解码器的等待时间相关的信息516和与该接收器的缓冲区相关的信息518插入到该分组中。接收器在分组被发送回发送器522时插入第二时间戳520。
接收器随后接收开始数据流的指令,包括开始向解码器传递数据的开始时间524。在开始数据流后526,接收器开始缓冲接收到的数据528。缓冲528将继续,直至到达接收器的开始时间530,此时接收器开始从缓冲区532中流出数据并将该数据传递到解码器534。
图6是娱乐网络的实施例的图示。娱乐网络的各元素可在对多个设备同步相关数据流时使用。在该图示中,娱乐网络系统600向任何兼容媒体设备提供到该网络的连接。该连接被示为到娱乐网络605的连接。在某些实施例中,这些设备在网络没有中心网络服务器的情况下操作。通过该娱乐网络,媒体数据流可以在任何连接设备之间传输。另外,可以通过该网络远程地控制设备。设备可经由任何已知连接器和连接协议(包括同轴电缆、以太网电缆、和火线)以及经由Wi-Fi、蓝牙和其他无线技术的无线连接来连接到该网络。
在某些实施例中,设备可包括任何媒体源或接收者。在图6中,办公室610可以经由调制解调器622提供到网络605的因特网连接620。从因特网接收到的数据可包括任何流传输媒体源,包括但不限于,所购买的音频文件(如下载的音乐文件)、视频文件(如电影、电视、以及其他)、以及计算机游戏。办公室610还可连接到利用监视器626的个人计算机624,监视器626除其他功能之外可显示某些媒体流或操作某些计算机游戏。
娱乐网络还可与卧室612中的设备相连接,这些设备例如包括向电视机632提供数据的机顶盒630。另外,卧室(或任何其他地方)可包含媒体存储单元628。媒体存储单元628可从连接到网络605的任何源接收数据并可向连接到网络605的任何数据接收者提供数据。媒体存储单元628可包含用于该网络的任何类型的媒体流数据。
该系统还可包括接收来自例如电缆或光纤系统634或圆盘式卫星天线网络636的输入的客厅614。来自这些源的媒体输入可被提供给连接到网络605的机顶盒638和第二电视机640。视频游戏单元642同样连接到网络605以在客厅电视机640上显示。可以存在具有连网设备的任何数量的其他房间,如包含连接到网络605的第三电视机644的厨房。其他网络设备也可存在,包括但不限于,可包括遍布房屋的扬声器的立体声音频系统。
另外,任何数量的移动个人电子设备可连接到该网络。这些设备可经由电缆或经由无线信号连接,包括但不限于蓝牙、Wi-Fi、红外、或其他类似无线通信协议。每一这样的协议需要到该网络的接口(其在图6中未示出),如Wi-Fi基站。这样的移动个人电子设备可包括数字照相机646、蜂窝电话648、个人音乐设备650、或摄像机652。另外,当汽车654靠近网络605时(如当在房屋的车库中时),该汽车中包含的移动系统可连接到该网络。在移动个人电子设备处于该网络的范围内时,其可例如自动地连接到该网络。一旦连接,这些设备可用于通过该网络获取数据或向该网络提供数据,包括向这些设备的可能的自动更新或下载。在一个示例中,用户能够通过该网络访问移动电子设备中的任何一个所包含的数据,如经由机顶盒640在客厅电视机638上访问存储在数字照相机646上的照片。在某些实施例中,图6中示出的网络设备是设计为具有有限的网络处理和缓冲能力的低资源设备。
图7是网络设备的实施例的图示。在某些实施例中,网络设备705是具有至少一个物理网络接口(如以太网MAC地址)的实体。如图7所示,该网络设备包括两个网络接口710和715。在某些实施例中,网络设备因此是物理实体。在某些实施例中,网络设备包括一个或多个代理,每一代理是驻留在网络设备上的逻辑实体。网络设备上可存在多个代理。例如,图7示出网络设备705,网络接口710经由通信管理器720提供对代理730、735和740的访问以及经由通信管理器725提供对代理745和750的访问,并且网络接口715经由通信管理器728提供对代理755和760的访问。在某些实施例中,独立于网络设备IP地址并跨设备复位操作,向每一代理分配全局唯一标识符来将其与其他代理区分开。以此方式,旨在针对代理755的命令可寻址到该代理的唯一地址,并且该消息随后通过网络接口715定向到代理755。
在某些实施例中,代理担当网络设备内的通信端点并且提供特定一组能力和相关联的行为。代理可包括媒体源、媒体宿、媒体控制器、以及其他元件。在一个示例中,代理可以提供视频流服务。在该示例中,该代理响应于各个消息来查询和控制媒体流,并且在被指示时,该代理可自治地将媒体流传递给另一代理。在某些实施例中,在任何时刻代理都具有仅仅一个活动的媒体会话,从而允许相对简单的操作。由于代理可以发送和接收消息、响应于这些消息来修改内部状态、并且具有执行持续动作作为副作用的能力,所以该代理可被看作、可被描述为担当活动对象。
在某些实施例中,代理可通过通信管理器来在娱乐网络上通信。在某些实施例中,每个设备可有一个或多个通信管理器,如图7中的通信管理器720、725和730。在某些实施例中,多个代理可由单个通信管理器来管理,如代理730、735和740由通信管理器720来管理。在某些实施例中,通信管理器负责路由进出绑定到该通信管理器的代理的消息。该过程可包括向同一网络设备本地的其他代理传递消息,将来自各个代理的消息复用在到远程网络设备上的代理的外出连接上,并处理广播请求。在某些实施例中,代理可只绑定到一个通信管理器,并且通信管理器可只绑定到一个网络接口。
在某些实施例中,显示器管理器是管理显示设备上的资源的代理。具体地,显示器管理器负责授予对显示资源和屏幕几何的访问。在某些实施例中,每一显示设备对于每一相关的I/O设备集合(如视频输出、图形输出、音频输出、以及用户输入)只具有一个显示器管理器。在某些实施例中,代理与会话管理器一起工作来协调媒体内容在显示设备上的传递和显示,从而授予对显示设备资源的访问。在某些实施例中,显示器管理器表示用户会话的起始点和对会话管理器的委托控制。
在某些实施例中,会话管理器是为活动用户协调媒体内容集合的代理。在某些实施例中,一旦选择,会话管理器就发起与对应的显示器管理器的远程屏上(on-screen)显示会话,并开始执行管理网络中的其他设备的应用程序。在某些实施例中,显示器管理器向会话管理器转发输入事件并授予对其显示资源的访问权限,会话管理器可将该显示资源委托给其他代理,从而允许其他代理将内容传递给显示器。在一个示例中,显示管理器可以向在机顶盒内执行的会话管理器授予访问权限。会话管理器可发起与该显示器的远程UI(用户界面)会话,并允许网络设备的用户选择要从远程视频存储设备播放的视频。在某些实施例中,会话管理器可将访问权限传递给视频服务器,并指导视频服务器将媒体流传送到显示器。在某些实施例中,会话管理器维护管理用户在利用媒体内容时的体验所必需的状态。
图8是网络设备的各组件的实施例的图示。在该图示中,网络设备805可以是娱乐网络中的任何设备,包括但不限于图6中示出的设备。例如,该网络设备可以是电视机、机顶盒、存储单元、游戏控制台、或其他媒体设备。在某些实施例中,网络设备805包括提供网络功能的网络单元810。网络功能包括但不限于生成、传送、存储、和接收媒体数据流。网络单元810可被实现为单个片上系统(SoC)或被实现为多个组件。
在某些实施例中,网络单元810包括用于处理数据的处理器。对数据的处理可包括生成媒体数据流,操纵数据流来传送或存储,以及解密和解码数据流来使用。网络设备还可包括支持网络操作的存储器,如DRAM(动态随机存取存储器)820或其他类似存储器和闪存825或其他非易失性存储器。
网络设备805还可包括经由一个或多个网络接口855分别用于在网络上发送数据或从网络接收数据的发送器830和/或接收器840。发送器830或接收器840可以连接到有线传输电缆(包括例如以太网电缆850)或连接到无线单元。发送器830或接收器840可以用一条或多条线,如用于数据发送的线835和用于数据接收的线845,耦合到网络单元810来用于数据传输和控制信号。还可以存在附加连接。网络设备805还可包括用于该设备的媒体操作的多个组件,它们在此未示出。
在以上描述中,出于说明目的阐述了众多具体细节以便提供对本发明的全面理解。然而,对本领域技术人员将显而易见的是,没有这些具体细节也可实践本发明。在其他情况下,公知结构和设备以框图的形式示出。在所示组件之间可能有中间结构。此处所描述或示出的各组件可具有未示出或描述的附加输入或输出。
本发明可包括各种过程。本发明的过程可由硬件组件来执行或可以用机器可执行指令来包含,这可被用于使得用这些指令编程的通用或专用处理器或逻辑电路执行这些过程。或者,这些过程可由硬件和软件的组合来执行。
本发明的各部分可以作为计算机程序产品来提供,计算机程序产品可包括其上存储有计算机程序指令的计算机可读介质,计算机程序指令可被用来对计算机(或其他电子设备)进行编程来执行根据本发明的过程。机器可读介质可包括,但不限于,软盘、光盘、CD-ROM(压缩盘只读存储器)、以及磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪存、或适于存储电子指令的其它类型的介质/机器可读介质。此外,本发明还可作为计算机程序产品来下载,其中该程序可以从远程计算机传送到作出请求的计算机。
许多方法是以其最基本的形式来描述的,但可以向这些方法中的任一个添加或从中删除各个过程并且可以向所描述的消息中的任一个添加或从中减去信息,而不背离本发明的基本范围。对本领域技术人员而言显而易见的是,还可以作出许多修改和改编。各具体实施例不是为了限制本发明而是为了说明本发明来提供的。本发明的范围不是由以上提供的各具体示例来确定的,而是仅由所附权利要求书来确定的。
当提到元件“A”耦合至元件“B”或与其相耦合时,元件A可直接耦合至元件B,或通过例如元件C间接地耦合。当说明书或权利要求书声明组件、特征、结构、过程、或特性A“引起”组件、特征、结构、过程或特性B时,它意味着“A”至少是“B”的部分起因,但还可能有帮助引起“B”的至少一个其它组件、特征、结构、过程或特性。如果说明书指示“可”、“可能”或“可以”包括组件、特征、结构、过程或特性,则不一定必须包括该特定组件、特征、结构、过程或特性。如果说明书或权利要求引用“一”或“一个”元件,这不意味着仅有一个所描述的元件。
实施例是本发明的实现或示例。在本说明书中对“实施例”、“一个实施例”、“某些实施例”或“其他实施例”的引用意味着结合这些实施例所描述的特定特征、结构或特性被包括在至少某些实施例中,但不一定被包括在所有实施例中。“实施例”、“一个实施例”、或“某些实施例”的多次出现不一定都指代相同的实施例。应当理解,在对本发明的示例性实施例的以上描述中,出于流水线化本发明以及帮助理解各发明性方面中的一个或多个的目的,本发明的各个特征有时被一起分组在单个实施例、附图、或对实施例或附图的描述中。然而,本发明的方法不应被解释为反映所要求保护的发明需要比在每一权利要求中明确表述的特征更多的特征的意图。相反,如所附权利要求书所反映的,各发明性方面在于比单个在以上公开的实施例的所有特征要少的特征。因此,权利要求书据此特意合并到本说明书中,每一权利要求都独立作为本发明的一单独实施例。
Claims (17)
1.一种同步互连网络中的相关数据的装置,所述装置包括:
时钟;
发送器,其被配置成向耦合到所述装置的多个接收设备的各个不同接收设备各发送第一数据分组,所述第一数据分组各包括根据所述时钟并对应于由所述装置发送所述第一数据分组的各个发送时间戳;
接收器,从所述多个接收设备的各个不同接收设备各接收返回的数据分组,每一个所返回的数据分组包含:
根据所述第一数据分组的相应一个数据分组的发送时间戳的各个第一时间戳;
对应于所述第一数据分组的相应数据分组被所述各个接收设备接收到的各个第二时间戳;和
对应于所述返回的数据分组由所述各个接收设备发送的各个第三时间戳,其中,各个第二时间戳和第三时间戳各根据所述各个接收设备的时钟由所述各个接收设备生成,所述装置被配置成根据所述时钟以及对应于由所述装置接收到所述返回的数据分组为所述返回的数据分组每一个提供各个不同第四时间戳;以及
指导所述装置的操作的网络单元,该网络单元根据所述返回的数据分组的所述第一时间戳、第二时间戳、第三时间戳的每一个以及所述返回的数据分组的第四时间戳,为所述返回的数据分组的每一个计算各个不同的往返延迟以及各个不同的时钟偏移;
所述网络单元根据所确定的往返延迟的每一个来计算相对于所述时钟的解码时间,包括所述网络单元识别所确定的往返延迟的最大往返延迟,
所述网络单元为所述多个接收设备的各个不同接收设备各计算开始时间,包括:为所述确定的时钟偏移的每一个时钟偏移,所述网络单元根据所述时钟偏移和所述解码时间二者计算各个开始时间;
其中,所述发送器进一步向所述多个接收设备的各个不同接收设备各发送所述开始时间,其中,每一个开始时间向所述各个接收设备指示开始各个数据流的解码。
2.如权利要求1所述的装置,其特征在于,所述装置利用所述开始时间来同步多个数据流的解码。
3.如权利要求1所述的装置,其特征在于,所述网络单元计算所述解码时间包括:所述网络单元为所述多个接收设备的每一个计算各个数据分组的发送和返回的各个不同的往返延迟时间。
4.如权利要求1所述的装置,其特征在于,所述网络单元计算所述装置与所述多个接收设备第一接收设备之间的第一时钟偏移包括:所述网络单元将所述第一接收设备的第二时间戳与第一时间戳之间的差加上所述第一接收设备的第三时间戳与第四时间戳之间的差再除以二。
5.如权利要求1所述的装置,其特征在于,所述网络单元计算所述解码时间进一步包括:所述网络单元基于所述多个接收设备每一个接收设备的各个不同缓冲区信息计算最大缓冲值和基于所述多个接收设备每一个接收设备的各个不同解码器等待时间信息计算在解码之前的最小缓冲量。
6.如权利要求5所述的装置,其特征在于,所述多个接收设备每一个接收设备的所返回的数据分组还包括所述接收设备的缓冲区信息。
7.如权利要求6所述的装置,其特征在于,所述多个接收设备每一个接收设备的所返回的数据分组还包括所述接收设备的解码器等待时间信息。
8.如权利要求1所述的装置,其特征在于,所述数据流包括媒体数据流。
9.如权利要求1所述的装置,其特征在于,所述装置不与接收与同步相关的其他相关数据流的设备进行通信。
10.如权利要求1所述的装置,其特征在于,所述多个接收设备的一个接收设备基于该接收设备的缓冲区的水平来修改该接收设备的时钟的速度。
11.一种用于在发送设备将多个相关数据流同步到耦合于所述发送设备的多个接收设备的方法,所述方法包括:
向所述多个接收设备的各个不同接收设备各发送第一数据分组,所述第一数据分组各包括根据发送设备的时钟并对应于所述第一数据分组从所述发送设备发送的各个发送时间戳;
从所述多个接收设备的各个不同接收设备各接收返回的数据分组,每个所述返回的数据分组包括:
根据所述第一数据分组的相应一个数据分组的发送时间戳的各个第一时间戳;
对应于所述第一数据分组的相应数据分组被所述各个接收设备接收到的各个第二时间戳;和
对应于由所述各个接收设备的所述返回的数据分组的各个第三时间戳,其中,各个第二时间戳和第三时间戳各根据所述各个接收设备的时钟由所述各个接收设备生成;
根据所述时钟以及对应于在所述发送设备处接收到所述返回的数据分组,为所述返回的数据分组每一个提供各个不同第四时间戳;以及
根据所述返回的数据分组的所述第一时间戳、第二时间戳、第三时间戳中的每一个以及所述返回的数据分组的第四时间戳,为所述返回的数据分组的每一个返回的数据分组计算各个不同的往返延迟以及各个不同的时钟偏移;
根据所确定的往返延迟的每一个,计算相对于所述时钟的解码时间,包括识别所确定的往返延迟的最大往返延迟;
为所述多个接收设备的各个不同接收设备各计算开始时间,包括:根据所述时钟偏移和所述解码时间二者为所述确定的时钟偏移的每一个时钟偏移计算各个开始时间;以及
向所述多个接收设备的各个不同接收设备各发送所述开始时间,其中,每一个开始时间向所述各个接收设备指示开始各个数据流的解码。
12.如权利要求11所述的方法,其特征在于,还包括从所述多个接收设备的每一个接收缓冲区信息和解码器信息,其中计算所述解码时间基于所述缓冲区信息和所述解码器信息。
13.如权利要求11所述的方法,其特征在于,所述解码时间基于当前时间、对所有所述多个接收设备都足够的网络等待时间、将所有所述多个接收设备的缓冲区填充到足以开始处理的水平所需的时间、以及将所有所述多个接收器的缓冲区填充到足以允许解码器等待时间的时间计算的。
14.如权利要求11所述的方法,其特征在于,所述多个相关数据流包括多个媒体数据流。
15.如权利要求14所述的方法,其特征在于,所述多个相关数据流的所述第一数据流和第二数据流是音频或视频数据流的副本。
16.如权利要求14所述的方法,其特征在于,所述多个相关数据流的所述第一数据流是视频数据流并且所述多个相关数据流的第二数据流是与该视频数据流相关的音频数据流。
17.如权利要求11所述的方法,其特征在于,第一相位偏移是为所述返回的数据分组的第一返回的数据分组计算的,其中所述第一相位偏移的计算包括将所述第一返回数据分组的第二时间戳与所述第一返回数据分组的第一时间戳之间的差加上所述第一返回数据分组的第三时间戳与为所述第一返回数据分组提供的各个第四时间戳之间的差再除以二。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/848,153 | 2007-08-30 | ||
US11/848,153 US7936790B2 (en) | 2007-08-30 | 2007-08-30 | Synchronizing related data streams in interconnection networks |
PCT/US2008/069446 WO2009029339A1 (en) | 2007-08-30 | 2008-07-08 | Synchronizing related data streams in interconnection networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101809906A CN101809906A (zh) | 2010-08-18 |
CN101809906B true CN101809906B (zh) | 2014-02-19 |
Family
ID=39689210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880105208.2A Active CN101809906B (zh) | 2007-08-30 | 2008-07-08 | 同步互连网络中的相关数据流 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7936790B2 (zh) |
EP (1) | EP2186230B1 (zh) |
JP (1) | JP5624468B2 (zh) |
KR (1) | KR101548619B1 (zh) |
CN (1) | CN101809906B (zh) |
TW (1) | TWI371194B (zh) |
WO (1) | WO2009029339A1 (zh) |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8332898B2 (en) * | 2007-08-09 | 2012-12-11 | Echostar Technologies L.L.C. | Apparatus, systems and methods to synchronize communication of content to a presentation device and a mobile device |
US7990909B2 (en) * | 2007-11-02 | 2011-08-02 | Ciena Corporation | Synchronization of network nodes |
EP2073548A1 (en) * | 2007-12-17 | 2009-06-24 | Alcatel Lucent | Method for synchronizing at least two streams |
US8194756B2 (en) * | 2008-05-28 | 2012-06-05 | Broadcom Corporation | Using program clock references to assist in transport of video stream to wireless device |
US8630316B2 (en) | 2008-06-19 | 2014-01-14 | Microsoft Corporation | Clock synchronization using correlation events |
US8639830B2 (en) * | 2008-07-22 | 2014-01-28 | Control4 Corporation | System and method for streaming audio |
JP5083097B2 (ja) * | 2008-07-30 | 2012-11-28 | 日本電気株式会社 | ジッターバッファ制御方法と通信装置 |
US8141115B2 (en) * | 2008-12-17 | 2012-03-20 | At&T Labs, Inc. | Systems and methods for multiple media coordination |
WO2010104020A1 (ja) * | 2009-03-10 | 2010-09-16 | 日本電気株式会社 | 遅延量割り当て手段、遅延量割り当て方法及び遅延量割り当て手段の制御プログラムを記録したコンピュータ読み取り可能な記録媒体 |
KR101291990B1 (ko) * | 2009-03-16 | 2013-08-09 | 네덜란제 오르가니자티에 포오르 토에게파스트-나투우르베텐샤펠리즈크 온데르조에크 테엔오 | 변경된 스트림 동기화 |
US8732749B2 (en) | 2009-04-16 | 2014-05-20 | Guest Tek Interactive Entertainment Ltd. | Virtual desktop services |
KR101629312B1 (ko) * | 2009-06-09 | 2016-06-21 | 엘지전자 주식회사 | 메시지 교환 방법 및 싱크 디바이스 |
US8780778B2 (en) * | 2009-07-21 | 2014-07-15 | Lemi Technology, Llc | System and method for providing synchronized broadcast and simulcast of media content |
US8526985B2 (en) * | 2009-11-30 | 2013-09-03 | Alcatel Lucent | System and method of geo-concentrated video detection |
TW201123793A (en) * | 2009-12-31 | 2011-07-01 | Ralink Technology Corp | Communication apparatus and interfacing method for I/O control interface |
US9229734B2 (en) | 2010-01-15 | 2016-01-05 | Guest Tek Interactive Entertainment Ltd. | Hospitality media system employing virtual user interfaces |
CN102202386B (zh) * | 2010-03-24 | 2014-05-07 | 华为技术有限公司 | 一种时钟同步的方法、装置和系统 |
CA2714227C (en) | 2010-06-18 | 2011-10-25 | Guest Tek Interactive Entertainment Ltd. | User-profile server for providing user-tailored entertainment experience across different entertainment devices and method thereof |
US9003455B2 (en) | 2010-07-30 | 2015-04-07 | Guest Tek Interactive Entertainment Ltd. | Hospitality media system employing virtual set top boxes |
SG189304A1 (en) * | 2010-10-08 | 2013-05-31 | Lumi Technologies Ltd | Multi-phased and partitioned content preparation and delivery |
EP2628305B1 (en) | 2010-10-15 | 2015-03-18 | Cinemo GmbH | Distributed playback architecture for media data using beacon packets for synchronisation |
CN101986590A (zh) * | 2010-11-03 | 2011-03-16 | 烟台持久钟表集团有限公司 | 子钟同步时间精确性检测装置及检测方法 |
US11082665B2 (en) | 2010-11-05 | 2021-08-03 | Razberi Secure Technologies, Llc | System and method for a security system |
US8922658B2 (en) * | 2010-11-05 | 2014-12-30 | Tom Galvin | Network video recorder system |
US10157526B2 (en) | 2010-11-05 | 2018-12-18 | Razberi Technologies, Inc. | System and method for a security system |
US9860490B2 (en) | 2010-11-05 | 2018-01-02 | Tom Galvin | Network video recorder system |
US10477158B2 (en) | 2010-11-05 | 2019-11-12 | Razberi Technologies, Inc. | System and method for a security system |
CN102547798B (zh) * | 2010-12-22 | 2014-08-06 | 中国移动通信集团浙江有限公司 | 一种提高无线网络响应速度的方法和系统 |
US8867984B2 (en) * | 2011-01-19 | 2014-10-21 | Alcatel Lucent | Interference coordination for communication network |
EP2533547A1 (en) * | 2011-06-10 | 2012-12-12 | Koninklijke KPN N.V. | Method and system for providing a synchronised user experience from multiple modules |
EP2792141A4 (en) * | 2011-12-16 | 2015-06-10 | Intel Corp | COLLABORATIVE MULTIPLATEFORM VIDEO CAPTURE |
US9697159B2 (en) * | 2011-12-27 | 2017-07-04 | Intel Corporation | Multi-protocol I/O interconnect time synchronization |
US8751757B1 (en) * | 2011-12-30 | 2014-06-10 | Emc Corporation | Acquisition and kernel memory storage of I/O metrics |
US9137281B2 (en) | 2012-06-22 | 2015-09-15 | Guest Tek Interactive Entertainment Ltd. | Dynamically enabling guest device supporting network-based media sharing protocol to share media content over local area computer network of lodging establishment with subset of in-room media devices connected thereto |
US9787523B2 (en) * | 2012-07-05 | 2017-10-10 | Eric Lazarus | Managing data in a data queue including synchronization of media on multiple devices |
US9318043B2 (en) | 2012-07-09 | 2016-04-19 | Mobbers, Inc. | Systems and methods for coordinating portable display devices |
JP6354197B2 (ja) | 2013-03-15 | 2018-07-11 | 株式会社リコー | 配信制御システム、配信制御方法、及びプログラム |
US20140301375A1 (en) * | 2013-04-05 | 2014-10-09 | Ashraf Nusairat | Timing advance method for synchronized wifi network |
US9131509B2 (en) * | 2013-04-05 | 2015-09-08 | Cambium Networks Limited | Mechanism for group polling without precise timing |
US10755003B2 (en) * | 2013-11-08 | 2020-08-25 | Rockwell Automation Technologies, Inc. | Time synchronization of signal transmission intervals for simulating a machine in industrial automation |
JP2015159381A (ja) * | 2014-02-21 | 2015-09-03 | ソニー株式会社 | 情報処理装置、データ生成装置、情報処理方法、および情報処理システム |
CA2844724A1 (en) | 2014-03-04 | 2015-09-04 | Guest Tek Interactive Entertainment Ltd. | Leveraging push notification capabilities of mobile app to send event-triggered invitations to upgrade service offered by hospitality establishment |
US20160072601A1 (en) * | 2014-09-10 | 2016-03-10 | Silicon Image, Inc. | Enhanced Communication Link Using Synchronization Signal as Link Command |
CN105898541B (zh) * | 2014-11-12 | 2019-11-26 | 恩智浦美国有限公司 | 降低多媒体系统中等待时间的方法和装置 |
US11044386B1 (en) * | 2014-12-18 | 2021-06-22 | The Directv Group, Inc. | Method and system for synchronizing playback of independent audio and video streams through a network |
US20170006331A1 (en) * | 2015-06-30 | 2017-01-05 | Stmicroelectronics International N.V. | Synchronized rendering of split multimedia content on network clients |
DE102015212218A1 (de) * | 2015-06-30 | 2017-01-05 | Robert Bosch Gmbh | Dezentral synchronisiertes Multisensorsystem |
US10454982B1 (en) * | 2016-03-18 | 2019-10-22 | Audio Fusion Systems, Inc. | Monitor mixing system that distributes real-time multichannel audio over a wireless digital network |
EP3440839A4 (en) | 2016-04-06 | 2019-08-28 | Charles R. Tudor | VIDEO BROADCAST VIA SELECTED VIDEO HOSTS |
US10129166B2 (en) | 2016-06-21 | 2018-11-13 | Intel Corporation | Low latency re-timer |
CN106130859A (zh) * | 2016-06-23 | 2016-11-16 | 北京东土科技股份有限公司 | 一种工业互联网现场层宽带总线配置管理实现方法 |
SE541208C2 (en) * | 2016-07-04 | 2019-04-30 | Znipe Esports AB | Methods and nodes for synchronized streaming of a first and a second data stream |
CN107801103B (zh) * | 2016-08-29 | 2020-04-03 | 上海交通大学 | 异构网络下基于网络状况的多媒体资源自适应同步方法 |
KR101853441B1 (ko) * | 2016-09-23 | 2018-05-02 | 재단법인 실감교류인체감응솔루션연구단 | 클라이언트 장치 및 그 로컬 클럭 스큐 보정 방법 |
RU2019114909A (ru) | 2016-10-17 | 2020-11-17 | Зомоджо Пти Лтд | Способ и система присвоения точной временной метки |
US10892833B2 (en) * | 2016-12-09 | 2021-01-12 | Arris Enterprises Llc | Calibration device, method and program for achieving synchronization between audio and video data when using Bluetooth audio devices |
GB201703796D0 (en) * | 2017-03-09 | 2017-04-26 | Decawave Ltd | Remote signal synchronization |
WO2019164361A1 (ko) * | 2018-02-23 | 2019-08-29 | 스타십벤딩머신 주식회사 | 스트리밍 장치 및 스트리밍 방법 |
WO2020201950A1 (en) | 2019-04-01 | 2020-10-08 | Zomojo Pty Ltd | A method and apparatus for network time syncing |
AU2020302325A1 (en) | 2019-06-25 | 2022-01-20 | Zomojo Pty Ltd | A method and apparatus for high precision time stamping |
KR102518285B1 (ko) | 2021-04-05 | 2023-04-06 | 에스케이하이닉스 주식회사 | PCIe 인터페이스 및 인터페이스 시스템 |
KR102415309B1 (ko) * | 2020-06-16 | 2022-07-01 | 에스케이하이닉스 주식회사 | 인터페이스 장치 및 그 동작 방법 |
US11546128B2 (en) | 2020-06-16 | 2023-01-03 | SK Hynix Inc. | Device and computing system including the device |
KR102519480B1 (ko) | 2021-04-01 | 2023-04-10 | 에스케이하이닉스 주식회사 | PCIe 장치 및 이를 포함하는 컴퓨팅 시스템 |
US11317252B2 (en) | 2020-07-30 | 2022-04-26 | Motorola Solutions, Inc. | Echo avoidance in large volume system-wide calls |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489356A (zh) * | 2002-09-06 | 2004-04-14 | ������ʣ�ŷ�ޣ��ɷ�����˾ | 媒体数据包的同步播放 |
CN1606302A (zh) * | 2003-10-10 | 2005-04-13 | 微软公司 | 存在网络阻塞点时用于免打嗝快速信道改变的媒体流调度 |
WO2007047960A2 (en) * | 2005-10-19 | 2007-04-26 | Immersion Corporation | Synchronization of haptic effect data in a media transport stream |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2748623B1 (fr) * | 1996-05-09 | 1998-11-27 | Thomson Multimedia Sa | Encodeur a debit variable |
JP2005079932A (ja) * | 2003-09-01 | 2005-03-24 | Yokogawa Electric Corp | 遅延揺らぎ測定方法及びこれを用いた装置 |
JP4346557B2 (ja) * | 2005-01-14 | 2009-10-21 | シャープ株式会社 | タイミングの検出装置、表示装置、タイミングの検出プログラム、タイミングの検出プログラムを記録したコンピュータ読取可能な記録媒体 |
JP4441874B2 (ja) * | 2005-02-24 | 2010-03-31 | ソニー株式会社 | 情報処理システム、再生端末装置および再生方法、情報処理装置および方法、並びにプログラム |
JP2006244060A (ja) * | 2005-03-02 | 2006-09-14 | Mitsubishi Electric Corp | コンテンツ配信装置、コンテンツ提示用端末及びリクエスト用端末並びにコンテンツ同期配信プログラム |
WO2006126852A1 (en) | 2005-05-26 | 2006-11-30 | Electronics And Telecommunications Research Institute | Method and apparatus for synchronizing data service with video service in digital multimedia broadcasting |
JP4706908B2 (ja) * | 2005-06-30 | 2011-06-22 | ソニー株式会社 | 同時再生システム、情報処理装置、途中参加方法及び途中参加プログラム |
WO2007044564A2 (en) * | 2005-10-06 | 2007-04-19 | Aviom, Inc. | Methods and systems for jitter management and latency compensation in a packet-based system |
KR100801002B1 (ko) * | 2006-06-05 | 2008-02-11 | 삼성전자주식회사 | 무선 네트워크 상에서 멀티미디어 데이터를 전송/재생하는방법, 및 그 방법을 이용한 무선 기기 |
US7962637B2 (en) * | 2006-11-03 | 2011-06-14 | Apple Computer, Inc. | Dynamic adjustments of video streams |
US7827479B2 (en) * | 2007-01-03 | 2010-11-02 | Kali Damon K I | System and methods for synchronized media playback between electronic devices |
-
2007
- 2007-08-30 US US11/848,153 patent/US7936790B2/en active Active
-
2008
- 2008-07-08 CN CN200880105208.2A patent/CN101809906B/zh active Active
- 2008-07-08 KR KR1020107006833A patent/KR101548619B1/ko active IP Right Grant
- 2008-07-08 JP JP2010522992A patent/JP5624468B2/ja active Active
- 2008-07-08 EP EP08781523.9A patent/EP2186230B1/en active Active
- 2008-07-08 WO PCT/US2008/069446 patent/WO2009029339A1/en active Application Filing
- 2008-07-10 TW TW097126138A patent/TWI371194B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489356A (zh) * | 2002-09-06 | 2004-04-14 | ������ʣ�ŷ�ޣ��ɷ�����˾ | 媒体数据包的同步播放 |
CN1606302A (zh) * | 2003-10-10 | 2005-04-13 | 微软公司 | 存在网络阻塞点时用于免打嗝快速信道改变的媒体流调度 |
WO2007047960A2 (en) * | 2005-10-19 | 2007-04-26 | Immersion Corporation | Synchronization of haptic effect data in a media transport stream |
Also Published As
Publication number | Publication date |
---|---|
TWI371194B (en) | 2012-08-21 |
CN101809906A (zh) | 2010-08-18 |
EP2186230B1 (en) | 2014-09-03 |
EP2186230A1 (en) | 2010-05-19 |
WO2009029339A1 (en) | 2009-03-05 |
JP5624468B2 (ja) | 2014-11-12 |
US7936790B2 (en) | 2011-05-03 |
KR20100063749A (ko) | 2010-06-11 |
JP2010538539A (ja) | 2010-12-09 |
KR101548619B1 (ko) | 2015-08-31 |
TW200910844A (en) | 2009-03-01 |
US20090059962A1 (en) | 2009-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101809906B (zh) | 同步互连网络中的相关数据流 | |
US9237324B2 (en) | Playback synchronization | |
JP7391500B2 (ja) | 再生同期 | |
KR101228177B1 (ko) | 네트워크 장치용의 동기화된 오디오/비디오 디코딩 | |
EP2328349B1 (en) | Information processing system and information processing device | |
US7672465B2 (en) | System and method for synchronization using GPS in home network | |
CN104464767A (zh) | 同步多个播放装置的音频播放的方法及音频播放系统 | |
US20130031217A1 (en) | Synchronous media rendering of demuxed media components across multiple devices | |
CN101785262A (zh) | 确保共享数据的实体的物理位置 | |
WO2007103871A2 (en) | System and method for establishing and maintaining synchronization of isochronous audio and video information streams in wireless multimedia applications | |
EP1715612B1 (en) | Transmitting apparatus, relaying apparatus, receiving apparatus and network system including these apparatus | |
JP2015082845A (ja) | Ipビデオ信号同期のための方法及び装置 | |
CN109565466A (zh) | 多设备间唇音同步方法及设备 | |
US20130061280A1 (en) | Apparatus, and associated method, for providing synchronized media play out | |
KR20150146116A (ko) | 이종망 기반 방송 서비스를 제공하는 방법 및 장치 | |
JP2009081654A (ja) | ストリーム同期再生システム及び方法 | |
JP2003179662A (ja) | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム | |
CN103828383A (zh) | 将内容保存到服务器上的文件中的方法及相应的设备 | |
JP5082715B2 (ja) | 受信装置、受信方法およびコンピュータプログラム | |
KR101958374B1 (ko) | 네트워크 내의 지연을 정확하게 추정하는 서비스들, 시스템들 및 방법들 | |
KR101920051B1 (ko) | Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법 | |
CN110278456B (zh) | 动态时间窗口及缓存窗口的控制方法 | |
CN104602113A (zh) | 一种实现远程无线保真显示的方法、装置及系统 | |
JP2004096684A (ja) | ストリーム受信装置及びその方法と、ストリーム配信装置及びその方法と、ストリーム中継装置及びその方法と、ストリーム受信プログラムと、ストリーム配信プログラムと、ストリーム中継プログラムと、ストリーム配信システム | |
EP2567741A1 (en) | Apparatus, and associated method, for providing synchronized media play out |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20151130 Address after: oregon Patentee after: LATTICE SEMICONDUCTOR CORPORATION Address before: American California Patentee before: Silicon Image Inc. A. Delaware C. |