c++ c linux v4l2 v4l

c++ - v4l2 ejemplo muy simple



linux (3)

En la especificación de la API, hay un example , también descargable como un archivo C

Estoy buscando un ejemplo simple para el acceso a la cámara en Linux usando V4L2. ¿Donde puedo encontrarlo? Lo más sencillo posible.

Gracias,


Pruebe el código uvccapture aquí -> http://staticwave.ca/source/uvccapture/ Es un ejemplo muy pequeño pero muy concreto que hace uso de todos los conceptos de V4l2 (abrir, configurar formato, asignar memoria, Request Buffer, Dqbuffer and Query -buffer - todos los intems de ioclts).

La función uvcgrab () es la que hay que buscar y que utiliza Dqbuffer y Query-buffer.

ioctl (vd->fd, VIDIOC_DQBUF, &vd->buf); ioctl (vd->fd, VIDIOC_QBUF, &vd->buf)

Mientras lo estudia, puede seguir buscando la definición de ioctl en este link lo que facilitará su comprensión.


Yo también aconsejaría probar v4l-utils.

http://linuxtv.org/downloads/v4l-utils/

Tiene algunas llamadas de API fáciles de usar a dispositivos v4l y hay un ejemplo basado en qt en la fuente para crear una interfaz personalizada para dispositivos de video.