找回密码
 立即注册
楼主: cylx

60fps真是有毒(SVP更新,支持10bit,新增支付宝微信支付,112楼更新配置心得)

该用户从未签到

5

主题

412

回帖

30

VC币

至尊会员

Rank: 16Rank: 16Rank: 16Rank: 16

积分
165198
blackmickey 发表于 2017-4-15 23:52:10 | 显示全部楼层
shikkoku 发表于 2017-4-15 21:46
默认值的垂直总像素和你的不一样,不过也能设定到。

啊!抱歉
如果您常看的影片是24.000fps的話,
會比較建議用60hz,
會建議59.94hz是針對23.976丶29.97丶59.94fps
或者您可以這樣設定


24.000fps的日系手繪動畫片,好像不太正確?
回复

使用道具 举报

  • TA的每日心情
    开心
    2024-11-15 12:37
  • 签到天数: 91 天

    [LV.6]常住居民II

    2

    主题

    55

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    13672
    shikkoku 发表于 2017-4-16 00:01:32 | 显示全部楼层
    本帖最后由 shikkoku 于 2017-4-16 00:08 编辑
    blackmickey 发表于 2017-4-15 23:52
    啊!抱歉
    如果您常看的影片是24.000fps的話,
    會比較建議用60hz,

    Re-CREATORS好像是24的说,我也有看23的。这个功能我也有用过。话说我自定义了50hz,但是MPC-HC选择列表中只有60和59表示。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-9-5 07:19
  • 签到天数: 1 天

    [LV.1]初来乍到

    0

    主题

    125

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    6769
    Decoherence 发表于 2017-4-16 06:19:13 | 显示全部楼层
    blackmickey 发表于 2017-4-15 17:37
    另外一提,
    如果是常看23.976丶29.970丶59.940的影片,
    會建議螢幕更新率(刷新率)改至影片的整數倍,

    我一直以来是开smooth motion来避免judder的
    今天看了你的回复心血来潮试了下把显示器设置到71.928hz 然后关了smooth motion对比感受了一下
    感觉smooth motion的效果有点类似于游戏里的模拟动态模糊,它也确实是通过合成相邻两帧的画面实现的
    相比于原生整数倍刷新率 开启smooth motion感觉还要更流畅一些 尤其在动画上更是如此 但相应的在高速变化的画面上清晰度会受影响
    回复

    使用道具 举报

    该用户从未签到

    9

    主题

    278

    回帖

    4393

    VC币

    白金会员

    Rank: 12Rank: 12Rank: 12

    积分
    74895
    boday 发表于 2017-4-16 06:33:55 | 显示全部楼层
    blackmickey 发表于 2017-4-15 02:02
    我那篇的意思是上傳的影片畫質渣別介意,
    不是指補幀比畫質更重要的意思

    opengl-backend 在 windows 上我记得前阵子已经默认为 angle 了,所以不需要手动指定。
    回复

    使用道具 举报

    该用户从未签到

    9

    主题

    278

    回帖

    4393

    VC币

    白金会员

    Rank: 12Rank: 12Rank: 12

    积分
    74895
    boday 发表于 2017-4-16 06:38:59 | 显示全部楼层
    shikkoku 发表于 2017-4-15 11:15
    那么不是整倍数的还是应该用oversample来获得更好的效果?

    所有的 interpolation 想解决的就是非整倍数导致的 judder。至于具体用哪个 interpolation 算法就是个人偏好了。

    大致上,以下从左到右,越来越模糊,同时也视觉上越来越顺滑:
    oversample <-> linear <-> catmull_rom <-> mitchell <-> gaussian <-> bicubic

    其中 oversample 因为只在需要时 blend 相邻两帧,所以仍然会保留原始帧率观感;mitchell 是 mpv 目前的默认。
    回复

    使用道具 举报

    该用户从未签到

    9

    主题

    278

    回帖

    4393

    VC币

    白金会员

    Rank: 12Rank: 12Rank: 12

    积分
    74895
    boday 发表于 2017-4-16 06:57:31 | 显示全部楼层
    本帖最后由 boday 于 2017-4-16 07:03 编辑
    blackmickey 发表于 2017-4-15 20:07
    改頻率的風險是螢幕。
    先假設影片是24fps,螢幕是60hz
    由於撥放器要避免撕裂,所以每次顯示的畫面均為完整 ...

    >但又不可能輸出"0.5個前畫面+0.5個後畫面",這樣會有Blend(重影)的問題

    不,这种情况下实际上应该会产生画面撕裂(tearing),输出的图像上半部分和下半部分分别来自片源不同的帧;而不是重影。一般情况下正常工作的播放器应该永远不会有撕裂,因为大家都会使用类似 3:2 pull down 的方式来处理这个问题。

    >不過madvr的smooth motion就是利用類似技巧來抑制Judder,缺點是會有Blend的問題

    smooth motion 的工作原理就是 frame blending,这是一种实现方式,不是一个问题。

    >AMD的Fluid Motion也有類似問題,上圖就是AMD Fluid Motion的截圖。

    这个不是所谓 blend 的问题。这是插补算法的不足产生的 artifact。

    svp、amd fluid motion 以及电视自带的这些,原理和 smooth motion 以及 mpv 的 interpolation 有个本质区别,就是这些算法是用了复杂的算法来识别帧间形成的动态,然后试图填补动态的过程,所以这些算法被称为 motion-biased interpolation;smooth motion 和 mpv 自带的 interpolation 则是单单把相邻帧用简单算法进行 blend。前者好处是输出的每一帧都是清晰的,但因为算法不完美会出现你这里举例的“烂帧”;后者好处是不会有烂帧问题,但简单 blend 势必造成锐度的损失。

    >當畫面剛好在移動時,多1重複幀的影響就是畫面會突然停頓一下,這就被稱為Judder,

    judder 这个词有可能不同人用法不同,不过多数情况下,judder 其实特指的是你前面说的 3:2 pull down 产生的 23232323 这种不平滑感,而不是 fps*1000/1001 导致需要填补重复帧这个情况。

    >透過微幅加減速影片來達到其效果,(25fps->24fps丶59.940fps->60fps)
    缺點是聲音也被加減速了,
    音高會有些變化 或者 音高不變化但變成聲音有Judder。

    你这里可能想说的是 23.976fps->24fps 吧。
    这时音频会全部进行重采样。mpv 的 video-sync=display-resample 也包含了这个同样的功能。

    ps. 以下两个文章可供参考:
    https://github.com/mpv-player/mpv/wiki/Display-synchronization
    https://github.com/mpv-player/mpv/wiki/Interpolation

    以上有误之处也请指正。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2016-11-24 23:16
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    19

    主题

    351

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    8872
    cylx  楼主| 发表于 2017-4-16 12:02:12 | 显示全部楼层
    boday 发表于 2017-4-16 06:57
    >但又不可能輸出"0.5個前畫面+0.5個後畫面",這樣會有Blend(重影)的問題

    不,这种情况下实际上应该会 ...

    按wiki的说法,mpv做的是convolution-based interpolation吧,比madVR的效果更好,性能消耗也更大。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2016-11-29 17:14
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    5

    主题

    44

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    10452
    KC猫 发表于 2017-4-16 14:19:46 | 显示全部楼层
    boday 发表于 2017-4-16 06:33
    opengl-backend 在 windows 上我记得前阵子已经默认为 angle 了,所以不需要手动指定。 ...

    在使用了nvidia optimus技术的双显卡机器上指定使用独显来运行mpv,并使用opengl-backend=angle的话,反复2次 全屏->窗口化->全屏 就会出现画面卡死报错,就算不触发报错,运行效率也没有opengl-backend=win高

    1. (Paused) AV: 00:00:00 / 00:24:00 (0%) A-V:  0.000 DS: 2.000/0
    2. [vo/opengl] Couldn't present: GPU �豸ʵ���Ѿ�����ʹ�� GetDeviceRemovedReason ��ȷ���
    3. �Ӧ�Ĵ�ʩ�� (0x887a0005)
    4. (Paused) AV: 00:00:00 / 00:24:00 (0%) A-V:  0.000 DS: 2.000/0
    5. [vo/opengl] Couldn't resize swapchain: Ӧ�ó����������Ч�ĵ��á����õIJ�����ij�����״̬��
    6. ��ȷ��
    7. [vo/opengl] ���� D3D ���Բ��Ա�ͨ��������Ϣ�鿴��ϸ��Ϣ�� (0x887a0001)
    8. [vo/opengl] Couldn't create EGL pbuffer
    9. [vo/opengl] Couldn't get back buffer after resize
    复制代码


    不知道两者,特性上是不是有什么不同。
    回复

    使用道具 举报

    该用户从未签到

    5

    主题

    412

    回帖

    30

    VC币

    至尊会员

    Rank: 16Rank: 16Rank: 16Rank: 16

    积分
    165198
    blackmickey 发表于 2017-4-16 15:03:00 | 显示全部楼层
    本帖最后由 blackmickey 于 2017-4-16 15:37 编辑
    boday 发表于 2017-4-16 06:57
    >但又不可能輸出"0.5個前畫面+0.5個後畫面",這樣會有Blend(重影)的問題

    不,这种情况下实际上应该会 ...

    >不,这种情况下实际上应该会产生画面撕裂(tearing),输出的图像上半部分和下半部分分别来自片源不同的帧;而不是重影。一般情况下正常工作的播放器应该永远不会有撕裂,因为大家都会使用类似 3:2 pull down 的方式来处理这个问题。

    對,撥放器正常情況下不會出現撕裂,所以在先前回復中並沒有提到這部分,
    當時的說法是想表達24->60(2.5x)其中的0.5x,必須要解決,
    最簡單就是上半部分和下半部分採用不同幀,但這有明顯撕裂,
    因此換個想法,那採用兩幀重疊來處理,這有重影問題,
    再換個想法,3:2 pull down,不過這有每幀不等時的問題,
    目前撥放器大多以3:2 pull down來處理。

    >>不過madvr的smooth motion就是利用類似技巧來抑制Judder,缺點是會有Blend的問題
    >smooth motion 的工作原理就是 frame blending,这是一种实现方式,不是一个问题。
    >>AMD的Fluid Motion也有類似問題,上圖就是AMD Fluid Motion的截圖。
    >这个不是所谓 blend 的问题。这是插补算法的不足产生的 artifact。
    >svp、amd fluid motion 以及电视自带的这些,原理和 smooth motion 以及 mpv 的 interpolation 有个本质区别,就是这些算法是用了复杂的算法来识别帧间形成的动态,然后试图填补动态的过程,所以这些算法被称为 motion-biased interpolation;smooth motion 和 mpv 自带的 interpolation 则是单单把相邻帧用简单算法进行 blend。前者好处是输出的每一帧都是清晰的,但因为算法不完美会出现你这里举例的“烂帧”;后者好处是不会有烂帧问题,但简单 blend 势必造成锐度的损失。

    之前的回覆主要是想簡單說明一下重影是怎樣的畫面
    可能表達方式不同,smooth motion運用了這方式實作,那就必然會有重影的現象,或許稱為問題並不是非常恰當。

    有試過逐幀比較AFM的效果,據觀察發現大致上補出來的有3種狀態,
    1. 幾乎正確算出中間幀(畫面穩定低速平移)
    2. 算出錯誤的部分,部分畫面有artifacts(常見於畫面部分移動速度與他處不同之處,例如手指丶髮尾等...)

    3. 受限於演算法(?),畫面利用相鄰幀重疊來過度,結果就是有重影的畫面(常見於整體畫面變動大時)




    >>當畫面剛好在移動時,多1重複幀的影響就是畫面會突然停頓一下,這就被稱為Judder,
    >judder 这个词有可能不同人用法不同,不过多数情况下,judder 其实特指的是你前面说的 3:2 pull down 产生的 23232323 这种不平滑感,而不是 fps*1000/1001 导致需要填补重复帧这个情况。

    對,這真的是我錯了,這是drop/repeat frame,
    我把drop/repeat frame和Judder搞混了。

    >>透過微幅加減速影片來達到其效果,(25fps->24fps丶59.940fps->60fps)
    缺點是聲音也被加減速了,
    音高會有些變化 或者 音高不變化但變成聲音有Judder。
    >你这里可能想说的是 23.976fps->24fps 吧。
    这时音频会全部进行重采样。mpv 的 video-sync=display-resample 也包含了这个同样的功能。

    mpv沒什麼使用,所以這塊就不是很清楚,Sorry
    Reclock會對影片加減速,包含25fps -> 23.976fps,讓drop/repeat frame不會出現。
    但25fps -> 24fps的變化超過4%,(25fps --[-4.17%]-> 24fps --[2.5x]-> 60fps)
    若不重新採樣,音高會變很多,
    重新採樣的話則有BitPerfact的疑慮。(Judder這段我用錯了,抱歉)

    *Reclock是個DirectShow Filter

    >ps. 以下两个文章可供参考:
    https://github.com/mpv-player/mpv/wiki/Display-synchronization
    https://github.com/mpv-player/mpv/wiki/Interpolation
    以上有误之处也请指正。

    我會好好閱讀這兩篇文章的,謝謝。

    感謝您的回復,糾正我的一些錯誤。

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-11-15 12:37
  • 签到天数: 91 天

    [LV.6]常住居民II

    2

    主题

    55

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    13672
    shikkoku 发表于 2017-4-16 18:20:54 | 显示全部楼层
    boday 发表于 2017-4-16 06:57
    >但又不可能輸出"0.5個前畫面+0.5個後畫面",這樣會有Blend(重影)的問題

    不,这种情况下实际上应该会 ...

    话说新版mpv的opengl-shaders应该怎么用和写配置,要不要删掉原来的各种scale参数。感觉就是用到ewa_lanczossharp看720p>1080p画质也不太好的感觉。
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表