0

我正在使用 EDSDK 3.6.1 和 C# 远程控制佳能 EOS 1000D。

有时(成功)拍照并下载图像(RAW+L)后,相机似乎“挂起”。实时取景不再起作用和/或相机似乎通过 EDSDK 没有响应。当我尝试关闭相机时,它的显示屏显示:

正在录制...
剩余图像:2

这通常意味着:相机正忙于向卡写入数据。但是,在这些情况下,相机似乎会无休止地写入数据。

我是否需要告诉相机我已完成下载图像或类似内容?

但是,在不带卡的情况下远程控制相机时似乎可以使用。

更新 1:

刚遇到这个问题,相机中没有任何卡。

更新 2:

EdsDownloadComplete每次下载后都会调用该命令。但是,我仍然随机收到此错误:有时在第二张或第三张照片/下载之后,有时更晚。很奇怪... :-(

EdsRelease始终返回 0,这意味着此文件/对象上没有更多的引用计数器。

有没有办法在拍照/开始实时取景之前检查下载状态并取消所有剩余的?

4

2 回答 2

1

此消息表示相机认为图像尚未保存。即拍摄的图像仍在缓冲区中。仅当您将 SaveTo 设置为 Host(可能同时使用 Both)时才会发生这种情况,因为这样图像就不会写入存储卡。

下载文件后,您必须调用 EdsDownloadComplete(使用来自 DownloadReady 对象事件的文件指针)。或者,如果您不想下载它,请调用 EdsDownloadCancel(再次使用文件指针)。

于 2017-12-24T02:32:33.403 回答
0

我猜想在下载图像时会同时发生一些事情,而佳能 SDK 从来都不是很好。我认为,如果您锁定 DownloadReady 事件处理,它应该可以工作。

这个答案是由 Johannes Bildstein 作为评论写的,对我来说很好用。

于 2018-07-05T13:08:37.153 回答