Info
La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.
Problem using dc1394 driver in MEX function to read IEEE1394 camera
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
I'm using MEX functions to exploit my own library (MRPT) for Computer Vision, working in Linux (Xubuntu 14.04). Among other functionalities my library reads a generic IEEE1394 camera through the dc1394 driver. When used independently of Matlab and MEX function, everything works fine. However, I found out that when calling the dc1394 library something fails with the Ring Buffer of frames. The reconstruction of the problem or bug is:
1. I call the camera setup method, with a Ring Buffer Size of N (say 15).
2. I call dequeue and enqueue methods to get each frame, and I get the images correctly. The acquired frames id in the Ring Buffer increases with each call as expected, from 0.
3. When the frame id completes a Ring cycle, going back to first (0, after N captures), the driver keeps waiting a new image arrival, but nothing ever happens.
It seems to me as if the frames in the Ring Buffer are not being set to ENQUEUED state after the enqueue method, but I have checked the error variable returned by all methods and no error is detected. More info on how the process works can be found in http://damien.douxchamps.net/ieee1394/libdc1394/faq/#How_does_the_DMA_ring_buffer_work.
Since I'm using Linux, the driver implementation which is being used (as I saw through debugging) is that called Juju.
I would highly appreciate if anyone could suggest some idea on how to approach this issue. The only thing I see is that everything seems to work correctly except for the very low level of Ring Buffer management which I think is done through Juju and/or Video1394, and that this only fails when I introduce the use of MEX (in fact, I'm using the wrapper MexPlus).
0 comentarios
Respuestas (0)
La pregunta está cerrada.
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!