僕は webcam(web カメラ)はオモチャのレベルだと思っていたが、Logicool QuickCam Pro 9000 を買ってみて認識を新たにした。何しろ画質が非常に良いのだ。さらに以下の能力を備えている。
QuickTime 7.6.2 による Logicool QuickCam Pro 9000 の画像 (ムービー収録画面、実物大)
このカメラは 200万画素で、レンズはカール・ツァイスである。さすがカール・ツァイス。この小さなレンズでよくもここまで!
ただし、QuickTime の「ムービー収録」ウインドウに写っている画像は 800x600 で、残念ながらこれ以上のサイズでは見えない。この画面はあくまでモニターなのである。
この画面をファイルに収録すると QuickCam Pro 9000 の場合には最大 1600x1200 (ほぼ 200万画素) のムービーを見る事ができる。次に示すのはその一コマである。1/2 に縮小されているが、クリックすれば元の画像(1600x1200)を見る事ができる。
1/2 の縮小画面、クリックで元の画像が見える。
このカメラのレンズには絞りは無い。従って F2.0 のままのはずである。フォーカスされていない所はボケているが、ピントが合っている被写体の解像度は素晴らしい。
次は 800x600 の動画である。
!
実は僕はビデオチャットには興味はない。だから今回のカメラを買ったのはビデオチャットのためではない。OHC(Overhead Camera = 書画カメラ) の代わりに使えそうなカメラを探していて、このカメラを見つけたのである。何しろ「価格.com」でのこのカメラの評判は非常に良く、XP または Vista 用とされているのだが、実際には Mac でも使えるらしいので...
実際に試してみると iChat と QuickTime でこのカメラが認識される*。"Logitech Camera" の表示がされるが、日本のロジテックと勘違いしているのではない。Wikipedia によると、海外企業の Logitech が日本で販売する時に "Logitech" の商標が使えないので "Logicool" の商標で販売しているが、本来は "Logitech" である。
iChat は鏡映像になるので僕の目的では使えない。QuickTime は環境設定で「装置ネイティブ」にすれば最大サイズ 800x600 で画像が表示される*。但し、MacBook のディスプレイの解像度を 1280x800 にしなければならない。これは僕の MacBook の最大解像度である。OHC の代わりに使えるだろうか? パソコンに接続されているプロジェクターはパソコンのスクリーンをそのまま投影するので、スクリーンの中での QuickTime のウィンドウサイズが問題である**。
次に MacBook (13インチ) の最大ディスプレイ解像度 1280x800 の下での QuickTime のウィンドウの見え方を示す。
ディスプレイ解像度 1280x800 の中での 800x600 の画像の大きさ。
ちょっと不満ではあるが、何とか使い物になるだろう。ディスプレイ解像度をもっと落とせば 800x600 の画像はスクリーンの中では大きくなるのであるが、解像度を落とすと QuickTime は QuickCam Pro 9000 を認識しなくなる。プロジェクターを使ってプレゼンをする場合、プロジェクター側の解像度の方が低いのが普通である。大丈夫か? 僕が最近まで使っていた MacBook(ポリカの初代モデル)では外付けディスプレイに接続した時には MacBook のディスプレイの解像度も外付けに合わされていたではないか*?
僕が現在使っている MacBook はアルミ切り出しタイプである。最近 Apple はアルミ切り出しの MacBook を全て Pro に統一したが、その前のモデルである。僕はこれを最初にプレゼンに使った時に戸惑った。外部ディスプレイを接続した場合の振る舞いが違うのだ。今回改めて特性を調べる事にした。
外部ディスプレイに対する MacBook のデフォルトはミラーモードである。ミラーモードでは本体のディスプレイの画像をそのまま映し出そうとする。もしも外部ディスプレイの能力があまりにも低くてそれが不適切であれば、本体のディスプレイの解像度を落とす場合がある。この振る舞いは僕の古い MacBook と同じである。
「カラーLCD」は本体のディスプレイ、「LL-T1620」は外付けのディスプレイ。
ミラーでないモードでは、本体のディスプレイの解像度を最大にしたまま、外部ディスプレイの解像度を自動あるいは手動で調整できる。従って例えばプロジェクターの解像度を 800x600 に設定し、そこに QuickTime の画面を映し出せるのだ!
「カラーLCD」は本体のディスプレイ、「LL-T1620」は外付けのディスプレイ。
プロジェクターに実際に映し出されるのは、本体のスクリーンの中の部分矩形領域である。
今回さらに気付いたのはプレゼンテーションソフト Keynote との関係である。これまではプレゼンの場面では Keynote をフルスクリーンモードで使って来た。しかしこの方法の欠陥は、次のスライド画面が見えないことにある。この問題が解決されるのだ。Keynote の編集画面は 800x600 に設計されている。従ってプロジェクターを 800x600 に設定すれば、スライドのコマは本体のディスプレイに写っている。従って次のコマが分かり、それによってプレゼンする事が可能である。なんとうまく出来ているではないか!
プレゼンテーションでは Keynote と OHC を使いたい。MacBook ではこれをキー操作で瞬時に切り替えられるようになっている。MacBook の Spaces を使えば仮想スクリーンに外部ディスプレイが割当てられ、そこに Keynote と OHC を一つずつ割り当てるのだ。
次に、こうして割り当てられた QuickCam Pro 9000 の映像が映し出されている写真を示す。
外付けディスプレイに映し出された QuickCam Pro 9000 の映像。
上部に写っているウインドウのトップバーは邪魔であるが、これを隠す事はできないらしい。(隠したら他の弊害が発生するので、仕様であろう)
カメラスタンドは有り合わせの素材を使って作成した。手持ちの L 型アルミサッシを小型三脚にネジ止めし、アルミサッシとカメラは輪ゴムで止めた。アルミサッシはホームセンターで手に入る。三脚に固定するネジを手に入れるのが難しいかも知れない。僕の場合にはネジ箱の中にぴったり合うのがあった。何に使われていたネジなのかは分からない。
小型三脚に取り付けられた QuickCam Pro 9000
この手作り OHC は、市販品に比べると携帯性は抜群に良く、安上がりで、しかも高性能である。 QuickCam Pro 9000 は明るいのでライトは要らないかも知れない。必要ならクリップで固定できる USB ライトを買えばよいであろう。
QuickCam Pro 9000 は仕様書によると 10cm まで被写体に近づけると書いてある。実際はどうか?
OSX QuickTime で使う限り 20cm 程度が限界である。それ以上近づくとフォーカスが合わない。小さい文字を大きく映したい時には困る。フォーカスの調整はカメラが行っているはずだが、その場合に何故 Vista と同じ能力が出ないのか、理由が分からない。
被写体までの距離が 19cm の画像。この距離ではいくぶんボケる。(実物大)
プレゼンテーションを行う場合には、この程度では困るであろう。この対策は後に述べる。
XP 用の専用ソフトが附属しているが、Eee PC で試した限り、実用にはならない。そもそも画像が 320x240 しか出せない!
800x600 と表示はされているが、320x240 までの画像しか表示されない。800x600 は録画時の画素数である。
カメラコントロールバネルは Vista と同じ。
ズーム機能を持っているのが分かる。さらに、取り込む画像の向きも調整できる。しかしズームのスライダーを一番下にしたら働かなくなるのだ。スライダーを上に上げてズームアップした時に、「パンとチルト」が有効になる。この事は、これらの機能はレンズを動かしてのものではないことを示している。200万画素の能力はこの場面で生かされているのだ。
Vista 用の附属ソフトは XP 用とは幾分異なる。これは良く出来ている。オートフォーカスは 10cm まで良く働く。さらにマニュアルフォーカスにすると 3cm まで近づける。コインのような小さなものまで大写しにできる。
Vista では XP と違い、大きな画像が表示される。これはスクリーンのスナップショットである。
Vista のカメラコントローラのズームは何だか変である。ちょっとズームアップしただけでデジタルズーム的なボケ方をするのである。200万画素のゆとりはどうしたのだろう?
Vista の場合にはカメラコントローラーが附属しているので、これで十分に実用になると思える。しかし OSX の場合にはこのままでは不満が残る。Logitech から Mac 用のカメラコントローラーが出るかも知れないので、それまで待つ手もあるだろうが、ここではクローズアップレンズを取り付けて問題を解決する道を選ぶ。僕が使ったレンズは Kenko 37mm MC No.3 である*。これで 10cm 程まで近づける**。このレンズを使ったのは、単にこれが手元にあったからである。サイズ的には 30mm の方が見栄えが良い。もしも 30mm のクローズアップレンズを上手に取り付ける方法があるならばその方が良いだろう***。
問題は取り付け方法だ。クローズアップレンズを脱着可能にしたい。そのために 30mm-37mm のステップアップリングを使う。ステップアップリングをカメラに固定するのである。
今回 OHC 自作のために Kenko のステップアップリングを取り寄せたが、ぴったりである。実はステップアップリングと QuickCam の間にスペーサーが必要になる事を覚悟していたのだが、幸いな事に直接 QuickCam に接着できる。
クローズアップレンズを付けた QuickCam Pro 9000
大きなレンズが「高級」を意味しているなら、金色に光るクローズアップレンズを取り付けた QuickCam は高級感に溢れる。
次に示すのは、クローズアップレンズをマウントしているステップアップリング(黒)である。接着剤で固定されている。
真横から見たレンズマウント
以下にクローズアップレンズの成果を示す。
離してもフォーカスが合う。だからプレゼンの最中にクローズアップレンズを脱着する必要は無い。(実物大)
クローズアップレンズを付けたまま無限遠を撮影すると、もちろんボケる。
OSX にはユニバーサルアクセスのズーム機能があるので、いざとなれば、これも利用できる。OSX のズーム機能はなかなか使いやすい。QuickCam Pro 附属の Vista 用のカメラコントローラの使い勝手よりも良い感じである。
Logitech は QuickCam Vision Pro を売り出している*。Logitech のページを見ると**、これは QuickCam Pro 9000 の Mac 版らしい。しかしこれは不思議な製品だ。QuickCam Pro 9000 との違いがわからない。Mac 用のソフトが付属しているわけでもなく、また値段も QuickCam Pro 9000 よりも高い。単に
(Logitech QuickCam Vision Pro) = (QuickCam Pro 9000) - (camera controller)
もしも最短撮影距離を Mac 用に 10cm までに調整されているのならば、これを買う意味はあるだろう。しかし Logitech のホームページに載っている仕様に関する説明はラフで、最短撮影距離が載っていない。
なお QuickCam Vision Pro に関してはユーザの感想がネット上にあるので参考になるかも知れない***。
http://www.logitech.com/index.cfm/webcam_communications/webcams/devices/4528&cl=US,EN
http://www.logitech.com/index.cfm/webcam_communications/webcams/&cl=us,en
http://www.macotakara.jp/blog/index.php?ID=4019
単なるメモである
Mac のムービーに関するフリーウェアに関しては次のページが参考になる。
http://www16.plala.or.jp/x-tomo/Pages/movie.html
Sourcecode is available from Mulle kybernetiK's Subversion Repository. See license for details.
http://developer.apple.com/samplecode/Cocoa/idxQuickTime-date.html
に置かれている。
QTRecoder をベースに、いく分 OHC 用にアレンジしてみた。まだ開発途上であるが基本的な能力を示す。
QTKit を巧く使えば QuickCam Pro 9000 の 1600x1200 の画像(等倍画像)の部分矩形領域をスクリーンに映し出せるはずである。 そうして得られた画像は、縮小画像のデジタルズームによって得られた画像に比べると遥かに美しいはずである。
今回の開発中のビューアを仮に QTOHC と呼ぶ事にしよう。QTOHC によってどの程度改善されるか示す。左が QTOHC、右が QuickTime。QuickTime は 1600x1200 を 800x600 に縮小しているので、QuickTime は QTOHC に比べて半分の大きさになっている。
クローズアップレンズ(37mm No.3)をもう一枚取り寄せた。次に示すのは2枚装着の結果である。
画面では QTOHC の画像は縦長であるが、実際にはマウスで自由に調整できる。
マウスでズームアップしたり、映し出される画像部分を移動したりしたいのであるが、今のところやり方が分からない。なにしろ僕にとって、今回が始めての Mac でのプログラミングである。僕は GUI を使ったプログラミングは苦手である。
QTRecoder を OHC 用に作り直したアプリをリリースする。名前は "CaMon" (下図)
CaMon
実は CaMon は、以前に僕が ViewCam と名付けたアプリの名前を変更したものだ。ついでに機能を追加しておいた。今回リリースするバージョンは 1.1 である。バージョン 1.0 は ViewCam である。
CaMon 1.1 の特徴は
画面をマウスで移動するにはマウスの右ボタンで画像をドラッグする。ただしこの機能はズームアップした場合にしか働かない。CaMon のズームアップ機能は、表示する画像(view)がカメラが捉えた画像(capture view)の一部分である事を利用している(下図)。ズーム倍率が 1 の場合にはカメラが捉えた画像が(縮小表示されて)見えている事になる。ズーム倍率を 1 より多くすると表示領域をソフト的に移動できる。「擬似」チルトだと言うのはレンズが実際には動いていないからである。
QuickTime はカメラの認識に戸惑うことが多いのだが、QTRecorder は(従って CaMon も)早く、失敗しないで認識する。同じコンポーネントを使っていると思うのだが不思議である。
まだいくつか追加したい機能があるのだが、僕は Mac のプログラミングは不慣れなので、取り敢えずこの程度でリリースする。
このソフトウェアのネーミングであるが、"CaMon" にする事にした。以前には "ViewCam" としていたのだが、ハードウェアのように聞こえ、紛らわしいので名前を変えた。
OSX (i386) 用にコンパイルしてある。また動作確認は僕の MacBook (OSX 10.5) のみである1。
download: CaMon.app.zip
xattr -c CaMon.app