2012年02月22日 UVC対応webcamの使い方 [長年日記]
_ UVC対応webcamの使い方
メモ。全ては検証してないよん。
静止画撮影
http://www.firestorm.cx/fswebcam/
# 絞り等が安定するまで 10フレームスキップする $ fswebcam -S 10 -r 384x288 --no-banner cam.jpg
動画再生&静止画撮影
まず、 FIFO ファイルを作成。
$ mkfifo tmp.fifo
mplayer 実行
$ mplayer tv:// -tv device=/dev/video0 -input file=tmp.fifo -vo xv -vf screenshot
撮影
$ echo "screenshot 0" > tmp.fifo
動画再生
$ mplayer tv:// -tv driver=v4l2:width=640:height=512:device=/dev/video0
動画撮影(ffmpeg)
システムが認識しているサウンドカードを確認する。
$ cat /proc/asound/cards $ cat /proc/asound/devices
撮影
$ ffmpeg -f alsa -i hw:0 -ar 44100 -ab 128 -f video4linux2 -s 640x480 -b 800 -r 30 -i /dev/video0 test.avi
動画撮影(mencoder)
音声無し
$ mencoder tv:// -tv driver=v4l2:width=320:height=240:device=/dev/video0 -nosound -ovc lavc -o wcrecording.avi
音声有り
$ mencoder tv:// -tv driver=v4l2:width=640:height=480:device=/dev/video0:forceaudio:adevice=/dev/audio -ovc lavc -oac mp3lame -lameopts cbr:br=64:mode=3 -o webcam.avi
おまけ(X画面キャプチャ)
キャプチャするウィンドウの矩形情報(x, y, width, height)を取得
$ xwininfo
キャプチャ
ffmpeg -f alsa -ac 2 -i hw:0,2 -f x11grab -s <width>x<height>+0+0 -r 30 -i :0.0+<x>,<y> -sameq -f avi -y output.avi
ストリーミング
http://sourceforge.net/projects/mjpg-streamer/
- サイズ : 320×240
- FPS : 5で
- 画質 : 50
- YUYV
- ポート : 8080
- ユーザー名 : hoge
- パスワード : hoge
$ ./mjpg_streamer -i "./input_uvc.so -d /dev/video0 -r 320x240 -f 5 -q 50 -y -n" -o "./output_http.so -w ./www -p 8080 -c hoge:hoge"