Página 1 de 1

WebCam con AviCap32.DLL

Publicado: Vie Oct 13, 2023 6:07 am
por RFlores
Hola a todos:

Estoy desempolvandome en la programacion avanzada con Xailer y estoy haciendo una pequeña interfaz para manipular la cámara web del ordenador para tomar fotos.

Para esto, estoy basándome en la DLL del API de Windows: AviCap32.dll, que se supone provee una manera "rápida y fácil" de conectar con dispositivos de captura de video y seguramente así es, porque la DLL solo trae 2 funciones principales, y el resto de la funcionalidad de obtiene usando SendMessage().

Documentación de AviCap32.dll está disponible en: https://learn.microsoft.com/en-us/windo ... urewindowa

Después de investigar un rato ejemplos en VB6, incluso en FW, llegué a un video en Delphi, el cual decidí seguir para hacer mi implementación en xailer: https://www.youtube.com/watch?v=Fl-5ImV_PE4&t=1366s

Básicamente todos los ejemplos hacen lo mismo:

1) Crean una clase para manipular la webcam, y desde esta clase hacen llamadas a las funciones de AviCap32.dll
2) Crean un formulario con 4 controles: un "contenedor" para el objeto WebCam, en VB utilizan una imagen, en Delphi un Panel, en FW lo pintan directo sobre el dialogo y yo decidí utilizar un BEVEL para contener la captura de la WebCam. Los otros 3 controles son botones para conectar con la cámara, desconectarla y obtener el "frame" de la imagen, o sea, sacar una foto.
3) En todos los lenguajes observé que toda "la magia" ocurre en los eventos ON INITIALIZE de los formularios, donde se crea el objeto WebCam, y este objeto debe utiliar el handle del contenedor para llamar a la función capCreateCaptureWindowA() del AviCap32.DLL que se supone que es la ventana de la cámara web, misma que "apoderara" del control contenedor y lo utilizara para desplegar las imágenes de la webcam.

Y hasta aquí es donde llego, supongo que algo estoy haciendo mal con los Handles de los controles, que mi formulario se despliega correctamente, se pintan los 3 botones pero cuando llega el momento de pintar el BEVEL contenedor, aparece un bonito GPF y el programa aborta.

El proyecto lo pueden descargar de: https://www.virtual-pac.net/XaWebCam.zip, por si alguien quiere echarle un vistazo a ver en donde me estoy equivocando (esto seguro que el bosque no me deja ver los arboles), supongo que varios agradeceremos tener una herramienta para capturar imágenes de una cámara web, ya después si alguno con mas paciencia que yo lo quiere convertir en control nativo para Xailer, pues bienvenido.

Saludos y nos vemos en Noviembre ¿ no ?

Rene Flores

Re: WebCam con AviCap32.DLL

Publicado: Dom Oct 15, 2023 10:03 pm
por xhermita
Hora Rene;

En este hilo publico Bingen los que hemos estado usando desde hace unos años, incluso la hemos utilizado con cámaras IP con una utilidad que las instalaba como webcam.

viewtopic.php?p=54768&hilit=webcam#p54768

Se que con algunas cámaras, sobre todo las integradas en alguno portátiles no funcionaba bien. Se conecta pero no captura la imagen.
Recuerdo que hace unos años conseguimos una utilidad por linea de comandos que la desbloqueaba, pero no doy con ella.

Saludos.

Pd: En Noviembre nos vemos ;)

Re: WebCam con AviCap32.DLL

Publicado: Mar Oct 17, 2023 9:54 am
por buzonjmartial
Buenos días,

escuché algo de una reunión esperando a poner fechas, pero no he visto nada organizado ni publicado para plantear fecha y alojamiento.

¿Alguien sabe donde está esa información?