市販のCCDカメラとビデオキャプチャボードを使用してライブカメラを構築してみたので,その方法を示します.
カメラ:ダイワインダストリ SE-1500WR(防滴設計です)
コンピューター:Gateway G7-500(一般的なPC/AT互換機です)
ビデオキャプチャボード:アイ・オー・データ GV-BCTV5E
ビデオカメラ延長ケーブル:CCDカメラを購入した店で同時に入手.
OS:Vine Linux 2.6
ライブカメラ用ソフトウェア:xawtv(Vine Plus より rpm パッケージをダウンロードしておきます)
CCDカメラのビデオ端子をビデオキャプチャボードのビデオ入力端子に接続します.基本的にはこれだけです.ケーブルの長さが足りなければ延長コードを使用します.
ダウンロードした xawtv(たとえば xawtv-3.74-0vl3.i386.rpm)を root になってインストールします.
# rpm -ivh xawtv-3.74-0vl3.i386.rpm
自分のホームディレクトリに,設定ファイル .webcamrc と .netrc を以下のように作ります.
$ vi ~/.webcamrc
-------------------------------------------- [ftp] host = ftp.your-provider.ne.jp dir = public_html/webcam file = webcam.jpg passive = 1 auto = 1 debug = 1 [grab] device = /dev/video0 text = "20%y-%m-%d %H:%M:%S" #width = 160 #height = 120 quality = 75 #input = Camera input = Composite1 rotate = 0 top = 0 left = 6 bottom = -1 right = -1 trigger = 0 once = 0 delay = 120 norm = ntsc archive = /home/hogehoge/%y%m%d%H%M%S.jpg --------------------------------------------------上の例で,[ftp]のセクションは,プロバイダのサーバーへのアップロードに関する部分です.[grub]セクションは,画像の取り込みに関する部分です.
host:プロバイダのサーバーアドレスです.
dir:サーバーの,自分のファイルを置くディレクトリ.ここでは相対ディレクトリ指定です.
file:サーバーにこの名前でアップロードされます.
passive:ftpでアップロードするとき,1でうまくいかないとき0とします.
auto:~/.netrc を使ってオートアップロードするとき1にします.
debug:1を指定すると,アップロード時に詳しい情報が表示されます(デバッグモード).
device:使用するデバイスです.
text:画像に入れる文字です.ここでは20yy-mm-dd hh:mm:ssのパターンになります.
width,height:画像のサイズです.ここではオリジナルの画像をそのまま使うため,コメントアウトで済まします.
quality:画像の質です.100が最高です.数値が大きいほどファイルサイズも大きくなります.
input:入力デバイスのタイプです.Composite1 としてください.
rotate:画像の回転です.1増えると90度回転します.
top,left,bottom,right:キャプチャーした画像から,実際に使用する画像の大きさを指定します.0 <= top < bottom <= height かつ 0 <= left < right <= width の条件を満たすようにします.bottomとrightは-1になっていますが,これは最大サイズを示します.
trigger:0以外にすると,画像に変化があった場合のみ働きますが,私が試したところうまく動いてくれませんでした.
once:0にすると繰り返し実行します.1だと1回のみです.
delay:1回のキャプチャーが終了してから次のキャプチャーが始まるまでの時間です(秒).
norm:ビデオの形式です.
archive:ローカルマシンに保存するファイル.
$ vi ~/.netrc
--------------------------------------------------------------- machine ftp.your-provider.ne.jp login hogehoge password XXXXXXX ---------------------------------------------------------------
machineのあとにftpサーバー名,loginのあとにログイン名,passwordのあとにパスワードを記すだけです.
注:サーバーに転送するためのIDとパスワードはデフォルトでは .webcamrc に記入することになっているようですが,これですとftp転送におけるKerberos関連のエラーを回避できません.従って,ここではID・パスワードを .netrc に記しています.
.webcamrcと.netrcは安全のためパーミッションを600にしておきます.また,こうしないとアップロードできないようになっています.
$ chmod 600 .webcamrc
$ chmod 600 .netrc
xawtv の設定ファイルを作っておきます.以下のように編集します.F11キーを押せば,カメラからの映像が確認できます.また,ビデオキャプチャボードにアンテナを接続すれば,テレビを見ることができます(下記は東京タワーからの電波を受信する地域の設定です).
rootになって作業します.
$ su -
# vi /etc/X11/xawtvrc
----------------------------------------------------- # copy this file to '/etc/X11/xawtvrc' or '~/.xawtv' [global] ratio = 4:3 freqtab = japan-bcast pixsize = 128 x 96 pixcols = 1 jpeg-quality = 75 keypad-ntsc = no keypad-partial = yes osd = yes [defaults] norm = ntsc #norm = ntsc-jp #norm = ntscjp input = television #input = tuner #capture = overlay #capture = grabdisplay color = 50% bright = 50% hue = 50% contrast = 50% # [Station name] # capture = overlay | grabdisplay | on | off # input = Television | Composite1 | S-Video | ... # norm = PAL | NTSC | SECAM | ... # channel = # # fine = # (-128..+127) # key = keysym | modifier+keysym # color = # # bright = # # hue = # # contrast = # # TV Station [NHK-1] channel = 1 key = F1 [NHK-3] channel = 3 key = F3 [NTV] channel = 4 key = F4 [TBS] channel = 6 key = F6 [FNS] channel = 8 key = F8 [ANN] channel = 10 key = F10 [TXN] channel = 12 key = F12 [video] input = Composite1 key = F11 ----------------------------------------------------
以上の作業が完了したら,webcamコマンドを動作させます.
$ webcam &
これで一定時間ごとに画像がアップロードされるライブカメラが完成しました.
なお,webcamコマンドは常駐しますので,中止するときはkillします.