Pregunta

He encontrado un ejemplo para acceder a una cámara web en C #. El ejemplo utiliza la biblioteca DirectShow.NET . He tratado de entender el código, pero hasta ahora lo único que pude entender es que de alguna manera el control de usuario llama directamente a la forma de dibujar directamente a la superficie del control del usuario.

Quiero acceder a cada marco y ponerlo en un objeto de mapa de bits. ¿Cómo puedo saber cuándo llegó un nuevo marco? ¿Cómo puedo capturar este nuevo marco en un objeto de mapa de bits?

Esto podría ser simple de responder si conoce bien DirectShow.NET.

¿Fue útil?

Solución

Deberá usar el ISampleGrabber interfaz hay muchos ejemplos de c ++ en la red sobre cómo usarlo, le dará datos en formato sin procesar RGB que puede alimentar a la clase de mapa de bits.

También hay una biblioteca de código abierto llamada Touchless tiene un proyecto en código que requiere una web cam y devolverle la llamada cada vez que llega un nuevo marco.

Otros consejos

Asegúrese de leer este artículo: http: // www.codeproject.com/Articles/125478/Versatile-WebCam-C-library ; se basa en el componente de captura de Touchless WebCam (pero sin otras partes de Touchless SDK).

Si considera que Touchless es útil, pero desea utilizar el SDK de DirectX más reciente, intente obtener la última fuente después del cambio 31008 en http://touchless.codeplex.com/SourceControl/ListDownloadableCommits.aspx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top