Hello,
I use a Jetson TX2 developer kit and the camera OV5693 with OpenCV to do some image processing but I encounter some issue.
Here is what I do:
I have a simple python code in which I use a cv2.VideoCapture object with a gstreamer pipeline. Here is a simplify version:
GST_STR = 'nvcamerasrc sensor-id=0 ! '
'video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, '
'format=(string)I420, framerate=(fraction)120/1 ! '
'nvvidconv ! '
'video/x-raw, format=(string)BGRx ! '
'videoconvert !'
'appsink sync=0'
video_capture.open(GST_STR, cv2.CAP_GSTREAMER)
while True:
is_image, image_array = video_capture.read()
#do stuff...
time.sleep(0.0250)
The issue:
After a while (sometime after an hour, but it can be less or more) the call to video_capture.read() block and never return. I try to figure what is the root cause be cannot find anything.
I have observed a suspicious line in dmesg which published by nvcamera-daemon:
(“complete” dmesg : https://pastebin.com/5wvMixp9)
Feb 21 15:41:05 tegra-ubuntu nvcamera-daemon[20059]: nvcamera-daemon started new client thread = 548029825504
[...]
Feb 21 15:41:23 tegra-ubuntu nvcamera-daemon[20059]: (548029825504) Error in calling capture= 2047 result= 8
Feb 21 15:41:23 tegra-ubuntu nvcamera-daemon[20059]: message repeated 6 times: [(548029825504) Error in calling capture= 2047 result= 8]
Is there any documentation for this error code? I cannot figure if the issue come from the gstreamer pipeline, the driver, or the camera itself and was not able to find any similar problem on this forum. So I am kind of lost =/…
If need, I add here few details:
- gstreamer v1.14.4
- opencv v3.4.1-dev
And few more logs/outputs from other runs when the issue occurred if needed:
- systemctl status nvcamera-daemon.service: https://pastebin.com/YRRExtDu
- v4l2 --all: https://pastebin.com/d5ZJ93xy