
Ubuntu日本語フォーラム

ログインしていません。
お世話になります。
Ubuntu10.04に、手持ちのUSB Webカメラを接続し、xawtvをインストールすると、ちゃんと表示されて動作しています。
このカメラに適用されているドライバーの情報を確認したいんですが、どのようにすれば良いでしょうか?
よろしく、お願い致します。
オフライン
taku_s による投稿:
このカメラに適用されているドライバーの情報を確認したいんですが、どのようにすれば良いでしょうか?
「ドライバーの情報」がどこまでを指しているかわからないのですが、ひとまずドライバの名前を確認する方法です。
まず、Webカメラが繋がった状態で、システム>システム管理>ログ・ビューア を使い、dmesg を見てみてください。
繋いだ機器の種類によってメッセージは様々ですが、dmesgの中にUSBやCameraといった「それっぽい」ものが見当たると思います。
例えば私のPCもUSB Webカメラを付けていますが、
[ 11.822519] Linux video capture interface: v2.00 [ 11.981938] uvcvideo: Found UVC 1.00 device USB2.0 PC Camera (056e:7002) [ 11.987162] input: USB2.0 PC Camera as /devices/pci0000:00/0000:00:1e.0/0000:01:02.0/0000:02:00.2/usb5/5-2/5-2:1.0/input/input8 [ 11.994336] usbcore: registered new interface driver uvcvideo [ 11.994359] USB Video Class driver (v0.1.0)
のような場所がdmesg内にありました。
usbcore: registered new interface driver uvcvideo という場所があるので、「uvcvideoという新しいドライバを登録した」ようです。
次に(GUIツールを知らず申し訳ありません)端末より
lsmod
と入力すると、現在読み込まれているカーネルモジュール(ドライバに相当※正確な表現ではない)の一覧が表示されます。
例えば私のPCでは
uvcvideo 57271 1
という部分がありました。確かに uvcvideo が読み込まれているようです。
また、/lib/modules/<今使っているカーネルのバージョン名>/ を探すと
/lib/modules/<今使っているカーネルのバージョン名>/kernel/drivers/media/video/uvc/uvcvideo.ko
にカーネルモジュールのファイルがありました。
・・・などで、私のPCのWebカメラには uvcvideo というカーネルモジュールが使われている事がわかります。
taku_s さんの環境でも同様の調査を行うと何というモジュールが使われているかわかると思います。
オフライン
ackさま
ご指導いただき、ありがとうございます。
dmesg の結果
[ 946.379728] zc3xx: probe 2wr ov vga 0x0000
[ 946.526527] zc3xx: probe 3wr vga 1 0x4001
[ 946.643733] zc3xx: probe 3wr vga type 29
[ 946.652708] zc3xx: probe sensor -> 0029
[ 946.652758] zc3xx: Find Sensor GC0305
[ 946.662181] gspca: probe ok
[ 946.671879] usbcore: registered new interface driver zc3xx
[ 946.677807] zc3xx: registered
lsmod の結果
gspca_zc3xx 45189 0
gspca_main 21199 1 gspca_zc3xx
videodev 34361 1 gspca_main
v4l1_compat 13251 1 videodev
/lib/modules/2.6.32-24-generic/kernel/drivers/media/video$ ls
v4l1-compat.ko
が、見つかりました。
この webカメラに摘要されているドライバは、 v4l1-compat.ko と言うことなんでしょうか?
オフライン
中略しつつ引用させて頂きます。
taku_s による投稿:
[ 946.662181] gspca: probe ok
[ 946.671879] usbcore: registered new interface driver zc3xx
[ 946.677807] zc3xx: registered
gspca_zc3xx 45189 0
gspca_main 21199 1 gspca_zc3xx
videodev 34361 1 gspca_main
v4l1_compat 13251 1 videodev
/lib/modules/2.6.32-24-generic/kernel/drivers/media/video$ ls
v4l1-compat.ko
が、見つかりました。
この webカメラに摘要されているドライバは、 v4l1-compat.ko と言うことなんでしょうか?
この場合ですと、
・usbcore: registered new interface driver zc3xx という行がある
・v4l1_compat → videodev → gspca_main → gspca_zc3xx とモジュールが依存している
ので、大元のモジュール名は gspca_zc3xx となります。
※ /lib/modules/2.6.32-24-generic/kernel/drivers/media/video/gspca/gspca_zc3xx.ko というファイルがあると思います。
またその他のモジュールも含め状況を説明すると
「Video4Linuxバージョン1互換モジュール(v4l1_compat)を使って、gspcaモジュール群のzc3xx用を使っている(gspca_mainが共通部、gspca_zc3xxがzc3xx用部分)」
とでもなるかと思います。
Video4LinuxはLinuxでビデオキャプチャデバイスを使うためのAPI仕様の名前で現在バージョン2(Video4Linux2)、
gspca_zc3xxはVideo4Linux2に直接対応するドライバではないのでバージョン1互換モジュール(v4l1_compat)を通して動いている、となります。
オフライン
ackさま
詳しく解説していただき、ありがとうございます。
Driverについて、まったく知識がなかったので、大変勉強になりました。
このwebカメラを動かすためには、
v4l1-compat.ko
/gspca/gspca_main.ko
/gspca/gspca_zc3xx.ko
が必要ということで、間違いないでしょうか?
オフライン
taku_s による投稿:
v4l1-compat.ko
/gspca/gspca_main.ko
/gspca/gspca_zc3xx.ko
が必要ということで、間違いないでしょうか?
「これさえあれば動く」わけではないですが、動作に必要とされていることは間違いないと思われます。
なお、LinuxはWindows等と仕組みが違うため、例えば上記ファイルを保存しておけば今後もこのデバイスが使い続けられる・・・というものではありません。
オフライン