硬件解码基础知识总结
硬件解码基础知识总结
1、CPU与GPU
CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景:(1)CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理,这些都使得CPU的内部结构异常复杂;(2)GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯净的计算环境。
CPU 由专为顺序串行处理而优化的几个核心组成,而 GPU 则拥有一个由数以千计的更小、更高效的核心(专为同时处理多重任务而设计)组成的大规模并行计算架构。
2、三大显卡制造商
现在显卡制造商分为三大家:intel,ati和nvidia。它们之间的区别与联系:
(1)nvidia显卡,俗称n卡,是最稳定、支持最多的,但是只有闭源驱动;
(2)intel显卡,稳定性、支持率次之,但是是开源的;
(3)ati显卡,包括开源驱动和闭源驱动,但是开源的驱动只能发挥性能的一半且耗能极大,闭源驱动的稳定性比n卡差很多。
所以,目前选择比较多的是n卡和intel显卡。
3、硬解的前提条件
要想进行硬解,就要满足如下条件:
(1)有显卡,想要进行硬解就得确保自己的显卡支持视频硬解;
(2)有显卡驱动,需要利用显卡驱动来调用电脑的显卡;
(3)有编程接口,因为显卡驱动本身不提供硬解所用的编程接口,所以还需要驱动和播放器中间的api接口。
这个连接显卡驱动与硬解的编程接口可以分为两大类:
(1)Windows环境下:DXVA(DirectX Video Acceleration),是操作系统自带的,由微软定义;
(2)Linux环境下:linux上由于没有了厂家,所以只能由显卡制造商来定义,n卡的名为VDPAU(Video Decode and Presentation API for Unix),由NVIDIA定义;a卡和intel的名为VAAPI(Video Acceleration API),是由intel开发的。
通常这些API提供了一系列的功能,比如:视频解码,后处理,解码帧的描述,或者把帧下载到系统内存等等。相应的,不同的功能插件一般是给不同的element使用的,这样pipeline可以适应任何需求。
4、驱动和硬解之间的api接口介绍
对于windows霸主的微软而言:DXVA(DirectX Video Acceleration),微软为了Windows系统和XBox360定制的,一般正确安装windows系统即可。
对于Intel而言:VAAPI(Video Acceleration API),2007年Intel设计的,目的是在Unix操作系统的XWindow系统(X Window图形用户接口,是一种计算机软件系统和网络协议,提供了一个基础的图形用户界面(GUI)和丰富的输入设备能力联网计算机)下运行,现在是开源的,且也不仅仅局限于Intel的GPU了,其他制造商也可以使用。
对于NVIDIA而言:VDPAU(Video Decode and Presentation API for Unix),2008年NVidia设计的,最早也是运行在Unix的XWindow系统下,现在同样是开源的。虽然同样已经是开源库了,但除了NVidia自己外还没有其他制造商使用。
对于AMD而言:XVBA(X-Video Bitstream Acceleration),AMD设计,在linux操作系统的XWindow系统下下X Video的扩展,目前在AMD的ATI显卡中有支持; OVD(Open Video Decode),AMD的又一个API。
对于MAC而言:VDA(Video Decode Acceleration),应用于Mac OSX10.6.3之后,仅仅加速H.264的解码。
对于TI而言:DCE(Distributed Codec Engine),一个开源的软件库(libdce)和TI定制的API,提供给linux系统和ARM平台的。
对于非盈利组织而言:OpenMAX(Open Media Acceleration),由非盈利性联合Khronos Group设计的,是一组跨平台的C语言编程接口。
硬件解码基础知识总结相关推荐
- 硬件工程师基础知识(http://huarm.taobao.com/ )
硬件工程师基础知识 1. 请列举您知道的电阻.电容.电感品牌(最好包括国内.国外品牌). 电阻: 美国:AVX.VISHAY威世 日本:KOA兴亚.Kyocera京瓷.muRata村田.Pan ...
- 硬件工程师基础知识架构
硬件工程师基础知识架构 目的:基于实际经验与实际项目详细理解并掌握成为合格的硬件工程师的最基本知识. 基本设计规范 CPU基本知识.架构.性能及选型指导 MOTOROLA公司的PowerPC系列基本知 ...
- 列举一台微型计算机的常用硬件,电脑基础知识问答卷
你想自己知道有多了解电脑知识么?下面小编给大家带来了-电脑基础知识问答卷,想了解自己对电脑知识的实力,就动脑做做吧. 一.选择题(选择一个正确的答案)(30分) 1.下列叙述正确的是 A 世界上第一台 ...
- 计算机软件与硬件系统基础知识,计算机软硬件系统基础知识.pdf
计算机软硬件系统基础知识 技术创新,变革未来 计算机系统基本组成 • 一.硬件系统 • 二.软件系统 硬件系统 硬件系统包括哪些组成部分?硬件系统的作用是什么? 计算机硬件系统组成分类 • 一.输入单 ...
- 【新手基础教程】MaixPy AI 硬件加速基础知识
MaixPy AI 硬件加速基本知识 1. 模型使用和硬件加速原理 前面我们知道了模型是一个数据机构以及很多参数, 最终以一个文件比如kmodel格式的文件的形式存在. 而这个模型要能在 MaixPy ...
- 计算机网络建设中涉及到哪些硬件,网络基础知识入门
网络基础知识入门 导语:随着计算机的广泛应用和网络的流行,我们应该要知道一些网络基础知识,下面是小编收集整理的网络基础入门知识,欢迎参考! 计算机网络是什么 这是首先必须解决的一个问题,绝对是核心概念 ...
- 硬件电路基础知识(30)---RS232、RS485、RS422、RJ45接口的区别
RS-232.RS-422与RS-485都是串行数据接口标准,RS-232是PC机与通信中应用最广泛的一种串行接口.RS-232被定义为一种在低速率串行通讯中增加通讯距离的单端标准.RS-232采取不 ...
- 音视频编解码基础知识笔记
欢迎关注勤于奋.每天12点准时更新国外LEAD相关技术 我的理解,音视频是一种视频的播放格式,但是这种格式已经通过压缩,封装,最后给我们的就是市面上能够播放的格式,这样如果自己写播放器,就需要去解封装 ...
- 音视频编解码基础知识(1)- 音视频编解码过程
在学习音视频编解码知识时,首先要对整个过程有一个直观的认识,对一些知识点也要有明确的认识. 知识点: 1. YUV/RGB/RAW,这是三种视频采集的数据格式 2. 视频编码格式:H.264(在MPE ...
最新文章
- 如何使用MERGE(合并)SQL
- C++——虚函数(Virtual Member Functions) 【functions语意学】
- 论文笔记之:Deep Attention Recurrent Q-Network
- 泊松分酒 java课件_泊松分酒原理 - 我类个擦的个人空间 - OSCHINA - 中文开源技术交流社区...
- 整型和浮点型之间的转化
- linux检测硬件驱动,linux查看硬件信息及驱动设备相关整理
- spring的路径匹配问题
- 【Objective-C】类与结构体的区别
- iOS项目开发实战——通过Http Get方式与server通信
- 定位CPU高问题三把斧
- Qt软件开发-Qt编译zlib完成文件压缩解压(win10)
- 美国3月通胀见顶了吗?
- 版本服务器 哪些文件不应该提交,总结firefly版本服务器使用方法
- 毕业生自传--(宝岛海南“三月游”)
- 蓝叠模拟器查看Android版本,BlueStacks蓝叠版本信息在哪看蓝叠模拟器版本信息查看方法...
- win7/win10安装Ubuntu20.04双系统详细操作步骤
- 如何验证白光干涉仪精度丨科普篇
- 一篇金融IT的论文开题报告
- 你知道怎么测试搜索框吗?
- gel和react哪个厉害_gel、react、boost三种材料的跑鞋哪个更强呢?
热门文章
- python websocket 的异步实现:websockets
- unity 触摸屏幕
- java swing课程表设计_javaswing.Shedule 这是一个简单的课程表设计,数据连接为oracle 238万源代码下载- www.pudn.com...
- 谷歌中hao123的删除和win10禁用更新
- 马斯克强制员工每周到岗40个小时:“要不是我当初睡工厂,特斯拉早破产了。”
- 正大国际期货:2022年12月26日至1月1日
- 工作站和普通电脑的区别在哪里?
- 内部链接十二条网页黄金规则
- 如何将excel文件转换成csv文件并读取
- 数字工具类-计算百分比