我已经能够使用api拍摄我的a-7相机拍照。但是,我试图转移这些图像。按照文档,我调用了setCameraFunction,使用下面的json将其更改为内容传输模式:
DataflowPipelineRunner
然而,相机始终返回:
DataflowRunner
以下是我用来拍摄图像的序列的输出(每次通话之间暂停5秒):
{"method":"setCameraFunction","params":["Contents Transfer"],"id":1,"version":"1.0"}
有时getStorageInformation返回:
{"id":1,"error":[1,"Not Available Now"]}
但是,尝试更改为内容模式始终会产生"现在不可用"。
我已经能够使用actTakePicture函数生成的url访问预览图像,但这是一个低分辨率的图像,它不适用于我们的应用程序。
我也尝试不调用" stopRecMode"在尝试输入"内容转移"之前的功能模式,但它没有任何区别。
" getEvent"的输出尝试进入内容传输模式之前的功能:
Request: {"method":"startRecMode","params":[],"id":1,"version":"1.0"}
Response: {"result":[0],"id":1}
Request: {"method":"getAvailableShootMode","params":[],"id":1,"version":"1.0"}
Response: {"result":["still",["still"]],"id":1}
Request: {"method":"actTakePicture","params":[],"id":1,"version":"1.0"}
Response: {"result":[["http:\/\/192.168.122.1:8080\/postview\/pict20170707_003048_0.JPG"]],"id":1}
Request: {"method":"stopRecMode","params":[],"id":1,"version":"1.0"}
Response: {"result":[0],"id":1}
Request: {"method":"getStorageInformation","params":[],"id":1,"version":"1.0"}
Response: {"id":1,"error":[1,"Not Available Now"]}
Request: {"method":"setCameraFunction","params":["Contents Transfer"],"id":1,"version":"1.0"}
Response: {"id":1,"error":[1,"Not Available Now"]}
其他信息:
将相机升级到最新固件(版本3.20),安装了最新的智能遥控应用程序(版本4.30)。
我完全被困在这里,任何建议都会很棒。
由于
答案 0 :(得分:0)
我能够解决这个问题,并认为我会在这里发布,以防其他人帮助。
而不是使用"内容传输"模式,我要做的是使用" setPostviewImageSize"并将预览图像设置为原始图像。随着这改变了" actTakePicture"将是刚拍摄的图像,图像的大小将是全分辨率,在这种情况下为6000x4000。
这是setPostviewImageSize请求的json:
{
"method": "setPostviewImageSize",
"params": [
"Original"
],
"id": 1,
"version": "1.0"
}