v4l2loopback デバイスがアプリケーションに表示されない

v4l2loopback デバイスがアプリケーションに表示されない

OBSでv4l2loopbackとv4l2sinkを使用して、Obsプレビューパネルの出力をZoomに「転送」しました。 v4l2loopback デバイスは最近、Zoom、Firefox、および Brave には表示されません。ただし、VLCでループバックが表示されることを確認できます。

オンライン中:

  • ポップ!_OS(20.10)
  • v4l2loopback-dkms(0.12.5-1)
  • OBS(v4l2sinkプラグインを含む)(26.0.2+dfsg1-1)
  • ズーム(5.4.3)

私は通常、次のコマンドを使用してループバックデバイスを起動します。

sudo modprobe v4l2loopback video_nr=99 card_label="OBS Video Source" exclusive_caps=1

これは通常、起動時に次のように実行されます。

$ cat /etc/modprobe.d/v4l2loopback.conf 
options v4l2loopback video_nr=99 card_label="OBS Video Source" exclusive_caps=1

$ cat /etc/modules-load.d/v4l2loopback.conf
v4l2loopback

デバイスは v4l2-ctl で表示されます。

v4l2-ctl --list-devices
OBS Video Source (platform:v4l2loopback-000):
    /dev/video99

Cam Link 4K: Cam Link 4K (usb-0000:06:00.1-4):
    /dev/video2
    /dev/video3

UVC Camera (046d:0990) (usb-0000:06:00.3-1):
    /dev/video0
    /dev/video1

OBSでv4l2sinkを起動すると、VLCに表示されます。ただし、上記のように、OBS Video Sourceデバイスは私が試したすべてのアプリで選択可能なソースとして表示されなくなります。

OBS Video SourceZoomでショーがソースとして再び表示されるようにするにはどうすればよいですか?

答え1

サポートされる色空間/寸法

多くのアプリケーションは特定の色空間とサイズのみをサポートしています。

いくつかの共通サイズ(「640x480」、「1280x720」)と共通の色空間(「YUY2」、つまり「YUYV」)を使用してデータを出力します。

YUY2:1280x720OBS(25.0.7-325-ga2ad2c6ca)の出力で、Zoom(5.4.53350.1027)をループバックデバイスに正常に接続しました。

欠陥のあるバージョンv4l2loopback-dkms

私たち全員が知っているように、Ubuntu-20.04にはv4l2loopback-dkmsバグを防ぐためにソースコードがパッチされています。残念ながら、パッチはモジュールの機能を中断します。

既知の良好な解像度/色空間を使用しても役に立たない場合(パッケージの代わりに)、最新のアップストリームバージョンをお試しください。

ただし、通常はディストリビューションが提供するパッケージを使用する必要があります。

関連情報