播放器一键切换高速度/高质量模式的实现方法,以及madVR观看我组压制动画时参数设置的一些建议

NAZOrip@F
NAZOrip@F 2017年12月31日

    感谢前人积年累月的科普,与几年前不同的是,时至今日观赏动画使用LAV解码+madVR渲染几乎已经成为圈内常识。这套组合拥有的诸多优势不用我们在这里多做赘述,不过近期一些朋友反映Lav解码某些特定格式和参数的视频时会出现掉帧的情况(如wmv和avi,不要问他们为什么知道的),这也暴露出高清解码存在的一些问题,诸如加载速度慢、无法查看章节信息、无法快放慢放、高系统资源、高显存占用等等。这导致了一些场景下的不便,比如作者本人由于压制需要,往往需要在CPU和显卡都处于高负载的情况下检查影片质量,这种时候调用madVR渲染有爆显存的风险。再比如很多同学有下载网上的课程自学的习惯,往往为了节省时间而提高视频播放倍速,或者经常在不同段落之间跳跃而不希望有若干秒的解码延迟,这些情况下LAV+madVR组合就显得不那么合适了。可见,很多时候我们不光需要高质量播放,往往也需要一个功能多速度快的轻量级播放器。

    由于主流播放器皆未提供一键在高速/高质量连个模式间切换的功能,故实际上我们一直以来使用双播放器作为替代方案。这里应要求分享一些设置建议,对本地视频播放有多样化需求的同学可以参考。在开始之前,如果你曾经配置过基于Potplayer/MPC的高质量播放环境,请先打开播放器设置界面将其还原为默认值。

我们的主要逻辑很简单:

  1. 安装potplayer并关联所有视频格式。对于作者本人而言,静下心来欣赏一部影片的机会远没有看各种乱七八糟视频的时候多,故将pot作为全局播放器,采用默认配置(ffmpeg解码+potEVR渲染)以达到不错的质量/速度平衡。
  2. 安装MPC播放器(本文以界面颜值更高的MPC-BE为例),采用LAV解码+MADVR渲染配置,手动关联主要格式作为观赏用播放器。

    具体操作如下:

    首先到官方地址下载全套安装工具,包括potplayerMPC-BELAV Filters(分离/解码器)madVR(视频渲染器)xy-SubFilter(madVR专用字幕插件),madVR环境下使用xy-VSFilter可能导致渲染分辨率错误故不予采用。

    如果你懒得下载,也可以到这个地址(做了防爆压缩,解压密码NAZOrip)下载整合包,不保证最新就是了。

    接下来依次安装Potplayer(关联所有格式,安装附带解码器)、MPC-BE(不关联任何格式、记录下安装位置下文会用)、LAV Filter、xy-SubFilter以及madVR。其中最后两项是硬盘版,只需要放到你喜欢的位置(目录中不含中文)并运行注册文件(Install_XySubFilter.bat/install.bat)即可完成注册。建议将Potplayer、LAV Filter以及madVR安装至SSD以提高启动速度。

    然后如有需要,可以参考VCB-Studio 科普教程 2.5:基于 PotPlayer 和 madVR 的播放器教程 对播放器进行一些交互上的个性化定制,这部分完全是为了让软件使用更顺手而做的,并非必要。比如我个人会将两个播放器中相同功能的快捷键同步,诸位请随意。有关视频播放的选项,potplayer的默认设置对的解码精度有截断,这会在某种程度上导致色带更加明显、产生偏色等等效应,不过pot也拜此所赐获得完美的速度,不光启动快,在段落之间跳跃也毫无延迟。故potplayer使用默认设置即可满足我们对轻量级播放的需求,而MPC则与之相反,两者都没有什么设置的必要。

    接下来可以开始对MPC环境的LAV+madVR进行配置了。
    随便开启一个视频,右键开启选项设置,切换到扩展滤镜-点击添加滤镜,如果之前安装正确,这里可以添加如图所示的四个滤镜。

    这里分别是分离器、音视频解码器、字幕渲染器。点击每个单独滤镜,全部设置为首选(如图)。

    接下来分别在视频、字幕选项中选择madVR和xy-SubFilter进行渲染。就可以确保在MPC-BE使用LAV解码+madVR渲染了。


    之后右键点击视频,菜单中分别选择“滤镜-LAV VideoDecoder”和“滤镜-madVR Renderer-Edit Settings”打开解码器和渲染器的控制面板。两者的配置请参考上文中给出链接的VCB科普教程2.5,搜索“LAV 和字幕设置篇”(音频解码的设置也在这部分里)和“madVR 调教篇”即可。我这里直接盗图了。

    最后,为了方便我们一键在两种模式之间切换,需要修改注册表将MPC-BE关连到指定格式的右键菜单。
    新建一个文本文档,将扩展名更改为.reg,右键编辑并贴入以下内容:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\SystemFileAssociations\.MKV\Shell\用 MPC-BE 打开]
@=""
"icon"="\"E:\\Program Files\\MPC-BE x64\\mpc-be64.exe\""

[HKEY_CURRENT_USER\Software\Classes\SystemFileAssociations\.MKV\Shell\用 MPC-BE 打开\Command]
@="\"E:\\Program Files\\MPC-BE x64\\mpc-be64.exe\" \"%1\""

[HKEY_CURRENT_USER\Software\Classes\SystemFileAssociations\.MP4\Shell\用 MPC-BE 打开]
@=""
"icon"="\"E:\\Program Files\\MPC-BE x64\\mpc-be64.exe\""

[HKEY_CURRENT_USER\Software\Classes\SystemFileAssociations\.MP4\Shell\用 MPC-BE 打开\Command]
@="\"E:\\Program Files\\MPC-BE x64\\mpc-be64.exe\" \"%1\""

    稍微解释一下,win7以上系统中,在SystemFileAssociations中指定扩展名的Shell项中添加新项可以定制右键菜单。每个菜单包括两个键值,分别代表这个选项的图标和关联命令。修改"E:\\Program Files\\MPC-BE x64\\mpc-be64.exe\"为你自己的mpc-be64.exe的安装地址,由于该文件中内封了图标所以两个地址都指向它即可,记住除了最后一个‘\’外都要使用两个斜杠。我们这里只为MKV和MP4添加了右键菜单,如果需要为其他格式诸如.hevc/.h264等添加请诸位自行照猫画虎。(注意,请按文章所述在HKEY_CURRENT_USER中添加键值,不要自行搜索,HKEY_CLASSES_ROOT中有相同项,如果鬼迷心窍添加错了会因权限问题导致调用失败)

    保存、运行,就可以开启愉快的观赏视频之旅了。
    完成后效果大概像这样:

    最后针对我组压制作品,播放时使用的madVR参数设置提一些简单建议。
    由于我组制作都是1080P作品,并不需要考虑luma拉伸,实际上需要设置的参数很少。对于Chroma(包括luma)的放大算法,建议只选择NGU-Standard/AA即可。算法如其名,New Generation Upscaling,以优秀的锐度带来比其他算法高到不知道哪里去的观影体验。并且现在的NGU经过多次更新早已经不是当年那个显卡杀手,根据性能选择Low-Medium-High档位即可,由于过去机器性能孱弱和算法优化差导致的为了照顾性能选择其他算法,在今年已经是不需要的事情了。

    另外对于播放后处理,建议开启微弱的自适应锐化。有的同学视主观调整为洪水猛兽,一提到锐化,他就要开喷了,所以对于这个问题这里要给大家稍微做一些科普。如大家所知我组的压制作品是以尊重原盘为基本风格的,但这也只是为了将选择权留给观众而已。动画制作组不可能永远是对的(实际上因为各种条件限制制作组往往会犯错,否则我们的视频压制也就不必考虑瑕疵修复这回事了),如果有一种后处理能完美的提高目视质量,让观影体验更好,那么这种处理完全应该是可接受、并应该提倡的。然而如大家所知,好康的东西往往是不存在的。例如想要去色带就要损失细节、想要抗锯齿就会损失锐度,视频处理中往往在得到的同时也会伴随着失去。但是这并不意味着我们应该用虚无主义的态度来对待这个问题,根据我们长期的经验以及大量的测试,根据人眼对锐度敏感的特性,开启微弱的自适应锐化,可以使主要线条与原盘无异的同时,有效修正动画制作中非常常见的锐度不足问题,有效提升观影体验。
    简单来说开就对了,具体设置如下图所示。由于制作导致的虚化问题非常常见,对于老旧动画(只要没旧到赛璐璐那个程度)、并没有爆炸制作经费的绝大多数新番提升明显,对本身高质量高锐度的源几乎没影响。

    另外特别说一下关于anti-bloating(抗膨胀)和anti-ringing(抗光环)。理论上不加后处理的裸的锐化就是一坨屎,但鉴于madVR的锐化并不是一个单纯的USM,本身已经包含一些处理逻辑,加之我们开的是自适应模式,参数又比较低,再加本身我组做高压动画杂讯较少,所以实际上不加后处理也影响不大,而开启则会显著提高显卡占用。根据大量对比,我们认为锐化造成的光环效应可以忽略不计,dering滤镜造成的纹理损伤也可以忽略不计,请各位根据自己的配置自行选用。

    
    最后的最后,做两个提醒。
    1、使用笔记本的同学请打开NV设置界面,设置MPC默认用独显启动,以防使用孱弱的核显渲染导致帧数爆炸(如图示)

    
    2、potplayer默认不具备显示视频缩略图功能(或者说这个功能不在播放器范畴内),如果对预览有需求的同学可以额外安装Media Preview Configuration(一个具有完善关联与注销功能的预览工具)以实现win界面内的缩略预览。


    
    3、对于使用win10的小伙伴,如果出现madvr全屏模式黑屏、崩溃的情况,你很有可能是正版系统的受害者。请到madvr的全局设置中调整开启DX11,并关闭vsync,如下图。

    [...]    另外值得一提的是,本作原生 HD 分辨率的作画,在放大时使用了锐度极低的算法,在稍大的屏幕上看都会发现明显的模糊,给人一种自己近视了的错觉,这显然不能说是一种良好的观影体验。在压制的过程中我们对主要线条采取了很轻微的收线(出于原盘信仰并没有做高强度的处理),如果你使用 potplayer 播放,那么可以在一定程度上缓解上述症状;如果你使用 MadVR 播放,渲染时配合一定程度的抗烂线(设置[...]