May 28, 2004

作業メモ~玄箱にQcam Pro 4000をつなぐ

大人気の玄箱にLogitechのUSBカメラQcam Pro 4000をつなぐことができました。その作業メモ。

1.歌う玄箱を参考にカーネルコンパイル環境を作ります。
2.PWCドライバからpwc-8.8.tar.gzをいただいて展開。kernel-2.4/の中に入ってるファイル全部をカーネルソースツリーのdrivers/usbの下にコピー。
3.make menuconfigでMedia devices-Video For Linuxと、USB support-USB Media devices-USB Philips Camerasのモジュールを作成するよう設定。
4.make modulesしてできあがったpwc.oを/lib/modules/2.4.17_kuro-box/kernel/drivers/usbにコピー。videodev.oを/lib/modules/2.4.17_kuro-box/kernel/drivers/media/videoにコピー。
5.歌う玄箱からmknodを頂いて/dev/の下で

mknod video0 c 81 0
ln -s video0 video

6./etc/modules.confに

alias char-major-81 videodev

を加えて、おもむろにdepmod -a
7./etc/murasaki/murasaki.preloadを次のように

ehci-hcd
usb-ohci
videodev
pwc

ehci-hcdはUSBカメラだけなら不要なんだけど一応。んで/etc/init.d/murasaki start

8.これで使えるようになる。何か抜けがあったかなあ?

(追記)
ffmpegも動きました。その作業メモ。

f1.上からソースのアーカイブをいただく。
f2.展開してconfigure
f3.config.makを開いてOPTFLAGSをコメントアウト。こんな感じ
#OPTFLAGS= -maltivec -mabi=altivec -g -O3
OPTFLAGS= -g -O3

-altivecとか分かんないけどMacintosh関係かな?

f4.make、make installでffmpegをインストールする。さらにdoc/ffserver.confを/etcにコピーしておく。
f5.あとはQuickStartと同じだけれどAudioキャプチャデバイスがないので少し作業が必要。/etc/ffserver.confを開いてAudio関係のオプションをコメントアウトしまくる。そしてtest.asfのセクションとかに
NoAudio
USBでオーディオキャプチャできる環境が作れれば…?
f6.実行。

ffserver &
ffmpeg -an http://localhost:8090/feed1.ffm

f7.Windows Media Playerで玄箱の次のURLを見てみる
http://kurobox:8090/test.asf
ちゃんとカメラ映像が見られて感動。フレームもそこそこ出るけどラグが凄い。

(追記
玄箱のカーネルは2.4.17をベースにUSB2.0を使えるようにした奴みたいです。付属CD-ROMに入っているカーネルソース差分のusb/以下にもWebカメラのドライバソースが入っていますが、これはコンパイルできません。USBドライバのコードだけが2.4.20ベース?らしく、このバージョンから2.6.xからバックポートされたvmalloc_to_page()というカーネルコールが使われている影響でビデオカメラ系ドライバのコンパイルに失敗します。そのためPWCドライバから古めのpwc-8.8を拾って入れ替える必要があります。
あと、QCam Pro 4000(PhilipsのOEM)は最大VGA解像度ですが、VGA解像度でキャプチャするにはdecompressモジュールpwcxが必要です。しかし、pcwxはバイナリでしか提供されていない(PhilipsとのNDAが必要だそうな)ので駄目だろうとあきらめていましたが、PWCドライバにあるpwcx-8.2.2に入っているPowerPC版が玄箱で使えました。VGA解像度でのキャプチャもできています。詳しくはPWCドライバのFAQを参考にしてください。

分からないことがあったら質問どうぞ。分かる範囲内で答えられるかも。
Posted by sushik at 06:05 pm | from category: Computer
Comments

Qcam:

sushi-kサンの記事を参考にしてトライしています Linux 初心者です。

歌う玄箱を参照して、玄箱に付属しているCD-ROMのsourceディレクトリにある kurobox100src.tar.gz を展開する。

とありますが、これは別個にソースコード用のCDを取り寄せてからになるのですね。

とにかく、Qcam Pro 4000 用のドライバーを落とし展開しましたが

root@KURO-BOX:/mnt/share/pwc-8.8/kernel-2.4# ls
ChangeLog
pwc-ctrl.c
pwc-ioctl.h
pwc-uncompress.c
pwc.h
pwc_nala.h
philips.txt
pwc-if.c
pwc-misc.c
pwc-uncompress.h
pwc_kiara.h
pwc_timon.h

で make できません。
どうしたらいいのですか?。
(from O213143.ppp.dion.ne.jp on July 09, 2004 at 04:54 pm)

sushik:

歌う玄箱さんを参考に、/usr/src/linuxあたりでカーネルコンパイル環境を作ります。その後、玄箱の付属CD(本体箱に同梱されている奴)の中に入っているkurobox100src.tar.gzを/usr/src/linux以下に展開し、さらに/usr/src/linux/drivers/usb/以下にpwcのソースを展開して上書きすればOKです。
コンパイルするのが面倒でしたら、http://w3.quake3.jp/sushi-k...にバイナリがありますんで、それを使うと楽です。ここにあるkurocam_pack1.02.tar.gzをゲットして、

tar xvzf kurocam_pack1.02.tar.gz -C /

てな具合に/に展開後、

/etc/init.d/murasaki stop
/etc/init.d/murasaki start

とやればUSBカメラが使えるようになります。このバイナリパッケージにはコンパイル済みのwebcamなんかも入っているので試してみてください。
(from inetgw.mda.or.jp on July 09, 2004 at 05:39 pm)

Qcam:

ありがとうございます
どこかで見たファイルだなと思ってD**V
雑誌を再読しましたところ、米田さん本人の
ホームページだということを知りました。
失礼しました。
それと、当方が所有している玄箱添付のCDにはどこを捜しても
kurobox100src.tar.gz
は入っていません、Ver.1.01
です。中身は
KuroBoxSetup.exe
image.zip
binary  フォルダ
license フォルダ
image_version.txt
source.txt
以上です。
Vine化した玄箱でWebカメラが使って見たくて色々挑戦しています。
Qcam Express が余っていますのでこれも使えればベストなんですが。
(from O213143.ppp.dion.ne.jp on July 10, 2004 at 12:10 am)

Qcam:

お教えのとおり再度挑戦しました。
/usr/src/linux で作業をすべく
pwc-8.8.tar.gz を移動させようとすると
エラーがでました、確認すると
/usr/src/l には hardhat
というフォルダしかなく linux という
名前でフォルダを新たに作成しました。
その後 /usr/src/linux にて
tar xvzf pwc-8.8.tar.gz を実行し
kernel-2.4 フォルダに移動してから
make しようとしても make できませんでした、まだまだ、勉強ですね。
(from O213143.ppp.dion.ne.jp on July 10, 2004 at 12:27 am)

sushik:

付属CDの内容が変わったのかもしれませんね。そうならCDを取り寄せないとコンパイル環境が作れないですね。

Vine化はやってないのでわかりませんがカーネルが標準のまま(多分そうですよね?)なら、バイナリを試す価値はあります。バイナリパッケージをダウンロードして/には展開せず、shareあたりで次のように展開します。

tar xvzf kurocam_pack1.02.tar.gz [Enter]

展開して得られたファイルのうちlib/modules/2.4.17_kuro-box/kernel/drivers/の下にあるusb/*とmedia/*を、玄箱の/lib/modules/2.4.17_kuro-box/kernel/drivers/の下にコピーします。
次に/etc/modules.confを開いて末尾に次の3行を加えます。
alias char-major-81 videodev
post-install pwc /sbin/insmod --force /lib/modules/2.4.17_kuro-box/kernel/drivers/usb/pwcx-2.4.20.o >/dev/null 2>&1 || :
また、/etc/murasaki/murasaki.preloadを開いて
videodev
pwc
の2行を加えます。
あとはmurasakiをリスタートすれば、もしかしたらUSBカメラが使えるようになるかもしれません。Webcamやffmpegは適当にバイナリをコピーするなりビルドするなりすればいいと思います。
(from inetgw.mda.or.jp on July 10, 2004 at 12:49 pm)

Qcam:

色々御教授してくださりありがとうございました。
トライしてみます。
(from W214068.ppp.dion.ne.jp on July 12, 2004 at 12:28 am)
このアイテムは閉鎖されました。このアイテムへのコメントの追加、投票はできません。
Trackbacks
DISALLOWED (TrackBack)