# Webcam Setup (日本語)

こちらは Arch Linux でウェブカメラを設定するガイドです。

## Linux のウェブカメラサポート

ほとんどの場合ウェブカメラは何も設定しなくても動作します。その場合、色調や明るさなどのパラメータを設定したいなら、ウェブカメラ設定のセクションまでスキップできます。ウェブカメラが自動で動作しない場合は以下の手順に従って下さい。

## ウェブカメラを確認する

(`lsusb` などを使って) ウェブカメラの名前を確認して適切なドライバーを探して下さい。以下はウェブカメラと、ウェブカメラが動作するドライバーのリストです。モジュールのコンパイルに関する情報などはデバイスの名前の右のリンクをクリックしてください。ウェブカメラを動作させることができたら、このリストにあなたの使ったドライバーとウェブカメラの名前を追加してください！

### pwc

- Creative Labs Webcam Pro Ex
- Logitech QuickCam Notebook Pro (only the "Pro" models)
- Logitech Quickcam Pro 4000
- Philips ToUCams (not confirmed at the moment, but it is using the pwc driver if I remember correctly)
- Philips SPC900NC

### qc-usb

- Dexxa Webcam
- Labtec Webcam (old model)
- LegoCam
- Logitech Quickcam Express (old model)
- Logitech QuickCam Notebook (not the "Pro" models)
- Logitech Quickcam Web

### qc-usb-messenger

- Logitech Quickcam Messenger
- Logitech Quickcam Communicate (for Communicate MP/S5500 or "for Business" see the linux-uvc section below)

現在 community リポジトリに入っています。

Note:

- qc-usb-messenger が動作しない場合は、gspcav1 パッケージをインストールして gspca モジュールを使って下さい。
- 現在このドライバーはカーネル 2.6.27 に含まれているモジュールです。

### zr364xx

このドライバーは多数のウェブカメラで使用できます:

- Aiptek PocketDV 3300
- Creative PC-CAM 880
- Konica Revio 2
- Genius Digital Camera
- Maxell Maxcam PRO DV3

サポートされているデバイスの完全なリストは こちら で見れます。このドライバーの PKGBUILD が AUR にあります。

### sn9c102

- Trust Spacecam シリーズ
- Maxell Smartcam (ノートパソコン用): 352x288 max. resolution @ 3fps

### gspca

サポートされているウェブカメラの完全なリストは こちら です。

Note: このドライバーは V4L1 をサポートしていません。

### stv680

ここ数年アジアで作られた安いノーブランドのカメラはほとんど stv680 チップセットを使っています。こういったカメラは多くがノベルティグッズです (Pencam, SpyC@m, LegoCam)。

- Aiptek PenCam シリーズ
- Digitaldream シリーズ
- Dolphin Peripherals シリーズ
- Lego LegoCam
- Trust SpyC@m シリーズ
- Welback Coolcam

stv680 チップセットを使用するウェブカメラの完全なリストは こちら から見れます。

### linux-uvc

- Genius iLook 1321
- Logitech Webcam C250
- Logitech Webcam C270
- Logitech Webcam C600
- Logitech HD Webcam C525
- Logitech Quickcam Pro 5000
- Logitech Quickcam Pro 9000
- Logitech Quickcam Orbit AF
- Logitech Quickcam Orbit MP
- Logitech Quickcam S5500
- Microdia Pavilion Webcam (on MSI PR200)
- Logitech Quickcam Communicate MP/S5500 or "for Business"
- Chicony Electronics CNF7051

サポートされている UVC デバイスの完全なリストは こちら で見れます。

カーネル 2.6.26 から linux-uvc はカーネルに含まれています。uvcvideo モジュールをロードしてください。

Note:

- このドライバーは V4L1 をサポートしていません。
- WebCam SCB-0385N (usb ID 2232:1005), WebCam SC-0311139N (usb ID 2232:1020), WebCam SC-03FFL11939N (usb ID 2232:1028) では、カメラの使用によってシステムがフリーズする場合、設定をモジュールを追加する必要があります:

    /etc/modprobe.d/uvcvideo.conf

    options uvcvideo nodrop=1

### ov51x-jpeg

- Sony EyeToy
- Chicony DC-2120
- Chicony DC-2120 pro
- Trust Spacecam 320
- Hercules Webcam Deluxe
- Hercules Webcam Classic
- Creative Live! Cam Notebook Pro VF0400
- Creative Live! Cam Vista IM
- Creative Live! Cam Vista IM VF0420
- Creative Vista Webcam VF0330
- ASUS webcam Model?
- Philips PCVC820K/00
- NGS showtime plus
- HP VGA Webcam with Integrated Microphone

これは AUR にあるカーネルモジュールでオリジナルのドライバーに jpeg の復元が追加されています。

"Creative Live! Cam Vista IM" を Skype で使うには、次の行を `/etc/modprobe.d/modprobe.conf` に追加する必要があります:

    options ov51x-jpeg forceblock=1

### r5u870 (Ricoh)

- HP Pavilion Webcam
- HP Webcam 1000
- Sony VAIO VGP-VCCx

Ricoh ウェブカメラは新しい Sony のノートパソコンでよく使われています。

r5u87x-hg (ファームウェアも入っています) をインストールして `loader` コマンドを実行してください。

### stk11xx (Syntek)

- Asus のノートパソコンに搭載された内蔵カメラ
- Asus A8J, F3S, F5R, F5GL, F9E, VX2S, V1S, A6T

stk11xx AUR パッケージをインストールしてください。適切なカーネルモジュールが含まれています。

## ウェブカメラのモジュールがロードされているか確認する

あなたの使っているウェブカメラのモジュールを `/etc/modules-load.d/webcam.conf` に追加すればブートストラップの初期化段階でカーネルにロードされるようになります。

ウェブカメラが USB の場合、カーネルは自動的に適切なドライバーをロードするはずです。この場合、ウェブカメラを接続して dmesg を確認してください。以下のような表示があるはずです:

    $ dmesg|tail

    sn9c102: V4L2 driver for SN9C10x PC Camera Controllers v1:1.24a
    usb 1-1: SN9C10[12] PC Camera Controller detected (vid/pid 0x0C45/0x600D)
    usb 1-1: PAS106B image sensor detected
    usb 1-1: Initialization succeeded
    usb 1-1: V4L2 device registered as /dev/video0
    usb 1-1: Optional device control through 'sysfs' interface ready
    usbcore: registered new driver sn9c102

## パーミッション

ウェブカメラを使うには、`/dev/video0` を使用するパーミッションが必要です。

### udev

udev を使っている場合、グループ video に入る必要があります。次のコマンドでグループを確認できます:

    $ groups

ユーザーをグループに追加するには　root で次を実行してください:

    # gpasswd -a <username> video

以下の2つの手順は udev で設定されるため基本的に必要ありません。

デバイスのグループを video に設定:

    # chgrp video /dev/video0

デバイスのパーミッションを設定:

    # chmod 660 /dev/video0

Tip: 順番にウェブカメラをロードしたり (/dev/video0..n デバイス順) 所有者やパーミッションを設定する必要がある場合、udev ルールの書き方を見て下さい。

### devfs

以下を `/etc/devfsd.conf` に追加してください。これで通常ユーザーに `/dev/video0` (ウェブカメラ) を使用する権限が与えられます。

    REGISTER        video0       PERMISSIONS     root.users 0660

## ウェブカメラ設定

明るさや色調などのウェブカメラのパラメータを設定したい場合 (例: デフォルトの色調が青・赤・緑みがかっているなど、公式リポジトリに guvcview パッケージとして存在する GTK+ UVC Viewer (guvcview) を使うことができます。インストールして起動すれば、調整できる設定のリストが表示されます。設定を変更すると全てのアプリケーションに影響があります (例: Skype)。

## ソフトウェアでウェブカメラを使う

Linux カーネルのバージョン 2.6.27 は 多数の新しいウェブカメラドライバー をサポートしています。レガシーな Video4Linux API は廃止され、現在これらのドライバーは Video4Linux バージョン 2 のみをサポートしています。Video4Linux バージョン 2 からピクセル形式のデコードはユーザースペースに移り、カーネルスペースでのデコードはサポートしていません。libv4l ライブラリがピクセスデコードサービスのユーザーランドアプリケーションを提供しており、多くのプログラムで使用されます。他の互換レイヤーも利用可能です。

デバイスが作成されたが画像がおかしい場合 (完全に緑など)、以下の設定が必要かもしれません。

アプリケーションが V4L2 をサポートしているがピクセル形式をサポートしていない場合 (例: cheese) 次のコマンドを使って下さい:

    LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so cheese

アプリケーションが V4L の古いバージョンしかサポートしていない場合 (Skype がこの種のソフトウェアで一番有名です) 次のコマンドを使って下さい:

    LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

Tip: 以下のような行を `/etc/profile` や xprofile に追加することで長いコマンドを毎回入力する手間が省けます:

    export LD_PRELOAD=/usr/'$LIB'/libv4l/v4l2convert.so

または:

    export LD_PRELOAD=/usr/'$LIB'/libv4l/v4l1compat.so

Arch64 で32ビットのアプリケーションを使う場合 (例: Skype)、lib32-v4l-utils パッケージをインストールして下さい。

ウェブカメラが guvcview で問題なく動くのに、Skype で動かない場合、起動する前に次も設定する必要があるかもしれません:

    export XLIB_SKIP_ARGB_VISUALS=1

### Cheese

Cheese は GNOME の静画・動画トーククライアントです。Mac OS X の Photo Booth に似ています。公式リポジトリからインストール可能です。

### GTK+ UVC Viewer (guvcview)

ウェブカメラの設定ができる便利なソフトウェアというだけでなく、guvcview は Linux UVC ドライバーがサポートしているデバイスから動画をキャプチャ（音付きで！）・表示することもできます。guvcview パッケージとして公式リポジトリから利用可能です。

### Kopete

Kopete は KDE のインスタントメッセージ (IM) クライアントです。KDE 3.5 では、MSN と Yahoo! ウェブカメラをサポートしていますが、全てのウェブカメラが動くわけではありません。kdenetwork パッケージに含まれています。

### Kamoso

ウェブカメラから写真や動画を撮影する KDE のアプリケーション。 AUR で利用可能です: kamoso.

### xawtv

これは v4l デバイスの素朴なビューアで、TV チューナーカードで使うことが想定されていながら、ウェブカメラでも問題なく動作します。ウィンドウにウェブカメラの映像を表示します。インストールして (xawtv) 次のコマンドで起動してください:

    $ xawtv -c /dev/video0

nVidia グラフィックカードを使っている場合、以下のようなエラーが表示されます:

    X Error of failed request:  XF86DGANoDirectVideoMode
     Major opcode of failed request:  139 (XFree86-DGA)
     Minor opcode of failed request:  1 (XF86DGAGetVideoLL)
     Serial number of failed request:  69
     Current serial number in output stream:  69

次のコマンドで実行してください:

    $ xawtv -nodga

### VLC

VLC を使ってウェブカメラを表示したり記録することもできます。VLC のファイルメニューで、'Capture Device...' ダイアログを開いて動画と音声のデバイスファイルを入力してください。もしくはコマンドラインから次を実行します:

    $ vlc v4l:// :v4l-vdev="/dev/video0" :v4l-adev="/dev/audio2"

これで VLC はウェブカメラのミラーを作ります。写真を撮影するには、'Video' メニューの 'Snapshot' を選択してください。動画を記録するには、`--sout` 引数を追加します、例:

    $ vlc v4l:// :v4l-vdev="/dev/video0" :v4l-adev="/dev/audio2" \
      --sout "#transcode{vcodec=mp1v,vb=1024,scale=1,acodec=mpga,ab=192,channels=2}:duplicate{dst=std{access=file,mux=mpeg1,dst=/tmp/test.mpg}}"

(Obviously a bit overkill with regard to the bit rates but it is fine for testing purposes.) Notice that this will not produce a mirror on the display - in order to see what you are recording, you would need to add the display as a destination to the argument:

    ... :duplicate{dst=display,dst=std{access= ....

(Though this can tax older hardware somewhat...)

### MPlayer

MPlayer を使ってウェブカメラのスナップショットを撮るにはターミナルから次のコマンドを実行します:

    $ mplayer tv:// -tv driver=v4l2:width=640:height=480:device=/dev/video0 -fps 15 -vf screenshot

ここから `s` を押すことでスナップショットが作られます。スナップショットはあなたのカレントフォルダに shotXXXX.png と保存されます。 連続動画を記録したい場合:

    $ mencoder tv:// -tv driver=v4l2:width=640:height=480:device=/dev/video0:forceaudio:adevice=/dev/dsp -ovc lavc -oac mp3lame -lameopts cbr:br=64:mode=3 -o filename.avi

`Ctrl+c` を押せば録画が終了します。

### FFmpeg

FFmpeg (日本語)#ウェブカメラの録画 を見て下さい。

### ekiga

Microsoft NetMeeting にとてもよく似ています。 公式リポジトリから ekiga パッケージをインストールして下さい。 設定は自分で行なって下さい。

### Sonic-snap

Sonic-snap [1] は sn9c102 ベースのウェブカメラ専用のビューア・レコーダです。 sonic-snap は AUR から入手可能です。

### Skype

Skype の最新版は動画をサポートしています。オプションのビデオデバイスを確認してください、テスト画像をダブルクリックすることでフルスクリーンにできます。skype パッケージをインストールして下さい。 skype で緑の画像が表示される場合は上のソフトウェアでウェブカメラを使うセクションを見て下さい。

x86-64 を使っている場合は lib32-v4l-utils をインストールして次のコマンドで skype を起動してください:

    LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype

You can either set an alias for skype, or rename the original skype binary in `/usr/bin` and create a text file containing the above option, or you can simply adjust the Command line in the options for the Skype icon in your favourite desktop environment.

### Motion

  Motion はカメラからのビデオ信号を監視するプログラムです。映像の一部が変わったのを検出することが可能で、言い換えれば、動き検出が可能です。

motion は v4l2 デバイスしか処理できないため v4l1 ドライバーしかないカメラを使う時は前述の通りに v4l1compat.so をプリロードする必要があります。そうしないと motion が適切なパレットを見つけられないというエラーが起こります。

## トラブルシューティング

### Microsoft Lifecam Studio/Cinema

特定の設定下で、Microsoft lifecam studio/cinema は過大な usb 帯域を要求して失敗します、Uvcvideo FAQ を見て下さい。この場合、`uvcvideo` ドライバーを `quirks=0x80` でロードしてください。以下を `/etc/modprobe.d/uvcvideo.conf` に追加します:

    /etc/modprobe.d/uvcvideo.conf

    ## fix bandwidth issue for lifecam studio/cinema
    options uvcvideo quirks=0x80

Category:

- Imaging (日本語)