/dev
を自動作成することをお勧めします udev
を使用したシンボリックリンク 、USB カメラの固有のプロパティ (シリアル番号? ポート番号?) を使用します。 udev ルールについては、この (Arch にも適用する必要がある) チュートリアルを参照してください。または、このチュートリアルの方がわかりやすいかもしれません。
以下を使用して、デバイスのプロパティのリストを取得できます:
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
Patrice Levesque メソッドは問題なく動作しますが、Linux には既に /dev/v4l/by-id/usb-046d_0819_92E84F10-video-index0
としてシンボリック リンクがあることがわかりました。 /dev/v4l/by-id/
フォルダー内 プログラムが /dev/videoX
以外の引数を受け入れることができる場合は、何もする必要はありません。 .