我正在开发A6300摄像头上的安卓应用程序。我想实现“传输图像”的功能。我连接了摄像头wifi并找到了设备。当我通过访问url http://192.168.122.1:61000/scalarwebapi_dd.xml获取设备信息时。
摄像头远程接口信息由图片中的标签X_ScalarWebAPI_DeviceInfo元素来描述。我无法获取开发指南中描述的"avContent“服务。我可以直接使用"accessControl“服务。我已经把相机的防火墙更新到了2.00,但这并不重要。

发布于 2017-09-01 13:36:51
实际上,您已经完成了开始使用Camera API所需的第一步。现在,您需要解析上面的xml以获取正确的ActionList_URL。你需要的是ServiceType为"camera“的那个。这意味着您将收到url "http://192.168.122.1:8080/sony“。现在,您需要做的是运行对此url的POST调用,为您想要调用的endPoint提供主体。
如果你想拍一张新照片,你可以调用actTakePicture端点,像这样传递JSON
{
"method": "actTakePicture",
"params": [],
"id": 1,
"version": "1.0"
}然后,您将得到如下结果:
{
"result": [
["http://ip:port/postview/postview.jpg"]
],
"id": 1
}如你所见,返回了图像的url,现在你可以下载它了。如何下载它将取决于您使用的编程语言。以下是如何使用Android:Best method to download image from url in Android从url下载图像的链接
如果您想要查看相机上的所有图像和视频并下载它们,您可以使用getContentList应用编程接口调用
{
"method": "getContentList",
"params": [
{
"uri": "storage:memoryCard1",
"stIdx": 0,
"cnt": 50,
"view": "date",
"sort": ""
}
],
"id": 1,
"version": "1.3"
}这将为您提供类似以下内容的结果:
{
"result": [
[
{
"uri": "image:content?contentId=XXXXXXXXXX",
"title": "",
"content": {
"original": [
{
"fileName": "DSC00001.JPG",
"stillObject": "jpeg",
"url": "http://ip:port/contentstransfer/orgjpeg/xxxxxxxx-xxxxxxxx"
}
],
"smallUrl": "http://ip:port/contentstransfer/vga/xxxxxxxx-xxxxxxxx",
"largeUrl": "http://ip:port/contentstransfer/scn/xxxxxxxx-xxxxxxxx",
"thumbnailUrl": "http://ip:port/contentstransfer/thumb/xxxxxxxx-xxxxxxxx"
},
"createdTime": "2014-08-18T12:34:56+09:00",
"contentKind": "still",
"folderNo": "100",
"fileNo": "0001",
"isPlayable": "false",
"isBrowsable": "false",
"isProtected": "",
"remotePlayType": null
}
]
],
"id": 1
}如果您需要更多信息,请让我知道
https://stackoverflow.com/questions/45736605
复制相似问题