CN113271493A - 视频流解码方法及计算机可读存储介质 - Google Patents

视频流解码方法及计算机可读存储介质 Download PDF

Info

Publication number
CN113271493A
CN113271493A CN202110366999.1A CN202110366999A CN113271493A CN 113271493 A CN113271493 A CN 113271493A CN 202110366999 A CN202110366999 A CN 202110366999A CN 113271493 A CN113271493 A CN 113271493A
Authority
CN
China
Prior art keywords
video stream
decoder
video
decoding
parameters
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
CN202110366999.1A
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.)
CETC 15 Research Institute
Original Assignee
CETC 15 Research Institute
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 CETC 15 Research Institute filed Critical CETC 15 Research Institute
Priority to CN202110366999.1A priority Critical patent/CN113271493A/zh
Publication of CN113271493A publication Critical patent/CN113271493A/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/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/44008Processing 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 operations for analysing video streams, e.g. detecting features or characteristics in the video stream

Landscapes

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

Abstract

本发明公开了一种视频流解码方法及计算机可读存储介质。视频流解码方法,包括:对视频流进行解析,获取视频流的视频参数;基于视频参数,为视频流匹配相应的解码器;利用匹配的解码器为对应的视频流进行解码;解码器适于与多路视频流相匹配。采用本发明,多路视频流可以仅通过一个解码器进行解码,可以减少设备资源占用,使设备端解码资源利用率最大化。相对一个解码器对应的一个视频流所占用的资源减低了百倍,解码视频流的路数从几十路提升到了几百路。

Description

视频流解码方法及计算机可读存储介质
技术领域
本发明涉及视频解码技术领域,尤其涉及一种视频流解码方法及计算机可读存储介质。
背景技术
视频解码已经被广泛应用,最常用的是CPU(Central Processing Unit)解码,它会随着视频路数的提升而增大CPU的占用,进而拖慢系统的整体性能。使用其他设备来代替CPU解码是趋势所在,如GPU(Graphics Processing Unit)、ARM(Advanced RISC Machine)等设备。设备端解码相对于CPU解码,虽然性能较高,但现有GPU解码器只针对一路视频流解码,且随着视频流路数增加,解码器资源占用越高,影响其他任务的处理,有限的设备资源限制了视频流的解码路数。
发明内容
本发明实施例提供一种视频流解码方法及计算机可读存储介质,用以解决现有技术中视频流解码资源利用率较低的问题。
根据本发明实施例的视频流解码方法,包括:
对视频流进行解析,获取所述视频流的视频参数;
基于所述视频参数,为所述视频流匹配相应的解码器;
利用匹配的解码器为对应的视频流进行解码;
所述解码器适于与多路视频流相匹配。
根据本发明的一些实施例,所述视频参数包括:编码格式及分辨率。
根据本发明的一些实施例,所述解码器包括:GPU,所述GPU适于解码编码格式为h264、分辨率为1920x1080的视频流。
根据本发明的一些实施例,基于所述视频参数,为所述视频流匹配相应的解码器,包括:
基于所述视频参数,在已创建的解码器中查找与所述视频参数对应的解码器;
若已创建的解码器中没有与所述视频参数对应的解码器,创建解码器,并基于所述视频参数设置新创建的解码器的解码参数。
根据本发明的一些实施例,所述利用匹配的解码器为对应的视频流进行解码,包括:
所述解码器采用异步解码方式对其匹配的多路视频流进行解码。
根据本发明的一些实施例,将所述视频流送入其匹配的解码器之前,清空该解码器的帧缓存队列。
根据本发明的一些实施例,所述利用匹配的解码器为对应的视频流进行解码,包括:
从所述视频流中获取关键帧,利用匹配的解码器对关键帧进行解码。
根据本发明的一些实施例,所述关键帧包括视频流的尾帧,当解码器对尾帧完成解码后,清空该解码器的帧缓存队列。
根据本发明的一些实施例,所述方法还包括:
在利用匹配的解码器为对应的视频流进行解码后,对所有解码帧进行校验,丢弃冗余的解码帧。
根据本发明实施例的计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如上所述的视频流解码方法的步骤。
采用本发明实施例,多路视频流可以仅通过一个解码器进行解码,可以减少设备资源占用,使设备端解码资源利用率最大化。相对一个解码器对应的一个视频流所占用的资源减低了百倍,解码视频流的路数从几十路提升到了几百路。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。在附图中:
图1是本发明实施例中视频流解码方法流程图;
图2是本发明实施例中视频流解码方法流程图;
图3是本发明实施例中视频流解码方法流程图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
本发明第一方面实施例提出一种视频流解码方法,如图1所示,包括:
S1,对视频流进行解析,获取所述视频流的视频参数;
S2,基于所述视频参数,为所述视频流匹配相应的解码器;
S3,利用匹配的解码器为对应的视频流进行解码;
所述解码器适于与多路视频流相匹配。
解码器设置的解码参数可以与多个视频参数匹配,根据视频参数,可以找到相应的解码器进行解码,多路视频流可以仅通过一个解码器进行解码。
采用本发明实施例,多路视频流可以仅通过一个解码器进行解码,可以减少设备资源占用,使设备端解码资源利用率最大化。相对一个解码器对应的一个视频流所占用的资源减低了百倍,解码视频流的路数从几十路提升到了几百路。
在上述实施例的基础上,进一步提出各变型实施例,在此需要说明的是,为了使描述简要,在各变型实施例中仅描述与上述实施例的不同之处。
根据本发明的一些实施例,所述视频参数包括:编码格式及分辨率。
根据本发明的一些实施例,所述解码器包括:GPU,所述GPU适于解码编码格式为h264、分辨率为1920x1080的视频流。
例如,GPU解码器的解码参数可以设置为编码格式为h264、分辨率为1920x1080。如果视频参数也是编码格式为h264、分辨率为1920x1080,则该GPU解码器可以对该视频流进行解码。
根据本发明的一些实施例,基于所述视频参数,为所述视频流匹配相应的解码器,包括:
基于所述视频参数,在已创建的解码器中查找与所述视频参数对应的解码器;
例如,GPU解码器的解码参数可以设置为编码格式为h264、分辨率为1920x1080。如果视频参数也是编码格式为h264、分辨率为1920x1080,则该GPU解码器可以对该视频流进行解码。
若已创建的解码器中没有与所述视频参数对应的解码器,创建解码器,并基于所述视频参数设置新创建的解码器的解码参数。
根据本发明的一些实施例,所述利用匹配的解码器为对应的视频流进行解码,包括:
所述解码器采用异步解码方式对其匹配的多路视频流进行解码。
根据本发明的一些实施例,将所述视频流送入其匹配的解码器之前,清空该解码器的帧缓存队列。由此可以避免解码出错,如第M路视频流解码后的帧推送到第N路的情况。
根据本发明的一些实施例,所述利用匹配的解码器为对应的视频流进行解码,包括:
从所述视频流中获取关键帧,利用匹配的解码器对关键帧进行解码。由于关键帧包含了视频流的主要信息,解码器在处理多路视频流时仅对关键帧进行解码,可以满足实时性的要求。
根据本发明的一些实施例,所述关键帧包括视频流的尾帧,当解码器对尾帧完成解码后,清空该解码器的帧缓存队列。由此可以避免解码出错,如第M路视频流解码后的帧推送到第N路的情况。
根据本发明的一些实施例,所述方法还包括:
在利用匹配的解码器为对应的视频流进行解码后,对所有解码帧进行校验,丢弃冗余的解码帧。解码帧必须是一帧,超出一帧的全部丢弃,此帧解码失败。
在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
下面参照图2-图3以一个具体的实施例详细描述根据本发明实施例的视频流解码方法。值得理解的是,下述描述仅是示例性说明,而不是对本发明的具体限制。凡是采用本发明的相似结构及其相似变化,均应列入本发明的保护范围。
本发明实施例的视频流解码方法主要解决在复用GPU解码器资源的前提下,实时解码多路视频流的方案。
本发明实施例的视频流解码方法主要分为两个部分:
一、视频流参数解析,根据参数创建或复用解码器,如图2所示。
1、对视频流进行解析,获取视频参数,如视频流的编码信息及分辨率信息。
2、校验解码器的解码参数与视频流的视频参数,如果解码器的解码参数与视频流的视频参数相同,则复用该解码器,否则,使用视频参数创建新的解码器进行解码。
二、多路视频流解码,如图3所示。
在线视频流的数据包会由于一些原因出现异常错误,多路流实时解码的正确性受到极大挑战,如第M路视频流解码后的帧推送到第N路。本发明实施例采用下述方案确保多留视频流实时解码的正确性。
1、从视频流队列中获取待解码的视频流数据包。这里,可以对视频流数据包进行校验,解析数据包并对各个参数进行过滤,对于参数明显异常的数据包直接丢弃。
2、解码器采用异步解码,待解码的视频流数据包送入解码器前,清空解码器的帧缓存队列,消除残留解码帧的影响。
3、视频流关键帧校验,去除非关键帧。
4、推送视频流关键帧进行GPU解码,由于关键帧包含了视频流的主要信息,GPU解码器在处理多路视频流时仅对关键帧进行解码,以满足实时性的要求。
5、推送视频流结束的尾帧进行GPU解码,清空解码器中的缓存帧
6、解码帧校验,丢弃冗余的解码帧。丢弃异常的解码帧,视频流的关键帧数据包只能解码出唯一的帧图像数据,但解码器有时会解码出多帧数据,如I帧与P帧或B帧粘在一帧中传入解码器。
7、解码帧推送到相应的视频流解码帧队列
采用本发明实施例,创建一个GPU解码器,可同时解码百路以上分辨率为1920x1080,编码格式为h264的实时视频流。相对一个解码器对应的一个视频流所占用的资源减低了百倍,解码视频流的路数从几十路提升到了几百路,可以减少设备资源占用,使设备端解码资源利用率最大化。而且,通过异常视频流数据包处理,丢弃可能引起串流的解码帧,且每个视频帧解码后清空解码器中的缓存帧,可以提高解码过程中出现的解码异常。
需要说明的是,以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来。
本发明第二方面实施例提出一种计算机可读存储介质,所述计算机可读存储介质上存储有信息传输的实现程序,所述程序被处理器执行时实现如上所述的第一方面实施例所述的视频流解码方法的步骤。
需要说明的是,本实施例所述计算机可读存储介质包括但不限于为:ROM、RAM、磁盘或光盘等。所述程序被处理器可以是手机,计算机,服务器,空调器,或者网络设备等。
在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

Claims (10)

1.一种视频流解码方法,其特征在于,包括:
对视频流进行解析,获取所述视频流的视频参数;
基于所述视频参数,为所述视频流匹配相应的解码器;
利用匹配的解码器为对应的视频流进行解码;
所述解码器适于与多路视频流相匹配。
2.如权利要求1所述的方法,其特征在于,所述视频参数包括:编码格式及分辨率。
3.如权利要求2所述的方法,其特征在于,所述解码器包括:GPU,所述GPU适于解码编码格式为h264、分辨率为1920x1080的视频流。
4.如权利要求1所述的方法,其特征在于,基于所述视频参数,为所述视频流匹配相应的解码器,包括:
基于所述视频参数,在已创建的解码器中查找与所述视频参数对应的解码器;
若已创建的解码器中没有与所述视频参数对应的解码器,创建解码器,并基于所述视频参数设置新创建的解码器的解码参数。
5.如权利要求1所述的方法,其特征在于,所述利用匹配的解码器为对应的视频流进行解码,包括:
所述解码器采用异步解码方式对其匹配的多路视频流进行解码。
6.如权利要求5所述的方法,其特征在于,将所述视频流送入其匹配的解码器之前,清空该解码器的帧缓存队列。
7.如权利要求1所述的方法,其特征在于,所述利用匹配的解码器为对应的视频流进行解码,包括:
从所述视频流中获取关键帧,利用匹配的解码器对关键帧进行解码。
8.如权利要求7所述的方法,其特征在于,所述关键帧包括视频流的尾帧,当解码器对尾帧完成解码后,清空该解码器的帧缓存队列。
9.如权利要求1所述的方法,其特征在于,所述方法还包括:
在利用匹配的解码器为对应的视频流进行解码后,对所有解码帧进行校验,丢弃冗余的解码帧。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如权利要求1至9中任一项所述的视频流解码方法的步骤。
CN202110366999.1A 2021-04-06 2021-04-06 视频流解码方法及计算机可读存储介质 Pending CN113271493A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110366999.1A CN113271493A (zh) 2021-04-06 2021-04-06 视频流解码方法及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110366999.1A CN113271493A (zh) 2021-04-06 2021-04-06 视频流解码方法及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN113271493A true CN113271493A (zh) 2021-08-17

Family

ID=77228503

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110366999.1A Pending CN113271493A (zh) 2021-04-06 2021-04-06 视频流解码方法及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113271493A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114466227A (zh) * 2021-12-22 2022-05-10 天翼云科技有限公司 一种视频分析方法、装置、电子设备及存储介质
CN115297332A (zh) * 2022-10-09 2022-11-04 中诚华隆计算机技术有限公司 一种云端流媒体硬解码方法和装置
CN115379236A (zh) * 2022-08-26 2022-11-22 重庆紫光华山智安科技有限公司 视频处理方法、装置、介质及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120195383A1 (en) * 2011-02-02 2012-08-02 Nagravision S.A. Media decoder and a decoding method allowing for the media decoder to be traced
CN106878736A (zh) * 2017-03-17 2017-06-20 郑州云海信息技术有限公司 一种视频编解码的方法与装置
CN110381322A (zh) * 2019-07-15 2019-10-25 腾讯科技(深圳)有限公司 视频流解码方法、装置、终端设备及存储介质
WO2020248909A1 (zh) * 2019-06-12 2020-12-17 腾讯科技(深圳)有限公司 视频解码方法、装置、计算机设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120195383A1 (en) * 2011-02-02 2012-08-02 Nagravision S.A. Media decoder and a decoding method allowing for the media decoder to be traced
CN106878736A (zh) * 2017-03-17 2017-06-20 郑州云海信息技术有限公司 一种视频编解码的方法与装置
WO2020248909A1 (zh) * 2019-06-12 2020-12-17 腾讯科技(深圳)有限公司 视频解码方法、装置、计算机设备及存储介质
CN110381322A (zh) * 2019-07-15 2019-10-25 腾讯科技(深圳)有限公司 视频流解码方法、装置、终端设备及存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114466227A (zh) * 2021-12-22 2022-05-10 天翼云科技有限公司 一种视频分析方法、装置、电子设备及存储介质
CN114466227B (zh) * 2021-12-22 2023-08-04 天翼云科技有限公司 一种视频分析方法、装置、电子设备及存储介质
CN115379236A (zh) * 2022-08-26 2022-11-22 重庆紫光华山智安科技有限公司 视频处理方法、装置、介质及设备
CN115379236B (zh) * 2022-08-26 2024-04-09 重庆紫光华山智安科技有限公司 视频处理方法、装置、介质及设备
CN115297332A (zh) * 2022-10-09 2022-11-04 中诚华隆计算机技术有限公司 一种云端流媒体硬解码方法和装置
CN115297332B (zh) * 2022-10-09 2022-12-06 中诚华隆计算机技术有限公司 一种云端流媒体硬解码方法和装置

Similar Documents

Publication Publication Date Title
CN113271493A (zh) 视频流解码方法及计算机可读存储介质
CN105451031B (zh) 一种视频转码方法和系统
EP2061255A1 (en) Information processing device and method
CN105681342B (zh) 一种基于h264的多路视频会议系统的抗误码方法及系统
US20180014034A1 (en) Methods and Apparatus of Decoding Process for Palette Syntax
CN110990358B (zh) 一种解压缩方法、电子设备及计算机可读存储介质
EP2654309A1 (en) Method and device for evaluating video quality
EP2219117A1 (en) A processing module, a device, and a method for processing of XML data
CN112332951B (zh) 一种以太网帧抢占方法、装置、设备及存储介质
CN111082896A (zh) 一种数据传输方法及发送、接收装置
CN105874800B (zh) 句法解析装置和句法解析方法
US20160316211A1 (en) Video Data Coding and Decoding Methods and Apparatuses
WO2009115049A1 (zh) 编解码方法及装置
CN111263164A (zh) 一种高帧频视频并行编码及重组方法
CN113630597B (zh) 一种与编解码无关的视频抗丢包的方法和系统
CN112968750A (zh) 基于aos帧的卫星图像压缩数据块解析方法及系统
CN101309259B (zh) 一种分布式图像显示方法
CN101192903A (zh) 数据帧编解码控制方法
CN110324625A (zh) 一种视频解码方法和装置
CN115604481A (zh) 提升编解码与传输并行的方法、装置及系统
CN110855645B (zh) 流媒体数据播放方法、装置
CN108093258A (zh) 码流数据的解码方法、计算机装置及计算机可读存储介质
CN106534137B (zh) 媒体流传输方法及装置
US20100076944A1 (en) Multiprocessor systems for processing multimedia data and methods thereof
CN104506936B (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: 20210817