VF2上MPV硬解码MKV可能比VLC更清晰流畅

先感谢RVspace论坛英文区的cwt和他的Arch_cwt20, 我是在学习、安装、调试他的cwt20过程中,发现这个现象的,也许MPV更适合VF2。先看截图和sway自带软件录屏视频。


这些图和视频是我在第一次成功后,再次复现中留存。VF2(8GB) + Arch_cwt20镜像 + TF卡(三星A1白卡)+ Sway + MPV(Hardware Decoding), 一边播放一边录屏无卡顿。除了cwt20+Sway外,我在cwt20+gnome、2311工程版+Sway、2311+gnome 里运行MPV也是流畅的,从截图和视频中能看到播放时, cpu占用并不高,所以可以确定不是软解码。理论上2311+wayfire里MPV硬解码应该也是流畅的,只是我现在暂时无条件测试,Arch_cwt20目前不支持wayfire。MPV实现硬解码需要安装后,在其配置文件里设置,内容附后,里面有两行注释掉的,别改,那是失败项。MPV是没有菜单的,需要从命令行,或者右键点击视频文件打开。别问我理论,我就是个试错者,错多了总会正确。

1、sudo pacman -S mpv

sudo apt install mpv
2、sudo mkdir ~/.config/mpv/
3、打开 ~/.config/mpv/mpv.conf 添加:

vo=gpu
#gpu-api=vulkan
gpu-api=opengl
#gpu-context=waylandvk
gpu-context=wayland
spirv-compiler=shaderc
vulkan-swap-mode=fifo
vulkan-async-transfer=yes
vulkan-async-compute=yes




补图,上面好像放不下。

3 Likes

增加的设置,明显设置是前面关掉了 vulkan 改用 opengl ,而且 wayland 也是没有上 vk 。
但是后面还又增加了 vulkan 的设置。我感觉后面的参数可能没啥意义。最多就到 shaderc 这里。

如果这么判断正确的话,明显就是 vulkan 的兼容有问题,改用 opengl 就好了。
不太清楚 mpv 放 MPV 走的是哪个硬件设备,7110 好像内嵌了一个 decoder 。

不过这就牵扯到另一个问题,MKV 只是一个容器格式,并不是一个编码格式。
只能假设是 H264 ,这个编吗过于广泛应该所有 decoder 都必须支持的格式。

所以,有没有这种可能:关了 vulkan ,导致解码全都走 decoder 了,而如果没有禁用 vulkan ,vulkan 的硬解码能力被错误调用而影响了渲染性能(印象里曾经别的设备上见过这个问题)。
当然还有一个可能就是 vulkan/vlc 下面纯粹是图像上屏部分性能实现有问题。所以解码跟得上但是上屏跟不上导致流畅度降低。mpv 因为是需要一个前端,所以他和前端以及上屏部分的处理不受兼容问题的影响。

1 Like

2311工程版wayfire录屏卡顿的问题解决了,补发视频 VF2(8GB)+ 2311工程版 + wayfire + 闪迪_A1_TF卡 + MPV, 因为可能是TF卡写盘速度慢,边播边录,播放视频快进后,略有些卡顿,上传视频到论坛时提示容量大,只能发B站:【wayfire-2311-mpv】

使用中文就在这里回复好了。
问题就是视频与声音不同步,而且mpv不做任何设置也能正常播放。
我目前强制设置wlroot使用gles2渲染,vulkan会提示什么drm与device不匹配。
等周末我有时间再研究一下。

‘等周末我有时间再研究一下。‘ 或者你可以等等,据说最近VF2会出一个新的工程版,比之前的更流畅,上一个工程版是去年11月份。VF2是有两块解码芯片的,也许新版本有啥新改进也是可以的 。