佳能 EDSDK 2.12+ kEdsPropID_BodyIDEx 已禁用
Canon EDSDK 2.12+ kEdsPropID_BodyIDEx disabled
从 2.12 版开始 - 佳能 EDSDK 似乎不再支持通过 kEdsPropID_BodyIDEx 从连接的相机获取相机序列号。这意味着无法分辨哪个物理相机是哪个。
例如,如果您想连接到 2 个摄像头并为摄像头 1 设置设置 1,为摄像头 2 设置设置 2,您无法从应用程序内部知道哪个摄像头是摄像头 1,哪个是摄像头 2,因此无法知道每个相机应用哪些设置。
如果说摄像头 1 位于黑暗的房间而摄像头 2 位于明亮的房间并且您想对每个应用特定设置,这似乎是一件合理的事情?
我确实看到了这个 post:
Canon SDK: Download latest picture taken by two devices to host
除非我误解了什么,这可以让您在连接后区分应用程序内的摄像头,但不会让您区分物理摄像头。
有人找到解决此问题的方法吗?
干杯!
在这里使用 2.15 和 BodyIDEx 工作正常。您确定将其用作字符串而不是 uint 吗?
除此之外,至少还有两种方法可以区分相机,甚至无需打开会话。
- 可以通过 EdsGetDeviceInfo 获取的端口名称
- 相机对象的指针值
这两个替代值仅在您 运行 软件时有效。一旦您重新启动或在其他地方插入相机,这些值就会改变。
从 2.12 版开始 - 佳能 EDSDK 似乎不再支持通过 kEdsPropID_BodyIDEx 从连接的相机获取相机序列号。这意味着无法分辨哪个物理相机是哪个。
例如,如果您想连接到 2 个摄像头并为摄像头 1 设置设置 1,为摄像头 2 设置设置 2,您无法从应用程序内部知道哪个摄像头是摄像头 1,哪个是摄像头 2,因此无法知道每个相机应用哪些设置。
如果说摄像头 1 位于黑暗的房间而摄像头 2 位于明亮的房间并且您想对每个应用特定设置,这似乎是一件合理的事情?
我确实看到了这个 post: Canon SDK: Download latest picture taken by two devices to host
除非我误解了什么,这可以让您在连接后区分应用程序内的摄像头,但不会让您区分物理摄像头。
有人找到解决此问题的方法吗?
干杯!
在这里使用 2.15 和 BodyIDEx 工作正常。您确定将其用作字符串而不是 uint 吗?
除此之外,至少还有两种方法可以区分相机,甚至无需打开会话。
- 可以通过 EdsGetDeviceInfo 获取的端口名称
- 相机对象的指针值
这两个替代值仅在您 运行 软件时有效。一旦您重新启动或在其他地方插入相机,这些值就会改变。