コンピュータによるカメラのリモート制御を可能とするgPhoto

 世界の一眼レフカメラ(SLR:Single-Lens Reflex)市場における2大メーカであるCanonとNikonからは、USBケーブルを介したPCによるカメラ制御を可能にするソフトウェアが提供されている。こうしたツールが役立つのは、手作業によるシャッターの押し下げ時に発生する手ブレを抑制したり(特に長時間露光をするような場合)、一定間隔でのインターバル撮影を自動実行させたい場合だ。しかしながら例によってこうしたカメラメーカも、先のソフトウェアをフリーなオペレーティングシステムにまでは対応させていないのだが、それでもやはりオープンソースの世界を探すとこのギャップを埋めてくれるソフトウェアが作成されており、本稿で解説する gPhoto もそうしたリモート操作ツールの1つである。

 gPhotoというソフトウェアはあまりに見事に動作する完成度に到達しており、実際に使っているとかえってその存在を忘れ去ってしまいそうなくらいである。それと言うのも事前に、F-Spot、digikam、gtkamなど自分が好みとする写真管理用アプリケーションを指定しておけば、後はデジタルカメラをPCに接続するだけでカメラのタイプまでもが自動認識され、写真データはほとんどトラブルフリーで抽出されるようになるのだ。しかもgPhotoの場合はそれだけに止まらず、個々のカメラにファームウェア形態で組み込まれた独自の機能すらもサポートしているケースが多いのである。そのため、例えばUSBイメージキャプチャといった通常は固定式のWebカメラで用いられる機能が、より高性能なデジタルカメラにて利用可能となるのだ。

 こうした機能を利用するには、サポート対象のカメラと(状況に応じて)比較的最近にビルドされたgPhotoを用意する必要がある。gPhotoによる写真データのアップロード/ダウンロード機能は1,000種類近くのカメラモデルをカバーしているが、USB経由のカメラ制御についてはすべてのカメラがこの機能をサポートしている訳ではなく、またgPhotoの開発チームに対応機種すべての把握を期待するのも酷な話であろう。とりあえず各自のカメラについては、同プロジェクトのwikiにアクセスし、カメラ制御のページにある対応機種一覧に掲載されているかを確認していただきたい。

 私自身は、完全オートマチック型のCanon S2 ISおよび一眼レフ(SLR)式のCanon EOS 5Dという2台のカメラを使用している。いずれもリモート制御の対応機種としてサポートリストに掲載されているが、5Dに関する注釈によるとバージョン2.4.0以降のgPhotoが必要のようだ。gPhotoはデスクトップ用Linuxシステムの大半において標準コンポーネントの1つとされているので、各自のディストリビューションにおけるオフィシャルパッケージに含まれている可能性が高い。なお歴史的な理由によりこのパッケージ名はgphotoではなくgphoto2とされている。