CN103209360B - 一种多方视频共享的方法和装置 - Google Patents
一种多方视频共享的方法和装置 Download PDFInfo
- Publication number
- CN103209360B CN103209360B CN201310068159.2A CN201310068159A CN103209360B CN 103209360 B CN103209360 B CN 103209360B CN 201310068159 A CN201310068159 A CN 201310068159A CN 103209360 B CN103209360 B CN 103209360B
- Authority
- CN
- China
- Prior art keywords
- time
- terminal
- called
- terminal called
- shared video
- 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
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种多方视频共享的方法和装置,该方法包括:向被叫终端发起多方共享视频请求;根据接收到所述被叫终端返回的确认响应的接收时间,确定本端与所述被叫终端之间的时间差;根据所述时间差,确定所述被叫终端与本端同步播放共享视频的时间。本发明实施例提供的方法可对主叫终端和各被叫终端之间的系统时间进行修正,可使主叫终端和被叫终端在针对同一个共享视频的播放进度上保持一致,达到播放进度时间完全同步的效果;还可避免通信时延导致的主叫终端与被叫终端的视频播放不同步的问题。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种多方视频共享的方法和装置。
背景技术
随着通信技术的不断发展,用户针对网络通信的需求也越来越多,比如多方视频共享的需求。多方视频共享业务是:主叫用户终端向视频共享服务器发送包含两个及以上用户终端标识的视频共享诸求,共享的对象可以是移动终端通过摄像头实时采集的视频,也可以是在终端上存储的视频片段文件。目前的多方视频共享的视频数据都是由主叫用户发送到视频共享服务器,再由视频共享服务器转发给其他共享终端。目前的视频共享技术采用的包括P2P等技术,即被叫用户终端根据自身的接入方式、处理能力、上下行带宽在接收共享的同时,也可以将视频数据发送给其他用户终端,这种方式称为P2P互联网络技术。但是,主叫终端只通知被叫终端应该获取哪个视频进行播放,由于主叫终端和被叫终端之间的客观存在系统时间误差和通信延时的问题,从而使主叫终端和被叫终端播放的视频资源存在播放时间不一致的问题。
发明内容
本发明实施例提供了一种多方视频共享的方法和装置,用以解决背景技术中主叫终端和被叫终端播放的视频的无法完全同步的问题。
为了解决上述问题,本发明实施例公开了一种多方共享视频的方法,包括:
向被叫终端发起多方共享视频请求;
根据接收到被叫终端返回的确认响应的接收时间,确定本端与被叫终端之间的时间差;
根据时间差,确定被叫终端与本端同步播放共享视频的时间。
可选的,根据接收到被叫终端返回的确认响应的接收时间,确定本端与被叫终端之间的时间差,包括:
以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到被叫终端返回的确认响应的接收时间;
根据发送时间、接收时间,确定本端与被叫终端之间的通信时间;
根据通信时间确定本端与被叫终端之间播放位于本端的共享视频的时间差。
可选的,根据时间差,确定被叫终端与本端同步播放共享视频的时间,包括:
当被叫终端同步本端正在播放的共享视频时,根据时间差以及共享视频在本端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与本端同步播放共享视频的时间;
和/或,以本端显示的时间为准,当被叫终端同步本端在第一预定时间播放的共享视频时,根据时间差以及第一预定时间,确定被叫终端播放共享视频的第二预定时间;其中,在第二预定时间本端向被叫终端发送共享视频。
可选的,根据接收到被叫终端返回的确认响应的接收时间,确定本端与被叫终端之间的时间差,包括:
以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到被叫终端返回的确认响应的接收时间;还包括:
解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
根据确认响应的发送时间、接收到确认响应的接收时间、发送多方共享视频请求的发送时间,确定本端与被叫终端之间的时间差。
可选的,根据时间差,确定被叫终端与本端同步播放共享视频的时间,包括:
以本端显示的时间为准,确定播放共享视频的第一预定时间点;
根据第一预定时间点、和与被叫终端之间的时间差,确定出被叫终端播放共享视频的、以被叫终端显示的时间为准的第二预定时间点。
可选的,根据时间差,确定被叫终端与本端同步播放共享视频的时间之前,还包括:
当被叫终端与本端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与本端播放进度一致;
当被叫终端共享视频的播放进度与本端播放进度不一致时,获取本端与被叫终端之间的时间差。
本发明还公开了一种多方共享视频的方法,包括:
接收主叫终端向被叫终端发起的多方共享视频请求;
根据接收到被叫终端返回的确认响应的接收时间,确定主叫终端与被叫终端之间的时间差;
根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间。
可选的,根据接收到被叫终端返回的确认响应的接收时间,确定主叫终端与被叫终端之间的时间差包括:
获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;
根据发送时间、接收时间,确定主叫终端与被叫终端之间的通信时间;
根据通信时间确定主叫终端与被叫终端之间播放位于主叫终端的共享视频的时间差。
可选的,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间,包括:
当被叫终端同步主叫终端正在播放的共享视频时,根据时间差以及共享视频在主叫终端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与主叫终端同步播放共享视频的时间;
和/或,以主叫终端显示的时间为准,当被叫终端同步主叫终端在第一预定时间播放的共享视频时,根据时间差以及第一预定时间,确定被叫终端播放共享视频的第二预定时间;其中,在第二预定时间主叫终端向被叫终端发送共享视频。
可选的,根据接收到被叫终端返回的确认响应的接收时间,确定主叫终端与被叫终端之间的时间差,包括:
获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;还包括:
解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
根据确认响应的发送时间、主叫终端接收到确认响应的接收时间、主叫终端发送多方共享视频请求的发送时间,确定主叫终端与被叫终端之间的时间差。
可选的,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间,包括:
获取以主叫终端显示的时间为准,确定播放共享视频的第一预定时间点;
根据第一预定时间点、和与被叫终端之间的时间差,确定出被叫终端播放共享视频的、以被叫终端显示的时间为准的第二预定时间点。
可选的,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间之前,还包括:
当被叫终端与主叫终端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与主叫终端播放进度一致;
当被叫终端共享视频的播放进度与主叫终端播放进度不一致时,获取主叫终端与被叫终端之间的时间差。
本发明还公开了一种多方共享视频的系统,包括:
主叫终端,云端服务器和至少一个被叫终端;
主叫终端包括:
共享发起模块,用于向被叫终端发起多方共享视频请求;
时间差计算模块,用于根据接收到被叫终端返回的确认响应的接收时间,确定本端与被叫终端之间的时间差;
同步时间确认模块,用于根据时间差,确定被叫终端与本端同步播放共享视频的时间;
云端服务器用于中转主叫终端与被叫终端之间的数据。
可选的,时间差计算模块包括:
第一时间获取模块,用于以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到被叫终端返回的确认响应的接收时间;
第一通信时间确定模块,用于根据发送时间、接收时间,确定本端与被叫终端之间的通信时间;
第一时间差计算模块,用于根据通信时间确定本端与被叫终端之间播放位于本端的共享视频的时间差。
可选的,时间差计算模块包括:
第二时间获取模块,用于以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间,以及接收到被叫终端返回的确认响应的接收时间,以及解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
第二时间差计算模块,用于根据确认响应的发送时间、接收到确认响应的接收时间、发送多方共享视频请求的发送时间,确定本端与被叫终端之间的时间差。
本发明还公开了一种多方共享视频的系统,包括:
主叫终端,云端服务器和至少一个被叫终端;
云端服务器包括:
请求接收模块,用于接收主叫终端向被叫终端发起的多方共享视频请求;
时间差计算模块,用于根据接收到被叫终端返回的确认响应的接收时间,确定主叫终端与被叫终端之间的时间差;
同步时间确认模块,用于根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间。
可选的,时间差计算模块包括:
第三时间获取模块,用于获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;
第二通信时间确定模块,用于根据发送时间、接收时间,确定主叫终端与被叫终端之间的通信时间;
第三时间差计算模块,用于根据通信时间确定主叫终端与被叫终端之间播放位于主叫终端的共享视频的时间差。
可选的,根时间差计算模块包括:
第四时间获取模块,用于获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
第四时间差计算模块,用于根据确认响应的发送时间、主叫终端接收到确认响应的接收时间、主叫终端发送多方共享视频请求的发送时间,确定主叫终端与被叫终端之间的时间差。
与背景技术相比,本发明实施例提供的方法和装置具有以下优点:
本发明实施例通过主叫终端与各被叫终端的通信过程,计算主叫终端至各被叫终端之间的时间差;针对每一个被叫终端,主叫终端基于上述时间差,通知被叫终端与主叫终端同步播放共享视频。
首先,本发明实施例提供的方法可对主叫终端和各被叫终端之间的播放时间进行修正,本发明则可使主叫终端和被叫终端在针对同一个共享视频的播放进度上保持一致,达到播放进度时间完全同步的效果。
其次,本发明实施例提供的方法可避免通信时延导致的主叫终端与被叫终端的视频播放不同步的问题。
当然,实施本发明实施例提供的任一产品不一定需要同时达到上述的所有优点。
附图说明
图1是本发明实施例一的一种多方视频共享的方法流程示意图;
图2是本发明实施例二的一种多方视频共享的方法流程示意图;
图3是本发明一种多方视频共享对应实施例二的数据处理示例图;
图4是本发明实施例三的一种多方视频共享的方法流程示意图;
图5是本发明一种多方视频共享对应实施例三的数据处理示例图;
图6是本发明实施例四的一种多方视频共享的方法流程示意图;
图7是本发明实施例五的一种多方视频共享的方法流程示意图;
图8是本发明实施例六的一种多方视频共享的装置结构示意图;
图9是本发明实施例七的一种多方视频共享的系统结构示意图;
图10是本发明实施例八的一种多方视频共享的系统结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
参照图1,示出了本发明一种多方视频共享的方法实施例一的流程示意图,具体可以包括:
步骤110,向被叫终端发起多方共享视频请求;
在本发明实施例中,主叫终端可向云端服务器发起多方共享视频请求,再由云端服务器通知各被叫终端。本发明实施例中,主叫终端可获取其好友列表中当前在线的各被叫终端列表,然后针对在线的各被叫终端发起多方共享视频请求。在本发明中被叫终端可以为一个也可以为多个。
在本发明实施例中,主叫终端可为STB(Set Top Box,数字视频变换盒),通常称作机顶盒或机上盒,在机顶盒从云端服务器获取在线的好友列表后,可在电视上进行显示。本发明可基于IMS(IP Multimedia Subsystem,IP多媒体子系统)的技术架构,进行上述视频共享业务。
步骤120,根据接收到被叫终端返回的确认响应的接收时间,确定本端与被叫终端之间的时间差;
在发明实施例中,出现的“本端”可以理解为主叫终端。
针对主叫终端的多方共享视频请求,各被叫终端则针对上述多方共享请求返回确认响应给主叫终端,那么主叫终端则可依据上述通信过程计算主叫终端至各被叫终端之间的时间差。
步骤130,根据时间差,确定被叫终端与本端同步播放共享视频的时间。
在计算得到主叫终端和被叫终端的时间差之后,确定被叫终端与本端同步播放共享视频的时间。然后在共享视频的时候,主叫终端即可根据该时间差通知被叫终端同步播放视频。
在本发明实施例中,在通知被叫终端播放上述共享视频时,通过发送上述共享视频的URL(Uniform/Universal Resource Locator,统一资源定位符)给被叫终端,由被叫终端自己访问该URL进行播放。
另外,为了使主叫终端和各被叫终端在共享视频时还可以进行语音交流,本发明实施例提供的方法可还包括:
步骤S171,通过云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
步骤S172,如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
步骤S173,如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
本发明实施例中,主、被叫终端建立共享后,可共享的云端服务器(比如电视机顶盒服务器)中的资源,并无需从视频开始阶段共享,可以在视频播放的任何阶段,将主叫终端播放的视频实时的共享到被叫终端,达到完全同步的效果。
实施例二
参照图2,示出了本发明优选的一种多方视频共享的方法实施例二的流程示意图,具体可以包括:
步骤200,向被叫终端发起多方共享视频请求;
步骤210,以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到被叫终端返回的确认响应的接收时间;
在发明实施例中,出现的“本端”可以理解为主叫终端。
在本发明实施例中,主叫终端可以直接向被叫终端发送多方视频共享请求,也可将多放视频共享请求发送至云端服务器,再由云端服务器转发至各被叫终端。在本发明实施例中,在主叫终端发送多方视频共享请求时,以本端显示的时间为准,主叫终端记录发送上述多方共享视频请求的发送时间t8。然后被叫终端发送确认响应以响应上述请求,主叫终端接收到确认响应时记录接收时间t9。
若主叫终端先将多放视频共享请求发送给云端服务器,云端服务器可将所收多方共享视频请求转发给各被叫终端。在本发明实施例中,被叫终端接收到云端服务器转发的多方共享视频请求,则要对上述请求进行响应,并发送确认响应给云端服务器;云端服务器接收到该确认响应后,则向主叫终端转发该确认响应;那么主叫终端接收该确认响应的时候则记录接收时间t9。
步骤220,根据发送时间、接收时间,确定本端与被叫终端之间的通信时间;
在本发明实施例中,可通过(t9-t8)/2计算上述主叫终端与上述被叫终端之间的通信时间。
步骤230,根据通信时间确定本端与被叫终端之间播放位于本端的共享视频的时间差。
可将通信时间(t9-t8)/2确定为本端与被叫终端之间播放位于本端的共享视频的时间差。
步骤240,根据时间差,确定被叫终端与本端同步播放共享视频的时间。
其中,根据时间差,确定被叫终端与本端同步播放共享视频的时间,包括:
步骤A241,当被叫终端同步本端正在播放的共享视频时,根据时间差以及共享视频在本端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与本端同步播放共享视频的时间;
上述针对每一个被叫终端,主叫终端根据针对共享视频的第一进度时间,和对应上述被叫终端的时间差,通知被叫终端在由第一进度时间与时间差计算得到的第二进度时间位置,开始播放上述共享视频包括:
步骤A2411,主叫终端获取播放共享视频的第一进度时间t4;
步骤A2412,针对与一被叫终端的时间差n,计算t4+m得到第二进度时间t6;
比如主叫终端A对于视频1,播放的第一进度时间为00:01:00(1分钟00秒时刻),主叫终端A确定本端与被叫终端C之间播放位于本端的共享视频的时间差n=30秒;当主叫终端在此时通知被叫终端播放视频1时,那么该通知到达被叫终端时,主叫终端已经播放到00:01:30秒,那么被叫终端应在第二进度时间为00:01:00+30秒=00:01:30的位置播放视频1,此时主叫终端和被叫终端会在播放进度时间上保持一致。
然后将t6通过云端服务器发送至被叫终端,通知终端在播放视频的播放进度时间为t6的时间位置播放共享视频。
和/或,步骤A242,以本端显示的时间为准,当被叫终端同步本端在第一预定时间播放的共享视频时,根据时间差以及第一预定时间,确定被叫终端播放共享视频的第二预定时间;其中,在第二预定时间本端向被叫终端发送共享视频。
比如主叫终端显示时间为12:00:00,主叫终端A确定本端与被叫终端C之间播放位于本端的共享视频的时间差n=30秒,预定时间为12:10:00,那么主叫终端向被叫终端发送共享视频的第二预定时间为12:10:00-30秒=12:09:30,那么主叫终端在12:09:30时刻发送共享视频。
然后,即可根据被叫终端与本端同步播放共享视频的时间通知被叫终端同步播放视频。
可选的,为了使本发明在主叫终端或者被叫终端出现延迟而导致播放滞后等情况时,还能调整主叫终端和被叫终端的播放进度一致:
在根据时间差,确定被叫终端与本端同步播放共享视频的时间之前,还包括:
步骤A251,当被叫终端与本端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与本端播放进度一致;
可选的,针对每一被叫终端,主叫终端根据时间差和时间差,监控被叫终端针对共享视频的当前进度时间是否与主叫终端针对共享视频的当前进度时间一致包括:
步骤B31,每个被叫终端定时向主叫终端报告被叫终端针对共享视频的当前进度时间;
比如主叫终端每隔5秒将当前播放视频的当前进度时间t7发送给主叫终端。
步骤B32,主叫终端根据时间差和时间差、主叫终端针对共享视频的当前进度时间和每个被叫终端针对共享视频的当前进度时间,判断每个被叫终端针对共享视频的当前进度时间是否与主叫终端针对共享视频的当前进度时间一致。
在本发明实施例中,被叫终端可将自身的播放时间发送给主叫终端,主叫终端则根据时间差计算两者是否一致,比如被叫终端将当前的进度时间00:10:10发送给主叫终端,时间差n=30秒,主叫终端接收到上述被叫终端的播放进度时间为00:10:10,则计算被叫终端的播放进度为00:10:10+30=00:10:40,将00:10:40与本地的播放进度时间进行比较,判断是否一致,如果一致,则两端正常播放;如果不一致,进入步骤A252。
步骤A252,当被叫终端共享视频的播放进度与本端播放进度不一致时,获取本端与被叫终端之间的时间差。
在本发明中,主叫终端播放进度可能滞后于被叫终端,也肯能被叫终端滞后与主叫终端,那么以主叫终端当前播放进度为标准,则主叫终端播放进度可能滞后于被叫终端时,获取本端与被叫终端之间的时间差为负数;能被叫终端滞后与主叫终端时,获取本端与被叫终端之间的时间差为正数。
在获取时间差后,还包括:
步骤A253,根据本端与被叫终端播放进度之间的时间差,通知被叫终端与主叫终端保持播放进度一致。
其中,如果被叫终端针对共享视频的当前进度时间滞后于主叫终端针对共享视频的当前进度时间,则主叫终端通知被叫终端跳过针对共享视频的滞后播放的时间差,保持与主叫终端播放时间一致;
如果主叫终端发现某个被叫终端由于网络等原因,播放滞后了一段时间p,可以发送命令给这个被叫终端跳过时间段p后继续播放。
其中,如果被叫终端针对共享视频的当前进度时间滞后于主叫终端针对共享视频的当前进度时间,则主叫终端通知被叫终端暂停时间差后再播放共享视频,保持与主叫终端播放时间一致;
如果主叫终端发现由于网络等原因,播放滞后了某个被叫终端一段时间p,可以发送命令给这个被叫终端暂停播放P后继续播放。
其中,可选的,在根据主叫终端与被叫终端播放进度之间的时间差,通知被叫终端与主叫终端保持播放进度一致之前,还包括:
步骤B33,判断主叫终端与被叫终端播放进度之间的时间差是否达到阈值,如果达到,则主叫终端通知被叫终端跳过针对共享视频的滞后播放的时间段,保持与主叫终端播放时间一致;如果未达到,则保持原状。
比如某个被叫终端播放的进度时间只延后主叫终端2秒,而判断阈值为10秒,那么主叫终端不需发送指令通知被叫终端一致。
参照图3,其为对应图2的具体处理流程,包括:
步骤S200,主叫终端向至少一个被叫终端发起多方共享视频请求;
步骤S210,主叫终端记录发送多方共享视频请求的发送时间t8;
步骤S220,针对每一被叫终端,记录主叫终端在接收到被叫终端针对多方共享视频请求的确认响应时的接收时间t9;
步骤S230,针对每一被叫终端,根据发送时间t8、接收时间t9,确定本端与被叫终端之间的通信时间n;
在发明实施例中,出现的“本端”可以理解为主叫终端。
步骤S240,根据通信时间确定本端与被叫终端之间播放位于本端的共享视频的时间差m。
步骤S250,根据时间差m,确定被叫终端与本端同步播放共享视频的时间t0;
步骤S260,根据所确定的被叫终端与本端同步播放共享视频的时间t0,通知被叫终端与本端同步播放共享视频。
另外,为了使主叫终端和各被叫终端在共享视频时还可以进行语音交流,本发明可还包括:
步骤S271,通过云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
步骤S272,如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
步骤S273,如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
在本发明实施例中,可以建立一个临时交流语音群。有两种方式建立一个临时交流语音群,如果群成员比较少时,并且每个群成员之间可以通过P2P的方式联通时,则可以使用P2P语音模块进行语音通讯;如果群成员之间不是全联通的,则可以通过云端音频中转模块进行语音通讯。即本发明还可以建立讨论群,通过语音、文字等形式进行实时讨论。
本实施例中与实施例一类似的步骤在此不再详述。
实施例三
参照图4,其示出了本发明实施例三的一种多方共享视频的方法的流程示意图,具体可以包括:
步骤300,向被叫终端发起多方共享视频请求;
本步骤与实施例二的步骤200类似,在此不再详述。
步骤310,以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到被叫终端返回的确认响应的接收时间;解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
在发明实施例中,出现的“本端”可以理解为主叫终端。
主叫终端记录上述多方共享视频请求的发送时间t1。
在本发明实施例中,上述记录的主叫终端发送多方共享视频请求的发送时间包括:
步骤A311,主叫终端记录发送多方共享视频请求的发送时间,多方共享视频请求由主叫终端向云端服务器发送;云端服务器基于多方共享视频请求,发送获取请求至各被叫终端;该获取请求包括:通知被叫终端返回响应时间。
在主叫终端向云端服务器发送多方共享视频请求时,主叫终端记录发送多方共享视频请求的发送时间t1。
步骤A312,针对每一被叫终端,主叫终端记录接收到被叫终端的确认响应的接收时间;确认响应为在被叫终端接收到获取请求后,将针对获取请求的确认响应返回给云端,再通过云端服务器返回给主叫终端;确认响应包括被叫终端系统中发送确认响应的时间。
云端服务器接收到上述多方共享视频请求后,基于上述多方共享视频请求,激活并发送获取请求至各被叫终端,通过上述获取请求通知被叫终端返回确认响应,并在确认响应中通知被叫终端将发送确认响应的时间封装进入确认相应,即当被叫终端接收到上述获取请求后,将被叫终端系统发送响到时间t3,跟确认响应一起发送给云端服务器,云端服务器在将该确认响应转发给主叫终端。
被叫终端针对上述多方共享视频请求进行响应,然后发送确认响应至主叫终端后,主叫终端在接收上述确认响应时,记录接收时间t2,并解析确认响应,提取t3。
步骤320,根据确认响应的发送时间、接收到确认响应的接收时间、发送多方共享视频请求的发送时间,确定本端与被叫终端之间的时间差;
基于主叫终端的发送时间接收时间,和被叫终端响应时间(即被叫终端发送确认响应时的系统时间),即可计算主叫终端与各被叫终端之间的系统时间之间的时间差。
可选的,根据确认响应的发送时间、接收到确认响应的接收时间、发送多方共享视频请求的发送时间,确定本端与被叫终端之间的时间差包括:
步骤A321,将主叫终端的发送时间t1、接收时间t2,和被叫终端的响应时间t3,按t2-(t3+(t1+t2)/2)计算得到主叫终端与被叫终端系统时间之间的时间差。
其中,在若数据从A->B,B->A传送时间是一样的情况下,数据从主叫终端A发送到被叫终端B需要的时间为(t2-t1)/2。进而根据被叫终端返回的其自身的当前时间t3,则可以计算出主叫终端A和被叫终端B的时间差为t2-(t3+(t2-t1)/2)。
步骤330,根据时间差,确定被叫终端与本端同步播放共享视频的时间。
其中,根据时间差,确定被叫终端与本端同步播放共享视频的时间,包括:
步骤S331,以本端显示的时间为准,确定播放共享视频的第一预定时间点;
比如主叫终端本地显示的时间为10:00,在以10:00为标准的情况下,确定播放共享视频的时间为11:00。
步骤S332,根据第一预定时间点、和与被叫终端之间的时间差,确定出被叫终端播放共享视频的、以被叫终端显示的时间为准的第二预定时间点。
比如通过上述步骤计算得到时间差为m,主叫终端基于本地的系统时间要求在上午11:00同时观看视频A,那么通知被叫终端的观看的系统时间为11:00+m时刻(第二预定时间点),其中m可为整值也可为负值。
然后可根据被叫终端与本端同步播放共享视频的时间通知被叫终端播放共享视频。
可选的,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间之前,还包括:
步骤A351,当被叫终端与本端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与本端播放进度一致;
步骤A352,当被叫终端共享视频的播放进度与本端播放进度不一致时,获取主叫终端与被叫终端之间的时间差。
本实施例中,主叫终端和各被叫终端均以主叫终端的系统时间为标准进行校准,保证各被叫终端可与主叫终端在同一时刻观看共享视频。
本实施例中与前述实施例类似的步骤原理类似,在此不在详述。
参照图5,其为对应实施例图4的具体数据处理流程图,包括:
步骤S300,主叫终端向至少一个被叫终端发起多方共享视频请求;
步骤S310,记录的主叫终端发送多方共享视频请求的发送时间t1;
步骤S320,针对每一被叫终端,记录主叫终端在接收到被叫终端针对多方共享视频请求的确认响应时的接收时间t2;确认响应包括被叫终端系统中发送确认响应的时间t3;
即被叫终端发送确认响应时的显示时间t3。
步骤S330,针对每一被叫终端,根据确认响应中的响应时间t3、发送时间t1、接收时间t2计算主叫终端与各被叫终端之间的系统时间之间的时间差m;
步骤S340,根据时间差m,确定被叫终端与本端同步播放共享视频的时间t0;
在发明实施例中,出现的“本端”可以理解为主叫终端。
步骤S350,根据确定的被叫终端与本端同步播放共享视频的时间t0,通知被叫终端播放共享视频。
另外,为了使主叫终端和各被叫终端在共享视频时还可以进行语音交流,本发明可还包括:
步骤S271,通过云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
步骤S272,如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
步骤S273,如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
本实施例中与前述实施例类似的步骤在此不再详述。
在实际中,主叫终端的系统时间与被叫终端的系统时间之间可能也存在误差,那么为了避免系统时间的误差,则需要计算系统误差,实现主叫终端与被叫终端之间的同步共享。比如主叫终端的系统时间比被叫终端的系统时间快5分钟,那么主叫终端通知被叫终端在11:00看视频时,那么被叫终端还在10:55,被叫终端还没有开始观看视频,导致主叫终端和被叫终端不同步,而本实施例可完全解决主叫终端与被叫终端系统时间误差的问题,使主叫终端和被叫终端可以完全同步在预定时间点开始播放共享视频。
实施例四
参照图6,示出了本发明优选的一种多方视频共享的方法实施例四的流程示意图,具体可以包括:
步骤410,接收主叫终端向被叫终端发起的多方共享视频请求;
在本发明实施例中,主叫终端可向云端服务器发起多方共享视频请求,再由云端服务器通知各被叫终端。本发明实施例中,主叫终端可获取其好友列表中当前在线的各被叫终端列表,然后针对在线的各被叫终端发起多方共享视频请求。在本发明中被叫终端可以为一个也可以为多个。
步骤420,根据接收到被叫终端返回的确认响应的接收时间,确定主叫终端与被叫终端之间的时间差;
本发明实施例中,可由云端服务器根据接收到被叫终端返回的确认响应的接收时间,确定主叫终端与被叫终端之间的时间差。
步骤430,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间。
在计算得到主叫终端和被叫终端的时间差之后,确定被叫终端与本端同步播放共享视频的时间。然后在共享视频的时候,主叫终端即可根据该时间差通知被叫终端同步播放视频。
在发明实施例中,出现的“本端”可以理解为主叫终端。
另外,为了使主叫终端和各被叫终端在共享视频时还可以进行语音交流,本发明可还包括:
步骤S171,云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
步骤S172,如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
步骤S173,如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
本发明实施例中,主、被叫终端建立共享后,可共享的云端服务器(比如电视机顶盒服务器)中的资源,并无需从视频开始阶段共享,可以在视频播放的任何阶段,将主叫终端播放的视频实时的共享到被叫终端,达到完全同步的效果。本发明实施例提供的方法可基于云端服务器中转数据的主叫终端和各被叫终端之间的同步播放共享视频的时间进行修正,本发明则可使主叫终端和被叫终端在针对同一个共享视频的播放进度上保持一致,达到播放进度时间完全同步的效果,可避免通信时延导致的主叫终端与被叫终端的视频播放不同步的问题。
实施例五
参照图7,示出了本发明优选的一种多方视频共享的方法实施例五的流程示意图,具体可以包括:
步骤500,云端服务器接收主叫终端向被叫终端发起的多方共享视频请求;
在本发明实施例中,共享视频是存储于云端服务器中,由云端服务器提供给各终端进行播放。
步骤510,获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;
在发明实施例中,出现的“本端”可以理解为主叫终端。
在本发明实施例中,主叫终端在发送多方共享视频请求时,会获取主叫终端以本端显示的时间为准,记录发送多方共享视频请求的发送时间t11,主叫终端在接收被叫终端返回的确认响应时,会记录接收时间t12,所云端服务器获取该发送时间t11和接收时间t12。
步骤520,根据发送时间、接收时间,确定主叫终端与被叫终端之间的通信时间;
即云端服务器计算(t11-t12)/2,即为主叫终端与被叫终端之间的通信时间。
步骤530,根据通信时间确定主叫终端与被叫终端之间播放位于主叫终端的共享视频的时间差;
可将通信时间(t11-t12)/2确定为被叫终端之间播放位于主叫终端的共享视频的时间差。
步骤540,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间。
可选的,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间,包括:
步骤A441,当被叫终端同步主叫终端正在播放的共享视频时,根据时间差以及共享视频在主叫终端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与主叫终端同步播放共享视频的时间;
主叫终端将其第一播放进度发送至云端服务器,云端服务器则根据时间差以及共享视频在主叫终端的第一播放进度,确定被叫终端播放共享视频的第二播放进度,然后根据第二播放进度通知被叫终端与主叫终端同步播放共享视频。
和/或,步骤A442,以主叫终端显示的时间为准,当被叫终端同步主叫终端在第一预定时间播放的共享视频时,根据时间差以及第一预定时间,确定被叫终端播放共享视频的第二预定时间;其中,在第二预定时间主叫终端向被叫终端发送共享视频。
主叫终端将当前显示的时间和第一预定时间发送给云端服务器,云端服务器则根据时间差、第一预定时间和主叫终端当前显示的时间,确定被叫终端播放共享视频的第二预定时间,然后通知主叫终端在第二预定时间发送共享视频给被叫终端。
可选的,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间之前,还包括:
步骤A451,当被叫终端与主叫终端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与本端播放进度一致;
而在本实施例中,时间差为主叫终端和被叫终端显示时间之间的差值。在本实施例中,云端服务器可根据时间差、主叫终端的播放进度和被叫终端的播放进度判断被叫终端共享视频的播放进度是否与本端播放进度一致。比如云端服务器可通知被叫终端在本地系统的显示时间A+时间差的时刻发送第二播放进度给云端服务器,通知主叫终端在本地系统的显示时间A时刻发送第一播放进度给云端服务器,然后比较第一播放进度和第二播放进度是否一致即可。
步骤A452,当被叫终端共享视频的播放进度与主叫终端播放进度不一致时,获取主叫终端与被叫终端之间的时间差。
比如云端服务器可通知被叫终端在本地系统的显示时间A+时间差的时刻发送第二播放进度给云端服务器,通知主叫终端在本地系统的显示时间A时刻发送第一播放进度给云端服务器,那么即可计算第一播放进度与第二播放进度之间的差值,比如第一播放进度-第二播放进度=k,那么当k为正值时,被叫终端播放进度滞后,则可通知被叫终端跳过k,当k为负值时,主叫终端播放进度滞后,则可通知被叫终端暂停k。
另外,为了使主叫终端和各被叫终端在共享视频时还可以进行语音交流,本发明可还包括:
步骤S271,通过云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
步骤S272,如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
步骤S273,如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
本发明实施例提供的方法可基于云端服务器中转数据的主叫终端和各被叫终端之间的同步播放共享视频的时间进行修正,本发明则可使主叫终端和被叫终端在针对同一个共享视频的播放进度上保持一致,达到播放进度时间完全同步的效果,可避免通信时延导致的主叫终端与被叫终端的视频播放不同步的问题。本实施例中与前述实施例中类似的步骤原理类似,在此不再详述。
实施例六
参照图8,示出了本发明优选的一种多方视频共享的方法实施例六的流程示意图,具体可以包括:
步骤600,云端服务器接收主叫终端向被叫终端发起的多方共享视频请求;
步骤610,获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
在发明实施例中,出现的“本端”可以理解为主叫终端。
在主叫终端向云端服务器发送多方共享视频请求时,主叫终端记录发送多方共享视频请求的发送时间t21。云端服务器根据多方共享视频请求可重构获取请求给各被叫终端,请求各被叫终端发送确认响应,并在发送确认响应时将被叫终端当前显示时间t23封装至确认响应中;主叫终端在接收确认响应时记录主叫终端当前显示的时间,即接收时间t22。
云端服务器则获取主叫终端记录的t21,t22,并可解析确认响应中的t23。其中t23也可由主叫终端解析得到后再发送给云端服务器。
步骤620,根据确认响应的发送时间、主叫终端接收到确认响应的接收时间、主叫终端发送多方共享视频请求的发送时间,确定主叫终端与被叫终端之间的时间差。
将主叫终端的发送时间t1、接收时间t2,和被叫终端的响应时间t3,按t2-(t3+(t1+t2)/2)计算得到主叫终端与被叫终端系统时间之间的时间差。即主叫终端的显示时间和被叫终端的显示时间之间的时间差。
步骤630,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间。
其中,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间,包括:
步骤A631,获取以主叫终端显示的时间为准,确定播放共享视频的第一预定时间点;
主叫终端将以及主叫终端显示的时间为标准确认的以第一预定时间点,然后将第一预定时间点发送给云端服务器。比如主叫终端本地显示的时间为10:00,在以10:00为标准的情况下,确定播放共享视频的时间为11:00,然后将11:00发送给云端服务器。
步骤A632,根据第一预定时间点、和与被叫终端之间的时间差,确定出被叫终端播放共享视频的、以被叫终端显示的时间为准的第二预定时间点。
比如通过上述步骤计算得到时间差为m,主叫终端基于本地的系统时间要求在上午11:00同时观看视频A,那么通知被叫终端的观看的系统时间为11:00+m时刻(第二预定时间点),其中m可为整值也可为负值。
然后可根据被叫终端与本端同步播放共享视频的时间通知被叫终端播放共享视频。
可选的,根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间之前,还包括:
步骤A641,当被叫终端与主叫终端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与本端播放进度一致;
在本实施例中,由于播放终端,云端服务器可监控被叫终端与主叫终端各自的播放进度,将主叫终端与被叫终端的播放进度进行比较,判断是否一致。
步骤A642,当被叫终端共享视频的播放进度与主叫终端播放进度不一致时,获取主叫终端与被叫终端之间的时间差。
另外,为了使主叫终端和各被叫终端在共享视频时还可以进行语音交流,本发明可还包括:
步骤S271,通过云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
步骤S272,如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
步骤S273,如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
本发明实施例提供的方法可基于云端服务器中转数据的主叫终端和各被叫终端之间的同步播放共享视频的系统时间进行修正,本发明则可使主叫终端和被叫终端在针对同一个共享视频的播放进度上保持一致,达到播放进度时间完全同步的效果,可避免通信时延导致的主叫终端与被叫终端的视频播放不同步的问题。
本实施例中与前述实施例类似的步骤原理类似,在此不再详述。
实施例七
参照图9,示出了本发明优选的一种多方视频共享的系统实施例七的结构示意图,具体可以包括:
主叫终端710,云端服务器720和至少一个被叫终端730;
主叫终端710包括:
共享发起模块711,用于向被叫终端730发起多方共享视频请求;
时间差计算模块712,用于根据接收到被叫终端返回的确认响应的接收时间,确定本端与被叫终端之间的时间差;
在发明实施例中,出现的“本端”可以理解为主叫终端。
同步时间确认模块713,用于根据时间差,确定被叫终端与本端同步播放共享视频的时间;
云端服务器720用于中转主叫终端与被叫终端之间的数据。
另外,还包括:通知模块,根据确定的被叫终端与本端同步播放共享视频的时间通知各终端同步播放视频。
优选的,时间差计算模块包括:
第一时间获取模块,用于以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到被叫终端返回的确认响应的接收时间;
第一通信时间确定模块,用于根据发送时间、接收时间,确定本端与被叫终端之间的通信时间;
第一时间差计算模块,用于根据通信时间确定本端与被叫终端之间播放位于本端的共享视频的时间差。
进一步的,同步时间确认模块,包括:
第一同步时间确认模块,用于当被叫终端同步本端正在播放的共享视频时,根据时间差以及共享视频在本端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与本端同步播放共享视频的时间;
和/或,第二同步时间确认模块,用于以本端显示的时间为准,当被叫终端同步本端在第一预定时间播放的共享视频时,根据时间差以及第一预定时间,确定被叫终端播放共享视频的第二预定时间;其中,在第二预定时间本端向被叫终端发送共享视频。
优选的,时间差计算模块包括:
第二时间获取模块,用于以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间,以及接收到被叫终端返回的确认响应的接收时间,以及解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
第二时间差计算模块,用于根据确认响应的发送时间、接收到确认响应的接收时间、发送多方共享视频请求的发送时间,确定本端与被叫终端之间的时间差。
进一步的,同步时间确认模块包括:
第一预定时间获取模块,用于以本端显示的时间为准,确定播放共享视频的第一预定时间点;
第二预定时间获取模块,用于根据第一预定时间点、和与被叫终端之间的时间差,确定出被叫终端播放共享视频的、以被叫终端显示的时间为准的第二预定时间点。
优选的,在同步时间确认模块之前,还包括:
一致性检查模块,用于当被叫终端与本端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与本端播放进度一致;当被叫终端共享视频的播放进度与本端播放进度不一致时,获取本端与被叫终端之间的时间差。
优选的,还包括云端服务器,上述云端服务器还包括:
全联通判断模块,用于通过云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
第一语音或文字通信模块,用于如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
第二语音或文字通信模块,用于如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
实施例八
参照图10,示出了本发明优选的一种多方视频共享的系统实施例八的结构示意图,具体可以包括:
主叫终端810,云端服务器820和至少一个被叫终端830;
云端服务器820包括:
请求接收模块821,用于接收主叫终端向被叫终端发起的多方共享视频请求;
时间差计算模块822,用于根据接收到被叫终端返回的确认响应的接收时间,确定主叫终端与被叫终端之间的时间差;
同步时间确认模块823,用于根据时间差,确定被叫终端与主叫终端同步播放共享视频的时间。
优选的,时间差计算模块包括:
第三时间获取模块,用于获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;
在发明实施例中,出现的“本端”可以理解为主叫终端。
第二通信时间确定模块,用于根据发送时间、接收时间,确定主叫终端与被叫终端之间的通信时间;
第三时间差计算模块,用于根据通信时间确定主叫终端与被叫终端之间播放位于主叫终端的共享视频的时间差。
进一步的,同步时间确认模块包括:
第三同步时间确认模块,用于当被叫终端同步主叫终端正在播放的共享视频时,根据时间差以及共享视频在主叫终端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与主叫终端同步播放共享视频的时间;
和/或,第四同步时间确认模块,用于以主叫终端显示的时间为准,当被叫终端同步主叫终端在第一预定时间播放的共享视频时,根据时间差以及第一预定时间,确定被叫终端播放共享视频的第二预定时间;其中,在第二预定时间主叫终端向被叫终端发送共享视频。
优选的,根时间差计算模块包括:
第四时间获取模块,用于获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到被叫终端返回的确认响应的接收时间;解析确认响应,获得以被叫终端显示的时间为准的、确认响应的发送时间;
第四时间差计算模块,用于根据确认响应的发送时间、主叫终端接收到确认响应的接收时间、主叫终端发送多方共享视频请求的发送时间,确定主叫终端与被叫终端之间的时间差。
进一步的,同步时间确认模块包括:
第一预定时间获取模块,用于获取以主叫终端显示的时间为准,确定播放共享视频的第一预定时间点;
第二预定时间获取模块,根据第一预定时间点、和与被叫终端之间的时间差,确定出被叫终端播放共享视频的、以被叫终端显示的时间为准的第二预定时间点。
优选的,在同步时间确认模块之前,还包括:
一致性检查模块,用于当被叫终端与主叫终端播放同一共享视频时,监控被叫终端共享视频的播放进度是否与本端播放进度一致;当被叫终端共享视频的播放进度与主叫终端播放进度不一致时,获取主叫终端与被叫终端之间的时间差。
优选的,还包括云端服务器,上述云端服务器还包括:
全联通判断模块,用于通过云端服务器监控主叫终端和各被叫终端之间是否为P2P全联通;
第一语音或文字通信模块,用于如果主叫终端和各被叫终端之间是P2P全联通,则主叫终端和各被叫终端通过P2P进行语音或文字通信;
第二语音或文字通信模块,用于如果主叫终端和各被叫终端之间不是P2P全联通,则通过云端服务器中转主叫终端和各被叫终端的语音数据进行语音或文字通信。
在上述实施例中,本发明的主叫终端可为机顶盒,其中若同步通知模块位于机顶盒内,获取当前在线的好友列表后,在电视屏幕上进行显示;若同步通知位于云端服务器中,获取当前在线的好友列表后,将其发送到电视盒子,以便在电视屏幕上进行显示。
需要说明的是,对于上述方法实施例而言,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
以上对本发明所提供的一种多方视频共享的方法、装置和系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种多方共享视频的方法,其特征在于,包括:
向被叫终端发起多方共享视频请求;
根据接收到所述被叫终端返回的确认响应的接收时间,确定本端与所述被叫终端之间的时间差;
根据所述时间差,确定所述被叫终端与本端同步播放共享视频的时间;
所述根据接收到所述被叫终端返回的确认响应的接收时间,确定本端与所述被叫终端之间的时间差,包括:
以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到所述被叫终端返回的确认响应的接收时间;
根据所述发送时间、接收时间,确定所述本端与所述被叫终端之间的通信时间;
根据所述通信时间确定本端与所述被叫终端之间播放位于本端的共享视频的时间差;
根据所述时间差,确定所述被叫终端与本端同步播放共享视频的时间,包括:
当所述被叫终端同步本端正在播放的共享视频时,根据所述时间差以及所述共享视频在本端的第一播放进度,确定被叫终端播放所述共享视频的第二播放进度;所述第二播放进度对应的时间为所述被叫终端与本端同步播放共享视频的时间;
所述根据接收到所述被叫终端返回的确认响应的接收时间,确定本端与所述被叫终端之间的时间差,包括:
以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到所述被叫终端返回的确认响应的接收时间;还包括:
解析所述确认响应,获得以所述被叫终端显示的时间为准的、所述确认响应的发送时间;
根据所述确认响应的发送时间、接收到所述确认响应的接收时间、发送所述多方共享视频请求的发送时间,确定本端与被叫终端之间的时间差。
2.根据权利要求1所述的方法,其特征在于,所述根据所述时间差,确定所述被叫终端与本端同步播放共享视频的时间,包括:
以本端显示的时间为准,确定播放共享视频的第一预定时间点;
根据所述第一预定时间点、和与所述被叫终端之间的时间差,确定出所述被叫终端播放共享视频的、以所述被叫终端显示的时间为准的第二预定时间点。
3.根据权利要求1所述的方法,其特征在于,所述根据所述时间差,确定所述被叫终端与本端同步播放共享视频的时间之前,还包括:
当所述被叫终端与本端播放同一共享视频时,监控所述被叫终端共享视频的播放进度是否与本端播放进度一致;
当所述被叫终端共享视频的播放进度与本端播放进度不一致时,获取本端与所述被叫终端之间的时间差。
4.根据权利要求1所述的方法,其特征在于,根据所述时间差,确定所述被叫终端与本端同步播放共享视频的时间,还包括:
以本端显示的时间为准,当所述被叫终端同步本端正在播放的共享视频时,根据所述时间差以及所述共享视频在本端的第一预定时间,确定被叫终端播放所述共享视频的第二预定时间;其中,所述第二预定时间为本端向所述被叫终端发送所述共享视频的时间。
5.一种多方共享视频的方法,其特征在于,包括:
接收主叫终端向被叫终端发起的多方共享视频请求;
根据接收到所述被叫终端返回的确认响应的接收时间,确定主叫终端与所述被叫终端之间的时间差;
根据所述时间差,确定所述被叫终端与主叫终端同步播放共享视频的时间;
所述根据接收到所述被叫终端返回的确认响应的接收时间,确定主叫终端与所述被叫终端之间的时间差包括:
获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到所述被叫终端返回的确认响应的接收时间;
根据所述发送时间、接收时间,确定所述主叫终端与所述被叫终端之间的通信时间;
根据所述通信时间确定主叫终端与所述被叫终端之间播放位于主叫终端的共享视频的时间差;
根据所述时间差,确定所述被叫终端与主叫终端同步播放共享视频的时间,包括:
当所述被叫终端同步主叫终端正在播放的共享视频时,根据所述时间差以及所述共享视频在主叫终端的第一播放进度,确定被叫终端播放所述共享视频的第二播放进度;所述第二播放进度对应的时间为所述被叫终端与主叫终端同步播放共享视频的时间;
所述根据接收到所述被叫终端返回的确认响应的接收时间,确定主叫终端与所述被叫终端之间的时间差,包括:
获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到所述被叫终端返回的确认响应的接收时间;还包括:
解析所述确认响应,获得以所述被叫终端显示的时间为准的、所述确认响应的发送时间;
根据所述确认响应的发送时间、主叫终端接收到所述确认响应的接收时间、主叫终端发送所述多方共享视频请求的发送时间,确定主叫终端与被叫终端之间的时间差。
6.根据权利要求5所述的方法,其特征在于,所述根据所述时间差,确定所述被叫终端与主叫终端同步播放共享视频的时间,包括:
获取以主叫终端显示的时间为准,确定播放共享视频的第一预定时间点;
根据所述第一预定时间点、和与所述被叫终端之间的时间差,确定出所述被叫终端播放共享视频的、以所述被叫终端显示的时间为准的第二预定时间点。
7.根据权利要求5所述的方法,其特征在于,所述根据所述时间差,确定所述被叫终端与主叫终端同步播放共享视频的时间之前,还包括:
当所述被叫终端与主叫终端播放同一共享视频时,监控所述被叫终端共享视频的播放进度是否与主叫终端播放进度一致;
当所述被叫终端共享视频的播放进度与主叫终端播放进度不一致时,获取主叫终端与所述被叫终端之间的时间差。
8.根据权利要求5所述的方法,其特征在于,根据所述时间差,确定所述被叫终端与主叫终端同步播放共享视频的时间,还包括:
以主叫终端显示的时间为准,当所述被叫终端同步主叫终端正在播放的共享视频时,根据所述时间差以及所述共享视频在主叫终端的第一预定时间,确定被叫终端播放所述共享视频的第二预定时间;其中,所述第二预定时间为主叫终端向所述被叫终端发送所述共享视频的时间。
9.一种多方共享视频的系统,其特征在于,包括:
主叫终端,云端服务器和至少一个被叫终端;
所述主叫终端包括:
共享发起模块,用于向被叫终端发起多方共享视频请求;
时间差计算模块,用于根据接收到所述被叫终端返回的确认响应的接收时间,确定本端与所述被叫终端之间的时间差;
同步时间确认模块,用于根据所述时间差,确定所述被叫终端与本端同步播放共享视频的时间;
所述云端服务器用于中转主叫终端与被叫终端之间的数据;
所述时间差计算模块包括:
第一时间获取模块,用于以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间、以及接收到所述被叫终端返回的确认响应的接收时间;
第一通信时间确定模块,用于根据所述发送时间、接收时间,确定所述本端与所述被叫终端之间的通信时间;
第一时间差计算模块,用于根据所述通信时间确定本端与所述被叫终端之间播放位于本端的共享视频的时间差;
所述时间差计算模块包括:
第二时间获取模块,用于以本端显示的时间为准,记录本端发送多方共享视频请求的发送时间,以及接收到所述被叫终端返回的确认响应的接收时间,以及解析所述确认响应,获得以所述被叫终端显示的时间为准的、所述确认响应的发送时间;
第二时间差计算模块,用于根据所述确认响应的发送时间、接收到所述确认响应的接收时间、发送所述多方共享视频请求的发送时间,确定本端与被叫终端之间的时间差。
10.一种多方共享视频的系统,其特征在于,包括:
主叫终端,云端服务器和至少一个被叫终端;
所述云端服务器包括:
请求接收模块,用于接收主叫终端向被叫终端发起的多方共享视频请求;
时间差计算模块,用于根据接收到所述被叫终端返回的确认响应的接收时间,确定主叫终端与所述被叫终端之间的时间差;
同步时间确认模块,用于根据所述时间差,确定所述被叫终端与主叫终端同步播放共享视频的时间;
所述时间差计算模块包括:
第三时间获取模块,用于获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到所述被叫终端返回的确认响应的接收时间;
第二通信时间确定模块,用于根据所述发送时间、接收时间,确定所述主叫终端与所述被叫终端之间的通信时间;
第三时间差计算模块,用于根据所述通信时间确定主叫终端与所述被叫终端之间播放位于主叫终端的共享视频的时间差;
同步时间确认模块,包括:第一同步时间确认模块,用于当被叫终端同步本端正在播放的共享视频时,根据时间差以及共享视频在本端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与本端同步播放共享视频的时间;
所述时间差计算模块包括:
第四时间获取模块,用于获取主叫终端以本端显示的时间为准,记录的主叫终端发送多方共享视频请求的发送时间,以及主叫终端接收到所述被叫终端返回的确认响应的接收时间;解析所述确认响应,获得以所述被叫终端显示的时间为准的、所述确认响应的发送时间;
第四时间差计算模块,用于根据所述确认响应的发送时间、主叫终端接收到所述确认响应的接收时间、主叫终端发送所述多方共享视频请求的发送时间,确定主叫终端与被叫终端之间的时间差;
同步时间确认模块包括:第三同步时间确认模块,用于当被叫终端同步主叫终端正在播放的共享视频时,根据时间差以及共享视频在主叫终端的第一播放进度,确定被叫终端播放共享视频的第二播放进度;第二播放进度对应的时间为被叫终端与主叫终端同步播放共享视频的时间。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310068159.2A CN103209360B (zh) | 2013-03-04 | 2013-03-04 | 一种多方视频共享的方法和装置 |
PCT/CN2013/091010 WO2014134965A1 (zh) | 2013-03-04 | 2013-12-31 | 一种多方视频共享的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310068159.2A CN103209360B (zh) | 2013-03-04 | 2013-03-04 | 一种多方视频共享的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103209360A CN103209360A (zh) | 2013-07-17 |
CN103209360B true CN103209360B (zh) | 2018-02-13 |
Family
ID=48756419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310068159.2A Active CN103209360B (zh) | 2013-03-04 | 2013-03-04 | 一种多方视频共享的方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103209360B (zh) |
WO (1) | WO2014134965A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022049466A1 (en) * | 2020-09-03 | 2022-03-10 | Sling Media Pvt Ltd | Devices, systems and processes for facilitating live and recorded content watch parties |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103209360B (zh) * | 2013-03-04 | 2018-02-13 | 小米科技有限责任公司 | 一种多方视频共享的方法和装置 |
CN103442297B (zh) * | 2013-08-06 | 2017-09-01 | 小米科技有限责任公司 | 协作播放方法、装置、设备及系统 |
CN104317898B (zh) * | 2014-10-24 | 2018-08-10 | 联想(北京)有限公司 | 一种信息处理方法及服务器 |
CN104301768A (zh) * | 2014-11-12 | 2015-01-21 | 沈阳美行科技有限公司 | 一种跨平台多终端多应用音视频播放进度同步的方法 |
CN104519051A (zh) * | 2014-11-24 | 2015-04-15 | 深圳市金立通信设备有限公司 | 一种多媒体数据共享方法及终端 |
CN105763933A (zh) * | 2014-12-19 | 2016-07-13 | 中兴通讯股份有限公司 | 一种媒体文件当前播放位置的共享方法 |
CN104506626A (zh) * | 2014-12-25 | 2015-04-08 | 魅族科技(中国)有限公司 | 一种内容信息发送的控制方法、服务器和终端 |
CN104581366A (zh) * | 2014-12-30 | 2015-04-29 | 北京奇艺世纪科技有限公司 | 一种互联网电视播放方法和服务器 |
US10013229B2 (en) * | 2015-04-30 | 2018-07-03 | Intel Corporation | Signal synchronization and latency jitter compensation for audio transmission systems |
CN105429831B (zh) * | 2015-11-04 | 2018-03-02 | 广东欧珀移动通信有限公司 | 一种主播放设备的选择方法及播放设备 |
CN105430439B (zh) * | 2015-11-20 | 2017-09-15 | 广东欧珀移动通信有限公司 | 业务数据同步播放及同步播放数据提供方法、装置 |
CN106550279A (zh) * | 2016-04-07 | 2017-03-29 | 乐视控股(北京)有限公司 | 互动直播实现方法、装置及系统 |
CN106060680B (zh) * | 2016-06-30 | 2019-06-14 | 北京奇艺世纪科技有限公司 | 一种播放进度同步方法及装置 |
CN109246664B (zh) * | 2017-06-13 | 2021-07-23 | 上海大唐移动通信设备有限公司 | 一种语音测试方法及装置 |
CN108650541B (zh) * | 2018-05-09 | 2020-12-18 | 福建星网视易信息系统有限公司 | 实现不同设备同步播放视频的方法和系统 |
CN110719515B (zh) * | 2018-07-12 | 2022-06-14 | 阿里巴巴(中国)有限公司 | 视频播放方法、装置及存储介质 |
CN111372112B (zh) | 2018-12-26 | 2022-06-07 | 华为技术有限公司 | 一种视频同步显示的方法、装置及系统 |
CN113596547A (zh) * | 2021-07-29 | 2021-11-02 | 海信电子科技(武汉)有限公司 | 一种显示设备、同步播放方法及系统 |
CN114143584B (zh) * | 2021-09-29 | 2024-03-26 | 杭州当虹科技股份有限公司 | 在多终端之间实现同步播放的播出系统和方法 |
CN115002553A (zh) * | 2022-04-29 | 2022-09-02 | 当趣网络科技(杭州)有限公司 | 基于同一影视视频边看边聊的方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101622610A (zh) * | 2007-02-22 | 2010-01-06 | 雅虎公司 | 协作环境中媒体内容的同步传递 |
CN101631388A (zh) * | 2009-07-28 | 2010-01-20 | 青岛海信移动通信技术股份有限公司 | 一种基于无线网络的多方视频共享方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2165541B1 (en) * | 2007-05-11 | 2013-03-27 | Audinate Pty Ltd | Systems, methods and computer-readable media for configuring receiver latency |
CN102378350B (zh) * | 2010-08-23 | 2014-09-10 | 中国移动通信集团公司 | 时间同步方法、服务器及系统 |
CN103209360B (zh) * | 2013-03-04 | 2018-02-13 | 小米科技有限责任公司 | 一种多方视频共享的方法和装置 |
-
2013
- 2013-03-04 CN CN201310068159.2A patent/CN103209360B/zh active Active
- 2013-12-31 WO PCT/CN2013/091010 patent/WO2014134965A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101622610A (zh) * | 2007-02-22 | 2010-01-06 | 雅虎公司 | 协作环境中媒体内容的同步传递 |
CN101631388A (zh) * | 2009-07-28 | 2010-01-20 | 青岛海信移动通信技术股份有限公司 | 一种基于无线网络的多方视频共享方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022049466A1 (en) * | 2020-09-03 | 2022-03-10 | Sling Media Pvt Ltd | Devices, systems and processes for facilitating live and recorded content watch parties |
Also Published As
Publication number | Publication date |
---|---|
WO2014134965A1 (zh) | 2014-09-12 |
CN103209360A (zh) | 2013-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103209360B (zh) | 一种多方视频共享的方法和装置 | |
US20220303599A1 (en) | Synchronizing Program Presentation | |
EP3750301B1 (en) | Simulating a local experience by live streaming sharable viewpoints of a live event | |
WO2016197859A1 (zh) | 一种同步播放多媒体数据的方法及装置 | |
Boronat et al. | Hybrid broadcast/broadband TV services and media synchronization: demands, preferences and expectations of Spanish consumers | |
CN107517399B (zh) | 一种媒体信息同步的方法以及服务器 | |
CA3093023C (en) | System and method for management and delivery of secondary syndicated companion conent of discovered primary digital media presentations | |
CN104581366A (zh) | 一种互联网电视播放方法和服务器 | |
CN108667798A (zh) | 一种虚拟观影的方法及系统 | |
CN104506330B (zh) | 一种消息同步方法和系统 | |
CN107770569A (zh) | 多媒体的同步播放方法、装置及系统 | |
US20220368743A1 (en) | System and Method for Asynchronous User-Centric Context-Based Shared Viewing of Multimedia | |
CN108513159A (zh) | 多终端同步播放控制方法、主设备、装置及系统 | |
US20110164735A1 (en) | Efficient transmission of audio and non-audio portions of a communication session for phones | |
US20180205986A1 (en) | Method and Device for Implementing Synchronous Playing | |
JP5262675B2 (ja) | 映像配信システムおよびユニキャスト型多地点映像配信方法 | |
CN114173162B (zh) | 互动直播系统、发布-订阅关系的维护方法及相关设备 | |
CN110620761B (zh) | 一种实现多人虚拟互动的方法与装置 | |
JP2018530944A (ja) | 異種ネットワーキング環境におけるメディアレンダリングの同期化 | |
CN103826143B (zh) | 基于多播和单播混用的视频点播服务提供装置及其方法 | |
WO2011144105A2 (zh) | 互动信息更新方法、装置、服务器及终端 | |
CN105099728B (zh) | 一种消息处理方法和系统、及智能电视终端 | |
FR3009161A1 (fr) | Procede de synchronisation lors du traitement par un lecteur multimedia d'un contenu multimedia transmis par un service mbms | |
CN115174979A (zh) | 流媒体传输网络及传输控制方法、装置、设备及存储介质 | |
CN116939261A (zh) | 一种多用户的多媒体控制方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent for invention or patent application | ||
CB02 | Change of applicant information |
Address after: 100085 Beijing city Haidian District Qinghe Street No. 68 Huarun colorful city shopping center two floor 13 Applicant after: Xiaomi Technology Co., Ltd. Address before: 100102 Beijing Wangjing West Road, a volume of stone world building, A, block, floor 12 Applicant before: Beijing Xiaomi Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |