再起動後もv4l2 USBカメラを同じデバイス名にバインドする方法は?

再起動後もv4l2 USBカメラを同じデバイス名にバインドする方法は?

PCに3つのUSBカメラがあり、そのうちの1つは使用されず、無視しても構いません。 2つの同じカメラを定数デバイス名(たとえば、/dev/video1および)にマップする必要があります/dev/video2。カメラは順序を変更しないでください(カメラ1がvideo1カメラ2としてインストールされていると仮定すると、接続を切断した後にカメラ1 - >、カメラ2 - >以外の順序でなければvideo2なりません。この設定をどのように機能させますか?/dev/video2/dev/video1

カメラ出力ジストリーマー。使用中のカメラv4l2そして紫外線ドライバインタフェース。問題のLinuxディストリビューションは次のとおりです。アーチLinux、カメラ - いくつかのロジクールウェブカメラ。

ベストアンサー1

/devUSBカメラの固有の属性(シリアル番号?ポート番号?)を使用してシンボリックリンクを自動的に作成することをお勧めします。udevこれを見てください(Archでも機能する必要があります)udevルールチュートリアル。またはたぶん、このチュートリアルはより明確です。

以下を使用して、デバイスのプロパティのリストを取得できます。

sudo udevadm info --query=all --name=/dev/video1

それから

sudo udevadm info --query=all --name=/dev/video2

違いを見つけて、.rulesその中にファイルを作成します/etc/udev/rules.d(たとえば、ファイル名として使用できます99-myvideocards.rules)。シリアル番号を使用すると仮定すると、次のルールセットが生成されます。

ATTRS{ID_SERIAL}=="0123456789", SYMLINK+="myfirstvideocard"
ATTRS{ID_SERIAL}=="1234567890", SYMLINK+="mysecondvideocard"

デバイスを取り外して再接続した後(または再起動した後)、/dev/myfirstvideocard常に/dev/mysecondvideocard同じデバイスを指します。

おすすめ記事