1

DLNA をサポートする Sony NEX-6 カメラから画像をダウンロードしたいと考えています。ConnectionManager を検出すると、次のように返されます。

<device
    xmlns="urn:schemas-upnp-org:device-1-0">
    <dlna:X_DLNADOC
        xmlns:dlna="urn:schemas-dlna-org:device-1-0">DMS-1.50
    </dlna:X_DLNADOC>
    <deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>
    <friendlyName>NEX-6</friendlyName>
    <manufacturer>Sony Corporation</manufacturer>
    <manufacturerURL>http://www.sony.com/</manufacturerURL>
    <modelDescription>SonyDigitalMediaServer</modelDescription>
    <modelName>SonyImagingDevice</modelName>
    <modelURL>http://www.sony.net/</modelURL>
    <UDN>uuid:00000000-0000-0010-8000-2002af0fa742</UDN>
    <serviceList>
        <service>
            <serviceType>urn:schemas-upnp-org:service:ContentDirectory:1</serviceType>
            <serviceId>urn:upnp-org:serviceId:ContentDirectory</serviceId>
            <SCPDURL>/CdsDesc.xml</SCPDURL>
            <controlURL>/upnp/control/ContentDirectory</controlURL>
            <eventSubURL>/upnp/event/ContentDirectory</eventSubURL>
        </service>
        <service>
            <serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
            <serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
            <SCPDURL>/CmsDesc.xml</SCPDURL>
            <controlURL>/upnp/control/ConnectionManager</controlURL>
            <eventSubURL>/upnp/event/ConnectionManager</eventSubURL>
        </service>
    </serviceList>
    <iconList>
        <icon>
            <mimetype>image/jpeg</mimetype>
            <width>48</width>
            <height>48</height>
            <depth>24</depth>
            <url>/DLNA_camera_48.jpg</url>
        </icon>
        <icon>
            <mimetype>image/jpeg</mimetype>
            <width>120</width>
            <height>120</height>
            <depth>24</depth>
            <url>/DLNA_camera_120.jpg</url>
        </icon>
        <icon>
            <mimetype>image/png</mimetype>
            <width>48</width>
            <height>48</height>
            <depth>24</depth>
            <url>/DLNA_camera_48.png</url>
        </icon>
        <icon>
            <mimetype>image/png</mimetype>
            <width>120</width>
            <height>120</height>
            <depth>24</depth>
            <url>/DLNA_camera_120.png</url>
        </icon>
    </iconList>
    <av:standardCDS
        xmlns:av="urn:schemas-sony-com:av">5.0
    </av:standardCDS>
    <av:photoRoot
        xmlns:av="urn:schemas-sony-com:av">PhotoRoot
    </av:photoRoot>
</device>

私の知る限り、このカメラは AVTransport サービスを提供していません。本当?では、カメラから画像を取得するにはどうすればよいですか? 最大。ContentDirectory Service からの解像度が小さすぎます ( JPEG_LRG)。

4

2 に答える 2

0

https://play.google.com/store/apps/details?id=lv.n3o.sharkのおかげで、トラフィックをキャプチャできました。要求のほとんどは、フォルダ リスト、ファイル、プレビュー イメージの取得などの「標準的な」ContentDirectory 要求ですが、完全なイメージをダウンロードするとすぐに、次のような要求が返されます。

GET http://10.0.0.1:60151/LRG__DSC9978.ARW?%2104%5f02%5f1107310400%5f000002%5f000073%5f000000%21http%2dget%3a%2a%3aimage%2fjpeg%3aDLNA%2eORG%5fPN%3dJPEG%5fLRG%3bDLNA%2eORG%5fCI%3d1%21%21%21%21%21 HTTP/1.1
Connection: close
User-Agent: Dalvik/1.6.0 (Linux; U; Android 4.1.1; HUAWEI G510-0100 Build/HuaweiG510-0100)
Host: 10.0.0.1:60151
Accept-Encoding: gzip

これにより、画像データが 1616 x 1080 ピクセル サイズの JPEG として返されます。GET リクエストをデコードすると、以下が返されます。

!04_02_1107310400_000002_000073_000000!http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_LRG;DLNA.ORG_CI=1!!!!!

次に、このクエリ文字列を構築する方法を確認する必要があります。私には標準化されていないようです。誰かが手がかりを持っているなら、私に知らせてください。

于 2015-08-03T16:38:26.427 に答える
-1

実際、ソニーのデジタルカメラはDLNA/UPnPではなく、Wirelessly access Sony cameras with the Camera Remote API betaHTTPとJSONに基づいたもので制御されています。

https://developer.sony.com/develop/cameras/

それが役立つことを願っています。

于 2015-08-03T01:19:50.883 に答える