其次是 Windows HEVC 插件,用于激活 Windows 10 和 11 上的解码器的,可能部分电脑上不需要也可调用 GPU 进行解码,但是不清楚为什么。该插件在 Microsoft Store 中有两个版本,一个是 HEVC Video Extensions,收费 7 元,收费主要是因为专利费;另一个是 HEVC Video Extensions from Device Manufacturer,虽然是免费的不过现在以及不支持免费下载了,如果有需要但是不希望付费的话可以在互联网上找找别的办法试着安装 HEVC Video Extensions from Device Manufacturer。
最后就是一些和试验性功能有关的问题,比如在 Edge 上即使完全具备了 HEVC 解码能力但看 Bilibili 依旧会「反复横跳」,这时就需要进入 edge://flags 修改如下的三个实验开关解决:
- PlayReady DRM:设置为 Enabled
- Media Foundation Playback:设置为 Enabled
- Widevine DRM:设置为 Enabled
而在海外的读者,除了 Bilibili 还可以在 Youtube、Netflix 等平台上在线观看 HDR 内容,通常无需额外进行配置。
观看本地 HDR 内容除了在线播放 HDR 内容,相信不少人也有在本地观看 HDR 内容的需求。 在本地观看 HDR 内容时,我推荐大家使用 Potplayer 作为播放器主体。一方面是,Potplayer 支持众多的解码格式,且默认安装好以后的设置对于普通消费者来说能做到开箱即用;另一方面就是 Potplayer 支持更现代的 HDR 渲染,对于普通消费者无需折腾,但也面向发烧友时也能借助第三工具打造出更「正确」的 HDR 显示效果。
如果你没有太过发烧的需求,那么后续内容可以直接跳过;如果你空闲较多或对播放质量要求很高,那么可以试试用这个方案自定义你的 Potplayer,获得更好的观影体验。
播放器的工作流程,图源:Play nice with LAV filters when rendering DVD
在引入这一部分内容之前我们首先需要了解一下播放器是如何进行工作的,简单来说分为三步:
- 分离
- 解码
- 渲染
在分离步骤中,播放器中的分离模块(splitter / demuxer)会将封装在一起的视频轨、音频轨、字幕轨、章节信息和其他信息一一分离,并把对应的内容传给下一步的解码器,这一部分对系统的资源开销极小,几乎可以忽略不计。
而在解码步骤中,主要是将分离模块给到的视频、音频信息实时地从压缩信息转为非压缩信息交给渲染步骤。在这一步中 GPU 在支持解码的情况下,系统会调用 GPU 进行硬解码以较低 CPU 的资源开销,否则将仅仅依靠 CPU 进行解码,而音频则只依赖 CPU 进行解码。
在最后渲染的过程中,则是将数字型号转为显示输出和音频输出,交给显示器和耳机。不过在渲染过程中,渲染器还会根据内部的算法还会进行一系列的转换,比如最常见的电视节目的采用的 YCbCr 色度抽样到显示器上更常用的 RGB 转换、可能存在的抗锯齿渲染、可能存在的补帧算法等等有助于观感的提升的算法。
所以想要尽可能还原画质,甚至是加入点特制的「画面味精」,最重要的就是最后的渲染步骤;不过正确地抽离出文件中轨道,也有助于还原画面。所以除了 Potplayer 以外我们还需要准备:
- 第三方分离器:LAV Filter
- 第三方渲染器:madVR