视频平滑播放方法和装置与流程

allin2025-04-02  18


本技术实施例涉及视频领域,具体涉及一种视频平滑播放方法和装置。


背景技术:

1、视频传输系统中,视频从发送端经过采集、前处理、编码、分包,再经过网络传输到接收端,在接收端经过组帧、解码、后处理再输出到显示设备进行渲染。

2、然而,大部分设备显示的频率是固定的,比如60赫兹(hertz,hz)、120hz。若同一时刻输入到渲染管道的帧太多,会引起视频帧的丢失、离屏缓冲的拷贝阻塞或者排队现象,输入帧少了也会丧失平滑的作用。这些情况都会降低实际的播放体验。

3、因此,如何提升接收端的播放体验,是一个亟待解决的技术问题。


技术实现思路

1、本技术实施例提供一种视频平滑播放方法和装置,抖动缓冲器能够通过目标帧率和图像到达帧率实时确定向显示设备发送的视频帧数量,并以显示设备垂直同步周期的倍数为时间间隔向显示设备发送视频帧,减少了视频帧丢失带来的播放抖动问题,提高了接收端的播放体验。

2、第一方面,提供了一种视频平滑播放方法,该方法应用于视频传输系统中,所述视频传输系统包括发送端和接收端,所述接收端包括抖动缓冲器和显示设备,所述方法包括:所述抖动缓冲器获取目标帧率和图像到达帧率,所述目标帧率为所述发送端传输多个视频帧的帧率,所述图像到达帧率为所述抖动缓冲器在预设时段内接收所述多个视频帧的频率,所述预设时段的结束时刻为所述抖动缓冲器接收到第一视频帧的时刻,所述第一视频帧为所述多个视频帧中的任一个;所述抖动缓冲器根据所述目标帧率和所述图像到达帧率的大小,确定所述抖动缓冲器中存储的视频帧数量;所述抖动缓冲器向所述显示设备发送所述抖动缓冲器中保留的视频帧,其中,所述发送所述抖动缓冲器中保留的视频帧的时间间隔为所述显示设备的垂直同步周期的n倍,n为大于或者等于1的整数。

3、本技术实施例提供一种视频平滑播放方法,抖动缓冲器能够通过目标帧率和图像到达帧率实时确定向显示设备发送的视频帧数量,并以显示设备垂直同步周期的倍数为时间间隔向显示设备发送视频帧,减少了视频帧丢失带来的播放抖动问题,提高了接收端的播放体验。

4、应理解,发送端也可以称为视频采集端,接收端也可以称为视频播放端,抖动缓冲器也可以称为抖动缓冲区。本技术对具体的名称不做限制。

5、目标帧率可以是视频在发送端经过编码后传输的帧率,接收端可以通过信令协商获得此信息。

6、示例性地,预设时段的时长可以是1秒、0.5秒、0.8秒、1.5秒等,本技术对具体的时长不做限定。例如,每当抖动缓冲器接收到一张待显示的图像,计算此刻往前预设时长内图像到达的频率,作为图像到达帧率,这张待显示的图像即为第一视频帧。

7、垂直同步周期为显示设备屏幕刷新率的倒数。示例性地,显示设备的屏幕刷新率为90hz,则垂直同步周期约为11毫秒(ms)。应理解,抖动缓冲器向显示设备发送抖动缓冲器中保留的视频帧的时间间隔为显示设备的垂直同步周期的n倍,这样开启垂直同步之后,显卡实际渲染的帧数就不会超过显示器的刷新率,解决了屏幕撕裂和抖动的问题。

8、结合第一方面,在第一方面的某些实现方式中,所述抖动缓冲器根据所述目标帧率和所述图像到达帧率的大小,确定所述抖动缓冲器中存储的视频帧数量,包括:若所述图像到达帧率大于所述目标帧率,所述抖动缓冲器丢弃m个视频帧,n等于1,m为大于或者等于1的整数。

9、示例性地,目标帧率为60hz,实时到达帧率为70hz,表示抖动缓冲器每秒收到的图像比期望的多了10个,这意味着之前视频播放存在延迟,实时延迟约为(70-60)×(1000/60)=167ms,并且表明此刻视频帧聚集到达。一旦视频帧聚集到达,可以加速播放,示例性地,可以丢弃1至10个视频帧。

10、本技术实施例提供了一种视频平滑播放方法,当图像的实时到达帧率大于目标帧率时,能够通过主动丢弃部分视频帧来加速播放,避免了输送到渲染管道的视频帧数量过多造成的渲染抖动。

11、结合第一方面,在第一方面的某些实现方式中,在所述抖动缓冲器丢弃m个视频帧之前,所述方法还包括:所述抖动缓冲器获取所述显示设备的应用的延迟收敛周期,所述延迟收敛周期为所述应用预设的能够等待播放的最长延迟时间;所述抖动缓冲器根据所述延迟收敛周期确定m的取值。

12、示例性地,为向上取整符号,x为所述图像到达帧率,y为所述目标帧率,z为所述延迟收敛周期,x和y的单位为赫兹,z的单位为毫秒。当z的单位为秒时,示例性地,应用设置的延迟收敛周期为134ms,表示最多容忍134ms的延迟,目标帧率为60hz,实时到达帧率为70hz,则根据之前的延迟计算结果,需要丢弃2帧图像来追帧。

13、可选的,抖动缓冲器根据延迟收敛周期确定丢弃视频帧的数量的公式也可以是或等,该具体公式不应理解为对本技术的限制。

14、本技术实施例提供了一种视频平滑播放方法,可定义期望延迟来调整抖动缓冲器的输出/丢帧策略,保证了视频的平滑播放,提高了接收端的播放体验。

15、结合第一方面,在第一方面的某些实现方式中,所述图像到达帧率小于所述目标帧率,n大于1。

16、如果图像到达帧率比目标帧率要小,表示此时正在慢放,为了提升视频播放体验,也需要基于垂直同步周期时间进行渲染,保证每帧的渲染间隔为垂直同步周期的倍数,即抖动缓冲器向显示设备发送视频帧的时间间隔为显示设备的垂直同步周期的n倍。

17、本技术实施例提供了一种视频平滑播放方法,当图像的实时到达帧率小于目标帧率时,抖动缓冲器向显示设备发送视频帧的时间间隔为显示设备的垂直同步周期的n倍,n大于1,保证每帧的渲染间隔为垂直同步周期的倍数,减少了屏幕撕裂和抖动的问题,提高了接收端的播放体验。

18、结合第一方面,在第一方面的某些实现方式中,所述第一视频帧包括经过解码后的视频帧。

19、应理解,现有技术在接收端视频帧组合成功之后不会立即将视频帧送到解码器,而是送到抖动缓冲器中,本技术提供的技术方案则是将视频帧直接输送到解码器进行解码。即本技术实施例中的抖动缓冲器可以位于接收端渲染模块之前、解码器和后处理模块之后,存储的是经过解码后的视频帧,例如可以是亮度色度yuv格式或者红绿蓝rgb格式的视频帧,降低了解码和后处理过程中抖动带来的影响,提高了接收端的播放体验。

20、第二方面,本技术实施例提供一种计算机装置,该计算机装置包括用于实现第一方面或第一方面的任一种可能的实现方式的单元。

21、第三方面,本技术实施例提供一种计算机装置,该计算机装置包括处理器,该处理器用于与存储器耦合,读取并执行该存储器中的指令和/或程序代码,以执行第一方面或第一方面的任一种可能的实现方式。

22、可选地,该处理器可以是通用处理器,可以通过硬件来实现也可以通过软件来实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于该处理器之外,独立存在。

23、第四方面,本技术实施例提供一种芯片系统,该芯片系统包括逻辑电路,该逻辑电路用于与输入/输出接口耦合,通过该输入/输出接口传输数据,以执行第一方面或第一方面任一种可能的实现方式。

24、第五方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有程序代码,当该计算机存储介质在计算机上运行时,使得计算机执行如第一方面或第一方面的任一种可能的实现方式。

25、作为示例,这些计算机可读存储包括但不限于如下的一个或者多个:只读存储器(read-only memory,rom)、可编程rom(programmable rom,prom)、可擦除的prom(erasableprom,eprom)、flash存储器、电eprom(electrically eprom,eeprom)以及硬盘驱动器(harddrive)。

26、可选地,作为一种实现方式,上述存储介质具体可以是非易失性存储介质。

27、第六方面,本技术实施例提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行如第一方面或第一方面的任一种可能的实现方式。


技术特征:

1.一种视频平滑播放方法,其特征在于,应用于视频传输系统中,所述视频传输系统包括发送端和接收端,所述接收端包括抖动缓冲器和显示设备,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述抖动缓冲器根据所述目标帧率和所述图像到达帧率的大小,确定所述抖动缓冲器中存储的视频帧数量,包括:

3.根据权利要求2所述的方法,其特征在于,在所述抖动缓冲器丢弃m个视频帧之前,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述图像到达帧率小于所述目标帧率,n大于1。

5.根据权利要求1至4任一项所述的方法,其特征在于,所述第一视频帧包括经过解码后的视频帧。

6.一种计算机装置,其特征在于,所述装置包括:

7.根据权利要求6所述的装置,其特征在于,所述处理模块,具体用于:

8.根据权利要求7所述的装置,其特征在于,所述获取模块,还用于获取所述显示设备的应用的延迟收敛周期,所述延迟收敛周期为所述应用预设的能够等待播放的最长延迟时间;

9.根据权利要求6所述的装置,其特征在于,所述图像到达帧率小于所述目标帧率,n大于1。

10.根据权利要求6至9任一项所述的装置,其特征在于,所述第一视频帧包括经过解码后的视频帧。

11.一种计算机设备,其特征在于,包括:处理器,所述处理器用于与存储器耦合,读取并执行所述存储器中的指令和/或程序代码,以执行如权利要求1-5中任一项所述的方法。

12.一种芯片系统,其特征在于,包括:逻辑电路,所述逻辑电路用于与输入/输出接口耦合,通过所述输入/输出接口传输数据,以执行如权利要求1-5中任一项所述的方法。

13.一种计算机可读介质,其特征在于,所述计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行如权利要求1-5中任一项所述的方法。


技术总结
本申请实施例提供了一种视频平滑播放方法,该方法应用于视频传输系统中,视频传输系统包括发送端和接收端,接收端包括抖动缓冲器和显示设备,该方法包括:抖动缓冲器获取目标帧率和图像到达帧率;所述抖动缓冲器根据所述目标帧率和所述图像到达帧率的大小,确定所述抖动缓冲器中存储的视频帧数量;所述抖动缓冲器向所述显示设备发送所述抖动缓冲器中保留的视频帧,其中,所述发送所述抖动缓冲器中保留的视频帧的时间间隔为所述显示设备的垂直同步周期的N倍,N为大于或者等于1的整数。本申请技术方案能够提升接收端的播放体验。

技术研发人员:谭明杰,徐阳,徐伟
受保护的技术使用者:华为云计算技术有限公司
技术研发日:
技术公布日:2024/10/31
转载请注明原文地址: https://www.8miu.com/read-19843.html

最新回复(0)