一种低延时快速开播方法及装置制造方法及图纸

技术编号:15522789 阅读:99 留言:0更新日期:2017-06-04 11:43
本发明专利技术实施例公开了一种低延时快速开播方法,应用于服务器,所述方法包括:接收第一客户端实时上传的数据集合,所述数据集合包括视频数据;保存第一子视频数据,并修改所述第一子视频数据中每一帧的时间戳,所述第一子视频数据至少包括所述视频数据中最新接收到的关键帧;当接收到第二客户端发送的播放请求时,将所述第一子视频数据发送给所述第二客户端播放。这样,当接收到第二客户端发送的播放请求时,先将修改了时间戳的可快速播放完毕的第一子视频数据发送给第二客户端播放,即可使第二客户端能够快速的开播,无需等待下一个关键帧,并且降低第二客户端和第一客户端之间的视频播放延时,提高第二客户端用户的观看体验。

Low delay rapid broadcasting method and device

The embodiment of the invention discloses a low latency fast broadcasting method applied to the server, the method comprises: receiving the first client upload real-time data collection, the collection of data including video data; storing the first video data, and modify the time stamp of each frame of the first sub video data, the the first video data including at least the key frames of the video data in the received; when receiving sending second client playback request, sends the first video data to the client to play second. So, when receiving sending second client playback request, first will modify the first sub can be quickly finished playing video data sending time stamp to the second client player, can make the second client can quickly launch, no need to wait for the next key frame, and decreased between second and the first client client of video playback delay, improve second client user viewing experience.

【技术实现步骤摘要】
一种低延时快速开播方法及装置
本专利技术涉及视频直播
,尤其涉及一种低延时快速开播方法及装置。
技术介绍
RTMP(RealTimeMessagingProtocol,实时消息传送协议)是一种在播放器和服务器之间进行音频、视频和数据传输的协议。RTMP协议在视频点播和直播应用中得到了广泛的应用。客户端(例如播放器)可以利用RTMP协议与服务器进行数据交互。例如,客户端可以接收服务器推送的视频音频数据,并在客户端实现本地播放。但是,在RTMP实时播放的过程中,由于客户端接入实时视频的播放进入点具有随机性。而为保证客户端的正常播放,当客户端接入实时视频播放从服务器中拉流时,服务器需从直播视频数据中的关键帧开始向客户端发送视频数据。若服务器从接入时间后收到的关键帧开始向客户端发送视频数据,则会导致客户端在视频开播(即在客户端开始播放直播视频)时存在等待时间,无法做到快速或立即开播,不利于提高客户端用户的观看体验。若服务器从接入时间前收到的关键帧开始向客户端发送视频数据,则会在网络延时的基础上进一步加大客户端的播放延时,同样不利于提高客户端用户的观看体验。因此,本领域技术人员需要提供一种低延时快速开播方法及装置能够在减小开播时用户的等待时间的同时不增加客户端的播放延时,从而提高用户的观看体验。
技术实现思路
为了解决现有技术问题,本专利技术提供了一种低延时快速开播方法及装置能够在减小开播时用户的等待时间的同时不增加客户端的播放延时,从而提高用户的观看体验。本专利技术实施例提供的低延时快速开播方法,应用于服务器,所述方法包括:接收第一客户端实时上传的数据集合,所述数据集合包括视频数据;保存第一子视频数据,并修改所述第一子视频数据中每一帧的时间戳,所述第一子视频数据至少包括所述视频数据中最新接收到的关键帧;当接收到第二客户端发送的播放请求时,将所述第一子视频数据发送给所述第二客户端播放。可选的,所述修改所述第一子视频数据中每一帧的时间戳,具体包括:将所述第一子视频数据中每一帧的时间戳设置为预设时间范围内的任意时间。可选的,所述预设时间范围内的时间小于或者等于200毫秒。可选的,所述第一子视频数据为所述视频数据中最新接收到的一组画面组;所述保存第一子视频数据,具体包括:逐一检测所述视频数据中最新接收到的帧的帧类型;当检测到所述最新接收到的帧的帧类型为关键帧时,将该帧所属的画面组保存为所述第一子视频数据;当再次检测到所述最新接收到的帧的帧类型为关键帧时,将该帧所述的画面组替换为所述第一子视频数据。可选的,所述数据集合还包括音频数据;所述将所述第一子视频数据发送给所述第二客户端播放,之后还包括:继续将第二子视频数据和第二子音频数据发送给所述第二客户端,以使所述第二客户端同步播放所述第二子视频数据和第二子音频数据;其中,所述第二子视频数据属于所述视频数据,所述第二子视频数据与所述第一子视频数据在时间上是连续的且所述第一子视频数据的开始时间早于所述第二子视频数据的开始时间,所述第二子音频数据与所述第二子视频数据相对应。本专利技术实施例提供的低延时快速开播装置,应用于服务器,所述装置,包括:数据接收模块、数据处理模块、请求接收模块和数据发送模块;所述数据接收模块,用于接收第一客户端实时上传的数据集合,所述数据集合包括视频数据;所述数据处理模块,用于保存第一子视频数据,并修改所述第一子视频数据中每一帧的时间戳,所述第一子视频数据至少包括所述视频数据中最新接收到的关键帧;所述请求接收模块,用于接收第二客户端发送的播放请求;所述数据发送模块,用于当所述请求接收模块接收到所述播放请求时,将所述第一子视频数据发送给所述第二客户端播放。可选的,所述数据处理模块,包括:时间戳修改子模块;所述时间戳修改子模块,用于将所述第一子视频数据中每一帧的时间戳设置为预设时间范围内的任意时间。可选的,所述预设时间范围内的时间小于或者等于200毫秒。可选的,所述第一子视频数据为所述视频数据中最新接收到的一组画面组;所述数据处理模块,包括:检测子模块和存储子模块;所述检测子模块,用于逐一检测所述视频数据中最新接收到的帧的帧类型;所述存储子模块,用于当所述检测子模块检测到所述最新接收到的帧的帧类型为关键帧时,将该帧所属的画面组保存为所述第一子视频数据;所述存储子模块,还用于当所述检测子模块再次检测到所述最新接收到的帧的帧类型为关键帧时,将该帧所述的画面组替换为所述第一子视频数据。可选的,所述数据集合还包括音频数据;所述数据发送模块,还用于在将所述第一子视频数据发送给所述第二客户端播放后,继续将第二子视频数据和第二子音频数据发送给所述第二客户端,以使所述第二客户端同步播放所述第二子视频数据和第二子音频数据;其中,所述第二子视频数据属于所述视频数据,所述第二子视频数据与所述第一子视频数据在时间上是连续的且所述第一子视频数据的开始时间早于所述第二子视频数据的开始时间,所述第二子音频数据与所述第二子视频数据相对应。与现有技术相比,本专利技术至少具有以下优点:本专利技术实施例提供的低延时快速播放方法,在接收到第一客户端实时上传的视频数据和音频数据时,保存视频数据中最新接收到的一组画面组中包括关键帧的一帧或多帧,得到第一子视频数据,并随着视频数据的传输,实时更新保存的第一子视频数据。同时,修改所保存的第一子视频数据中每一帧的时间戳,使得第二客户端在解码播放时能够快速跳过播放第一子视频数据。这样,当接收到第二客户端发送的播放请求时,先将第一子视频数据发送给第二客户端播放,即可使第二客户端能够快速的开播,无需等待下一个关键帧。将第一子视频数据发送给第二客户端之后,再将实时的视频数据发送给第二客户端播放。修改后的第一子视频数据中每一帧的时间戳使得第二客户端能够快速的播放完第一子视频数据,再播放实时的视频数据,可降低第二客户端和第一客户端之间的视频播放延时,提高第二客户端用户的观看体验。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本专利技术提供的低延时快速开播方法实施例的流程示意图;图2为本专利技术提供的低延时快速开播装置实施例的结构示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。首先需要说明的是,本专利技术实施例提供的低延时快速开播方法及装置,均应用于服务器。该服务器通过RTMP协议分别与第一客户端(直播数据生成端、推流端或主播端等)和第二客户端(直播视频播放端、拉流端或观众端等)通信,实时的将第一客户端的数据转发至第二客户端。第二客户端根据从服务器处接收到的数据,播放第一客户端的直播视频。方法实施例:参见图1,该图为本实施例提供的低延时快速开播方法实施例的流程示意图。本实施例提供的低延时快速开播方本文档来自技高网
...
一种低延时快速开播方法及装置

【技术保护点】
一种低延时快速开播方法,其特征在于,应用于服务器,所述方法包括:接收第一客户端实时上传的数据集合,所述数据集合包括视频数据;保存第一子视频数据,并修改所述第一子视频数据中每一帧的时间戳,所述第一子视频数据至少包括所述视频数据中最新接收到的关键帧;当接收到第二客户端发送的播放请求时,将所述第一子视频数据发送给所述第二客户端播放。

【技术特征摘要】
1.一种低延时快速开播方法,其特征在于,应用于服务器,所述方法包括:接收第一客户端实时上传的数据集合,所述数据集合包括视频数据;保存第一子视频数据,并修改所述第一子视频数据中每一帧的时间戳,所述第一子视频数据至少包括所述视频数据中最新接收到的关键帧;当接收到第二客户端发送的播放请求时,将所述第一子视频数据发送给所述第二客户端播放。2.根据权利要求1所述的低延时快速开播方法,其特征在于,所述修改所述第一子视频数据中每一帧的时间戳,具体包括:将所述第一子视频数据中每一帧的时间戳设置为预设时间范围内的任意时间。3.根据权利要求1所述的低延时快速开播方法,其特征在于,所述预设时间范围内的时间小于或者等于200毫秒。4.根据权利要求1所述的低延时快速开播方法,其特征在于,所述第一子视频数据为所述视频数据中最新接收到的一组画面组;所述保存第一子视频数据,具体包括:逐一检测所述视频数据中最新接收到的帧的帧类型;当检测到所述最新接收到的帧的帧类型为关键帧时,将该帧所属的画面组保存为所述第一子视频数据;当再次检测到所述最新接收到的帧的帧类型为关键帧时,将该帧所述的画面组替换为所述第一子视频数据。5.根据权利要求1所述的低延时快速开播方法,其特征在于,所述数据集合还包括音频数据;所述将所述第一子视频数据发送给所述第二客户端播放,之后还包括:继续将第二子视频数据和第二子音频数据发送给所述第二客户端,以使所述第二客户端同步播放所述第二子视频数据和第二子音频数据;其中,所述第二子视频数据属于所述视频数据,所述第二子视频数据与所述第一子视频数据在时间上是连续的且所述第一子视频数据的开始时间早于所述第二子视频数据的开始时间,所述第二子音频数据与所述第二子视频数据相对应。6.一种低延时快速开播装置,其特征在于,应用于服务器,所述装置,包括:数据接收模块、数据处理模块、请求接收模块和数据发送模块;所述数据接收模块,用于接收第一...

【专利技术属性】
技术研发人员:周志伟杨建光庹虎
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1