一种延时直播方法及系统技术方案

技术编号:17784632 阅读:30 留言:0更新日期:2018-04-22 16:23
本发明专利技术提供一种延时直播方法及系统,所述方法包括:S1、基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在预设的缓冲区中;S2、当所述流媒体数据存储在所述缓冲区中的时间超过预设的延时时长时,从所述缓冲区中读取所述流媒体数据,以进行延时直播。本发明专利技术提供的延时直播方法及系统,实现了中小型会议室的录播产品的延时直播功能,满足了在某些突发环境下需要使用延时直播的需求,并且本发明专利技术可以应用在录播产品内部,无须额外添置设备,减少成本。

【技术实现步骤摘要】
一种延时直播方法及系统
本专利技术涉及音视频直播领域,更具体地,涉及一种延时直播方法及系统。
技术介绍
嵌入式录播一体机是为中小型会议提供视频直播、录制和点播的一个设备,会议室空间有限不能容纳所有人参加会议,而某些政府部分、企事业单位的会议很重要,需要把会议精神传达给单位所有人或部分人,就需要录播设备辅助会议录制、直播和点播功能。为了保障会议直播的严肃性,完整性,维护政府部分、企事业单位的形象,避免出现不雅画面或语音,应对突发事件等方面问题就需要用到延时直播技术。现有的延时直播更多的是应用在电视直播中,主要采用加入延时器设备或硬盘服务器及时对监控里发现的直播中的非法信号,通过远程方式,进行干预处理。与编码、录制和直播的服务分开独立运行。而在中小型会议室的录播产品中,则还没有一种产品具有延时直播功能,故而无法满足现有的中小型会议室的特定环境下的延时直播需求。
技术实现思路
本专利技术提供一种克服上述问题或者至少部分地解决上述问题的一种延时直播方法,所述方法包括:S1、基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在预设的缓冲区中;S2、当所述流媒体数据存储在所述缓冲区中的时间超过预设的延时时长时,从所述缓冲区中读取所述流媒体数据,以进行延时直播。其中,步骤S1之前所述方法还包括:基于获取的流媒体数据码率大小和预设的延时时长,设置所述缓冲区的存储空间大小。其中,所述方法还包括:当所述延时直播中断时,从预设的预读存储区中读取预先存储的流媒体数据。其中,所述数据链表中标识了数据的存储标签,所述存储标签具体包括时间戳以及关键帧标识;所述数据链表对应的数据结构为:基于预设的数据链表,当获取的流媒体数据存储进所述缓存区中时,记录所述流媒体数据的所述存储标签;将所述流媒体数据的所述存储标签,作为所述流媒体数据的数据结构。其中,所述缓冲区包括固定缓存区和动态缓存区,步骤S1包括:S11、基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在所述固定缓存区中;S12、若所述流媒体数据未存储完,但所述固定缓存区的存储空间为零时,增加所述动态缓存区,以继续存储所述流媒体数据。其中,步骤S2包括:S21、当直播开始时,读取所述流媒体数据的所述存储标签;S22、若所述流媒体数据其中一帧数据的时间戳记录的时刻与直播时刻的差超过预设的延时时长,则由所述流媒体数据其中一帧数据开始读取所述流媒体数据,以进行延时直播。其中,步骤S22还包括:当所述流媒体数据其中一帧数据的时间戳记录的时刻与直播时刻的差超过预设的延时时长,并且所述流媒体数据其中一帧数据的所述存储标签中含有关键帧标识时,则由所述流媒体数据其中一帧数据开始读取所述流媒体数据,以进行延时直播。根据本专利技术的第二方面,提供一种延时直播系统,包括:存储模块,用于基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在预设的缓冲区中;播放模块,用于当所述流媒体数据存储在所述缓冲区中的时间超过预设的延时时长时,从所述缓冲区中读取所述流媒体数据,以进行延时直播。根据本专利技术的第三方面,提供一种计算机程序产品,包括程序代码,所述程序代码用于执行上述所述的延时直播方法。根据本专利技术的第四方面,提供一种非暂态计算机可读存储介质,用于存储如前所述的计算机程序。本专利技术提供的延时直播方法及系统,实现了中小型会议室的录播产品的延时直播功能,满足了在某些突发环境下需要使用延时直播的需求,并且本专利技术可以应用在录播产品内部,无须额外添置设备,减少成本。附图说明图1是本专利技术实施例提供的一种延时直播方法流程图;图2是本专利技术实施例提供的一种延时直播系统结构图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。图1是本专利技术实施例提供的一种延时直播方法流程图,如图1所示,所述方法包括:S1、基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在预设的缓冲区中;S2、当所述流媒体数据存储在所述缓冲区中的时间超过预设的延时时长时,从所述缓冲区中读取所述流媒体数据,以进行延时直播。现有技术中,在电视直播系统中已经有延时直播的功能,但在中小型会议等私人应用环境下,还没有录播产品能具备延时直播的功能,但是在某些特殊情况下,例如出现不雅画面或语音和信号干扰等特殊事件发生导致直播无法满足需求时,就需要延时直播来帮助用户应对。而现有的使用在电视直播系统的延时直播功能,其大多采用延时器或硬盘服务器来实现直播延时功能,一般过程为:视频信号通过Videoin接口进入延时器,经过A/D转换成数字视频,再经过数字编码转换成数码方式。机器内寄存器对输入的编码进行锁存。当寄存器存满一定数量帧后就会向外输出编码,此时输入端继续输入信号,整个过程为单线程调度,任务单一,不会产生死锁,工作稳定。输出的编码经编码器还原视频信号,并且在数字编码输出端加外同步锁相信号进行时基处理和同步调整还原成正常的数字视频,最后通过D/A转换成模拟信号。音频信号经A/D转换进行延时后,经过D/A直接输出。而上述应用于电视直播系统的延时直播方法对于中小型会议室的录播产品而言,其成本和设备数量都过高,并且操作繁琐,不利于私人使用,不具备推广和移植性,故而现在亟须一种能应用于中小型会议室的录播产品的延时直播方法。针对上述现有技术中存在的问题,本专利技术实施例提供了一种延时直播方法,通过计算机软件在录播产品中的编码和数据处理,实现了录播产品的延时直播。具体的,S1中,所述预设的数据链表为本专利技术实施例提供的方便数据操作和有效数据读取而构建的数据链表,根据构建的数据链表中标识的存储标签,能够有效记录数据存储的数据标记,例如:存储时间、存储位置、存储类型等,对应的将存储在缓冲区中的数据按照存储标签对应的数据结构进行表示。S1中,所述流媒体数据为录播产品采集到音频和/或视频数据进行编码后的数据,所述预设的缓冲区为预先构建的用于缓存的存储空间,一般的,进行编码后的流媒体数据会直接存放进内存中,然后由内存直接进行播放,而在本专利技术实施例中,编码后的流媒体数据将线存放进缓冲区中,以对数据进行缓存。S2中,所述预设的延时时长为根据需要延时直播的长短进行设置的,一般的,延时直播不易间隔太长,优选的,本专利技术实施例将延时时长设置为0-20秒,可以理解的是,当存储在缓冲区的数据的存放时间超过设置的延时时长时,即可判定此时缓存完毕,对应的将对流媒体数据进行解码播放。从而用户观看到的是延时后的流媒体播放。在上述实施例的基础上,所述数据链表中标识了数据的存储标签,所述存储标签具体包括时间戳以及关键帧标识;所述数据链表对应的数据结构为:基于预设的数据链表,当获取的流媒体数据存储进所述缓存区中时,记录所述流媒体数据的所述存储标签;将所述流媒体数据的所述存储标签,作为所述流媒体数据的数据结构。进一步的,本专利技术实施例构建的数据链表主要定义了多种存储标签,分别是数据的存储位置和存储长度、数据类型、时间戳以及关键帧标识,其伪代码如下:其中,如上述伪代码所示,所述存储标签除了包括时间戳以及关键帧标识,还包括:数据类型、数据起始位置指针和数据长度。其中,数据起始位置指针表示数据的本文档来自技高网...
一种延时直播方法及系统

【技术保护点】
一种延时直播方法,其特征在于,包括:S1、基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在预设的缓冲区中;S2、当所述流媒体数据存储在所述缓冲区中的时间超过预设的延时时长时,从所述缓冲区中读取所述流媒体数据,以进行延时直播。

【技术特征摘要】
1.一种延时直播方法,其特征在于,包括:S1、基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在预设的缓冲区中;S2、当所述流媒体数据存储在所述缓冲区中的时间超过预设的延时时长时,从所述缓冲区中读取所述流媒体数据,以进行延时直播。2.根据权利要求1所述的方法,其特征在于,步骤S1之前所述方法还包括:基于获取的流媒体数据码率大小和预设的延时时长,设置所述缓冲区的存储空间大小。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述延时直播中断时,从预设的预读存储区中读取预先存储的流媒体数据。4.根据权利要求1所述的方法,其特征在于,所述数据链表中标识了数据的存储标签,所述存储标签具体包括时间戳以及关键帧标识;所述数据链表对应的数据结构为:基于预设的数据链表,当获取的流媒体数据存储进所述缓存区中时,记录所述流媒体数据的所述存储标签;将所述流媒体数据的所述存储标签,作为所述流媒体数据的数据结构。5.根据权利要求1或4所述的方法,其特征在于,所述缓冲区包括固定缓存区和动态缓存区,步骤S1包括:S11、基于预设的数据链表,将获取的流媒体数据按照所述数据链表对应的数据结构存储在所述固定缓存区中;S12、若所述流媒体数据未存储完,但所述固定缓存区的存储空间为零时,增加所述动态缓存区,以继续存储所述流媒体数据。6.根据权利要求...

【专利技术属性】
技术研发人员:杨振华陈洪顺曹忻军李立敏
申请(专利权)人:北京飞利信电子技术有限公司
类型:发明
国别省市:北京,11

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

1