SlideShare a Scribd company logo
いまどきの 
カメラで遊ぼうKIM_TPDN 
http://kim.tpdn.org 
http://d.tpdn.kim 
http://金正日.jp
KIM_TPDN 
クソ野郎 
● 筑波 
● エナジー冷蔵庫 
● 男性用メイド服宅配テ 
ロ 
● 北朝鮮 
● どう考えてもロクなこ 
とやってない 
http://金正日.jp
このLTのレイヤー 
高いたぶん 
カーネルでもVMでもない
Keyword 
?
(健全な) 
趣味: 
写真撮影
趣味:ペンタックス(?) 
● 安い 
● いろいろと独自性強 
い 
● 撮影に直接関わる以 
外の機能を載せたが 
らない
最近買ったカメラ 
● 超望遠 
● 流行りの機能てんこ 
盛り 
● 遊べる 
● 文明の利器 
● これであそぼう
いまどきの 
カメラに 
よく搭載されて 
いる機能
無線接続でカメラ操作(スマホ連携)
どうやってんの? 
● カメラが無線LANのアクセスポイントになる 
● スマホでカメラに接続 
● 専用アプリ起動 
● あるプロトコルでTCPで通信してカメラを操作 
専用アプリでなんて 
やってらんねーよな?
自分で作ったソフトで操作したい 
● 自動化万歳 
– スマホとかどうでもいいのでRasPiと組み合わせて 
アレしたい 
● とんでもない機能を追加できる? 
● 漢のロマン
できるの? 
● ほとんどの場合プロトコル詳細は未公開 
– ただし変態ソニーは除く 
(SDK配布してくれてる) 
● 有名なカメラメーカー(というかキヤノン)に関して 
はみんなのおもちゃいろいろと魔改造されまくってる 
● そうでないメーカーは自分でどうにかするしかない 
(???)
実際にやってみよう?
シプキャンにもっていった
プロトコルを解析しよう 
● カメラが無線LANのアクセスポイントになって 
通信する形になってる 
– ミツミ製の無線LANモジュールが搭載されている 
● 公式Androidアプリの存在 
– こいつを解析するのはいまのところやめておく 
– (お察し) 
● Wiresharkでパケット見れる
何がいる? 
● root化端末 
– busybox(ncを使うため) 
– tcpdump 
● PC 
– adb 
– Wireshark
こんな感じで解析
こんな感じでやってた 
● カメラとスマホの通信 
● →tcpdump 
● →nc 
● →localhostのどこかのポート 
● →adb forward 
● →Wireshark
真面目に解析してたが… 
● ぶっちゃけいってゼロからプロトコル作ってる 
なんてこと無くね? 
● 絶対なんか規格あるだろ
先生に頼ろう! 
特にこいつは神→→
プロトコル 
について
プロトコル何だった? 
PTP-IP 
※偉大なるlibgphoto2に感謝
PTP-IP 
● カメラとPCなどをTCPで接続する規格 
– USB接続でお馴染み?のPTPからきてる 
– CIPAとかISOとかで規格化されてる 
– 個人だと仕様書見せてくれない() 
● 各カメラメーカーが拡張可能 
– リモートで画面みながら撮影するコマンドとか
http://www.gphoto.org/doc/ptpip.php
規格があるなら誰か作ってるんじゃね? 
● ないこともない(ググれば出る) 
– ただし、ほとんどがRICOH THETAを対象に 
– アレは(液晶がないからなのか)割と適当でも動くようになっ 
てる感ある 
● Bluetoothヘッドホンとかを連想 
● 一方で、普通のデジカメはチェック厳しめ 
– きっちりパラメータ見てる 
● ミスると無慈悲なコネクション即切断 
– さらに処理中だと無慈悲なカメラの電源オフ 
● 独自機能にかかわるコマンドは自分で解析するしかない
libgphoto使えば? 
● 独自実装されたコマンドを実行できるものでは 
ない 
● まず、僕のカメラ(Finepix S1)はポート番号 
がISOに沿ったものではない 
– gphotoではポート番号ソース決め打ち 
– 一応netcat通せばできないこともない…
で?
現状と今後 
● 8月はいろいろいじってたが、それ以降はい 
じってない 
● 気が向いたら、最終的には自作クライアントに 
よって超望遠無線Webカメラ的なものをつくる 
ことを目標にして少しずつやっていく 
– もともとない機能をつけたい
このプレゼンのファイルはこちら 
http://主体の色鮮やかな太陽.金正日.同志.asia

More Related Content

PDF
Pythonによる4足歩行ロボットの制御と強化学習による歩行動作獲得の実例 #pyconjp
PDF
Unity名古屋セミナー [プログラミングなしでゲーム開発]
PDF
スマートフォン勉強会@九州
PPTX
テレビさんというslack読み上げbotについて
PDF
Auto scaling Heroku addon Bounscale
PDF
Kernelvm-9th-lt
PDF
BOSHでお手軽CFデプロイon AWS
PDF
すごいBOSHたのしく学ぼう
Pythonによる4足歩行ロボットの制御と強化学習による歩行動作獲得の実例 #pyconjp
Unity名古屋セミナー [プログラミングなしでゲーム開発]
スマートフォン勉強会@九州
テレビさんというslack読み上げbotについて
Auto scaling Heroku addon Bounscale
Kernelvm-9th-lt
BOSHでお手軽CFデプロイon AWS
すごいBOSHたのしく学ぼう
Ad

いまどきのカメラで遊ぼう #kernelvm