CN102710982B - 使媒体流同步的方法、缓冲媒体流的方法及系统、路由器 - Google Patents

使媒体流同步的方法、缓冲媒体流的方法及系统、路由器 Download PDF

Info

Publication number
CN102710982B
CN102710982B CN201210018064.5A CN201210018064A CN102710982B CN 102710982 B CN102710982 B CN 102710982B CN 201210018064 A CN201210018064 A CN 201210018064A CN 102710982 B CN102710982 B CN 102710982B
Authority
CN
China
Prior art keywords
timing
media stream
data network
asynchronous data
media
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
Application number
CN201210018064.5A
Other languages
English (en)
Other versions
CN102710982A (zh
Inventor
汤米·文州·纪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies General IP Singapore Pte Ltd
Original Assignee
Zyray Wireless Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zyray Wireless Inc filed Critical Zyray Wireless Inc
Publication of CN102710982A publication Critical patent/CN102710982A/zh
Application granted granted Critical
Publication of CN102710982B publication Critical patent/CN102710982B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising 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/43072Synchronising 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明涉及使媒体流同步的方法、缓冲媒体流的方法及系统、路由器,具体涉及使用来自独立的时间源的时间信号实现媒体流的同步的技术。独立的时间源是独立于(即不连接于)用于传输媒体流的异步数据网络的时间源。按照本发明所描述的技术,媒体服务器通过异步数据网络传输媒体流给客户端。独立的时间源提供时间信号给媒体服务器和/或客户端。如果提供时间信号是提供给媒体服务器,媒体服务器可以提供基于该时间信号的定时信息给客户端。客户端使用来自媒体服务器的定时信息和/或来自定时源的定时信号,来使媒体流同步。

Description

使媒体流同步的方法、缓冲媒体流的方法及系统、路由器
技术领域
本发明涉及媒体流的同步。
背景技术
多个媒体流可组合起来,以便为用户的消费提供组合媒体(如多媒体)内容。为了为用户提供预期的组合媒体体检,这些媒体流需同步。然而,在某些环境中的同步,如异步网络环境中的同步,给我们带来了挑战。例如,在互联网协议(IP)网络环境中,发射设备传统上在媒体流的每个数据包(即封装部分)中都包括定时信息,以便接收设备可以按照指定的顺序组织数据包和按照指定的速度播放数据包,该指定的顺序和速度由定时信息规定。各个媒体流的数据包的定时信息是相关的,并在播放或呈现组合媒体内容给用户之前应用于组合媒体内容。
整个媒体流的定时信息的相关性要求这样的定时信息有相同的时间原点(timeorigin)。这样的时间原点,传统上来自于网络中的网络时间服务器。例如,IP网络的IP端点通常使用协议如网络时间协议(NetworkTimeProtocol,NTP)从网络时间服务器获取定时信息。然而,由于网络延迟和其他因素,所获取的定时信息的精确度往往为数百毫秒(~200ms)数量级。因此,应用于媒体流数据包的时间戳值继承了几百毫秒时间的不确定性。
由于关于在网络上的每个流的继承时间的不确定性,随着流的数量增加,总体不确定性也增加。这种不确定性直接影响组合媒体内容的同步所需的交叉相关的准确性,从而影响用户的组合媒体体验。
发明内容
本发明提供了一种使用来自独立的时间源的时间信号实现媒体流的同步的系统和/或方法,结合至少一幅附图进行了详细描述,并在权利要求中得到了更完整的阐述。
根据本发明的一个方面,提供一种使多个媒体流同步的方法,所述方法包括:
通过异步数据网络从第一媒体服务器接收第一媒体流和第一定时信息(timinginformation),所述第一媒体流是由第一媒体源生成的,所述第一定时信息基于从定时源(timingsource)接收的第一定时信号(timingsignal),所述定时源不与所述异步数据网络相连接;
通过所述异步数据网络从第二媒体服务器接收第二媒体流和第二定时信息,所述第二媒体服务器不同于所述第一媒体服务器,所述第二媒体流是由第二媒体源生成的,所述第二定时信息基于从所述定时源接收的第二定时信号,所述定时源不与所述异步数据网络相连接;及
根据所述第一定时信息和所述第二定时信息使所述第一媒体流和所述第二媒体流同步,以提供基于所述第一和第二媒体流的组合媒体内容。
优选地,所述方法进一步包括:
从所述定时源接收第三定时信号,所述定时源不与所述异步数据网络相连接,所述第三定时信号与所述第一定时信号和所述第二定时信号相关;
其中,使所述第一媒体流和所述第二媒体流同步包括:
使用所述第一定时信息和所述第三定时信号缓冲所述第一媒体流,以使所述第一媒体流和所述第二媒体流同步。
优选地,使所述第一媒体流和所述第二媒体流同步进一步包括:
使用所述第二定时信息和所述第三定时信号缓冲所述第二媒体流;
响应于针对所述第一媒体流的缓冲,从所述第一媒体流中消除抖动(jitter);及
响应于针对所述第二媒体流的缓冲,从所述第二媒体流中消除抖动。
优选地,
接收所述第一定时信息包括:
通过所述异步数据网络从所述第一媒体服务器接收所述第一定时信息,所述第一定时信息基于从原子钟接收的所述第一定时信号生成,所述原子钟不与所述异步数据网络相连接;及
接收所述第二定时信息包括:
通过所述异步数据网络从所述第二媒体服务器接收所述第二定时信息,所述第二定时信息基于从所述原子钟接收的所述第二定时信号,所述原子钟不与所述异步数据网络相连接。
优选地,
接收所述第一媒体流包括:
接收所述第一媒体流,所述第一媒体流包括第一可视数据和第一音频数据,所述第一可视数据表示视频会议的第一与会者的可视描绘(visualdepiction),所述第一音频数据表示所述第一与会者的语音(speech);
接收所述第二媒体流包括:
接收所述第二媒体流,所述第二媒体流包括第二可视数据和第二音频数据,所述第二可视数据表示所述视频会议的第二与会者的可视描绘,所述第二音频数据表示所述第二与会者的语音;
使所述第一媒体流和所述第二媒体流同步包括:
根据所述第一定时信息和所述第二定时信息使所述第一可视数据、所述第一音频数据、所述第二可视数据和所述第二音频数据同步,以提供组合媒体内容,所述组合媒体内容包括同步的所述第一与会者的所述可视描绘、所述第一与会者的所述语音、所述第二与会者的所述可视描绘和所述第二与会者的所述语音。
根据本发明的另一方面,提供一种缓冲媒体流的方法,所述方法包括:
通过异步数据网络从媒体服务器接收媒体流和定时信息,所述定时信息是根据从定时源接收的定时信号而生成的,所述定时源不与所述异步数据网络相连接;
从所述定时源接收第二定时信号,所述定时源不与所述异步数据网络相连接;及
使用所述定时信息和所述第二定时信号缓冲所述媒体流。
优选地,接收所述定时信息包括:
通过所述异步数据网络从所述媒体服务器接收所述定时信息,所述定时信息是根据从原子钟接收的所述定时信号而生成的,所述原子钟不与所述异步数据网络相连接;及
其中接收所述第二定时信号包括:
从所述原子钟接收所述第二定时信号,所述原子钟不与所述异步数据网络相连接。
优选地,
接收所述定时信息包括:
通过所述异步数据网络从所述媒体服务器接收所述定时信息,所述定时信息是根据通过第一蓝牙连接从所述定时源接收的所述定时信号而生成的,所述定时源不与所述异步数据网络相连接;及
其中接收所述第二定时信号包括:
通过第二蓝牙连接从所述定时源接收所述第二定时信号,所述定时源不与所述异步数据网络相连接。
优选地,
接收所述定时信息包括:
通过所述异步数据网络从所述媒体服务器接收所述定时信息,所述定时信息是根据按照无线通信协议从所述定时源接收的所述定时信号而生成的,所述定时源不与所述异步数据网络相连接;及
其中接收所述第二定时信号包括:
按照所述无线通信协议从所述定时源接收所述第二定时信号,所述定时源不与所述异步数据网络相连接。
根据本发明的一个方面,提供一种缓冲媒体流的方法,所述方法包括:
通过异步数据网络从媒体服务器接收媒体流和与所述媒体流相关的定时信息,所述定时信息基于从定时源接收的第一定时信号,所述定时源不与所述异步数据网络相连接;
通过不包括所述异步数据网络的路径从所述媒体服务器接收第二定时信号,所述第二定时信号基于所述第一定时信号;及
使用所述定时信息和所述第二定时信号缓冲所述媒体流。
优选地,所述定时信息基于从原子钟接收的所述第一定时信号,所述原子钟不与所述异步数据网络连接。
优选地,所述定时信息基于通过蓝牙连接从定时源接收的所述第一定时信号,所述定时源不与所述异步数据网络连接。
优选地,所述定时信息基于按照无线通信协议从定时源接收的所述第一定时信号,所述定时源不与所述异步数据网络连接。
根据本发明的一个方面,提供一种缓冲媒体流的方法,所述方法包括:
通过异步数据网络从媒体服务器接收媒体流和与所述媒体流相关的定时信息,所述定时信息基于第一定时信号;
通过不包括所述异步数据网络的路径提供所述第一定时信号给所述媒体服务器,所述第一定时信号基于第二定时信号;
从定时源接收所述第二定时信号,所述定时源不与所述异步数据网络连接;及
使用所述定时信息和所述第二定时信号缓冲所述媒体流。
优选地,
接收所述第二定时信号包括:
从原子钟接收所述第二定时信号,所述原子钟不与所述异步数据网络连接。
根据本发明的一个方面,提供一种路由器,其连接在媒体服务器和客户端之间,所述路由器包括:
输入电路,用于通过异步数据网络从媒体服务器接收媒体流和与所述媒体流相关的定时信息;
定时模块,用于通过不包括所述异步数据网络的路径提供定时信号给所述客户端;及
输出电路,用于通过所述异步数据网络提供所述媒体流和所述定时信息,使得所述客户端能够使用所述定时信息和所述定时信号来缓冲所述媒体流。
根据本发明的一个方面,提供一种系统,所述系统包括:
音频服务器,用于通过异步数据网络提供第一音频流和第二音频流;
第一扬声器,用于根据从定时源接收的第一定时信号,缓冲所述第一音频流,所述第一音频流是通过所述异步数据网络从所述音频服务器接收的,所述定时源不与所述异步数据网络相连接;及
第二扬声器,用于根据从所述定时源接收的第二定时信号,缓冲所述第二音频流,所述第二音频流是通过所述异步数据网络从所述音频服务器接收的,所述定时源不与所述异步数据网络相连接。
优选地,所述定时源是原子钟。
优选地,
所述第一扬声器根据所述第一定时信号来缓冲所述第一音频流,所述第一定时信号是通过第一蓝牙连接从所述定时源接收的,所述定时源不与所述异步数据网络相连接;及
所述第二扬声器根据所述第二定时信号来缓冲所述第二音频流,所述第二定时信号是通过第二蓝牙连接从所述定时源接收的,所述定时源不与所述异步数据网络相连接。
优选地,
所述第一扬声器根据所述第一定时信号来缓冲所述第一音频流,所述第一定时信号是按照无线通信协议从所述定时源接收的,所述定时源不与所述异步数据网络相连接;及
所述第二扬声器根据所述第二定时信号来缓冲所述第二音频流,所述第二定时信号是按照所述无线通信协议从所述定时源接收的,所述定时源不与所述异步数据网络相连接。
附图说明
附图作为说明书的一部分,用于说明本发明,并结合具体实施方式进一步解释本发明的原理,以使本领域技术人员能够实施所披露的技术。
图1、2、7、9、12和14是根据本发明的实施例的媒体系统的示意图;
图3和4是根据本发明的实施例的使媒体流同步的方法的流程图;
图5是根据本发明的一个实施例图2所示的媒体系统中的客户端的框图;
图6、8、10和13是根据本发明的实施例的缓冲媒体流的方法的流程图;
图11是根据本发明的一个实施例图9所示的媒体系统中的客户端的框图;
图15是可用于实施本发明的计算机的框图。
通过本发明结合附图进行的详细描述,所公开的技术的特征和优势更加明显。在附图中,相同的附图标记一般表示相同的、功能相似的和/或结构相似的部件。附图标记最左边的数字用于标识该附图标记首次出现时的那幅附图的编号。
具体实施方式
一、引言
下面将参考根据本发明实施例的附图进行详细描述。然而,本发明的保护范围并不限于这些实施例,而是由权利要求来限定。因此,除附图所示之外的实施例,例如本发明实施例的修改版本,都属于本发明的保护范围。
说明书中针对“一个实施例”、“实施例”、“一个示例实施例”等的引用,指的是描述的该实施例可包括特定的特征、结构或特性,但是不是每个实施例必须包含这些特定特征、结构或特性。此外,这样的表述并非指的是同一个实施例。进一步,在结合实施例描述特定的特定、结构或特性时,不管有没有明确的描述,已经表明将这样的特征、结构或特性结合到其它实施例中是属于本领域技术人员的知识范围内的。
此外,本发明所述的各种不同的方法,是关于使用来自独立的时间源(timesource)的时间信号(timesignal)实现媒体流的同步。独立的时间源是独立于(即不连接于)用于传输媒体流的异步数据网络的时间源。这样的异步数据网络可以是单个异步数据网络,也可以包括多个异步数据网络,或可以包括一个或多个异步数据网络和一个或多个同步数据网络。独立的时间源可以是本地实体,例如无线网络时钟源、或全球化实体,例如原子钟。
根据本发明所述的方法,媒体流通过异步数据网络从媒体服务器传输到客户端。客户端可以是媒体播放器、媒体聚合服务器(mediaaggregationserver)或任何其他合适的客户端类型。媒体聚合服务器组合来自多个媒体服务器的媒体流,使得可以提供组合媒体流给媒体播放器以供用户消费。独立的时间源提供时间信号给媒体服务器和/或客户端,以助于媒体流的同步。时间信号可以是数字时间信号、模拟时间信号或两者的结合。
根据第一种方案,通过异步数据网络从第一媒体服务器接收第一媒体流,该第一媒体流是由第一媒体源生成的。从第一媒体服务器接收第一定时信息(timinginformation),该第一定时信息基于从定时源(timingsource)接收的第一定时信号(timingsignal),该定时源不与异步数据网络相连接。可以通过异步数据网络或通过不包括该异步网络的路径接收第一定时信息。通过异步数据网络从第二媒体服务器接收第二媒体流,该第二媒体流是由第二媒体源生成的,该第二媒体服务器不同于第一媒体服务器。从第二媒体服务器接收第二定时信息,该第二定时信息基于从定时源接收的第二定时信号,该定时源不与异步数据网络相连接。可以通过异步数据网络或通过不包括该异步网络的路径接收第二定时信息。根据第一定时信息和第二定时信息使第一媒体流和第二媒体流同步,以提供基于第一和第二媒体流的组合媒体(例如多媒体)内容。
根据第二种方案,通过异步数据网络从媒体服务器接收媒体流。从媒体服务器接收定时信息,该定时信息是基于从定时源接收的定时信号而生成的,该定时源不与异步数据网络相连接。例如,可通过异步数据网络从媒体服务器接收定时信息。在另一个例子中,可以通过不包括该异步数据网络的路径接收定时信息。从定时源接收第二定时信号,该定时源不与异步数据网络相连接。使用定时信息和第二定时信号缓冲媒体流。
根据本第三种方案,通过异步数据网络从媒体服务器接收媒体流和与该媒体流相关的定时信息。定时信息基于从定时源接收的第一定时信号,该定时源不与异步数据网络相连接。通过不包括该异步数据网络的路径从媒体服务器接收第二定时信号,该第二定时信号基于第一定时信号。使用定时信息和第二定时信号缓冲媒体流。
根据本第四种方案,通过异步数据网络从媒体服务器接收媒体流和与该媒体流相关的定时信息。定时信息基于第一定时信号。通过不包括该异步数据网络的路径提供第一定时信号给媒体服务器。第一定时信号基于第二定时信号。第二定时信号是从不与异步数据网络相连接的定时源接收的。使用定时信息和第二定时信号缓冲媒体流。
根据本第五种方案,连接在媒体服务器和客户端之间的路由器包括输入电路、定时模块(timingmodule)和输出电路。输入电路通过异步数据网络从媒体服务器接收媒体流和与该媒体流相关的定时信息。定时模块通过不包括该异步数据网络的路径提供定时信号给客户端。输出模块通过异步数据网络向客户端提供媒体流和定时信息,以使得客户端能够使用定时信息和定时信号缓冲媒体流。
根据本第六种方案,系统包括音频服务器、第一扬声器(speaker)和第二扬声器。音频服务器通过异步数据网络提供第一音频流和第二音频流。第一扬声器根据第一定时信号缓冲第一音频流,该第一音频流是通过异步数据网络从音频服务器接收的,该第一定时信号是从定时源接收的,该定时源不与异步数据网络相连接。第二扬声器根据第二定时信号缓冲第二音频流,该第二音频流是通过异步数据网络从音频服务器接收的,该第二定时信号是从定时源接收的,该定时源不与异步数据网络相连接。
与传统的同步技术相比,本发明所描述的同步技术具有多种优势。例如,本发明所描述的同步技术可以比传统的同步技术更快和/或更准确。本发明的同步技术的特点是,其播放延迟比传统技术小。例如,使用本发明所述的独立的时间源,可以使与媒体流相关的时间不确定性变得微不足道。
二、实施例
图1是根据本发明的一个实施例的媒体系统100的示意图。一般来说,媒体系统100用于组合媒体流,以提供组合媒体(如多媒体)内容以供用户消费。媒体系统100包括媒体服务器102、异步数据网络104、客户端106和定时源108。可以使用众所周知的网络通信协议通过异步数据网络104来进行媒体服务器102和客户端106之间的通信。可以使用众所周知的无线(如蓝牙、WiFi等)或有线通信协议,通过不包括异步数据网络104的路径(如路径122或124)来进行媒体服务器102和客户端106之间的通信。异步数据网络104可以是单个异步数据网络,也可以包括多个异步数据网络,或可以包括一个或多个异步数据网络和一个或多个同步数据网络。例如,异步数据网络104可以是广域网(如Internet)、局域网(LAN)、另一种类型网络或这些网络的组合。
媒体服务器102是能够与客户端106进行通信的处理系统。处理系统的一个例子是,一个系统,其包括至少一个能够按照一组指令操纵数据的处理器。例如,处理系统可以是电脑、个人数字助理(personaldigitalassistant)等。媒体服务器102通过异步数据网络104提供多个媒体流112给客户端106。
客户端106是能够处理从媒体服务器102接收的媒体流112的处理系统。客户端106根据由定时源108提供的定时信号110,使媒体流112同步。客户端106组合媒体流112来提供组合媒体内容114。
定时源108是能够独立于异步数据网络104而生成时钟信号的装置。例如,定时源108可以是石英钟、原子钟或任何其他适合的定时源类型。定时源108通过路径116提供定时信号110给媒体服务器102和/或通过路径126提供定时信号110给客户端106。无论是路径116还是路径126,都不包括异步数据网络104。
定时源108可以通过任何合适的连接,例如蓝牙连接、蜂窝连接等,来提供定时信号110。可以按照规定的协议,例如上面指出的无线(如蓝牙、蜂窝等)或有线通信协议来建立连接。然而,可以理解,不一定按照规定的协议建立连接。蓝牙是一种无线协议,它使用2.4千兆赫(GHz)信号在设备之间传输信息。例如,每一个定时信号110可以是按照蓝牙协议的2.4GHz信号。蜂窝协议可以支持射频频谱中超高频(UHF)频带的一个或多个子频带。蜂窝协议的一些例子包括但不限于码分多址(CDMA)、时分多址(TDMA)、全球移动通讯系统(GSM)、数字增强无绳电信(DECT)、全球微波接入互操作性(WiMAX)、全接入通信系统(TACS)和先进移动电话系统(AMPS)。
在第一个例子中,定时源108提供定时信号110给媒体服务器102,但不给客户端106。按照这个例子,媒体服务器102可以通过异步数据网络104和/或通过不包括异步数据网络104的路径122,来提供基于定时信号110的定时信息给客户端106。例如,在通过异步数据网络104提供媒体流112给客户端106之前,媒体服务器102可以将基于定时信号110的时间戳插入到媒体流112中。另外或替代性地,在提供媒体流112给客户端106之前,媒体服务器102可以另外组合(例如,添加或附加(prependorappend))基于定时信号110的定时信息和媒体流112。另外或替代性地,媒体服务器102可以分别通过异步数据网异络104从媒体流112提供基于定时信号110的定时信息给客户端106,和/或通过路径122提供基于定时信号110的定时信息给客户端106。按照这个例子,客户端106可以使用定时信息(例如,基于定时信号110的时间戳)来使媒体流112同步。
在第二个例子中,定时源108提供定时信号110给客户端106,但不给媒体服务器102。按照这个例子,客户端106可以通过异步数据网络104和/或通过不包括异步数据网络104的路径124,提供基于定时信号110的定时信息给媒体服务器102。当从客户端106接收定时信息时,在通过异步数据网络104提供媒体流112给客户端106之前,媒体服务器102可以将基于所接收的定时信息的时间戳插入到媒体流112中。另外或替代性地,在提供媒体流112给客户端106之前,媒体服务器102可以另外组合(例如,添加或附加)第二定时信息和媒体流112,该第二定时信息基于从客户端106接收的定时信息。另外或替代性地,媒体服务器102可以分别通过异步数据网异络104从媒体流112提供第二定时信息给客户端106,和/或通过路径122提供第二定时信息给客户端106。按照这个例子,客户端106可以使用第二定时信息和定时信号110来使媒体流112同步。
在第三个例子中,定时源108提供定时信号110(或其第一子集)给媒体服务器102,且进一步提供定时信号110(或其第二子集)给客户端106。按照这个例子,在通过异步数据网络104提供媒体流112给客户端106之前,媒体服务器102可以将基于定时信号110(或其第一子集)的时间戳插入到媒体流112中。另外或替代性地,在提供媒体流112给客户端106之前,媒体服务器102可以另外组合(例如,添加或附加)基于定时信号110的定时信息和媒体流112。另外或替代性地,媒体服务器102可以分别通过异步数据网异络104从媒体流112提供定时信息给客户端106,和/或通过路径122提供定时信息给客户端106。按照这个例子,客户端106可以使用定时信息和定时信号110(或其第二子集)来使媒体流112同步。
图2是根据本发明的另一个实施例的媒体系统200的示意图。媒体系统200包括多个媒体服务器202A-202N、异步数据网络204、客户端206和定时源208。定时源208通过各条不包括异步数据网络204的路径216A-216N,提供定时信号210A-210N给媒体服务器202A-202N。定时源208可以通过不包括异步数据网络204的路径226,提供定时信号220给客户端206。然而,可以理解,定时源208不一定需要提供定时信号220给客户端206。只要没有一个定时信号210A-210N和/或220是通过异步数据网络204提供的,定时源208可以按照任何合适的通信协议提供定时信号210A-210N和/或220。
可以理解,定时信号210A-210N可以由来自定时源208的单个发射信号(singletransmission)而生成。例如,媒体服务器202A-202N可以通过各自的路径216A-216N接收该单个发射信号作为各自的定时信号210A-210N。单个发射信号是为了说明目的而提出的。定时信号210A-210N也可以由来自定时源208的多个发射信号而生成。
媒体服务器202A-202N通过异步数据网络204,提供各自的媒体流212A-212N和各自的定时信息218A-218N给客户端206。例如,第一媒体服务器202A通过异步数据网络204,提供第一媒体流212A和第一定时信息218A给客户端206;第二媒体服务器202B通过异步数据网络204,提供第二媒体流212B和第二定时信息218B给客户端206等等。定时信息218A-218N基于各自的定时信号210A-210N。每一个媒体流212A-212N可以是音频流、图像流或视频流。音频流包括音频信息,但不包括可视信息。图像流包括可视信息,但不包括音频信息。视频流包括音频信息和可视信息。
媒体流212A-212N可以包括任何合适的音频和/或可视信息。例如,媒体流212A-212N中的任何一个或多个可以包括一个或多个隐藏的字幕信息(closedcaptionmessages);一个或多个音频、图像和/或视频广告;幻灯片放映;画中画数据(picture-in-picturedata)等。这样的媒体流可以用于被插入到另一媒体流212A-212N。
定时信息218A-218N可以跟各自的媒体流212A-212N组合(例如,嵌入),或跟各自的媒体流212A-212N分开。按照周期时间表或任何其他合适的方式,当各自的媒体服务器202A-202N接收到媒体流212A-212N和/或定时信息218A-218N,媒体服务器202A-202N可以同时、特设地(ad-hoc)(即,不考虑其他媒体流)提供媒体流212A-212N和/或定时信息218A-218N给客户端206。媒体服务器202A-202N可以按照众所周知的网络通信协议提供媒体流212A-212N和定时信息218A-218N。
可以理解,媒体服务器202A-202N不一定需要通过异步数据网络204提供定时信息218A-218N,如图2所描述。例如,媒体服务器202A-202N可以通过各自的不包括异步数据网络204的路径,提供定时信息218A-218N。
客户端206根据定时信息218A-218N使媒体流212A-212N同步。客户端206可以进一步根据定时信号220使媒体流212A-212N同步,然而本实施例的范围并不局限于这方面。客户端206组合媒体流212A-212N来提供组合媒体内容214。
图3所示为根据本发明的一个实施例的使媒体流同步的方法的流程300。现在可以参考图2所描述的媒体系统200的某些元素来对流程300的方法进行描述。然而,该方法不限于该实施。
如图3所示,流程300开始于步骤302。在步骤302中,通过异步数据网络从第一媒体服务器接收第一媒体流,该第一媒体流是由第一媒体源生成的。第一媒体流可以是音频流、图像流或视频流。在一个实施例中,客户端206通过异步数据网络204从第一媒体服务器202A接收第一媒体流212A,第一媒体流212A是由第一媒体源生成的。
在视频会议的实施例中,第一媒体流包括第一可视数据和第一音频数据。第一可视数据表示视频会议的第一与会者的可视描绘。第一音频数据表示第一与会者的语音。
在步骤304中,从第一媒体服务器接收第一定时信息,该第一定时信息基于从定时源接收的第一定时信号,该定时源不与异步数据网络相连接。例如,可以通过异步数据网络从第一媒体服务器接收第一定时信息。在另一个例子中,可以通过不包括异步数据网络的路径从第一媒体服务器接收第一定时信息。在一个实施例中,客户端206从第一媒体服务器202A接收第一定时信息218A,第一定时信息218A基于从定时源208接收的第一定时信号210A。
在步骤306中,通过异步数据网络从第二媒体服务器接收第二媒体流,该第二媒体服务器不同于第一媒体服务器,该第二媒体流是由第二媒体源生成的。第二媒体流可以是音频流、图像流或视频流。在一个实施例中,客户端206通过异步数据网络204从第二媒体服务器202B接收第二媒体流212B,第二媒体流212B是由第二媒体源生成的。
按照上面提到的视频会议的实施例,第二媒体流包括第二可视数据和第二音频数据。第二可视数据表示视频会议的第二与会者的可视描绘。第二音频数据表示第二与会者的语音。
在步骤308中,从第二媒体服务器接收第二定时信息,该第二定时信息基于从定时源接收的第二定时信号,该定时源不与异步数据网络相连接。例如,可以通过异步数据网络从第二媒体服务器接收第二定时信息。在另一个例子中,可以通过不包括异步数据网络的路径从第二媒体服务器接收第二定时信息。在一个实施例中,客户端206从第二媒体服务器202B接收第二定时信息218B,第二定时信息218B基于从定时源208接收的第二定时信号210B。
在步骤310中,根据第一定时信息和第二定时信息使第一媒体流和第二媒体流同步,以提供组合媒体内容,该组合媒体内容基于第一和第二媒体流。在一个实施例中,客户端206根据第一定时信息218A和第二定时信息218B使第一媒体流212A和第二媒体流212B同步,以提供组合媒体内容214,组合媒体内容214基于第一媒体流212A和第二媒体流212B。
按照上面提到的视频会议的实施例,根据第一定时信息和第二定时信息使第一可视数据、第一音频数据、第二可视数据和第二音频数据同步,来提供多媒体内容,该多媒体内容包括同步的第一与会者的可视描绘、第一与会者的语音、第二与会者的可视描绘和第二与会者的语音。例如,上面提到的各种数据的同步可以实现第一与会者的可视描绘和语音之间的口形同步、第二与会者的可视描绘和语音之间的口形同步、第一与会者的可视描绘和第二与会者的可视描绘之间的同步和/或第一与会者的语音和第二与会者的语音之间的同步。
图4是根据本发明的一个实施例的图3中的步骤310的一个实施方法的流程图。例如,流程400可以由图2所示的媒体系统200的客户端206来执行。为了说明目的,流程400将结合图5所示的客户端500来进行描述,客户端500是根据本发明一个实施例的客户端206的一个例子。如图5所示,客户端500包括同步器502。同步器502用于使媒体流同步。同步器502包括缓冲逻辑504和抖动模块(jittermodule)506。根据流程400相关的讨论,进一步的结构和运作的实施方案,对本领域技术人员来说将是显而易见的。
如图4所示,流程400的方法开始于步骤402。在步骤402中,使用第一定时信息和从定时源接收的第三定时信号,来缓冲第一媒体流。例如,可以缓冲第一媒体流,以对图3的步骤302中接收第一媒体流的各部分的速率和/或定时的变化(variationinarateand/ortiming)进行补偿。在另一个例子中,可以缓冲第一媒体流,以对图3的步骤302中接收第一媒体流的速率和/或定时的变化和步骤306中接收第二媒体流的速率和/或定时的变化之间的差异进行补偿。在一个实施例中,缓冲逻辑504使用第一定时信息218A和定时信号220,来缓冲第一媒体流212A,定时信号220是从定时源208接收的。
在步骤404中,使用第二定时信息和第三定时信号,来缓冲第二媒体流。例如,可以缓冲第二媒体流,来对图3的步骤306中接收第二媒体流的各部分的速率和/或定时的变化进行补偿。在另一个例子中,可以缓冲第二媒体流,来对图3的步骤302中接收第一媒体流的速率和/或定时的变化和步骤306中接收第二媒体流的速率和/或定时的变化之间的差异进行补偿。在一个实施例中,客户端206使用第二定时信息218B和定时信号220,来缓冲第二媒体流212B。
在步骤406中,从第一媒体流中消除抖动。在一个实施例中,抖动模块506从第一媒体流212A中消除抖动。
在步骤408中,从第二媒体流中消除抖动。在一个实施例中,抖动模块506从第二媒体流212B中消除抖动。
图6所示为根据本发明的一个实施例的缓冲媒体流的方法的流程600。现在将参考图5中所描述的客户端500来对流程600的方法进行描述。然而,该方法不局限于该实施。
如图6所示,流程600开始于步骤602。在步骤602中,通过异步数据网络从媒体服务器接收媒体流。在一个实施例中,缓冲逻辑504通过异步数据网络204从第一媒体服务器202A接收第一媒体流212A。
在步骤604中,从媒体服务器接收定时信息,该定时信息是根据从定时源接收的定时信号而生成的,该定时源不与异步数据网络相连接。例如,可以通过异步数据网络从媒体服务器接收定时信息。在另一个例子中,可以通过不包括异步数据网络的路径从媒体服务器接收定时信息。定时源可以是石英钟、原子钟或任何其他合适的定时源类型。定时信息可以是根据定时信号而生成的,该定时信号是通过任何合适的连接,如蓝牙连接、蜂窝连接等等,从定时源接收的。在一个实施例中,缓冲逻辑504从第一媒体服务器202A接收定时信息218A,定时信息218A是根据从定时源208接收的定时信号210A而生成的。
在步骤606中,从定时源接收第二定时信号,该定时源不与异步数据网络相连接。在一个实施例中,缓冲逻辑504从定时源208接收定时信号220。
在步骤608中,使用定时信息和第二定时信号来缓冲媒体流。在一个实施例中,缓冲逻辑504使用第一定时信息218A和定时信号220来缓冲第一媒体流212A。
图7是根据本发明的又一个实施例的媒体系统700的示意图。媒体系统700包括媒体服务器702、异步数据网络704、客户端706和定时源708。定时源708通过不包括异步数据网络704的路径716,提供第一定时信号710给媒体服务器702。媒体服务器702通过异步数据网络704,提供媒体流712和定时信息718给客户端706。定时信息718基于第一定时信号710。媒体服务器702进一步通过不包括异步数据网络704的路径736,提供第二定时信号720给客户端706。第二定时信号720基于第一定时信号710。例如,第二定时信号720可以跟第一定时信号710相同。客户端706根据定时信息718和第二定时信号720使媒体流同步,以提供缓冲的媒体内容714。
图8所示为根据本发明的另一个实施例的缓冲媒体流的方法的流程800。现在将参考图5中所描述的客户端500来对流程800的方法进行描述。然而,该方法不局限于该实施。
如图8所示,流程800开始于步骤802。在步骤802中,通过异步数据网络从媒体服务器接收媒体流和与该媒体流相关的定时信息。定时信息基于从定时源接收的第一定时信号,该定时源不与异步数据网络相连接。定时源可以是石英钟、原子钟或任何其他合适的定时源类型。定时信息可以基于第一定时信号,该第一定时信号是通过任何合适的连接,如蓝牙连接、蜂窝连接等,从定时源接收的。在一个实施例中,缓冲逻辑504通过异步数据网络704从媒体服务器702接收媒体流712和定时信息718。定时信息718基于从定时源708接收的第一定时信号710,定时源708不与异步数据网络704相连接。
在步骤804中,通过不包括异步数据网络的路径,从媒体服务器接收基于第一定时信号的第二定时信号。可以按照协议,例如蓝牙协议、蜂窝协议等,从媒体服务器接收第二定时信号,然而本发明实施例的范围不局限于这方面。在一个实施例中,缓冲逻辑504通过不包括异步数据网络704的路径736,从媒体服务器702接收基于第一定时信号710的第二定时信号720。
在步骤806中,使用定时信息和第二定时信号来缓冲媒体流。在一个实施中,缓冲逻辑504使用定时信息718和第二定时信号720来缓冲媒体流712。
图9是根据本发明的又一个实施例的媒体系统900的示意图。媒体系统900包括媒体服务器902、异步数据网络904、客户端906和定时源908。媒体服务器902通过异步数据网络904,提供媒体流912和定时信息918给客户端906。定时信息918基于从客户端906接收的定时信号910。定时源908通过不包括异步数据网络904的路径926,提供第二定时信号920给客户端906。客户端906通过不包括异步数据网络904的路径936,提供第一定时信号910给媒体服务器902。第一定时信号910基于第二定时信号920。例如,第一定时信号910可以跟第二定时信号920相同。客户端906根据定时信息918和第二定时信号920使媒体流912同步,来提供缓冲的媒体内容914。
图10所示为本发明的又一个实施例的缓冲媒体流的方法的流程1000。例如,流程1000可以由图9所示的媒体系统900的客户端906来执行。为了说明目的,流程1000将结合图11所示的客户端1100来进行描述,客户端1100是根据本发明一个实施例的客户端906的一个例子。客户端1100包括缓冲逻辑1104和定时模块1108。根据流程1000相关的讨论,进一步的结构和运作的实施方案,对本领域技术人员来说将是显而易见的。
如图10所示,流程1000的方法开始于步骤1002。在步骤1002中,通过异步数据网络从媒体服务器接收媒体流和与该媒体流相关的定时信息。定时信息基于第一定时信号。在一个实施例中,缓冲逻辑1104通过异步数据网络904从媒体服务器902接收媒体流912和定时信息918。定时信息918基于第一定时信号910。
在步骤1004中,通过不包括异步数据网络的路径,提供第一定时信号给媒体服务器。第一定时信号基于第二定时信号。可以按照协议,例如蓝牙协议、蜂窝协议等,提供第一定时信号给媒体服务器,然而本发明实施例的范围不局限于这方面。在一个实施例中,定时模块1108通过不包括异步数据网络904的路径936,提供第一定时信号910给媒体服务器902。第一定时信号910基于第二定时信号920。
在步骤1006中,从定时源接收第二定时信号,该定时源不与异步数据网络相连接。定时源可以是石英钟、原子钟或任何其他合适类型的定时源。可以通过任何合适的连接,如蓝牙连接、蜂窝连接等,从定时源接收第二定时信号。在一个实施例中,缓冲逻辑1104从定时源908接收第二定时信号920,定时源908不与异步数据网络904相连接。
在步骤1008中,使用定时信息和第二定时信号来缓冲媒体流。在一个实施中,缓冲逻辑1104使用定时信息918和第二定时信号920来缓冲媒体流912。
图12是根据本发明的又一个实施例的媒体系统1200的示意图。媒体系统1200包括媒体服务器1202、异步数据网络1204、客户端1206和路由器1228。媒体服务器1202通过异步数据网络1204,提供媒体流1212和定时信息1218给路由器1228。
路由器1228包括定时模块1208、输入电路1232和输出电路1234。定时模块1208通过不包括异步数据网络1204的路径1226,提供定时信号1220给客户端1206。输入电路1232通过异步数据网络1204,从媒体服务器1202接收媒体流1212和定时信息1218。输入电路1232将媒体流1212和定时信息1218传送到输出电路1234。输出电路1234通过异步数据网络1204,提供媒体流1212和定时信息1218给客户端1206。
异步数据网络1204可以是单个异步数据网络,也可以包括多个异步数据网络,或可以包括一个或多个异步数据网络和一个或多个同步数据网络。例如,输入电路1232可以通过异步数据网络1204的第一子网,从媒体服务器1202接收媒体流1212和定时信息1218,而输出电路1234可以通过异步数据网络1204的第二子网,提供媒体流1212和定时信息1218给客户端1206。第一子网可以包括一个或多个异步数据网络。第一子网可以进一步包括一个或多个同步数据网络,然而本发明实施例的范围并不局限于这方面。第二子网可以包括一个或多个异步数据网络。第二子网可以进一步包括一个或多个同步数据网络,然而本发明实施例的范围并不局限于这方面。在一个例子中,第一子网是广域网(WAN),而第二子网是局域网(LAN)。在另一个例子中,第一子网是LAN,而第二子网是WAN。还在另一个例子中,第一子网和第二子网是共同的LAN中的不同子网,或是共同的WAN中的不同子网。
客户端1206根据定时信息1218和定时信号1220来缓冲媒体流1212。
图13所示为根据本发明的又一个实施例的缓冲媒体流的方法的流程1300。现在将参考图12中所描述的示例媒体系统1200来对流程1300的方法进行描述。然而,该方法不局限于该实施。
如图13所示,流程1300开始于步骤1302。在步骤1302中,通过异步数据网络从媒体服务器接收媒体流和与该媒体流相关的定时信息。在一个实施例中,输入电路1232通过异步数据网络1204从媒体服务器1202接收媒体流1212和定时信息1218。
在步骤1304中,通过不包括异步数据网络的路径提供定时信号给客户端。可以按照协议,例如蓝牙协议、蜂窝协议等,提供定时信号,然而本发明实施例的范围不局限于这方面。在一个实施例中,定时模块1208通过不包括异步数据网络1024的路径1226,提供定时信号1220给客户端1206。
在步骤1306中,通过异步数据网络提供媒体流和定时信息给客户端,以使得客户端能够使用定时信息和定时信号来缓冲媒体流。在一个实施例中,通过异步数据网络1204提供媒体流1212和定时信息1218给客户端1206,以使得客户端1206能够使用定时信息1218和定时信号1220来缓冲媒体流1212。
图14是根据本发明的又一个实施例的媒体系统1400的示意图。媒体系统1400包括音频服务器1402、异步数据网络1404、第一扬声器1406A、第二扬声器1406B和定时源1408。音频服务器1402通过异步数据网络1404,提供第一音频流1412A给第一扬声器1406A。音频服务器1402通过异步数据网络1404,提供第二音频流1412B给第二扬声器1406B。
定时源1408通过不包括异步数据网络1404的路径1426A,提供第一定时信号1420A给第一扬声器1406A。定时源1408通过不包括异步数据网络1404的路径1426B,提供第二定时信号1420B给第二扬声器1406B。定时源1408可以是石英钟、原子钟或任何其他合适的定时源类型。定时源1408可以通过协议,如蓝牙协议、蜂窝协议等,提供第一定时信号1420A给第一扬声器1406A和/或提供第二定时信号1420B给第二扬声器1406B,然而本发明实施例的范围并不局限于这方面。
第一扬声器1406A包括第一缓冲逻辑1418A。第一缓冲逻辑1418A根据第一定时信号1420A来缓冲第一音频流1412A,第一音频流1412A是通过异步数据网络1404从音频服务器1402接收的。第二扬声器1406B包括第二缓冲逻辑1418B。第二缓冲逻辑1418B根据第二定时信号1420B来缓冲第二音频流1412B,第二音频流1412B是通过异步数据网络1404从音频服务器1402接收的。
图1所示的媒体服务器102、客户端106和定时源108;图2所示的媒体服务器202A-202N、客户端206和定时源208;图5所示的同步器502、缓冲逻辑504和抖动模块506;图7所示的媒体服务器702、客户端706和定时源708;图9所示的媒体服务器902、客户端906和定时源908;图11所示的缓冲逻辑1104和定时模块1108;图12所示的媒体服务器1202、路由器1228、定时模块1208和客户端1206;和图14所示的音频服务器1402、第一缓冲逻辑1418A、第二缓冲逻辑1418B和定时源1408都可以通过硬件、软件、固件,或者硬、软、固件结合来实现,这是本领域技术人员可知悉的。
例如,媒体服务器102、客户端106、定时源108、媒体服务器202A-202N、客户端206、定时源208、同步器502、缓冲逻辑504、抖动模块506、媒体服务器702、客户端706、定时源708、媒体服务器902、客户端906、定时源908、缓冲逻辑1404、定时模块1108、媒体服务器1202、路由器1228、定时模块1208、客户端1206、音频服务器1402、第一缓冲逻辑1418A、第二缓冲逻辑1418B和定时源1408中的任何一个,都可以采用计算机程序代码来实施,该计算机程序代码可在一个或多个处理器中执行。
在另一个例子中,媒体服务器102、客户端106、定时源108、媒体服务器202A-202N、客户端206、定时源208、同步器502、缓冲逻辑504、抖动模块506、媒体服务器702、客户端706、定时源708、媒体服务器902、客户端906、定时源908、缓冲逻辑1404、定时模块1108、媒体服务器1202、路由器1228、定时模块1208、客户端1206、音频服务器1402、第一缓冲逻辑1418A、第二缓冲逻辑1418B和定时源1408中的任何一个,可以采用硬件逻辑/电子电路来实施。
图15是可用于实施例本发明的计算机1500的框图。例如,可以使用一个或多个计算机,如计算机1500,来实施图1所示的媒体服务器102、客户端106和/或定时源108;图2所示的媒体服务器202A-202N、客户端206和/或定时源208;图5所示的客户端500;图7所示的媒体服务器702、客户端706和/或定时源708;图9所示的媒体服务器902、客户端906和/或定时源908;图11所示的客户端1100;图12所示的媒体服务器1202、客户端1206和/或路由器1228;和/或图14所示的音频服务器1402和/或定时源1408中任何一个。
如图15所示,计算机1500包括一个或多个处理器(例如,中央处理单元(CPU)),如处理器1506。处理器1506可以包括,例如,图5中的同步器502和/或抖动模块506;图11中的定时模块1108;图12中的定时模块1208;或任何部分或其组合,然而本发明实施例的范围并不局限于这方面。处理器1506连接于通信基础设施1502,如通信总线。在一些实施例中,处理器1506可以同时操作多个计算线程(computingthreads)。
计算机1500还包括主存储器1508,如随机存取存储器(RAM)。主存储器1508存储有控制逻辑1524A(计算机软件)和数据。
计算机1500还包括一个或多个辅存储装置1510。辅存储装置1510包括,例如,硬盘驱动器1512和/或可移动存储装置或驱动器1514,以及其他类型的存储装置,如记忆卡和记忆棒。例如计算机1500可以包括行业标准接口(industrystandardinterface),如用于连接装置如记忆棒的通用串行总线(USB)接口。可移动存储驱动器1514代表了软盘驱动器、磁带驱动器、光盘驱动器、光存储装置、磁带备份等。
可移动存储驱动器1514与可移动存储单元1516进行交互。可移动存储单元1516包括计算机可用或可读的存储介质1518,存储介质1518存储有计算机软件1524B(控制逻辑)和/或数据。可移动存储单元1516代表了软盘、磁带、光盘(CD)、数字通用光盘(DVD)、蓝光光盘、光存储盘(opticalstoragedisk)、记忆棒、记忆卡或任何其他计算机数据存储装置。可移动存储驱动器1514以众所周知的方式对可移动存储单元1516进行读取和/或写入操作。
计算机1500还包括输入/输出/显示设备1504,例如显示器、键盘、指点装置等。
计算机1500进一步包括通信或网络接口1520。通信接口1520使得计算机1500能够与远程设备进行通信。例如,通信接口1520允许计算机1500通过通信网络或介质1522(代表了计算机可用或可读介质的形式),例如局域网(LAN)、广域网(WAN)、Internet、蜂窝网络等进行通信。网络接口1520可以通过有线或无线连接与远程站点或网络进行连接。
控制逻辑1524C可以通过通信介质1522和计算机1500进行通信。
包含计算机可用或可读介质(其中存储有控制逻辑(软件))的任何设备或产品,统称为计算机程序产品或程序存储装置。这包括但不局限于计算机1500、主存储器1508、辅存储装置1510和可移动存储单元1516。这样的计算机程序产品存储有控制逻辑,当一个或多个数据处理装置执行该控制逻辑时,使得这些数据处理装置能够执行本发明实施例所描述的操作。
用于实施本发明实施例的装置可以包括存储器,例如存储装置、记忆装置和其他类型的计算机可读介质。这样的计算机可读介质的例子包括硬盘、可移动磁盘、可移动光盘、闪存卡、数字视频光盘、随机存取存储器(RAM)、只读存储器(ROM)等。本发明所使用的术语“计算机程序介质”和“计算机可读介质”被用来泛指关于硬盘驱动器的硬盘、可移动磁盘、可移动光盘(例如,CDROM、DVD等)、Zip磁盘、磁带、磁性存储设备、以微机电系统为基础(MEMS-based)的存储设备、以纳米技术为基础的存储设备,以及其他介质例如闪存卡、数字视频光盘、RAM装置、ROM装置等。
这样的计算机可读存储介质可以存储程序模块,该程序模块包括用于同步器502、缓冲逻辑504、抖动模块506、缓冲逻辑1104、定时模块1108、定时模块1208、第一缓冲逻辑1418A和/或第二缓冲逻辑1418B的计算机程序逻辑;包括用于流程300(包括流程300的一个或多个步骤)、流程400(包括流程400的一个或多个步骤)、流程600(包括流程600的一个或多个步骤)、流程800(包括流程800的一个或多个步骤)、流程1000(包括流程1000的一个或多个步骤)和/或流程1300(包括流程1300的一个或多个步骤)的计算机程序逻辑;和/或包括用于本发明所描述的其他实施例的计算机程序逻辑。本发明一些实施例针对包含存储在任何计算机可用介质的逻辑(例如,以程序代码或软件的形式)的计算机程序产品。当一个或多个处理器执行这样的程序代码时,使得装置能够执行本发明实施例所描述的操作。
这样的计算机可读存储介质区别于通信媒体,且两者互不重叠。通信媒体通常包含在调制数据信号如载波中的计算机可读指令、数据结构、程序模块或其他数据。术语“调制数据信号”是指这样一种信号,该信号中的一个或多个特征是以对信号中的信息进行编码的方式而设置或改变。通过举例说明,而不限于此,通信媒体包括无线媒体,例如声音、射频、红外线和其他无线媒体。本发明的实施例也是针对这样的通信媒体。
本发明可以使用不同于本文中所描述的软件、固件和/或硬件来实现。任何适合执行本发明所述的功能的软件、固件和硬件都可以使用。
三、结束语
虽然以上描述了本发明的各种实施例,应当理解,其目的仅在于举例说明,而没有限制性。本领域技术人员知悉,在不脱离本发明的精神和范围情况下,在形式上和细节上还可做各种的改变。因此,本发明的保护范围不当仅局限于以上描述的任一实施例,而应该依照权利要求及其等同来限定。

Claims (10)

1.一种使多个媒体流同步的方法,其特征在于,所述方法包括:
通过异步数据网络从第一媒体服务器接收第一媒体流和第一定时信息,所述第一媒体流是由第一媒体源生成的,所述第一定时信息基于从定时源接收的第一定时信号,所述定时源不与所述异步数据网络相连接;
通过所述异步数据网络从第二媒体服务器接收第二媒体流和第二定时信息,所述第二媒体服务器不同于所述第一媒体服务器,所述第二媒体流是由第二媒体源生成的,所述第二定时信息基于从所述定时源接收的第二定时信号,所述定时源不与所述异步数据网络相连接;
根据所述第一定时信息和所述第二定时信息使所述第一媒体流和所述第二媒体流同步,以提供基于所述第一媒体流和第二媒体流的组合媒体内容。
2.根据权利要求1所述的使多个媒体流同步的方法,其特征在于,所述方法进一步包括:
从所述定时源接收第三定时信号,所述定时源不与所述异步数据网络相连接,所述第三定时信号与所述第一定时信号和所述第二定时信号相关;
其中,使所述第一媒体流和所述第二媒体流同步包括:
使用所述第一定时信息和所述第三定时信号缓冲所述第一媒体流,以使所述第一媒体流和所述第二媒体流同步。
3.根据权利要求2所述的使多个媒体流同步的方法,其特征在于,使所述第一媒体流和所述第二媒体流同步进一步包括:
使用所述第二定时信息和所述第三定时信号缓冲所述第二媒体流;
响应于缓冲所述第一媒体流,从所述第一媒体流中消除抖动;及
响应于缓冲所述第二媒体流,从所述第二媒体流中消除抖动。
4.一种缓冲媒体流的方法,其特征在于,所述方法包括:
通过异步数据网络从媒体服务器接收媒体流和定时信息,所述定时信息是根据从定时源接收的第一定时信号而生成的,所述定时源不与所述异步数据网络相连接;
从所述定时源接收第二定时信号,所述定时源不与所述异步数据网络相连接;及使用所述定时信息和所述第二定时信号缓冲所述媒体流。
5.根据权利要求4所述的缓冲媒体流的方法,其特征在于,
接收所述定时信息包括:
通过所述异步数据网络从所述媒体服务器接收所述定时信息,所述定时信息是根据从原子钟接收的所述第一定时信号而生成的,所述原子钟不与所述异步数据网络相连接;及
其中接收所述第二定时信号包括:
从所述原子钟接收所述第二定时信号,所述原子钟不与所述异步数据网络相连接。
6.根据权利要求4所述的缓冲媒体流的方法,其特征在于,
接收所述定时信息包括:
通过所述异步数据网络从所述媒体服务器接收所述定时信息,所述定时信息是根据通过第一蓝牙连接从所述定时源接收的所述第一定时信号而生成的,所述定时源不与所述异步数据网络相连接;及
其中接收所述第二定时信号包括:
通过第二蓝牙连接从所述定时源接收所述第二定时信号,所述定时源不与所述异步数据网络相连接。
7.一种缓冲媒体流的方法,其特征在于,所述方法包括:
通过异步数据网络从媒体服务器接收媒体流和与所述媒体流相关的定时信息,所述定时信息基于从定时源接收的第一定时信号,所述定时源不与所述异步数据网络相连接;
通过不包括所述异步数据网络的路径从所述媒体服务器接收第二定时信号,所述第二定时信号基于所述第一定时信号;及
使用所述定时信息和所述第二定时信号缓冲所述媒体流。
8.一种缓冲媒体流的方法,其特征在于,所述方法包括:
通过异步数据网络从媒体服务器接收媒体流和与所述媒体流相关的定时信息,所述定时信息基于第一定时信号;
通过不包括所述异步数据网络的路径提供所述第一定时信号给所述媒体服务器,所述第一定时信号基于第二定时信号;
从定时源接收所述第二定时信号,所述定时源不与所述异步数据网络连接;及使用所述定时信息和所述第二定时信号缓冲所述媒体流。
9.一种用于缓冲音频流的媒体系统,其特征在于,包括:
音频服务器,用于通过异步数据网络提供第一音频流和第二音频流;
第一扬声器,用于根据从定时源接收的第一定时信号,缓冲所述第一音频流,所述第一音频流是通过所述异步数据网络从所述音频服务器接收的,所述定时源不与所述异步数据网络相连接;及
第二扬声器,用于根据从所述定时源接收的第二定时信号,缓冲所述第二音频流,所述第二音频流是通过所述异步数据网络从所述音频服务器接收的,所述定时源不与所述异步数据网络相连接。
10.一种路由器,其连接在媒体服务器和客户端之间,所述路由器包括:
输入电路,用于通过异步数据网络从媒体服务器接收媒体流和与所述媒体流相关的定时信息;
定时模块,用于通过不包括所述异步数据网络的路径提供定时信号给所述客户端;
及输出电路,用于通过所述异步数据网络提供所述媒体流和所述定时信息,使得所述客户端能够使用所述定时信息和所述定时信号来缓冲所述媒体流。
CN201210018064.5A 2011-01-19 2012-01-19 使媒体流同步的方法、缓冲媒体流的方法及系统、路由器 Active CN102710982B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161434257P 2011-01-19 2011-01-19
US61/434,257 2011-01-19
US13/038,031 2011-03-01
US13/038,031 US8643696B2 (en) 2011-01-19 2011-03-01 Synchronizing media streams using time signal(s) from an independent time source

Publications (2)

Publication Number Publication Date
CN102710982A CN102710982A (zh) 2012-10-03
CN102710982B true CN102710982B (zh) 2016-03-16

Family

ID=45495722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210018064.5A Active CN102710982B (zh) 2011-01-19 2012-01-19 使媒体流同步的方法、缓冲媒体流的方法及系统、路由器

Country Status (6)

Country Link
US (1) US8643696B2 (zh)
EP (2) EP2887678A3 (zh)
KR (1) KR101355059B1 (zh)
CN (1) CN102710982B (zh)
HK (1) HK1169248A1 (zh)
TW (1) TWI547123B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8643696B2 (en) * 2011-01-19 2014-02-04 Broadcom Corporation Synchronizing media streams using time signal(s) from an independent time source
WO2012172310A2 (en) * 2011-06-16 2012-12-20 Blinkpipe Limited Video conferencing systems
US8692864B2 (en) * 2012-05-31 2014-04-08 Ronald Angelo Dynamic virtual multipoint video conference control unit
JP5509284B2 (ja) * 2012-09-14 2014-06-04 株式会社東芝 マルチフォーマット出力装置、マルチフォーマット出力装置の制御方法
WO2015004131A1 (en) * 2013-07-09 2015-01-15 Koninklijke Kpn N.V. Synchronized data processing between receivers
KR102131626B1 (ko) * 2014-02-21 2020-07-08 삼성전자주식회사 미디어 데이터 싱크 방법 및 장치
KR102105641B1 (ko) * 2014-04-04 2020-04-29 한국전자통신연구원 분산형 텔레프레즌스 플랫폼에서 영상 회의를 지원하는 방법 및 시스템
CN104079957B (zh) * 2014-06-25 2017-09-01 广东欧珀移动通信有限公司 一种多媒体设备同步操作的方法及系统
CN104918198A (zh) * 2015-05-11 2015-09-16 阔地教育科技有限公司 一种基于在线课堂的音频校准方法及装置
US11089160B1 (en) * 2015-07-14 2021-08-10 Ujet, Inc. Peer-to-peer VoIP
US9742549B1 (en) * 2016-09-29 2017-08-22 Analog Devices Global Apparatus and methods for asynchronous clock mapping
US10805658B2 (en) * 2018-09-12 2020-10-13 Roku, Inc. Adaptive switching in a whole home entertainment system
US10834296B2 (en) * 2018-09-12 2020-11-10 Roku, Inc. Dynamically adjusting video to improve synchronization with audio
US10861482B2 (en) * 2018-10-12 2020-12-08 Avid Technology, Inc. Foreign language dub validation
FR3121541A1 (fr) * 2021-03-31 2022-10-07 Devialet Installation de restitution sonore synchronisée temporellement.

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1138801A (zh) * 1995-04-10 1996-12-25 计数设备公司 独立于传送定时进行调整和传送定时程序数据的方法和设备
CN1202782A (zh) * 1997-03-15 1998-12-23 Lg电子株式会社 具有分包基本流解码器的活动图像专家组标准ⅱ系统
CN101039156A (zh) * 2006-03-17 2007-09-19 华为技术有限公司 同步数字系列业务数据传送方法及装置
CN101043449A (zh) * 2006-03-21 2007-09-26 卓联半导体有限公司 定时源
CN101442375A (zh) * 2008-12-29 2009-05-27 山东大学 一种多网络兼容的授时服务装置及其工作方法
JP2010239641A (ja) * 2010-05-27 2010-10-21 Sharp Corp 通信装置、通信システム、通信装置の制御プログラム、および通信装置の制御プログラムを記録した記録媒体

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594859A (en) 1992-06-03 1997-01-14 Digital Equipment Corporation Graphical user interface for video teleconferencing
JPH07212766A (ja) * 1994-01-18 1995-08-11 Matsushita Electric Ind Co Ltd 動画像圧縮データ切り換え装置
US5608651A (en) * 1995-01-31 1997-03-04 Intel Corporation Method and apparatus for scheduling and mixing media in a multi-media environment
US5751694A (en) * 1995-05-22 1998-05-12 Sony Corporation Methods and apparatus for synchronizing temporally related data streams
JPH09139937A (ja) * 1995-11-14 1997-05-27 Fujitsu Ltd 動画ストリーム変換装置
US6061399A (en) * 1997-05-28 2000-05-09 Sarnoff Corporation Method and apparatus for information stream frame synchronization
US6204944B1 (en) * 1997-07-18 2001-03-20 Nippon Telegraph And Telephone Corporation All-optical time-division demultiplexing circuit and all-optical TDM-WDM conversion circuit
GB2328099B (en) * 1997-08-08 2002-07-03 British Broadcasting Corp Processing coded video
US6360271B1 (en) 1999-02-02 2002-03-19 3Com Corporation System for dynamic jitter buffer management based on synchronized clocks
US6404711B1 (en) * 1998-05-19 2002-06-11 Sony Corporation System including comparing a separated time stamp to a generated timing signal and controlling a timing signal on the basis of continuity of time stamps
US6480511B1 (en) * 1998-09-15 2002-11-12 Avaya Technology Corp. Arrangement for synchronization of a stream of synchronous traffic delivered by an asynchronous medium
JP4734690B2 (ja) * 2000-04-28 2011-07-27 ソニー株式会社 信号送出方法及び信号送出装置
US7346698B2 (en) * 2000-12-20 2008-03-18 G. W. Hannaway & Associates Webcasting method and system for time-based synchronization of multiple, independent media streams
US7764863B1 (en) * 2002-03-06 2010-07-27 Bigband Networks Inc. System and method for providing trick modes
US7787539B2 (en) * 2002-07-17 2010-08-31 Broadcom Corporation Decoding and presentation time stamps for MPEG-4 advanced video coding
DE60211157T2 (de) * 2002-09-06 2007-02-08 Sony Deutschland Gmbh Synchrones Abspielen von Medien-Paketen
JP3909704B2 (ja) * 2003-04-04 2007-04-25 ソニー株式会社 編集システム
US20040244057A1 (en) 2003-04-30 2004-12-02 Wallace Michael W. System and methods for synchronizing the operation of multiple remote receivers in a broadcast environment
US9286214B2 (en) 2003-06-06 2016-03-15 Arris Enterprises, Inc. Content distribution and switching amongst data streams
US8028097B2 (en) * 2004-10-04 2011-09-27 Sony Corporation System and method for synchronizing audio-visual devices on a power line communications (PLC) network
TWI294085B (en) * 2005-07-12 2008-03-01 Realtek Semiconductor Corp Method and apparatus for synchronizing multimedia data stream
WO2007049999A1 (en) * 2005-10-26 2007-05-03 Timetomarket Viewit Sweden Ab Information intermediation system
KR100811784B1 (ko) 2007-06-28 2008-03-07 엘지전자 주식회사 미디어 재생 장치와 그를 이용하는 미디어 재생 방법 및이동통신 단말기
US8612643B2 (en) * 2007-06-30 2013-12-17 Microsoft Corporation Interfaces for digital media processing
EP2232812B1 (en) * 2007-12-05 2018-02-21 Koninklijke KPN N.V. Method and system for synchronizing the output of terminals
US9497103B2 (en) * 2008-02-29 2016-11-15 Audinate Pty Limited Isochronous local media network for performing discovery
US20090257455A1 (en) * 2008-04-15 2009-10-15 Tellabs Operations, Inc. Method and apparatus for synchronizing timing of signal packets
EP2114053A1 (en) 2008-04-30 2009-11-04 THOMSON Licensing Delivery delay compensation on synchronised communication devices in a packet switched network
US20100091188A1 (en) * 2008-07-11 2010-04-15 Stmicroelectronics Pvt. Ltd. Synchronization of secondary decoded media streams with a primary media stream
EP2150062B1 (en) 2008-07-28 2022-10-26 Imagine Communications Corp. Improved method, system and apparatus for synchronizing signals
DE102009028645B4 (de) * 2009-08-19 2014-04-03 Raumfeld Gmbh Verfahren und Anordnung zur Synchronisation von Datenströmen in Netzwerken sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium
US8643696B2 (en) * 2011-01-19 2014-02-04 Broadcom Corporation Synchronizing media streams using time signal(s) from an independent time source

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1138801A (zh) * 1995-04-10 1996-12-25 计数设备公司 独立于传送定时进行调整和传送定时程序数据的方法和设备
CN1202782A (zh) * 1997-03-15 1998-12-23 Lg电子株式会社 具有分包基本流解码器的活动图像专家组标准ⅱ系统
CN101039156A (zh) * 2006-03-17 2007-09-19 华为技术有限公司 同步数字系列业务数据传送方法及装置
CN101043449A (zh) * 2006-03-21 2007-09-26 卓联半导体有限公司 定时源
CN101442375A (zh) * 2008-12-29 2009-05-27 山东大学 一种多网络兼容的授时服务装置及其工作方法
JP2010239641A (ja) * 2010-05-27 2010-10-21 Sharp Corp 通信装置、通信システム、通信装置の制御プログラム、および通信装置の制御プログラムを記録した記録媒体

Also Published As

Publication number Publication date
TWI547123B (zh) 2016-08-21
EP2887678A2 (en) 2015-06-24
EP2480002A3 (en) 2013-10-09
EP2480002A2 (en) 2012-07-25
HK1169248A1 (zh) 2013-01-18
KR20120084686A (ko) 2012-07-30
US20120182383A1 (en) 2012-07-19
EP2887678A3 (en) 2015-09-30
US8643696B2 (en) 2014-02-04
TW201246844A (en) 2012-11-16
KR101355059B1 (ko) 2014-01-24
CN102710982A (zh) 2012-10-03

Similar Documents

Publication Publication Date Title
CN102710982B (zh) 使媒体流同步的方法、缓冲媒体流的方法及系统、路由器
CN100421412C (zh) 在不同种类的网络上模拟常量延迟网络和进行常量延迟通信的方法
US20060029139A1 (en) Data transmission synchronization scheme
CN102857830A (zh) 网络媒体适配器
CN104509023A (zh) 跨多个信道的帧同步
CN104065979A (zh) 一种动态显示和视频内容相关联信息方法及系统
US7925980B2 (en) N-way multimedia collaboration systems
CN105721620A (zh) 视频信息推送方法和装置及视频信息展示方法和装置
CN112492357A (zh) 一种处理多视频流的方法、装置、介质和电子设备
CN106717079B (zh) 使用wifi信标的时钟同步
CN102870424A (zh) 用于记录和播放媒体文件的设备和方法及其记录介质
CN101933339B (zh) 电子设备、远程控制系统、信号处理方法、控制程序及记录介质
JP4758506B2 (ja) クロック同期方法
CN110337010A (zh) 视音频数据处理方法、执法记录仪、管理服务器及执法系统
CN104902323A (zh) 媒体播放方案发布方法及装置
CN103929468A (zh) 对移动装置显示复制中的用户输入使用分离逆向信道的方法和设备
JP2015035222A (ja) Eメールをパッケージ化及び表示する方法
CN110073632A (zh) 对网络设备进行同步的方法以及网络设备
JP5818353B2 (ja) 画面表示制御システムおよび画面表示制御方法
CN105263032B (zh) 一种节目获取方法及装置
CN107211018A (zh) 调整媒体流化的质量等级
US20220311527A1 (en) Broadcasting contextual information through modification of audio and video interfaces
EP2838248B1 (en) Display device, method of operating a display device, and computer program product
JP6895176B2 (ja) 送信装置、受信装置、送信方法および受信方法
US20040054809A1 (en) Synchronous object unification protocol

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1169248

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1169248

Country of ref document: HK

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170328

Address after: Singapore Singapore

Patentee after: Avago Technologies Fiber IP Singapore Pte. Ltd.

Address before: 16215 Alton Park Road, Irvine, California, 92618-7013

Patentee before: Zyray Wireless Inc.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20181024

Address after: Singapore Singapore

Patentee after: Annwa high tech Limited by Share Ltd

Address before: Singapore Singapore

Patentee before: Avago Technologies Fiber IP Singapore Pte. Ltd.