WebKit開発チームから「SquirrelFish Extreme」がリリースされました。JavaScriptベンチマークは、現行Safariの3倍以上、初代SquirrelFishの2倍以上とのこと。検証が済み次第、報告したいと思います。

さて、今回は「iSight」について。Mac ProとXserveを除く現行Macシリーズに標準装備のこのデバイス、購入後一度も使ったことがない、というユーザも少なくないことだろう。しかし、iSightは己の顔を映すだけのデバイスにあらず。今回は、iSightのYet Anotherな使い方を提案するオープンソースソフトウェア (以下、OSS) を紹介したい。

iSightを取り巻くOSSなライブラリたち

現行Macシリーズの液晶上部に鎮座する「iSight」。こちらに記載されているとおり、IIDC 1.30規格準拠のIEEE 1394カメラであり、その意味では仕様がオープンな周辺機器ということになる。

実際、iSightに対応するOSSは少なくない。たとえば、デジタルカメラ制御ライブラリ「libdc1394」、IEEE 1394デバイスを制御する「libraw1394」、GUI装備のIEEE1394カメラ制御用アプリケーション「Coriander」がそれだ。以前当コラムで紹介した「OpenCV」も、libdc1394とlibraw1394を使用すれば、iSight経由で映像をキャプチャできる。

標準装備のPhoto BoothやiChatというアプリケーションも、iSightを使い静止画 / 動画を撮影できるが、あくまで被写体はカメラの前に鎮座するユーザだ。自分の顔など髭剃り時に見れば十分、ビデオチャットにも縁がない筆者としては、勢いYet Anotherな使途に目が向いてしまう。そこで前掲のライブラリを頼りに調査すると、その機能を利用した興味深いアプリケーションの存在が浮上してくる……という次第だ。

Barcode scanner

最初に紹介するのは、iSightでバーコードの読み取りを可能にする「Barcode scanner」。前述のUNIX系OS汎用のドライバに依存しない、QTKitを利用したCocoaネイティブのアプリケーションだ。QTKitには、「QTKit Capture」と呼ばれる動画入力用のフレームワークが用意されており、それを活用している。

なお、バイナリパッケージの配布は行われていないため、サンプルアプリケーションの利用には開発環境 (Xcode Tools) が必要。書庫ファイルに含まれるプロジェクトファイル (BarcodeScanner.xcodeproj) をXcodeで開き、ビルドを実行すれば、buildフォルダ以下に「BarcodeScanner.app」が生成されるはずだ。

QTKitの機能を活用、iSightでバーコードの読み取りを可能にする「Barcode scanner」

Books

実際にバーコードスキャンを行うのならば、「Books」がお勧めだ。『iSightで蔵書管理するオープンソースソフト「Books for Mac OS X」』でもお伝えしたとおり、バーコードからISBNをスキャンし、その情報をもとにAmazonなどの書籍通販サイトから書籍データを入手する機能を備える。前掲したBarcode scannerの成果を取り入れているため、バーコードの読み取り精度は同程度と考えられるが、ただバーコードを読み込んでおしまいではなく、蔵書管理ソフトへと昇華している点がすばらしい。

iSightで蔵書管理する「Books」

蔵書管理ソフトといえば、「Delicious Library 2」もよく知られた存在。CDやDVDにも対応、店頭に面出しするような形でディスプレイするなどシャレた機能を備えているが、こちらは有償で40米ドルだ。最初にBooksを試し、入力デバイスとしてのiSightの可能性を理解したうえで購入しても遅くはないだろう。

iAlertU

iSightを活用するOSSのなかでも、異色の存在がこの「iAlertU」だ。一言でいえば盗難防止用ロックシステムだが、iSightの機能を活用しているところがミソ。キーボードやトラックパッドに触れたり、本体を傾けたり (モーションセンサーを活用) すると、そのときiSightの前にいるであろう人物をバッチリ撮影してくれるのだ。撮影した画像を所定のアドレスへメールする機能も備えているため、まさに動かぬ証拠となる。静止画なだけに……とオチが付いたところで、また次回。

「iAlertU」が動作中は画面がブラックアウトしているため、バレずに悪党を撮影できる