使用 EDSDK 3.4.0 版与 Rebel T6i 合影时,调用 EdsSendCommand(camera, kEdsCameraCommand_TakePicture, 0);
后可能需要 2 到 30 秒的时间对于对应的kEdsObjectEvent_DirItemCreated
将被接收,表明图像已准备好从相机下载。请注意,在发送 TakePicture
后,相机本身会拍照并且闪光灯几乎立即 熄灭。命令 - 它只是 kEdsObjectEvent_DirItemCreated
看似随机的大量时间延迟的事件。
当连接到第二台 Rebel T6i 时,延迟变得更长且更频繁,即使仅使用其中一台相机拍照也是如此。当两个摄像头都从不同的应用程序运行时,甚至会发生这种情况。
我们希望将这两款相机用作安装的一部分,这要求我们能够在 EdsSendCommand(camera, kEdsCameraCommand_TakePicture, 0)
后最多 5 秒内从相机下载每张照片。被称为。
如果有人对为什么会出现如此大的延迟有任何想法,或者对如何解决它有任何其他建议,我们将不胜感激!
注意:我们目前正在构建 64 位版本,但目前正在尝试同时运行 32 位版本,看看是否有任何改进。
- EDSDK v3.4.0
- OS X 10.12.1
- 64 位
- 叛军 T6i
最佳答案
不使用实时取景将解决问题。您需要将图像直接下载到计算机,而不是先保存到 SD 卡。如果插入任何其他使用实时模式的相机,那么不幸的是,您将继续遇到上述问题。
关于c++ - EDSDK 3.4.0 on OS X 10.12.1 with Rebel t6i : `kEdsObjectEvent_DirItemCreated` event is not received for up to 30 seconds after photo is taken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42626402/