動機
不純
用意するもの
- RaspberryPi 2
- Webカメラ(Raspiで実績のあるUCAM-DLK130TBKを選択)
- ゆかり様生ボイス.wav
ゆかり様生ボイスを再生させるまで
/home/pi
にシェルスクリプトを作成 yukari.wavも配置
#!/bin/sh cd /home/pi aplay ./yukari.wav
これでイヤホンジャックから適当に音が再生されればおk
もしうまくいかない場合は音出力をアナログ出力をに優先させるコマンド実行
amixer cset numid=3 1
音量が小さい場合はalsamixer
等で調節
Webカメラとの連携
あらかじめraspiにカメラを接続してlsusb
を実行し認識することを確認すること
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 056e:700f Elecom Co., Ltd
motionというアプリを今回利用する
sudo apt-get install motion
以下/etc/motion/motion.confで以下の設定項目を変更
threshold 3000 # 検知の閾値 値が小さいほど敏感 output_normal off #検知の際の画像保存しない ffmpeg_cap_new off #検知の際にffmpegを利用しない on_event_start /home/pi/play.sh #検知の際に実行するシェルスクリプト
設定後
sudo motion -n
で動作確認
常駐化
motionをサービスとして起動させるには/etc/motion/motion.confにて以下変更
daemon on #常にバックグラウンドで動作するサービスとして起動させる
あと/etc/default/motionにてstart_motion_daemon=no
をyes
に変更
しかしこれだとmotionがmotionユーザーとして起動し、パーミッションエラーでmotion.confを読み込むことに失敗する
could not open configfile /etc/motion/motion.conf: Permission denied Not config file to process using default values
そこで/etc/rc1.d/K01motion以下を変更し起動ユーザーを変更する
###start部分の「--chuid motion」を削除 if start-stop-daemon --start --oknodo --exec $DAEMON -b ; then --chuid motion
これでservice motion restart
するとうまくいくはず