CN110089120A - 用于在多个远程设备上同步播放媒体项的系统和方法 - Google Patents

用于在多个远程设备上同步播放媒体项的系统和方法 Download PDF

Info

Publication number
CN110089120A
CN110089120A CN201780065989.6A CN201780065989A CN110089120A CN 110089120 A CN110089120 A CN 110089120A CN 201780065989 A CN201780065989 A CN 201780065989A CN 110089120 A CN110089120 A CN 110089120A
Authority
CN
China
Prior art keywords
source
media item
target device
source device
delay time
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.)
Granted
Application number
CN201780065989.6A
Other languages
English (en)
Other versions
CN110089120B (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.)
Dizer SA
Original Assignee
Pastoral Ltd By Share Ltd
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 Pastoral Ltd By Share Ltd filed Critical Pastoral Ltd By Share Ltd
Publication of CN110089120A publication Critical patent/CN110089120A/zh
Application granted granted Critical
Publication of CN110089120B publication Critical patent/CN110089120B/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/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/237Communication with additional data server
    • 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/43076Synchronising 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 the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices
    • 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 Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

总体上提供了一种用于在多个远程设备上同步播放流媒体项的方法和系统。该系统可以包括源设备,该源设备布置为播放并流式传输媒体项并且布置为选择与其共享其媒体项的至少一个目标设备。该系统可以包括与源设备和至少一个目标设备通信的同步服务器。该同步服务器可以布置为:(i)确定源设备的源平均延迟时间和至少一个目标设备中的每一个的目标平均延迟时间;并且(ii)对于至少一个目标设备中的每一个,基于源平均延迟时间和相应目标设备的目标平均延迟时间,确定能够用于将对所述源设备播放的所述媒体项的播放同步达到预定精确度的全局时间偏移量。

Description

用于在多个远程设备上同步播放媒体项的系统和方法
技术领域
本发明涉及流媒体项领域,并且更具体地涉及用于在多个远程设备上同步播放流媒体项的方法和系统。
背景技术
当前的在多个远程设备之间共享媒体项的方法通常会要求源设备向多个目标设备发送特定媒体项或者与目标设备共享该特定媒体项的指定位置的URL。例如,可以采用源设备与目标设备之间的蓝牙连接来完成这种发送。当前方法的一个缺点在于:它们不支持远程同步。例如,一旦源设备和目标设备超出了指定范围,蓝牙连接则可能会失效。当前方法的另一个缺点在于:它们不支持相应的远程用户以实时且同步的方式体验共享的媒体项。例如,借助于蓝牙连接来发送的歌曲可能无法以同步方式在源设备和目标设备上同时播放。此外,目标设备可能会要求专用凭证才能访问特定媒体项或访问特定媒体项的指定位置,这继而可能会在播放该媒体时导致进一步的非同步延迟。
其他在多个远程设备之间共享媒体项的当前方法可能涉及到流式传输方法。流式传输方法通常可以包括:源设备对特定媒体项进行流式传输并且多个目标设备接收并播放其流媒体项。多个远程设备播放同一特定媒体项所带来的一个问题在于:每个远程设备的本地时钟相对于公共参考时钟(例如,UNIX时间)可能是不精确的。例如,每个远程设备的不精确性的范围可以在微秒到秒之间。这种不精确性可以取决于例如设备的设置、用于将媒体传递给用户的传输信道的实际吞吐量(例如,互联网连接)、蜂窝网络提供商等。因此,当前的对媒体进行共享的流式传输方法的一个缺点在于:这些流式传输方法不支持以实时且同步的方式体验共享的媒体项。根据本发明的一些实施例,术语“实时”可以指连续事件之间的用户基本上不会注意到的时间差,例如,在音感出色的用户的情形下小于0.01秒。
发明内容
本发明的一个实施例提供了一种用于同步播放流媒体项的系统,该系统包括:源设备,该源设备布置为播放并流式传输媒体项并且布置为选择与其共享所播放的媒体项的至少一个目标设备;以及与源设备和至少一个目标设备通信的同步服务器,该同步服务器布置为:确定源设备的源平均延迟时间和至少一个目标设备中的每一个的目标平均延迟时间;并且对于至少一个目标设备中的每一个,基于源平均延迟时间和相应目标设备的目标平均延迟时间,确定可用于使源设备所播放的媒体项的播放同步达到预定精确度的全局时间偏移量。
本发明的另一实施例提供了一种同步播放流媒体项的方法,该方法包括:由源设备播放媒体项;由源设备选择与其共享所播放的媒体项的至少一个目标设备;由同步服务器确定源设备的源平均延迟时间和至少一个目标设备中的每一个的目标平均延迟时间;并且对于至少一个目标设备中的每一个,基于源平均延迟时间和相应目标设备的目标平均延迟时间,由同步服务器确定可用于使源设备所播放的媒体项的播放同步达到预定精确度的全局时间偏移量。
本发明的这些、附加和/或其他方面和/或优点在下面的详细描述中进行了阐述;可从详细描述中推断得出;和/或可通过本发明的实践来获知。
附图说明
为了更好地理解本发明的实施例并示出如何实现本发明的实施例,现在仅通过示例的方式来参考附图,其中相同的附图标记始终表示对应的元件或部分。
在附图中:
图1是根据本发明的一些实施例的用于在多个远程设备上同步播放流媒体项的系统的示意图;
图2A是根据本发明的一些实施例的方法的流程图,该方法由用于同步播放流媒体的系统执行,通过同步服务器来发起连接并且标识多个远程设备;
图2B是根据本发明的一些实施例的方法的流程图,该方法由用于同步播放流媒体的系统执行来为多个远程设备确定可用于同步播放流媒体项的全局时间偏移量;
图3是根据本发明的一些实施例的方法的流程图,该方法由用于同步播放流媒体的系统的多个远程设备执行来以同步方式找出并播放流媒体项;并且
图4是根据本发明的一些实施例的在多个远程设备上同步播放流媒体项的方法的流程图。
具体实施方式
在以下描述中,描述了本发明的各个方面。出于解释的目的,阐述了具体的配置和细节,从而提供对本发明的透彻理解。然而,对于本领域技术人员来说将是显而易见的是,可以在没有这里给出的具体细节的情况下实践本发明。此外,为了不使本发明变得晦涩难懂,可以省略或者简化公知特征。具体参考附图,应强调的是,所示出的细节仅是示例性的并且仅用于对本发明进行说明性讨论的目的,而且,之所以呈现这些细节是为了提供所谓的对本发明的原理及概念方面的最有效且最易于理解的描述。就此而言,相比起对本发明进行基本理解所必需的示出程度,没有试图以更详细的方式来示出本发明的结构细节,结合附图所进行的描述使得本领域技术人员能轻易地知晓如何能够在实践中体现本发明的若干形式。
在详细解释本发明的至少一个实施例之前,应理解的是,本发明的应用不局限于以下描述中阐述的或在以下附图中图示的构造细节和组件布置。本发明适用于可以按照各种方式实践或实施的其他实施例以及所公开实施例的组合。而且,应理解,这里采用的措辞和术语是出于描述的目的,不应被认为是限制性的。
除非另有明确说明,否则从以下讨论中可以明显看出,应当理解,在整个说明书中,采用了诸如“处理”、“计算”、“演算”、“确定”、“增强”等术语的讨论是指计算机或计算系统或类似电子计算设备的动作和/或过程,此动作和/或过程将表示为计算系统的寄存器和/或存储器内的物理(如电子)量的数据操控和/或转换成类似地表示为计算系统的存储器、寄存器或其他此类数据存储装置、传输或显示设备内的物理量的数据。任何公开的模块或单元可以至少部分地由计算机处理器实现。
总体上提供了一种用于在多个远程设备上同步播放流媒体项的方法和系统。该系统可以包括源设备,该源设备布置为播放并流式传输媒体项并且布置为选择与其共享其媒体项的至少一个目标设备。该系统可以包括与源设备和至少一个目标设备通信的同步服务器。该同步服务器可以布置为:(i)确定源设备的源平均延迟时间和至少一个目标设备中的每一个的目标平均延迟时间;并且(ii)对于至少一个目标设备中的每一个,基于源平均延迟时间和相应目标设备的目标平均延迟时间,确定可用于使其媒体项的播放同步达到预定精确度的全局时间偏移量。
现参考图1,图1示意性地图示了根据本发明的一些实施例的用于在多个远程设备(比如,源设备110和一个或多个目标设备120)上同步播放流媒体项的系统100。
系统100可以包括布置为播放和/或流式传输媒体项的源设备110。源设备110可以布置为选择与其共享所播放的媒体项的一个或多个目标设备120。例如,在各种实施例中,媒体项可以是诸如音乐曲目的音频文件、诸如电影剪辑片段的视频文件、包括诸如音频、视频和/或演示之类的多媒体的现场视频会议、虚拟现实游戏等。在各种实施例中,媒体项可以是现场或实时的项目,或者可以是预先录制的项目。在各种实施例中,媒体项可以是可以适合于与目标设备120共享的任何非静态(例如,动态)媒体项。
系统100可以包括与源设备110和目标设备120通信的应用服务器130。应用服务器130可以布置为从源设备110接收同步(“同步”)信息并且还将同步通知发送到目标设备120。
系统100可以包括与源设备110和目标设备120通信的同步服务器140。同步服务器140可以布置为确定源设备110的源平均延迟时间和对应目标设备120的目标平均延迟时间。同步服务器140还可以布置为对于每个目标设备120,基于源平均延迟时间和相应的目标平均延迟时间,确定用于使源设备110所播放的媒体项的播放同步达到预定精确度的全局时间偏移量。
现参考图2A,图2A是根据本发明的一些实施例的方法的流程图,该方法由用于同步播放流媒体的系统(比如,系统100)执行,通过同步服务器(比如,同步服务器140)来发起连接以及标识多个远程设备(比如,源设备110和目标设备120)。
源设备110可以布置为播放和/或流式传输111媒体项(例如,现场的或预先录制的音乐曲目、视频剪辑片段等)。源设备110可以选择112a与其共享所播放的媒体项的一个或多个目标设备120。源设备110可以基于源设备110的指定参数和目标设备120的指定参数来生成同步信息。在一些实施例中,同步信息可以包括以下中的至少一个:源设备110标识符、目标设备120标识符、同步标识符和/或播放媒体项相关数据(例如,媒体项的标题、艺术家姓名、专辑名称、播放源、播放开始时间戳、播放持续时间、项目媒体年份、共享文本等)。例如,源设备110所播放的音乐曲目的同步信息可以包括播放源、播放源标识符、曲目名称、曲目艺术家、专辑名称、曲目持续时间、曲目年份、源设备110标识符、目标设备120标识符和/或同步标识符。在各种实施例中,同步信息可以包括标识媒体项和/或标识源设备110所需的其他参数。
源设备110可以布置为连接到应用服务器130和/或同步服务器140,并且可以布置为将同步信息发送112b到其服务器。
应用服务器130可以从源设备110接收同步信息。应用服务器130可以基于同步信息生成同步通知,并且还将其同步通知发送132到每个目标设备120。在一些实施例中,同步通知可以包括同步信息的至少一部分(例如,同步标识符)或从其衍生出的数据(例如,同步标识符的加密版本或编码版本)。在一些实施例中,同步通知可以包括第一时间差,例如,该第一时间差可以用于使目标设备120与源设备110同步达到一定的精确度(例如,如下面结合图2B所述),例如,在同步过程失败的情况下。
目标设备120可以从应用服务器120接收122a同步通知。在一些实施例中,目标设备120的至少一部分可以处于睡眠模式下,而同步通知可以唤醒其目标设备。在各种实施例中,目标设备120的至少一部分可以接受122b或拒绝122d同步通知。在接受122b同步通知时,每个目标设备120可以连接到同步服务器140并发送122c目标同步数据到同步服务器140。在一些实施例中,由每个目标设备120发送的目标同步数据可以包括例如相应目标设备的标识符、相应目标设备的时间戳和/或同步标识符中的至少一个。在拒绝122d同步通知时,目标设备120可以取消并删除122e其同步通知。在各种实施例中,如果没有等待同步通知的目标设备120和/或如果源设备110不再播放111媒体项,则可以删除122e同步通知。
源设备110还可以生成并发送112c源同步数据到同步服务器140。在一些实施例中,源同步数据包括源设备110标识符、目标设备120标识符、源设备110时间戳、同步标识符和/或播放媒体项相关数据(例如,播放开始时间戳和/或播放持续时间)中的至少一个。
同步服务器140可以从源设备110接收同步信息,并且可以基于同步信息发起142a与源设备110和目标设备120的连接(例如,套接字)。同步服务器140还可以从源设备110接收源同步数据并从目标设备120接收目标同步数据(例如,在接受122b同步通知时)。在一些实施例中,同步服务器140可以分别基于源同步数据和目标同步数据来标识142b源设备110和目标设备120。例如,可以基于例如源设备110标识符、目标设备120标识符、源设备110时间戳、同步标识符和/或媒体项相关数据中的至少一个来标识源设备110。可以基于例如目标设备120标识符、目标设备120时间戳和/或同步标识符中的至少一个来标识目标设备120。
在一些实施例中,同步服务器140可以(在标识142b期间或标识142b时)基于源同步数据和目标同步数据确定并保存142c分别用于源设备110和每个目标设备120的第一源时间戳和第一目标时间戳。
在标识142b源设备110和目标设备120时,同步服务器140可以检查142d同步服务器是否包括用于其标识出的源设备和目标设备的先前同步对象。在一些实施例中,同步服务器140可以包括先前同步对象(例如,在这些特定源设备和目标设备到同步服务器的先前连接期间生成)。替代地或另外地,源设备110可以生成并发送112d同步对象,同步服务器140可以接收并保存142e其同步对象。在一些实施例中,同步服务器140可以配置为生成同步对象。在一些实施例中,目标设备120可以配置为在源设备110生成同步对象时待机。每个同步对象用于源设备与特定目标设备之间的特定同步,此特定同步被给予了特定同步标识符。
在一些实施例中,当前同步对象(和/或先前同步对象)包括以下中的至少一个:源设备110标识符、同步标识符、播放媒体项相关数据(例如,媒体项的标题、艺术家姓名、专辑名称、播放源、播放开始时间戳、播放持续时间、项目媒体年份、共享文本等)、第一源时间差和/或源设备110的源平均延迟时间(例如,如下面结合图2B所述)。例如,音乐曲目(例如,源设备110所播放的媒体项)的同步对象(或先前同步对象)可以包括播放源、播放源标识符、曲目名称、曲目艺术家姓名、专辑名称、播放持续时间、曲目年份、源设备110标识符和/或同步标识符。在各种实施例中,同步对象可以包括标识媒体项和/或标识源设备110和目标设备120所需的其他参数。
在生成同步对象时(或者如果同步服务器140包括先前同步对象),同步服务器140可以进一步针对每个目标设备120确定144用于使源设备110所播放的媒体项的播放同步达到预定精确度的全局时间偏移量(例如,如下面结合图2B所述)。
现参考图2B,图2B是根据本发明的一些实施例的方法的流程图,该方法由用于同步播放流媒体的系统(比如,系统100)执行来为多个远程设备(比如,源设备110和目标设备120)确定可用于同步播放流媒体项的全局时间偏移量。
同步服务器140可以基于相应远程设备的第一时间戳和当前同步服务器140的时间戳来确定144a每个远程设备的第一时间差。例如,同步服务器140可以基于第一源时间戳和当前同步服务器140的时间戳来确定源设备110的第一源时间差(例如,通过从当前同步服务器时间戳中减去第一源时间戳),并且基于第一目标时间戳和当前同步服务器140的时间戳来确定每个目标设备120的第一目标时间差。
在各种实施例中,例如,第一时间差(例如,第一源时间差和/或第一目标时间差)可以处于1秒到1小时之间的范围内。在各种实施例中,由于例如存在有同步服务器140和/或远程设备的本地时钟干扰,因此,第一时间差可能会超出其范围。在一些实施例中,第一时间差可以归因于例如传输延迟(例如,延迟时间)和/或归因于同步服务器140的本地时间和相应远程设备的本地时间的差。在各种实施例中,例如,通过同步服务器140或目标设备120可以使用第一时间差来将源设备110所播放的媒体项的播放在目标设备120之间同步达到精确范围,例如,在1秒到1小时之间的任何时间处。
同步服务器140和/或每个远程设备(例如,源设备110和目标设备120)可以布置为在服务器与其远程设备之间执行预定次数的同步迭代。同步服务器140可以布置为对于每个远程设备确定平均延迟时间(例如,源设备120的源平均延迟时间和对应目标设备120的目标平均延迟时间)。在一些实施例中,源平均延迟时间和目标平均延迟时间可以归因于例如传输延迟和/或归因于同步服务器140的本地时间和相应远程设备的本地时间的差。
在各种实施例中,同步迭代的次数对于每个远程设备而言可以是不同的,和/或可以由相应的远程设备或由同步服务器140确定。例如,同步迭代的预定次数的范围可以在1到100之间。在一些实施例中,增加相应远程设备的同步迭代的次数可以增加所确定的相应远程设备的平均延迟时间的精确度,但是也延长了确定相应远程设备的平均延迟时间的总时间。相反,减少相应远程设备的同步迭代的次数可以降低所确定的相应远程设备的平均延迟时间的精确度,但是也缩短了确定相应远程设备的平均延迟时间的总时间。在一些实施例中,提高网络的稳定性可以增加所确定的平均延迟时间的精确度。
同步服务器140可以在每次同步迭代时向每个远程设备发送144b同步迭代分组,并且每个远程设备可以接收114a其同步迭代分组。在一些实施例中,同步迭代分组可以包括同步迭代分组数据集,该同步迭代分组数据集可以包括例如先前请求时间和当前迭代索引(例如,如下所述)。
每个远程设备(例如,源设备110和/或目标设备120)可以在每次同步迭代时确定114b请求时间。在一些实施例中,可以基于相应远程设备的当前时间戳和先前时间戳(例如,在先前同步迭代期间保存的时间戳)来确定请求时间。例如,请求时间可以是相应远程设备的当前时间戳与先前时间戳之间的差。在一些实施例中,在第一次同步迭代时,可以基于相应远程设备的当前时间戳和第一时间戳(例如,在远程设备的标识142时(或期间)进行保存142c,如以上结合图2A所述)来确定请求时间。
每个远程设备(例如,源设备110和/或目标设备120)可以在每次同步迭代时基于相应远程设备的请求时间来确定114c当前延迟时间。在一些实施例中,可以通过将相应远程设备的请求时间Ti k除以因子2(例如,因为请求时间可以表示信号往返行进的时间)来确定相应远程设备的当前延迟时间li k(其中,k是远程设备索引,i是同步迭代索引)。例如,等式1示出了相应远程设备的当前延迟,如下所示:
每个远程设备(例如,源设备110和/或目标设备120)可以在每次同步迭代时保存114d远程设备的当前时间戳。在一些实施例中,每个远程设备可以使用相应远程设备的相应保存114d的当前时间戳来确定下一次同步迭代期间的请求时间。
每个远程设备(例如,源设备110和/或目标设备120)可以在每次同步迭代时生成并发送114e当前延迟时间数据集到同步服务器140。在一些实施例中,相应远程设备的当前延迟时间数据集可以包括相应远程设备的当前延迟时间(例如,确定114b)和相应远程设备的当前迭代索引(例如,i)。同步服务器140还可以布置为从每个远程设备接收144c远程设备的相应延迟时间数据集。
同步服务器140可以对于每个远程设备(例如,源设备110和/或目标设备120)并在每次同步迭代时,基于相应远程设备的延迟时间数据集,确定144d平均延迟时间。在一些实施例中,可以基于相应远程设备的先前平均延迟时间(例如,相对于先前同步迭代而计算出的累积平均延迟时间)和相应远程设备的当前延迟时间(例如,确定114c并包括在相应远程设备的延迟时间数据集中)来确定相应远程设备的平均延迟时间lk avg。例如,等式2示出了相应远程设备的平均延迟时间,如下所示:
同步服务器140可以对于每个远程设备并在每次同步迭代时检查144e相应远程设备的当前迭代索引是否超过预定次数的同步迭代。在一些实施例中(例如,如果当前迭代索引未超过预定次数的同步迭代),同步服务器140可以向相应远程设备发送144另一同步迭代分组。
替代地或另外地(例如,如果当前迭代索引超过了预定次数的同步迭代),同步服务器可以对于每个远程设备保存相应远程设备的平均延迟时间(例如,源设备110的源平均延迟时间和对应目标设备120的目标平均延迟时间)。在一些实施例中,同步服务器140可以将源设备110的源平均延迟时间保存在同步对象中(例如,如上面结合图2A所述地进行保存142e)。
同步服务器140还可以基于源平均延迟时间、相应目标设备的目标平均延迟时间、第一源时间差和/或相应目标设备的第一目标时间差中的至少一个来为每个远程设备确定144f全局时间偏移量。例如,可以基于源平均延迟时间ls avg、相应目标设备的目标平均延迟时间lk avg、媒体项播放开始时间戳Tm play(例如,包括在同步对象中,如上面结合图2A所述)和第一源时间差ΔTs(例如,如上所述地进行确定144a)来确定每个目标设备120的全局时间偏移量ΔTk offset(其中,k是远程设备索引)。例如,等式3示出了相应目标设备的全局时间偏移量:
同步服务器140还可以向每个远程设备发送相应远程设备的全局时间偏移量。在一些实施例中,每个目标设备120可以使用相应目标设备的全局时间偏移量来将源设备110所播放的媒体项的同步播放建立达到预定精确度。
在各种实施例中,源平均延迟时间和/或目标平均延迟时间中的每一个可以处于例如1微秒到10秒之间的范围内。因此,在各种实施例中,例如,可以由同步服务器140或目标设备120使用源平均延迟时间和/或目标平均延迟时间来将源设备110所播放的媒体项的播放在目标设备120之间同步达到预定精确度范围,例如,在1微秒到10秒之间(例如,如上所述)。也可以使用其他值。
现参考图3,图3是根据本发明的一些实施例的方法的流程图,该方法由用于同步播放流媒体的系统(比如,系统100)的多个远程设备(比如,目标设备120)执行来以同步方式找出并播放流媒体项。
每个目标设备120可以布置为从源设备110(例如,作为同步信息的一部分)、应用服务器120(例如,作为同步信息的一部分)或同步服务器140(例如,作为同步对象的一部分)中的至少一个接收124a播放媒体项相关数据。例如,播放媒体项相关数据可以包括播放源、播放源标识符、曲目名称、曲目艺术家、专辑名称、曲目持续时间、曲目年份(例如,如上面结合图2A所述)。
每个目标设备120还可以接收124b相应目标设备的全局时间偏移量(例如,如上面结合图2B所述地进行确定144)。在各种实施例中,在目标设备120接收124a播放媒体相关数据和/或接收124b全局时间偏移量时,同步服务器可以删除同步对象。
目标设备可以基于播放媒体项相关数据来检查124c媒体项播放源是否可用。在一些实施例中(例如,如果播放源是可用的),目标设备120可以加载媒体项播放源并开始124d播放其媒体项。每个目标设备120还可以布置为基于相应目标设备的全局时间偏移量来寻找124e播放媒体项,从而使播放与源设备110同步。
替代地或另外地(例如,如果播放源不可用),目标设备120可以布置为执行智能搜索126。在各种实施例中,智能搜索126可以由同步服务器140和/或专用搜索服务器执行。
智能搜索可以包括将播放媒体项相关数据分解126a为媒体项数据的多个部分。例如,媒体项数据的多个部分的第一部分可以包括媒体项名称,媒体项数据的多个部分的第二部分可以包括媒体项艺术家姓名,和/或媒体项数据的多个部分的第三部分可以包括媒体项专辑名称和/或年份。在一些实施例中,将播放媒体项相关数据分解126a为其多个部分可以允许独立于当前媒体项源的搜索方法来执行智能搜索126。
智能搜索可以包括例如通过媒体内容提供商进行搜索,并且基于媒体项数据的多个部分确定126b多个搜索结果。例如,搜索结果可以包括媒体项。在一些实施例中,可以基于例如搜索结果效果、搜索结果文件大小等对一些媒体内容提供商进行优先级排序。
智能搜索可以包括基于预定过滤参数来过滤126c其搜索结果。在一些实施例中,过滤126c可以包括从搜索结果中检测出并清除掉例如坏词(例如,没有确定/标识出源设备110所播放的媒体项的词)、错误媒体项和/或非原始媒体项。在一些实施例中,过滤126c可以确保搜索结果符合源设备110所播放的原始媒体项。
智能搜索可以包括基于预定分级参数对多个搜索结果中的每一个进行分级126d。例如,相对于与播放媒体项相关数据的多个部分的匹配数量更少的另一搜索结果,与播放媒体项相关数据的多个部分的匹配数量更多的搜索结果可以接收到更高的等级。在另一示例中,可以基于搜索结果的相关数据来执行分级126d(例如,可用数据越相关,等级也就越高)。
智能搜索还可以包括检查126e最高等级是否超过预定分级阈值。在一些实施例中(例如,如果最高等级低于预定分级阈值),则智能搜索可以包括将播放媒体项相关数据分解126a为媒体项数据的附加多个部分。例如,附加多个部分可以包括多个部分的重新排序和/或添加其他媒体项参数,这具体取决于媒体项类型和/或媒体源类型。
替代地或另外地(例如,如果最高等级超过了预定阈值),每个目标设备120可以开始播放124f与具有最高等级的搜索结果相关联的媒体项。每个目标设备120还可以布置为基于相应目标设备的全局时间偏移量来寻找124e所播放的媒体项(例如,与具有最高等级的搜索结果相关联的媒体项),从而将播放与源设备110同步。
在一些实施例中,源设备110可以在目标设备120执行智能搜索126时完成媒体项的播放111。在这种情况下,根据各种实施例,目标设备120可以布置为开始播放从一开始的搜索结果(例如,以支持当前的媒体项共享方法),或者可以布置为基于相应目标设备的全局时间偏移量来寻找124e所播放的媒体项(例如,与具有最高等级的搜索结果相关联的媒体项),从而将播放与源设备110同步。
现参考图4,图4是根据本发明的一些实施例的在多个远程设备上同步播放流媒体项的方法200的流程图。
方法200可以包括由源设备(例如,源设备110,如上结合图1至图2所述)播放(或开始)201媒体项。例如,在各种实施例中,媒体项可以是诸如音乐曲目的音频文件、诸如电影剪辑片段的视频文件、包括诸如音频、视频和/或演示之类的多媒体的现场视频会议、虚拟现实游戏等。在各种实施例中,媒体项可以是现场或实时的项目,或者可以是预先录制的项目。在各种实施例中,媒体项可以是可以适合于与目标设备共享的任何非静态(例如,动态)媒体项。
方法200可以包括由源设备选择202与其共享所播放的媒体项的一个或多个目标设备(例如,如上面结合图1至图2所述)。方法200可以包括由源设备将同步信息发送203到应用服务器(例如,应用服务器120,如上面结合图1至图2所述)。在一些实施例中,同步信息可以包括源设备标识符、目标设备标识符、同步标识符和/或播放媒体项相关数据(媒体项的标题、播放源、播放开始时间戳、共享文本等)中的至少一个。
方法200可以包括由应用服务器生成并发送204同步通知到至少一个目标设备中的每一个(例如,如上面结合图2A所述)。在一些实施例中,同步通知可以包括同步信息的至少一部分(例如,同步标识符)或从其衍生出的数据(例如,同步标识符的加密版本或编码版本)。在一些实施例中,同步通知可以包括第一源时间差,例如,该第一源时间差可以用于使目标设备120与源设备110同步达到一定的精确度(例如,如上面结合图2B所述)。
方法200可以包括由至少一个目标设备接收205同步通知。在一些实施例中,方法200可以包括由至少一个目标设备接受同步通知,并且还由至少一个目标设备中的每一个将相应目标设备的目标同步数据发送206到同步服务器(例如,同步服务器140,如上面结合图1至图2所述)。例如,在一些实施例中,由每个目标设备发送的目标同步数据可以包括相应目标设备的标识符、相应目标设备的时间戳和/或同步标识符中的至少一个。在一些实施例中,方法200可以包括由至少一个目标设备拒绝和删除207其同步通知。在各种实施例中,如果没有等待同步通知的目标设备和/或如果源设备不再播放媒体项,则可以删除同步通知。在各种实施例中,至少一个目标设备的至少一部分可以接受同步通知,而某些部分可以拒绝同步通知。
方法200可以包括由源设备生成并发送208源同步数据到同步服务器。方法200可以包括从源设备接收源同步数据,并基于源同步数据发起210与源设备和目标设备的连接(例如,套接字)。
方法200可以包括从源设备接收源同步数据并从至少一个目标设备接收目标同步数据,并且基于源同步数据和目标同步数据标识211源设备和至少一个目标设备(例如,如上面结合图2A所述)。方法200可以包括由同步服务器基于源同步数据和目标同步数据确定并保存212源设备和至少一个目标设备中的每一个的第一源时间戳和第一目标时间戳。
方法200可以包括基于源同步数据生成并保存214同步对象。在一些实施例中,同步对象可以包括源设备标识符、同步标识符、播放媒体项相关数据(例如,播放源、播放源标识符、共享文本等)和/或源设备的源平均延迟时间中的至少一个。在各种实施例中,方法200可以包括由源设备生成215同步对象或由同步服务器生成216同步对象(例如,如上面结合图2A所述)。
方法200可以包括基于相应远程设备的第一时间戳和当前同步服务器的时间戳来确定218(例如,由同步服务器)每个远程设备(比如,源设备和至少一个目标设备)的第一时间差(例如,如上面结合图2B所述)。例如,方法200可以包括基于第一源时间戳和当前同步服务器的时间戳确定源设备的第一源时间差,并且基于相应目标设备的第一目标时间戳和当前同步服务器的时间戳来确定每个目标设备的第一目标时间差。
方法200可以包括在同步服务器与每个远程设备(例如,源设备和目标设备)之间执行220预定次数的同步迭代。在一些实施例中,方法200可以包括确定221每个远程设备的同步迭代的次数。
方法200可以包括(例如,由同步服务器)在每次同步迭代时向每个远程设备发送222同步迭代分组,并且由其每个远程设备接收同步迭代分组。方法200可以包括由每个远程设备在每次同步迭代时基于相应远程设备的当前时间戳和先前时间戳来确定223请求时间(例如,如上面结合图2B所述)。在一些实施例中,方法200可以包括由每个远程设备在第一次同步迭代时基于相应远程设备的当前时间戳和第一时间戳来确定请求时间。
方法200可以包括由每个远程设备在每次同步迭代时基于相应远程设备的请求时间来确定224当前延迟时间(例如,如上面结合图2B所述)。在一些实施例中,方法200可以包括由每个远程设备在每次同步迭代时保存相应远程设备的当前时间戳。在一些实施例中,方法200可以包括由每个远程设备使用相应远程设备的保存的当前时间戳来确定下一次同步迭代期间的请求时间。
方法200可以包括由每个远程设备在每次同步迭代时生成并发送225当前延迟时间数据集到同步服务器,并且由其服务器接收当前延迟时间数据集,其中相应远程设备的当前延迟时间数据集可以包括相应远程设备的当前延迟时间和相应远程设备的当前迭代索引。
方法200可以包括:对于每个远程设备并在每次同步迭代时,由同步服务器基于相应远程设备的延迟时间数据集、相应远程设备的先前平均延迟时间和/或相应远程设备的当前延迟时间中的至少一个,确定226平均延迟时间(例如,如上面结合图2B所述)。
方法200可以包括在超过每个远程设备的同步迭代的预定次数时,由同步服务器保存227源设备的源平均延迟时间和至少一个目标设备中的每一个的目标平均延迟时间。
方法200可以包括由同步服务器基于源平均延迟时间、相应目标设备的目标平均延迟时间、第一源时间差和相应目标设备的第一目标时间差中的至少一个为每个远程设备确定228全局时间偏移量(例如,如上面结合图2B所述)。在一些实施例中,方法200可以包括向每个远程设备发送229远程设备的相应全局时间偏移量。
方法200可以包括由至少一个目标设备中的每一个从源设备、应用服务器或同步服务器中的至少一个接收230源设备所播放的媒体项的播放媒体项相关数据(例如,如上面结合图3所述)。在一些实施例中,播放媒体项相关数据可以包括例如播放源、播放源标识符、曲目名称、曲目艺术家、专辑名称、曲目持续时间、曲目年份。
方法200可以包括由至少一个目标设备中的每一个接收231相应目标设备的全局时间偏移量。在一些实施例中,方法200可以包括由至少一个目标设备中的每一个加载232媒体项播放源(例如,如果播放源可用)并播放其媒体项。方法200可以包括由至少一个目标设备中的每一个基于相应目标设备的全局时间偏移量来寻找233播放媒体项,从而使播放与源设备同步。
方法200可以包括由至少一个目标设备中的每一个和/或由同步服务器执行240智能搜索。方法200可以包括将播放媒体项相关数据分解241为媒体项数据的多个部分(例如,如上面结合图3所述)。方法200可以包括基于媒体项数据的多个部分搜索并确定242多个搜索结果。
方法200可以包括基于预定过滤参数来过滤243搜索结果(例如,如上面结合图3所述)。方法200可以包括基于预定分级参数对多个搜索结果中的每一个进行分级244(例如,如上面结合图3所述)。
方法200可以包括确定245具有较高等级的搜索结果。在一些实施例中,方法200可以包括将播放媒体项相关数据分解246为媒体项数据的附加多个部分(例如,如果最高等级低于预定分级阈值),其中例如,附加多个部分可以包括多个部分的重新排序和/或添加其他媒体项参数,这具体取决于媒体项类型和/或媒体源类型。
替代地或另外地,方法200可以包括由至少一个目标设备中的每一个开始播放247具有最高等级的搜索结果(例如,如果最高等级超过了预定阈值)。方法200可以包括由至少一个目标设备中的每一个基于相应目标设备的全局时间偏移量来寻找248所播放的媒体项(例如,具有最高等级的搜索结果),从而使播放与源设备同步。
在一些实施例中,上述系统和方法可以用于使尚未与源设备同步的远程设备(请求远程设备)发送如下的请求:加入已经由源设备和至少一个目标设备以同步方式播放的媒体的同步播放。该请求远程设备可以发出可以由例如应用服务器130(如图1和图2A所示)接收的同步迭代分组,而作为响应,应用服务器130可以发起同步标识和记录过程,例如,如在图2A中的步骤122a-122e中所述。在为请求远程设备获得全局时间偏移量的过程结束时,请求远程设备的整个过程如上文中关于其他目标设备所述地那样继续进行。
在一些实施例中,上述系统和方法可以在播放期间源设备所播放的媒体的播放时间戳发生改变之后并且在目标设备已经与源设备同步之后,实现目标设备与源设备的重新同步。例如,在源设备的用户发起的改变之后,这可能是有用的,例如,通过执行“寻找”操作以在播放媒体流中查找不同的位置。在一些实施例中,在“寻找”操作期间,或者在源设备恢复播放的任何其他情况下并且直到已经获得了沿着所播放媒体项的新时间位置为止,经过同步的目标设备可能不会经历时间同步的改变,或者可能会接收到播放流程发生变化的通知。当源设备已经确定了流媒体中的新时间位置时,可以出现新的同步周期,如上所述。
在一些实施例中,多个同步周期(例如,如上面结合图2B所述)可以在流媒体项播放期间的多个预定时间点(例如,每1至10秒)处发生。例如,多个同步周期可以确保在源设备和目标设备上连续且同步地播放其流媒体项。
本发明的一个优点可以包括允许在多个远程设备上远程地、实时地且同步地体验共享的媒体项。所公开的系统和方法可以允许在多个目标设备上将由源设备播放的媒体项的播放同步达到预定同步精确度,在一些实施例中,此预定同步精确度可以是精确(即小)到1微秒。预定精确度是因为同步服务器与源设备和目标设备中的每一个之间的多次同步迭代被执行来确定其每个设备的平均延迟时间而实现的。例如,多次同步迭代可以将因为例如各种网络峰值而导致的相当高的延迟时间的影响最小化,从而提高预定精确度。此外,在播放共享媒体项期间,可以在多个预定时间点处出现多个同步周期,从而例如确保在源设备和目标设备上连续且同步地播放其媒体项。
本发明的另一个优点在于:它提供了用于在多个远程设备上同步播放媒体项的软件解决方案,该软件解决方案无需采用专用硬件同步器(例如,蓝牙)。
以上参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或部分图,描述了本发明的各方面。将会理解的是,流程图图示和/或部分图的每个部分以及流程图图示和/或部分图中的各部分的组合可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器使得指令在经由计算机或其他可编程数据处理装置的处理器执行时创建出用于实现在流程图和/或部分图或其各部分中指定的功能/动作的装置。
这些计算机程序指令还可以存储在计算机非暂时性可读介质中,该计算机非暂时性可读介质可以指示计算机、其他可编程数据处理装置或其他设备以特定方式运行,由此使得存储在计算机可读介质中的指令产生包括指令的制造品,而这些指令实现在流程图和/或部分图部分或其多个部分中指定的功能/动作。计算机程序指令也可以加载到计算机、其他可编程数据处理装置或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生计算机实现过程,这样一来,在计算机或其他可编程装置上执行的指令提供了用于实现在流程图和/或部分图部分或其多个部分中指定的功能/动作的过程。
前述流程图和图示说明了根据本发明各种实施例的系统、方法和计算机程序产品的可行实施方式的架构、功能和操作。在这方面,流程图或部分图中的每个部分可以表示代码的模块、片段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。还应注意,在一些替代实施方式中,该部分中提到的功能可以不按图中所示的顺序发生。例如,连续示出的两个部分实际上可以基本上同时地执行,或者这些部分有时可以以相反的顺序执行,这具体取决于所涉及的功能。还应注意的是,部分图和/或流程图图示的每个部分以及部分图和/或流程图图示中的各部分的组合可以由执行指定功能或动作的基于专用硬件的系统来实现,或者由专用硬件和计算机指令的组合来实现。
在以上描述中,实施例是本发明的示例或实施方式。“一个实施例”、“实施例”、“某些实施例”或“一些实施例”的各种呈现不一定都指代相同的实施例。尽管可以在单个实施例的上下文中描述本发明的各种特征,但是,这些特征也可以单独地或者以任何合适的组合提供。相反,尽管为了清楚起见本发明可以在不同实施例的上下文中描述,但是本发明也可以在单个实施例中实现。本发明的某些实施例可以包括来自于上面公开的不同实施例的特征,并且某些实施例可以包含来自上面公开的其他实施例的元素。在特定实施例的上下文中对本发明元素的公开不应被视为将它们的用途仅仅局限于该特定实施例中。此外,应该理解的是,本发明可以以各种方式实施或实践,并且本发明可以在除了在以上描述中概述的实施例之外的某些实施例中实现。
本发明并不局限于那些图示或对应的描述。例如,流程不必经过每个所图示的框或状态,或者不必按照所图示和所描述的完全相同的顺序进行。除非另有定义,否则本文使用的技术术语和科学术语的含义是本发明所属领域的普通技术人员所通常理解的那样。虽然已经相对于有限数量的实施例描述了本发明,但是这些实施例不应被解释为对本发明范围的限制,而是作为一些优选实施例的示例。其他可能的变化、修改和应用也处于本发明的范围内。因此,本发明的范围不应受到到目前为止所描述的内容的限制,而应受到所附权利要求及其合法等同物的限制。

Claims (19)

1.一种用于同步播放流媒体项的系统,所述系统包括:
源设备,所述源设备布置为播放并流式传输媒体项并且布置为选择与其同步共享所播放的媒体项的至少一个目标设备;以及
与所述源设备和所述至少一个目标设备通信的同步服务器,所述同步服务器布置为:
确定所述源设备的源平均延迟时间和所述至少一个目标设备中的每一个的目标平均延迟时间;并且
对于所述至少一个目标设备中的每一个,基于所述源平均延迟时间和相应目标设备的目标平均延迟时间,确定能够用于将对所述源设备播放的所述媒体项的播放同步达到预定精确度的全局时间偏移量。
2.根据权利要求2所述的系统,其中所述同步包括由所述至少一个目标设备中的每一个基于相应目标设备的全局时间偏移量来寻找所述源设备所播放的所述媒体项。
3.根据权利要求1或2中任一项所述的系统,其中所述同步服务器还布置为在与所述源设备和所述至少一个目标设备中的每一个连接时,分别基于源设备的时间戳同步服务器的时间戳和基于相应目标设备的时间戳与所述时间戳同步服务器的时间戳,分别确定第一源时间差和相应的第一目标时间差。
4.根据权利要求3所述的系统,其中所述同步服务器还布置为基于所述第一源时间差和相应目标设备的第一目标差来确定所述至少一个目标设备中的每一个的所述全局时间偏移量。
5.根据权利要求1至4中任一项所述的系统,其中所述同步服务器布置为执行与所述源设备的预定次数的同步迭代以及与所述至少一个目标设备中的每一个的预定次数的同步迭代,从而分别确定所述源平均延迟时间和相应目标设备的目标平均延迟时间。
6.根据权利要求5所述的系统,其中确定同步迭代的次数,以提高所确定的所述源平均延迟时间和相应目标设备的目标平均延迟时间的精确度。
7.根据权利要求1至6中任一项所述的系统,其中所述同步服务器、所述目标设备或专用搜索服务器中的至少一个布置为执行智能搜索,所述智能搜索包括:
将所述源设备所播放的所述媒体项的播放媒体项相关数据分解为媒体项数据的多个部分;
基于媒体项数据的所述多个部分,确定多个搜索结果;并且
基于预定分级参数,对所述多个搜索结果中的每一个进行分级。
8.根据权利要求7所述的系统,其中所述智能搜索还包括基于预定过滤参数过滤所述多个搜索结果。
9.根据权利要求7至8所述的系统,其中所述至少一个目标设备中的每一个布置为播放具有最高等级的搜索结果,并且还基于相应目标设备的全局时间偏移量来寻找其搜索结果,从而使所述播放与所述源设备同步。
10.根据权利要求1至9中任一项所述的系统,还包括与所述源设备和所述至少一个目标设备通信的应用服务器,所述应用服务器布置为向所述至少一个目标设备中的每一个发送通知请求,从而唤醒相应目标设备并发起相应目标设备与所述同步服务器的连接。
11.一种同步播放流媒体项的方法,所述方法包括:
由源设备播放媒体项;
由所述源设备选择与其共享所播放的媒体项的至少一个目标设备;
由同步服务器确定所述源设备的源平均延迟时间和所述至少一个目标设备中的每一个的目标平均延迟时间;并且
对于所述至少一个目标设备中的每一个,基于所述源平均延迟时间和相应目标设备的目标平均延迟时间,由所述同步服务器确定能够用于将对所述源设备播放的所述媒体项的播放同步达到预定精确度的全局时间偏移量。
12.根据权利要求11所述的方法,其中所述同步包括由所述至少一个目标设备中的每一个基于相应目标设备的全局时间偏移量来寻找所述源设备所播放的所述媒体项。
13.根据权利要求11或12中任一项所述的方法,还包括:在与所述源设备和所述至少一个目标设备中的每一个连接时,由所述同步服务器分别基于源设备的时间戳同步服务器的时间戳和基于相应目标设备的时间戳与所述时间戳同步服务器的时间戳,分别确定第一源时间差和相应的第一目标时间差。
14.根据权利要求13所述的方法,还包括:由所述同步服务器基于所述第一源时间差和相应目标设备的第一目标差来确定所述至少一个目标设备中的每一个的所述全局时间偏移量。
15.根据权利要求11至14中任一项所述的方法,还包括:由所述同步服务器执行与所述源设备的预定次数的同步迭代以及与所述至少一个目标设备中的每一个的预定次数的同步迭代,从而分别确定所述源平均延迟时间和相应目标设备的目标平均延迟时间。
16.根据权利要求15所述的方法,还包括:由所述同步服务器确定同步迭代的次数,以提高所述源平均延迟时间和所述目标平均延迟时间的精确度。
17.根据权利要求11至16中任一项所述的方法,还包括:由所述同步服务器、所述目标设备或专用搜索服务器中的至少一个执行智能搜索,所述智能搜索包括:
将所述源设备所播放的所述媒体项的播放媒体项相关数据分解为媒体项数据的多个部分;
基于媒体项数据的所述多个部分,确定多个搜索结果;并且
基于预定分级参数,对所述多个搜索结果中的每一个进行分级。
18.根据权利要求17所述的方法,还包括:基于预定过滤参数过滤所述多个搜索结果。
19.根据权利要求17至18中任一项所述的方法,还包括:由所述至少一个目标设备中的每一个播放具有最高等级的搜索结果,并且还由所述至少一个目标设备中的每一个基于相应的全局时间偏移量来寻找其搜索结果,从而使所述播放与所述源设备同步。
CN201780065989.6A 2016-08-25 2017-08-24 用于在多个远程设备上同步播放媒体项的系统和方法 Active CN110089120B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662379271P 2016-08-25 2016-08-25
US62/379,271 2016-08-25
PCT/IL2017/050944 WO2018037415A1 (en) 2016-08-25 2017-08-24 System and method for synchronized playing of media items on a plurality of remote devices

Publications (2)

Publication Number Publication Date
CN110089120A true CN110089120A (zh) 2019-08-02
CN110089120B CN110089120B (zh) 2022-07-15

Family

ID=61245602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780065989.6A Active CN110089120B (zh) 2016-08-25 2017-08-24 用于在多个远程设备上同步播放媒体项的系统和方法

Country Status (6)

Country Link
US (1) US11627353B2 (zh)
EP (1) EP3504881A4 (zh)
CN (1) CN110089120B (zh)
BR (1) BR112019003693A2 (zh)
MX (1) MX2019002253A (zh)
WO (1) WO2018037415A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109582433B (zh) * 2017-09-29 2022-02-01 腾讯科技(深圳)有限公司 一种资源调度方法、装置、云计算系统及存储介质
US11632583B2 (en) * 2018-12-11 2023-04-18 Earbuds, Inc. System and process for synchronized media play
US20210250195A1 (en) * 2020-02-07 2021-08-12 Microsoft Technology Licensing, Llc Latency compensation for synchronously sharing video content within web conferencing sessions
CN112153445B (zh) * 2020-09-25 2022-04-12 四川湖山电器股份有限公司 一种分布式视频显示系统同步解码播放方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080291863A1 (en) * 2007-05-23 2008-11-27 Broadcom Corporation Synchronization of media data streams with separate sinks using a relay
CN102742249A (zh) * 2010-01-27 2012-10-17 荷兰皇家Kpn电信集团 用于媒体流同步的方法、系统和装置
US20160173347A1 (en) * 2013-06-12 2016-06-16 Blackfire Research Corporation System and method for synchronous media rendering over wireless networks with wireless performance monitoring

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8190680B2 (en) * 2004-07-01 2012-05-29 Netgear, Inc. Method and system for synchronization of digital media playback
US7818770B2 (en) 2004-11-23 2010-10-19 Palo Alto Research Center Incorporated Methods, apparatus, and program products to support a shared viewing experience from remote locations
US10575055B2 (en) * 2016-07-11 2020-02-25 Sony Corporation Using automatic content recognition (ACR) to weight search results for audio video display device (AVDD)

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080291863A1 (en) * 2007-05-23 2008-11-27 Broadcom Corporation Synchronization of media data streams with separate sinks using a relay
CN102742249A (zh) * 2010-01-27 2012-10-17 荷兰皇家Kpn电信集团 用于媒体流同步的方法、系统和装置
US20160173347A1 (en) * 2013-06-12 2016-06-16 Blackfire Research Corporation System and method for synchronous media rendering over wireless networks with wireless performance monitoring

Also Published As

Publication number Publication date
BR112019003693A2 (pt) 2019-06-04
EP3504881A4 (en) 2020-01-29
MX2019002253A (es) 2019-09-16
EP3504881A1 (en) 2019-07-03
US11627353B2 (en) 2023-04-11
US20190238911A1 (en) 2019-08-01
WO2018037415A1 (en) 2018-03-01
CN110089120B (zh) 2022-07-15

Similar Documents

Publication Publication Date Title
CN110089120A (zh) 用于在多个远程设备上同步播放媒体项的系统和方法
US7333519B2 (en) Method of manually fine tuning audio synchronization of a home network
EP1652385B1 (en) Method and device for generating and detecting fingerprints for synchronizing audio and video
EP3306495B1 (en) Method and system for associating recorded videos with highlight and event tags to facilitate replay services
US20170034263A1 (en) Synchronized Playback of Streamed Audio Content by Multiple Internet-Capable Portable Devices
CN106464949A (zh) 用于流传输视频通道的清单重组器
CN105611328B (zh) 基于hls流媒体的视频数据加速下载方法及装置
CN108259989A (zh) 视频直播的方法、计算机可读存储介质和终端设备
US11520741B2 (en) Independent content tagging of media files
CN106649855B (zh) 一种视频标签的添加方法和添加系统
KR20150099774A (ko) 사용자-생성 비디오 동기화된 편집을 위한 디지털 플랫폼
JP2017135539A (ja) 収録データ処理方法
CN109089130A (zh) 一种调整直播视频的时间戳的方法和装置
CN105635002B (zh) 一种同步估计方法和接收端设备
CN112188307B (zh) 视频资源的合成方法、装置、存储介质及电子装置
CN112383790B (zh) 直播的录屏方法、装置、电子设备及存储介质
CN105898500A (zh) 网络视频播放方法及装置
CN104932888B (zh) 一种信息处理方法及装置
CN101179347B (zh) 一种提供文本文件信息的方法、系统及服务端
CN108289232B (zh) 一种播放设备的控制方法、终端设备及存储介质
CN106717079A (zh) 使用wifi信标的时钟同步
CN110166723A (zh) 一种录屏中的音视频同步方法、电子设备、存储介质
CN105516348B (zh) 一种信息分享的方法和系统
CN104243133B (zh) 一种同步方法及装置
KR102585575B1 (ko) 보조 데이터로서 좌표

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20210723

Address after: Paris France

Applicant after: Dizer S.A.

Address before: Herzliya

Applicant before: Pastoral Corp.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant