关于MPV的video-sync选项
本帖最后由 kirame 于 2023-8-17 13:57 编辑这两天忙里偷闲把播放器从PotPlayer+madVR那一套迁移到了MPV,只能说确实很香,完全便携化的配置不再需要为重装系统后的配置犯愁了。
不过过程中也发现了一个问题,就是video-sync的表现不太符合预期。我的显示设备是电视,能对24p over 60Hz的源自动去抖(前提是3:2 pulldown)。我一直以来也在依赖这个功能,没有用过也不打算用smooth motion之类的选项。在查看MPV文档以后发现video-sync设置成audio或者display-vdrop应该可以实现由电视去抖:
audio: Time video frames to audio. This is the most robust mode, because the player doesn't have to assume anything about how the display behaves. The disadvantage is that it can lead to occasional frame drops or repeats. If audio is disabled, this uses the system clock. This is the default mode.
display-vdrop: Drop or repeat video frames to compensate desyncing video. (Although it should have the same effects as audio, the implementation is very different.)
我的预期是:audio和display-vdrop都会保证AV同步且音频没有重采样,并对24p视频做3:2 pulldown后输出到60Hz电视上,由电视自动调整刷新率后实现无抖播放。
我看到的结果是:两个选项确实都触发了电视的去抖(拖动鼠标明显变卡顿,说明电视降了刷新率),但audio选项下画面会有持续且频繁的卡顿,完全无法观看,而display-vdrop则没这个问题。
我的怀疑是:--video-sync=audio下往60Hz设备输出24p视频并没有做标准的3:2 pulldown,而是以其他某种方式做了frame repeat,若真是这样那么文档里说的二者“效果一样”就不是很准确。
在这里请教一下,有没有坛友遇到过类似的问题,或是对MPV实现比较熟悉的坛友能够解释一下这两个选项具体的行为区别,十分感谢。
EDIT: 我在用的其他可能相关的选项:
gpu-api=d3d11
d3d11-exclusive-fs=yes
d3d11-sync-interval=1
ao=wasapi
audio-exclusive=yes 本帖最后由 孤雨独火 于 2023-8-17 23:12 编辑
audio在我这里可以没有帧重复,在我的gsync ultimate 上能完美触发24hz
The disadvantage is that it can lead to occasional frame drops or repeats.
文档写了 audio 的问题吧,具体原因可能要读源码了 孤雨独火 发表于 2023-8-17 23:09
audio在我这里可以没有帧重复,在我的gsync ultimate 上能完美触发24hz
VRR还没试过,没有HDMI 2.1的卡 {:8_746:} snylonue 发表于 2023-8-18 08:26
文档写了 audio 的问题吧,具体原因可能要读源码了
问题应该是出在二者repeat/drop frame的具体方法的区别上,回头研究一下实现
页:
[1]