honeylab's blog

各種ハードウェアの改造、主にファミコンミニなどをやってます(ました)

atomcam_toolsのコマンド制御

久しぶりに強化版のatomcam_toolsのソース見てたら
明確に使用方法が書いてないような便利機能がいつの間にかたくさん実装されていたので紹介しておきます

 

・画質調整機能 (videoコマンド)

https://github.com/mnakada/atomcam_tools/blob/4568a2c5a7a6f0cf9155a627031ec906034e60ba/libcallback/video_callback.c#L321

上下反転・ミラー、コントラスト(cont)、明るさ、サチュレーション、シャープネス、

2D,3Dノイズ低減の強さ、センサーのデジタル/アナログゲイン、等など

 

第一引数 第二引数 役割
flip [normal/flip/mirror/flip_mirror] 上下・ミラー
cont 0-128-255 コントラスト
bri 0-128-255 明るさ
sat 0-128-255
サチュレーション
sharp 0-128-255 シャープネス
sinter 0-128-255 2Dノイズ低減
temper 0-128-255 3Dノイズ低減
aecomp 0-255 AEパラメータ
aeitmax 0-? AEパラメータ
dpc 0-255
drc 0-255
ダイナミックレンジコントロール
hilight 0-10 ハイライト
again

0-?

0表示1x,32表示2x,依次类推

センサゲイン(アナログ)
 
ATOMCam2での初期値205 
dgain

0-?

0表示1x,32表示2x,依次类推

センサゲイン(デジタル)

 

このパラメータはATOMCam内部で4000番ポートにコマンドを送るか、
cmd.cgiにexecコマンドを渡すことで実行できます。

4000番ポートでの制御は127.0.0.1から以外はRejectされてます。

https://github.com/mnakada/atomcam_tools/blob/4568a2c5a7a6f0cf9155a627031ec906034e60ba/libcallback/command.c#L130

第二引数を省略した場合、戻り値として現在の値が返されます

 

ATOMCam内のスクリプトなどで処理する場合

[root@atomcam:~]# echo "video bri 100" | /usr/bin/nc localhost 4000
ok

外部からcurlコマンドでcgiを呼び出す場合

curl -v -X POST -H "Content-Type: application/json"  -d '{"exec":"video bri 128"}' "http://192.168.0.5/cgi-bin/cmd.cgi?port=socket"

※ "exec"と:とコマンドの間にスペースが入ると正しく動きませんでした

 

動かしている例はこんな感じです。

よくわかんない役割も多いですので、実際に調整してみるのがいいと思います。

多分再起動したら標準値に戻ると思います。

何かしらいじったら天体用にいい値が出てくる気がするので私も試してみます。

 

・そのほかのコマンドの実装がここにあるので色々できます

https://github.com/mnakada/atomcam_tools/blob/4568a2c5a7a6f0cf9155a627031ec906034e60ba/libcallback/command.c#L32

使いそうなのは "irled on" "irled off" "irled auto" とかかな

※irled のon/offは実際にはnight mode のon/off で LEDの制御じゃない…?かな?

あと、"aplay <wavファイル名の絶対パス>" でスピーカから音声再生ができました