问题标签 [edsdk]
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++ - 佳能 SDK。从相机拍照
我有佳能 EOS D600 相机。需要使用 C++ 拍照。文档对我没有帮助。你有示例代码,可以拍照吗?这没有帮助:
有错误:[链接器错误]未定义引用` imp _EdsInitializeSDK@0'
请帮忙
c++ - EDSDK cpp 错误:10 EDS_ERR_MISSING_SUBCOMPONENT
我正在尝试开始使用 EDSDK 来控制我的佳能 500D。我是 cpp 和 windows XP 应用程序的新手,我正在使用 Visual Studio。经过大量的盲目试验和错误后,我终于设法让应用程序编译文档中的基本示例代码。为此,我将 EDSDK.h、EDSDKTypes.h 和 EDSDKErrors.h 标头放在正确的位置,并将 EDSDK.dll 和 EDSDK.lib 与代码放在同一文件夹中。它似乎正在捡起这些。我已经让 500D 被 PC 识别,所以我相信 USB 驱动程序在那里。
该代码只是试图拿起相机:
但是,当我运行此控制台应用程序时,错误被拾取为 10 - 根据文档,这表明缺少子组件。无论相机是否连接都会发生这种情况,所以我认为这是编译中缺少的东西。但是我对文档一无所知。
我已经从下载而不是官方途径安装了 edsdk 2.4 Windows 版本,所以这可能是一个问题。
任何人都可以帮忙吗?具体来说,我怎样才能找出丢失的子组件可能是什么,以便我可以包含它。这是构建的子组件,例如头文件还是驱动程序?
c++ - 事件处理程序 Canon SDK 2.12 没有回调
我编写了一个简单的控制台程序来在佳能 EOS 600D 上拍照。到目前为止它工作正常,但我想
- 拍摄照片时获取事件
- 如果它是导致事件的新图像,我想将它作为文件对象来访问它的属性,如文件名
我的事件处理程序已初始化,但在拍照时我没有收到事件/回调。
我在其他线程中读到,如果我在 Windows 64Bit 上工作可能会出现问题,但今天几乎所有系统都是 64 位的。这真的是个问题吗?
这是我到目前为止的代码:
谢谢你的帮助!
最好的问候,理查德
c++ - 佳能 SDK - 将图像下载到主机 PC
我正在尝试将佳能相机拍摄的图像从其 SD 卡下载到主机 PC,我已经编写了代码,以便它可以拍摄并且不再将其保存在 SD 卡上,但我在主机PC。有人有方向吗??我的主要和功能如下所示,不包括 getFirstCamera 功能。
我真的不知道回调函数等是如何工作的。所以如果有人可以提供代码片段,如果有需要修复的东西,那就太好了
edsdk - 设置自定义 LiveView 白平衡值
使用 EDSDK,我想以编程方式设置 LiveView 流的白平衡 (RGGB) 值,以及直接来自凸轮的 JPG(和 RAW)图像的白平衡。手动白平衡实时取景和离机图像的过程对我来说并不完全清楚,在 EDSDK 手册中也不是很清楚。
通过反复试验,我通过发出带有灰卡坐标的 kEdsCameraCommand_DoClickWBEvf 命令来校准 LiveView。这似乎会影响实时取景:
- 实时取景切换到“ClickWB”(-1)白平衡设置
- 相机设置保持不变:它不会改变相机的拍摄值。
- 请注意,当设置为“ClickWB”时,相机上的“手动 WB”图标会消失,似乎有问题。
显然,佳能的 EOS 实用程序做的事情略有不同。使用 PTP 事件的一些跟踪和轮询,我看到:
- 单击白平衡会向相机发送类似的 ClickWB 命令。
- 单击“应用于拍摄的图像”时,向相机发送命令
- 相机白平衡保持在值 6(“手动”、“白点”或“白皮书”,具体取决于上下文)。
- Liveview 在切换到 6 时也会受到影响。
- 跟踪显示“CPtpCamera::TranslateMWb”命令的证据,好像有一个命令来设置用户余额。
- 显然可以检索“原始”白平衡系数,因为 EOS 显示有关系数不正确的警告。
对于 RAW 图像,我通过存储灰卡 RAW 中的白平衡系数来解决白平衡问题,并在将新图像(没有灰卡)转换为 TIFF 时重新应用这些系数。这不会影响相机上的 JPG,即拍白平衡,并且在重置后无法恢复。
断开/重新连接相机并(以编程方式)应用先前校准或存储的 WB 值时,我被卡住了。这是否可能,如果可以,我如何复制原始白平衡值。这里有谁有使用 EDSDK 手动 WBing 的经验,愿意分享分享的类型/顺序吗?
笔记:
- 佳能对 EDSDK 不提供任何官方技术支持
- 据报道,较旧的 SDK 包含命令(例如,在 2.5 kEdsPropID_UserWhiteBalanceData 中)。这个一定要换吗?
--- 2014 年 12 月 17 日更新 ---
我目前(间接)与佳能的 EDSDK 开发人员进行“官方”联系,目前没有通过 EDSDK 设置相机内自定义白平衡的官方方式。
c# - 佳能 EDSDK:如何下载录制的视频?
我需要在我的电脑上下载我刚刚录制的视频。我设法用图片做到了,但对于视频,我只得到一个空文件。
我已经注册了对象事件处理程序
然后,我开始录制:
对象事件处理程序:
最后,downolad
在调试模式下,方法 EDSDK.EdsDownload 永远不会结束,但是没有异常,或者返回码...
请帮忙 !
edsdk - 如何使用佳能 edsdk 和 java 录制视频?
我想使用 canon edsdk 录制视频,在文档中我发现我们可以使用高于 2.11 的版本录制视频。我想使用 java 代码来使用它。如果有人回答这个问题,请告诉我。
edsdk - 佳能 EDSDK 代码未在 Visual Basic 中返回正确的值
我正在尝试初始化 Canon EDSDK 的 API,但由于某种原因,err = EdsInitializeSDK() 没有返回正确的值“0”或 EDS_ERR_OK。这导致它跳过所有剩余的 if 语句。
这是代码:
我认为我的 API 设置正确,但我可能是错的。
此代码可能会有所帮助:
当我解除该功能时,我应该做其他事情吗?
c# - EDSDK EdsSetPropertyData 问题
在 Visual Studio 中,我有一个程序,当前每次单击按钮时都会拍摄 5 张照片。我希望程序拍摄这 5 张照片,然后更改光圈设置并拍摄最后一张照片。没有真正相关的代码,所以这是为已经了解 SDK 的人准备的。
我已经四处寻找如何处理这个问题,但我对一般的编码相当缺乏经验。
谢谢!
也许有用的代码
这就是它自己的应用程序的样子。有几个dll和其他涉及的东西。
c# - 佳能 EDSDK 命令 TakePicture 会在焦点错误后阻止所有内容
我正在使用佳能 SDK 2.1,我正在尝试从 C# 代码对相机拍照。我开始了一个会话(EdsOpenSession),这行代码一切正常:
相机拍摄一张照片并将其存储在存储卡上。
问题就在这里:如果出现自动对焦错误(例如镜头盖打开),相机就会“忙”并且永远不会回来。
此外,如果我尝试使用 EdsCloseSession 或 EdsTerminateSDK 功能关闭 EDSDK,它们会阻塞。重新启动它的唯一方法是重新启动应用程序和相机。我正在使用 EOS 100D。
我该怎么做才能忽略这些 AF 错误并尝试拍摄另一张照片?