CN112004112A - 硬件视频编码器的验证方法、装置、电子设备及存储介质 - Google Patents

硬件视频编码器的验证方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112004112A
CN112004112A CN202010632440.4A CN202010632440A CN112004112A CN 112004112 A CN112004112 A CN 112004112A CN 202010632440 A CN202010632440 A CN 202010632440A CN 112004112 A CN112004112 A CN 112004112A
Authority
CN
China
Prior art keywords
video
code stream
frame
hardware
video frame
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.)
Pending
Application number
CN202010632440.4A
Other languages
English (en)
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.)
Beijing Boya Huishi Intelligent Technology Research Institute Co ltd
Original Assignee
Beijing Boya Huishi Intelligent Technology Research Institute 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 Beijing Boya Huishi Intelligent Technology Research Institute Co ltd filed Critical Beijing Boya Huishi Intelligent Technology Research Institute Co ltd
Priority to CN202010632440.4A priority Critical patent/CN112004112A/zh
Publication of CN112004112A publication Critical patent/CN112004112A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提出一种硬件视频编码器的验证方法、装置、电子设备及存储介质,该方法包括:从随机视频源获取连续的视频帧序列;通过硬件视频编码器和预设的软件视频编码器分别对视频帧序列中的每个视频帧进行压缩编码,得到每个视频帧对应的第一视频码流和第二视频码流;根据每个视频帧对应的第一视频码流和第二视频码流,对硬件视频编码器进行逐帧验证。本申请获取随机产生的连续的视频帧,每一帧编码后立刻进行验证,实现对硬件视频编码器进行不间断的验证,验证所采用的视频帧数据量大,且数据产生是随机的,提高了验证过程的条件覆盖率,确保对硬件视频编码器进行充分验证,有利于减少硬件视频编码器存在的设计错误,提高硬件视频编码器的产品良率。

Description

硬件视频编码器的验证方法、装置、电子设备及存储介质
技术领域
本申请属于视频处理技术领域,具体涉及一种硬件视频编码器的验证方法、装置、电子设备及存储介质。
背景技术
硬件视频编码器是指能够对视频进行压缩编码的设备。在开发设计出硬件视频编码器之后,需要对硬件视频编码器进行验证,以确定硬件视频编码器是否存在设计错误。
目前,相关技术中设计出硬件视频编码器之后,通常采用一些预先设定的标准视频来对硬件视频编码器进行验证。但所采用的标准视频的数据量固定,且数据量少。通过这些标准视频来验证硬件视频编码器,验证的条件覆盖率低,边界条件覆盖不充分,导致硬件视频编码器的一些设计错误无法被验证出来。
发明内容
本申请提出一种硬件视频编码器的验证方法、装置、电子设备及存储介质,获取随机产生的连续的视频帧,每一帧编码后立刻进行验证,实现对硬件视频编码器进行不间断的验证,验证所采用的视频帧数据量大,且数据产生是随机的,提高了验证过程的条件覆盖率,确保对硬件视频编码器进行充分验证,有利于减少硬件视频编码器存在的设计错误。
本申请第一方面实施例提出了一种硬件视频编码器的验证方法,所述方法包括;
从随机视频源获取连续的视频帧序列;
通过待验证的硬件视频编码器和预设的软件视频编码器分别对所述视频帧序列中的每个视频帧进行压缩编码,得到所述每个视频帧对应的第一视频码流和第二视频码流;
根据所述每个视频帧对应的第一视频码流和第二视频码流,对所述硬件视频编码器进行逐帧验证。
在本申请的一些实施例中,所述通过待验证的硬件视频编码器和预设的软件视频编码器分别对所述视频帧序列中的每个视频帧进行压缩编码,得到所述每个视频帧对应的第一视频码流和第二视频码流,包括:
通过处理器将当前视频帧经由第一颜色编码管道传输给待验证的硬件视频编码器;以及通过所述处理器将所述当前视频帧经由第二颜色编码管道传输给预设的软件视频编码器;
通过所述硬件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第一视频码流;通过所述软件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第二视频码流;
通过所述硬件视频编码器将所述第一视频码流经由第一码流管道传输给所述处理器;通过所述软件视频编码器将所述第二视频码流经由第二码流管道传输给所述处理器。
在本申请的一些实施例中,所述根据所述每个视频帧对应的第一视频码流和第二视频码流,对所述硬件视频编码器进行逐帧验证,包括:
比较当前视频帧对应的第一视频码流和第二视频码流是否相同;
若所述当前视频帧对应的第一视频码流和第二视频码流相同,则从所述视频帧序列中获取下一个视频帧,进行所述下一个视频帧的验证过程;
若所述当前视频帧对应的第一视频码流和第二视频码流不相同,则存储所述当前视频帧、所述第一视频码流和所述第二视频码流。
在本申请的一些实施例中,所述存储所述当前视频帧、所述第一视频码流和所述第二视频码流之后,还包括:
根据所述当前视频帧、所述第一视频码流和所述第二视频码流,确定所述硬件视频编码器中存在的设计错误;
修正所述硬件视频编码器中存在的所述设计错误。
在本申请的一些实施例中,所述随机视频源包括网络、摄像头或采集卡。
本申请第二方面的实施例提供了一种硬件视频编码器的验证装置,所述装置包括;
获取模块,用于从随机视频源获取连续的视频帧序列;
压缩编码模块,用于通过待验证的硬件视频编码器和预设的软件视频编码器分别对所述视频帧序列中的每个视频帧进行压缩编码,得到所述每个视频帧对应的第一视频码流和第二视频码流;
验证模块,用于根据所述每个视频帧对应的第一视频码流和第二视频码流,对所述硬件视频编码器进行逐帧验证。
在本申请的一些实施例中,所述压缩编码模块,用于通过处理器将当前视频帧经由第一颜色编码管道传输给待验证的硬件视频编码器;以及通过所述处理器将所述当前视频帧经由第二颜色编码管道传输给预设的软件视频编码器;通过所述硬件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第一视频码流;通过所述软件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第二视频码流;通过所述硬件视频编码器将所述第一视频码流经由第一码流管道传输给所述处理器;通过所述软件视频编码器将所述第二视频码流经由第二码流管道传输给所述处理器。
在本申请的一些实施例中,所述验证模块,用于比较当前视频帧对应的第一视频码流和第二视频码流是否相同;若所述当前视频帧对应的第一视频码流和第二视频码流相同,则从所述视频帧序列中获取下一个视频帧,进行所述下一个视频帧的验证过程;若所述当前视频帧对应的第一视频码流和第二视频码流不相同,则存储所述当前视频帧、所述第一视频码流和所述第二视频码流。
本申请第三方面的实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序以实现上述第一方面所述的方法。
本申请第四方面的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行实现上述第一方面所述的方法。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
本申请实施例从随机视频源获取连续的视频帧序列,对于视频帧序列中的每个视频帧,通过待验证的硬件视频编码器和预设的软件视频编码器同步对该视频帧进行压缩编码,并依据该视频帧的压缩编码结果对待验证的硬件视频编码器进行验证。如此获取随机产生的连续的视频帧,每一帧编码后立刻进行验证,实现对硬件视频编码器进行不间断的验证,验证所采用的视频帧数据量大,且数据产生是随机的,提高了验证过程的条件覆盖率,确保对硬件视频编码器进行充分验证,有利于减少硬件视频编码器存在的设计错误,提高硬件视频编码器的产品良率。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本申请的实践了解到。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。
在附图中:
图1示出了本申请一实施例所提供的一种硬件视频编码器的验证方法的流程图;
图2示出了本申请一实施例所提供的一种硬件视频编码器的验证方法所基于的硬件结构示意图;
图3示出了本申请一实施例所提供的一种硬件视频编码器的验证方法所基于的软件结构示意图;
图4示出了本申请一实施例所提供的一种硬件视频编码器的验证原理的示意图;
图5示出了本申请一实施例所提供的一种硬件视频编码器的验证装置的结构示意图;
图6示出了本申请一实施例所提供的一种电子设备的结构示意图;
图7示出了本申请一实施例所提供的一种存储介质的示意图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。
下面结合附图来描述根据本申请实施例提出的一种硬件视频编码器的验证方法、装置、电子设备及存储介质。
本申请实施例提供了一种硬件视频编码器的验证方法,该方法从随机视频源获取连续的视频帧序列,对于视频帧序列中的每个视频帧,通过待验证的硬件视频编码器和预设的软件视频编码器同步对该视频帧进行压缩编码,并依据该视频帧的压缩编码结果对待验证的硬件视频编码器进行验证。如此获取随机产生的连续的视频帧,每一帧编码后立刻进行验证,实现对硬件视频编码器进行不间断的验证,验证所采用的视频帧数据量大,且数据产生是随机的,提高了验证过程的条件覆盖率,确保对硬件视频编码器进行充分验证,有利于减少硬件视频编码器存在的设计错误,提高硬件视频编码器的产品良率。
参见图1,该方法具体包括以下步骤;
步骤101:从随机视频源获取连续的视频帧序列。
上述随机视频源包括网络、摄像头或采集卡等连续视频发生设备。随机视频源产生能够连续地随机产生视频帧,即上述视频帧序列包括的视频帧是随机且连续的。
本申请实施例的执行主体为能够对硬件视频编码器进行验证的终端,如图2所示的硬件结构图,该终端包括处理器,处理器与上述随机视频源连接,接收随机视频源传输的视频帧。该处理器还与FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)验证板连接,该FPGA验证板中包含待验证的硬件视频编码器。该处理器中还包括预设的软件视频编码器,预设的软件视频编码器可以为Cmodel软编码程序。
上述处理器的功能包括从随机视频源采集视频帧;向硬件视频编码器和软件视频编码器分发采集的视频帧;通过预设的软件视频编码器对视频帧进行软编码;分别接收硬件视频编码器和软件视频编码器对视频帧压缩编码得到的视频码流;对接收的两个视频码流进行比对验证;加载FPGA验证板的网表;以及,启动FPGA验证板的操作系统。
步骤102:通过待验证的硬件视频编码器和预设的软件视频编码器分别对视频帧序列中的每个视频帧进行压缩编码,得到每个视频帧对应的第一视频码流和第二视频码流。
处理器从随机视频源获取到当前视频帧后,将当前视频帧经由第一颜色编码管道传输给待验证的硬件视频编码器。以及处理器将当前视频帧经由第二颜色编码管道传输给预设的软件视频编码器。其中,第一颜色编码管道和第二颜色编码管道均可以为先进先出队列。
硬件视频编码器接收到处理器传输的当前视频帧后,对当前视频帧进行硬编码,得到当前视频帧对应的第一视频码流。硬件视频编码器将第一视频码流经由第一码流管道传输给处理器。软件视频编码器接收到处理器传输的当前视频帧后,对当前视频帧进行软编码,得到当前视频帧对应的第二视频码流。软件视频编码器将第二视频码流经由第二码流管道传输给处理器。其中,第一码流管道和第二码流管道均可以为先进先出队列。
对于从随机视频源获取的每个视频帧,均可以按照上述方式分发给硬件视频编码器和软件视频编码器,通过硬件视频编码器和软件视频编码器分别进行压缩编码,得到每个视频帧对应的第一视频码流和第二视频码流。
步骤103:根据每个视频帧对应的第一视频码流和第二视频码流,对硬件视频编码器进行逐帧验证。
通过上述步骤102的操作得到当前视频帧对应的第一视频码流和第二视频码流之后,比较当前视频帧对应的第一视频码流和第二视频码流是否相同;若当前视频帧对应的第一视频码流和第二视频码流相同,则当前视频帧验证通过,继续从随机视频源采集的视频帧序列中获取下一个视频帧,按照步骤101-103的操作进行下一个视频帧的验证过程。
若比较出当前视频帧对应的第一视频码流和第二视频码流不相同,则当前视频帧验证失败,表明代验证的硬件视频编码器中存在设计错误,本申请实施例存储当前视频帧、第一视频码流和第二视频码流,以便后续依据当前视频帧、第一视频码流和第二视频码流进行错误追踪。本申请实施例还存储当前视频帧之前预设帧数的视频帧及其对应的第一视频码流和第二视频码流,以便后续依据这些数据分析硬件视频编码器存在的设计错误。预设帧数可以为100帧或150帧等。
对于从随机视频源获取的每个视频帧对应的第一视频码流和第二视频码流,都按照本步骤的方式进行验证,并在验证失败时存储对应的视频帧、第一视频码流和第二视频码流。
对于验证失败时存储的视频帧及其对应的第一视频码流和第二视频码流,本申请实施例还依据这些视频帧及对应的第一视频码流和第二视频码流进行错误修正。具体地,根据验证失败时存储的当前视频帧、第一视频码流和第二视频码流,对待验证的硬件视频编码器进行复现调试,确定硬件视频编码器中存在的设计错误,修正硬件视频编码器中存在的该设计错误。
为了便于理解本申请实施例提供的方法,下面结合附图进行具体说明。如图3所示的软件结构图,处理器中包括视频帧采集转换分发程序、软件视频编码器程序和码流比对程序。FPGA验证板中包括验证程序、编码API(Application Programming Interface,应用程序接口)、编码器驱动程序和硬件视频编码器。其中,视频帧采集转换分发程序用于从随机视频源采集视频帧,并分别发给FPGA验证板和软件视频编码器程序。软件视频编码器程序用于生成标准码流。验证程序用于调用硬件视频编码器对视频帧进行压缩编码。编码API用于为验证程序提供调用硬件视频编码器的函数库。编码器驱动程序是硬件视频编码器基于Linux的驱动程序,由编码API调用,支持多线程或进程访问。码流比对程序每次比对同一个视频帧对应的硬件编码的视频码流和软件编码的视频码流,比对出两个视频码流不一致时,保存硬件视频编码器的错误数据,同时保留当前预设帧数的编码数据和视频源数据。
如图4所示的验证原理图,随机视频源通过颜色编码管道将视频帧发送给处理器中的视频分发程序,视频分发程序通过第一颜色编码管道将视频帧发送给硬件视频编码器,通过第二颜色编码管道将视频帧发送给软件视频编码器。硬件视频编码器对视频帧进行压缩编码得到第一视频码流,通过第一码流管道将第一视频码流传输给码流比对程序。软件视频编码器对视频帧进行压缩编码得到第二视频码流,通过第二码流管道将第二视频码流传输给码流比对程序。
本申请实施例采用随机的视频帧验证硬件视频编码器的编码正确性。验证比对两路随机的视频帧的编码是否一致,一路使用硬件视频编码器编码,一路使用软件视频编码器编码。随机视频源可以使用摄像头或者采集卡等随机视频产生设备。编码后的视频码流由验证程序负责验证两路编码的一致性。由于视频帧来自摄像头或者采集卡等随机视频源,视频帧是随机的,数据量巨大。编码时对每个视频帧进行了编码正确性验证,并保留了验证失败时的视频帧和码流数据,通过复现可以调试追踪错误。
本申请实施例提供了一种硬件视频编码器的验证装置,该装置用于执行上述实施例所述的硬件视频编码器的验证方法,如图5所示,该装置包括;
获取模块501,用于从随机视频源获取连续的视频帧序列;
压缩编码模块502,用于通过待验证的硬件视频编码器和预设的软件视频编码器分别对视频帧序列中的每个视频帧进行压缩编码,得到每个视频帧对应的第一视频码流和第二视频码流;
验证模块503,用于根据每个视频帧对应的第一视频码流和第二视频码流,对硬件视频编码器进行逐帧验证。
上述压缩编码模块502,用于通过处理器将当前视频帧经由第一颜色编码颜色编码管道传输给待验证的硬件视频编码器;以及通过处理器将当前视频帧经由第二颜色编码管道传输给预设的软件视频编码器;通过硬件视频编码器对当前视频帧进行压缩编码,得到当前视频帧对应的第一视频码流;通过软件视频编码器对当前视频帧进行压缩编码,得到当前视频帧对应的第二视频码流;通过硬件视频编码器将第一视频码流经由第一码流管道传输给处理器;通过软件视频编码器将第二视频码流经由第二码流管道传输给处理器。
上述验证模块503,用于比较当前视频帧对应的第一视频码流和第二视频码流是否相同;若当前视频帧对应的第一视频码流和第二视频码流相同,则从视频帧序列中获取下一个视频帧,进行下一个视频帧的验证过程;若当前视频帧对应的第一视频码流和第二视频码流不相同,则存储当前视频帧、第一视频码流和第二视频码流。
该装置还包括:错误修正模块,用于根据当前视频帧、第一视频码流和第二视频码流,确定硬件视频编码器中存在的设计错误;修正硬件视频编码器中存在的设计错误。
上述随机视频源包括网络、摄像头或采集卡。
本申请的上述实施例提供的硬件视频编码器的验证装置与本申请实施例提供的硬件视频编码器的验证方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种与前述实施方式所提供的硬件视频编码器的验证方法对应的电子设备,以执行上硬件视频编码器的验证方法。本申请实施例不做限定。
请参考图6,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图6所示,所述电子设备2包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请前述任一实施方式所提供的硬件视频编码器的验证方法。
其中,存储器201可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线202可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述硬件视频编码器的验证方法可以应用于处理器200中,或者由处理器200实现。
处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
本申请实施例提供的电子设备与本申请实施例提供的硬件视频编码器的验证方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种与前述实施方式所提供的硬件视频编码器的验证方法对应的计算机可读存储介质,请参考图7,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的硬件视频编码器的验证方法。
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的硬件视频编码器的验证方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备有固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的虚拟机的创建装置中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种硬件视频编码器的验证方法,其特征在于,所述方法包括;
从随机视频源获取连续的视频帧序列;
通过待验证的硬件视频编码器和预设的软件视频编码器分别对所述视频帧序列中的每个视频帧进行压缩编码,得到所述每个视频帧对应的第一视频码流和第二视频码流;
根据所述每个视频帧对应的第一视频码流和第二视频码流,对所述硬件视频编码器进行逐帧验证。
2.根据权利要求1所述的方法,其特征在于,所述通过待验证的硬件视频编码器和预设的软件视频编码器分别对所述视频帧序列中的每个视频帧进行压缩编码,得到所述每个视频帧对应的第一视频码流和第二视频码流,包括:
通过处理器将当前视频帧经由第一颜色编码管道传输给待验证的硬件视频编码器;以及通过所述处理器将所述当前视频帧经由第二颜色编码管道传输给预设的软件视频编码器;
通过所述硬件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第一视频码流;通过所述软件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第二视频码流;
通过所述硬件视频编码器将所述第一视频码流经由第一码流管道传输给所述处理器;通过所述软件视频编码器将所述第二视频码流经由第二码流管道传输给所述处理器。
3.根据权利要求1所述的方法,其特征在于,所述根据所述每个视频帧对应的第一视频码流和第二视频码流,对所述硬件视频编码器进行逐帧验证,包括:
比较当前视频帧对应的第一视频码流和第二视频码流是否相同;
若所述当前视频帧对应的第一视频码流和第二视频码流相同,则从所述视频帧序列中获取下一个视频帧,进行所述下一个视频帧的验证过程;
若所述当前视频帧对应的第一视频码流和第二视频码流不相同,则存储所述当前视频帧、所述第一视频码流和所述第二视频码流。
4.根据权利要求3所述的方法,其特征在于,所述存储所述当前视频帧、所述第一视频码流和所述第二视频码流之后,还包括:
根据所述当前视频帧、所述第一视频码流和所述第二视频码流,确定所述硬件视频编码器中存在的设计错误;
修正所述硬件视频编码器中存在的所述设计错误。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述随机视频源包括网络、摄像头或采集卡。
6.一种硬件视频编码器的验证装置,其特征在于,所述装置包括;
获取模块,用于从随机视频源获取连续的视频帧序列;
压缩编码模块,用于通过待验证的硬件视频编码器和预设的软件视频编码器分别对所述视频帧序列中的每个视频帧进行压缩编码,得到所述每个视频帧对应的第一视频码流和第二视频码流;
验证模块,用于根据所述每个视频帧对应的第一视频码流和第二视频码流,对所述硬件视频编码器进行逐帧验证。
7.根据权利要求6所述的装置,其特征在于,
所述压缩编码模块,用于通过处理器将当前视频帧经由第一颜色编码管道传输给待验证的硬件视频编码器;以及通过所述处理器将所述当前视频帧经由第二颜色编码管道传输给预设的软件视频编码器;通过所述硬件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第一视频码流;通过所述软件视频编码器对所述当前视频帧进行压缩编码,得到所述当前视频帧对应的第二视频码流;通过所述硬件视频编码器将所述第一视频码流经由第一码流管道传输给所述处理器;通过所述软件视频编码器将所述第二视频码流经由第二码流管道传输给所述处理器。
8.根据权利要求6所述的装置,其特征在于,
所述验证模块,用于比较当前视频帧对应的第一视频码流和第二视频码流是否相同;若所述当前视频帧对应的第一视频码流和第二视频码流相同,则从所述视频帧序列中获取下一个视频帧,进行所述下一个视频帧的验证过程;若所述当前视频帧对应的第一视频码流和第二视频码流不相同,则存储所述当前视频帧、所述第一视频码流和所述第二视频码流。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序以实现如权利要求1-5任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行实现如权利要求1-5中任一项所述的方法。
CN202010632440.4A 2020-07-03 2020-07-03 硬件视频编码器的验证方法、装置、电子设备及存储介质 Pending CN112004112A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010632440.4A CN112004112A (zh) 2020-07-03 2020-07-03 硬件视频编码器的验证方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010632440.4A CN112004112A (zh) 2020-07-03 2020-07-03 硬件视频编码器的验证方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN112004112A true CN112004112A (zh) 2020-11-27

Family

ID=73467521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010632440.4A Pending CN112004112A (zh) 2020-07-03 2020-07-03 硬件视频编码器的验证方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112004112A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117395434A (zh) * 2023-12-07 2024-01-12 西安芯云半导体技术有限公司 硬件编解码调试方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420982A (zh) * 2011-10-31 2012-04-18 展讯通信(上海)有限公司 芯片及其验证方法和系统、处理器端
CN104768063A (zh) * 2015-04-07 2015-07-08 天脉聚源(北京)教育科技有限公司 一种视频编码方法及装置
US9379846B1 (en) * 2014-12-19 2016-06-28 Cadence Design Systems, Inc. System and method of encoding in a serializer/deserializer
CN105915890A (zh) * 2016-04-27 2016-08-31 山东大学 基于fpga的svac视频编解码芯片验证装置及方法
CN110740313A (zh) * 2019-10-25 2020-01-31 腾讯科技(深圳)有限公司 硬件编码能力检测方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420982A (zh) * 2011-10-31 2012-04-18 展讯通信(上海)有限公司 芯片及其验证方法和系统、处理器端
US9379846B1 (en) * 2014-12-19 2016-06-28 Cadence Design Systems, Inc. System and method of encoding in a serializer/deserializer
CN104768063A (zh) * 2015-04-07 2015-07-08 天脉聚源(北京)教育科技有限公司 一种视频编码方法及装置
CN105915890A (zh) * 2016-04-27 2016-08-31 山东大学 基于fpga的svac视频编解码芯片验证装置及方法
CN110740313A (zh) * 2019-10-25 2020-01-31 腾讯科技(深圳)有限公司 硬件编码能力检测方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117395434A (zh) * 2023-12-07 2024-01-12 西安芯云半导体技术有限公司 硬件编解码调试方法、装置、设备及存储介质
CN117395434B (zh) * 2023-12-07 2024-03-26 西安芯云半导体技术有限公司 硬件编解码调试方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN111160548B (zh) 计算装置以及计算方法
CN113190388B (zh) Tcp接口测试方法、介质、设备及装置
CN106506525A (zh) 用于在浏览器上播放视频流的方法及装置
CN105740088B (zh) 闪存数据纠错方法及装置
US9734008B2 (en) Error vector readout from a memory device
US10771792B2 (en) Encoding data arrays
CN111669577A (zh) 一种硬件解码检测方法、装置、电子设备及存储介质
CN116540963B (zh) 映射关系计算方法、颜色校准方法、装置及电子设备
CN112004112A (zh) 硬件视频编码器的验证方法、装置、电子设备及存储介质
CN106126366A (zh) 从存储器设备读出错误向量
CN114356680A (zh) 验证方法、装置及电子设备
CN115134629A (zh) 视频传输方法、系统、设备及存储介质
US11051080B2 (en) Method for improving video resolution and video quality, encoder, and decoder
CN107678967B (zh) 单元测试覆盖率生成方法、装置、可读存储介质及设备
US20190166373A1 (en) Image encoding/decoding method and apparatus and image processing equipment
CN115802054A (zh) 视频对齐方法及装置
CN113286140B (zh) 一种视频编解码测试方法、装置及存储介质
US10521133B2 (en) Method and apparatus for real-time blank page detection in data transmission
CN111026579B (zh) 一种数据检错能力的校验方法、装置、终端设备及介质
CN111010599B (zh) 一种处理多场景视频流的方法、装置及计算机设备
CN110647525B (zh) 一种基站数据的存储方法和装置
CN114666528A (zh) 图像数据误检方法、视频会议设备和存储介质
US8156410B2 (en) Fast debugging tool for CRC insertion in MPEG-2 video decoder
CN109769129B (zh) 一种汽车液晶仪表中的防解析失败的解码方法
CN110321274B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201127