ssh 到远程 Linux 桌面机器上运行 ffmpeg kmsgrab 会失败,这个大家有遇到过吗?

2024-06-13 21:30:09 +08:00
 wuruxu
ffmpeg -device /dev/dri/card0 -f kmsgrab -i - -vf 'hwmap=derive_device=vaapi,scale_vaapi=w=1920:h=1080:format=nv12' -c:v h264_vaapi -y  output.mkv

我在本地运行都是正常的,每次都是正常的,没有问题
但是 ssh 到远程的 Linux 桌面机器上,偶尔有一两次成功,其他的都是失败
这个问题好奇怪,报错信息如下:

[in#0 @ 0x565189901740] Error opening input: Invalid argument
Error opening input file -.
Error opening input files: Invalid argument
1182 次点击
所在节点    Linux
7 条回复
mujia
2024-06-14 10:01:44 +08:00
这个看起来是你参数问题啊
wuruxu
2024-06-14 10:10:27 +08:00
@mujia 本机运行也没有问题,在远端的机器,偶尔有几次也正常的,觉得参数应该是对的
mujia
2024-06-14 10:22:36 +08:00
@wuruxu 那你得看看版本或者环境是否一致了,否则一样的命令,一样的版本不可能出错的
wuruxu
2024-06-14 10:53:47 +08:00
@mujia 版本都是一样的,就是一个是通过 ssh 过去运行的
mujia
2024-06-14 11:22:30 +08:00
@wuruxu 我搜了一下 kmsgrab ,是跟显示有点关系把,嵌入式的图形界面是不能在 ssh 里面输命令启动的,可能跟这个有关系。
ysc3839
2024-06-14 12:27:44 +08:00
试过 root 运行吗?
kuanat
2024-06-16 16:05:45 +08:00
本来想回复有可能是 headless 导致的,结果看到你已经找到答案了。

虽然 ssh 环境不能访问键盘鼠标显示器这些远程设备,但是 kmsgrab 这种访问 dri 还是可以的,包括很多 headless 环境访问显卡也是一个道理。

如果你需要在无头环境下或者远程主机无输出的环境下录屏,Gnome 新版本身支持创建虚拟显示器(主要是为 gnome 那个 rdp 实现服务的),让远程主机输出到这个虚拟显示器就可以了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1049357

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX