m13253 / BiliDan

Play videos on Bilibili.com with MPV and Danmaku2ASS
http://m13253.blogspot.com/2014/06/watch-bilibili-with-biligrab-danmaku2ass.html
Other
514 stars 69 forks source link

--vf 'lavfi="fps=fps=50:round=down"'意义何在? #17

Closed MidoriYakumo closed 9 years ago

MidoriYakumo commented 9 years ago

使用该vf会关闭硬件解码, 这样不利于省电 不少mpv参数和我自己的mpv选项冲突, 感觉没必要加这些不必要的选项诸如--framedrop no --vo wayland,opengl,opengl-old,x11,corevideo,direct3d_shaders,direct3d,sdl,xv, --

m13253 commented 9 years ago

大部分的视频都是 23.976fps 的,如果使用 23.976fps 放弹幕会非常晃眼,这个 niconico 去年的一次升级已经证明了它。 所以我只好增加到 50fps。(至于为什么不是 60fps 是有原因的)

--framedrop 必须为 no,不开它会导致音画(比开了)更严重的不同步,至少在某一个版本的 mpv 上如此,后来听说修好了我就没有测试它了。 --vo 我也是迫不得已加上的,因为有人汇报说它的弹幕非常卡而且模糊,检查出来是它的 MPV 因为没有检测出 3D 加速而使用了 XVideo 输出。所以我在这里强制使用 OpenGL,即使没有 3D 加速也比 XVideo 效果好。把 Wayland 放在前面的原因是 Wayland 环境下原生 shm 输出比 OpenGL 快。

所有这些选项可以再次使用类似 --mpvflags="--vo opengl" 的参数来覆盖。

硬件解码可以使用 --mpvflags="--hwdec vaapi-copy" 来手动打开,为什么要 copy 呢,这和 ASS 弹幕处理有关,虽然效率会低一点。

MidoriYakumo commented 9 years ago

加一个disable recommended mpv flags选项吧, 你说的问题我都没遇见过, 我用的0.7.1 或许这些选项你应该在readme里面推荐

MidoriYakumo commented 9 years ago

me me me niconico 00_00_10_426 我在wayland下面用hwdec=vaapi-copy会出bug / [vaapi] Using GPU readback. This is usually inefficient. 还不如hwdec=vaapi在wayland下自动禁用..

m13253 commented 9 years ago

了解了。 我正在做研究(vaapi-copy 的绿色边框问题我也遇到过)。 这几天没条件写代码,预计下周编码+测试。 如果你有精力请协助我。欢迎 pull request。 谢谢咯。

MidoriYakumo commented 9 years ago

这些bug跟这个项目没关系啊, 这些mpv选项应该从bilidan脱离出来才是 每个人的配置不一样, mpv由自己折腾

m13253 commented 9 years ago

这些bug跟这个项目没关系啊, 这些mpv选项应该从bilidan脱离出来才是

你看看哪些选项留着比较好,哪些选项去掉比较好? --vf=lavfi="fps" 可以用 --vf-del 干掉,而且我认为 50fps 应该成为默认。所以其它选项中哪些你建议去掉?

MidoriYakumo commented 9 years ago

我这里不需要的:

framedrop=no
--vf lavfi="fps=fps=50:round=down" 

按用户喜好配置在~/.mpv/config的, 可以推荐在readme中:

[bilibili]
autofit=XxY
cache-file=TMP
cache-file-size=...
vo=...
hwdec=...
softvol=yes
screenshot-template使用%{media-title}

在bilidan中使用--profile=bilibili

m13253 commented 9 years ago

在 814a3aa7b5b4f97bda4775fca7bcab86aaa70027 中已修复。 移除了 --framedrop no--vo wayland,opengl-hq,opengl,...

m13253 commented 9 years ago

在 7a53e995093b78b856d6fbbde609518c9ee0809f 中已修复。

  1. 对于 mpvflags 中存在 vdpau vaapi vda 字样的时候关闭帧率提升
  2. 对于 mpv v0.6.0 以下提升帧率到 50fps,对于 mpv v0.6.0 及以上提升到 60fps 井开启 framedrop=vo