我发现一些指南说这曾经很复杂,但现在很简单
sudo apt install obs-studio && sudo apt install v4l2loopback-dkms
这确实在 OBS Studio 上为我提供了一个“启动虚拟摄像头”按钮。当我单击它时,系统会提示我输入密码。就是这样。没有其他事情发生。按钮仍然显示“启动虚拟摄像头”(它应该更改为“停止虚拟摄像头”)。并且 Firefox、Zoom 或 Cheese 未检测到任何虚拟摄像头。
难道我做错了什么?
答案1
就我的情况(Ubuntu 21.04)而言,这与安全启动.Ange1ique
的回答这里对我有用。我会将其复制到此处,并添加说明,以防对其他人有帮助:
卸载
v4l2loopback
:sudo apt-get remove --auto-remove v4l2loopback-dkms
再次安装
v4l2loopback
:sudo apt-get install v4l2loopback-dkms
您将收到一条关于“配置安全启动”的消息,该消息为您提供了为该模块创建密钥的机会。仔细阅读并继续按 Tab 和 Enter。设置密钥/密码并重新启动。
重新启动时在部分中输入密钥/密码
Enroll MOK
,然后继续重新启动。在终端中输入此内容:(
sudo modprobe v4l2loopback
不知道这是否有必要,但这次我没有收到错误)现在安装 OBS,或者如果已经安装则运行它。
答案2
事实证明,禁用安全启动允许 modprobe 使虚拟摄像头正常工作。可能还有其他方法可以做到这一点,而无需禁用安全启动,但对我来说这种方法有效。https://askubuntu.com/a/1198351/652是禁用安全启动的指南。
答案3
几个月前,我在 OBS 论坛上找到了针对同一问题的解决方案,该解决方案涉及从 ppa 重新安装 OBS。
sudo apt update
flatpak remove com.obsproject.Studio
sudo add-apt-repository ppa:obsproject/obs-studio
sudo apt install obs-studio v4l-utils v4l2loopback-utils v4l2loopback-dkms
我还在最后添加了一些软件包,以确保没有遗漏 v4l2loopback 软件包。如果您没有使用 flatpak 安装 OBS,只需确保已安装这些软件包并且是最新的:
sudo apt update
sudo apt install v4l-utils v4l2loopback-utils
答案4
接受的答案对我不起作用。以下是有效的方法。
问题是您缺少 v4l2 库或 Video4Linux2。但您无法安装 v4l2,因为您缺少 Linux 版本的内核头文件。现在,如果您和我一样想知道,难道不应该预装所谓的“内核头文件”吗?这是一个很好的问题。我不知道答案。
1. 从 PPA 安装
首先,您需要从 PPA 安装 OBS。卸载您正在运行的任何 OBS(根据包管理器的要求删除和清除)并按如下方式安装:
sudo apt-add-repository ppa:obsproject/obs-studio
sudo apt-get update
sudo apt-get install ffmpeg obs-studio
(OBS 需要ffmpeg
,所以不要错过这个)
2. 安装内核头文件
接下来,安装内核头文件。要找到内核头文件,请运行:
apt search linux-headers-$(uname -r)
就我而言,输出如下所示
Sorting... Done
Full Text Search... Done
linux-headers-5.19.0-76051900-generic/jammy 5.19.0-76051900.202207312230~1663791054~22.04~28340d4 amd64 [upgradable from: 5.19.0-76051900.202207312230~1660780566~22.04~9d60db1]
Linux kernel headers for version 5.19.0 on 64 bit x86 SMP
在我的例子中,我的标题被称为Linux 标头-5.19.0-76051900-通用所以:
sudo apt install <your headers>
3. 安装v4l2
然后你可以安装库
sudo apt install v4l-utils v4l2loopback-utils v4l2loopback-dkms
4. 测试
重启并打开 OBS。您应该会看到虚拟摄像头按钮出现。单击该按钮并在您要流式传输到的任何源中查找虚拟摄像头。