CN114422734A - 一种录像机、视频数据处理方法、装置及电子设备 - Google Patents

一种录像机、视频数据处理方法、装置及电子设备 Download PDF

Info

Publication number
CN114422734A
CN114422734A CN202210108841.9A CN202210108841A CN114422734A CN 114422734 A CN114422734 A CN 114422734A CN 202210108841 A CN202210108841 A CN 202210108841A CN 114422734 A CN114422734 A CN 114422734A
Authority
CN
China
Prior art keywords
video
target
service
frame rate
video data
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
Application number
CN202210108841.9A
Other languages
English (en)
Other versions
CN114422734B (zh
Inventor
林龑灏
张海龙
马强
王军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN202311783171.1A priority Critical patent/CN117978940A/zh
Priority to CN202210108841.9A priority patent/CN114422734B/zh
Publication of CN114422734A publication Critical patent/CN114422734A/zh
Application granted granted Critical
Publication of CN114422734B publication Critical patent/CN114422734B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0127Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level by changing the field or frame frequency of the incoming video signal, e.g. frame rate converter

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本发明实施例提供了一种录像机、视频数据处理方法、装置及电子设备,应用于数据处理技术领域。该录像机包括视频输入VI单元和至少一个业务处理单元;每一业务处理单元用于处理视频业务;VI单元,用于获取预先配置的业务信息;当接收到待处理的视频流信号时,将视频流信号转换为视频数据;基于目标帧率,对视频数据进行帧率调整,得到目标视频数据,并将目标视频数据写入目标视频业务对应的第一存储位置;目标视频业务对应的业务处理单元,用于获取针对目标视频业务的待利用数据,并按照目标视频业务对应的数据处理方式,对待利用数据进行业务处。通过本方案,可以减少录像机中针对视频业务所存在的资源浪费。

Description

一种录像机、视频数据处理方法、装置及电子设备
技术领域
本发明涉及数据处理技术领域,特别是涉及一种录像机、视频数据处理方法、装置及电子设备。
背景技术
录像机等一些视频处理设备,例如DVR(Digital Video Recorder,硬盘录像机),可以同时实现多个视频业务,其中,该多个视频业务可以包括编码业务、视频输出业务等。视频业务指的是对视频数据进行一些特定的处理。录像机中的VI(Video input,视频输入)可以接收摄像机发送的视频流信号,并对视频流信号进行处理,进而输出视频数据,以供各路视频业务使用。
相关技术中,VI单元所输出的视频数据的帧率与视频流信号的帧率相同,然而,由于存在对视频数据的帧率要求较低的视频业务,导致VI单元输出的视频数据并不能完全被此类视频业务所利用,从而造成录像机中的资源浪费。
发明内容
本发明实施例的目的在于提供一种录像机、视频数据处理方法、装置及电子设备,以减少录像机中针对视频业务所存在的资源浪费。具体技术方案如下:
第一方面,本发明实施例提供一种录像机,所述录像机包括视频输入VI单元和至少一个业务处理单元;每一业务处理单元用于处理视频业务;所述VI单元,用于获取预先配置的业务信息,其中,所述业务信息包括待执行的目标视频业务所需的目标帧率;当接收到待处理的视频流信号时,将所述视频流信号转换为视频数据;基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,并将所述目标视频数据写入所述目标视频业务对应的第一存储位置;其中,所述目标视频业务对应的第一存储位置为预先为所述VI单元申请的、用于存储所述目标视频业务的数据的存储位置;所述目标视频业务对应的业务处理单元,用于针对所述目标视频业务的待利用数据,并按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理,其中,所述待利用数据为基于所述目标视频业务对应的指定存储位置中的目标视频数据所确定的,所述指定存储位置为所述目标视频业务对应的第一存储位置。
第二方面,本发明实施例提供一种视频数据处理方法,应用于录像机,所述方法包括:获取预先配置的业务信息,其中,所述业务信息包括待执行的目标视频业务所需的目标帧率;当接收到待处理的视频流信号时,将所述视频流信号转换为视频数据;基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据;获取所述目标视频业务的待利用数据;其中,所述待利用数据为基于所述目标视频数据所确定的数据;按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理。
第三方面,本发明实施例提供一种视频数据处理装置,应用于录像机,所述装置包括:信息获取模块,用于获取预先配置的业务信息,其中,所述业务信息包括待执行的目标视频业务所需的目标帧率;数据转换模块,用于当接收到待处理的视频流信号时,将所述视频流信号转换为视频数据;帧率调整模块,用于基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据;数据获取模块,用于获取所述目标视频业务的待利用数据;其中,所述待利用数据为基于所述目标视频数据所确定的数据;业务处理模块,用于按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理。
第四方面,本发明实施例提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现第二方面任一所述的方法步骤。
第五方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第二方面任一项所述的方法步骤。
本发明实施例有益效果:
本发明实施例所提供的录像机中,包括视频输入VI单元和至少一个业务处理单元;每一业务处理单元用于处理视频业务,其中,VI单元可以当接收到待处理的视频流信号时,将视频流信号转换为视频数据,并基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,并将所述目标视频数据写入所述目标视频业务对应的第一存储位置,而目标视频业务对应的业务处理单元可以针对所述目标视频业务的待利用数据,按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理。由于VI单元可以基于所述目标帧率,对所述视频数据进行帧率调整,从而可以使得VI单元可以输出适用于目标视频业务的目标视频数据,有效提高目标视频数据中被利用部分的占比,从而可以减少录像机中针对视频业务所存在的资源浪费。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1(a)为相关技术中一种录像机中视频业务处理流程示意图;
图1(b)为相关技术中一种录像机处理视频业务DDR带宽消耗的示意图;
图1(c)为相关技术中一种录像机处理编码业务的流程示意图;
图2为本发明实施例所提供的录像机的结构示意图;
图3为本发明实施例所提供的视频数据处理方法的流程图;
图4(a)为本发明实施例所提供的视频业务处理流程示意图;
图4(b)为本发明实施例所提供的录像机处理视频业务DDR带宽消耗的示意图;
图4(c)为本发明实施例所提供录像机处理编码业务的流程示意图;
图5为本发明实施例所提供的视频数据处理方法的另一流程图;
图6为本发明实施例所提供的视频数据处理装置的结构示意图;
图7为本发明实施例所提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
录像机,例如DVR(Digital Video Recorder,硬盘录像机),是一套进行图像存储处理的计算机系统,具有对图像/语音进行长时间录像、录音、远程监视和控制的功能。录像机中包含VI(Video input,视频输入)单元和VPE(Video Process Engine,图像处理引擎)单元。
其中,VI单元是将视频流信号采集成指定类型的视频数据的硬件功能模块,VI单元可以由硬件和驱动软件构成,该硬件可以为视频采集模块。其中,视频流信号可以是一种类型的数字信号,指定类型的视频数据可以是另一种类型的数字信号。视频流信号中携带了图像信息,通过采集这些图像信息以生成指定类型的视频数据。示例性的,视频流信号可以是模拟信号经模数转换后得到的数字视频流,例如BT656视频流或BT1120视频流。其中,BT656定义了一个并行的硬件接口,其用于传送一路4:2:2的YCbCr的数字视频流,YCbCr是色彩空间的一种,通常用于影片中的影像连续处理,或是数字摄影系统中,Y为亮度(luminance),而Cb和Cr则为蓝色和红色的浓度偏移量成份。而BT1120是HDTV(HighDefinition Television,高清晰度电视)演播室信号数字接口,能够把4:4:4和4:4:2的视频数据编码成内嵌有同步定时基准码的视频数据流。另外,示例性的,指定类型的视频数据可以为YUV(明亮度、色度和浓度)类型的视频数据,例如YUV420格式的数据、YUV422格式的数据等;当然,指定类型的视频数据并不局限于YUV类型的视频数据,例如指定类型的视频数据也可以为RGB(红绿蓝)格式的视频数据。
具体而言,VI单元用于通过MIPI(Mobile Industry Processor Interface,移动产业处理器接口)、ITU-R(International Tecommunicat ion Union-R adiocommunica,国际电信联盟-无线电通信部)等技术联盟规定的BT656和BT1120等接口接收视频流信号,并将所接收的视频流信号,转换为视频数据,以及将所转换的视频数据写入到缓冲区,进而VI单元可以对缓冲区内的视频数据进行处理,并将处理后的视频数据写入指定的内存区域,例如:DDR的存储区域。
在将处理后的视频数据存入到指定的内存区域之前,VI单元可以对缓冲区内的视频数据进行裁剪(Crop)、水平垂直缩小(Down Scaling)和水平垂直翻转(Mirror、Flip)等处理,VI单元对缓冲区内的视频数据所进行的处理,可以依赖相应的硬件单元以及软件驱动。另外,VPE单元属于功能模块,至少可以对视频数据进行图像质量调整,例如降噪,锐化,亮度调整等,然后按照各业务所需分辨率压缩后输出,其中,上述功能模块的可以通过硬件+软件的方式实现,或者也可以仅通过软件实现。也就是说,VPE单元,支持对一幅输入的图像首先进行图像质量调整,包括降噪,锐化,亮度调整等,然后,再缩放到一定的分辨率并通过各个output port口输出;VPE单元还包含HDR(High Dynamic Range Imaging高动态范围成像),旋转,裁剪等功能;并且,VPE单元依赖硬件,包含SOC芯片内一组硬件资源,如,解压缩,裁剪,降噪,反隔行,遮盖等单元,同时也依赖软件驱动。
并且,录像机中的VI单元具有一路VI通道(也被称为VI chan或VI path),而VPE单元可以具有多路(例如四路)VPE通道(VPE channel输出)。由于VI单元仅具有一路VI通道,为了同时实现多路视频业务,VI单元通过一路VI通道将视频数据传输到VPE单元,而VPE单元支持多路VPE通道,使得VPE单元在接收到VI传输的一路视频数据之后,可以将所接收到的视频数据,分别通过多路VPE通道输出,确保可以同时实现多路视频业务。其中,所谓的VI通道以及VPE通道均为逻辑概念,VI单元具有一路VI通道即为:VI单元在接视频流信号之后,将该视频流信号转换为一路视频数据存入缓冲区内,进而对缓冲区内的视频数据进行裁剪、水平垂直缩小、水平垂直翻转等处理,并将处理后的一路视频数据写入预定的存储位置,例如:预定的DDR的存储区域区域;VPE单元具有四路VPE通道即为:VPE单元针对每一路视频业务,从该预定的存储位置处读取视频数据后,对所读取视频数据分别进行与该路视频业务对应的处理,其中,针对每一路视频业务处理,将处理后的视频数据写入该路视频业务对应的存储位置。
可见,由于VI单元仅具有一路VI通道,使得VI单元输出的一路视频数据需要同时作为多路视频业务的输入数据。然而,由于各路视频业务所需的视频数据的视频参数可能不一致,例如视频业务1需要实时(Realtime,简写为RT)的视频数据,其中,实时的视频数据的帧率与输入数据的帧率相同,而视频业务2需要非实时(Not Realtime,简写为NRT)的视频数据,其中,非实时的视频数据的帧率小于输入视频数据的帧率。因此,为了能够同时满足各路视频业务的需求,VI单元所输出的一路视频数据需要为实时的视频数据。可见,在之后的视频业务并不一定需要实时的视频数据时,如上述视频业务2,使得VI单元输出的视频数据并不能完全被之后的视频业务利用,造成资源浪费,也就是,VI单元输出的视频数据并不能完全被之后的视频业务的控制芯片所利用,超出了之后的视频业务的处理模块的需求,造成资源浪费。
图1(a)为一种典型的录像机中的视频业务处理流程示意图。如图1(a)所示,通过VI单元、位于VI单元的之后的一级VPE单元、位于一级VPE单元之后的二级VPE单元的交互,实现视频业务处理。其中,一级VPE单元和二级VPE单元的四路VPE通道分别使用chn0、chn1、chn2和chn3表示,每一路VPE通道与后级业务绑定,其中,每一VPE通道绑定的后级业务可以为视频业务的控制芯片或VPE单元。需要说明的是,这里的“之后”指的是信号或者数据处理的先后顺序中更靠后的顺序。
上述一级VPE单元负责处理大尺寸视频业务,包括主码流编码、HDMI(HighDefinition Multimedia Interface,高清多媒体接口)或VGA(Video Graphics Array,视频图形阵列)大画面预览以及JPEG(Joint Photographic Experts Group,联合图像专家组)编码等,二级VPE单元负责处理小尺寸视频业务,包括:子码流编码、CVBS(CompositeVideo Broadcast Signal,复合视频广播信号)预览、HDMI或VGA小画面预览以及业务取流等。
其中,上述大尺寸视频业务指所需的图像尺寸大于指定的图像尺寸的视频业务,而小尺寸视频业务指所需的图像尺寸不大于指定的图像尺寸,该指定图像尺寸可以结合实际需求确定,例如将所需的图像尺寸大于640×480的视频业务,作为大尺寸视频业务,而将所需的图像尺寸不大于640×480的视频业务,作为小尺寸视频业务。
示例性的,上述主码流编码是用于编码得到本地进行传输、存储的视频数据,而子码流编码是用于编码得到用于进行网络传输的视频数据。
上述与编码相关的业务,例如主码流编码、JPEG编码、子码流编码等,是将存储位置中的视频数据转换为指定格式视频数据的业务,例如JPEG编码是将存储位置中的视频数据转换为JPEG格式的视频数据。
上述与预览相关的业务(也可称为视频输出业务),例如HDMI或VGA大画面预览、CVBS预览以及HDMI或VGA小画面预览,是按照预览所需的图像参数在显示器上展示存储位置中的视频数据的业务,其中,大画面预览所展示图像的图像尺寸大于指定图像尺寸,而小画面预览所展示的图像尺寸不大于指定图像尺寸
以下结合具体的视频业务,对录像机中资源浪费进行说明,其中,录像机分为编码实时设备和编码非实时设备。
上述编码实时设备的编码帧率最大可以达到摄像机输出的视频流信号((可以是数字信号或者可以是模拟信号)的信号帧率。其中,摄像机可以为同轴高清相机,其输出的视频流信号为模拟信号,包括HDTVI(High Definition Transport Video Interface,高清影像传输接口)同轴高清信号、AHD(Analog High Definition,模拟高清)信号、HDCVI(HighDefinition Composite Video Interface,高清复合影像接口)信号以及CVBS等模拟信号中的至少一种;上述摄像机还可以为SDI(Serial Digital Interface,数字分量串行接口)高清相机,其输出的视频流信号为数字信号,例如SDI信号,其中,SDI信号可以通过一些模块例如FPGA转成BT656或BT1120视频流信号,一般而言,FPGA是录像机中用于信号采集的模块,其在录像机中将SDI信号转换成BT656或BT1120视频流信号。
编码实时设备的最小编码帧率可以为1fps或更小的1/2fps等。由于编码实时设备中编码器的最大编码帧率与视频流信号的信号帧率相同,从而使得编码实时设备,具有利用编码器编码生成帧率与视频流信号的信号帧率相同的视频数据的能力。当然编码实时设备也可以根据需要,利用编码器编码生成帧率小于视频流信号的信号帧率的视频数据。示例性的,编码实时设备1的视频流信号的信号帧率为120fps,则可以根据用户的选择利用编码器编码生成帧率为120fps的视频数据,或者,也可以利用编码器编码生成帧率为60fps的视频数据。
上述编码非实时设备指人为限制了编码器编码所生成视频数据的帧率的上限的编码设备,编码非实时设备中编码器的最大编码帧率小于视频流信号的信号帧率,即编码非实时设备不具备编码生成帧率与信号帧率相同的视频数据的能力。示例性的,编码非实时设备2的视频流信号的信号帧率为120fps,而编码非实时设备2中编码器的最大编码帧率为60fps,则编码非实时设备,利用编码器最大仅能编码生成帧率为60fps的视频数据,而无法利用编码器编码生成帧率为120fps的视频数据。
需要强调的是,不管是对于编码实时设备,还是对于编码非实时设备,在利用编码器编码生成视频数据之前,均需要通过VI单元接收摄像机的视频流信号,并输出帧率与视频流信号的信号帧率相同的视频数据,进而由编码器根据配置信息对视频数据进行编码,得到本地存储的或者网络传输的视频。对于编码实时设备而言,其编码器可以按照视频流信号的信号帧率对VI单元输出的视频数据进行编码,也可以按照小于视频流信号的信号帧率的帧率对VI单元输出的视频数据进行编码。而对于编码非实时设备,其编码器仅能按照小于视频流信号的信号帧率的帧率对VI单元输出的视频数据进行编码。
如表1所示,给出了不同视频业务在编码实时设备和编码非实时设备中资源浪费情况。
表1
Figure BDA0003494346260000051
Figure BDA0003494346260000061
以下对表1中各视频业务依次进行说明:
第一种视频业务:编码业务(最大编码帧率)
其中,编码业务包括主码流编码业务、子码流编码业务、JPEG编码业务等。编码业务(最大编码帧率)为按照编码实时设备或编码非实时设备最大的编码帧率进行编码的业务。
对于编码实时设备而言,其编码器的最大编码帧率与视频流信号的信号帧率相同,从而编码实时设备在处理编码业务(最大编码帧率)时,编码实时设备中的编码器将按照视频流信号的信号帧率,对VI单元输出的视频数据进行编码。若VI单元输出视频数据的帧率与视频流信号的信号帧率相同,则VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
对于编码非实时设备而言,其编码器的最大编码帧率小于视频流信号的信号帧率,从而编码非实时设备在处理编码业务(最大编码帧率)时,编码非实时设备中的编码器将按照小于视频流信号的信号帧率的帧率对VI单元输出的视频数据进行编码。若VI单元输出视频数据的帧率与视频流信号的信号帧率相同,则VI单元输出的视频数据中,仅有部分视频帧能够被编码非实时设备中的编码器利用,存在资源浪费。
第二种视频业务:编码业务(非最大编码帧率)
其中,编码业务(非最大编码帧率)为按照小于编码实时设备或编码非实时设备最大编码帧率的帧率进行编码的业务。其意味着,不管是对于编码实时设备还是对于编码非实时设备,在处理编码业务(非最大编码帧率)时,编码器均按照小于视频流信号的信号帧率的帧率对VI单元输出的视频数据进行编码。
若VI单元输出视频数据的帧率与视频流信号的信号帧率相同,则编码实时设备或编码非实时设备在处理编码业务(非最大编码帧率)时,VI单元输出的视频数据中,仅有部分视频帧能够被编码实时设备或编码非实时设备中的编码器利用,使得编码实时设备或编码非实时设备在处理编码业务(非最大编码帧率)业务时,均存在资源浪费。
上述所指的资源浪费可以为DDR带宽和内存的浪费,以下以DDR带宽为例,进一步阐述相关技术中,DVR在处理视频业务时,DDR带宽的消耗情况。
图1(b)为一种DVR处理视频业务DDR带宽消耗的示意图。
第一阶段,VI单元输出全尺寸且实时的视频数据至一级VPE。
在此过程中,VI单元先将实时的视频数据写入DDR,一级VPE单元再从DDR中读取实时的视频数据。可见,第一阶段中,DDR带宽的占用量为实时的视频数据的数据量。
第二阶段,一级VPE单元通过四路VPE通道将视频数据输出到业务处理单元或二级VPE单元。
在此过程中,一级VPE单元的每一路VPE通道将该路VPE通道对应的视频业务所需的视频数据先写入DDR,而该路VPE通道对应的视频业务对应的业务处理单元或二级VPE单元,再从DDR中读取该视频数据。
可见,第二阶段中,一级VPE的每一路VPE通道的DDR带宽的占用量为该路VPE通道输出的视频数据的数据量,其中,每一路VPE通道输出的视频数据的数据量取决于该路VPE通道对应的视频业务所需的帧率。
第三阶段,二级VPE单元通过四路VPE通道将视频数据输出到业务处理单元。
在此过程中,二级VPE单元的每一路VPE通道将该路VPE通道对应的视频业务所需的视频数据先写入DDR,该路VPE通道对应的视频业务的业务处理单元再从DDR中读取该视频数据。
可见,第三阶段中,二级VPE单元的每一路VPE通道的DDR带宽的占用量为该路VPE通道输出的视频数据的数据量,其中,每一路VPE通道输出的视频数据的数据量取决于该路VPE通道对应的视频业务所需的帧率。
图1(c)为一种DVR处理编码业务的流程示意图。图1(c)中,VI单元输出实时的视频数据,进而由VPE单元将实时的视频数据传输至处理编码业务的编码器中,由于编码器进行非实时编码,这也就意味着,VI单元输出的实时的视频数据中,存在被编码器丢弃的视频帧,从而造成了资源浪费。
为了避免DVR中的资源浪费,本发明实施例提供了一种录像机、视频数据处理方法、装置及电子设备。
其中,本发明实施例所提供的录像机,录像机包括视频输入VI单元和至少一个业务处理单元;每一业务处理单元用于处理视频业务;
VI单元,用于获取预先配置的业务信息,其中,业务信息包括待执行的目标视频业务所需的目标帧率;当接收到待处理的视频流信号时,将视频流信号转换为视频数据;基于目标帧率,对视频数据进行帧率调整,得到目标视频数据,并将目标视频数据写入目标视频业务对应的第一存储位置;其中,目标视频业务对应的第一存储位置为预先为VI单元申请的、用于存储目标视频业务的数据的存储位置;
目标视频业务对应的业务处理单元,用于获取针对目标视频业务的待利用数据,并按照目标视频业务对应的数据处理方式,对待利用数据进行业务处理,其中,待利用数据为基于目标视频业务对应的指定存储位置中的目标视频数据所确定的,指定存储位置为目标视频业务对应的第一存储位置。
本发明实施例提供的上述方案中,由于VI单元可以基于目标帧率,对视频数据进行帧率调整,从而可以使得VI单元可以输出适用于目标视频业务的目标视频数据,有效提高目标视频数据中被利用部分的占比,从而可以减少录像机中针对视频业务所存在的资源浪费。
需要说明的是,本实施例中,基于目标帧率对视频数据进行帧率调整,得到目标视频数据,并非限定目标视频数据的帧率相对于视频流信号转换后所得到的视频数据的帧率一定发生了变化,而在于根据目标帧率确定对视频数据进行帧率调整的具体策略。例如,在目标帧率与将视频流信号转换之后得到的视频数据的帧率相同时,则基于目标帧率对视频数据进行帧率调整后所得到的目标视频数据的帧率与进行帧率调整之前的视频数据的帧率相同;又如,在目标帧率小于将视频流信号转换之后得到的视频数据的帧率时,则可以基于目标帧率确定对视频数据进行帧率调整的具体方式,如可以由VI单元单独进行帧率调整、或由VI单元后级单元(业务处理单元、VPE单元等)协助VI单元进行帧率调整或仅由VI单元后级单元进行帧率调整等。
下面结合说明书附图,对本发明实施例提供的录像机进行详细阐述。
如图2所示,为本发明实施例提供的一种录像机,录像机包括视频输入VI单元201和至少一个业务处理单元202;每一业务处理单元202对应于一视频业务;
VI单元,用于获取预先配置的业务信息,其中,业务信息包括待执行的目标视频业务所需的目标帧率;当接收到待处理的视频流信号时,将视频流信号转换为视频数据;基于目标帧率,对视频数据进行帧率调整,得到目标视频数据,并将目标视频数据写入目标视频业务对应的第一存储位置;其中,目标视频业务对应的第一存储位置为预先为VI单元申请的、用于存储目标视频业务的数据的存储位置;
目标视频业务对应的业务处理单元,用于获取针对目标视频业务的待利用数据,并按照目标视频业务对应的数据处理方式,对待利用数据进行业务处理,其中,待利用数据为基于目标视频业务对应的指定存储位置中的目标视频数据所确定的,指定存储位置为目标视频业务对应的第一存储位置。
另外,可选的,上述目标视频业务包括以下业务中的至少一种:
1、主码流编码业务;其中,主码流编码业务为通过编码器实现主码流编码的业务,用于生成本地存储的视频数据,包括最大编码帧率的主码流编码和非最大编码帧率的主码流编码。
2、子码流编码业务;其中,子码流编码业务为通过编码器实现子码流编码的业务,用于生成用于网络传输的视频数据,包括最大编码帧率的子码流编码和非最大编码帧率的子码流编码。
3、取流业务;其中,取流业务指为后级业务提供输入数据的任务,该后级任务可以为智能业务,该智能业务需要从录像机中需要获取视频数据,以进行算法分析。
4、JPEG编码业务;其中,JPEG编码业务包括单步模式和绑定模式。该单步模式指每次仅对一张图像数据进行JPEG编码,例如一次只获取一帧视频数据,并对获取的一帧视频数据进行JPEG编码。该绑定模式指定时抓图业务,例如以n帧/秒的速度获取多帧视频数据,其中,n≥0。
5、非同源输出业务;其中,非同源输出业务指通过HDMI、VGA或CVBS输出来自不同视频源的视频数据的业务,该视频源可以为摄像机。
本实施例中,目标视频业务可以为单个,也可以为多个。
若目标视频业务为单个,VI单元可以针对一路视频流信号,生成一路目标视频业务对应的视频数据,进而进行帧率调整得到一路目标视频数据;在这种情况下,示例性的,该目标视频数据的帧率可以大于或者等于待执行的目标视频业务所需的目标帧率,小于或者等于视频数据在帧率调整之前的帧率。
若目标视频业务为多个时,VI单元也可以针对一路视频流信号,生成一路目标视频业务对应的视频数据,进而进行帧率调整得到一路目标视频数据,该一路目标视频数据可以为各目标视频业务所共享的。在这种情况下,示例性的,该目标视频数据的帧率可以大于或者等于各待执行的目标视频业务所需的最高帧率,小于或者等于视频数据在帧率调整之前的帧率。VI单元之后的处理模块可以将该一路目标视频数据分为针对不同目标视频业务的多路视频数据,其中,在录像机包含VPE单元时,上述VI单元之后的处理模块可以为录像机中的VPE单元。或者,VI单元也可以针对一路视频流信号,生成一路目标视频业务对应的视频数据,进而进行帧率调整得到多路目标视频数据。在这种情况下,示例性的,每一目标视频业务对应的目标视频数据的帧率可以大于或者等于该目标视频业务所需的目标帧率,小于或者等于视频数据在帧率调整之前的帧率。可以理解的是,在目标视频数据的路数为多路时,VI单元具有一出多的处理功能,也就是,针对一路视频流信号,生成多路目标视频数据进行输出;在目标视频数据的路数为一路时,VI单元具有一出一的处理功能,也就是,针对一路视频流信号,生成一路目标视频数据进行输出。
需要强调的是,上述的每一业务处理单元202对应于一视频业务,仅仅用于表明每一视频业务需要被一业务处理单元202进行处理,并非限定每一业务处理单元202仅仅用于处理一视频业务,也就是说,每一业务处理单元202可以用于处理至少一个视频业务。另外,本发明实施例所提及的视频业务实质是一种视频数据的处理方式,例如关于编码的视频业务,如主码流编码、子码流编码等,实质是按照指定格式对指定存储位置中的视频数据进行压缩的过程。每一业务处理单元是所对应视频业务最终的执行单元;针对编码业务而言,如主码流编码业务、子码流编码业务以及JPEG编码业务等,业务处理单元可以为编码器。
并且,待执行的目标视频业务可以为录像机可执行的各路视频业务中的、被配置为需要执行的视频业务。例如,录像机可执行的视频业务包括:视频业务1、视频业务2和视频业务3,而被配置为需要执行的视频业务仅包括视频业务1,则视频业务1为待执行的目标视频业务。可选的,待执行的目标视频业务可以有多个。可以理解的是,在一种实现方式中,可以由相关人员通过GUI(G raphical User Interface,图形用户界面),配置需要执行的目标视频业务。可选的,相关人员通过GUI配置多个需要执行的视频业务,此时,每一被配置为需要执行的视频业务可以作为待执行的一目标视频业务。
本实施例中,VI单元可以获取预先配置的业务信息,上述预先配置的业务信息包括待执行的目标视频业务所需的目标帧率。可选的,当目标视频业务为多个时,每一目标视频业务可以通过业务标识进行区分,此时,预先配置的业务信息具体可以包括:每一业务标识与目标帧率的对应关系,这样,便可以获知具有每一业务标识的目标视频业务所需的目标帧率。
可选的,业务信息还可以包含待执行的目标视频业务对应的第一存储位置,从而VI单元在获取到预先配置的业务信息之后,可以同时确定所需执行的目标视频业务、目标视频业务所需的目标帧率,以及目标视频业务对应的第一存储位置。其中,目标视频业务对应的第一存储位置为预先为VI单元申请的、用于存储目标视频业务的数据的存储位置,例如可以为DDR中指定的存储区域,该存储区域可以为DDR中的偏移地址。当然,目标视频业务对应的第一存储位置也可以独立于业务信息之外,独立获取。可选的,VI单元可以在将目标视频数据写入目标视频业务对应的第一存储位置之前,获取上层应用针对目标视频业务所申请的第一存储位置的位置信息。其中,上层应用可以为应用层的程序,例如用于对VI单元的视频数据处理过程进行控制的应用软件等。
可以理解的是,上述业务信息还可以包括图像尺寸、数据格式等其他参数。其中,上述图像尺寸也可以为称为图像分辨率,即通过图像分辨率来表征图像大小,上述数据格式用于指定视频数据中Y/U/V分量在内存中排列的方式,例如,数据格式包括YUV420、YUV422、YUV444以及RAW(原始)格式等。其中,YUV是一种颜色编码方法,其中“Y”表示明亮度,“U”和“V”表示的则是色度,“U”和“V”用于描述影像色彩及饱和度,用于指定像素的颜色。在YUV420格式下,一帧图像数据的数据量=w×h×3/2。在YUV422格式下,一帧图像数据的数据量=w×h×2,上述w为图像的宽,h为图像的高。
可以理解的是,目标视频业务所需的目标帧率可以为根据视频业务的需求确定。一种可选的视频参数确定方式中,可以通过视频业务的业务处理单元所关联的后级设备,确定视频业务的目标帧率。另一种可选的目标帧率确定方式中,目标视频业务的目标帧率可以由相关人员通过GUI进行配置。在此种情况下,业务信息可以是相关人员通过上层应用的GUI进行配置的,该上层应用可以将相关人员所配置的目标帧率下发至VI单元、业务处理单元等功能模块。
VI单元在获取预先配置的业务信息之后,可以接收待处理的视频流信号。VI单元所接收的待处理的视频流信号可以是摄像机发送的视频流信号,摄像机发送的视频流信号也可以称为原始信号流。
可选的,VI单元可以实时接收摄像机发送的视频流信号,作为待处理的视频流信号。或者,VI单元也可以从目标存储位置处读取视频流信号,作为待处理的视频流信号,该目标存储位置处的视频流信号可以为预先存储的、摄像机传输的视频流信号。一种实现方式中,VI单元可以通过MIPI、ITU-R等技术联盟协议规定的BT656和BT1120等接口接收待处理的视频流信号。
在接收到待处理的视频流信号之后,VI单元可以将视频流信号转换为视频数据。
可选的,若目标视频业务为单个,则VI单元可以将视频流信号转换为一路视频数据,进而可以基于该目标视频业务的目标帧率,对该路视频数据进行帧率调整,得到目标视频数据。
可选的,若目标视频业务为多个,则VI单元可以将视频流信号转换为多路视频数据;其中,每一路视频数据对应于一目标视频业务。示例性的,当待执行的目标视频业务为3个时,则VI单元可以将视频流信号转换为3路视频数据。
一种实现方式中,VI单元可以将视频流信号转换为视频数据,并将所转换的视频数据分别写入多个预定缓冲区,得到多路视频数据;其中,每一预定缓冲区唯一对应一目标视频业务。
示例性的,多个目标视频业务包含目标视频业务1、目标视频业务2和目标视频业务3,目标视频业务1的预定缓冲区为缓存区1、目标视频业务2的预定缓冲区为缓存区2、目标视频业务3的预定缓冲区为缓存区3。VI单元在接收到视频流信号之后,可以将视频流信号转换为视频数据,进而分别将转换的视频数据写入缓存区1、缓存区2和缓存区3。
此时,在将视频流信号转换为视频数据之后,VI单元可以针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的预定缓冲区中的视频数据进行帧率调整,得到该视频业务对应的目标视频数据。其中,具体帧率调整方式将在后续实施例详细描述,在此不再赘述。可以理解的是,若目标帧率与视频流信号转换后的视频数据的帧率一致时,则基于目标帧率,对视频数据进行帧率调整,得到目标视频数据,可以表现为不需要处理视频数据的帧率(例如不改变视频数据的帧率);若目标帧率与视频流信号转换后的视频数据的帧率不一致时,则基于目标帧率,对视频数据进行帧率调整,得到目标视频数据,表现为需要处理视频数据的帧率(例如改变视频数据的帧率),即基于目标帧率对视频数据进行帧率调整。
若目标视频业务为多个,那么VI单元可以针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
可选的,在VI单元将所转换的视频数据分别写入多个预定缓冲区的情况下,VI单元可以针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的预定缓冲区中的视频数据进行帧率调整,得到该视频业务对应的目标视频数据。可选的,VI单元除对预定缓冲区内的视频数据进行帧率调整外,还可以对预定缓冲区内的视频数据进行图像缩放、裁剪(Crop)、水平垂直缩小(Down Scaling)和/或水平垂直翻转(Mirror、Flip)等处理。
一种实现方式中,VI单元可以将视频数据的帧率转换为目标视频业务所需的目标帧率。示例性的,目标帧率为30fps,则VI单元将视频数据转换为帧率为30fps的目标视频数据。
在得到每一目标视频业务的目标视频数据之后,VI单元可以将目标视频数据写入目标视频业务对应的第一存储位置,其中,目标视频业务对应的第一存储位置为预先为VI单元申请的、用于存储目标视频业务的数据的存储位置。
如前所述,目标视频业务对应的第一存储位置可以记录在预先配置的业务信息中,此时,VI单元可以在获取到业务信息之后,获取到目标视频业务对应的第一存储位置。或者,在另一实现方式中,VI单元可以获取上层应用针对目标视频业务所申请的第一存储位置的位置信息,此时VI单元可以主动向上层应用请求,或上层应用主动向VI单元下发。
可选的,在目标视频业务为多个的情况下,一种实现方式中,各个目标视频业务而言共享同一个第一存储位置,此时,VI单元可以将目标视频数据作为各个目标视频业务共享的数据,写入各个目标视频业务共享的第一存储位置。或者,在另一种实现方式中,在不同的目标视频业务对应不同的第一存储位置,且VI单元针对每一目标视频业务均生成对应该目标视频业务对应的目标视频数据的情况下,VI单元可以将每一目标视频业务对应的目标视频数据,写入该目标视频业务对应的第一存储位置中。
在VI单元将目标视频数据写入目标视频业务对应的第一存储位置之后,目标视频业务对应的业务处理单元202,可以针对目标视频业务的待利用数据,并按照目标视频业务对应的数据处理方式,对待利用数据进行业务处理。
其中,待利用数据为基于目标视频业务对应的指定存储位置中的目标视频数据所确定的,指定存储位置为目标视频业务对应的第一存储位置。
一种实现方式中,目标视频业务对应的业务处理单元202可以从指定存储位置中,读取目标视频数据,作为针对目标视频业务的待利用数据。
可选的,目标视频业务对应的业务处理单元202,还用于在从指定存储位置中,读取目标视频数据,作为针对目标视频业务的待利用数据之前,获取上层应用针对目标视频业务所申请的第一存储位置的位置信息。
目标视频业务对应的业务处理单元202可以预先接收上层应用发送的、为该目标视频业务分配的第一存储位置,进而在后续运行过程中,目标视频业务对应的业务处理单元202可以从第一存储位置处读取数据。在VI单元将目标视频数据写入该第一存储位置之后,目标视频业务对应的业务处理单元202可以从该第一存储位置读取目标视频数据,此时,该第一存储位置中的目标视频数据即为该目标视频业务的待利用数据。
可选的,当目标视频业务为多个时,由于不同目标视频业务对应的数据处理方式不同,因此不同的目标视频业务具有不同的业务处理单元,从而不同目标视频业务对应的业务处理单元对待利用数据进行处理的方式不同。本发明实施例对于业务处理单元按照该目标视频业务对应的数据处理方式,对待利用数据进行处理的具体实现方式不做限定。
本发明实施例提供的上述方案中,由于VI单元可以基于目标帧率,对视频数据进行帧率调整,从而可以使得VI单元可以输出适用于目标视频业务的目标视频数据,有效提高目标视频数据中被利用部分的占比,从而可以减少录像机中针对视频业务所存在的资源浪费。
如图2所示,本发明实施例的录像机还可以包括图像处理引擎VPE单元203。
VPE单元203,可以用于在检测到目标视频业务对应的第一指示信息的情况下,从指定存储位置中读取目标视频数据,并对目标视频数据执行预配置处理,以及将处理后的目标视频数据,写入到目标视频业务对应的第二存储位置。
其中,目标视频业务对应的第二存储位置为预先为VPE单元申请的、用于存储目标视频业务的数据的存储位置;目标视频业务对应的第一指示信息包括:用于表征在执行目标视频业务时所涉及的各单元中包含有VPE单元的信息。
当相关人员通过GUI配置需要进行执行的目标视频业务时,上层应用可以配置执行该目标视频业务时所涉及的各单元,当执行该目标视频业务时所涉及的各单元中包含VPE单元时,上层应用可以向VPE单元下发第一指示信息。
当获取检测到该目标视频业务对应的第一指示信息时,VPE单元即可从指定存储位置中读取目标视频数据,并对目标视频数据执行预配置处理,以及将处理后的目标视频数据,写入到目标视频业务对应的第二存储位置。
一种实现方式中,上层应用还可以将目标视频业务对应的第一存储位置和第二存储位置发送至VPE单元,目标视频业务对应的第二存储位置是上层应用预先为VPE单元申请的、用于存储该目标视频业务的数据的存储位置。VPE单元在接收到上层应用发送的第一存储位置和第二存储位置之后,可以基于所获取的第一存储位置,确定所需读取数据所在的位置,并基于所获取的第二存储位置,确定数据进行预配置处理之后的存储位置。可选的,上层应用可以将该目标视频业务对应的第一存储位置和第二存储位置写入第一指示信息中,与第一指示信息同时下发至VPE单元,也可以单独向VPE单元发送目标视频业务对应的第一存储位置和第二存储位置。
当目标视频业务为多个时,VPE单元在检测到到任一目标视频业务对应的第一指示信息的时,即可以从该目标视频业务对应的第一存储位置处读取该目标视频业务对应的目标视频数据,进而对所读取的目标视频数据进行预配置处理,最后将处理后的该目标视频数据,写入到该目标视频业务对应的第二存储位置。其中,上述预配置处理包括:图像尺寸缩放、视频数据复制、针对指定图像参数的调整中的一种或多种;其中,指定图像参数为用于表征图像质量的参数。示例性的,指定图像参数可以为:图像尺寸、亮度、分辨率、噪声等。
需要说明的是,当目标视频业务为多个,VI单元可以将视频流信号所转换成的视频数据的总路数,可以小于目标视频业务的总路数,此时,可以由VPE单元进行视频数据复制,将一路视频数据生成多路视频数据,进而,对多路视频数据进行相应的处理后,由业务处理单元进行相应的处理。另外,VPE单元所执行的预配置处理,可以为针对目标视频业务所需的视频参数以外的处理,也就是,VI单元自身具有如下能力:基于目标帧率,对视频数据进行帧率调整,得到目标视频数据,无需VPE协助;当然,在VI单元自身不具有将视频数据转换为具有目标视频业务所需的视频参数的目标视频数据的能力的前提下,VPE单元所执行的预配置处理,也可以包含针对目标视频业务所需的视频参数的处理,这也是合理的。
上层应用在确定执行目标视频业务时所涉及的各单元中包含VPE单元后,还可以向目标视频业务对应的业务处理单元202,发送目标视频业务对应的第一指示信息和第二存储位置。此时,目标视频业务对应的业务处理单元202在检测到目标视频业务对应的第一指示信息的情况下,从目标视频业务对应的第二存储位置中,读取目标视频业务的目标视频数据,作为针对目标视频业务的待利用数据。
可选的,上层应用在确定执行目标视频业务时所涉及的各单元中不包含VPE单元时,可以向目标视频业务对应的业务处理单元202,发送目标视频业务对应的第二指示信息和第一存储位置,目标视频业务对应的第二指示信息包括:用于表征在执行目标视频业务时所涉及的各单元中未包含有VPE单元的信息。
此时,目标视频业务对应的业务处理单元202,在检测到目标视频业务对应的第二指示信息的情况下,可以从目标视频业务对应的指定存储位置中,读取目标视频业务的目标视频数据,作为针对目标视频业务的待利用数据。
可选的,在一种实现方式中,目标视频业务对应的第一指示信息为:在VI单元不具有处理得到该目标视频业务所需视频数据的能力的情况下所设定的;
每一目标视频业务对应的第二指示信息为:在VI单元具有处理得到该目标视频业务所需视频数据的能力的情况下所设定的。
需要说明的,VI单元可能不具有处理得到某些目标视频业务所需视频数据的能力,即针对某些视频业务而言,VI单元可能无法处理得到与该目标视频业务所需的视频参数一致的视频数据,示例性的,目标视频业务a所需的视频参数包括指定图像尺寸为视频流信号的图像尺寸的1/8,而VI单元的最大缩放倍数为1/4,因此,VI单元对目标视频业务a对应的视频数据进行缩放后,仅能得到缩放倍数为1/4的目标视频数据,而无法得到目标视频业务a所需的缩放倍数为1/8的视频数据。
在此情况下,必须需要VPE单元对该目标视频数据进一步的进行处理,此时,执行该目标视频业务时所涉及的各单元中包含有VPE单元,从而需要设定第一指示信息。
反之,在VI单元具有处理得到某些目标视频业务所需视频数据的能力的情况下,该目标视频业务时所涉及的各单元中可以不包含有VPE单元,从而可以设定第二指示信息。
一种实施例中,VI单元基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,可以包括:
将所述视频数据转换为具有第一帧率的视频数据,作为目标视频数据;其中,所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率。
需要强调的是,本实施例中,将视频数据转换为具有第一帧率的视频数据,并非限定目标视频数据的帧率相对于转换前的视频数据的帧率一定发生了变化,即第一帧率可以等于视频数据在进行帧率调整之前的帧率,而在于根据目标帧率确定对视频数据进行帧率调整的策略。例如,在目标帧率与将视频流信号转换之后得到的视频数据的帧率相同时,则转换后所得到的目标视频数据的第一帧率可以与在进行帧率调整之前的视频数据的帧率相同;又如,在目标帧率小于将视频流信号转换之后得到的视频数据的帧率时,则可以基于目标帧率确定对视频数据进行帧率调整的具体方式,如可以由VI单元单独进行帧率调整、或由VI单元后级单元(业务处理单元、VPE单元等)协助VI单元进行帧率调整或仅由VI单元后级单元进行帧率调整等。
上述视频数据在进行帧率调整之前的帧率可以理解为视频流信号的信号帧率。示例性的,目标帧率为30fps,视频数据在进行帧率调整之前的帧率为60fps,则30fps≤第一帧率≤60fps,第一帧率可以是如40fps、50fps,又如30fps、60fps。此时,VI单元可以将视频数据转换为帧率为40fps或50fps的目标视频数据,又如,VI单元可以将视频数据转换为帧率为30fps的目标视频数据。
若VI单元具备将视频数据转换为目标视频业务所需的目标帧率的能力,上述第一帧率可以等于所述目标帧率。例如,目标帧率为30fps,则在VI单元具备将视频数据转换为目标视频业务所需的目标帧率的能力,VI单元可以将视频数据转换为具有30fps的视频数据。
若VI单元不具备将视频数据转换为目标视频业务所需的目标帧率的能力,上述第一帧率可以大于所述目标帧率,且小于等于视频数据在进行帧率调整之前的帧率。例如,目标帧率为30fps,视频数据在进行帧率调整之前的帧率为60fps,则30fps<第一帧率≤60fps,第一帧率可以如40fps、50fps、60fps等,其中,第一帧率等于60fps,说明VI单元转换后的目标视频数据的帧率与视频数据在进行帧率调整之前的帧率相同,此时VI单元可能不具备对视频数据进行帧率调整的能力,或虽然具备一定的帧率调整能力,但受限于各类限制或需求的影响,无法对视频数据进行帧率调整。
此时,在VI单元不具备将视频数据转换为目标视频业务所需的目标帧率的能力的情况下,为了得到目标视频业务所需的目标帧率的视频数据,需要VI单元的后级单元对目标视频数据做进一步的帧率调整。
一种实现方式中,可以由目标视频业务对应的业务处理单元对目标视频数据做进一步的帧率调整处理。此时,目标视频业务对应的业务处理单元,还用于在按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理之前,将所述目标视频业务的待利用数据的帧率转换为所述目标帧率。其中,目标视频业务的待利用数据为基于所述目标视频业务对应的指定存储位置中的目标视频数据所确定的。
另一种实现方式中,在所述录像机还包括用于对所述指定存储位置中的目标视频数据进行预配置处理的VPE单元的情况下,可以由VPE单元的对目标视频数据做进一步的帧率调整处理。此时,VPE单元对目标视频数据进行的预配置处理,可以包括将所述目标视频数据的帧率转换为所述目标帧率。
其中,所述预配置处理后的目标视频数据存储于所述目标视频业务对应的第二存储位置,且所述第二存储位置中的目标视频数据作为针对所述目标视频业务的待利用数据。
也就是说,在VI单元不具备将视频数据转换为目标视频业务所需的目标帧率的能力的情况下,为了得到具有目标帧率的视频数据,可以利用VPE单元或业务单元配合VI单元,完成对最终实现帧率的调整。
另一种实施例中,当目标视频业务为多个时,VI单元可以针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
VI单元可以针对每一目标视频业务,将该目标视频业务对应的一路所述视频数据,转换为具有该视频业务对应的第二帧率的视频数据,作为该视频业务对应的目标视频数据。其中,每一目标视频业务对应的第二帧率:大于或等于该目标视频业务的目标帧率,且小于或等于该目标视频业务对应的一路所述视频数据在进行帧率调整之前的帧率。
示例性的,视频数据在进行帧率调整之前的帧率为60fps。目标视频业务为3个,分别为目标视频业务1、目标视频业务2以及目标视频3,其中,目标视频业务1所需的目标帧率为30fps、目标视频业务2所需的目标帧率为35fps、目标视频业务3所需的目标帧率为40fps。
对于目标视频业务1而言,30fps≤目标视频业务1对应的第二帧率≤60fps,例如,目标视频业务1对应的第二帧率可以为30fps、40fps、50fps、60fps等,若为50fps,则针对目标视频业务1,VI单元将视频数据转换为帧率为50fps的视频数据,作为目标视频业务1对应的目标视频数据。
对于目标视频业务2而言,35fps≤目标视频业务2对应的第二帧率≤60fps,例如,目标视频业务2对应的第二帧率可以为35fps、40fps、50fps、60fps等,若为50fps,则针对目标视频业务2,VI单元将视频数据转换为帧率为50fps的视频数据,作为目标视频业务2对应的目标视频数据。
对于目标视频业务3而言,40fps≤目标视频业务3对应的第二帧率≤60fps,例如,目标视频业务3对应的第二帧率可以为40fps、45fps、50fps、60fps等,若为50fps,则针对目标视频业务2,VI单元将视频数据转换为帧率为50fps的视频数据,作为目标视频业务2对应的目标视频数据。
此时,为了得到每一目标视频业务所需的目标帧率的视频数据,需要VI单元的后级单元对每一目标视频数据做进一步的帧率调整。也就是说,无论VI单元输出几路目标视频数据,对于每一路输出的目标视频数据,VPE单元或该路视频业务对应的业务单元均可以对该路目标视频数据的帧率进行协助处理。
可选的,针对任意一路目标视频业务,若该目标视频业务对应的第二帧率大于该目标视频业务的目标帧率,一种实现方式中,可以由该目标视频业务对应的业务处理单元进行协助处理,此时有:
该目标视频业务对应的业务处理单元,还用于在按照该目标视频业务对应的数据处理方式,对该目标视频业务的待利用数据进行业务处理之前,将该视频业务的待利用数据的帧率转换为该目标视频业务的目标帧率。
另一种实现方式中,在所述录像机还包括用于对该目标视频业务对应的指定存储位置中、该目标视频业务对应的目标视频数据进行预配置处理的VPE单元的情况下,可以由VPE单元的对该目标视频业务对应的目标视频数据做进一步的帧率调整处理。此时,VPE单元的针对该视频业务所执行的预配置处理,可以包括将该目标视频业务对应的目标视频数据的帧率转换为该目标视频业务所需的目标帧率。其中,预配置处理后的目标视频数据存储于该目标视频业务对应的第二存储位置,且所述第二存储位置中的目标视频数据作为针对该目标视频业务的待利用数据。
又一种实施例中,若目标视频业务为多个,且各目标视频业务共享一路目标视频数据,此时,VI单元可以将各目标视频业务对应的一路视频数据,转换为具有第三帧率的视频数据,作为目标视频数据。其中,所述第三帧率为大于或等于各目标视频业务所需目标帧率中最高的帧率,且小于或等于所述视频数据在帧率调整之前的帧率。
示例性的,视频数据在进行帧率调整之前的帧率为60fps。目标视频业务为3个,分别为目标视频业务1、目标视频业务2以及目标视频3,其中,目标视频业务1所需的目标帧率为30fps、目标视频业务2所需的目标帧率为35fps、目标视频业务3所需的目标帧率为40fps。那么上述则40fps≤第三帧率≤60fps,第三帧率可以是如50fps,又如40fps,此时,VI单元可以将视频数据转换为帧率为50fps的目标视频数据,又如,VI单元可以将视频数据转换为帧率为40fps的目标视频数据。
此时,在将视频数据转换为具有第三帧率的视频数据,作为目标视频数据之后,VI单元可以将目标视频数据作为各个目标视频业务共享的数据,写入各个目标视频业务共享的第一存储位置,这意味着,各个目标视频业务共享的第一存储位置中存储的均为帧率为第三帧率的目标视频数据。
相应的,VPE单元可以针对每一目标视频业务,从所述第一存储位置中读取所述目标视频数据,对所述第一存储位置中的所述目标视频数据执行预配置处理,并将处理后的目标视频数据写入该目标视频业务对应的第二存储位置;其中,所述预配置处理包括:将所述目标视频数据的帧率转换为该目标视频业务所需的目标帧率。也就是说,VPE单元针对每一目标视频业务,从该目标视频业务对应的第一存储位置中读取帧率为第三帧率的目标视频数据,进而通过预配置操作,将该路帧率为第一帧率的目标视频数据,转换为帧率为该目标视频业务所需的目标帧率的视频数据。
举例说明,目标视频业务1、目标视频业务2以及目标视频3,其中,目标视频业务1所需的目标帧率为30fps、目标视频业务2所需的目标帧率为35fps、目标视频业务3所需的目标帧率为40fps,第三帧率为50fps。此时,针对目标视频业务1,VPE单元从目标视频业务1对应的第一存储位置中读取帧率为50fps的目标视频数据,进而通过预配置操作,将目标视频业务1对应的帧率为50fps的目标视频数据,转换为帧率为30fps的视频数据。针对目标视频业务2,VPE单元从目标视频业务2对应的第一存储位置中读取帧率为50fps的目标视频数据,进而通过预配置操作,将该目标视频业务2对应的帧率为50fps的目标视频数据,转换为帧率为35fps的视频数据。针对目标视频业务3,VPE单元从目标视频业务3对应的第一存储位置中读取帧率为50fps的目标视频数据,进而通过预配置操作,将该目标视频业务3对应的帧率为50fps的目标视频数据,转换为帧率为40fps的视频数据。
目标视频业务对应的业务处理单元202在获取针对目标视频业务的待利用数据之后,可以按照目标视频业务对应的数据处理方式,对待利用数据进行业务处理。
其中,不同目标视频业务对应的数据处理方式不同,示例性的,针对编码业务,如主码流编码业务、子码流编码业务以及JPEG编码业务等,在获取针对该目标视频业务的待利用数据之后,每一编码业务对应的编码器可以按照指定格式,对该目标视频业务的待利用数据进行编码处理。
可选的,一实施例中,VI单元基于目标帧率,对视频数据进行帧率调整,得到目标视频数据的过程,可以包括步骤A-步骤B:
步骤A,按照第一帧率,从视频数据中确定待抽取的视频帧;所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率;
当第一帧率与视频数据的帧率相同时,VI单元可以视频数据的每一视频帧均确定为待抽取的视频帧。
而当第一帧率小于视频数据的原始帧率时,则说明仅需要视频数据的部分视频帧即可,此时,VI单元可以按照第一帧率,从视频数据中确定待抽取的视频帧。
一种VI单元确定待抽取的视频帧实现方式中,可以计算第一帧率对应的帧间时长,进而按照该帧间时长,从视频数据中,确定待抽取的视频帧。
可选的,VI单元可以每间隔帧间时长,从视频数据中确定一个视频帧,作为待抽取的视频帧。
其中,第一帧率对应的帧间时长为第一帧率下相邻视频帧之间的时长,一般而言,第一帧率对应的时长为:
Figure BDA0003494346260000171
其中,T为单位时间,例如1000ms等,F为第一帧率,例如30fps,t为第一帧率对应的时长。
VI单元在确定第一帧率对应的帧间时长之后,可以每隔一帧间时长即确定一张待抽取的视频帧。
为了提高视频帧确定的准确率,VI单元可以为视频数据的每一视频帧增加一个时间戳,进而基于每一视频帧的时间戳,每隔一帧间时长即确定一帧待抽取的视频帧。
本实现方式中,VI单元通过第一帧率对应的帧间时长,可以方便、高效地从视频数据中,确定待抽取的视频帧。
另一种确定待抽取的视频帧实现方式中,VI单元可以计算视频流信号的信号帧率与第一帧率的比值,作为帧间隔参数,进而针对视频数据中的每一视频帧,基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧。
其中,视频流信号的信号帧率与第一帧率的比值为:
Figure BDA0003494346260000172
其中,A为帧间隔参数,srcfps为视频流信号的信号帧率,dstfps为第一帧率。
在计算出帧间隔参数之后,VI单元可以针对视频数据中的每一视频帧,基于帧间隔参数,确定该视频帧是否为待抽取的视频帧。
可选的,视频数据中各帧视频具有帧序号,且各帧的帧序号构成等差序列,例如{1,2,3,4,5,…,n-1,n},或{2,4,6,8,…,2(n-1),2n}。
此时,VI单元基于帧间隔参数,确定该视频帧是否为待抽取的视频帧,可以包括步骤A1-A3:
步骤A1:确定该视频帧的帧序号,以及在该视频帧之前,视频数据中已作为待抽取的视频帧的目标数量;
VI单元针对视频数据中的每一帧视频帧,可以先确定该帧的帧序号,以及在该视频帧之前,视频数据中已作为待抽取的视频帧的目标数量。其中,该视频帧之前的视频帧可以为帧序号小于该视频帧的视频帧,例如,视频数据中各帧视频的帧需要构成等差序列{1,2,3,4,5,…,n-1,n},针对帧序号为4的视频帧而言,在该视频帧之前视频帧包括视频帧1、视频帧2和视频帧3。
步骤A2:计算帧间隔参数、等差序列的公差以及目标数量的乘积;
VI单元在确定出帧间隔参数之后,可以按照以下公司计算帧间隔参数、等差序列的公差以及目标数量的乘积:
C=A×Δ×S
其中,C为乘积,Δ为等差序列的公差,S为目标数量。
步骤A3:若乘积小于该视频帧的帧序号,则判定该视频帧作为待抽取的视频帧。
若乘积小于该视频帧的帧序号,则VI单元可以判定该视频帧作为待抽取的视频帧,否则,若乘积本小于该视频帧的帧序号,则VI单元可以丢弃该视频帧。
示例性的,假设视频流信号的信号帧率30fps,第一帧率为15fps。视频数据每一视频帧的帧序号为{1,2,3,4,5,…,n-1,n}。
则视频流信号的信号帧率与第一帧率的比值为:
Figure BDA0003494346260000181
视频数据各帧的帧序号构成等差序列的公差Δ为1,则有:
C=2×1×S=2S
对于视频数据中帧序号为1的视频帧1而言,由于视频帧1之前,视频数据中已作为待抽取的视频帧的目标数量为0,则乘积C为0,小于视频帧1的帧需要1,则VI单元确定视频帧1为待抽取的视频帧。
对于帧序号为2的视频帧2而言,由于视频帧2之前,视频数据中已作为待抽取的视频帧的目标数量为1(视频帧1),则乘积C为2,不小于视频帧2的帧序号2,则VI单元确定视频帧2为需要丢弃的视频帧。
对于帧序号为3的视频帧3而言,由于视频帧3之前,视频数据中已作为待抽取的视频帧的目标数量为1(视频帧1),则乘积C为2,小于视频帧3的帧序号3,则VI单元确定视频帧3为待抽取的视频帧。
对于帧序号为4的视频帧4而言,由于视频帧4之前,视频数据中已作为待抽取的视频帧的目标数量为2(视频帧1、视频帧3),则乘积C为4,不小于视频帧4的帧序号4,则VI单元确定视频帧4为需要丢弃的视频帧。
对于帧序号为5的视频帧5而言,由于视频帧5之前,视频数据中已作为待抽取的视频帧的目标数量为2(视频帧1、视频帧3),则乘积C为4,小于视频帧5的帧序号5,则VI单元确定视频帧5为待抽取的视频帧。
以此类推,可以在视频数据的各视频帧中,每隔一帧确定一帧作为待抽取的视频帧。
本实现方式中,VI单元可以通过帧间隔参数,准确地从视频数据中,确定待抽取的视频帧。
步骤B,抽取所确定的视频帧,得到帧率为目标帧率的视频数据,作为针对目标视频业务的目标视频数据。
VI单元在确定出待抽取的视频帧之后,可以抽取所确定的视频帧,得到符合目标帧率的视频数据。
本发明实施例上述视频数据处理方法,可以避免资源浪费,进一步的,按照目标帧率从视频数据中确定待抽取的视频帧,进而抽取所确定的视频帧,得到符合目标帧率的视频数据,为避免DVR中的资源浪费提供了实现基础。
在本发明实施例提供的录像机的基础上,本发明实施例还提供一种视频数据处理方法,应用于录像机,可选的,可以应用于本发明上述实施例所提供的录像机中。
如图3所示,为本发明实施例提供的一种视频数据处理方法,应用于录像机,包括步骤:
S301,获取预先配置的业务信息,其中,业务信息包括待执行的目标视频业务所需的目标帧率;
其中,录像机中的VI单元可以获取预先配置的业务信息。
S302,当接收到待处理的视频流信号时,将视频流信号转换为视频数据;
其中,录像机中的VI单元可以当接收到待处理的视频流信号时,将视频流信号转换为视频数据。
S303,基于目标帧率,对视频数据进行帧率调整,得到目标视频数据;
其中,录像机中的VI单元可以基于目标帧率,对视频数据进行帧率调整,得到目标视频数据。
S304,获取目标视频业务的待利用数据;其中,待利用数据为基于目标视频数据所确定的数据;
其中,录像机中的目标视频业务对应业务处理单元可以获取目标视频业务的待利用数据;其中,待利用数据为基于目标视频数据所确定的数据。
S305,按照目标视频业务对应的数据处理方式,对待利用数据进行业务处理。
其中,录像机中的目标视频业务对应业务处理单元可以按照目标视频业务对应的数据处理方式,对待利用数据进行业务处理。
由于VI单元可以基于目标帧率,对视频数据进行帧率调整,从而可以使得VI单元可以输出适用于目标视频业务的目标视频数据,有效提高目标视频数据中被利用部分的占比,从而可以减少录像机中针对视频业务所存在的资源浪费
关于本发明实施例上述所提供的一种视频接入方法,由于与上述录像机是相对应的,所以描述的比较简单,相关之处参见本发明所提供录像机的说明即可。
可选的,一种实现方式中,所述目标视频业务的待利用数据的确定方式,包括:
对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据。
可选的,一种实现方式中,所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据转换为具有第一帧率的视频数据,作为目标视频数据;其中,所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率。
可选的,一种实现方式中,所述第一帧率大于所述目标帧率;
所述获取所述目标视频业务的待利用数据之后,所述按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理之前,还包括:
将所述目标视频业务的待利用数据的帧率,转换为所述目标帧率;
或者,
在所述目标视频业务的待利用数据的确定方式包括对所述目标视频数据执行预配置处理,得到待利用数据的情况下,所述预配置处理包括:将所述目标视频数据的帧率转换为所述目标帧率。
可选的,一种实现方式中,所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据的帧率转换为所述目标帧率。
可选的,一种实现方式中,所述目标视频业务为多个;
所述将所述视频流信号转换为视频数据,包括:
将所述视频流信号转换为多路视频数据;其中,每一路视频数据对应于一目标视频业务;
所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
可选的,一种实现方式中,所述基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据,包括:
将该目标视频业务对应的一路所述视频数据,转换为具有该视频业务对应的第二帧率的视频数据,作为该视频业务对应的目标视频数据;其中,每一目标视频业务对应的第二帧率:大于或等于该目标视频业务的目标帧率,且小于或等于该目标视频业务对应的一路所述视频数据在进行帧率调整之前的帧率。
可选的,一种实现方式中,该目标视频业务对应的第二帧率大于该目标视频业务的目标帧率;
所述获取该目标视频业务的待利用数据之后,所述按照该目标视频业务对应的数据处理方式,对该目标视频业务的待利用数据进行业务处理之前,还包括:将该目标视频业务的待利用数据的帧率,转换为所述目标帧率;
或者,
在所述目标视频业务的待利用数据的确定方式包括对该目标视频业务对应的目标视频数据执行预配置处理,得到该目标视频业务的待利用数据的情况下,所述预配置处理包括:将该目标视频业务对应的目标视频数据的帧率转换为该目标视频业务所需的目标帧率。
可选的,一种实现方式中,所述将所述视频流信号转换为多路视频数据,包括:
将所述视频流信号转换为视频数据,并将所转换的视频数据分别写入多个预定缓冲区,得到多路所述视频数据;其中,每一预定缓冲区唯一对应一目标视频业务;
所述针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据,包括:
针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的预定缓冲区中的所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
可选的,一种实现方式中,所述目标视频业务为多个;
所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据转换为具有第二帧率的视频数据,作为目标视频数据;其中,所述第二帧率为大于或等于各目标视频业务所需目标帧率中最高的帧率,且小于或等于所述视频数据在帧率调整之前的帧率;
在所述将所述视频数据转换为具有所述第二帧率的视频数据,作为目标视频数据之后,且在所述对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据之前,所述方法还包括:
将所述目标视频数据作为各个目标视频业务共享的数据,写入各个目标视频业务共享的第一存储位置;
所述对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据,包括:
针对每一目标视频业务,对所述第一存储位置中的所述目标视频数据执行预配置处理,得到该目标视频数据对应的待利用数据;其中,所述预配置处理包括:将该目标视频数据的帧率转换为该目标视频业务所需的目标帧率。
可选的,一种实现方式中,所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
按照第一帧率,从所述视频数据中确定待抽取的视频帧;所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率;
抽取所确定的视频帧,得到帧率为所述第一帧率的视频数据,作为针对所述目标视频业务的目标视频数据。
可选的,一种实现方式中,所述按照第一帧率,从所述视频数据中确定待抽取的视频帧,包括:
计算第一帧率对应的帧间时长;
按照所述帧间时长,从所述视频数据中,确定待抽取的视频帧。
可选的,一种实现方式中,所述按照所述帧间时长,从所述视频数据中,确定待抽取的视频帧,包括:
每间隔所述帧间时长,从所述视频数据中确定一个视频帧,作为待抽取的视频帧。
可选的,一种实现方式中,所述按照第一帧率,从所述视频数据中确定待抽取的视频帧,包括:
计算所述视频数据的原始帧率与第一帧率的比值,作为帧间隔参数;
针对所述视频数据中的每一视频帧,基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧。
可选的,一种实现方式中,所述视频数据中各帧视频具有帧序号,且各帧的帧序号构成等差序列;
所述基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧,包括:
确定该视频帧的帧序号,以及在该视频帧之前,所述视频数据中已作为待抽取的视频帧的目标数量;
计算帧间隔参数、所述等差序列的公差以及所述目标数量的乘积;
若所述乘积小于该视频帧的帧序号,则判定该视频帧作为待抽取的视频帧。
下面结合具体的视频业务,对本发明实施例进行说明。
如图4(a)所示,为本发明实施例提供的一种视频业务处理流程示意图。VI单元为图4(a)中VI单元,PATH0-PATH7表述VI单元针对每一路视频业务的VI通道,VI单元的每一VI通道输出的视频数据的帧率是可以根据视频业务所需的帧率进行调整的。图4(a)中,视频业务包括主码流编码、子码流编码、HDMI或VGA、CVBS、取流业务、HDMI非同源输出和JPEG编码。
图4(a)中虚线标记的VPE可以根据实际需求省略,如VI单元可满足视频业务的业务需求时,则VI单元的后级单元可以直接为视频业务的业务处理单元,如主码流编码、子码流编码、业务取流和HDMI等,而对于HDMI或VGA以及VBS则需要先输入到VPE单元,由VPE单元做进一步的处理后,输入到其对应的业务处理单元中。图4(a)中,虚线箭头标记代表可扩展的视频业务,如HDMI非同源输出、JPEG编码等。
如下表2所示,为采用本发明实施例提供的视频数据处理方法后,各编码业务的资源浪费情况:
表2
Figure BDA0003494346260000221
以下对表2中各视频业务依次进行说明:
第一种视频业务:编码业务(最大编码帧率)
对于编码实时设备而言,编码实时设备在处理编码业务(最大编码帧率)业务时,视频业务所需的是视频流信号的信号帧率的视频数据,而本发明实施例中,VI单元可以按照视频业务所需的目标帧率输出视频数据,使得VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
对于编码非实时设备而言,编码非实时设备在处理编码业务(最大编码帧率)业务时,视频业务所需的目标帧率小于视频流信号的信号帧率的视频数据,本发明实施例中,VI单元可以按照视频业务所需的小于视频流信号的信号帧率的帧率输出视频数据,使得VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
第二种视频业务:编码业务(非最大编码帧率)
编码实时设备和编码非实时设备,在处理编码业务(非最大编码帧率)业务时,视频业务所需的帧率均是小于视频流信号的信号帧率的视频数据,而本发明实施例中,VI单元可以按照视频业务所需的小于视频流信号的信号帧率的帧率输出视频数据,使得VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
以DDR带宽为例,进一步阐述相关技术中,DVR在处理视频业务时,DDR带宽的消耗情况。
图4(b)相关技术中,本发明实施例提供的一种DVR处理视频业务DDR带宽消耗的示意图。
第一种:主码流编码业务,VI单元输出到编码器;
在此过程中,VI单元根据主码流编码所需的帧率和输出视频数据。该过程包括:将该视频数据写入DDR,再由主码流编码的编码器从DDR中读取该视频数据。可见主码流编码过程中,DDR带宽的占用量为主码流编码所需视频数据的数据量,取决于主码流编码所需的帧率。
第二种:子码流编码业务,VI单元输出到编码器;
在此过程中,VI单元根据子码流编码所需的帧率输出视频数据。该过程包括:将该视频数据写入DDR,再由子码流编码的编码器从DDR中读取该视频数据。可见子码流编码过程中,DDR带宽的占用量为子码流编码所需视频数据的数据量,取决于子码流编码所需的帧率。
第三种:高清预览业务,VI单元输出到HDMI或VGA;
在此过程中,VI单元根据HDMI或VGA所需的帧率输出视频数据。该过程包括两个阶段:第一阶段,VI单元将视频数据写入DDR,由VPE从DDR中读取视频数据;第二阶段,VPE处理后,将视频数据写入DDR,由HDMI或VGA预览设备从DDR中读取视频数据。其中,第一阶段和第二阶段的DDR带宽的占用量取决于实时帧率。
第四种:标清预览业务,VI单元输出到CVBS;
在此过程中,VI单元根据CVBS所需的帧率输出视频数据。该过程包括两个阶段:第一阶段,VI单元将视频数据写入DDR,由VPE从DDR中读取视频数据;第二阶段,VPE处理后,将视频数据写入DDR,由CVBS预览设备从DDR中读取视频数据。其中,第一阶段和第二阶段的DDR带宽的占用量取决于实时帧率。
第五种:取流业务,VI单元输出到智能处理单元;
在此过程中VI单元根据取流业务所需的帧率输出视频数据。该过程包括:将该视频数据写入DDR,再由智能处理单元从DDR中读取该视频数据。可见取流业务的执行过程中,DDR带宽的占用量为取流业务所需视频数据的数据量,取决于取流业务所需的帧率。
第六种:HMDI非同源输出业务,VI单元输出到HMDI设备;
在此过程中,VI单元根据HMDI非同源输出业务所需的帧率输出视频数据。该过程包括两个阶段:第一阶段,VI单元将视频数据写入DDR,由VPE从DDR中读取视频数据;第二阶段,VPE处理后,将视频数据写入DDR,由HMDI设备从DDR中读取视频数据。其中,第一阶段和第二阶段的DDR带宽的占用量取决于实时帧率。
第七种:JPEG编码业务,VI单元输出到编码器;
在此过程中VI单元根据JPEG编码业务所需的帧率输出视频数据。该过程包括:将该视频数据写入DDR,再由JPEG编码业务的编码器从DDR中读取该视频数据。可见取流业务的执行过程中,DDR带宽的占用量为JPEG编码业务所需视频数据的数据量,取决于JPEG编码业务所需的帧率。
第八种:ANY业务,VI单元输出到ANY业务的处理单元;
其中,ANY业务是任意一种可扩展业务,可用于后续可能的业务扩展,作为冗余。在此过程中,VI单元根据ANY业务所需的帧率输出视频数据,将该视频数据写入DDR,再由ANY业务的处理单元从DDR中读取该视频数据。可见取流业务的执行过程中,DDR带宽的占用量为JPEG编码业务所需视频数据的数据量,取决于ANY业务所需的帧率。
可见,本发明实施例的技术方案,可以减小DDR带宽和内存的消耗。
如下表3所示,为采用本发明实施例提供的视频数据处理方法,与相关技术的视频数据处理相比的各资源消耗情况表:
表3
Figure BDA0003494346260000241
由上表3可知,对于编码业务(最大编码帧率)而言,采用本发明实施例的技术方案,在编码实时设备中,VI单元输出视频数据的帧率不变。在编码非实时设备中,可以减小VI单元输出视频数据的码率,从而减小DDR带宽和内存的消耗。
对于编码业务(非最大编码帧率)而言,采用本发明实施例的技术方案,在编码实时设备和编码非实时设备中,均可减小VI输出视频数据的码率,从而减小DDR带宽和内存的消耗。
对于取流业务而言,采用本发明实施例的技术方案,在编码实时设备和编码非实时设备中,均可减小VI单元输出视频数据的码率,从而减小DDR带宽和内存的消耗。
图4(c)为本发明实施例提供的一种DVR处理编码业务的流程示意图。图4(c)中,VI单元通过帧率控制,输出非实时的视频数据,进而由VPE将非实时的视频数据传输至处理编码业务的编码器中,由于VI单元仅输出非实时的视频数据,使得VI单元输出的每一视频帧均被编码器利用,从而减少了录像机中针对视频业务所存在的资源浪费。
可见,采用本发明实施例,至少具备以下有效效果:
1、减少视频业务对DDR带宽和内存的消耗。
2、减小需要处理的数据量,从而减少了VPE单元的性能消耗消耗。
3、对于DVR而言,DDR带宽、CPU使用率以及内存,三者是相关的,一方达到瓶颈,都会影响DVR的整体性能,因此,本发明实施例通过减少视频业务对DDR带宽和内存的消耗,可以提升DVR的整体性能。
4、对于DVR而言,DDR带宽、CPU使用率以及内存,可以相互转换,例如当DVR中CPU使用率达到最大值后,通过流程或架构的调整,可以利用增大内存和/或DDR带宽的消耗换取CPU使用率的降低,从而提升设备整体性能,从而本发明实施例通过减少视频业务对DDR带宽和内存的消耗,可以提升DVR的整体性能。
可选的,录像机中除本发明上述实施例所提及的由于VI单元输出视频数据的帧率与视频流信号的信号帧率相同造成的资源浪费外,还存在由VI单元输出视频数据的图像尺寸与视频流信号的图像尺寸相同而造成的资源浪费。
具体而言,如表4所示,给出了不同视频业务在编码实时设备和编码非实时设备中资源浪费情况。
表4
视频业务 编码实时设备 编码非实时设备
主码流编码(最大编码帧率) 无资源浪费 有资源浪费
主码流编码(非最大编码帧率) 有资源浪费 有资源浪费
子码流编码(最大编码帧率) 有资源浪费 有资源浪费
子码流编码(非最大编码帧率) 有资源浪费 有资源浪费
高清预览(多画面) 有资源浪费 有资源浪费
以下对表4中各视频业务依次进行说明:
第一种视频业务:主码流编码(最大编码帧率)
其中,主码流编码(最大编码帧率)业务为按照编码实时设备或编码非实时设备最大编码帧率进行编码的业务。
对于编码实时设备而言,其编码器的最大编码帧率与视频流信号的信号帧率相同,从而编码实时设备在处理主码流编码(最大编码帧率)业务时,编码实时设备中的编码器将按照视频流信号的信号帧率,对VI单元输出的视频数据进行编码。VI单元输出视频数据的帧率与信号帧率也相同,使得VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
对于编码非实时设备而言,其编码器的最大编码帧率小于视频流信号的信号帧率,从而编码非实时设备在处理主码流编码(最大编码帧率)业务时,编码非实时设备中的编码器将按照小于视频流信号的信号帧率的帧率对VI单元输出的视频数据进行编码。由于VI单元输出视频数据的帧率与视频流信号的信号帧率相同,也就是说VI输出的视频数据中,仅有部分视频帧可以被编码非实时设备中的编码器利用,从而存在资源浪费。
第二种视频业务:主码流编码(非最大编码帧率)
其中,主码流编码(非最大编码帧率)业务为按照小于编码实时设备或编码非实时设备最大编码帧率的帧率进行编码的业务。其意味着,不管编码实时设备还是编码非实时设备,在处理主码流编码(非最大编码帧率)业务时,编码器均按照小于视频流信号的信号帧率的帧率对VI单元输出的视频数据进行编码。
VI单元输出视频数据的帧率与视频流信号的信号帧率相同,也就是说,在编码实时设备或编码非实时设备处理主码流编码(非最大编码帧率)业务时,VI输出的视频数据中,仅有部分视频帧可以被编码实时设备或编码非实时设备中的编码器利用,从而使得编码实时设备或编码非实时设备在处理主码流编码(非最大编码帧率)业务时,均存在资源浪费。
第三种视频业务:子码流编码(最大编码帧率)
其中,子码流编码(最大编码帧率)业务为按照编码实时设备或编码非实时设备最大编码帧率进行编码,且编码后的视频的图像尺寸小于视频流信号的图像尺寸的业务。
对于子码流编码(最大编码帧率)需要分别从帧率、图像尺寸两个维度分析其资源浪费情况。
对于帧率维度,编码实时设备或编码非实时设备在处理子码流编码(最大编码帧率)业务时的资源浪费情况,与编码实时设备或编码非实时设备处理主码流编码(最大编码帧率)业务时的资源浪费情况相同,即在帧率维度,编码实时设备不存在资源浪费,编码非实时设备存在资源浪费,相关描述参见上述主码流编码(最大编码帧率)部分,在此不再赘述。
对于图像尺寸维度,由于对于子码流编码(最大编码帧率)业务而言,其编码后的视频的图像尺寸小于视频流信号的图像尺寸,这意味着,在图像尺寸维度,不管是编码实时设备还是编码非实时设备,其编码器输出视频的图像尺寸均小于视频流信号的图像尺寸。
VI单元输出视频数据的图像尺寸与视频流信号的图像尺寸相同,而编码实时设备或编码非实时设备在处理子码流编码(最大编码帧率)业务时,编码器输出视频的图像尺寸均小于视频流信号的图像尺寸,从而使得每一被编码器编码的视频帧中,仅部分数据被编码器所利用,导致在图像尺寸维度,编码实时设备和编码非实时设备在处理子码流编码(最大编码帧率)业务时,均存在资源浪费。
综合帧率维度和图像尺寸维度,编码实时设备和编码非实时设备在处理子码流编码(最大编码帧率)业务时,均存在资源浪费。
第四种视频业务:子码流编码(非最大编码帧率)
其中,子码流编码(非最大编码帧率)业务为小于视频流信号的信号帧率的帧率进行编码,且编码后的视频的图像尺寸小于视频流信号的图像尺寸的业务。
同样的,对于子码流编码(非最大编码帧率)也需要分别从帧率、图像尺寸两个维度分析其资源浪费情况。
对于帧率维度,编码实时设备或编码非实时设备在处理子码流编码(非最大编码帧率)业务时的资源浪费情况,与编码实时设备或编码非实时设备处理主码流编码(非最大编码帧率)业务时的资源浪费情况相同,即在帧率维度,编码实时设备和编码非实时设备均存在资源浪费,相关描述参见上述主码流编码(非最大编码帧率)部分,在此不再赘述。
对于图像尺寸维度,编码实时设备或编码非实时设备在处理子码流编码(非最大编码帧率)业务时的资源浪费情况,与编码实时设备或编码非实时设备处理子码流编码(最大编码帧率)业务时的资源浪费情况相同,即在图像尺寸维度,编码实时设备和编码非实时设备均存在资源浪费,相关描述参见上述子码流编码(最大编码帧率)中图像尺寸维度部分,在此不再赘述。
综合帧率维度和图像尺寸维度,编码实时设备和编码非实时设备在处理子码流编码(非最大编码帧率)业务时,均存在资源浪费。
第五种视频业务:高清预览(多画面)
其中,高清预览(多画面)是对多路视频数据进行高清预览输出的业务,即以大于指定图像尺寸的图像尺寸展示多路视频数据。每一路进行高清预览输出的视频数据的高清预览画面的图像尺寸根据多画面的数量确定,例如,对于4画面高清预览业务而言,每一路的高清预览画面的图像尺寸为输入图像数据的图像尺寸的1/4。可见,对于高清预览(多画面)而言,每一路视频数据的高清预览图像的图像尺寸小于视频流信号的图像尺寸。
VI单元输出视频数据的图像尺寸与视频流信号的图像尺寸相同,而编码实时设备或编码非实时设备在处理高清预览(多画面)时,仅输出图像尺寸小于视频流信号的图像尺寸的高清预览画面,从而导致VI单元输出的视频数据中仅部分数据被编码器所利用,使得编码实时设备和编码非实时设备在处理高清预览(多画面)业务时,均存在资源浪费。
上述所指的资源浪费可以为DDR带宽和内存的浪费,以下以DDR带宽为例,进一步阐述录像机在处理视频业务时,DDR带宽的消耗情况。
参见图1(b)所示录像机处理视频业务DDR带宽消耗的示意图。
第一阶段,VI单元输出全尺寸且实时的视频数据至一级VPE单元。
在此过程中,VI单元先将全尺寸且实时的频数据写入DDR,一级VPE单元再从DDR中读取全尺寸且实时的视频数据。可见,第一阶段中,DDR带宽的占用量为全尺寸且实时的视频数据的数据量。
第二阶段,一级VPE单元通过四路VPE通道将视频数据输出到后级业务。
在此过程中,一级VPE单元的每一路VPE通道将后级业务所需的视频数据先写入DDR,该后级业务再从DDR中读取该视频数据。
可见,第二阶段中,一级VPE单元的每一路VPE通道的DDR带宽的占用量为该路VPE通道输出的视频数据的数据量,其中,每一路VPE通道输出的视频数据的数据量取决于该路后级业务所需的帧率和图像尺寸,即前级向后级传递的视频数据的数据量等于单帧图像数据的图像尺寸乘以后级业务所需的帧率。
第三阶段,二级VPE单元通过四路VPE通道将视频数据输出到后级业务。
在此过程中,二级VPE单元的每一路VPE通道将后级业务所需的视频数据先写入DDR,该后级业务再从DDR中读取该视频数据。
可见,第三阶段中,二级VPE单元的每一路VPE通道的DDR带宽的占用量为该路VPE通道输出的视频数据的数据量,其中,每一路VPE通道输出的视频数据的数据量取决于该路后级业务所需的帧率和图像尺寸。
为了减少录像机中针对视频业务所存在的资源浪费,在本发明所提供的上述实施例的基础上,本发明实施例还提供另一种录像机,所述录像机包括视频输入VI单元和至少一个业务处理单元;每一业务处理单元用于处理视频业务;
所述VI单元,用于获取预先配置的业务信息,其中,所述业务信息包括待执行的至少一目标视频业务所需的视频参数;当接收到待处理的视频流信号时,将所述视频流信号转换为至少一路视频数据,其中,每一路视频数据对应于一目标视频业务;针对每一目标视频业务,将该目标视频业务对应的一路所述视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据,并将每一目标视频业务的目标视频数据写入该目标视频业务对应的第一存储位置;其中,每一目标视频业务对应的第一存储位置为预先为所述VI单元申请的、用于存储该目标视频业务的数据的存储位置;
每一目标视频业务对应的业务处理单元,用于获取针对该目标视频业务的待利用数据,并按照该目标视频业务对应的数据处理方式,对所述待利用数据进行处理,其中,所述待利用数据为基于该目标视频业务对应的指定存储位置中的目标视频数据所确定的,每一目标视频业务的指定存储位置为该目标视频业务对应的第一存储位置。
本发明实施例所提供的录像机中,由于VI单元可以针对每一目标视频业务均转换一路视频数据,且将每一目标视频业对应的一路视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据,从而可以保证转换得到的每一路视频数据均可被完全利用,因此,减少了录像机中的针对视频业务所存在的资源浪费。
进一步的,由于VI单元可以同时针对多路视频业务输出视频数据,不需要依赖VPE单元,使得针对不需要VPE单元进行图像处理的每一视频业务,仅需要VI单元输出一路视频数据,可以降低录像机中的资源消耗。其中,降低录像机中的资源消耗包括:降低录像机中SOC(System on Chip,系统级芯片)的使用率、降低录像机中DDR的内存占用、降低录像机中DDR的带宽占用以及降低录像机中CPU的使用率。
其中,上述目标视频业务可以为以下业务中的至少一种:
1、主码流编码业务;
2、子码流编码业务;
3、高清预览业务;其中,高清预览业务为对视频数据进行高清展示输出的业务,例如以HDMI或VGA输出。其中,高清预览业务指所输出或所展示的图像画面的图像尺寸大于指定图像尺寸。高清预览业务包括单画面高清预览和多画面高清预览,其中,单画面高清预览输出全尺寸单个视频帧,即所展示的图像画面的尺寸与视频流信号的图像尺寸相同,而多画面高清预览则需要将多路视频数据的视频帧合并为单个视频帧输出。
对于多画面高清预览中的每一路视频帧而言,为了将多个视频帧合并为单个视频帧输出,需要对每一个视频帧进行图像尺寸缩放。举例而言,对于4宫格高清预览业务而言,需要将4路视频的视频帧合并为单个视频帧,则每一路视频的视频帧的图像尺寸为全尺寸的四分之一。
4、标清预览业务;其中,标清预览业务为对视频数据进行标清预览输出的业务,例如以CVBS输出。其中,标清预览业务指所输出或所展示的图像画面的图像尺寸不大于指定图像尺寸。标清预览业务所输出的单个视频帧图像尺寸小于视频流信号的图像尺寸,因此需要在视频流信号的基础上进行缩放。
5、取流业务;
6、JPEG编码业务;
7、非同源输出业务;
本实施例中,VI单元可以针对一路视频流信号,生成至少一路目标视频数据进行输出。
需要强调的是,针对预览业务而言,如高清预览业务、标清预览业务以及非同源输出业务等,业务处理单元可以为与视频接口所关联的相应的控制器或处理芯片,例如,对于HDMI预览业务,业务处理单元可以为与HDMI接口相关联的HDMI控制器,对于VGA预览业务,业务处理单元可以为与VGA接口相关联的VGA转换芯片。
本实施例中,VI单元可以获取预先配置的业务信息,上述预先配置的业务信息包括待执行的至少一目标视频业务所需的视频参数。
可选的,业务信息还可以包含待执行的至少一目标视频业务对应的第一存储位置,从而VI单元在获取到预先配置的业务信息之后,可以同时确定所需执行的至少一目标视频业务,每一目标视频业务所需的视频参数,以及每一视频业务对应的第一存储位置。
可选的,上述每一目标视频业务所需的视频参数可以包括指定帧率和/或指定图像尺寸。该每一目标视频业务所需的指定帧率即为本发明实施例上述实施例所提及的每一目标视频业务所需的目标帧率。
可以理解的是,每一目标视频业务所需的视频参数可以为根据视频业务的需求确定。一种可选的视频参数确定方式中,可以通过视频业务的业务处理单元所关联的后级设备,确定视频业务的视频参数,例如,视频业务为高清预览业务,其业务处理单元所关联的后级设备为显示器1,其显示器的分辨率为1024×768,则可以确定高清预览业务的视频参数包括图像尺寸1024×768。
在接收到待处理的视频流信号之后,VI单元可以将视频流信号转换为至少一路视频数据,其中,每一路视频数据对应于一目标视频业务。示例性的,当待执行的目标视频业务为3个时,则VI单元可以将视频流信号转换为3路视频数据。
一种实现方式中,将视频流信号转换为视频数据,并将所转换的视频数据分别写入至少一个预定缓冲区,得到至少一路视频数据。
在将视频流信号转换为至少一路视频数据之后,VI单元可以针对每一目标视频业务,将该目标视频业务对应的一路视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据。
可选的,上述视频参数可以包括指定帧率和/或指定图像尺寸,此时,所述VI单元可以针对每一目标视频业务,按照该目标视频业务所需的指定帧率和/或指定图像尺寸,对该目标视频业务对应的一路视频数据进行处理,得到具有该目标视频业务所需的视频参数的目标视频数据。
当一目标视频业务所需的视频参数包括指定图像尺寸时,可以将该目标视频业务对应的一路视频数据,转换为具有该指定图像尺寸的目标视频数据。可以理解的是,若指定图像尺寸与该目标视频业务对应的一路视频数据的图像尺寸一致时,则可以不需要处理,若指定图像尺寸与该目标视频业务对应的一路视频数据的图像尺寸不一致时,则需要按照该路视频业务所需的指定图像尺寸对该路视频数据中的视频帧进行尺寸缩放。
可以理解的是,在一目标视频业务所需的视频参数同时包含指定帧率和指定图像尺寸时,一种实现方式中,可以对该目标视频业务对应的一路视频数据中每一视频帧均进行尺寸缩放,进而基于指定帧率对缩放后的视频数据进一步进行抽帧处理;或者,在另一种实现方式中,可以预先基于指定帧率确定该目标视频业务对应的一路视频数据中所需要的待利用视频帧,进而仅针对待利用视频帧进行尺寸缩放。
可选的,在VI单元将视频流信号转换为视频数据,并将所转换的视频数据分别写入至少一个预定缓冲区,得到至少一路视频数据的情况下,VI单元可以针对每一目标视频业务,将该目标视频业务对应的预定缓冲区中的视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据。
在VI单元每一目标视频数据写入该目标视频业务对应的第一存储位置之后,每一目标视频业务对应的业务处理单元202,可以获取针对该目标视频业务的待利用数据,并按照该目标视频业务对应的数据处理方式,对待利用数据进行处理。
待利用数据为基于该目标视频业务对应的指定存储位置中的目标视频数据所确定的,每一目标视频业务的指定存储位置为该目标视频业务对应的第一存储位置。
本发明实施例提供的上述方案中,由于VI单元可以针对每一目标视频业务均转换一路视频数据,且将每一目标视频业对应的一路视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据,从而可以保证转换得到的每一路视频数据均可被完全利用,减少了录像机中的资源浪费。
可选的,在录像机还可以包括图像处理引擎VPE单元的情况下,VPE单元可以在检测到任一目标视频业务对应的第一指示信息的情况下,从该目标视频业务对应的指定存储位置中,读取该目标视频业务的目标视频数据,并对该视频数据执行预配置处理,以及将处理后的该目标视频数据,写入到该目标视频业务对应的第二存储位置。
其中,每一目标视频业务对应的第一指示信息包括:用于表征在执行该目标视频业务时所涉及的各单元中包含有VPE单元的信息。
在本发明实施例提供的录像机的基础上,本发明实施例还提供一种视频数据处理方法,应用于录像机,可选的,可以应用于本发明上述实施例所提供的录像机中。
如图5所示,为本发明实施例提供的一种视频数据处理方法,应用于录像机,包括步骤:
S501,获取预先配置的业务信息,其中,业务信息包括待执行的至少一目标视频业务所需的视频参数;
其中,录像机中的VI单元可以获取预先配置的业务信息。
S502,当接收到待处理的视频流信号时,将视频流信号转换为至少一路视频数据;其中,每一路视频数据对应于一目标视频业务;
其中,录像机中的VI单元可以当接收到待处理的视频流信号时,将视频流信号转换为至少一路视频数据。
S503,针对每一目标视频业务,将该目标视频业务对应的一路视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据;
其中,录像机中的VI单元可以针对每一目标视频业务,将该目标视频业务对应的一路视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据。
S504,针对每一目标视频业务,获取该视频业务对应的待利用数据,并按照该目标视频业务对应的数据处理方式,对待利用数据进行处理;其中,待利用数据为基于该目标视频业务的目标视频数据所确定的。
其中,录像机中的业务处理单元可以针对每一目标视频业务,获取该视频业务对应的待利用数据,并按照该目标视频业务对应的数据处理方式,对待利用数据进行处理。
关于本发明实施例上述所提供的一种视频接入方法,由于与上述录像机是相对应的,所以描述的比较简单,相关之处参见本发明所提供录像机的说明即可。
可选的,一种实现方式中,上述获取该视频业务对应的待利用数据,可以包括:
对该视频业务的目标视频数据进行预配置处理,得到该视频业务对应的待利用数据。
其中,上述预配置处理包括:图像尺寸缩放、视频数据复制、针对指定图像参数的调整中的一种或多种;其中,指定图像参数为用于表征图像质量的参数。
在一实施例中,上述S502,可以包括:
将视频流信号转换为视频数据,并将所转换的视频数据分别写入至少一个预定缓冲区,得到至少一路视频数据;其中,每一预定缓冲区唯一对应一目标视频业务;
此时,上述S503,可以包括:
针对每一目标视频业务,将该目标视频业务对应的预定缓冲区中的视频数据,转换为具有该目标视频业务所需的视频参数的目标视频数据。
关于本发明实施例上述所提供的一种视频数据处理方法,由于与上述录像机是相对应的,所以描述的比较简单,相关之处参见本发明所提供录像机的说明即可。
下面结合具体的视频业务,对本发明实施例所提供的录像机进行视频处理的过程进行说明。
仍以以图4(a)所示视频业务处理流程示意图进行说明,如下表5所示,为采用本发明实施例提供的视频数据处理方法后,各视频业务的资源浪费情况:
表5
Figure BDA0003494346260000311
以下对表5中各视频业务依次进行说明:
第一种视频业务:主码流编码(最大编码帧率)
对于编码实时设备而言,编码实时设备在处理主码流编码(最大编码帧率)业务时,目标视频业务所需的是视频流信号的信号帧率的视频数据,而本发明实施例中,VI单元可以按照目标视频业务所需的目标帧率输出视频数据,使得VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
对于编码非实时设备而言,编码非实时设备在处理主码流编码(最大编码帧率)业务时,目标视频业务所需的目标帧率小于视频流信号的信号帧率的视频数据,发明实施例中,VI单元可以按照目标视频业务所需的小于视频流信号的信号帧率的帧率输出视频数据,使得VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
第二种视频业务:主码流编码(非最大编码帧率)
编码实时设备和编码非实时设备,在处理主码流编码(非最大编码帧率)业务时,目标视频业务所需的均是帧率小于视频流信号的信号帧率的视频数据,而本发明实施例中,VI单元可以按照目标视频业务所需的小于视频流信号的信号帧率的帧率输出视频数据,使得VI单元输出视频数据中每一视频帧均能够被编码器所利用,从而无资源浪费。
第三种视频业务:子码流编码(最大编码帧率)
对于子码流编码(最大编码帧率)需要分别从帧率、图像尺寸两个维度分析其资源浪费情况。
对于帧率维度,编码实时设备或编码非实时设备在处理子码流编码(最大编码帧率)业务时的资源浪费情况,与本发明实施例中,编码实时设备或编码非实时设备处理主码流编码(最大编码帧率)业务时的资源浪费情况相同,即在帧率维度,编码实时设备和编码非实时设备均不存在资源浪费,相关描述参见上述主码流编码(最大编码帧率)部分,在此不再赘述。
对于图像尺寸维度,由于对于子码流编码(最大编码帧率)业务而言,其编码后的视频的图像尺寸小于视频流信号的图像尺寸。
若VI单元满足业务需求时,即VI单元能够完全将原始视频数据的图像尺寸缩放到目标视频业务所需的图像尺寸,则在图像尺寸维度,编码实时设备和编码非实时设备均不存在资源浪费。
若VI单元不满足业务需求时,即VI单元不能够完全将原始视频数据的图像尺寸缩放到目标视频业务所需的图像尺寸,则VI单元输出按照最大缩放能力缩放后的视频数据,进而由VPE进一步的进行缩放,此时,在图像尺寸维度,本发明实施例中,编码实时设备和编码非实时设备可以减小资源浪费。
第四种视频业务:子码流编码(非最大编码帧率)
同样的,对于子码流编码(非最大编码帧率)也需要分别从帧率、图像尺寸两个维度分析其资源浪费情况。
对于帧率维度,编码实时设备或编码非实时设备在处理子码流编码(非最大编码帧率)业务时的资源浪费情况,与本发明实施例中,编码实时设备或编码非实时设备处理主码流编码(非最大编码帧率)业务时的资源浪费情况相同,即在帧率维度,编码实时设备和编码非实时设备均不存在资源浪费,相关描述参见上述主码流编码(非最大编码帧率)部分,在此不再赘述。
对于图像尺寸维度,编码实时设备或编码非实时设备在处理子码流编码(非最大编码帧率)业务时的资源浪费情况,与本发明实施例中,编码实时设备或编码非实时设备处理子码流编码(最大编码帧率)业务时的资源浪费情况相同。若VI单元满足业务需求,则在图像尺寸维度,编码实时设备和编码非实时设备均不存在资源浪费;若VI单元不满足业务需求,则在图像尺寸维度,本发明实施例中,编码实时设备和编码非实时设备可以减小资源浪费。
第五种视频业务:高清预览(多画面)
虽然每一路高清预览画面的尺寸均小于原始视频数据的图像尺寸,但本发明实施例中,VI单元可以根据每一路高清预览画面所需图像尺寸,调整输出的视频数据的图像尺寸。
若VI单元满足业务需求时,即VI单元能够完全将原始视频数据的图像尺寸缩放到高清预览画面所需图像尺寸,则在图像尺寸维度,编码实时设备和编码非实时设备均不存在资源浪费。
若VI单元不满足业务需求时,即VI单元不能够完全将原始视频数据的图像尺寸缩放到高清预览画面所需图像尺寸,则VI单元输出按照最大缩放能力缩放后的图像画面后,进而由VPE进一步的进行缩放,此时,在图像尺寸维度,本发明实施例中,编码实时设备和编码非实时设备可以减小资源浪费。
以DDR带宽为例,进一步阐述录像机在处理视频业务时,DDR带宽的消耗情况。
仍以图4(b)所述录像机处理视频业务时DDR带宽消耗的示意图,进行说明,其中:
第一种:主码流编码业务,VI单元输出到编码器;
在此过程中,VI单元根据主码流编码所需的帧率和图像尺寸输出视频数据。该过程包括:将该视频数据写入DDR,再由主码流编码的编码器从DDR中读取该视频数据。可见主码流编码过程中,DDR带宽的占用量为主码流编码所需视频数据的数据量,即主码流编码所需帧率乘以主码流编码所需图像尺寸。
第二种:子码流编码业务,VI单元输出到编码器;
在此过程中,VI单元根据子码流编码所需的帧率和图像尺寸输出视频数据。该过程包括:将该视频数据写入DDR,再由子码流编码的编码器从DDR中读取该视频数据。可见子码流编码过程中,DDR带宽的占用量为子码流编码所需视频数据的数据量,即子码流编码所需帧率乘以子码流编码所需图像尺寸。
第三种:高清预览业务,VI单元输出到HDMI/VGA;
在此过程中,VI单元根据HDMI/VGA所需的帧率和图像尺寸输出视频数据。该过程包括两个阶段:第一阶段,VI单元将视频数据写入DDR,由VPE从DDR中读取视频数据;第二阶段,VPE处理后,将视频数据写入DDR,由HDMI/VGA预览设备从DDR中读取视频数据。
若VI单元满足业务需求,则第一阶段和第二阶段的DDR带宽的占用量为HDMI/VGA所需图像尺寸乘以实时帧率,即高清预览窗口的尺寸乘以实时帧率。
若VI单元无法满足业务需求,则第一阶段的DDR带宽的占用量为VI单元最大缩放的图像尺寸乘以实时帧率,第二阶段的DDR带宽的占用量为HDMI/VGA所需图像尺寸乘以实时帧率。
第四种:标清预览业务,VI单元输出到CVBS;
在此过程中,VI单元根据CVBS所需的帧率和图像尺寸输出视频数据。该过程包括两个阶段:第一阶段,VI单元将视频数据写入DDR,由VPE从DDR中读取视频数据;第二阶段,VPE处理后,将视频数据写入DDR,由CVBS预览设备从DDR中读取视频数据。
若VI单元满足业务需求,则第一阶段和第二阶段的DDR带宽的占用量为CVBS所需图像尺寸乘以实时帧率,即标清预览窗口的尺寸乘以实时帧率。
若VI单元无法满足业务需求,则第一阶段的DDR带宽的占用量为VI单元最大缩放的图像尺寸乘以实时帧率,第二阶段的DDR带宽的占用量为CVBS所需图像尺寸乘以实时帧率。
第五种:取流业务,VI单元输出到智能处理单元;
在此过程中VI单元根据取流业务所需的帧率和图像尺寸输出视频数据。该过程包括:将该视频数据写入DDR,再由智能处理单元从DDR中读取该视频数据。可见取流业务的执行过程中,DDR带宽的占用量为取流业务所需视频数据的数据量,即取流业务所需帧率乘以取流业务所需图像尺寸。
第六种:HMDI非同源输出业务,VI单元输出到HMDI设备;
在此过程中,VI单元根据HMDI非同源输出业务所需的帧率和图像尺寸输出视频数据。该过程包括两个阶段:第一阶段,VI单元将视频数据写入DDR,由VPE从DDR中读取视频数据;第二阶段,VPE处理后,将视频数据写入DDR,由HMDI设备从DDR中读取视频数据。
若VI单元满足业务需求,则第一阶段和第二阶段的DDR带宽的占用量为HMDI非同源输出业务所需图像尺寸乘以实时帧率。
若VI单元无法满足业务需求,则第一阶段的DDR带宽的占用量为VI单元最大缩放的图像尺寸乘以实时帧率,第二阶段的DDR带宽的占用量为HMDI非同源输出业务所需图像尺寸乘以实时帧率。
第七种:JPEG编码业务,VI单元输出到编码器;
在此过程中VI单元根据JPEG编码业务所需的帧率和图像尺寸输出视频数据。该过程包括:将该视频数据写入DDR,再由JPEG编码业务的编码器从DDR中读取该视频数据。可见取流业务的执行过程中,DDR带宽的占用量为JPEG编码业务所需视频数据的数据量,即JPEG编码业务所需帧率乘以JPEG编码业务所需图像尺寸。
第八种:ANY业务,VI单元输出到ANY业务的处理单元;
其中,ANY业务是任意一种可扩展业务,可用于后续可能的业务扩展,作为冗余。在此过程中,VI单元将该视频数据写入DDR,再由ANY业务的处理单元从DDR中读取该视频数据。可见ANY业务的执行过程中,DDR带宽的占用量为ANY业务所需视频数据的数据量,即ANY业务所需帧率乘以ANY业务所需图像尺寸。
如下表6所示,为采用本发明实施例提供的视频数据处理方法,与相关技术的视频数据处理相比的各资源消耗情况表:
表6
Figure BDA0003494346260000341
Figure BDA0003494346260000351
由上表6可知,对于主码流编码(最大编码帧率)而言,采用本发明实施例的技术方案,在编码实时设备中,可以减小VI输出视频数据的图像尺寸,从而减小DDR带宽和内存的消耗;在编码非实时设备中,可以同时减小VI输出视频数据的码率和图像尺寸,从而减小DDR带宽和内存的消耗。
对于主码流编码(非最大编码帧率)而言,采用本发明实施例的技术方案,在编码实时设备和编码非实时设备中,均可同时减小VI输出视频数据的码率和图像尺寸,从而减小DDR带宽和内存的消耗。
对于子码流编码(最大编码帧率)而言,采用本发明实施例的技术方案,在编码实时设备和编码非实时设备中,均可同时减小VI输出视频数据的码率和图像尺寸,从而减小DDR带宽和内存的消耗。
对于高清预览(多画面)而言,采用本发明实施例的技术方案,在编码实时设备和编码非实时设备中,均可减小VI输出视频数据的图像尺寸,以及可以不需要经过VPE处理,即可将视频数据直接用于高清预览业务,从而减小DDR带宽和内存的消耗。
对于取流业务而言,采用本发明实施例的技术方案,在编码实时设备和编码非实时设备中,均可同时减小VI输出视频数据的码率和图像尺寸,从而减小DDR带宽和内存的消耗。
可见,本发明实施例的技术方案,可以减小DDR带宽和内存的消耗。
基于本发明实施例上述视频数据处理方法,如图6所示,本发明实施例还提供一种视频数据处理装置,应用于录像机,所述装置包括:
信息获取模块601,用于获取预先配置的业务信息,其中,所述业务信息包括待执行的目标视频业务所需的目标帧率;
数据转换模块602,用于当接收到待处理的视频流信号时,将所述视频流信号转换为视频数据;
帧率调整模块603,用于基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据;
数据获取模块604,用于获取所述目标视频业务的待利用数据;其中,所述待利用数据为基于所述目标视频数据所确定的数据;
业务处理模块605,用于按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理。
可选的,所述数据获取模块,包括:
预配置处理子模块,用于对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据。
可选的,所述帧率调整模块,具体用于将所述视频数据转换为具有第一帧率的视频数据,作为目标视频数据;其中,所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率;
可选的,所述帧率调整模块,具体用于将所述视频数据转换为具有第一帧率的视频数据,作为目标视频数据;其中,所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率。
可选的,所述第一帧率大于所述目标帧率;
所述帧率调整模块,还用于在所述数据获取模块执行获取所述目标视频业务的待利用数据之后,所述业务处理模块执行按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理之前,将所述目标视频业务的待利用数据的帧率,转换为所述目标帧率;或者,在所述目标视频业务的待利用数据的确定方式包括对所述目标视频数据执行预配置处理,得到待利用数据的情况下,所述预配置处理包括:将所述目标视频数据的帧率转换为所述目标帧率。
相应的,所述预配置处理子模块,具体用于将所述目标视频数据的帧率转换为所述目标帧率。
可选的,所述帧率调整模块,具体用于将所述视频数据的帧率转换为所述目标帧率。
可选的,所述目标视频业务为多个;
所述数据转换模块,具体用于将所述视频流信号转换为多路视频数据;其中,每一路视频数据对应于一目标视频业务;
所述帧率调整模块,具体用于针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
可选的,所述所述帧率调整模块,具体用于将该目标视频业务对应的一路所述视频数据,转换为具有该视频业务对应的第二帧率的视频数据,作为该视频业务对应的目标视频数据;其中,每一目标视频业务对应的第二帧率:大于或等于该目标视频业务的目标帧率,且小于或等于该目标视频业务对应的一路所述视频数据在进行帧率调整之前的帧率。
可选的,该目标视频业务对应的第二帧率大于该目标视频业务的目标帧率;
所述帧率调整模块,还用于在所述数据获取模块执行获取该目标视频业务的待利用数据之后,所述业务处理模块执行按照该目标视频业务对应的数据处理方式,对该目标视频业务的待利用数据进行业务处理之前,将该目标视频业务的待利用数据的帧率,转换为所述目标帧率;或者,在所述目标视频业务的待利用数据的确定方式包括对该目标视频业务对应的目标视频数据执行预配置处理,得到该目标视频业务的待利用数据的情况下,所述预配置处理包括:将该目标视频业务对应的目标视频数据的帧率转换为该目标视频业务所需的目标帧率。
可选的,所述数据转换模块,具体用于将所述视频流信号转换为视频数据,并将所转换的视频数据分别写入多个预定缓冲区,得到多路所述视频数据;其中,每一预定缓冲区唯一对应一目标视频业务;
所述帧率调整模块,具体用于针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的预定缓冲区中的所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
可选的,所述目标视频业务为多个;
所述帧率调整模块,具体用于将所述视频数据转换为具有第二帧率的视频数据,作为目标视频数据;其中,所述第二帧率为大于或等于各目标视频业务所需目标帧率中最高的帧率,且小于或等于所述视频数据在帧率调整之前的帧率;
所述装置还包括:
数据写入模块,用于在所述帧率调整模块执行将所述视频数据转换为具有第三帧率的视频数据,作为目标视频数据的步骤之后,且在所述预配置处理子模块执行对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据的步骤之前,将所述目标视频数据作为各个目标视频业务共享的数据,写入各个目标视频业务共享的第一存储位置;
所述预配置处理子模块,具体用于针对每一目标视频业务,对所述第一存储位置中的所述目标视频数据执行预配置处理,得到该目标视频数据对应的待利用数据;其中,所述预配置处理包括:将该目标视频数据的帧率转换为该目标视频业务所需的目标帧率。
可选的,所述帧率调整模块,包括:
视频帧确定子模块,用于按照第一帧率,从所述视频数据中确定待抽取的视频帧;所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率;
视频帧抽取子模块,用于抽取所确定的视频帧,得到帧率为所述第一帧率的视频数据,作为针对所述目标视频业务的目标视频数据。
可选的,所述视频帧确定子模块,包括:
时长计算单元,用于计算所述第一帧率对应的帧间时长;
第一确定单元,用于按照所述帧间时长,从所述视频数据中,确定待抽取的视频帧。
可选的,所述视频帧确定单元,具体用于每间隔所述帧间时长,从所述视频数据中确定一个视频帧,作为待抽取的视频帧。
可选的,所述视频帧确定子模块,包括:
比值计算单元,用于计算所述视频数据的原始帧率与所述第一帧率的比值,作为帧间隔参数;
第二确定单元,用于针对所述视频数据中的每一视频帧,基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧。
可选的,所述视频数据中各帧视频具有帧序号,且各帧的帧序号构成等差序列;
所述第二确定单元,具体用于确定该视频帧的帧序号,以及在该视频帧之前,所述视频数据中已作为待抽取的视频帧的目标数量;计算帧间隔参数、所述等差序列的公差以及所述目标数量的乘积;若所述乘积小于该视频帧的帧序号,则判定该视频帧作为待抽取的视频帧。
本发明实施例上述视频数据处理装置,由于VI单元可以基于所述目标帧率,对所述视频数据进行帧率调整,从而可以使得VI单元可以输出适用于目标视频业务的目标视频数据,有效提高目标视频数据中被利用部分的占比,从而可以减少录像机中针对视频业务所存在的资源浪费。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现上述视频数据处理方法步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一视频数据处理方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一视频数据处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (34)

1.一种录像机,其特征在于,所述录像机包括视频输入VI单元和至少一个业务处理单元;每一业务处理单元用于处理视频业务;
所述VI单元,用于获取预先配置的业务信息,其中,所述业务信息包括待执行的目标视频业务所需的目标帧率;当接收到待处理的视频流信号时,将所述视频流信号转换为视频数据;基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,并将所述目标视频数据写入所述目标视频业务对应的第一存储位置;其中,所述目标视频业务对应的第一存储位置为预先为所述VI单元申请的、用于存储所述目标视频业务的数据的存储位置;
所述目标视频业务对应的业务处理单元,用于获取针对所述目标视频业务的待利用数据,并按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理,其中,所述待利用数据为基于所述目标视频业务对应的指定存储位置中的目标视频数据所确定的,所述指定存储位置为所述目标视频业务对应的第一存储位置。
2.根据权利要求1所述的录像机,其特征在于,所述目标视频业务对应的业务处理单元获取针对所述目标视频业务的待利用数据,包括:
从所述指定存储位置中,读取所述目标视频数据,作为针对所述目标视频业务的待利用数据。
3.根据权利要求1所述的录像机,其特征在于,所述录像机还包括:图像处理引擎VPE单元;
所述VPE单元,用于在检测到所述目标视频业务对应的第一指示信息的情况下,从所述指定存储位置中读取所述目标视频数据,并对所述目标视频数据执行预配置处理,以及将处理后的所述目标视频数据,写入到所述目标视频业务对应的第二存储位置;
其中,所述目标视频业务对应的第二存储位置为预先为所述VPE单元申请的、用于存储所述目标视频业务的数据的存储位置;所述目标视频业务对应的第一指示信息包括:用于表征在执行所述目标视频业务时所涉及的各单元中包含有所述VPE单元的信息;
所述目标视频业务对应的业务处理单元获取针对所述目标视频业务的待利用数据,包括:
在检测到所述目标视频业务对应的所述第一指示信息的情况下,从所述目标视频业务对应的第二存储位置中,读取所述目标视频数据,作为针对所述目标视频业务的待利用数据;和/或,
在检测到所述目标视频业务对应的第二指示信息的情况下,从所述指定存储位置中,读取所述目标视频数据,作为针对所述目标视频业务的待利用数据;
其中,所述目标视频业务对应的第二指示信息包括:用于表征在执行所述目标视频业务时所涉及的各单元中未包含有所述VPE单元的信息。
4.根据权利要求1-3任一项所述的录像机,其特征在于,所述VI单元基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据转换为具有第一帧率的视频数据,作为目标视频数据;其中,所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率。
5.根据权利要求4所述的录像机,其特征在于,所述第一帧率大于所述目标帧率;
所述目标视频业务对应的业务处理单元,还用于在按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理之前,将所述目标视频业务的待利用数据的帧率转换为所述目标帧率;
或者,
在所述录像机还包括用于对所述指定存储位置中的目标视频数据进行预配置处理的VPE单元的情况下,所述预配置处理包括将所述目标视频数据的帧率转换为所述目标帧率;
其中,所述预配置处理后的目标视频数据存储于所述目标视频业务对应的第二存储位置,且所述第二存储位置中的目标视频数据作为针对所述目标视频业务的待利用数据。
6.根据权利要求1-3任一项所述的录像机,其特征在于,所述目标视频业务为多个;
所述VI单元将所述视频流信号转换为视频数据,包括:
将所述视频流信号转换为多路视频数据;其中,每一路视频数据对应于一目标视频业务;
所述VI单元基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
7.根据权利要求6所述的录像机,其特征在于,所述VI单元基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据,包括:将该目标视频业务对应的一路所述视频数据,转换为具有该视频业务对应的第二帧率的视频数据,作为该视频业务对应的目标视频数据;其中,每一目标视频业务对应的第二帧率:大于或等于该目标视频业务的目标帧率,且小于或等于该目标视频业务对应的一路所述视频数据在进行帧率调整之前的帧率。
8.根据权利要求7所述的录像机,其特征在于,该目标视频业务对应的第二帧率大于该目标视频业务的目标帧率;
该目标视频业务对应的业务处理单元,还用于在按照该目标视频业务对应的数据处理方式,对该目标视频业务的待利用数据进行业务处理之前,将该视频业务的待利用数据的帧率转换为该目标视频业务的目标帧率;
或者,
在所述录像机还包括:用于对该目标视频业务对应的指定存储位置中、该目标视频业务对应的目标视频数据进行预配置处理的VPE单元的情况下,所述预配置处理包括将该目标视频业务对应的目标视频数据的帧率转换为该目标视频业务所需的目标帧率;
其中,所述预配置处理后的目标视频数据存储于该目标视频业务对应的第二存储位置,且所述第二存储位置中的目标视频数据作为针对该目标视频业务的待利用数据。
9.根据权利要求6所述的录像机,其特征在于,所述VI单元将所述视频流信号转换为多路视频数据,包括:
将所述视频流信号转换为视频数据,并将所转换的视频数据分别写入多个预定缓冲区,得到多路所述视频数据;其中,每一预定缓冲区唯一对应一目标视频业务;
所述针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据,包括:
针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的预定缓冲区中的所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
10.根据权利要求3所述的录像机,其特征在于,所述目标视频业务为多个;
所述VI单元基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据转换为具有第三帧率的视频数据,作为目标视频数据;其中,所述第三帧率为大于或等于各目标视频业务所需目标帧率中最高的帧率,且小于或等于所述视频数据在帧率调整之前的帧率;
所述VI单元将所述目标视频数据写入所述目标视频业务对应的第一存储位置,包括:
将所述目标视频数据作为各个目标视频业务共享的数据,写入各个目标视频业务共享的第一存储位置;
所述VPE单元对所述目标视频数据执行预配置处理,以及将处理后的所述目标视频数据,写入到所述目标视频业务对应的第二存储位置,包括:
针对每一目标视频业务,从所述第一存储位置中读取所述目标视频数据,对所述第一存储位置中的所述目标视频数据执行预配置处理,并将处理后的目标视频数据写入该目标视频业务对应的第二存储位置;其中,所述预配置处理包括:将所述目标视频数据的帧率转换为该目标视频业务所需的目标帧率。
11.根据权利要求3所述的录像机,其特征在于,所述目标视频业务对应的第一指示信息为:在所述VI单元不具有处理得到所述目标视频业务所需视频数据的能力的情况下所设定的;
所述目标视频业务对应的第二指示信息为:在所述VI单元具有处理得到所述目标视频业务所需视频数据的情况下能力时所设定的。
12.根据权利要求1所述的录像机,其特征在于,
所述VI单元基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
按照第一帧率,从所述视频数据中确定待抽取的视频帧;所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率;
抽取所确定的视频帧,得到帧率为所述第一帧率的视频数据,作为针对所述目标视频业务的目标视频数据。
13.根据权利要求12所述的录像机,其特征在于,所述VI单元按照第一帧率,从所述视频数据中确定待抽取的视频帧,包括:
计算第一帧率对应的帧间时长;
按照所述帧间时长,从所述视频数据中,确定待抽取的视频帧。
14.根据权利要求13所述的录像机,其特征在于,所述VI单元按照所述帧间时长,从所述视频数据中,确定待抽取的视频帧,包括:
每间隔所述帧间时长,从所述视频数据中确定一个视频帧,作为待抽取的视频帧。
15.根据权利要求12所述的录像机,其特征在于,所述VI单元按照第一帧率,从所述视频数据中确定待抽取的视频帧,包括:
计算所述视频数据的原始帧率与第一帧率的比值,作为帧间隔参数;
针对所述视频数据中的每一视频帧,基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧。
16.根据权利要求15所述的录像机,其特征在于,所述视频数据中各帧视频具有帧序号,且各帧的帧序号构成等差序列;
所述VI单元基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧,包括:
确定该视频帧的帧序号,以及在该视频帧之前,所述视频数据中已作为待抽取的视频帧的目标数量;
计算帧间隔参数、所述等差序列的公差以及所述目标数量的乘积;
若所述乘积小于该视频帧的帧序号,则判定该视频帧作为待抽取的视频帧。
17.一种视频数据处理方法,其特征在于,应用于录像机,所述方法包括:
获取预先配置的业务信息,其中,所述业务信息包括待执行的目标视频业务所需的目标帧率;
当接收到待处理的视频流信号时,将所述视频流信号转换为视频数据;
基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据;
获取所述目标视频业务的待利用数据;其中,所述待利用数据为基于所述目标视频数据所确定的数据;
按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理。
18.根据权利要求17所述的方法,其特征在于,所述目标视频业务的待利用数据的确定方式,包括:
对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据。
19.根据权利要求17或18项所述的方法,其特征在于,所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据转换为具有第一帧率的视频数据,作为目标视频数据;其中,所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率。
20.根据权利要求19所述的方法,其特征在于,所述第一帧率大于所述目标帧率;
所述获取所述目标视频业务的待利用数据之后,所述按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理之前,还包括:
将所述目标视频业务的待利用数据的帧率,转换为所述目标帧率;
或者,
在所述目标视频业务的待利用数据的确定方式包括对所述目标视频数据执行预配置处理,得到待利用数据的情况下,所述预配置处理包括:将所述目标视频数据的帧率转换为所述目标帧率。
21.根据权利要求17所述的方法,其特征在于,所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据的帧率转换为所述目标帧率。
22.根据权利要求17所述的方法,其特征在于,所述目标视频业务为多个;
所述将所述视频流信号转换为视频数据,包括:
将所述视频流信号转换为多路视频数据;其中,每一路视频数据对应于一目标视频业务;
所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
23.根据权利要求22所述的方法,其特征在于,所述基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据,包括:
将该目标视频业务对应的一路所述视频数据,转换为具有该视频业务对应的第二帧率的视频数据,作为该视频业务对应的目标视频数据;其中,每一目标视频业务对应的第二帧率:大于或等于该目标视频业务的目标帧率,且小于或等于该目标视频业务对应的一路所述视频数据在进行帧率调整之前的帧率。
24.根据权利要求23所述的方法,其特征在于,该目标视频业务对应的第二帧率大于该目标视频业务的目标帧率;
所述获取该目标视频业务的待利用数据之后,所述按照该目标视频业务对应的数据处理方式,对该目标视频业务的待利用数据进行业务处理之前,还包括:将该目标视频业务的待利用数据的帧率,转换为所述目标帧率;
或者,
在所述目标视频业务的待利用数据的确定方式包括对该目标视频业务对应的目标视频数据执行预配置处理,得到该目标视频业务的待利用数据的情况下,所述预配置处理包括:将该目标视频业务对应的目标视频数据的帧率转换为该目标视频业务所需的目标帧率。
25.根据权利要求22所述的方法,其特征在于,所述将所述视频流信号转换为多路视频数据,包括:
将所述视频流信号转换为视频数据,并将所转换的视频数据分别写入多个预定缓冲区,得到多路所述视频数据;其中,每一预定缓冲区唯一对应一目标视频业务;
所述针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的一路所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据,包括:
针对每一目标视频业务,基于该目标视频业务的目标帧率,对该目标视频业务对应的预定缓冲区中的所述视频数据进行帧率调整,得到该视频业务对应的目标视频数据。
26.根据权利要求17所述的方法,其特征在于,所述目标视频业务为多个;
所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
将所述视频数据转换为具有第二帧率的视频数据,作为目标视频数据;其中,所述第二帧率为大于或等于各目标视频业务所需目标帧率中最高的帧率,且小于或等于所述视频数据在帧率调整之前的帧率;
在所述将所述视频数据转换为具有所述第二帧率的视频数据,作为目标视频数据之后,且在所述对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据之前,所述方法还包括:
将所述目标视频数据作为各个目标视频业务共享的数据,写入各个目标视频业务共享的第一存储位置;
所述对所述目标视频数据执行预配置处理,得到所述目标视频数据对应的待利用数据,包括:
针对每一目标视频业务,对所述第一存储位置中的所述目标视频数据执行预配置处理,得到该目标视频数据对应的待利用数据;其中,所述预配置处理包括:将该目标视频数据的帧率转换为该目标视频业务所需的目标帧率。
27.根据权利要求17所述的方法,其特征在于,所述基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据,包括:
按照第一帧率,从所述视频数据中确定待抽取的视频帧;所述第一帧率大于或等于所述目标帧率,且小于或等于所述视频数据在进行帧率调整之前的帧率;
抽取所确定的视频帧,得到帧率为所述第一帧率的视频数据,作为针对所述目标视频业务的目标视频数据。
28.根据权利要求27所述的方法,其特征在于,所述按照第一帧率,从所述视频数据中确定待抽取的视频帧,包括:
计算第一帧率对应的帧间时长;
按照所述帧间时长,从所述视频数据中,确定待抽取的视频帧。
29.根据权利要求28所述的方法,其特征在于,所述按照所述帧间时长,从所述视频数据中,确定待抽取的视频帧,包括:
每间隔所述帧间时长,从所述视频数据中确定一个视频帧,作为待抽取的视频帧。
30.根据权利要求27所述的方法,其特征在于,所述按照第一帧率,从所述视频数据中确定待抽取的视频帧,包括:
计算所述视频数据的原始帧率与第一帧率的比值,作为帧间隔参数;
针对所述视频数据中的每一视频帧,基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧。
31.根据权利要求30所述的方法,其特征在于,所述视频数据中各帧视频具有帧序号,且各帧的帧序号构成等差序列;
所述基于该帧间隔参数,确定该视频帧是否为待抽取的视频帧,包括:
确定该视频帧的帧序号,以及在该视频帧之前,所述视频数据中已作为待抽取的视频帧的目标数量;
计算帧间隔参数、所述等差序列的公差以及所述目标数量的乘积;
若所述乘积小于该视频帧的帧序号,则判定该视频帧作为待抽取的视频帧。
32.一种视频数据处理装置,其特征在于,应用于录像机,所述装置包括:
信息获取模块,用于获取预先配置的业务信息,其中,所述业务信息包括待执行的目标视频业务所需的目标帧率;
数据转换模块,用于当接收到待处理的视频流信号时,将所述视频流信号转换为视频数据;
帧率调整模块,用于基于所述目标帧率,对所述视频数据进行帧率调整,得到目标视频数据;
数据获取模块,用于获取所述目标视频业务的待利用数据;其中,所述待利用数据为基于所述目标视频数据所确定的数据;
业务处理模块,用于按照所述目标视频业务对应的数据处理方式,对所述待利用数据进行业务处理。
33.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求17-31任一所述的方法步骤。
34.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求17-31任一项所述的方法步骤。
CN202210108841.9A 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备 Active CN114422734B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202311783171.1A CN117978940A (zh) 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备
CN202210108841.9A CN114422734B (zh) 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210108841.9A CN114422734B (zh) 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311783171.1A Division CN117978940A (zh) 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN114422734A true CN114422734A (zh) 2022-04-29
CN114422734B CN114422734B (zh) 2023-12-01

Family

ID=81278612

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311783171.1A Pending CN117978940A (zh) 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备
CN202210108841.9A Active CN114422734B (zh) 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202311783171.1A Pending CN117978940A (zh) 2022-01-28 2022-01-28 一种录像机、视频数据处理方法、装置及电子设备

Country Status (1)

Country Link
CN (2) CN117978940A (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101160630A (zh) * 2006-02-14 2008-04-09 华为技术有限公司 一种实现多媒体录制的方法、系统及媒体资源处理设备
US20130279871A1 (en) * 2008-01-12 2013-10-24 Innotive Inc. Korea Video processing system and video processing method
US20160249011A1 (en) * 2015-02-25 2016-08-25 Htc Corporation Recording device, recording control method and non-transitory computer readable medium thereof
US20170075416A1 (en) * 2015-09-10 2017-03-16 Google Inc. Playing spherical video on a limited bandwidth connection
US20170195617A1 (en) * 2015-12-18 2017-07-06 Le Holdings (Beijing) Co., Ltd. Image processing method and electronic device
CN107295285A (zh) * 2017-08-11 2017-10-24 腾讯科技(深圳)有限公司 视频数据的处理方法、处理装置及存储介质
WO2018076370A1 (zh) * 2016-10-31 2018-05-03 华为技术有限公司 一种视频帧的处理方法及设备
CN109803144A (zh) * 2018-12-25 2019-05-24 北京凯视达科技有限公司 视频编解码方法、装置、系统及电子设备
CN110290421A (zh) * 2019-08-01 2019-09-27 北京达佳互联信息技术有限公司 帧率调整方法、装置、计算机设备及存储介质
CN111835955A (zh) * 2019-04-15 2020-10-27 杭州海康威视数字技术股份有限公司 一种数据获取方法及装置
CN113163260A (zh) * 2021-03-09 2021-07-23 北京百度网讯科技有限公司 一种视频帧输出控制方法、装置及电子设备
CN113225619A (zh) * 2021-04-23 2021-08-06 深圳创维-Rgb电子有限公司 帧率自适应方法、装置、设备及可读存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101160630A (zh) * 2006-02-14 2008-04-09 华为技术有限公司 一种实现多媒体录制的方法、系统及媒体资源处理设备
US20130279871A1 (en) * 2008-01-12 2013-10-24 Innotive Inc. Korea Video processing system and video processing method
US20160249011A1 (en) * 2015-02-25 2016-08-25 Htc Corporation Recording device, recording control method and non-transitory computer readable medium thereof
US20170075416A1 (en) * 2015-09-10 2017-03-16 Google Inc. Playing spherical video on a limited bandwidth connection
US20170195617A1 (en) * 2015-12-18 2017-07-06 Le Holdings (Beijing) Co., Ltd. Image processing method and electronic device
WO2018076370A1 (zh) * 2016-10-31 2018-05-03 华为技术有限公司 一种视频帧的处理方法及设备
CN107295285A (zh) * 2017-08-11 2017-10-24 腾讯科技(深圳)有限公司 视频数据的处理方法、处理装置及存储介质
CN109803144A (zh) * 2018-12-25 2019-05-24 北京凯视达科技有限公司 视频编解码方法、装置、系统及电子设备
CN111835955A (zh) * 2019-04-15 2020-10-27 杭州海康威视数字技术股份有限公司 一种数据获取方法及装置
CN110290421A (zh) * 2019-08-01 2019-09-27 北京达佳互联信息技术有限公司 帧率调整方法、装置、计算机设备及存储介质
CN113163260A (zh) * 2021-03-09 2021-07-23 北京百度网讯科技有限公司 一种视频帧输出控制方法、装置及电子设备
CN113225619A (zh) * 2021-04-23 2021-08-06 深圳创维-Rgb电子有限公司 帧率自适应方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN117978940A (zh) 2024-05-03
CN114422734B (zh) 2023-12-01

Similar Documents

Publication Publication Date Title
CN111263208B (zh) 一种画面合成方法、装置、电子设备及存储介质
US8995792B2 (en) Image processor, image processing method, and digital camera
JP6854795B2 (ja) 補助フレームをサポートするビデオコーディングフォーマットでビデオストリームを符号化するための方法およびエンコーダ
US20090290645A1 (en) System and Method for Using Coded Data From a Video Source to Compress a Media Signal
US7675550B1 (en) Camera with high-quality still capture during continuous video capture
EP2629503B1 (en) Apparatus and method for transmitting a frame image of a camera
US9386287B2 (en) Image processor which rearranges color information, image processing method, and digital camera
US10003767B2 (en) Image processing apparatus and image processing method
US9161030B1 (en) Graphics overlay system for multiple displays using compressed video
US7940308B2 (en) Image processing system, image pickup apparatus, image pickup method, image reproducing apparatus, and image reproducing method
US20150109436A1 (en) Smart Dual-View High-Definition Video Surveillance System
US9053752B1 (en) Architecture for multiple graphics planes
US8483389B1 (en) Graphics overlay system for multiple displays using compressed video
CN114125448B (zh) 视频编码方法、解码方法及相关装置
KR101577409B1 (ko) 데이터 저장용량을 절약할 수 있도록 촬영 영역별 차별적 해상도를 적용한 cctv 시스템
EP3192250B1 (en) Image processing apparatus and image processing method
US8718451B1 (en) Camera with high-quality still capture during continuous video capture
CN115442554A (zh) 一种录像机、视频数据处理方法、装置
CN111406404A (zh) 获得视频文件的压缩方法、解压缩方法、系统及存储介质
CN114422734A (zh) 一种录像机、视频数据处理方法、装置及电子设备
CN114422735A (zh) 一种录像机、视频数据处理方法、装置及电子设备
CN112911299A (zh) 一种视频码率控制方法、装置、电子设备和存储介质
JP5131954B2 (ja) ビデオレコーダ並びにカメラシステム
CN117812389A (zh) 一种录像机、视频预览方法及电子设备
CN117812390A (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