转自:http://www.hangge.com/blog/cache/detail_1461.html

一、MADVR介绍

  • MADVR 是一款超强的视频插件,其配合高清播放软件,可以做到目前 PC 上播放高清视频的最强画质。
  • MADVR 这款视频渲染器比市面上大多数播放器自带的渲染器有着更精确的颜色处理,更高质量的图像缩放缩放、以及更低的颜色错误率。这就使得它所渲染出来的视频在颜色上更趋于真实,在画质细节上也要强于其他渲染器。
  • MADVR 支持各类显卡,包括 NVIDIA 和 AMD 的独显以及英特尔的核芯显卡。不过用户在使用 MADVR 渲染视频时,会占用大量的 GPU 资源和 CPU 资源。

二、MADVR的使用

这里我们以 Potplayer 这款播放器为例,演示如何使用 MADVR 进行视频渲染。

1,安装Potplayer播放器

(1)官网地址:http://potplayer.daum.net/
(2)安装的时候记得勾选“安装额外编解码器”。Potplayer 便会自动下载一些编解码器。
(3)下载好的编解码器要全部打勾。然后结束安装。

2,安装LAV Filters解码器

(2)这里我们只需要安装 64 位的视频解码器就可以了。

3,安装MADVR渲染器

(1)官网地址:http://www.madvr.com/

(2)将 MADVR 渲染器放在一个没有英文名的路径下。然后又键点击“install.bat”,选择“以管理员身份运行”,便完成 MADVR 的安装了。
 

4,Potplayer设置

(1)启动 PotPlayer 后,按下 F5 打开“选项”窗口。点击“滤镜”,关闭 Potplayer 内置图像滤镜。 
 这样做防止 Potplayer 对视频进行瞎处理。比如播放 10-bit 视频,如果不关闭内置滤镜的话,数据在传递给 madVR 前已经从 10-bit 砍成 8-bit 损失精度,madVR 内部再怎么精度高也是白搭。

(2)点击“滤镜”->“全局滤镜优先权”->“添加系统滤镜”。找到 LAV Video Decoder 和 madVR,并添加进来。
(3)同时还要把添加的这两项优先顺序改称“强制使用”。
(4)随便播放一个视频。按 Tab 键即可看视频的解码和渲染是不是 LAV 和 MADVR,如果是的话就说明设置正确了。同时可以发现虽然我的电脑是集显,帧率也提升了一倍多。

5,MADVR简易设置

(1)我们双击任务栏右下方的 MADVR 控制面板,进入设置菜单。(没有的话运行 MADVR 文件夹里的 madHcCtrl.exe)
(2)在“devices”这个选项中,不过我们使用的是显示器还是电视,一律选择“Digital Monitor/TV”。
(3)打开设备下的“properties”选项。
  • 如果使用显示器,第一项 RGB 范围选择 0-255。如果是连接电视机,则选择 16-255。(这个还是比较测试下,我接电视反而感觉选 0-255 效果更好)
  • 第二项是色深。一般选择 8bit。如果显示器或者电视能达到 10bit 或更高,则选择 10bit。

三、MADVR的高级设置技巧

我们打开 MADVR 文件夹中的 madHcCtrl.exe,这个便是 MADVR 的控制面板。下面对画质起关键作用的几个选项,分别进行介绍。

1,processing菜单

(1)deinterlacing 选项,对应的是图像交错处理。

  • 建议在最上面的选项打勾,让视频需要进行图像交错的时候交给 MADVR 自己去处理,并且在怀疑时不启动交错处理。
  • 如果常看动漫的,可以去掉“only look at pixels in the frame center”勾选。
关于“only look at pixels in the frame center”:
"only look at pixels in the frame center"这个选项只对film型式的交错式(隔行扫描interlaced)影片有影响,也就是说这选项在启动madVR的film mode时才有作用(文后有解释)
我 们知道对于这类影片必须对其作IVTC让它还原成24p(60i→24p),但实际上我们有时候会发现录了一部电视播放的电影或动画下来,电视台常常在四边打上跑马灯或台标之类的东西,而这个跑马灯或台标却是video型式的interlaced讯号(真正的60i 无法IVTC),因此我们要作IVTC时如果是对整个画面的像素作侦测,遇到这种情形时就很容易产生误判。因此勾选这个选项时就只会对画面中央部分的像素 作侦测,避开那些跑马灯或台标可能出现的位置以免作IVTC时产生误判,但缺点就是这样侦测的效率较低,遇到动画这类常常有静止画面的影片在侦测是哪一类 pulldown时就会花比较久的时间。如果会看电视台播放的电影或动画的话,建议勾选此选项,如果是看DVD原盘的话,则建议取消勾选。
这选项对progressive的影片完全没有影响,如果照字面理解为这选项不利于动画的话那是错误的理解,因为很多动画片源只要是蓝光或是录制下来压制时做过IVTC的,都会是progressive而非interlaced。电视台录制下来的原始TS档或是DVD原盘才有可能是interlaced。

(2)arifact removal 选项,对应的是图像去色阶功能。
在普通的视频中,我们经常会看到人物的脸上,或者不同颜色的交界处有淡淡的光晕和条纹,这就是没有去掉色阶。而我们的目的就是让图像的颜色过渡更加自然,让条纹现象减少甚至消失。(这个选项会占用一些 GPU 资源,但尚可接受,开启无压力。)

  • 第一个选项是整体画面的去色阶效果。一般选择 low 就会有不错的效果。
  • 第二个选项是不同颜色交界处去色阶效果。可以选择 high。

2,scaling algorithms菜单

这个是最关键的图像缩放算法的设置,这部分是影响效能最大也是影响画质表现最明显的地方,也是 madVR 的最大特色。
  • 里面4个页面的内容基本类似。让用户选择的东西都是各种图像缩放模式,而不同的模式所消耗的性能也是不同的,基本上从上到下,性能消耗是越来越大,用户要根据自己的配置来考虑。
  • 每个页面的设置主要都是为了解决视频图像中的锯齿(aliasing)和振铃效应(ringing)。
  • 根据选择的不同,右上角会有效果介绍。绿条一般越长也越好。红条则是越低越好。

(1)chroma upscaling:色度拉升
即色度平面放大。不过色度拉伸的算法比较难感受到差别。

  • 如果配置好的话就设置是 NNEDI3 16 或 32(chroma upscaling 这里开到 NNEDI3 64 以上几乎没什么意义,肉眼分辨不出)
  • 如果显卡中等的话,可以设置 Jinc + AR
  • 如果显卡不太好的话,则可设置 Cubic Bicubic75 + AR
  • 如果是 Intel 集显得话,则可设置 Cubic SoftCubic60 + AR

(2)image downscaling:影像缩放
只要输出分辨率小于原始分辨率就会用到这部分的算法,比如 4K 分辨率的视频在 1080P 显示器上播放。

  • 公认的最佳演算法组合(resize 后最接近原本的画面),使用 Catmull-Rom,并勾选“activate anti-ringing filter”(简称 AR)跟”scale in linear light”(简称 SC)。
  • 如果电脑配置特别高的话,还可以考虑下使用 SSIM 1D 100%

(3)image upscaling:影像拉升

也就是影像放大,只要输出目标分辨率大于原始分辨率就会用到这部分的算法,比如 1080P 分辨率的视频在 4K 显示器上播放。
在这里我们可选择使用 doubling(影像翻倍)或 upscaling(影像拉升)。前者效果比后者好很多,所以说能开的话还是开一下吧。(当然如果显卡不是很好的话,就不要使用 doubling 了)
  • 对显卡很有自信的可以开 NNEDI3,至于 neurons 当然是越高越好(当然开销也是越来越大),但 64 和 256 的效果差别不大,所以这里最好的设置还是 NNEDI3 64 neurons。
  • 不过显卡不是特别好的话没必要开这么高,可以用 NNEDI3 32 neurons 或 super-xbr。而据测试观察 super-xbr 会产生更多的 ringing,所以我推荐 NNEDI3 32 neurons。
  • 如果配置中等的话,还是建议设置为 upscaling 下的 Jinc + AR。
  • 显卡吃不消的可以考虑:Lanczos 4+AR(HD4600 等级集显)甚至是 Cubic Bicubic60+AR(HD4000 等级集显)。

(4)upscaling refinement:锐化算法
目的是在于改善放大运算后造成的模糊,只在视视频大后使用。

四、常见问题

1,播放视频的时候会间歇性黑屏?

故障现象:Potplayer 播放视频的时候,时不时会自动在 windowed 和 exclusive 之间来回切换(视频左上角会出现切换字样)。这样每次切换整个界面就会黑一下。
 
问题原因:madvr 默认就是用全屏独占模式(exclusive)。虽然这种模式有它的好处,但如果电脑配置不够就会出现上面的问题。只要将其关闭即可。
 
解决办法:打开 madVR 的设置页面。“rendering”->“general settings”选择中,去掉“enable automatic fullscreen exclusive mode”的勾选。

2,如何判断设置是否适合

在播放不卡顿的前提下,我们选择尽量高的设置。是否卡顿可以这么判断:
  • 可以使用 fraps 查看帧率,全屏模式下应该是等于你显示器刷新率,窗口模式下一般是输出帧率。
  • 也可以用 GPU-Z 查看 GPU 负荷,不到 90% 什么的基本就没问题了

原文出自:www.hangge.com  转载请保留原文链接:http://www.hangge.com/blog/cache/detail_1461.html

实现PC视频播放最强画质教程( Potplayer播放器+MADVR插件)【转】的更多相关文章

  1. PotPlayer播放器——最强大的播放器 - imsoft.cnblogs

    PotPlayer下载:链接 http://pan.baidu.com/s/17vgMM 密码: 8buc PotPlayer关联图标修改方法:打开安装目录替换目录下的PotIcons.dll文件即可 ...

  2. PotPlayer播放器 莫尼卡汉化绿色版 V1.6.48089 32位

    软件名称: PotPlayer播放器 莫尼卡汉化绿色版 软件语言: 简体中文 授权方式: 免费软件 运行环境: Win7 / Vista / Win2003 / WinXP 软件大小: 10.5MB ...

  3. Potplayer播放器使用笔记

    Potplayer播放器使用笔记 1.暂停-播放的快捷键是 空格键2.C播放视频的加速倍数3.X播放的时候减速的倍数 Tab键:显示一下播放的信息,很多 Enter键:全屏或是缩小播放窗口 全屏拉伸快 ...

  4. [No0000188][VCB-Studio 科普教程 2.5] 基于 PotPlayer 和 madVR 的播放器教程(已更新 XySubFilter)

    Potplayer 是高清影视常用的播放器,界面简洁,功能齐全,比 MPC-HC 和 MPC-BE 更人性化:但其默认方案十分糟糕,预设过多错误,无法正确播放 10-bit 视频,一直饱受诟病.VCB ...

  5. Git学习记录 力做全网最强入门教程

    目录 Git学习记录 力做全网最强入门教程 什么是GitHub? 什么是Git? Git的配置 Git的安装(只介绍windos操作系统下) Git的配置 至此我们的入门教程到此结束,更新中级教程要等 ...

  6. ckplayer网页播放器简易教程

    前言 ckplayer是一款在网页上播放视频的免费视频插件,该插件兼容性强.使用简单.api齐全.另外,任何个人网站或商业网站在不修改右键版权的基础上都可以免费使用. 下面将对ckplayer的整个使 ...

  7. 基于ffmpeg网络播放器的教程与总结

    基于ffmpeg网络播放器的教程与总结   一.         概述 为了解决在线无广告播放youku网上的视频.(youku把每个视频切换成若干个小视频). 视频资源解析可以从www.flvcd. ...

  8. 历上最强的音乐播放器(jetA…

    原文地址:历上最强的音乐播放器(jetAudio-8.0.5.320-Plus-VX-完全汉化版)下载作者:盖世天星 历上最强的音乐播放器(jetAudio-8.0.5.320-Plus-VX-完全汉 ...

  9. [转载]历上最强的音乐播放器(jetAudio-8.0.5.320-Plus-VX

    原文地址:历上最强的音乐播放器(jetAudio-8.0.5.320-Plus-VX-完全汉化版)下载作者:盖世天星 历上最强的音乐播放器(jetAudio-8.0.5.320-Plus-VX-完全汉 ...

随机推荐

  1. poj2029 Get Many Persimmon Trees

    http://poj.org/problem?id=2029 单点修改 矩阵查询 二维线段树 #include<cstdio> #include<cstring> #inclu ...

  2. SAN LUN Mapping出错导致文件系统共享冲突,数据恢复成功

    [用户单位] 中国联通某分公司[数据恢复故障描述]    SUN 光纤存储系统,中心存储为6枚300G硬盘组成的RAID6,划分为若干LUN,MAP到不同业务的服务器上,服务器上运行SUN SOLAR ...

  3. MySQL搭建主从数据库 实现读写分离

    首先声明,实际生产中,网站为了提高用户体验,性能等,将数据库实现读写分离是有必要的,我们让主数据库去写入数据,然后当用户查询的时候,然后在从数据库读取数据,故能减轻数据库的压力,实现良好的用户体验! ...

  4. 易错点---所有的字符都自带bool值

    所有的字符都自带布尔值,只有0,None,空为False,其他全部为真!!!!!!!!!!! count = 0 while count < 3 : inp_age =input('Enter ...

  5. vue-cli webpack3扩展多模块打包

    场景 在实际的项目开发中会出现这样的场景,项目中需要多个模块(单页或者多页应用)配合使用的情况,而vue-cli默认只提供了单入口打包,所以就想到对vue-cli进行扩展 实现 首先得知道webpac ...

  6. angular2 学习笔记 ( server-side rendering, angular universal, 服务端渲染 )

    更新 : 2018-01-10  大半年过去了依然没有做 server side render 的冲动,但是一直有关注这方便的做法. 今天领悟了一些道理, 这里做个记入. server side re ...

  7. python实现 多叉树 寻找最短路径

    完全原创,能力有限,欢迎参考,未经允许,请勿转载 ! 完全原创,能力有限,欢迎参考,未经允许,请勿转载 ! 完全原创,能力有限,欢迎参考,未经允许,请勿转载 ! 完全原创,能力有限,欢迎参考,未经允许 ...

  8. 读取properties配置的工具类

    @Service public class AppPropertiesManager implements DisposableBean{ @Value("${shortloan_rate_ ...

  9. else语句的搭配

    1.else语句搭配if 要么怎样,要么怎样 2.else语句搭配for和while 干完循环之后执行else,干不完或者break就不执行 3.else与异常处理 没有问题的话就执行else吧

  10. bootstrap——bootstrap-table(2)

    先看问题现象: 问题描述: 点击"管理子账号"按钮,预期是按照传递的参数更新列表数据,但是最后才发现这个列表根本不会刷新,只会继承前一次的数据,意思也就是不会去请求第二次. 解决方 ...