Debian 4.0にインストールしようとしたらいろいろ問題がありました. 詳細はCaptureOnDebian40を見てください. ということで,古いバージョンへインストールしてうまくいった記録です. #author("2022-01-13T19:14:49+09:00","","") *Linux (Debian 3.1R5) で, capture を使って,デジカメをUSB経由で制御する [#c8bb5dbc] Debian 4.0r1 に captureをインストールして キヤノンなどのデジカメをUSB経由でコントロールした. 超高解像度の定点カメラなどが作れる. $ capture capture> start capture> macro on capture> capture cat.jpg とか $ capture start $ capture 'macro on' $ capture 'capture cat.jpg' のような手順で写真が撮れる. captureで制御できるカメラは, 画像転送プロトコルの標準規格PTP (Picture Transfer Protocol: ISO 15704) というのに対応したカメラである. (さらにその中でもカメラをコントロールする拡張機能をサポートしている機種) キヤノンのすこし古いデジカメが多く対応していて, Cameras4Captureなどが制御できるらしい. 最近のカメラはサポートされていないらしいが,安い機種なら 中古で1万円未満で買えるし,解像度も十分だと思われる. ** Debian 3.1R5を探してインストールする [#b95650c4] すでに,古いバージョンなので探すのが大変かもしれない.. debian-31r5-i386-netinst.isoというなまえなので, ぐぐると見つかるかも. apt-getする先は,すでに4.0を指しているので,インストールの途中で エラーが出て中断する.気にしない. 起動しなおしたら, apt-getする先も3.x (コードネーム sarge )を指すように設定しておく. /etc/apt/source.listを http://gyazo.com/5a6845b5895b72b11db264dc4b62df59.png のように書き換える. そのあとapt-get update, apt-get upgradeしておく. ** apt-get installで開発環境を整える [#mfac1698] -ssh(あれば便利) -sudo(あれば便利) --visudoでsudoできるようにしておく -gcc -g++ -make -pkg-config //-libusb-dev (本体のlibusb-0.1-4はすでに入っているはずだけど要チェック) //-libusb++-0.1-4 //-libusb++-dev -libreadline5 (あれば便利,) -libreadline5-dev (あれば便利) **libusbを入れておく [#z45dc75d] -すでに,libusb-0.1-4が入っている.これでもできそうだったけど, いろいろ不具合らしいものもあって,よくわからない, もしかしたら古いのかもしれない(0.1.8以上が必要らしい) -そこで,apt-get remove libusb-0.1-4 で, アンインストールした. -かわりに,http://sourceforge.net/projects/libusb/ からlibusb-0.1.12をダウンロード. --./configure→make→sudo make install -libusbはusbdevfsとかusbfsと呼ばれる仮想ファイルを使用する.そこで,/proc/bus/usbをマウントする. 毎回マウントするのは面倒なので,/etc/fstabに以下を追加する. --none /proc/bus/usb usbfs defaults 0 0 -ただしこれだとrootのみアクセス可能.代わりに以下を追加すると誰でも読み書き可能になる --none /proc/bus/usb usbfs devmode=0666 0 0 -詳しくは /usr/share/doc/libusb-0.1-4/README.Debian -/etc/fstabを書き換えても反映されない. 再起動するか,もしくは,以下のようにして,アンマウントしマウントし直す. sudo umount /proc/bus/usb sudo mount -a **libptpを入れる [#hec1bf5a] -http://sf.net/projects/libptp からlibptp2-1.1.10 をダウンロード. -./configure→make→sudo make install ** captureをインストール [#vd0a8b07] -http://sourceforge.net/projects/capture からcapture-1.0.4-cvs-20070710をダウンロード. -gtkは使わないつもりなのでMakefileのHAVE_GTK = -DHAVE_GTKをコメントアウトする -libreadlineを使わないなら,MakefileのAVE_READLINE = -DHAVE_READLINEもコメントアウトする -make→sudo make install **デジカメを接続して動作テストする [#z6e4623c] -キヤノンのデジカメを接続する場合には, 画像再生モードにして,電源を入れて,USBを接続する. -captureを動かし,startコマンドでカメラが起動すれば成功. ** ライブラリを指定する [#a723e58d] このまま動かすとlibptp2.soが見つからないというエラーが出る.そこで export LD_LIBRARY_PATH=/usr/local/lib として指定しておく. ちなみにこの変更を恒久的に設定するには, ~/.bashrc_profileに書くか,/etc/profile(すべてのユーザの場合)に書く.(by 秋田先生) ** 写真を撮るスクリプト例 [#j0ce1858] 秋田先生の定点カメラのサンプル http://akita11.jp/plan/usl5p-cam.html によると,こんなスクリプトで撮影できるようだ. #! /bin/sh export LD_LIBRARY_PATH=/usr/local/lib /bin/capture 'quit' #これはおまじない? sleep 1 #これはおまじない? /bin/capture 'start' /bin/capture 'flash auto' FILENAME=`/bin/date +%Y_%m_%d_%H%M`.jpg /bin/capture "capture $FILENAME" /bin/capture 'quit' #これに続く行でFILENAMEを移動や加工すれば良い **関連ページ [#fb3d3ac2] -秋田先生がUSL-5Pにcaptureをインストールした様子(参考にさせていただきました) --http://akita11.jp/plan/usl5p-cam.html -玄箱HGに capture をインストール --CaptureOnKurobox -Mac OS X に capture をインストール --CaptureOnMacOSX