ubuntu下固定USB相机设备名称

文章目录

  • ubuntu下固定USB相机设备名称
    • 目的
    • 解决方法

ubuntu下固定USB相机设备名称

目的

防止多个USB相机存在时,在不断的热插拔情况下不仅相机序号会改变,同时相机名称也会发生改变,导致无法定位打开特定相机的问题

解决方法

更改udev规则文件,固定相机名称,每个USB设备在linux系统中均存在唯一的idVendor(相机供应商ID)和唯一的idProduct(相机产品ID)

// 连接USB相机到Ubuntu系统
lsusb                   //找到与相机相关的行,记录下供应商ID(Vendor ID)和产品ID(Product ID),类似Bus 001 Device 002: ID 0c45:ae11 Microdia LRCP  imx291 ,其中0c45为Vendor ID, ae11为Product ID
    
cd /etc/udev/rules.d    //定位到规则文件目录下
touch usb_camera.rules  //创建udev规则文件

//在usb_camera.rules中写入如下内容,只要更改idVendor和idProduct就行了,SYMLINK为自定义名称
KERNEL=="video*",ATTRS{idVendor}=="0c45",ATTRS{idProduct}=="ae11",MODE:="0777",SYMLINK+="rgb503A1_camera" 
KERNEL=="video*",ATTRS{idVendor}=="10bb",ATTRS{idProduct}=="2b08",MODE:="0777",SYMLINK+="visual503A1_camera"
    
//重载udev规则    
sudo udevadm control --reload-rules
sudo udevadm trigger

//断开相机,重新插入
ls -l /dev/rgb503A1_camera      //如果规则生效则打印/dev/rgb503A1_camera,后续opencv打开相机就可以通过该名称去打开了    

ls -l /dev/video*                 //查看当前设备的挂载情况
sudo chmod 777 /dev/video0        //添加任何用户情况下,可读可写可执行的权限
cheese -d /dev/rgb503A1_camera    //使用cheese打开该设备

你可能感兴趣的:(ubuntu,linux,USB相机,udev规则)