heads-up
2009Q4 FreeBSD Status Reportが公開されました。報告されているプロジェクトから興味深いプロジェクトを紹介します。
- The webcamd deamon
Video4Linux USB WebcamドライバがFreeBSDへ移植されました。この取り組みは関連するカーネルモジュールやライブラリも含めてまとめて
「Video4BSD」 とも呼ばれています。Video4Linuxで提供されているWebcamドライバのほとんどを利用できるというのが最大のポイントとなります。 Video4BSDではカーネルモジュール(video4bsd.
ko)が2種類のデバイスファイルを生成します。/dev/ videoNと/dev/ video_ daemonNです。/dev/ videoはVideo4Linux APIを提供し、 /dev/ video_ daemonNへ処理を渡します。/dev/ video_ daemonNを監視しているwebcamd(8)デーモンがlibusbを経由して実際にUSBデバイスからデータを取得、 ドライバを経由して処理を実施し、 video_ daemonNへデータを戻します。video_ daemonNからvideoNへデータが渡り、 最終的にVideo4Linux APIに対応したアプリケーションへデータが渡ります。 Video4BSDは2010年1月10日
(r202025) 以降のFreeBSD 9-CURRENT、 または2010年1月17日 (r202504) 以降のFreeBSD 8-STABLEで利用できます。詳しくはFreeBSD Daily Topics:2010年1月25日をご覧ください。 - V4L support in Linux emulator
Linuxバイナリ互換機能で動作するアプリケーションからVideo4Linuxを利用可能にする取り組みがマージされました。これはpwc(4)ドライバ (multimedia/
pwcbsd)が提供するVideo4Linux APIをLinuxバイナリ互換機能経由で利用できるようにするもので、 Skype (net/ skype)やFlash10 (www/ linux-f10-flashplugin10)からWebcamが利用できたという報告があります。 先ほどのVideo4BSDとこちらの取り組みは似たような時期に実現されたため関係が分かりにくいのですが、
導入の経緯は別のもので、 その実装も別のものです。V4L support in Linux emulatorの方は、 従来からあるpwc(4)ドライバ (multimedia/ pwcbsd)をLinuxアプリケーションからも利用できるようにLinuxバイナリ互換機能に実装を追加したもの、 Video4BSDは新しくVideo4LinuxをFreeBSDへ移植したものです。 対応するWebcamデバイスドライバの多さや包括具合を考えると、
今後はVideo4BSDをベースにしてLinuxバイナリ互換機能からもWebcamを利用できるように実装が調整されることになると見られます。pwc(4)ドライバ (multimedia/ pwcbsd) はPorts Collectionに残りつづけることになると見られますが、 対応しているデバイスの種類が限られているため、 Video4BSDの導入以降はそれほど必要性の高いドライバではなくなったと見られます。