Следующий код отлично работает на моем raspberry pi 3 (ОС Raspbian Unix). и я могу посмотреть превью видео на 10 секунд. (похоже камера установлена правильно).
from camera import PiCamera
from time import sleep
camera = PiCamera()
camera.start_preview()
sleep(10)
camera.stop_preview()
camera.close()
но если я попытаюсь сохранить предварительный просмотр в файл с помощью
from camera import PiCamera
from time import sleep
camera = PiCamera()
camera.start_preview()
camera.start_recording("./foo.h264")
sleep(10)
camera.stop_recording()
camera.stop_preview()
то я получаю сообщение об ошибке
mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
Traceback (most recent call last):
File "CaptureVideo.py", line 3, in <module>
camera = PiCamera()
File "/usr/lib/python2.7/dist-packages/picamera/camera.py", line 488, in __init__
self.STEREO_MODES[stereo_mode], stereo_decimate)
File "/usr/lib/python2.7/dist-packages/picamera/camera.py", line 620, in _init_camera
prefix="Camera component couldn't be enabled")
File "/usr/lib/python2.7/dist-packages/picamera/exc.py", line 191, in mmal_check
raise PiCameraMMALError(status, prefix)
picamera.exc.PiCameraMMALError: Camera component couldn't be enabled: Out of resources (other than memory)
Я гуглил сообщение об ошибке, но не нашел конкретного ответа.
Изменить:: Мой gpu_mem
равен 128 в /boot/config.txt
Edit2:: Я нашел этот проект на github
https://github.com/ashtons/picam
Я установил этот проект и написал следующий код
import picam
import time
picam.recordVideoWithDetails('./foo.h264', 640, 480, 10000)
и это сработало, и он записал видео. видео выглядело так, как будто это ускоренная перемотка вперед. но это сработало и не исчерпало ресурсы.
Итак, теперь вопрос в том, что не так с модулем PiCamera.
camera.close()
в скрипт, сохраняющий предварительный просмотр, и попробуете запустить его снова? - person jDo   schedule 19.04.2016camera.close()
в конце скрипта. теперь я выключил rp3 и выдернул шнур питания. затем снова подключил питание и загрузил rp3. запустил скрипт. тот же результат - person Knows Not Much   schedule 19.04.2016