【问题标题】:Connecting Canon camera using EDSDK (or not) via network通过网络使用(或不使用)EDSDK 连接佳能相机
【发布时间】:2016-02-26 13:30:10
【问题描述】:

我在我的应用程序中使用 EDSDK,它可以很好地通过 USB 与相机配合使用,但佳能的官方 Android/iOS 应用程序(在官方 SDK 中没有网络支持,他们为我们使用了一些无法访问的东西)和第三方 android - 软件“DSLR Controller”(他们是怎么做到的!?)可以通过网络操作相机。有没有办法(或解决方法)通过网络连接到佳能 EOS 相机?由于使用官方 SDK 连接到相机是透明的且仅 USB...

【问题讨论】:

    标签: camera canon-sdk


    【解决方案1】:

    只有有限数量的摄像头可以与带有 SDK 的 Wifi(例如 6D)一起使用。但是支持的可以通过官方 SDK 进行控制(不过,仅在 Windows 和 Mac OS X 上)。

    我不知道官方应用程序使用什么,但据我所知,没有公开可用的 SDK。 ED SDK 肯定既不支持 Android 也不支持 iOS。

    据我所知,DSLR Controller 应用使用的是经过逆向工程的自定义实现。因此,它不依赖于 SDK,可以在他们选择实现它的任何地方使用。

    【讨论】:

    • 在官方 SDK 中,我没有发现关于 wi fi、网络 .... 只有通过 USB 的 PTP。鉴于 Windows 平台上不支持 OTG 背景,而我有 6D,我想尝试通过 WIFI 与他们交朋友。你说 6D 可以通过 WIFI 控制……我通过数字成像开发者计划尝试了所有可用的东西,但没有找到任何东西……我错过了什么?
    • @DmitryTsyganov 是的,文档并不是最新的,您不能完全依赖它。您是否尝试过将 EOS Utility 与 Wifi 相机一起使用?它也使用 SDK,所以如果它在那里工作,你应该能够用你自己的代码复制它。
    • 对不起,我写的不太正确。我想为 Widows Phone 创建一个应用程序,所以用 EOS Utility 进行实验几乎没有任何结果......
    • 无法通过 USB 将相机连接到 Windows Phone 设备,我有 6D。我试图监听 Android 设备和我的 6D 之间的流量。他们创建了 UPNP 聊天,但我还没有收听交通服务,为这个聊天服务。关于它内部发生的事情仍然未知,但可能稍后会了解。现在有2个选项。第一个 - 使用 SDK 为相机生成命令并尝试与相机连接并通过 USB 插入的 WIFI 发送它们。第二 - 使用 Android 设备,捕获每个事件的所有网络流量并尝试在 WP 上重现。你有什么建议?
    • @DmitryTsyganov,哦,我明白了。你必须对命令进行逆向工程,但我无法帮助你。但作为开始,佳能使用 PTP 作为基础(至少对于 USB 连接)en.wikipedia.org/wiki/Picture_Transfer_Protocol
    【解决方案2】:

    你可以做的是download佳能官方Camera ConnectAPK,从中提取共享库(.so文件),因为APK是一个zip包。然后你可以尝试围绕这些库创建一个包装器,因为它们提供了与官方 Canon EOS SDK 中同名的静态方法,例如 EDSInitialize、EDSRelease

    我能够成功调用 EDSInitialize 和 EDSRelease 方法,但无法枚举连接的(通过 OTG 电缆)相机。

    【讨论】:

    • 嗨@Ladislav,您知道CCSDK 是否可以通过wifi 与Canon EOS 6D 一起使用,还是目前只能与PowerShot SX70 一起使用——尝试从Windows 系统连接?
    • 你好@aviimaging!不幸的是,佳能的新 API SDK 仅适用于 SX70 及其所有新的未来型号。他们不打算支持任何旧型号。我只是知道,因为我问过他们,答案很明确:不。但是您仍然可以在 Windows 上尝试使用 GPhoto2 的 MSYS2/MinGW 以编程方式访问佳能相机功能 - 只需 google 即可;)
    • @Ladislav 你终于可以让这个extarcted so wrapper 在Android 上运行了吗?
    • @cubesoft 不,不是。当我调用 EDSSomethingXXX 方法时,它应该返回连接的相机数量,即使连接了我的相机,它也会返回 0。我还询问了 Play Store 上提供的一些 DSLR 应用程序的作者,他们是否打算将他们的东西作为 SDK 库发布,但他们的回答仍然是 NO。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多