監視カメラ

/ Linux/Unix / Comment[0]
メモ

motion.conf
daemon on
setup_mode off
videodevice /dev/video0
v4l2_palette 8
input 8
norm 0
frequency 0
rotate 0
width 640
height 480
framerate 5
minimum_frame_time 0
netcam_tolerant_check off
auto_brightness off
brightness 0
contrast 0
saturation 0
hue 0
roundrobin_frames 1
roundrobin_skip 1
switchfilter off
threshold 2000
threshold_tune off
noise_level 32
noise_tune on
despeckle EedDl
smart_mask_speed 0
lightswitch 0
minimum_motion_frames 1
pre_capture 0
post_capture 0
gap 60
max_mpeg_time 0
output_all off
output_normal on
output_motion off
quality 75
ppm off
ffmpeg_cap_new on
ffmpeg_cap_motion off
ffmpeg_timelapse 0
ffmpeg_timelapse_mode daily
ffmpeg_bps 500000
ffmpeg_variable_bitrate 0
ffmpeg_video_codec swf
ffmpeg_deinterlace off
snapshot_interval 0
locate on
text_right %Y-%m-%d\n%T-%q
text_left Labo CAMERA%t
text_changes off
text_event %Y%m%d%H%M%S
text_double off
target_dir /var/www/cam/images/
snapshot_filename %v-%Y%m%d%H%M%S-snapshot
jpeg_filename %v-%Y%m%d%H%M%S-%q
movie_filename %v-%Y%m%d%H%M%S
timelapse_filename %Y%m%d-timelapse
webcam_port 1101
webcam_quality 50
webcam_motion off
webcam_maxrate 15
webcam_localhost off
webcam_limit 0
control_port 1111
control_localhost on
control_html_output on
track_type 0
track_auto off
track_motorx 0
track_motory 0
track_maxx 0
track_maxy 0
track_iomojo_id 0
track_step_angle_x 10
track_step_angle_y 10
track_move_wait 10
track_speed 255
track_stepsize 40

1101ポートにアクセスするとライブ映像が見える


/camにアクセスすると動体検知で撮影した画像のサムネイルが表示される
index.php
<?php
$dirsize = `du -h images`;
print("Size: $dirsize<br/>");
print('<a href="download.php">Download</a><br/>');
$array = scandir('/var/www/cam/images',1);
$num = count ($array);
for ($i=0;$i<$num;$i++){
$filename = $array[$i];
if (Eregi('jpg$', $filename)) {
print('<a href="images/' .$filename . '" target=_blank>
<img src="images/' .$filename . '" width="320"></a> ');
}
}
?>



Downloadをクリックすると次のphpが実行され、今現在表示されている画像を一括ダウンロードさせる
download.php
<?php
$filename = '/dev/shm/camera.tgz';
$filesize = filesize($filename);
$mime = 'application/x-tar-gz';
`tar czf $filename images/*.jpg`;

header('Content-Type: application/x-tar-gz');
header("Content-Disposition: attachment; filename= $filename");
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Pragma: no-cache');
header("Content-Length: $filesize");

readfile($filename);
`rm $filename`;
?>


このままじゃimagesディレクトリに画像が溜まってブラクラになりかねないから、cronで一日毎に圧縮することにする
# crontab -e
0 0 * * * tar czf /var/www/cam/images/archive/`date +%F`.tgz /var/www/cam/images/*.jpg;rm -f /var/www/cam/images/*.{jpg,swf}
関連記事

コメント

:
:
:
:
:
管理人のみ表示を許可