如何识别2台同型号相机gphoto2

How to identify 2 of the same type camera gphoto2

假设我有 2 个完全相同类型的相机,如果我不知道它们插入哪个端口,我将如何正确使用一个而不是另一个?

我知道您可以 select 相机的名称,但它们的名称相同。我知道你可以 select 通过驱动器,但我无法确定用户将相机插入哪个端口。

这意味着我必须遍历相机并 select 根据摘要选择正确的相机。不幸的是,如果相机与其他连接的相机类型相同,我无法判断相机是否有静态唯一标识 属性。

如果我输入 gphoto2 --camera-summary 我会得到:

Camera summary:                                                                
Manufacturer: Canon Inc.
Model: Canon EOS Rebel T6i
  Version: 3-1.0.0
Vendor Extension ID: 0xb (1.0)

Capture Formats: JPEG
Display Formats: Association/Directory, Script, DPOF, MS AVI, MS Wave, JPEG, CRW, Unknown(b103), Unknown(bf02), Defined Type, Unknown(b104), Unknown(b105), Unknown(b982)

Device Capabilities:
    File Download, File Deletion, File Upload
    No Image Capture, No Open Capture, Canon EOS Capture, Canon EOS Shutter Button
    Canon Wifi support

Storage Devices Summary:
store_00020001:
    StorageDescription: SD
    VolumeLabel: None
    Storage Type: Removable RAM (memory card)
    Filesystemtype: Digital Camera Layout (DCIM)
    Access Capability: Read-Write
    Maximum Capability: 31902400512 (30424 MB)
    Free Space (Bytes): 21192966144 (20211 MB)
    Free Space (Images): -1

Device Property Summary:
Model ID(0xd049):(read only) (type=0x6) 2147484563
Property 0xd402:(read only) (type=0xffff) 'Canon EOS Rebel T6i'
Property 0xd407:(read only) (type=0x6) 1
Property 0xd406:(readwrite) (type=0xffff) 'Unknown Initiator'
Property 0xd303:(read only) (type=0x2) 1
Battery Level(0x5001):(read only) (type=0x2) Enumeration [100,0,75,0,50] value: 100% (100)

其中不包括 属性 之类的序列号。

我也试过 gphoto2 --get-config serialnumber 但得到了一个奇怪的结果:

Label: Serial Number                                                           
Type: TEXT
Current: None

任何帮助都会很棒,感谢阅读!

至于与外部设备的一般情况:可能

lsusb

lsusb -v

会告诉你一些不同之处。

另一种方法是比较

的输出
udevadm --env

插入相机时。

编辑: 一个非常简单的相机特定解决方案是使用

设置不同的所有者名称
gphoto2 --set-config ownername=cameraX

并用

阅读
gphoto2 --get-config ownername

这种可能性取决于相机型号,可能所有佳能EOS都支持更改'ownername',其他制造商的相机可能会提供类似的个性化设置。

如果无法单独设置 iso、快门速度等,解决方法是在相机的内存中创建一个文件夹。移除您的 SD 卡并创建一个文件夹:

gphoto2 --mkdir MYINDIVIDUALFOLDERNAME

然后可以看到:

gphoto2 --list-folders

gphoto2 --auto-detect 帮助您显示它们连接到的所有相机型号和端口的列表。然后你可以使用如下命令遍历它们:

gphoto2 --camera=Canon\ EOS\ 1100D --port=usb:001,018 --capture-image

仅向连接到 usb:001,018 的相机发送命令 --capture-image 或者更一般的表示: gphoto2 --camera=$CAMERA --port=$PORT $COMMAND 其中 $CAMERA 和 $PORT 可以从 gphoto2 --auto-detect 中指定。我已经设法通过我的 PC 控制了不到 50 台摄像机。

你问不知道端口怎么迭代?您可以解析命令 gphoto2 --auto-detect.