常见几种视频渲染模式介绍

简介:

1、.视频覆盖:
  大概在1995年,当mpeg1(VCD)回放在PC上开始流行的时候,pc的处理能力还么有强大到实时播放的地步。显卡制造厂商适时的推出了"video overlay(视频覆盖)"的技术。它就是种在显卡上用硬件完成同时显示几个视频的功能(拉伸,颜色空间变换,等等...)的技术,这样就可以在pc上流畅的播放动画而不占用cpu。视频覆盖的画面质量事实上取决于显卡硬件。我发现市面上的绝大部分的显卡显示视频覆盖质量都很不行。在视频覆盖上用视频渲染技术的一个最大的关键就是在每个显卡上只有一个视频覆盖 unit(单元). 这样就迫切的需要多显示器系统了。

2、Direct3D:
  Direct3D是微软提供给程序员使用一个不断进化的功能集合的DirectX库的一部分。在新发布的direct9 中,微软给出了一套新的功能,性能接近于覆盖 surface(接口),但是没那么多限制。视频渲染技术基于direct3d比视频覆盖提供了更好的图像质量,还没有视频覆盖单显示器的麻烦。但是,不是所有的显卡都支持这个技术,还有一些根本不支持,很多不支持整套功能集。作为一个一般的参考。

3、系统默认渲染器:
  当播放器用默认回放模式播放媒体文件的时候,在低于windows xp的所有windows系统上或者windowsxp的"vmr7", 用系统默认渲染器就意味着"标准覆盖" 。

4、标准覆盖渲染器:
  这是最老的视频渲染技术了。在可用的时候它用到视频覆盖,当视频不可用的时候就退回到纯cpu控制视频。纯cpu控制就是说cpu替代了视频覆盖来干这些事情。这对回放是个沉重的打击(cpu更辛苦了),这个渲染的缺点是它不支持固定屏幕高宽比控制,硬件颜色控制(色调/饱和度/亮度/对比度/gamma(灰度))不可操作,而且抓图结果会很很奇怪。

5、覆盖混合渲染:
  同样是运用视频覆盖技术,这个渲染器允许在那些支持颜色控制的硬件上进行颜色控制(色调/饱和度/亮度/对比度/gamma)。有些卡可能只支持颜色控制的一个子集(比如只有亮度)。这个渲染器也支持固定宽高比控制,只要媒体文件支持这个渲染器,缺点就是它返回到纯cpu控制。当视频覆盖不可操作时,它就罢工了。在媒体模式的这个情况时候,就会回到标准覆盖渲染。在dvd模式时,会报错说视频解码器不能连接到覆盖混合器。最后,这个渲染技术还是抓图的效果不够好。

6、视频混合渲染器7(vmr7):
  这个渲染器是视频覆盖技术和direct3d技术的结合,它只在windows xp上有效,后来被vmr9取代了。windows media player 7-10使用这个技术.这个渲染技术默认使用视频覆盖。然而,如果它不可用了,它可以有限的使用direct3d。它的缺点是不可进行颜色控制,截屏还是不够好。

7、视频混合渲染器9(vmr9):
  这是最新的视频渲染技术。它完全建筑在direct3d上,需要direct9和最新的硬件。它可以提供最好的画质(取决于渲染模式和显卡)。vmr9支持硬件颜色操作(如果卡支持),但是没有gamma控制,因为ms没有提供。 vmr9也有宽高比控制。

8、EVR增强渲染模式(vista系统):
  Vista新引入了全新的EVR渲染器,微软的技术文档倒是把这个东东吹得很强劲,但是就目前来说问题还是不少。第一个就是字幕的问题,目前用EVR是无法在高速或者急速模式下把字幕显示出来。那个EVR C/A 倒是能够显示字幕,不过dxva2.0就会失效,换句话说就无法开启geforce8显卡的硬件解码功能。还有一个问题就是色阶或者黑位问题,这个问题在VMR9下可以通过shader得到完美的解决方案,现在到了EVR,色阶问题目前可以说几乎毫无办法,最多能用一下coreavc的fix color功能解决一下,但是还是有相当大的局限性。

另:VMR9支持3种特别的渲染模式:
A.vmr9:窗口:
  这种是最基本的模式,它向后兼容,但不支持帧抓屏,要提醒一点,这个模式在windows sp1和directx9b下有bug,在dvd菜单导航时只能用这个模式了。在windowsxp sp2和direct9c下这个bug没了。
B.wmr9:窗口无转换:
  这个模式比窗口模式高级点,用来截图是最好的。
C.wmr9:渲染无转换:
  这个可是vmr9中最复杂的渲染模式,它可以工作在direct3d独占模式,那就是整个机器被设定为全屏,其他运行的程序不可以操作视频硬件,在这个独占模式下,所耗cpu更少,分辨率越高,回放就更平滑。缺点是在独占模式下,整个机器都献身给视频回放了,你不能干其他任何事情了。

目录
相关文章
|
5月前
|
存储 缓存 安全
系统显卡驱动程序卸载工具,DDU中文绿色版下载,免费显卡驱动彻底卸载工具
Display Driver Uninstaller(DDU)是一款专业显卡驱动卸载工具,支持彻底删除AMD/NVIDIA/Intel显卡驱动及相关残留文件,适用于驱动损坏、版本过旧或系统冲突等情况。绿色版无需安装,操作简单,可帮助用户实现干净的驱动环境。
2571 0
|
SQL Oracle 关系型数据库
SQL语句中的引号使用技巧:正确处理字符串与标识符
在编写SQL语句时,引号的使用是一个基础且重要的环节
1959 0
|
算法 安全 网络安全
网络安全&密码学—python中的各种加密算法
数据加密是一种保护数据安全的技术,通过将数据(明文)转换为不易被未经授权的人理解的形式(密文),以防止数据泄露、篡改或滥用。加密后的数据(密文)可以通过解密过程恢复成原始数据(明文)。数据加密的核心是密码学,它是研究密码系统或通信安全的一门学科,包括密码编码学和密码分析学。
|
Android开发 开发者
Android经典面试题之SurfaceView和TextureView有什么区别?
分享了`SurfaceView`和`TextureView`在Android中的角色。`SurfaceView`适于视频/游戏,独立窗口低延迟,但变换受限;`TextureView`支持复杂变换,视图层级中渲染,适合动画/视频特效,但性能略低。两者在性能、变换、使用和层级上有差异,开发者需按需选择。
653 1
|
IDE C# 开发工具
VS2019版本下载详细介绍~
VS2019版本下载详细介绍~
2029 0
|
传感器 人工智能 编译器
2023 年嵌入式世界的3 大趋势分析
2023 年嵌入式世界的3 大趋势分析
704 1
|
运维 Kubernetes API
Kubernetes operator 模式开发实践
0. 前言 近日我们在开发符合我们业务自身需求的微服务平台时,使用了 Kubernetes 的 Operator Pattern 来实现其中的运维系统,在本文,我们将实现过程中积累的主要知识点和技术细节做了一个整理。
3145 94
|
存储 数据库 OceanBase
"clog"是指数据库的日志文件
"clog"是指数据库的日志文件
830 2
|
Web App开发
用户脚本管理器 Tampermonkey 安装使用图文教程
Tampermonkey是一款备受欢迎的浏览器扩展和用户脚本管理器,它适用于目前各种主流浏览器。 方便的脚本管理(正在运行的脚本和可以运行的脚本在图标处显示一览无余) 脚本自动更新(可以设置更新频率,保持脚本处于最新版本) 设置白名单(将不需要使用脚本的网站加入名单) chrome同步(多个chrome浏览器可以同步脚本设置)
用户脚本管理器 Tampermonkey 安装使用图文教程
|
JavaScript Linux
Linux安装Node.js(图文解说详细版)
Linux安装Node.js(图文解说详细版)
Linux安装Node.js(图文解说详细版)

热门文章

最新文章