视频显示控制方法、设备、计算机可读存储介质与流程

文档序号:19878897发布日期:2020-02-08 06:44阅读:196来源:国知局
视频显示控制方法、设备、计算机可读存储介质与流程

本发明涉及视频技术领域,尤其是涉及一种视频显示控制方法、设备、计算机可读存储介质。



背景技术:

在设备上进行视频显示时,视频可以是通过网络从其他设备传输过来的。视频应用范围较广,例如,监控设备可以采集得到视频流,将视频流传输给远程的显示设备进行显示,以实现实时的监控;又如,无人机在飞行过程中可通过摄像头拍摄得到视频流,而后将视频流传输到手持设备上进行播放显示等。

很多视频应用场景中,对视频的实时性要求较高,但是在本地显示帧率过快,而接收的视频流的帧传输速率过慢时,实时播放视频仍可能会出现视频卡顿现象。例如,视频流的帧传输速率是30fps,而本地显示帧率是60fps,会存在视频的消耗比视频的接收快很多的问题,视频消耗过快导致实时显示过程中会产生较多抖动,导致视频卡顿。而目前还未有针对上述技术问题的解决方案。



技术实现要素:

本发明提供一种视频显示控制方法、设备、计算机可读存储介质,可防止因视频消耗过快而导致实时显示过程中产生较多抖动的问题。

本发明实施例第一方面,提供一种视频显示控制方法,应用于视频处理设备,包括:

确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系;

依据所述关系选中接收的至少一个显控信号;所述显控信号的频率与所述视频帧显示频率相同;

通过被选中的显控信号将已显示的视频帧更换为所述视频流中的视频帧。

本发明实施例第二方面,提供一种视频处理设备,包括:存储器和处理器;

所述存储器,用于存储程序代码;

所述处理器,用于调用所述程序代码,当程序代码被执行时,用于执行以下操作:

确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系;

依据所述关系选中接收的至少一个显控信号;所述显控信号的频率与所述视频帧显示频率相同;

通过被选中的显控信号将已显示的视频帧更换为所述视频流中的视频帧。

本发明实施例第三方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机指令,所述计算机指令被执行时,实现本发明实施例第一方面所述的视频显示控制方法。

基于上述技术方案,本发明实施例中,接收的显控信号的频率与视频帧显示频率相同,而视频帧显示频率与视频帧传输速率之间不匹配,依据本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系确定是否选中接收的显控信号,在显控信号被选中时可用视频流中的视频帧更换已显示的旧视频帧,而在显控视频未被选中时维持显示该旧视频帧,由于选中的过程是依据上述关系对显控信号的筛选过程,被选中的显控信号用来实现视频帧的更换,使得视频帧更换的速率可与视频帧传输速率匹配,可防止因视频消耗过快而导致实时显示过程中产生较多抖动的问题,降低了视频显示时发生卡顿的可能。

附图说明

为了更加清楚地说明本发明实施例中的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本发明实施例的这些附图获得其它的附图。

图1是本发明一实施例的视频显示控制方法的流程示意图;

图2是本设备支持的视频帧显示频率和视频流中视频帧传输速率之间成倍数关系时的显控信号选中情况的示意图;

图3是本设备支持的视频帧显示频率和视频流中视频帧传输速率之间不成倍数关系时的显控信号选中情况的示意图;

图4是本发明一实施例的视频处理设备的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。另外,在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

本发明使用的术语仅仅是出于描述特定实施例的目的,而非限制本发明。本发明和权利要求书所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。应当理解的是,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。

尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”,或者,“当……时”,或者,“响应于确定”。

本发明实施例的视频显示控制方法,可应用于视频处理设备。视频处理设备包括但不限于移动终端、遥控器、计算机。视频处理设备可接收来自视频源设备的视频流送去显示,视频源设备例如可以是无人机、监控设备(例如nvr)等具有成像功能的设备,当然也可以摄像头、相机等成像设备,具体不限。

可以理解,视频处理设备与视频源设备之间当然还可以连接有中间设备。以视频源设备为无人机为例,在无人机遥控器带有显示装置的情况下,无人机将视频流传输至无人机遥控器后可直接在遥控器上显示;或者,无论无人机遥控器是否带有显示装置,无人机也可以将视频流传输至遥控器后再通过遥控器传输给移动终端(例如手机、平板电脑等),在移动终端上显示。

本发明实施例的视频显示控制方法,尤其适用于视频处理设备支持的视频帧显示频率比接收的视频流中视频帧传输速率更快的情况。

下面对本发明实施例的视频显示控制方法进行更具体的描述,但不应以此为限。

在一个实施例中,参看图1,一种视频显示控制方法,应用于视频处理设备,该方法包括以下步骤:

s100:确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系;

s200:依据所述关系选中接收的至少一个显控信号;所述显控信号的频率与所述视频帧显示频率相同;

s300:通过被选中的显控信号将已显示的视频帧更换为所述视频流中的视频帧。

具体地,视频显示控制方法的执行主体可以为视频处理设备,进一步地可以为视频处理设备的处理器,其中,所述处理器可以为一个或多个,所述处理器可以为通用处理器或者专用处理器。

视频处理设备当然还可以集成有其他硬件模块,例如可以集成有可用于数据通信以接收视频流的无线通信模块(例如4g模块)、用于进行视频帧显示的显示装置、用于提供时钟信号的时钟模块等等,具体不限。

在步骤s100中,处理器确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系。

本设备接收的视频流可以是来自于视频源设备(例如摄像头等成像设备)的实时采集的视频,当然也可以是来自于视频源设备的所存储的视频,具体不限。

本设备支持的视频帧显示频率是指本设备的显示装置刷新显示的视频帧的频率,单位可为帧每秒。本设备接收的视频流中视频帧传输速率是指视频源设备发送该视频流的帧速率,即视频源设备每秒向本设备发送的视频帧数,单位可为帧每秒。

本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系可以通过比较确定,例如将本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率进行除法运算确定两者之间的关系。此处的关系是指大小关系,在确定关系的方式是除法运算时,该关系可以用一个数值表示。

通过执行步骤s100,处理器可以确定本设备支持的视频帧显示频率比接收的视频流中视频帧传输速率快多少,据此关系可进行后续的显控处理。

在步骤s200中,处理器依据关系选中接收的至少一个显控信号。接收的显控信号可以是本设备自己生成的,也可以是外部显控装置输入的,具体不限。

显控信号也是以信号流形式到来,因而接收的显控信号为至少一个,通常是多个,且呈周期性。处理器依据所确定的上述关系来确定是否选中到来的显控信号,即对显控信号的信号流进行筛选,因而最终选中的显控信号不会多于接收的显控信号。

处理器对接收的显控信号依据上述关系进行选中的过程改变了显控信号频率,若被选中的显控信号之间仍呈周期性,则该改变即为降频,而若被选中的显控信号之间不呈周期性,则同样也降低了送显的速度。例如,每隔一个显控信号选中一个显控信号,则被选中的显控信号的频率是接收的显控信号的频率的一半。

在步骤s300中,处理器通过被选中的显控信号将已显示的视频帧更换为所述视频流中的视频帧。通过依据关系被选中的显控信号控制视频帧的更换,使得视频帧更换的速率与视频帧传输速率匹配。当然,已显示的视频帧可以是所述视频流中的视频帧的上一帧。

可以利用被选中的显控信号控制视频帧的送显,那么,仅在显控信号被选中时,已显示的旧视频帧会被更换为视频流中的新视频帧,也即显示装置上显示的视频帧会从旧视频帧更换为新视频帧,而在显控信号未被选中时,已显示的旧视频帧则不会被更换,即显示装置上显示的视频帧还是维持该旧视频帧。当然,显示装置上显示该视频帧之外,当然还可以显示其他画面内容,例如标题栏、时间、应用主题等等不限。

本设备的显示装置在每次刷新显示的视频帧时,同时还会刷新显示的其他画面内容,刷新的频率即本设备支持的视频帧显示频率。由于视频帧的送显是由被选中的显控信号控制的,因而在每次刷新显示的视频帧时,只有选中显控信号才会用新视频帧更换显示的旧视频帧,否则维持旧视频帧,但并不影响其他画面内容在刷新显示时的更换。换言之,在被选中的显控信号的控制下,本设备显示的视频帧的更换速率不再与视频帧显示频率相同,即视频帧的更换与刷新不再同步。

本发明实施例中,接收的显控信号的频率与视频帧显示频率相同,而视频帧显示频率与视频帧传输速率之间不匹配,依据本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系确定是否选中接收的显控信号,在显控信号被选中时可用视频流中的视频帧更换已显示的旧视频帧,而在显控视频未被选中时维持显示该旧视频帧,由于选中的过程是依据上述关系对显控信号的筛选过程,被选中的显控信号用来实现视频帧的更换,使得视频帧更换的速率可与视频帧传输速率匹配,可防止因视频消耗过快而导致实时显示过程中产生较多抖动的问题,降低了视频显示时发生卡顿的可能。

本发明实施例中,被选中的显控信号构成的信号流呈周期性时,视频帧更换的速率与视频帧传输速率匹配是指,视频帧更换过程与视频帧接收过程是帧同步的。而被选中的显控信号构成的信号流不呈周期性时,视频帧更换的速率与视频帧传输速率匹配是指,视频帧更换过程与视频帧接收过程是,各自以相同数量的帧作为一组且组同步。

在一个实施例中,步骤s100中,确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系,包括:

确定本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值为l,所述l为正整数。

上述关系可以利用除法运算实现,视频帧显示频率和视频帧传输速率之间的比值为l,即视频帧显示频率是视频帧传输速率的l倍。

优选的,所述依据所述关系选中接收的至少一个显控信号,包括:

按照每隔l-1个显控信号中选中1个显控信号的方式选中显控信号。

由于视频帧显示频率与显控信号的频率相同,视频帧显示频率又是视频帧传输速率的l倍,因而按照每隔l-1个显控信号中选中1个显控信号的方式选中显控信号后,被选中的显控信号构成的信号流中显控信号的频率与视频帧传输速率一致,那么通过被选中的显控信号控制将已显示的视频帧更换为视频流中的视频帧,更换视频帧的频率与视频帧传输速率一致,视频帧的消耗与接收同步,防止因视频消耗过快而导致实时显示过程中产生较多抖动的问题。

具体的,参看图2,示出的是视频帧显示频率和视频帧传输速率之间的比值为2的情况下显控信号的选中过程,例如,视频帧显示频率为60fps,视频帧传输速率为30fps。图2中,上面的波形图是接收的显控信号的脉冲信号流,仅示出了显控信号v1-v9,显控信号上的箭头表示选中;而下面的波形是被选中的显控信号的脉冲信号流,由于视频帧显示频率是视频帧传输速率的2倍,因而每隔1个显控信号选中一个显控信号,被选中的显控信号为v1、v3、v5、v7和v9。

在一个实施例中,所述确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系,包括:

确定所述本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值为m:n;所述m和n均为正整数,且m不能被n整除。

上述关系可以利用除法运算实现,视频帧显示频率和视频帧传输速率之间的比值为m:n,即视频帧显示频率不是视频帧传输速率的整数倍。

优选的,所述依据所述关系选中接收的至少一个显控信号包括:

按照每m个显控信号中选中n个显控信号的方式选中显控信号。

优选的,所述m与n互质。例如,视频帧显示频率为60fps,视频帧传输速率为50fps,则m:n优选为6:5,即每6个显控信号中选5个显控信号,可以每6个显控信号与接收的视频流同步一次。当然,m:n还可以为12:10,即每12个显控信号中选10个显控信号。

由于视频帧显示频率与显控信号的频率相同,视频帧显示频率与视频帧传输速率的比值为m:n,因而按照每m个显控信号中选中n个显控信号的方式选中显控信号后,每接收n个视频帧就会更换n个视频帧(当然这n帧更换可能会有较小的抖动,但从整体来说,抖动是较小的),使得更换视频帧的频率与视频帧传输速率整体上匹配,视频帧的消耗与接收整体速率匹配,防止因视频消耗过快而导致实时显示过程中产生较多抖动的问题。

具体的,参看图3,示出的是视频帧显示频率和视频帧传输速率之间的比值为4:3的情况下显控信号的选中过程,例如,视频帧显示频率为40fps,视频帧传输速率为30fps。图3中,上面的波形图是接收的显控信号的脉冲信号流,仅示出了显控信号v1’-v9’,显控信号上的箭头表示选中;而下面的波形是被选中的显控信号的脉冲信号流,由于视频帧显示频率与视频帧传输速率的比值为4:3,因而每4个显控信号选中3个显控信号,被选中的显控信号为v1’-v3’、v5’-v7’和v9’。

在一个实施例中,确定所述本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值为m:n之后,还包括:

将本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值从m:n调整为指定倍数。

可以调整本设备支持的视频帧显示频率,以调整视频帧显示频率和视频帧传输速率之间的比值,指定倍数可以是依据m和n确定的倍数。当然,也可通过调整视频流中视频帧传输速率实现调整。

优选的,所述将本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的关系从m:n调整为指定倍数,包括:

对本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之比m:n进行向下取整得到所述指定倍数;

依据所述指定倍数和所述视频帧传输速率确定所述视频帧显示频率的目标值;

将所述视频帧显示频率调整至所述目标值。

由于调整本设备支持的视频帧显示频率,也会影响其他画面内容的刷新显示,例如标题栏、时间、应用主题等等不限,因而,将指定倍数确定为视频帧显示频率和视频帧传输速率之比m:n进行向下取整得到的数值,使得视频帧显示频率和视频帧传输速率之比可调整至整数倍的同时尽可能地减小调整幅度,以减小对其他画面内容的刷新显示的影响。

在一个实施例中,步骤s300中,所述通过被选中的显控信号将已显示的视频帧更换为所述视频流中的视频帧,包括:

通过被选中的所述显控信号将已显示的视频帧更换为在上一个显控信号被选中时所述视频流中被缓存为待更换帧的视频帧。

为了减小信号延迟导致的显示抖动,本设备的用于显示视频流的视频帧的显示装置中,可以具有显示缓存区。显示缓存区可以缓存有上一次被选中的显控信号控制下被缓存为待更换帧的视频帧,而本次显控信号被选中时,该待更换帧的视频帧可以被送去显示,同时视频流中的下一视频帧会被送入到该显示缓存区中被缓存为待更换帧(例如是从视频流缓存区送入到显示缓存区中),等待下一次显控信号被选中时将该待更换帧送去显示。

当然,每次显控信号被选中时,视频流中的视频帧也可以不进行显示缓存,而是直接进行送显,更换已显示的视频帧。

在一个实施例中,所述确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系之前,还包括以下步骤:

s400:将所接收的所述视频流进行解码;

s500:将解码后的所述视频流中的视频帧进行缓存。

视频流中的视频帧可以缓存在本设备的视频流缓存区,随着视频流的接收及送显,视频流缓存区缓存的视频帧会动态变化。在被选中的显控信号控制下,可以从视频流缓存区获取解码后的视频帧送去显示、或者送去显示缓存区缓存。

视频卡顿很重要的原因是视频传输网络的抖动。由于环境干扰因素等问题,无线传输不能保证时刻都能顺畅,导致传输忽快忽慢,使得视频数据传输不稳定,很难形成非常匀速的视频流,尽管无线网络没有丢数据,但由于无线网络不能保证匀速数据传输,导致视频不流畅。

因此,需要增设视频流缓存区来对接收的视频流进行缓存,以克服网络抖动带来的卡顿。然而现有的解决方案中,先对视频流进行缓存,而后再将缓存的视频帧进行解码后送去显示装置。上述现有的解决方案带来的问题是,解码时间不确定,导致送显示不确定,带来了解码时间不定导致的视频显示卡顿问题。

而本发明实施例中,对缓存和解码的先后进行了调整,先对视频流进行解码,而后将解码后的视频流存入在视频流缓存中,这样送显的时候只要将相应的视频帧送去显示装置即可,送显时无需再进行解码,因而可克服解码时间抖动带来的卡顿问题。

在一个实施例中,所述显控信号是控制用于显示所述视频帧的显示装置进行显示刷新的信号。

显控信号是控制进行显示刷新的信号,则从用于控制刷新的信号中选中部分信号控制送显,视频流控更时钟准确,也不容易受系统调度影响。

优选的,所述显控信号是本设备生成的信号并且以中断的形式到来。

显控信号原本只会用于控制显示视频帧的显示装置进行显示刷新,但本发明实施例中将同时用来控制送显,将显控信号作为中断信号,可及时地相应该显控信号的到来,减小时延或受系统调度的影响。

基于与上述方法同样的构思,参见图4所示,本发明实施例中还提供一种视频处理设备,其特征在于,包括:存储器和处理器(如一个或多个处理器)。

视频处理设备当然还可以集成有其他硬件模块,例如可以集成有可用于数据通信以接收视频流的无线通信模块(例如4g模块)、用于进行视频帧显示的显示装置、用于提供时钟信号的时钟模块等等,具体不限。

所述存储器,用于存储程序代码;所述处理器,用于调用所述程序代码,当程序代码被执行时,用于执行以下操作:

确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系;

依据所述关系选中接收的至少一个显控信号;所述显控信号的频率与所述视频帧显示频率相同;

通过被选中的显控信号将已显示的视频帧更换为所述视频流中的视频帧。

优选的,所述确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系,包括:

确定本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值为l,所述l为正整数。

优选的,所述依据所述关系选中接收的至少一个显控信号,包括:

按照每隔l-1个显控信号中选中1个显控信号的方式选中显控信号。

优选的,所述确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系,包括:

确定所述本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值为m:n;所述m和n均为正整数,且m不能被n整除。

优选的,所述依据所述关系选中接收的至少一个显控信号包括:

按照每m个显控信号中选中n个显控信号的方式选中显控信号。

优选的,所述m与n互质。

优选的,确定所述本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值为m:n之后,还包括:

将本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的比值从m:n调整为指定倍数。

优选的,所述将本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之间的关系从m:n调整为指定倍数,包括:

对本设备支持的视频帧显示频率和所述视频流中视频帧传输速率之比m:n进行向下取整得到所述指定倍数;

依据所述指定倍数和所述视频帧传输速率确定所述视频帧显示频率的目标值;

将所述视频帧显示频率调整至所述目标值。

优选的,所述通过被选中的显控信号将已显示的视频帧更换为所述视频流中的视频帧,包括:

通过被选中的所述显控信号将已显示的视频帧更换为在上一个显控信号被选中时所述视频流中被缓存为待更换帧的视频帧。

优选的,所述确定本设备支持的视频帧显示频率和接收的视频流中视频帧传输速率之间的关系之前,还包括:

将所接收的所述视频流进行解码;

将解码后的所述视频流中的视频帧进行缓存。

优选的,所述显控信号是控制用于显示所述视频帧的显示装置进行显示刷新的信号。

优选的,所述显控信号是本设备生成的信号并且以中断的形式到来。

基于与上述方法同样的发明构思,本发明实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机指令,所述计算机指令被执行时,实现前述实施例所述的视频显示控制方法。

上述实施例阐明的系统、装置、模块或单元,可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本发明实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本发明实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进,均应包含在本发明的权利要求范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1