一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种多个直播播放端实现实时同步播放的方法与流程

2021-11-15 18:45:00 来源:中国专利 TAG:


1.本发明涉及直播处理技术领域,具体地,涉及一种多个直播播放端实现 实时同步播放的方法及系统。


背景技术:

2.在现有学校直播场景中,有很多需要多个播放端实时同步播放的情景, 而且教室之间不同步,播出来声音还可能形成回音效果。
3.传统的直播服务中,是用rtmp(real

time messaging protocol)播放的, 为了尽量做到同步,都是通过减少延时来处理的。如通过减小推流端gop帧 设置,减小播放端的播放缓存等。做到极致的情况下,延时能达到1秒,但 还是会造成播放端之间会有1秒内的播放时间差的可能性,可满足要求不高 的直播场景,但还是不能满足同步要求比较高的直播场景。


技术实现要素:

4.针对现有技术的缺陷,本发明通过使用http

flv的播放协议,并加上 服务器标准参考时间的策略,保证了播放端的同步,播放时间差能锐减到100 毫秒以内,满足了同步要求比较高的直播场景,是通过如下技术方案实现的。
5.一种多个直播播放端实现实时同步播放的方法,多个播放端与服务器通 信连接并实现实时同步播放,包括以下步骤:
6.服务器会将接收到rtmp协议的直播数据包,根据http

flv的播放协 议,将直播数据包转换成包括了播放数据及其对应的时间戳的多个flv视频、 音频tag数据;
7.在播放端向服务器请求直播数据包,实时跟服务器进行心跳通信,获取 参考播放时间;
8.播放端将直播数据包的时间戳与参考播放时间对比,如果时间差大于设 定阈值时,就会触发播放器倍速播放视频数据包,直到时间差恢复到设定的 阀值。
9.本发明的有益效果是:保证了与服务器通信的多个播放端的同步播放, 减少播放延迟,并对比直播时间戳与心跳时间戳,不断修正播放画面,满足 了同步要求比较高的直播场景。
附图说明
10.图1是本发明具体实施例的同步直播流程图。
11.图2是本发明具体实施例的播放端同步方法流程图。
具体实施方式
12.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而 不是全部的实施例。基于
本发明的实施例,本领域普通技术人员在没有做出 创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
13.如图1所示,一种多个直播播放端实现实时同步播放的方法,其特征在 于,包括以下步骤:
14.播放端向直播服务器请求直播播放数据;
15.播放端同时与直播服务器建立实时连接,获取播放实时时间;
16.直播服务器会将接收到rtmp协议的直播数据包,根据http

flv的播 放协议,将直播数据包转换成包括了播放数据及其时间戳的多个flv视频、 音频tag数据;
17.播放端接收播放数据包,并将直播数据包的时间戳与服务器时间对比, 如果播放延时大于设定阈值时,就会触发播放器快进播放该视频数据包中以 及播放缓存中超过阈值的视频数据包。
18.所述播放端安装在电脑端,所述播放端向所述直播服务器请求直播播放 数据;播放端用于播放。
19.所述播放端与所述直播服务器建立实时连接,获取实时时间,时间作为参 考标准时间。
20.直播服务器对接收到的rtmp协议的直播数据包,根据http

flv的播放 协议,将直播数据包转换成包括了播放数据及其时间戳的多个flv视频或音 频tag数据。视频数据是指视频文件,音频数据是指音频文件,选择视频文 件还是音频文件根据直播服务器的直播文件决定。本发明以视频文件为例进 行说明。
21.如图2所示,直播服务器向播放端发送基于flv封装好的带有播放时间 戳的视频tag数据。
22.播放端接收到直播服务器的flv封装格式的带有播放时间戳的视频tag 数据。
23.播放端对比该视频tag数据的时间戳与参考标准时间,得到时间差 delta;如果所述delta的值在允许误差范围内,则放入播放缓存队列, 并触发播放器正常播放流程。
24.如果所述delta的值超出允许误差范围内,则触发播放器快速播放流程; 当delta的值恢复到允许误差范围内,则重新触发播放器正常播放流程。
25.通过实时获取时间,以直播服务器的时间为标准,调整播放端的播放进 度,如通过快进的方式进行调节。快进速度可根据计算的时间差值来决定。
26.实施例一:
27.直播服务器根据协议http

flv的播放协议,将rtmp协议的直播数据 包(rtmp packet)音视频数据转换成flv视频或者音频tag,音视频数据 包括了播放数据及其时间戳t。
28.在播放端,播放器除了请求http

flv播放数据,还会实时跟服务器进 行心跳通信,获取当前的播放参考时间c。
29.播放器根据视频数据的时间t与c对比,如果播放延时delta=c

t(t 永远会小于c)>设定的阀值(如100毫秒)时,就会触发播放器的快进流程, 直到delta恢复到<=设定的阀值(如100毫秒)时则恢复正常播放流程,从 而保证了低延时要求,保证了同步。
30.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言, 可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种 变化、修改、替换
和变型,本发明的范围由所附权利要求及其等同物限定。


技术特征:
1.一种多个直播播放端实现实时同步播放的方法,其特征在于,包括以下步骤:播放端向直播服务器请求直播播放数据;播放端同时与直播服务器建立实时连接,获取播放实时时间;直播服务器会将接收到rtmp协议的直播数据包,根据http

flv的播放协议,将直播数据包转换成包括了播放数据及其对应的时间戳的多个flv视频、音频tag数据;播放端接收播放数据包,并将直播数据包的时间戳与实时时间对比,如果播放延时大于设定阈值时,就会触发播放器快进播放该视频数据包中以及播放缓存中超过阈值的视频数据包。2.根据权利要求方法1,其特征在于,所述播放端安装在电脑端,所述播放端向所述直播服务器请求直播播放数据。3.根据权利要求1所述的方法,其特征在于,所述播放端与所述直播服务器建立实时连接,获取实时时间,时间作为参考标准时间。4.根据权利要求1所述的方法,其特征在于,所述方法包括:所述直播服务器对接收到的rtmp协议的直播数据包,根据http

flv的播放协议,将直播数据包转换成包括了播放数据及其对应的时间戳的多个flv视频、音频tag数据;所述直播服务器向所述播放端发送基于flv封装好的带有播放时间戳的视频tag数据。5.根据权利要求1所述的方法,其特征在于,所述方法包括:所述播放端接收到所述直播服务器的flv封装格式的带有播放时间戳的视频tag数据;所述播放端对比该视频tag数据的时间戳与参考标准时间,得到时间差delta;如果所述delta的值在允许误差范围内,则放入播放缓存队列,并触发播放器正常播放流程;如果所述delta的值超出允许误差范围内,则触发播放器快速播放流程;当delta的值恢复到允许误差范围内,则重新触发播放器正常播放流程。

技术总结
本发明提供一种多个直播播放端实现实时同步播放的方法,包括:播放端向直播服务器请求直播播放数据;播放端保持与直播服务器的心跳连接,获取实时时间戳;直播服务器向播放端发送带有时间戳的播放数据;播放端接收播放数据,展现直播画面,并对比直播时间戳与心跳时间戳,不断修正播放画面。本发明的有益效果是:保证了与服务器通信的多个播放端的同步播放,减少播放延迟,并对比直播时间戳与心跳时间戳,不断修正播放画面,满足了同步要求比较高的直播场景。的直播场景。的直播场景。


技术研发人员:李朝平
受保护的技术使用者:深圳牛视科技有限公司
技术研发日:2021.08.03
技术公布日:2021/11/14
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献