流媒体的PTS复位处理方法、显示设备及存储介质技术

技术编号:24504431 阅读:26 留言:0更新日期:2020-06-13 06:47
本申请公开了一种流媒体的PTS复位处理方法、显示设备及存储介质,计算先后连续注入的第一已注入帧与第二已注入帧之间的第一PTS差值;当第一PTS差值的绝对值大于最大容错值时,获取第二已注入帧之后待注入帧的PTS值;分别计算待注入帧与第二已注入帧之间的第二PTS差值,及待注入帧与第一已注入帧之间的第三PTS差值;当第二PTS差值的绝对值小于第三PTS差值的绝对值时,基于第一已注入帧、第二已注入帧和待注入帧对传输流进行复位处理。本申请只有确保PTS值跳变情况是由于正常复位发生,才会进行复位处理,以此保证复位处理的可靠性,避免因PTS值跳变情况导致传输流中音视频不同步等播放问题,优化用户体验。

PTS reset processing method, display device and storage medium of streaming media

【技术实现步骤摘要】
流媒体的PTS复位处理方法、显示设备及存储介质
本申请涉及流媒体播放
,尤其涉及一种流媒体的PTS复位处理方法、显示设备及存储介质。
技术介绍
流媒体,又可称为流式媒体,是当前主流的电视应用。在流媒体点播和直播领域,HLS(HTTPLiveStreaming,超文本直播流)协议是一种广泛应用的流媒体传输协议。HLS协议主要使用TS(TransportStream,传输流)作为其音视频封装格式。音视频中每一帧TS均包含有PTS(PresentationTimeStamp,显示时间戳),通过显示时间戳显示出流媒体文件的播放进度。在电视系统中,根据TS封装格式的要求,TS中的PTS存在一个能够支持的最大时间。当PTS的数值达到在该最大时间内的最大值时,为了保证流媒体的正常播放,就需要进行PTS复位,即将下一帧TS中的PTS重新置为一个极小值,重新开始累积使用,并以此进行循环。目前,电视通过解复用器处理PTS复位,若解复用器识别到某一TS帧的PTS值发生跳变,则将跳变值视为复位值,然后基于当前修正次数和HLS协议允许的PTS最大值对复位值进行修正。上述修正方式中,当解复用器解析出错导致某一TS帧的PTS值发生跳变时,解复用器也会将其视为复位,进而会对其进行修正。由此看出,上述修正过程未考虑复位情况发生时实际的PTS跳变值,导致后续每次复位处理都会累计新的误差,进而会出现因PTS复位处理不准确产生音视频不同步的播放问题。
技术实现思路
本申请提供了一种流媒体的PTS复位处理方法、显示设备及存储介质,以解决现有技术中因PTS复位处理不准确导致音视频不同步的技术问题。为了解决上述技术问题,本申请实施例公开了如下技术方案:第一方面,本申请实施例公开了一种流媒体的PTS复位处理方法,包括:计算第一已注入帧与第二已注入帧之间的第一PTS差值,其中,所述第一已注入帧与第二已注入帧为先后连续已注入帧;当所述第一PTS差值的绝对值大于最大容错值时,获取所述第二已注入帧之后待注入帧的PTS值;分别计算所述待注入帧与所述第二已注入帧之间的第二PTS差值,及所述待注入帧与所述第一已注入帧之间的第三PTS差值;当所述第二PTS差值的绝对值小于所述第三PTS差值的绝对值时,基于所述第一已注入帧、第二已注入帧和待注入帧对传输流的PTS值进行复位处理。第二方面,本申请实施例公开了一种流媒体显示设备,包括:控制器,所述控制器包括数据注入层,所述数据注入层被配置为:计算第一已注入帧与第二已注入帧之间的第一PTS差值,其中,所述第一已注入帧与第二已注入帧为先后连续已注入帧;当所述第一PTS差值的绝对值大于最大容错值时,获取所述第二已注入帧之后待注入帧的PTS值;分别计算所述待注入帧与所述第二已注入帧之间的第二PTS差值,及所述待注入帧与所述第一已注入帧之间的第三PTS差值;当所述第二PTS差值的绝对值小于所述第三PTS差值的绝对值时,基于所述第一已注入帧、第二已注入帧和待注入帧对传输流的PTS值进行复位处理;显示器,与所述控制器通讯连接,用于显示经所述数据注入层处理的流媒体数据。第三方面,本申请实施例公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被控制器执行时实现本申请实施例第三方面中的流媒体的PTS复位处理方法。与现有技术相比,本申请的有益效果为:本申请提供了一种流媒体的PTS复位处理方法、播放装置及存储介质,通过比较第二已注入帧与第一已注入帧之间的PTS差值,若是两者的PTS值差距较大,且大于最大容错值时,则说明第二已注入帧的PTS值发生跳变。随后,获取在第二已注入帧之后待注入帧的PTS值,并相继计算出待注入帧与第二已注入帧之间的第二PTS差值,及待注入帧与第一已注入帧之间的第三PTS差值。若第二PTS差值的绝对值小于第三PTS差值的绝对值,也就是说,待注入帧的PTS值更接近于第二已注入帧的PTS,此次第二已注入帧为复位情况,则本申请对传输流的PTS值进行复位处理,其中,本申请综合考虑第二已注入帧、第一已注入帧和待注入帧作复位处理。由此可见,本申请根据实际情况分析第二已注入帧PTS值发生跳变的原因是否是正常复位,只有确保PTS值跳变情况是由于正常复位发生,才会进行复位处理,以此保证复位处理的可靠性,避免因PTS值跳变情况导致传输流中音视频不同步等播放问题,优化用户体验。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。附图说明为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种流媒体的PTS复位处理方法的流程示意图;图2为本专利技术实施例提供的已注入帧的数据排序;图3为本专利技术实施例提供的待注入帧的数据排序;图4为本专利技术实施例提供的复位处理方法的流程示意图;图5为本专利技术实施例提供的PTS复位基准值的计算流程图;图6为本专利技术实施例提供的控制器的基本结构示意图。具体实施方式为了使本
的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。为便于理解,以下首先对本申请所涉及到的概念及原理进行说明。HLS(HTTPLiveStreaming,超文本直播流)协议的原理是由服务器将完整的媒体文件切割成连续且长度较小的媒体片段并填写PTS(PresentationTimeStamp,显示时间戳)等信息进行封装,电视端按服务器提供的媒体播放列表顺序地下载这些媒体文件片段进行相应的解复用等操作,并将解析出的ES(ElementaryStreams,原始流)连同PTS等信息注入解码器进行解码和播放。HLS协议主要使用TS(TransportStream,传输流)作为其媒体片段的封装格式,TS封装最早应用于数字电视码流,具有良好的抗误码性能,且支持每帧单独解码。TS封装格式遵循ISO/IEC13818国际标准,参照该国际标准中关于PTS部分的描述可知,PTS由三个字段拼装而成,其总字段长度为33比特,其支持的最大值(MAX_PTS)为233-1。在计算PTS值时,根据标准定义的转换规则:PTS(k)=((system_clock_frequency×tpn)DIV300)%233式中,system_clock_frequency表示为系统时钟频率,tpn表示为单元Pn(k)的表示时间,DIV表示整除计算。根据上述转换规则,计算出在电视系统中每个P本文档来自技高网
...

【技术保护点】
1.一种流媒体的PTS复位处理方法,其特征在于,包括:/n计算第一已注入帧与第二已注入帧之间的第一PTS差值,其中,所述第一已注入帧与第二已注入帧为先后连续已注入帧;/n当所述第一PTS差值的绝对值大于最大容错值时,获取所述第二已注入帧之后待注入帧的PTS值;/n分别计算所述待注入帧与所述第二已注入帧之间的第二PTS差值,及所述待注入帧与所述第一已注入帧之间的第三PTS差值;/n当所述第二PTS差值的绝对值小于所述第三PTS差值的绝对值时,基于所述第一已注入帧、第二已注入帧和待注入帧对传输流的PTS值进行复位处理。/n

【技术特征摘要】
1.一种流媒体的PTS复位处理方法,其特征在于,包括:
计算第一已注入帧与第二已注入帧之间的第一PTS差值,其中,所述第一已注入帧与第二已注入帧为先后连续已注入帧;
当所述第一PTS差值的绝对值大于最大容错值时,获取所述第二已注入帧之后待注入帧的PTS值;
分别计算所述待注入帧与所述第二已注入帧之间的第二PTS差值,及所述待注入帧与所述第一已注入帧之间的第三PTS差值;
当所述第二PTS差值的绝对值小于所述第三PTS差值的绝对值时,基于所述第一已注入帧、第二已注入帧和待注入帧对传输流的PTS值进行复位处理。


2.根据权利要求1所述的流媒体的PTS复位处理方法,其特征在于,所述当所述第二PTS差值的绝对值小于所述第三PTS差值的绝对值时,基于所述第一已注入帧、第二已注入帧和待注入帧对传输流的PTS值进行复位处理,包括:
利用所述第一已注入帧、第二已注入帧和每一个待注入帧的PTS值计算出PTS复位基准值;
通过解复用解析出传输流的PTS原始值;
将所述PTS复位基准值与所述PTS原始值求和,获取传输流的PTS修正值。


3.根据权利要求2所述的流媒体的PTS复位处理方法,其特征在于,所述利用所述第一已注入帧、第二已注入帧和每一个待注入帧的PTS值计算出PTS复位基准值,包括:
生成PTS调整值,所述PTS调整值是两帧分别对应PTS值的差值的绝对值,其中,两帧为所述待注入帧中的前两帧;
将所述第一已注入帧的PTS修正值与所述第二已注入帧的PTS原始值作差,获得PTS基础值;
将所述PTS基础值与所述PTS调整值求和,获得PTS复位基准值。


4.根据权利要求1所述的流媒体的PTS复位处理方法,其特征在于,所述方法还包括:
当所述第二PTS差值的绝对值大于所述第三P...

【专利技术属性】
技术研发人员:康健民李双增
申请(专利权)人:青岛海信传媒网络技术有限公司
类型:发明
国别省市:山东;37

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

1