音视频延时的实现方法技术

技术编号:37793913 阅读:24 留言:0更新日期:2023-06-09 09:24
本发明专利技术公开了一种音视频延时的实现方法,包括以下步骤:将输入的音视频信号的每一帧数据构建一个基本帧单位,定义延时切片的时长,通过若干个延时切片实现所需的延时时间,每个延时切片又包括若干个基本帧单位数据;将延时切片数据写入存储介质;读取存储介质中的延时切片,将音视频信号延时输出。本发明专利技术通用于各种音视频信号(压缩信号或非压缩信号)延时,延时精度可以控制到帧级。时精度可以控制到帧级。时精度可以控制到帧级。

【技术实现步骤摘要】
音视频延时的实现方法


[0001]本专利技术属于音视频播放
,具体涉及一种音视频延时的实现方法。

技术介绍

[0002]目前广电系统或者互联网领域中,进行一些体育赛事,综艺晚会,演唱会等事件性直播的时候,为了安全播出(避免一些突发性状况),往往会将直播的音视频信号进行延时播出,延时时间从几秒到几十分钟,甚至几小时不等。一般处理延时播出会单独接入一套音视频的延时系统,由于音视频信号可能是压缩数据(IP信号),也有可能是非压缩数据(SDI基带信号),不同的信号数据类型需要接入不同的延时系统,如果直播链路中又有主备异构信号(主备系统中包含不同数据类型的信号),那么整个直播链路就会非常繁杂,大大降低链路上的安全性。对不同的音视频信号(压缩信号或者非压缩信号)需要有不同的延时系统处理。

技术实现思路

[0003]鉴于以上存在的问题,本专利技术提供一种音视频延时的实现方法,通用于各种音视频信号(压缩信号或非压缩信号)延时,延时精度可以控制到帧级。
[0004]为解决上述技术问题,本专利技术采用如下的技术方案:
[0005]一种音视频延时的实现方法,包括以下步骤:
[0006]将输入的音视频信号的每一帧数据构建一个基本帧单位,定义延时切片的时长,通过若干个延时切片实现所需的延时时间,每个延时切片又包括若干个基本帧单位数据;
[0007]将延时切片数据写入存储介质;
[0008]读取存储介质中的延时切片,将音视频信号延时输出。
[0009]一种可能的实施方式中,所述基本帧单位的数据包括:同步头字节、是否包含时间戳、是否包含媒体信息、是否包含音视频数据、第一帧绝对时间戳、帧开始时间、帧结束时间、媒体信息数据大小、音视频数据大小、媒体信息数据、音视频数据。
[0010]一种可能的实施方式中,帧开始时间定义为:如果当前帧包含时间戳,表示当前帧的开始时间戳,相对第一帧绝对时间戳的偏移值。
[0011]一种可能的实施方式中,帧结束时间定义为:如果当前帧包含时间戳,表示当前帧的结束时间戳,相对第一帧绝对时间戳的偏移值。
[0012]一种可能的实施方式中,所述读取存储介质中的延时切片包括:
[0013]根据定义的基本帧单位同步头字节信息,读取基本帧单位信息,通过第一帧音视频信号的第一帧绝对时间戳和当前帧开始时间计算出当前帧输出的绝对时间;
[0014]根据计算出的当前帧输出的绝对时间和设置的延时时间计算出当前帧实际输出的绝对时间;
[0015]通过当前帧实际输出绝对时间和当前系统时间的比较,当前帧实际输出绝对时间小于等于当前系统时间时,输出当前帧数据。
[0016]一种可能的实施方式中,通过第一帧音视频信号的第一帧绝对时间戳和当前帧开始时间计算出当前帧输出的绝对时间为:
[0017]FrameOutTime=FirstFrameABSTime+FrameTime
[0018]其中FrameOutTime为当前帧输出绝对时间,FrameTime为当前帧开始时间戳,FirstFrameABSTime为延时切片中第一帧绝对时间戳,如果当前帧不包含时间戳,FrameTime以0代替。
[0019]一种可能的实施方式中,根据计算出的当前帧输出的绝对时间和设置的延时时间计算出当前帧实际输出的绝对时间为:
[0020]FrameRealTime=FrameOutTime+DelayTime
[0021]其中FrameRealTime为实际输出绝对时间,DelayTime为设置的延时时间。
[0022]一种可能的实施方式中,所述存储介质包括磁盘。
[0023]一种可能的实施方式中,所述存储介质包括内存。
[0024]一种可能的实施方式中,所述存储介质包括数据库。
[0025]采用本专利技术具有如下的有益效果:可以通用于各种音视频信号(压缩信号或非压缩信号)延时,延时精度可以控制到帧级,也极容易集成在信号切换器、信号转码器中,与现有技术中单独接入一套音视频的延时系统相比,可以大大精简链路的复杂性,节省链路成本,增强整体链路的安全性。
附图说明
[0026]图1为本专利技术实施例的音视频延时的实现方法的步骤流程图;
[0027]图2为本专利技术实施例中延时切片的组成示意图;
[0028]图3为现有技术中直播链路上的1比1主备信号的延时播出示意图;
[0029]图4为通过本专利技术实施例的方法实现的直播链路上的1比1主备信号的延时播出示意图。
具体实施方式
[0030]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0031]参见图1,所示为本专利技术实施例的一种音视频延时的实现方法的步骤流程图,包括以下步骤:
[0032]S10,将输入的音视频信号的每一帧数据构建一个基本帧单位,定义延时切片的时长,通过若干个延时切片实现所需的延时时间,每个延时切片又包括若干个基本帧单位数据;
[0033]S20,将延时切片数据写入存储介质;
[0034]S30,读取存储介质中的延时切片,将音视频信号延时输出。
[0035]通过以上设置的音视频延时的实现方法,可以直接将音视频延时信号(压缩信号或者非压缩信号)以结构化数据的形式写入存储介质,而存储介质不仅限于磁盘、内存、数
据库等形式,并且延时输出的精度可以控制到帧级别。此实现方法可以极容易地集成到现有链路的各个节点上,比如信号切换系统节点,信号转码系统节点,信号播出系统节点等,大大精简了整个直播链路复杂性,增强链路的安全性,并且大大减少链路上的设备成本。
[0036]此实现方法可以有效的将信号延时数据和直播业务逻辑分离,给传统的直播链路提供了新的一套实现方式,比如直播链路上的1比1主备信号的延时播出,1比1主备机切换的延时播出,M+N主备切换的延时播出等。如图3所示为现有技术中直播链路上的1比1主备信号的延时播出,主备链路上都需要专门的信号延时器,并且需要配置信号切换其来实现延时播出。如图4所示,通过本专利技术实施例的方法,主备链路都仅仅需要延时切片即可实现信号延时。
[0037]本专利技术一实施例中,基本帧单位的数据包括:同步头字节、是否包含时间戳、是否包含媒体信息、是否包含音视频数据、第一帧绝对时间戳、帧开始时间、帧结束时间、媒体信息数据大小、音视频数据大小、媒体信息数据、音视频数据。帧开始时间定义为:如果当前帧包含时间戳,表示当前帧的开始时间戳,相对第一帧绝对时间戳的偏移值。帧结束时间定义为:如果当前帧包含时间戳,表示当前帧的结束时间戳,相对第一帧绝对时间戳的偏移值。表1为每个帧单位定义表格,如下:
[0038]表1基本帧单位的数据组成说明表
[0039][00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种音视频延时的实现方法,其特征在于,包括以下步骤:将输入的音视频信号的每一帧数据构建一个基本帧单位,定义延时切片的时长,通过若干个延时切片实现所需的延时时间,每个延时切片又包括若干个基本帧单位数据;将延时切片数据写入存储介质;读取存储介质中的延时切片,将音视频信号延时输出。2.如权利要求1所述的音视频延时的实现方法,其特征在于,所述基本帧单位的数据包括:同步头字节、是否包含时间戳、是否包含媒体信息、是否包含音视频数据、当前切片的第一帧绝对时间戳、帧开始时间、帧结束时间、媒体信息数据大小、音视频数据大小、媒体信息数据、音视频数据。3.如权利要求1所述的音视频延时的实现方法,其特征在于,帧开始时间定义为:如果当前帧包含时间戳,表示当前帧的开始时间戳,相对第一帧绝对时间戳的偏移值。4.如权利要求1所述的音视频延时的实现方法,其特征在于,帧结束时间定义为:如果当前帧包含时间戳,表示当前帧的结束时间戳,相对第一帧绝对时间戳的偏移值。5.如权利要求2至4任一所述的音视频延时的实现方法,其特征在于,所述读取存储介质中的延时切片包括:根据定义的基本帧单位同步头字节信息,读取基本帧单位信息,通过第一帧音视频信号的第一帧绝对时间戳和当前帧开始时间计算出当前帧输出的绝对时间;根据计算出的当前帧输出的绝对时间和设置的延...

【专利技术属性】
技术研发人员:许国忠石小明徐扬法李小强孙伟涛
申请(专利权)人:杭州当虹科技股份有限公司
类型:发明
国别省市:

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

1