CN106210726A - 根据cpu与gpu的使用率对视频数据进行自适应解码的方法 - Google Patents
根据cpu与gpu的使用率对视频数据进行自适应解码的方法 Download PDFInfo
- Publication number
- CN106210726A CN106210726A CN201610642781.3A CN201610642781A CN106210726A CN 106210726 A CN106210726 A CN 106210726A CN 201610642781 A CN201610642781 A CN 201610642781A CN 106210726 A CN106210726 A CN 106210726A
- Authority
- CN
- China
- Prior art keywords
- gpu
- cpu
- utilization rate
- video data
- real
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种根据CPU与GPU的使用率对视频数据进行自适应解码的方法,包括:步骤1:检测计算机设备中CPU和GPU的实时使用率;步骤2:根据计算机设备中CPU和GPU的实时使用率自适应地切换选择对应解码方式对视频数据进行解码,具体为:当GPU的实时使用率小于第一阈值时,利用GPU通过硬解码方式对视频数据进行解码;当GPU的实时使用率不小于第一阈值,且CPU的实时使用率小于第二阈值时,利用CPU通过软解码方式对视频数据进行解码;当GPU的实时使用率不小于第一阈值,且CPU的实时使用率不小于第二阈值时,暂停对视频数据的解码。本发明根据CPU与GPU的实时使用率自适应切换选择对应解码方式对视频数据进行解码,既可满足行业需求,又可从根本上降低CPU、GPU的负担。
Description
技术领域
本发明涉及图像视频处理技术领域,尤其涉及一种根据CPU与GPU的使用率对视频数据进行自适应解码的方法。
背景技术
视频监控是安全防范系统的重要组成部分。传统的视频监控系统包括前端摄像机、传输线缆、视频监控平台。视频监控系统发展了短短二十几年时间,从模拟监控到火热的数字监控再到方兴未艾网络视频监控,发生了翻天覆地的变化。
目前视频监控系统要求可以同时监控十几路以上的视频,而且对视频的清晰度、流畅度要求越来越高,这就对带宽、计算机性能要求越来越苛刻。而造成这种现象的根本原因是编码方式和解码方案。传统的解码方案一般采用全软解(CPU解码)或全硬解(GPU解码)。全软解采用CPU内核解码,对CPU要求很高,然而CPU能力有限,计算机上的其他应用也要使用CPU,以至于CPU负荷太大,容易造成视频解码卡顿、延时,无法满足多路高清视频监控的需求。全硬解采用GPU内核解码,对显卡要求很高,成本很昂贵,而且计算机上的其他应用也会用到GPU,当GPU负荷太大时会造成图形显示卡顿、死机等现象,也无法满足多路高清视频监控的需求。因此,传统的解码方案无论采用全软解还是全硬解都无法同时监控多路高清视频。
发明内容
鉴于现有技术中存在的上述缺陷,本发明所要解决的技术问题是,提供一种根据CPU与GPU的使用率对视频数据进行自适应解码的方法,以解决现有技术采用的全软解码或全硬解码无法同时监控多路高清视频的缺陷。本发明是通过如下技术方案来实现的:
一种根据CPU与GPU的使用率对视频数据进行自适应解码的方法,包括:
步骤1:检测计算机设备中CPU和GPU的实时使用率;
步骤2:根据所述计算机设备中CPU和GPU的实时使用率自适应地切换选择对应的解码方式对视频数据进行解码,具体为:
当所述GPU的实时使用率小于第一阈值时,利用所述GPU通过硬解码方式对所述视频数据进行解码;
当所述GPU的实时使用率不小于所述第一阈值,且所述CPU的实时使用率小于第二阈值时,利用所述CPU通过软解码方式对所述视频数据进行解码;
当所述GPU的实时使用率不小于所述第一阈值,且所述CPU的实时使用率不小于所述第二阈值时,暂停对所述视频数据的解码。
进一步地,所述第一阈值为80%。
进一步地,所述第二阈值为80%。
进一步地,所述GPU采用Intel Media SDK对所述视频数据进行解码。
进一步地,所述CPU采用ffmpeg、vlc或第三方解码sdk对所述视频数据进行解码。
进一步地,所述视频数据为H.264编码格式。
进一步地,所述方法还包括:
步骤3:播放解码后的视频数据。
与现有技术相比,本发明根据CPU与GPU的实时使用率自适应地切换选择对应的解码方式对视频数据进行解码,不再像传统技术般单纯采用全软解或全硬解的解码方式,既可以满足行业需求,又可以从根本上降低CPU、GPU的负担。在计算机同等配置下,本发明可以满足更高的需求;在满足同等需求的情况下,本发明解码效果更流畅、且不影响计算机上的其他应用程序,从根本上降低了计算机配置成本。
附图说明
图1:本发明实施例提供的根据CPU与GPU的使用率对视频数据进行自适应解码的方法流程示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1所示为本发明实施例提供的根据CPU与GPU的使用率对视频数据进行自适应解码的方法流程示意图。参考图1,本发明提供的根据CPU与GPU的使用率对视频数据进行自适应解码的方法包括:
步骤1:检测计算机设备中CPU和GPU的实时使用率。计算机设备的CPU和GPU的实时使用率反映的计算机设备的CPU和GPU的实时使用情况,当使用率较高时,说明其负荷较大。
步骤2:根据计算机设备中CPU和GPU的实时使用率自适应地切换选择对应的解码方式对视频数据进行解码,具体为:
当GPU的实时使用率小于第一阈值时,利用GPU通过硬解码方式对视频数据进行解码;
当GPU的实时使用率不小于第一阈值,且CPU的实时使用率小于第二阈值时,利用CPU通过软解码方式对视频数据进行解码;
当GPU的实时使用率不小于第一阈值,且CPU的实时使用率不小于第二阈值时,暂停对视频数据的解码。
在视频解码中,CPU可对视频数据进行软解码,而GPU可对视频数据进行硬解码。硬解码就是通过显卡(GPU)的视频加速功能对视频数据进行解码。软解码就是粹依靠CPU对视频数据进行解码。
当CPU使用率过高时,说明CPU没有足够资源用于对视频数据进行软解码,同理,当GPU使用率过高时,说明GPU没有足够资源用于对视频数据进行硬解码。因此,选择软解码还是硬解码方式对视频数据进行解码要取决于CPU和GPU的实时使用率,根据CPU和GPU的实时使用率实时、自适应地切换适合的解码方式对视频数据进行解码。
在对视频数据进行解码的过程中,可根据CPU和GPU的实时使用率情况,自适应地在上述三种解码方式(为便于描述,将暂停对视频数据的解码看作是一种非常特殊的解码方式)之间切换,CPU和GPU的实时使用率符合使用哪一种解码方式的条件就切换到哪一种解码方式。
在本实施例中,第一阈值为80%,第二阈值也为80%。根据实际情况,第一阈值和第二阈值也可设置为其他值。
本实施例中,如果采用硬解码方式,GPU可采用Intel Media SDK对视频数据进行解码,Intel Media SDK具有较强的解码性能,可大大降低视频数据解码过程对CPU的使用。
本实施例中,CPU采用ffmpeg、vlc或第三方解码sdk对视频数据进行解码。
本实施例中,视频数据为H.264编码格式。
本实施例中,方法还包括:
步骤3:播放解码后的视频数据。
最后应说明的是:上述各实施例仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (7)
1.一种根据CPU与GPU的使用率对视频数据进行自适应解码的方法,其特征在于,包括:
步骤1:检测计算机设备中CPU和GPU的实时使用率;
步骤2:根据所述计算机设备中CPU和GPU的实时使用率自适应地切换选择对应的解码方式对视频数据进行解码,具体为:
当所述GPU的实时使用率小于第一阈值时,利用所述GPU通过硬解码方式对所述视频数据进行解码;
当所述GPU的实时使用率不小于所述第一阈值,且所述CPU的实时使用率小于第二阈值时,利用所述CPU通过软解码方式对所述视频数据进行解码;
当所述GPU的实时使用率不小于所述第一阈值,且所述CPU的实时使用率不小于所述第二阈值时,暂停对所述视频数据的解码。
2.如权利要求1所述的方法,其特征在于,所述第一阈值为80%。
3.如权利要求1所述的方法,其特征在于,所述第二阈值为80%。
4.如权利要求1所述的方法,其特征在于,所述GPU采用Intel Media SDK对所述视频数据进行解码。
5.如权利要求1所述的方法,其特征在于,所述CPU采用ffmpeg、vlc或第三方解码sdk对所述视频数据进行解码。
6.如权利要求1所述的方法,其特征在于,所述视频数据为H.264编码格式。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
步骤3:播放解码后的视频数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610642781.3A CN106210726A (zh) | 2016-08-08 | 2016-08-08 | 根据cpu与gpu的使用率对视频数据进行自适应解码的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610642781.3A CN106210726A (zh) | 2016-08-08 | 2016-08-08 | 根据cpu与gpu的使用率对视频数据进行自适应解码的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106210726A true CN106210726A (zh) | 2016-12-07 |
Family
ID=57514524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610642781.3A Pending CN106210726A (zh) | 2016-08-08 | 2016-08-08 | 根据cpu与gpu的使用率对视频数据进行自适应解码的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106210726A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106792066A (zh) * | 2016-12-20 | 2017-05-31 | 暴风集团股份有限公司 | 优化的视频解码播放的方法及系统 |
CN107087231A (zh) * | 2017-03-31 | 2017-08-22 | 北京潘达互娱科技有限公司 | 视频数据播放方法及装置 |
WO2018126975A1 (zh) * | 2017-01-09 | 2018-07-12 | 阿里巴巴集团控股有限公司 | 一种全景视频转码方法、装置和设备 |
CN108282696A (zh) * | 2018-02-07 | 2018-07-13 | 北京易讯理想科技有限公司 | 一种序列帧图像播放的硬件资源分配方法 |
CN108513058A (zh) * | 2017-02-23 | 2018-09-07 | 钰立微电子股份有限公司 | 可补偿图像变化的图像装置 |
CN108848386A (zh) * | 2018-06-26 | 2018-11-20 | 深圳智锐通科技有限公司 | 跨多cpu和多gpu芯片的混合解码方法 |
CN109120988A (zh) * | 2018-08-23 | 2019-01-01 | Oppo广东移动通信有限公司 | 解码方法、装置、电子设备以及存储介质 |
CN109640179A (zh) * | 2018-11-27 | 2019-04-16 | Oppo广东移动通信有限公司 | 视频解码控制方法、装置以及电子设备 |
CN110868615A (zh) * | 2019-11-25 | 2020-03-06 | 腾讯科技(深圳)有限公司 | 一种视频处理方法、装置、电子设备以及存储介质 |
WO2020107970A1 (zh) * | 2018-11-27 | 2020-06-04 | Oppo广东移动通信有限公司 | 视频解码方法、装置、电子设备及存储介质 |
CN114125432A (zh) * | 2021-11-22 | 2022-03-01 | 北京天融信网络安全技术有限公司 | 视频数据处理方法、装置、设备及存储介质 |
CN114138449A (zh) * | 2021-12-14 | 2022-03-04 | 河南省儿童医院郑州儿童医院 | 一种基于虚拟现实的康复训练系统 |
CN115546329A (zh) * | 2022-12-01 | 2022-12-30 | 广州市保伦电子有限公司 | 一种音视频硬件加速转码检测方法及系统 |
US11778210B2 (en) | 2018-06-01 | 2023-10-03 | Canon Kabushiki Kaisha | Load balancing method for video decoding in a system providing hardware and software decoding resources |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101123723A (zh) * | 2006-08-11 | 2008-02-13 | 北京大学 | 基于图形处理器的数字视频解码方法 |
CN104866381A (zh) * | 2014-02-20 | 2015-08-26 | 联想(北京)有限公司 | 一种信息处理方法及第一电子设备 |
CN105120293A (zh) * | 2015-08-26 | 2015-12-02 | 中国航空工业集团公司洛阳电光设备研究所 | 基于cpu和gpu的图像协同解码方法及装置 |
CN105262960A (zh) * | 2015-10-21 | 2016-01-20 | 北京中科大洋科技发展股份有限公司 | 一种基于集群渲染的立体电视信号编辑方法 |
-
2016
- 2016-08-08 CN CN201610642781.3A patent/CN106210726A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101123723A (zh) * | 2006-08-11 | 2008-02-13 | 北京大学 | 基于图形处理器的数字视频解码方法 |
CN104866381A (zh) * | 2014-02-20 | 2015-08-26 | 联想(北京)有限公司 | 一种信息处理方法及第一电子设备 |
CN105120293A (zh) * | 2015-08-26 | 2015-12-02 | 中国航空工业集团公司洛阳电光设备研究所 | 基于cpu和gpu的图像协同解码方法及装置 |
CN105262960A (zh) * | 2015-10-21 | 2016-01-20 | 北京中科大洋科技发展股份有限公司 | 一种基于集群渲染的立体电视信号编辑方法 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106792066A (zh) * | 2016-12-20 | 2017-05-31 | 暴风集团股份有限公司 | 优化的视频解码播放的方法及系统 |
WO2018126975A1 (zh) * | 2017-01-09 | 2018-07-12 | 阿里巴巴集团控股有限公司 | 一种全景视频转码方法、装置和设备 |
US11153584B2 (en) | 2017-01-09 | 2021-10-19 | Alibaba Group Holding Limited | Methods, apparatuses and devices for panoramic video transcoding |
CN108513058A (zh) * | 2017-02-23 | 2018-09-07 | 钰立微电子股份有限公司 | 可补偿图像变化的图像装置 |
CN107087231A (zh) * | 2017-03-31 | 2017-08-22 | 北京潘达互娱科技有限公司 | 视频数据播放方法及装置 |
CN108282696A (zh) * | 2018-02-07 | 2018-07-13 | 北京易讯理想科技有限公司 | 一种序列帧图像播放的硬件资源分配方法 |
US11778210B2 (en) | 2018-06-01 | 2023-10-03 | Canon Kabushiki Kaisha | Load balancing method for video decoding in a system providing hardware and software decoding resources |
CN108848386A (zh) * | 2018-06-26 | 2018-11-20 | 深圳智锐通科技有限公司 | 跨多cpu和多gpu芯片的混合解码方法 |
CN109120988A (zh) * | 2018-08-23 | 2019-01-01 | Oppo广东移动通信有限公司 | 解码方法、装置、电子设备以及存储介质 |
CN109120988B (zh) * | 2018-08-23 | 2020-07-24 | Oppo广东移动通信有限公司 | 解码方法、装置、电子设备以及存储介质 |
WO2020107970A1 (zh) * | 2018-11-27 | 2020-06-04 | Oppo广东移动通信有限公司 | 视频解码方法、装置、电子设备及存储介质 |
WO2020107972A1 (zh) * | 2018-11-27 | 2020-06-04 | Oppo广东移动通信有限公司 | 视频解码控制方法、装置、电子设备及存储介质 |
CN109640179B (zh) * | 2018-11-27 | 2020-09-22 | Oppo广东移动通信有限公司 | 视频解码控制方法、装置以及电子设备 |
US11456013B2 (en) | 2018-11-27 | 2022-09-27 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Video decoding control method, electronic device, and storage medium |
CN109640179A (zh) * | 2018-11-27 | 2019-04-16 | Oppo广东移动通信有限公司 | 视频解码控制方法、装置以及电子设备 |
CN110868615B (zh) * | 2019-11-25 | 2021-05-28 | 腾讯科技(深圳)有限公司 | 一种视频处理方法、装置、电子设备以及存储介质 |
CN110868615A (zh) * | 2019-11-25 | 2020-03-06 | 腾讯科技(深圳)有限公司 | 一种视频处理方法、装置、电子设备以及存储介质 |
CN114125432A (zh) * | 2021-11-22 | 2022-03-01 | 北京天融信网络安全技术有限公司 | 视频数据处理方法、装置、设备及存储介质 |
CN114138449A (zh) * | 2021-12-14 | 2022-03-04 | 河南省儿童医院郑州儿童医院 | 一种基于虚拟现实的康复训练系统 |
CN115546329A (zh) * | 2022-12-01 | 2022-12-30 | 广州市保伦电子有限公司 | 一种音视频硬件加速转码检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106210726A (zh) | 根据cpu与gpu的使用率对视频数据进行自适应解码的方法 | |
CN110572622B (zh) | 视频解码方法及装置 | |
CN107529069A (zh) | 一种视频流传输方法及装置 | |
US11727255B2 (en) | Systems and methods for edge assisted real-time object detection for mobile augmented reality | |
CN108289228B (zh) | 一种全景视频转码方法、装置和设备 | |
US9854261B2 (en) | Detecting markers in an encoded video signal | |
MY185702A (en) | Video image encoding method, video image decoding method, encoding device, and decoding device | |
US9609338B2 (en) | Layered video encoding and decoding | |
US20140009576A1 (en) | Method and apparatus for compressing, encoding and streaming graphics | |
US11399187B2 (en) | Screen content detection for adaptive encoding | |
WO2017034725A1 (en) | Reliable large group of pictures (gop) file streaming to wireless displays | |
JP2011151838A5 (zh) | ||
CN109698957B (zh) | 图像编码方法、装置、计算设备及存储介质 | |
CN104717509B (zh) | 一种视频解码方法及装置 | |
CN111263243B (zh) | 视频编码方法、装置、计算机可读介质及电子设备 | |
CN112612433A (zh) | 一种竖屏视频的投屏方法、设备及系统 | |
CN111343503B (zh) | 视频的转码方法、装置、电子设备及存储介质 | |
US20150358625A1 (en) | Device and method for video encoding | |
CN106791855B (zh) | 一种降低坐席管理系统成本的方法及系统 | |
US9549189B2 (en) | Method for media rate control in a video encoding system | |
CN116033235B (zh) | 数据传输方法、数字人生产设备以及数字人显示设备 | |
CN102740120A (zh) | 数字电视直播节目播出完整性判断方法 | |
MX2022000202A (es) | Codificador de video, decodificador de video, y metodo correspondiente. | |
CN106254811A (zh) | 移动终端及其视频通话的控制方法和系统 | |
CN114051143A (zh) | 一种视频流编解码任务调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20161207 |