Hardware

檢測 USB 相機按鈕事件?

  • August 20, 2019

我試圖檢測我的 USB 相機的快照按鈕何時被按下。

以下是我收集的有關我的相機的資訊cat /proc/bus/input/devices

I: Bus=0003 Vendor=0c45 Product=6353 Version=0150
N: Name="USB Microscope"
P: Phys=usb-3f980000.usb-1.3/button
S: Sysfs=/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.0/input/input14
U: Uniq=
H: Handlers=kbd event0
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0 0 0 0

像往常一樣,沒有關於我的特定型號的文件或標識:)

我嘗試用​​ 聽 /dev/input/event0 cat /dev/input/event0,但是,與滑鼠或鍵盤不同,我沒有看到任何結果。我還嘗試使用 python 模組 evdev 監聽這個處理程序,但沒有成功……

有人對這個案子有線索嗎?

如果清楚地說input14(在特定啟動後的配置中,編號可以更改),那麼當然看event0不會顯示任何內容。

1)evtest以root身份執行,看看你是否可以通過查看描述找出它是哪個設備,然後聽它(我的USB網路攝像頭產生KEY_CAMERA)。

  1. 執行xev,將游標移動到視窗中,查看事件是否出現(我的 USB 網路攝像頭產生XF86WebCam)。

3)您可能需要使用luvcview或類似程序啟動您的相機以使其產生事件。

  1. 如果您決定使用輸入層介面,請查看/dev/input/by-id,如果沒有條目,請查看 at指向設備/dev/input/by-path的符號連結,這些連結event*保證在引導過程中保持不變。

引用自:https://unix.stackexchange.com/questions/398660