PiCamera
-
while GPIO.input(33) == video: dvrname = datetime.datetime.now().strftime('%y%m%d_%H%M%S') with picamera.PiCamera() as camera: camera.resolution = (1920, 1080) camera.start_preview() camera.start_recording('/home/pi/Videos/' + dvrname + '.h264') camera.wait_recording(30) GPIO.wait_for_edge(33, GPIO.FALLING) camera.stop_recording() camera.stop_preview() camera.close()
Вопрос. Можно как-то досрочно завершить выполнение camera.wait_recording(30) не дожидаясь 30 секунд, а просто по нажатию кнопки?
<<9. API — The PiCamera Class>> предлагает для решения этого (как я понял), но разобраться сам в нём не могу(
import io import itertools import picamera with picamera.PiCamera() as camera: analyse = None for stream in camera.record_sequence( itertools.cycle((io.BytesIO(), io.BytesIO()))): if analyse is not None: if process(analyse): break analyse.seek(0) analyse.truncate() camera.wait_recording(5) analyse = stream