CN106791910A - 视频帧处理方法及装置 - Google Patents
视频帧处理方法及装置 Download PDFInfo
- Publication number
- CN106791910A CN106791910A CN201611101200.1A CN201611101200A CN106791910A CN 106791910 A CN106791910 A CN 106791910A CN 201611101200 A CN201611101200 A CN 201611101200A CN 106791910 A CN106791910 A CN 106791910A
- Authority
- CN
- China
- Prior art keywords
- video
- frame
- client
- transmission
- duration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/23805—Controlling the feeding rate to the network, e.g. by controlling the video pump
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提供一种视频帧处理方法及装置,应用于视频监控系统中的监控设备,该方法包括:获取网络传输速率;将待发送的视频帧存入缓存区;根据网络传输速率与视频帧的数据量获取传输时长;若传输时长不小于固有传输周期,则将上一帧的传输完成时刻作为视频帧的发送时刻;若传输时长小于固有传输周期,则获取传输时长与固有传输周期的差值;将上一帧的传输完成时刻延长该差值后所得到的时刻发送时刻;在发送时刻将缓存区中的视频帧发送至客户端。应用该方法,可以有效地解决由于客户端性能不佳,或者网络传输状态不佳,导致客户端视频播放卡顿的问题,并且,有效解决视频帧码率突发造成视频帧传输延时,影响客户端视频播放流畅性的问题。
Description
技术领域
本申请涉及网络通信技术领域,尤其涉及一种视频帧处理方法及装置。
背景技术
随着视频监控技术的发展,用户对视频监控的实时性有着越来越高的要求,从监控设备采集视频图像到客户端播放视频图像的过程,最低可以控制在百毫秒以内。现有技术中,监控设备每发送一个视频帧,间隔固有传输周期,例如40ms之后,再开始发送另一视频帧。然而,在客户端性能不佳,或者网络传输状态不佳的情况下,若当前待传输视频帧的数据量较大,将导致客户端接收完成该视频帧的时刻,相较于上一帧接收完成的时刻有着较大的时延,从而造成客户端视频播放卡顿,对用户体验造成影响。
为了解决上述问题,在一方案中,可以在客户端增加缓存区,客户端接收到视频帧后先保存在缓存区,在下一视频帧进入缓存区或者缓存区视频帧数量达到一定条件后,再对缓存区中的视频帧进行播放,从而提升客户端视频播放的流畅性。
然而,在实际应用中,监控设备连接的客户端可以有很多,并非每台客户端都设置有缓存区,因此上述方案的实用性以及灵活性较低,并且,上述方案并未解决由于视频帧码率突发,造成视频帧传输延时,影响客户端视频播放流畅性的问题。
发明内容
有鉴于此,本申请提供一种视频帧处理方法及装置,以有效地解决由于客户端性能不佳,或者网络传输状态不佳,导致客户端视频播放卡顿的问题,并且,有效解决视频帧码率突发造成视频帧传输延时,影响客户端视频播放流畅性的问题。
具体地,本申请是通过如下技术方案实现的:
根据本申请实施例的第一方面,提供一种视频帧处理方法,应用于视频监控系统中的监控设备,所述监控设备上预设有缓存区,所述视频监控系统中还包括客户端,所述方法包括:
获取网络传输速率;
将待发送的视频帧存入所述缓存区,所述视频帧为视频流的非首帧;
根据所述网络传输速率与所述视频帧的数据量获取所述视频帧的传输时长;
将所述传输时长与固有传输周期进行比较;
若得出所述传输时长不小于所述固有传输周期的比较结果,则将所述视频帧的上一帧的传输完成时刻作为所述视频帧的发送时刻;若得出所述传输时长小于所述固有传输周期的比较结果,则获取所述传输时长与所述固有传输周期的差值;将所述上一帧的传输完成时刻延长所述差值后所得到的时刻作为所述视频帧的发送时刻。
在所述发送时刻将所述缓存区中的所述视频帧发送至所述客户端。
可选的,所述获取网络传输速率包括:
向所述客户端发送首个视频帧,以使所述客户端根据接收所述首个视频帧的所用时长与所述首个视频帧的数据量获取网络传输速率,并将所述网络传输速率发送至所述监控设备;
接收所述客户端发送的所述网络传输速率。
可选的,所述方法还包括:
若得出所述传输时长不小于所述固有传输周期的比较结果,则增大视频图像中目标区域编码时的量化参数,或者降低所述视频图像的锐度参数,并且所述锐度参数不低于预设锐度参数阈值,或者减少所述视频图像中的高频分量,或者增加对所述视频图像进行降噪处理的强度;其中,所述目标区域包括:非感兴趣区域、非物体运动区域、遮盖区域。
可选的,所述方法还包括:
当接收到云台转动命令时,增大视频图像编码时的量化参数;
当接收到云台停止转动命令时,将所述量化参数恢复为增大之前的原始值,并生成强制I帧。
可选的,所述方法还包括:
当检测到自身处于抖动状态且抖动频率高于预设频率阈值时,启用预设的防抖动功能。
根据本申请实施例的第二方面,提供一种视频帧处理装置,应用于视频监控系统中的监控设备,所述监控设备上预设有缓存区,所述视频监控系统中还包括客户端,所述装置包括:
速率获取模块,用于获取网络传输速率;
缓存模块,用于将待发送的视频帧存入所述缓存区,所述视频帧为视频流的非首帧;
时长获取模块,用于根据所述网络传输速率与所述视频帧的数据量获取所述视频帧的传输时长;
比较模块,用于将所述传输时长与固有传输周期进行比较;
确定模块,用于若得出所述传输时长不小于所述固有传输周期的比较结果,则将所述视频帧的上一帧的传输完成时刻作为所述视频帧的发送时刻;
差值获取模块,用于若得出所述传输时长小于所述固有传输周期的比较结果,则获取所述传输时长与所述固有传输周期的差值;
所述确定模块,还用于将所述上一帧的传输完成时刻延长所述差值后所得到的时刻作为所述视频帧的发送时刻;
发送模块,用于在所述发送时刻将所述缓存区中的所述视频帧发送至所述客户端。
可选的,所述速率获取模块,包括:
发送子模块,用于向所述客户端发送首个视频帧,以使所述客户端根据接收所述首个视频帧的所用时长与所述首个视频帧的数据量获取网络传输速率,并将所述网络传输速率发送至所述监控设备;
接收子模块,用于接收所述客户端发送的所述网络传输速率。
可选的,所述装置还包括:
参数调整模块,用于若得出所述传输时长不小于所述固有传输周期的比较结果,则增大视频图像中目标区域编码时的量化参数,或者降低所述视频图像的锐度参数,并且所述锐度参数不低于预设锐度参数阈值,或者减少所述视频图像中的高频分量,或者增加对所述视频图像进行降噪处理的强度;其中,所述目标区域包括:非感兴趣区域、非物体运行区域、遮盖区域。
可选的,所述装置还包括:
量化参数增大模块,用于当接收到云台转动命令时,增大视频图像编码时的量化参数;
量化参数恢复模块,用于当接收到云台停止转动命令时,将所述量化参数恢复为增大之前的原始值,并生成强制I帧。
可选的,所述装置还包括:
启用模块,用于当检测到自身处于抖动状态且抖动频率高于预设频率阈值时,启用预设的防抖动功能。
本实施例中,通过获取网络传输速率,根据网络传输速率以及视频帧的数据量获取视频帧的发送时刻,在该发送时刻,将该视频帧发送至客户端。由于在发送视频帧之前,根据实际的网络传输速率以及实际待发送视频帧的数据量大小,调整视频帧的发送时刻与其上一帧传输完成时刻之间的时间间隔,使得前后两个帧之间的传输时延尽可能地接近视频帧的固有传输周期,从而有效地解决由于客户端性能不佳,或者网络传输状态不佳,导致客户端视频播放卡顿的问题,并且,有效解决视频帧码率突发造成视频帧传输延时,影响客户端视频播放流畅性的问题。
附图说明
图1为本申请视频帧处理方法的一个实施例流程图;
图2为本申请视频帧处理装置所在监控设备的一种硬件结构图;
图3为本申请视频帧处理装置的一个实施例框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
视频压缩技术是计算机处理视频的前提,视频编码则是指通过特定的视频压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式,监控设备采集到视频数据后,通过编码器对视频数据进行视频编码,之后再通过网络传输至客户端。视频编码方案有很多种,以H.264视频编码为例,其采用帧内压缩和帧间压缩两种算法,通过帧内压缩,可以生成I帧,通过帧间压缩,可以生成P帧和B帧。
其中,I帧表示关键帧,是帧组的第一帧,在一个帧组中只有一个I帧,其不需要参考其它视频画面生成,解码时仅需要本帧数据就可以获取完整的视频画面。P帧为前向预测编码帧,其表示的是这一帧与之前帧的差别,P帧没有完整的视频画面,只包括与前一帧的视频画面差别的数据。B帧为双向预测编码帧,其需要参考前一帧和后一帧。在对传输实时性有较高要求的环境中,通常使用I帧与P帧。由于I帧包括完整视频画面,而P帧包括其与之前帧的差别数据,从而I帧相对P帧而言,数据量较大。
由于I帧数据量较大,通常情况下,传输I帧所用时长大于传输P帧所用时长。在现有技术中,假设前一个帧组中最后一个P帧在30.560秒时刻开始传输,在30.565秒时刻传输完成,之后,间隔固有传输周期,例如40毫秒之后,即30.600秒时刻开始传输下一个帧组的I帧,假设该I帧数据量较大,传输时长为60毫秒,即在30.660秒时刻传输完成。由上述描述可知,I帧传输完成时刻与其前一帧传输完成时刻相差将近100毫秒,在该100毫秒中,除去固有传输周期40毫秒,可以得知I帧相对于其前一帧延后60毫秒,已经相当于1.5帧的延时。该种情况下,用户可以明显的观看到视频卡顿,从而影响用户体验。
为了解决上述问题,本申请提供视频帧处理方法及装置,通过网络实时传输速率,以及待传输视频帧的数据量,确定当前视频帧的发送时刻,相较于现有技术中,不论网络传输状态如何,不论待传输视频帧的数据量大小,均每间隔固定传输周期传输视频帧,可以有效地解决由于客户端性能不佳,或者网络传输状态不佳,导致客户端视频播放卡顿的问题,并且,有效解决视频帧码率突发造成视频帧传输延时,影响客户端视频播放流畅性的问题。
为了详细说明本申请视频帧处理方法,提供下述实施例。
请参见图1,为本申请视频处理方法的一个实施例流程图,该方法可以应用于视频监控系统中的监控设备,该监控设备上预设有缓存区,用于缓存待发送的视频帧,该视频监控系统中还可以包括客户端,该方法可以包括以下步骤:
步骤S101:获取网络传输速率。
在视频监控系统中,网络传输状态以及监控设备或者客户端的性能并不是一成不变的,从而,客户端接收具有相同数据量大小的视频帧所用时长并不是固定的;同时,视频帧的数据量也各不相同,例如,I帧的数据量可能会是P帧数据量的十几倍,又例如,在视频帧码率突发的情况下,视频帧的数据量增大,从而,客户端接收不同视频帧所用时长并不相同。
在本申请中,监控设备可以获取网络的实时传输速率,基于网络的实时传输速率控制视频帧的发送,同时,为了结合客户端的性能,可以从客户端角度统计网络传输速率。
在一个可选的实现方式中,监控设备可以将视频流的首帧,通常为I帧的数据量IFrameSize发送至客户端,并向客户端发送该I帧。客户端则可以统计得出接收该I帧的所用时长t,继而客户端可以根据该I帧的数据量IFrameSize以及所用时长t计算得出网络传输速率S,其中,S=IFrameSize/t。
需要说明的是,在上述描述中,之所以监控设备将I帧的数据量发送至客户端,而不是由客户端统计得出所接收到的I帧的数据量,是为了避免由于网络状态不佳,造成丢包,导致客户端所接收到的视频帧的数据量与实际视频帧的数据量不符。
客户端统计得出网络传输速率之后,可以将该网络传输速率发送至监控设备,从而,监控设备可以获得网络传输速率,并保存该网络传输速率。后续,监控设备在发送视频流的非首帧的过程中,则可以从自身内存中获取该网络传输速率。
步骤S102:将待发送的视频帧存入缓存区,该视频帧为视频流的非首帧。
在本申请中,监控设备上预设有缓存区,该缓存区用于存储待发送的视频帧。具体地,监控设备每采集到一个视频帧,都可以先将该视频帧存入缓存区,该缓存区中始终会存在一个待发送的视频帧。
步骤S103:根据网络传输速率与视频帧的数据量获取视频帧的传输时长。
步骤S104:将传输时长与固有传输周期进行比较;若得出传输时长不小于固有传输周期的比较结果,则执行步骤S105;若得出传输时长小于固有传输周期的比较结果,则执行步骤S106。
步骤S105:将视频帧的上一帧的传输完成时刻作为视频帧的发送时刻;继续执行步骤S108。
步骤S106:获取传输时长与固有传输周期的差值。
步骤S107:将上一帧的传输完成时刻延长该差值后所得到的时刻作为视频帧的发送时刻。
步骤S108:在发送时刻将缓存区中的视频帧发送至客户端。
在步骤S103至步骤S108中,监控设备可以首先获取缓存区中视频帧的数据量FrameSize,根据该数据量FrameSize以及步骤S101中所获取到的网络传输速率S,计算得出该视频帧的传输时长T,其中,T=FrameSize/S。
后续,监控设备将该传输时长T与视频帧的固有传输周期进行比较,若经过比较得出,传输时长T大于固有传输周期,此时,可以认为该视频帧的数据量较大,例如,该视频帧为码率突发的I帧,在固有传输周期内无法将该视频帧发送完成,监控设备可以将该视频帧的上一帧发送完成时刻作为该视频帧的发送时刻。
若经过比较得出,传输时长T小于固有传输周期,此时,并可以将该视频帧的上一帧发送完成时刻延长传输时长T与固有传输周期之间的差值后,所得到的时刻作为该视频帧的发送时刻。
在获得该视频帧的发送时刻之后,监控设备可以在该发送时刻将该视频帧发送至客户端。
如下,通过具体数据对上述过程进行举例:
在一个例子中,假设前一个帧组的最后一个P帧在30.560秒时刻开始传输,在30.565秒时刻传输完成,且下一个帧组的I帧已存于缓存区中,假设该I帧的传输时长为60毫秒,经过比较可以得出,该I帧的传输时长大于固有传输周期40毫秒,按照上述描述,则可以将该P帧传输完成的时刻,即30.565秒时刻作为该I帧的发送时刻,从而,监控设备在30.565秒时刻开始向客户端发送该I帧。后续,经过60毫秒,即在30.625秒时刻,该I帧被传输完成。
由上述描述可知,I帧的传输完成时刻30.625秒与其前一帧P帧的传输完成时刻30.565秒相差60毫秒,与上述所描述的现有技术中,两者的传输完成时刻相差100毫秒相比较而言,本申请中,缩短了前后两个视频帧之间的时延,从而有效避免了客户端视频卡顿。
在另一个例子中,假设该I帧的传输时长为30毫秒,经过比较可以得出,该I帧的传输时长小于固有传输周期40毫秒,且两者之间的差值为10毫秒,按照上述描述,则可以将该P帧传输完成的时刻延后10ms后所得到的时刻,即30.575秒时刻作为该I帧的发送时刻,从而,监控设备在30.575秒时刻开始向客户端发送该I帧。后续,经过30毫秒,即在30.605秒时刻,该I帧被传输完成。
由上述描述可知,I帧的传输完成时刻30.605秒与其前一帧P帧的传输完成时刻30.565秒相差40毫秒,正好为视频帧的固有传输周期,从而有效避免了客户端视频卡顿。
此外,需要说明的是,在本申请中,监控设备采集到第一个视频帧,通常为I帧,可以将该I帧存入缓存区,待监控设备采集到第二个视频帧,通常为P帧,并将该P帧存入缓存区之后,监控设备向客户端发送该I帧。
此外,在本申请中,为了有效解决视频帧码率突发造成视频帧传输延时,可以尽可能地避免视频帧码率突发,具体的,可以采取如下措施:
首先,若得出缓存区中视频帧的传输时长不小于固有传输周期的比较结果,在一个可选的实现方式中,监控设备可以降低视频图像的锐度参数,并且,为了满足监控的基本要求,该锐度参数不低于预设的锐度参数阈值。通过降低视频图像的锐度参数,可以降低视频图像中细节的丰富程度,从而降低视频图像的编码码率,降低视频帧的数据量。
或者,监控设备可以减少视频图像中的高频分量,通过减小视频图像中的高频分量,可以降低视频图像中物体边缘的清晰度,细节的丰富程度,从而降低视频图像的编码码率,降低视频帧的数据量。
再或者,监控设备可以增加对视频图像进行降噪处理的强度,通过增加降噪处理的强度,可以减少视频图像中的噪声,从而减少了视频图像中的信息熵,减少了视频编码所需要的数据量,从而降低视频帧的数据量。
在另一个可选的实现方式中,监控设备可以增大视频图像中目标区域的量化参数,以降低视频图像中目标区域的编码码率,降低视频帧的数据量。
在一个例子中,目标区域可以为非物体运动区域。监控设备可以通过运动检测,检测到物体运动区域,从而,获取到非物体运动区域。通常情况下,视频观看者对视频图像中的物体运动区域更为注重,并不关心非物体运动区域,因此,监控设备可以增大对非物体运动区域编码时的量化参数,以降低视频图像中非物体运动区域的编码码率,降低视频帧的数据量,同时,不对视频观看者的观看体验造成影响。
在另一个例子中,目标区域可以为非感兴趣区域。视频观看者可以预先在视频图像中设置感兴趣区域,从而,监控设备可以根据用户设置的感兴趣区域,区别出非感兴趣区域。由于视频观看者通常不关注非感兴趣区域,从而监控设备可以增大对非感兴趣区域编码时的量化参数,以降低视频图像中非感兴趣区域的编码码率,降低视频帧的数据量,同时,不对视频观看者的观看体验造成影响。
在又一个例子中,目标区域可以为遮盖区域。监控设备的管理者可以预先配置视频图像,例如,管理者根据实际应用需求,对视频图像中的部分区域进行马赛克处理,可以将通过马赛克处理的区域看作遮盖区域。由于视频观看者通常不关注遮盖区域,从而,监控设备可以增大对遮盖区域编码时的量化参数,以降低视频图像中遮盖区域的编码码率,降低视频帧的数据量,同时,不对视频观看者的观看体验造成影响。
在上述过程中,量化参数的增大量可以为△QP,该△QP=(T*FPS-1)*6,通过将量化参数增大△QP,可以使得视频帧的码率下降一倍,从而使得视频帧的数据量下降一倍。
另外,可以根据监控设备本身的状态,对视频帧的编码码率进行控制,以降低视频帧的数据量。
在一个例子中,监控设备进行云台转动的过程中,通常会造成P帧码率突发,而视频观看者通常并不关注监控设备在云台转动过程中所采集到的视频图像。那么,在本申请中,监控设备在接收到云台转动命令时,可以增大视频图像编码时的量化参数,例如,将量化参数调整至40以上;当接收到云台停止转动命令时,可以将视频图像编码时的量化参数再恢复为其增大之前的原始值,同时,为了使得视频图像及时恢复正常,监控设备可以控制自身编码器生成一个强制I帧。
在另一个例子中,当监控设备受到外力作用,处于抖动状态,并且抖动频率高于预设频率阈值时,通常会造成P帧码率突发。那么,当监控设备通过自身的姿态传感器监测到自身处于抖动状态,且抖动频率高于预设频率阈值时,监控设备可以启用预设的防抖动功能,以削减自身的抖动频率,避免P帧码率突发。
此外,监控设备通过姿态传感器监测到自身处于抖动状态时,还可以结合自身的云台控制器,确定当前抖动是否是由于云台转动造成,若确定当前抖动是由于云台转动造成,则可以按照上述描述,增大视频图像编码时的量化参数,以降低视频帧的编码码率,降低视频帧的数据量。
在又一个例子中,监控设备所处的监控环境通常会出现光线的强烈变化,例如视频图像受到灯照、太阳光照等影响,该种情况下,也很可能会造成P帧码率突发。那么,当监控设备通过AE模块监测到视频图像的亮度值相对于亮度平均值的变化幅度达到预设幅度阈值时,监控设备可以增大视频图像中非感兴趣区域编码时的量化参数,以降低视频图像中非感兴趣区域的编码码率,降低视频帧的数据量,同时,不对视频观看者的观看体验造成影响。
在又一个例子中,当监控设备通过AE模块监测到视频图像的噪声达到预设噪声阈值时,监控设备可以增大视频图像中非感兴趣区域编码时的量化参数,以降低视频图像中非感兴趣区域的编码码率,降低视频帧的数据量,同时,不对视频观看者的观看体验造成影响。
本实施例中,通过获取网络传输速率,根据网络传输速率以及视频帧的数据量获取视频帧的发送时刻,在该发送时刻,将该视频帧发送至客户端。由于在发送视频帧之前,根据实际的网络传输速率以及实际待发送视频帧的数据量大小,调整视频帧的发送时刻与其上一帧传输完成时刻之间的时间间隔,使得前后两个帧之间的传输时延尽可能地接近视频帧的固有传输周期,从而有效地解决由于客户端性能不佳,或者网络传输状态不佳,导致客户端视频播放卡顿的问题,并且,有效解决视频帧码率突发造成视频帧传输延时,影响客户端视频播放流畅性的问题。
与前述视频帧处理方法的实施例相对应,本申请还提供了视频帧处理装置的实施例。
本申请视频帧处理装置的实施例可以应用在视频监控系统中的监控设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在监控设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图2所示,为本申请视频帧处理装置所在监控设备的一种硬件结构图,除了图2所示的处理器21、内存22、网络接口23、以及非易失性存储器24之外,实施例中装置所在的监控设备通常根据该监控设备的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图3,为本申请视频帧处理装置的一个实施例框图,该装置可以包括:速率获取模块31、缓存模块32、时长获取模块33、比较模块34、确定模块35、差值获取模块36、发送模块37。
其中,该速率获取模块31,可以用于获取网络传输速率;
该缓存模块32,可以用于将待发送的视频帧存入所述缓存区,所述视频帧为视频流的非首帧;
该时长获取模块33,可以用于根据所述网络传输速率与所述视频帧的数据量获取所述视频帧的传输时长;
该比较模块34,可以用于将所述传输时长与固有传输周期进行比较;
该确定模块35,可以用于若得出所述传输时长不小于所述固有传输周期的比较结果,则将所述视频帧的上一帧的传输完成时刻作为所述视频帧的发送时刻;
该差值获取模块36,可以用于若得出所述传输时长小于所述固有传输周期的比较结果,则获取所述传输时长与所述固有传输周期的差值;
该确定模块35,还可以用于将所述上一帧的传输完成时刻延长所述差值后所得到的时刻作为所述视频帧的发送时刻;
该发送模块37,可以用于在所述发送时刻将所述缓存区中的所述视频帧发送至所述客户端。
在一实施例中,该速率获取模块31,可以包括(图3中并未示出):发送子模块、接收子模块。
其中,该发送子模块,可以用于向所述客户端发送首个视频帧,以使所述客户端根据接收所述首个视频帧的所用时长与所述首个视频帧的数据量获取网络传输速率,并将所述网络传输速率发送至所述监控设备;
该接收子模块,可以用于接收所述客户端发送的所述网络传输速率。
在一实施例中,该装置还可以包括(图3中并未示出):
参数调整模块,用于若得出所述传输时长不小于所述固有传输周期的比较结果,则增大视频图像中目标区域编码时的量化参数,或者降低所述视频图像的锐度参数,并且所述锐度参数不低于预设锐度参数阈值,或者减少所述视频图像中的高频分量,或者增加对所述视频图像进行降噪处理的强度;其中,所述目标区域包括:非感兴趣区域、非物体运行区域、遮盖区域。
在一实施例中,该装置还可以包括(图3中并未示出):
量化参数增大模块,用于当接收到云台转动命令时,增大视频图像编码时的量化参数;
量化参数恢复模块,用于当接收到云台停止转动命令时,将所述量化参数恢复为增大之前的原始值,并生成强制I帧。
在一实施例中,该装置还可以包括(图3中并未示出):
启用模块,用于当检测到自身处于抖动状态且抖动频率高于预设频率阈值时,启用预设的防抖动功能。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种视频帧处理方法,应用于视频监控系统中的监控设备,所述监控设备上预设有缓存区,所述视频监控系统中还包括客户端,其特征在于,所述方法包括:
获取网络传输速率;
将待发送的视频帧存入所述缓存区,所述视频帧为视频流的非首帧;
根据所述网络传输速率与所述视频帧的数据量获取所述视频帧的传输时长;
将所述传输时长与固有传输周期进行比较;
若得出所述传输时长不小于所述固有传输周期的比较结果,则将所述视频帧的上一帧的传输完成时刻作为所述视频帧的发送时刻;若得出所述传输时长小于所述固有传输周期的比较结果,则获取所述传输时长与所述固有传输周期的差值;将所述上一帧的传输完成时刻延长所述差值后所得到的时刻作为所述视频帧的发送时刻;
在所述发送时刻将所述缓存区中的所述视频帧发送至所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述获取网络传输速率包括:
向所述客户端发送首个视频帧,以使所述客户端根据接收所述首个视频帧的所用时长与所述首个视频帧的数据量获取网络传输速率,并将所述网络传输速率发送至所述监控设备;
接收所述客户端发送的所述网络传输速率。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若得出所述传输时长不小于所述固有传输周期的比较结果,则增大视频图像中目标区域编码时的量化参数,或者降低所述视频图像的锐度参数,并且所述锐度参数不低于预设锐度参数阈值,或者减少所述视频图像中的高频分量,或者增加对所述视频图像进行降噪处理的强度;其中,所述目标区域包括:非感兴趣区域、非物体运动区域、遮盖区域。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到云台转动命令时,增大视频图像编码时的量化参数;
当接收到云台停止转动命令时,将所述量化参数恢复为增大之前的原始值,并生成强制I帧。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到自身处于抖动状态且抖动频率高于预设频率阈值时,启用预设的防抖动功能。
6.一种视频帧处理装置,应用于视频监控系统中的监控设备,所述监控设备上预设有缓存区,所述视频监控系统中还包括客户端,其特征在于,所述装置包括:
速率获取模块,用于获取网络传输速率;
缓存模块,用于将待发送的视频帧存入所述缓存区,所述视频帧为视频流的非首帧;
时长获取模块,用于根据所述网络传输速率与所述视频帧的数据量获取所述视频帧的传输时长;
比较模块,用于将所述传输时长与固有传输周期进行比较;
确定模块,用于若得出所述传输时长不小于所述固有传输周期的比较结果,则将所述视频帧的上一帧的传输完成时刻作为所述视频帧的发送时刻;
差值获取模块,用于若得出所述传输时长小于所述固有传输周期的比较结果,则获取所述传输时长与所述固有传输周期的差值;
所述确定模块,还用于将所述上一帧的传输完成时刻延长所述差值后所得到的时刻作为所述视频帧的发送时刻;
发送模块,用于在所述发送时刻将所述缓存区中的所述视频帧发送至所述客户端。
7.根据权利要求6所述的装置,其特征在于,所述速率获取模块,包括:
发送子模块,用于向所述客户端发送首个视频帧,以使所述客户端根据接收所述首个视频帧的所用时长与所述首个视频帧的数据量获取网络传输速率,并将所述网络传输速率发送至所述监控设备;
接收子模块,用于接收所述客户端发送的所述网络传输速率。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
参数调整模块,用于若得出所述传输时长不小于所述固有传输周期的比较结果,则增大视频图像中目标区域编码时的量化参数,或者降低所述视频图像的锐度参数,并且所述锐度参数不低于预设锐度参数阈值,或者减少所述视频图像中的高频分量,或者增加对所述视频图像进行降噪处理的强度;其中,所述目标区域包括:非感兴趣区域、非物体运行区域、遮盖区域。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
量化参数增大模块,用于当接收到云台转动命令时,增大视频图像编码时的量化参数;
量化参数恢复模块,用于当接收到云台停止转动命令时,将所述量化参数恢复为增大之前的原始值,并生成强制I帧。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
启用模块,用于当检测到自身处于抖动状态且抖动频率高于预设频率阈值时,启用预设的防抖动功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611101200.1A CN106791910B (zh) | 2016-12-02 | 2016-12-02 | 视频帧处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611101200.1A CN106791910B (zh) | 2016-12-02 | 2016-12-02 | 视频帧处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106791910A true CN106791910A (zh) | 2017-05-31 |
CN106791910B CN106791910B (zh) | 2019-11-05 |
Family
ID=58883184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611101200.1A Active CN106791910B (zh) | 2016-12-02 | 2016-12-02 | 视频帧处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106791910B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107180104A (zh) * | 2017-06-01 | 2017-09-19 | 广州酷狗计算机科技有限公司 | 视频首帧时长测量方法及装置 |
CN110661992A (zh) * | 2018-06-29 | 2020-01-07 | 视联动力信息技术股份有限公司 | 数据处理方法和装置 |
CN111954007A (zh) * | 2020-07-14 | 2020-11-17 | 烽火通信科技股份有限公司 | Udp直播中vbr视频快速平滑发送方法与装置 |
CN112019918A (zh) * | 2019-05-28 | 2020-12-01 | 杭州海康威视数字技术股份有限公司 | 一种视频播放方法及设备 |
WO2021062624A1 (zh) * | 2019-09-30 | 2021-04-08 | 深圳市大疆创新科技有限公司 | 可移动平台的图像处理方法、装置、可移动平台及介质 |
CN112929702A (zh) * | 2021-04-01 | 2021-06-08 | 北京百家视联科技有限公司 | 一种数据流发送方法、装置、电子设备和存储介质 |
CN113452953A (zh) * | 2020-03-26 | 2021-09-28 | 浙江宇视科技有限公司 | 一种视频流传输控制方法、装置、设备和介质 |
CN113473228A (zh) * | 2021-06-11 | 2021-10-01 | 深圳锐取信息技术股份有限公司 | 8k录播视频的传输控制方法、装置、存储介质及设备 |
CN118488269A (zh) * | 2023-11-22 | 2024-08-13 | 荣耀终端有限公司 | 一种视频处理方法及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020010938A1 (en) * | 2000-05-31 | 2002-01-24 | Qian Zhang | Resource allocation in multi-stream IP network for optimized quality of service |
US20020093912A1 (en) * | 2001-01-17 | 2002-07-18 | Broadcom Corporation | System and method for a guaranteed delay jitter bound when scheduling bandwidth grants for voice calls via cable network |
US20090290638A1 (en) * | 2008-05-26 | 2009-11-26 | Jean-Baptiste Henry | Simplified transmission method for a stream of signals between a transmitter and an electronic device |
CN102088563A (zh) * | 2010-11-26 | 2011-06-08 | 无锡银泰微电子有限公司 | 用于光学图像和光学视频设备中自适应帧率调控方法 |
CN102905200A (zh) * | 2012-08-07 | 2013-01-30 | 上海交通大学 | 一种视频感兴趣区域双流编码传输方法及系统 |
-
2016
- 2016-12-02 CN CN201611101200.1A patent/CN106791910B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020010938A1 (en) * | 2000-05-31 | 2002-01-24 | Qian Zhang | Resource allocation in multi-stream IP network for optimized quality of service |
US20020093912A1 (en) * | 2001-01-17 | 2002-07-18 | Broadcom Corporation | System and method for a guaranteed delay jitter bound when scheduling bandwidth grants for voice calls via cable network |
US20090290638A1 (en) * | 2008-05-26 | 2009-11-26 | Jean-Baptiste Henry | Simplified transmission method for a stream of signals between a transmitter and an electronic device |
CN102088563A (zh) * | 2010-11-26 | 2011-06-08 | 无锡银泰微电子有限公司 | 用于光学图像和光学视频设备中自适应帧率调控方法 |
CN102905200A (zh) * | 2012-08-07 | 2013-01-30 | 上海交通大学 | 一种视频感兴趣区域双流编码传输方法及系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107180104A (zh) * | 2017-06-01 | 2017-09-19 | 广州酷狗计算机科技有限公司 | 视频首帧时长测量方法及装置 |
CN107180104B (zh) * | 2017-06-01 | 2019-09-20 | 广州酷狗计算机科技有限公司 | 视频首帧时长测量方法及装置 |
CN110661992A (zh) * | 2018-06-29 | 2020-01-07 | 视联动力信息技术股份有限公司 | 数据处理方法和装置 |
CN112019918A (zh) * | 2019-05-28 | 2020-12-01 | 杭州海康威视数字技术股份有限公司 | 一种视频播放方法及设备 |
CN112019918B (zh) * | 2019-05-28 | 2023-05-26 | 杭州海康威视数字技术股份有限公司 | 一种视频播放方法及设备 |
US11997282B2 (en) | 2019-09-30 | 2024-05-28 | SZ DJI Technology Co., Ltd. | Image processing method and apparatus for mobile platform, mobile platform, and medium |
WO2021062624A1 (zh) * | 2019-09-30 | 2021-04-08 | 深圳市大疆创新科技有限公司 | 可移动平台的图像处理方法、装置、可移动平台及介质 |
CN113452953A (zh) * | 2020-03-26 | 2021-09-28 | 浙江宇视科技有限公司 | 一种视频流传输控制方法、装置、设备和介质 |
CN113452953B (zh) * | 2020-03-26 | 2022-06-14 | 浙江宇视科技有限公司 | 一种视频流传输控制方法、装置、设备和介质 |
CN111954007B (zh) * | 2020-07-14 | 2022-03-25 | 烽火通信科技股份有限公司 | Udp直播中vbr视频快速平滑发送方法与装置 |
CN111954007A (zh) * | 2020-07-14 | 2020-11-17 | 烽火通信科技股份有限公司 | Udp直播中vbr视频快速平滑发送方法与装置 |
CN112929702B (zh) * | 2021-04-01 | 2021-08-24 | 北京百家视联科技有限公司 | 一种数据流发送方法、装置、电子设备和存储介质 |
CN112929702A (zh) * | 2021-04-01 | 2021-06-08 | 北京百家视联科技有限公司 | 一种数据流发送方法、装置、电子设备和存储介质 |
CN113473228A (zh) * | 2021-06-11 | 2021-10-01 | 深圳锐取信息技术股份有限公司 | 8k录播视频的传输控制方法、装置、存储介质及设备 |
CN113473228B (zh) * | 2021-06-11 | 2022-12-27 | 深圳锐取信息技术股份有限公司 | 8k录播视频的传输控制方法、装置、存储介质及设备 |
CN118488269A (zh) * | 2023-11-22 | 2024-08-13 | 荣耀终端有限公司 | 一种视频处理方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106791910B (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106791910B (zh) | 视频帧处理方法及装置 | |
Fouladi et al. | Salsify:{Low-Latency} network video through tighter integration between a video codec and a transport protocol | |
CN107211193B (zh) | 感知体验质量估计驱动的智能适应视频流传输方法和系统 | |
US8711929B2 (en) | Network-based dynamic encoding | |
US11206431B2 (en) | Systems and methods for selecting an initial streaming bitrate | |
CN106713913B (zh) | 视频图像帧发送方法及装置、视频图像帧接收方法及装置 | |
US8638851B2 (en) | Joint bandwidth detection algorithm for real-time communication | |
EP2727344B1 (en) | Frame encoding selection based on frame similarities and visual quality and interests | |
CN101742289B (zh) | 视频码流压缩方法、系统及装置 | |
WO2001065855A2 (en) | A method and apparatus for streaming scalable video | |
US20110299588A1 (en) | Rate control in video communication via virtual transmission buffer | |
US9628834B2 (en) | Method and system for playback of motion video | |
JP2003524909A (ja) | マルチメディアネットワーク・インタフェースを達成する方法及び装置 | |
US20190306220A1 (en) | System for Video Monitoring with Adaptive Bitrate to Sustain Image Quality | |
CN102447910A (zh) | H.264编码视频数据无线传输方法及无线视频监控系统 | |
CN111641804A (zh) | 视频数据处理方法和装置、终端、摄像头及视频会议系统 | |
CN102905128A (zh) | 编解码处理器在无线视频传输过程中码率控制的方法 | |
KR100511034B1 (ko) | 화상전송장치및화상전송방법 | |
CN114245196B (zh) | 一种录屏推流方法、装置、电子设备及存储介质 | |
CN115242759A (zh) | 一种云游戏处理方法、装置、计算机设备和介质 | |
US20120236927A1 (en) | Transmission apparatus, transmission method, and recording medium | |
CN106210785B (zh) | 媒体流网络自适应单向控制方法及系统 | |
CN114827617B (zh) | 一种基于感知模型的视频编解码方法及系统 | |
US9467691B2 (en) | Video system for displaying image data, method and computer program | |
CN115883848A (zh) | 一种编码控制方法、装置、设备、存储介质及产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |