[英]Raspberry Cam stop working after running 2 days
我編寫了一個程序來使用RPi Cam捕獲和保存圖像。
該系統運行良好,但突然出現以下錯誤:
mmal: mmal_vc_port_enable: failed to enable port
vc.ril.image_encode:out:0(JPEG): ENOMEM
mmal: mmal_port_enable: failed to enable port
vc.ril.image_encode:out:0(JPEG)
(0xc8a100) (ENOMEM)
Traceback (most recent call last):
File "./Test_cam.py", line 300, in <module>
putfunc()
File "./Test_cam.py", line 169, in putfunc
oneshot(_client_id)
File "./Test_cam.py", line 137, in oneshot
_cam.capture(ifn, use_video_port=True,resize=(1920,1080),splitter_port=0)
File "/usr/lib/python2.7/dist-packages/picamera/camera.py", line 1418, in capture
encoder.start(output)
File "/usr/lib/python2.7/dist-packages/picamera/encoders.py", line 1126, in start
super(PiCookedOneImageEncoder, self).start(output)
File "/usr/lib/python2.7/dist-packages/picamera/encoders.py", line 377, in start
self.output_port.enable(self._callback)
File "/usr/lib/python2.7/dist-packages/picamera/mmalobj.py", line 1249, in enable
prefix="Unable to enable port %s" % self.name)
File "/usr/lib/python2.7/dist-packages/picamera/exc.py", line 184, in mmal_check
**raise PiCameraMMALError(status, prefix)**
**picamera.exc.PiCameraMMALError: Unable to enable port vc.ril.image_encode:out:0: Out of memory**
誰能幫我?
while (time.time() - start) < vterm:
_cam.annotate_text = id + "\n" + time.strftime('%Y-%m-%d %H:%M:%S')
nt = time.time()
if (nt - pt) > iterm:
ifn = tmpfname('jpg')
_cam.capture(ifn, use_video_port=True,resize=(1920,1080),splitter_port=0)
tmp2nofile(nt, _path['live'], ifn, 'jpg')
pt = nt
if _debug:
print 'image',ifn
time.sleep(0.1)
_cam.stop_recording(splitter_port=1)
tmp2nofile(start, _path['live'], vfn, 'h264')
_cam.stop_preview()
_cam.close()
有關:
錯誤消息“ _mmal:mmal_vc_port_enable:無法啟用port_”來自libmmal.so 。
確認您正在使用最新的 picamera module
和libmmal.so
。 由於picamera
使用libmmal.so
,因此您也正在使用兼容的版本。
更多信息網站:
picamera
:純Python相機界面 picamera
所以答案:如何更新libmmal.so
評論 :我不知道“內存”在“內存不足”中是什么意思
可能是跟進錯誤。
錯誤訊息 :
mmal:mmal_vc_port_enable:無法啟用端口
vc.ril.image_encode:out:0(JPEG):ENOMEM
端口一定有問題。
長時間運行還會導致緩沖區溢出 。
要驗證您的相機沒有損壞,請嘗試以下腳本:
from time import sleep
from picamera import PiCamera
camera = PiCamera()
camera.resolution = (1024, 768)
camera.start_preview()
# Camera warm-up time
sleep(2)
camera.capture('foo.jpg', resize=(320, 240))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.