THETA Sになって、これまでのPTP/IPではなく、HTTPベースであるGoogleのOpen Spherical Camera APIになった(公式ドキュメント)。
CURLなどHTTPコマンドを使えば、シェルからTHETA Sを制御できるので、まず手始めにTHETA Sのシャッター音を消すシェルスクリプトを書いてみる。
curlで3回THETA SにHTTP POSTしていて、それぞれのPOSTで、
- sessionの開始
- ボリュームの最小化
- sessionの終了
を実行している。
#!/bin/bash
CMD="curl http://192.168.1.1/osc/commands/execute -s -H \"Accept: application/json\" -H \"Content-type: application/json;charset=utf-8\" -X POST -d"
SID=`${CMD} '{"name":"camera.startSession"}'| sed -E "s/^.*\"sessionId\":\"([^\"]*)\".*$/\1/"`
${CMD} "{\"name\":\"camera.setOptions\",\"parameters\":{\"sessionId\":\"${SID}\",\"options\":{\"_shutterVolume\":0}}}"
${CMD} "{\"name\":\"camera.closeSession\",\"parameters\":{\"sessionId\":\"${SID}\"}}"
ちなみにシャッター音の制御は、THETA S独自の拡張(公式ドキュメント)。
(2016/01/14追記)
Node.jsで使えるTHETA S用モジュールを公開しました。
(2016/03/04追記)
オフィシャルアプリ(Sも無印も)で、音量調整がでるようになりましたね。
このスクリプトはもう不要かな。