视频解码分为软解和硬解。

软解,即软件解码:即通过软件让CPU来对视频进行解码处理;

硬解,即硬件解码:是将原来全部交由CPU来处理的视频数据的部分交由GPU来做。

所谓“软解”就是通过软件让CPU进行视频解码处理;而“硬解”是指不依赖于CPU,通过专用的设备(子卡)单独完成视频解码,比如曾经的VCD/DVD解压卡、视频压缩卡都被冠以“硬解”的称号。现在实现高清硬解不需要额外的子卡,也不需要额外的投入,因为硬解码模块被整合在了GPU内部,而目前主流的显卡(包括整合显卡)都能支持硬解码。
“硬解”其实更需要软件的支持,只是基本不需要CPU参与运算,从而为系统节约了很多资源开销。通过降低CPU占用率,可以给用户带来很多实惠:

  • GPU硬解码高清视频的优势:
  1. 不需要太好的CPU,单核足矣,CPU方面节约不少资金;
  2. 硬解码基本相当于免费附送,不到500元的整合主板都能完美支持;
  3. 硬解码让CPU占用率超低,系统有能力在看HDTV的同时进行多任务操作;
  4. CPU需要倾尽全力才能解码HDTV,而GPU只需动用0.1亿晶体管的解码模块就能完成任务,功耗控制更好;
  • GPU硬解码高清视频的劣势:
  1. 起步较晚,软件支持度无法与软解相提并论;
  2. 面对杂乱无章的视频编码、封装格式,硬解码无法做到全面兼容;
  3. 软解拥有大量画面输出补偿及画质增强技术,而硬解这方面做得还远远不够;
  4. 硬解码软件设置较为复杂,很多朋友根本不知道该如何正确使用GPU硬件解码。

上述描述比较笼统,不完全对。举一个反例,intel的qsv硬编方案,就是基于cpu的。以后会越来越不好区分,两者逐渐在融合。fpga已经有这个趋势。

参考:

[1] 视频编码之软解与硬解区别

[2] 【干货】关于软解(ffmpeg)和硬解(MediaCodec、MediaPlayer)以及底层(OpenMax)的那点事

【视频编码】软解与硬解相关推荐

  1. 视频编码之软解与硬解区别

    视频解码分为软解和硬解. 所谓"软解"就是通过软件让CPU进行视频解码处理:而"硬解"是指不依赖于CPU,通过专用的设备(子卡)单独完成视频解码,比如曾经的VC ...

  2. 【保凌】Dante AV之软解和硬解

    上期手术示教网络方案清晰展示出,在已有的Dante音频里加入Dante AV云台摄像机后,实现飞跃拥有更加完善的 "Dante AV视频+音频". 我们也正在将Dante AV不断 ...

  3. 【XBMC教程/kodi】有关XBMC软解、硬解以及外挂播放的详细解答

    来自http://www.hdpfans.com/forum-801-1.html 最近自己打算要做一个带庞大电影库的NAS局域网,配上带安卓系统的投影仪供客人观看无卡顿的高清电影,所以开始研究XBM ...

  4. 视频解码之软解与硬解

    视频解码之软解与硬解 硬解:从字面意思上理解就是用硬件来进行解码,通过显卡的视频加速功能对高清视频进行解码,很明显就是一个专门的电路板(这样好理解...)来进行视频的解码,是依靠显卡GPU的. 软解: ...

  5. ffmpeg解码的软解及硬解(cuda和qsv)使用方法

    对ffmpeg不是很熟悉,在使用的过程中遇到了很多坑,总结下,避免以后再遇到类似情况 版本兼容问题: 本次使用的ffmpeg版本是4.2,解码的调用方式为: int32_t iRet = -1;// ...

  6. 【音视频编解码】查看软解还是硬解

    文章目录 前言 编解码器如何选择 软件和硬解如何区分 前言 编解码器如何选择 软件和硬解如何区分 //android\frameworks\av\media\libstagefright\MediaC ...

  7. Android视频播放软解与硬解的区别

    https://blog.csdn.net/u010072711/article/details/52413766 硬解,用自带播放器播放,android中的VideoView 软解,使用音视频解码库 ...

  8. 转 Android视频播放软解与硬解的区别

    硬解,用自带播放器播放,android中的VideoView 软解,使用音视频解码库,比如FFmpeg 一.硬解码 硬解:就是调用GPU的专门模块编码来解,减少CPU运算,对CPU等硬件要求也相对低点 ...

  9. N5105 软路由安装 ESXi 7 直通核显给 Debian / Ubuntu 虚拟机通过 Docker 实现 jellyfin 硬件转码视频文件(硬解/编码)

    摘要 在ESXi 7.0u3e里直通N5105的核显给虚拟机Debian 11/Ubuntu 22.04(更新到5.18内核),再套用Docker镜像nyanmisaka/jellyfin (10.8 ...

最新文章

  1. 【开发环境】为 Visual Studio Community 2013 版本安装中文语言包 ( 安装 Test Agents 2013 | 安装 Visual Studio 2013 简体中文 )
  2. 声明 struct x1 { ...}; 和 typedef struct { ...} x2; 有什么不同?
  3. python json包_python编程 之 json包
  4. python 公众号爬虫_python_爬虫_微信公众号抓取
  5. java spi与api,SPI和API之间的区别?
  6. Python编程一定要注意的那些“坑”(六)
  7. hihocoder 1043 完全背包
  8. 使用jave进行视频转码
  9. 从酒店服务员到世界500强大数据工程师,月薪4K到年薪40W,我经历了什么?
  10. 立锜1.2V~5.5V稳压芯片RT9078-33GJ5
  11. layui标签输入框inputTags
  12. 导出word中图片的方法
  13. MTK 平台TP调试遇坑
  14. jQuery UI 实例 - 滑块(Slider)
  15. 面试——数据库常问问题
  16. Berkeley DB之JE入门
  17. 如何制作有素描关系的圆
  18. dio拦截器 flutter_Flutter 中 Dio 拦截器
  19. ic启动器我的世界_我的世界HMCL启动器
  20. python定义一个空数组_python数组 1_python 数组最后一个元素_python定义一个空数组 - 云+社区 - 腾讯云...

热门文章

  1. NodeJs基础入门
  2. Tomcat服务器工作原理
  3. 苹果加密技术真安全吗?一男子入侵数千个iCloud账号获取女性裸照
  4. ssm+JSP计算机毕业设计中医养生客户管理系统c3z16【源码、程序、数据库、部署】
  5. 分享开发 Android 手机应用的开发经验——QR生成器
  6. leaflet地图截图批量导出(附源码下载)
  7. 写给美术朋友们的凹凸贴图白皮书
  8. 局域网考服务器文件就死机,连接局域网死机的解决方法
  9. Vue:单页面应用动态设置title
  10. 斗鱼主播都在使用的可取回的CSGO开箱子网站推荐!