愛犬のモニタリング用にネットワークカメラ使ってたんですが、壊れた。
外から携帯(いわゆるガラケー、フィーチャーフォン)からアクセスしたいけど、
最近のネットワークカメラで携帯対応うたってる機種って無いのね。
てことでraspberry piでネットワークカメラ作ってみます。
スマホで動画、ガラケーでは動画はキツいので静止画を見れるようにします。
使ったカメラはこちら
LOGICOOL ウェブカム HD画質 120万画素 C270
アップデート
作業前にはアップデートしといたほうが色々捗る。
1
2
3
4
|
$ sudo apt-get update
$ sudo apt-get dist-upgrade
$ sudo apt-get upgrade
$ sudo apt-get autoclean
|
インストール
カメラ自体はさすだけで認識しました。
1
2
|
$ lsusb
Bus 001 Device 006: ID 046d:0825 Logitech, Inc. Webcam C270
|
カメラをいろいろいじるためのソフトをインストール。
1
2
|
$ sudo apt-get install fswebcam
$ sudo apt-get install motion
|
設定
motionの設定
1
2
3
4
5
6
7
8
9
10
11
|
$ sudo vim /etc/motion/motion.conf
daemon on
webcam_localhost off #nginx経由の場合はon
control_localhost off #nginx経由の場合はon
#ガラケー用に静止画も撮るとりあえず3秒間隔/ファイル名固定にする
snapshot_interval 3
snapshot_filename snapshot
$ sudo vim /etc/default/motion
start_motion_daemon=yes
|
ブラウザから http://raspiのアドレス:8081/
で動画が見れるはず。
Nginx
basic認証つけたいのでnginx経由でアクセスさせます。
1
2
3
4
|
$ sudo apt-get install nginx
$ sudo apt-get install apache2-utils #htpasswdのためにインスコ
$ sudo sh -c "htpasswd -nb username password >> /etc/nginx/.htpasswd"
$ sudo vim /etc/nginx/sites-available/default
|
1
2
3
4
5
6
7
8
9
10
11
12
|
#動画用
location /cam/{
auth_basic "welcome webcam";
auth_basic_user_file "/etc/nginx/.htpasswd";
proxy_pass http://127.0.0.1:8081;
}
#静止画用
location /cams/{
auth_basic "welcome webcam";
auth_basic_user_file "/etc/nginx/.htpasswd";
alias /tmp/motion/;
}
|
あとはルータの設定でnginxを見れるようにしておわり。
DDNSとか設定しないとダメかも。
しばらく様子見。
追記
頻繁にファイルの書き換えが行われて、SDカードへのダメージが心配なので、
motionの作業フォルダ/tmp/motion/をramに作るようにしました。
/etc/fstabに
1
|
tmpfs /tmp tmpfs defaults,size=64m,noatime,mode=1777 0
|
を追加してリブート。
追記2
スナップショットファイルらしきものを多数作るので、止めました。
1
2
|
output_normal off
ffmpeg_cap_new off
|