问题标签 [canon-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - zoomRect、zoomCoordinates 在 Canon EDSDK 中带来 PROPERTİES_UNAVAILABLE 错误
我可以使用在 codeproject Canon EDSDK Library中找到的这个库来使用 canon sdk
使用 SDK 和上面提到的库,我必须向上/向下/向左/向右移动缩放的实时视图。我可以缩放,但我无法移动它以查看调整手动缩放的正确位置。
我已经搜索过,我来到了 zoomRect、zoomPosition、zoomCoordinates 然后我将这两个方法添加到 camera.cs 并在我得到 evfImageRef 之后从 DownloadEvf() 方法调用它们。然后我将它传递给方法。但是创建了一个矩形,但每次都在变化,而且值很疯狂。错误代码是 Properties_unavailable
另一点是 SDK 中的 zoompositon 也不起作用,或者我无法使其工作,因此它给出了不支持的错误。我也在为它添加代码。
Rectangle 对象是 EOSDigital.SDK.Rectangle 对象。CanonSDK 是 EOSDigital.SDK.CanonSDK 对象。MainCamera 是相机对象。
这就是我尝试发送缩放位置的方式
c# - 佳能 EDSDK - 多台相机 - 同时拍照
我正在使用这个库:https ://www.codeproject.com/Articles/688276/Canon-EDSDK-Tutorial-in-Csharp
我有多个相机(佳能 EOS 1300D)。我用 API 加载它们:
然后我进行一些设置(将文件保存在 PC 中,而不是相机中并打开会话)。之后我想一次制作多张照片。就像彼此靠近一样。现在我能想到的只有这样:
可悲的是,这种方法有一点延迟。但是在多台摄像机(5)中,延迟大约是 200-300 毫秒(我想,不记得了),这太大了。
另一个信息:为了拍照,我使用 WPF 和按钮。相机通过 USB 集线器连接,没有 SD 卡,我将照片直接保存到计算机。一切正常,我需要立即拍照。
edsdk - 使用 EDSDK 进行高速(连拍)拍摄
我正在尝试使用 EOS 40D 进行高速拍摄。当在 UI 中将驱动模式设置为“高速连拍”进行手动操作时,该相机可维持约 6 fps。
如何使用 EDSDK 复制它?
下面的代码选择“高速连续”驱动模式(0x4)并kEdsCameraCommand_TakePicture
尽可能快地发送。每次拍摄后,相机保持“忙碌”状态约 1 秒钟。这与单张拍摄的速度相同。我测试了所有可用的驱动模式,虽然有些较慢,但没有一个比 1 fps 快。
请注意,EOS 40D 不支持kEdsCameraCommand_PressShutterButton
. 使用它给出EDS_ERR_INVALID_PARAMETER
. EDSDK 文档说:“EOS 50D 或 EOS 5D Mark II 或更高版本的相机支持此命令”所以 40D 太旧了。
典型输出如下所示:
代码 129 是EDS_ERR_DEVICE_BUSY
.
c# - .Net 4.0 WPF 应用程序使用 Canon EDSDK Api 遇到大量内存不足错误
我使用佳能 EDSDK Api 的 Net 4.0 Wpf 照相亭应用程序由于不断出现内存不足错误(例如:
System.OutOfMemoryException:内存不足。在 System.Drawing.Image.FromStream(流流,布尔值 useEmbeddedColorManagement,布尔值 validateImageData)
当应用程序捕获图像并将其从相机下载到计算机然后尝试将图像裁剪到特定尺寸时,这种情况经常发生
以下是最常发生崩溃的片段:
任何建议将不胜感激
xcode - 尝试使用 Xcode 与佳能的 EDSDK 合作
刚刚尝试将 EDSDK 框架安装到 Xcode 项目框架文件夹中。但是我无法运行任何东西,因为我收到了很多错误消息。例如在 EDSDK.h 文件中的这个位置:
我收到错误消息:
只允许在函数定义中使用不带类型的参数列表
我到处都是这些。我真的很想制作一个 MacOS 应用程序,它可以拍摄图像并以特定名称保存图像。
canon-sdk - 读取 CR2 文件时 Canon EDSDK.EdsGetImage 错误 EDS_ERR_NOT_SUPPORTED
我正在尝试使用佳能 EDSDKv0309W 读取 CR2 文件。我没有找到此 SDK 版本的示例,因此我查看了旧版本的几个示例并创建了以下代码。但我总是在 EDSDK.EdsGetImage(..) 行中得到 EDS_ERR_NOT_SUPPORTED。
使用 .Net4.6.1 下的 32 位编译,我可以从 EOS500D 和 M100 拍摄的图像中读取正确的高度和高度。但我没有得到图像。所以我的假设是我从 EdsCreateMemoryStream 得到了一个错误的指针。但我看不出有什么问题以及如何调试它。任何帮助将不胜感激。
sdk - 佳能是否为其相机提供 SDK 文档
我目前正在使用 gphoto2 连接到我的佳能 EOS M100 并对其进行远程控制。我真正需要的一项功能是能够在相机的液晶屏上显示图像,以便进行预览。不幸的是,gphoto2 不提供这样的支持。看起来我需要开发自己的驱动程序来连接相机,但要开始使用,我需要知道佳能是否提供 SDK 文档?到目前为止,我还没有找到任何东西,尽管自从 gphoto2 存在以来肯定存在某些东西?
c# - C# Canon EDSDK 在实时查看期间内存泄漏
我正在使用 Canon EDSDK 库开发小型 c# wpf 应用程序。我正在使用实时查看功能,在我的桌面应用程序中显示来自佳能相机的实时图片。
在实时取景过程中(while 循环),应用程序在内存中增长。我知道它应该增长,一段时间后 GC 运行并清除内存。但是即使在 GC 清除内存之后,它也永远不会回到开始级别。
此外,经过长时间的工作,我的应用程序关闭的时间非常长 - 有时甚至需要几分钟才能完全关闭它。
我期待,我有内存泄漏,但我看不到它在哪里。
这是我的主while循环的实时视图方法:
为实时取景返回单个 BitmapImage(单帧)的方法如下所示:
我究竟做错了什么?你能帮我追踪泄漏或告诉我我的问题在哪里吗?在将位图用作图像源之前,我试图冻结它们,但应用程序仍在泄漏。
我将非常感谢您的所有建议。
谢谢
谢谢达里奥
python - 在 Python 中使用 canon_cr3 库将 .CR3 文件转换为 .JPG
我想使用 Python 将 .CR3 文件(相机是 Canon PowerShot SX70 HS)转换为 .JPG 文件。我在 GitHub 上找到了一个项目,它实际上应该完成所需的任务:https ://github.com/lclevy/canon_cr3
我已经使用 setup.py 文件安装了 canon_cr3 库。确实,安装库后存在 canon_cr3-13mar2019-py3.6.egg 文件。因此,当我输入
在 Python 3.6.1 shell 中按回车,似乎导入成功(没有出现错误消息)。但是,当我在https://github.com/lclevy/canon_cr3#example-usage上尝试示例时
出现错误:
错误出现在执行stsz()函数的“cr3_lib.py”文件中。getLongBE ()函数在库的“parse_cr3.py”文件中定义。但是,我看不到“parse_cr3.py”文件和“cr3_lib.py”文件之间的链接。
我不知道我错过了什么,尝试什么或如何解决这个问题。你有什么建议吗?或者是否有另一种方法可以在 Python 中将 .CR3 文件转换为 .png?
c++ - 使用佳能 EDSDK 时出现未定义的引用错误
我正在开发一个使用佳能 EDSDK 的应用程序。
根据文档,我已将 EDSDK 文件夹移动到我的项目文件夹中,包含.h文件的路径,并使用.pro文件中的这些代码行将 EDSDK 库链接到我的项目:
路径是正确的。
我还包括了所有的.h文件,如下所示:
问题是当我使用简单的代码行时,例如:
编译器抱怨“对 `__imp_EdsGetCameraList' 的未定义引用”。
我错过了什么吗?任何帮助表示赞赏。
Ps 我正在使用 MinGW 7.3.0。C++ 编译器的 64 位,如果这很重要的话。