我正在使用更新到最新固件 (1.60.1) 的 Ricoh Theta Z1。我正在尝试调试一个 Android 应用程序,但我发现我们的一个命令反复失败,所以我直接从我的开发盒连接到相机并直接通过 curl 测试协议。
我从文档中了解到该命令应该可以工作:
$ curl -X POST -H "Content-Type: application/json; charset=UTF-8" -d '{"name":"camera.setOptions", "parameters":{"options":{"captureMode":"image","fileFormat":{"height":3360,"type":"jpeg","width":6720}}}}' http://192.168.1.1/osc/commands/execute
但是当我运行这个命令时,我得到了这个响应:
{"error":{"code":"invalidParameterValue","message":"Any input parameter or option name is recognized, but its value is invalid."},"name":"camera.setOptions","state":"error"}
尽管事实上当我向相机询问其选项时,它会以刚刚告诉我不会解析的确切块作为响应:
$ curl -X POST -H "Content-Type: application/json; charset=UTF-8" -d '{"name":"camera.getOptions", "parameters":{"optionNames":["clientVersion","captureMode","fileFormat"]}}' http://192.168.1.1/osc/commands/execute
得到这个回应:
{"name":"camera.getOptions","results":{"options":{"captureMode":"image","clientVersion":2,"fileFormat":{"height":3360,"type":"jpeg","width":6720}}},"state":"done"}
此外,当我运行第一个命令并省略fileFormat
参数时,命令执行得很好。
有什么想法我在这里做错了吗?