撮れるように改良してみます。
第一パラメータに撮影時間を設定できるようにして、
ここの数字が0の場合は、静止画を撮影し、
1以上の場合は、動画を撮影する秒数と
なるようにしてみます。
パラメータの取得は、sys.argv から
もらうことができるので、
これが設定されているかを確認し取得します。
if (__name__ == "__main__"):
if (len(sys.argv) == 2): # 一つ目はパスが入るので2つあるか確認
run(rec_time=int(sys.argv[1])) # 0から始まって2つ目を取得
else:
run()
def run(rec_time=0):
with picamera.PiCamera() as camera:
if (mode == 0):
# 写真
else:
# 動画
全体は、こちら
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
写真撮影
Usage:
python3 cam.py [rec_time = video rec time]
インストール
sudo apt-get install python3-picamera
mkdir /home/pi/pic
chmod +x cam.py
"""
import time
import picamera
from datetime import datetime
#--------------------------------------------------------------------------
# 撮影開始
#--------------------------------------------------------------------------
def run(rec_time=0):
with picamera.PiCamera() as camera:
if (mode == 0):
camera.resolution = (2592, 1944)
#camera.vflip = True
#camera.hflip = True
#camera.start_preview()
#time.sleep(3)
tmsmp = datetime.now().strftime("%Y%m%d-%H%M%S")
camera.capture('pic/pic' + tmsmp + '.jpg')
#camera.stop_preview()
else:
camera.resolution=(640, 480)
#camera.sharpness = 0
#camera.contrast = 0
#camera.brightness = 50
#camera.saturation = 0
#camera.ISO = 0
#camera.video_stabilization = False
#camera.exposure_compensation = 0
#camera.exposure_mode = 'auto'
#camera.meter_mode = 'average'
#camera.awb_mode = 'auto'
#camera.image_effect = 'none'
#camera.color_effects = None
#camera.rotation = 0
#camera.hflip = False
#camera.vflip = False
#camera.crop = (0.0, 0.0, 1.0, 1.0)
camera.start_recording('pic/video.h264') # 保存先
sleep(rec_time) # 撮影時間分をスリーブする
camera.stop_recording()
if (__name__ == "__main__"):
if (len(sys.argv) == 2):
run(rec_time=int(sys.argv[1]))
else:
run()
0 件のコメント:
コメントを投稿