THETA Sをブラウザから操作し、無音で写真を撮る
はじめに
この記事はRICOH THETA Advent Calendar 2015の13日目の記事です。
自分は歴代のTHETAをすべて持っているTHETAファンです。
左からTHETA S, THETA m15, THETAです。
今回はTHETA SをPCと接続し、ブラウザから写真を撮る方法を解説します。
それだけではツマラナイので、THETA Sのシャッター音を無音化します。
シャッター音を無音化しますが、決して盗撮等には利用しないでください。
また、一度無音に設定すると、再度音量を上げた設定にするまで無音状態が続きます。
キュイっていうシャッター音がカワイイ感じで好きなので、自分は音量あり設定で使用しています。
PCとTHETAを接続し、HTTP通信してみる
THETAのアドベントカレンダー用の記事どうしようかなーって考えながらネットサーフィンしてたときに、こんなChromeの拡張を見つけました。
コレ使ったら、THETAに簡単にアクセスできる!って思ったので、使ってみます。
- Google Chromeをインストールする
自分は普段からChrome派です。
他のブラウザはほとんど使いません。 - Chrome拡張『Advanced REST client』をChromeに追加
Advanced REST clientをクリックし、CHROMEに追加ボタンをクリック
- THETA SとPCをWi-fiで接続する
接続方法がわからない場合はTHETA Sの接続方法のサイトをご確認ください。
スマホとTHETAの接続方法について書かれていますが、PCとTHETAの接続方法もやり方は同じです。
- Advanced REST clientアプリを起動する
- 下記の設定を行う。
- URL
http://192.168.1.1/osc/commands/execute
- POSTを選択
- Payload
{ "name": "camera.startSession", "parameters": {} }
- Set "Content-Type" header to overwrite this value.でapplication/jsonを選択
- URL
- Sendボタンをクリック
画面下にレスポンスが表示され、下記のようにデータが取得できることがわかる
{ "name": "camera.startSession" "state": "done" "results": { "sessionId": "SID_0001" "timeout": 180 } }
PCのブラウザから写真を撮る
PCのブラウザとTHETA Sの接続ができたので写真を撮ってみます。
- 下記の設定を行う。
- URL
http://192.168.1.1/osc/commands/execute
- POSTを選択
- Payload
ここのsessionIdは『PCとTHETAを接続し、HTTP通信してみる』の最後でレスポンスとして取得したsessionIdを設定する必要があります。
{ "name": "camera.takePicture", "parameters": { "sessionId": "SID_0001" } }
- Set "Content-Type" header to overwrite this value.でapplication/jsonを選択
- URL
- Sendボタンをクリック
『キュイ』と音が鳴り撮影が行われます。
画面下にレスポンスが表示され、下記のように処理が進んでいることがわかります。
{ "name": "camera.takePicture" "state": "inProgress" "id": "1" "progress": { "completion": 0 } }
これでPCのブラウザからの写真撮影が可能です。
このあとは、PCやスマホとTHETA Sを接続し、写真を確認することができます。
THETA Sのデフォルトの音量設定調べる
THETA SのAPI一覧を確認すると_shutterVolumeというAPIがあり、これでシャッター音の調整が出来そうです。
まずはじめにシャッター音のデフォルト値を調べておきます。
後でシャッター音量を戻せるようにするためです。
無音化したいだけの人は読み飛ばしてもらって構いません。
- 下記の設定を行う。
- URL
http://192.168.1.1/osc/commands/execute
- POSTを選択
- Payload
ここのsessionIdは『PCとTHETAを接続し、HTTP通信してみる』の最後でレスポンスとして取得したsessionIdを設定する必要があります。
{ "name": "camera.getOptions", "parameters": { "sessionId": "SID_0001", "optionNames": [ "_shutterVolume" ] } }
- Set "Content-Type" header to overwrite this value.でapplication/jsonを選択
- URL
- Sendボタンをクリック
画面下にレスポンスが表示され、下記のようにデータが取得できる。
シャッター音のデフォルト値は100であることがわかる。
{ "name": "camera.getOptions" "state": "done" "results": { "options": { "_shutterVolume": 100 } } }
THETA Sのシャッター音を0に変更し、無音化する
無音THETA Sを作ります!
- 下記の設定を行う。
- URL
http://192.168.1.1/osc/commands/execute
- POSTを選択
- Payload
ここでシャッター音量を0に設定します。
ここのsessionIdは『PCとTHETAを接続し、HTTP通信してみる』の最後でレスポンスとして取得したsessionIdを設定する必要があります。
{ "name":"camera.setOptions", "parameters": { "sessionId":"SID_0001", "options": { "_shutterVolume":0 } } }
- Set "Content-Type" header to overwrite this value.でapplication/jsonを選択
- URL
- Sendボタンをクリック
画面下にレスポンスが表示され、正常に設定が完了したことがわかる
{ "name": "camera.setOptions" "state": "done" }
この設定が完了後、『PCのブラウザから写真を撮る』で解説した手順で写真を取ると無音で写真を撮ることが出来ます。
セッションを終了する
使ったセッションはキチンと終了しましょう。
- 下記の設定を行う。
- URL
http://192.168.1.1/osc/commands/execute
- POSTを選択
- Payload
ここのsessionIdは『PCとTHETAを接続し、HTTP通信してみる』の最後でレスポンスとして取得したsessionIdを設定する必要があります。
{ "name": "camera.closeSession", "parameters": { "sessionId": "SID_0001" } }
- Set "Content-Type" header to overwrite this value.でapplication/jsonを選択
- URL
- Sendボタンをクリック
画面下にレスポンスが表示され、正常に設定が完了したことがわかる
{ "name": "camera.closeSession" "state": "done" }
これでシャッター音が無音のTHETA Sの完成です。
追伸
冒頭にも書きましたが、シャッター音量の設定を行うまで無音になります。
音量を元に戻す場合は『THETA Sのシャッター音を0に変更し、無音化する』の手順で、音量を100に設定してください。
{ "name":"camera.setOptions", "parameters": { "sessionId":"SID_0001", "options": { "_shutterVolume":100 } } }
THETA Sでは他にも様々な設定ができます。
詳細はAPI v2 Reference (RICOH THETA S)をご確認ください。
明日の担当はpafuhana1213さんの『Thetaはフィギュア撮影の夢を見るか?』です。