我是使用模拟器qemu的新手,我试图利用它来模拟树莓派中使用的raspbian系统,但我不知道如何在其中使用我的相机usb 。有谁可以帮助我?
答案 0 :(得分:1)
要包含USB设备,您可以使用选项'-usbdevice'并包含设备总线的位置。完整选项可能与此类似:
qemu-system-arm -M versatilepb ... -usbdevice host:5.4
主机地址定义(我的意思是'host:'之后的数字)可以通过'lsusb'命令找到。在'lsusb'给出的列表中,您必须找到要共享的设备。例如:
$ lsusb
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 003: ID 046d:0805 Logitech, Inc. Webcam C300
Bus 005 Device 004: ID 046d:082d Logitech, Inc. HD Pro Webcam C920
Bus 005 Device 002: ID 2109:3431
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 046d:c31c Logitech, Inc. Keyboard K120 for Business
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
在前面的示例中,我想要共享的设备是'Logitech,Inc。HD Pro Webcam C920'相机,正如您在相应的行中所看到的那样,总线和设备值在那里被定义(5和4)分别地)。
答案 1 :(得分:0)
自 2019年10月起,我们已经{strong}弃用了goe's answer中的Qemu 4.1.0
和-usbdevice
。
因此,建议是使用新选项-device usb...
,并且您的相机可能是high-speed
,因此您必须使用usb-ehci
,否则会出现speed mismatch
错误
也就是说,我从笔记本电脑通过以下方式启动了带有集成网络摄像头的VM:
qemu-system-x86_64 -enable-kvm -m 2048 -rtc base=localtime -hda /path/win7.img -cpu host -soundhw hda -usb -device usb-ehci,id=ehci -device usb-host,hostbus=1,hostaddr=3
hostbus=1,hostaddr=3
来自:
lsusb
...
Bus 001 Device 003: ID 0408:2fb1 Quanta Computer, Inc.
...
据我所知:
sudo dmesg |grep -i webcam
...
[ 5594.955703] uvcvideo: Found UVC 1.00 device Laptop_Integrated_Webcam_2HDM (0408:2fb1)
...