如何在 60Hz 的显示器上流畅播放 24 fps 的视频?

如何在 60Hz 的显示器上流畅播放 24 fps 的视频?

我用mpc-hc在 Win7 x64 上播放视频。使用默认设置(#1),大多数时候视频播放效果都很棒。但对于摇摄镜头,播放并不流畅我逐帧浏览视频,发现平移运动很平滑(例如,每帧水平移动 10 个像素),因此问题在于 23.976 fps 的视频如何插值到 60Hz。

这种抖动看起来就像是由“2:3 下拉”,其中帧播放不均匀,例如:

frame 1, 1, 2, 2, 2, 3, 3, 4, 4, 4, etc(#2)

使用“最佳渲染器设置”(#3)而不是默认禁用 Aero 主题并导致撕裂

将我的 LCD 显示器设置为 50Hz 可能会稍微改善抖动(但我不太清楚)。我的显示器不支持 24Hz 或 48Hz,在 Nvidia 控制面板中强制使用它们会导致屏幕模糊。

我尝试过其他视频播放器(甚高频液晶韓播電子韓式播放器), 这ReClock Directshow 过滤器、来自不同来源的视频文件(#4)、开启/关闭DXVA以及具有不同 GPU 的计算机,但播放中的抖动是相似的。它们都没有解决问题。

是否可以在 60Hz 的显示器上流畅播放 23.976 或 24 fps 的视频?

我认为视频播放器可以通过线性插值使视频更流畅,例如:

1. 100% frame 1
2. 60% frame 1 + 40% frame 2
3. 20% frame 1 + 80% frame 2
4. 80% frame 2 + 20% frame 3
5. 40% frame 2 + 60% frame 3
6. 100% frame 3
7. 60% frame 3 + 40% frame 4
.. etc

任何现有的视频播放器都能做到这一点吗?

脚注:
(#1)视频渲染器:EVR Custom Pres。
(#2)此示例将 24 fps 的视频转换为 30 fps
(#3)视图 > 渲染器设置 > 重置 > 重置为最佳渲染器设置
(#4)我拥有的文件都是 H.264 mkv 文件,但我认为文件格式/编码并不重要。

答案1

查看SmoothVideo 项目

SVP 允许您使用帧插值观看 PC 文件上的任何视频(就像在高端电视和投影仪上观看一样)。它通过在现有帧之间生成中间动画帧来提高帧速率,从而产生非常平滑、流畅和清晰的运动。该技术已经广为人知(“TrimensionDNM”、“Motion Plus”、“Motionflow”等),但现在它免费提供给 PC 用户,只需使用简单的 GUI 和几次鼠标点击即可。

答案2

我不知道有哪个播放器可以在运行中做到这一点,但你可以通过使用帧间技术重新编码视频,将任何 24/25fps 的视频转换成优质的 60fps 视频。

这里有一个非常好的分步教程。它包括前后视频样本。 http://www.spirton.com/convert-videos-to-60fps/

答案3

您通过所谓的线性插值使视频播放更流畅的想法只是一种帧速率转换的混合方法(或混合 FRC)。媒体播放器.NET (MPDN)采用了这种技术并称之为“流体运动”。疯狂VR称之为“平滑运动”。

这种 FRC 方法是 SVP 使用的最基本方法。但是,MPDN 和 madVR 都能够以非常高的精度检测实际的显示刷新率。虽然您不太可能注意到 60Hz 的丢帧/重复帧,但 SVP 仍然受到输入/输出速率不匹配(无论多么轻微)的影响(例如 60.001Hz+参考时钟偏差 vs 60FPS)。使用 SVP 也比播放器的混合 FRC 占用更多的 GPU,后者只占用一小部分渲染时间。

如果你能够对显示器进行超频,MPDN 的速率调谐器为您提供了混合 FRC 的替代方案,通常被认为是更好的选择。混合 FRC 可能会导致模糊/重影,因此应将其作为最后的手段。请参阅GitHub 上的 MPDN 速率调谐器 wiki了解更多信息。

免责声明:我是 MPDN 的作者。

答案4

我经常在 60hz 显示器上使用 VLC 播放 24fps 的视频,它通过带有 nVidia 硬件加速的默认渲染器流畅显示,似乎没有抖动(不确定它使用了什么方法)。

相关内容