无法连接到索尼相机远程API

问题描述 投票:0回答:3

我正在 iOS 上开发应用程序。

我尝试连接 Sony Camera Remote API,但找不到正确的设备描述文件。所以我无法使用API。

我尝试按照以下步骤进行连接:

  1. 通过 WiFi 将 Mac 连接到相机:

     Open my camera menu ——> Wifi ——> Send to Smartphone ——>
     Select on Smartphone ——> connect mac to camera over access point
    
  2. 使用SSDP发现相机

     Use the UdpRequest provided by sony to send ssdp-discovery message.
    
     Then the message send successfully.
    
     Then I received the follow message:
    
             CFSocket receiveData response = NOTIFY * HTTP/1.1
             HOST: 239.255.255.250:1900
             CACHE-CONTROL: max-age=1800
             LOCATION: http://192.168.122.1:64321/DmsDesc.xml
             NT: upnp:rootdevice
             NTS: ssdp:alive
             SERVER: UPnP/1.0 SonyImagingDevice/1.0
             USN: uuid:00000000-0000-0010-8000-a408ea87692a::upnp:rootdevice
             X-AV-Physical-Unit-Info: pa=""; pl=;
             X-AV-Server-Info: av=5.0; hn=""; cn="Sony Corporation";
             mn="SonyImagingDevice"; mv="1.0"; 
    
    
     In the Development Guide, the response should seems like this:
    
             HTTP/1.1 200 OK
             LOCATION: http://192.168.122.1:64321/dd.xml
             CACHE-CONTROL: max-age=1800
             EXT:
             SERVER: OS/version UPnP/1.0 product/version ST: urn:schemas-sony-com:service:ScalarWebAPI:1
    
  3. 我将 DmsDesc.xml 与 dd.xml 进行了比较

     Main part of DmsDesc.xml:
    
             DMS-1.50
             urn:schemas-upnp-org:device:MediaServer:1
             ILCE-7M2
             Sony Corporation
             http://www.sony.com/
             SonyDigitalMediaServer
             SonyImagingDevice
             http://www.sony.net/
             uuid:00000000-0000-0010-8000-a408ea87692a
    
             urn:schemas-upnp-org:service:ContentDirectory:1
             urn:upnp-org:serviceId:ContentDirectory
             /CdsDesc.xml
             /upnp/control/ContentDirectory
             /upnp/event/ContentDirectory
    
             urn:schemas-upnp-org:service:ConnectionManager:1
             urn:upnp-org:serviceId:ConnectionManager
             /CmsDesc.xml
             /upnp/control/ConnectionManager
             /upnp/event/ConnectionManager
    
             urn:schemas-sony-com:service:DigitalImaging:1
             urn:schemas-sony-com:serviceId:DigitalImaging
             /DigitalImagingDesc.xml
             /upnp/control/DigitalImaging
    
开发指南中的dd.xml应该是这样的:

<av:X_ScalarWebAPI_DeviceInfo xmlns:av="urn:schemas-sony-com:av"> <av:X_ScalarWebAPI_Version>1.0</av:X_ScalarWebAPI_Version> <av:X_ScalarWebAPI_ServiceList> <av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_ServiceType>guide</av:X_ScalarWebAPI_ServiceType> <av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL> </av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_ServiceType>camera</av:X_ScalarWebAPI_ServiceType> <av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL> </av:X_ScalarWebAPI_Service> </av:X_ScalarWebAPI_ServiceList></av:X_ScalarWebAPI_DeviceInfo>


我的问题是:

  1. 如何获取正确的设备描述文件。

  2. 如何连接Sony Camera Remote API,demo就完美了。

  3. 如果sony工程师能看到我的问题,请更新官方演示。它太旧了。

sony sony-camera-api
3个回答
4
投票
我自己找到了答案。

要连接索尼相机远程API,我们必须将相机设置为caccess点。

有两种方法可以做到这一点。

    菜单--->Wi-Fi--->选项卡1--->发送到智能手机
  1. 菜单--->应用程序--->应用程序列表--->启动名为“Smart Remote Embedded”的应用程序
当智能手机通过第一种方式连接到相机时,响应就像我的问题中提到的那样。

当智能手机通过第二种方式连接相机时,响应主要部分如下。与开发指南相同:

<av:X_ScalarWebAPI_DeviceInfo xmlns:av="urn:schemas-sony-com:av"> <av:X_ScalarWebAPI_Version>1.0</av:X_ScalarWebAPI_Version> <av:X_ScalarWebAPI_ServiceList> <av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_ServiceType>guide</av:X_ScalarWebAPI_ServiceType> <av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL> <av:X_ScalarWebAPI_AccessType/> </av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_ServiceType>accessControl</av:X_ScalarWebAPI_ServiceType> <av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL> <av:X_ScalarWebAPI_AccessType/> </av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_ServiceType>camera</av:X_ScalarWebAPI_ServiceType> <av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL> <av:X_ScalarWebAPI_AccessType/> </av:X_ScalarWebAPI_Service> </av:X_ScalarWebAPI_ServiceList> </av:X_ScalarWebAPI_DeviceInfo>
    

0
投票
我的问题是在没有先签名的情况下使用示例 api 应用程序。


0
投票
我也有同样的问题。请解释一下如何登录?

© www.soinside.com 2019 - 2024. All rights reserved.