Cómo mostrar imágenes adquiridas por la cámara en tiempo real en la ventana PB
Usar API para llamar al código fuente de la cámara
/Definir variables
uint lhand
/Definir constantes
largo WM_USER = 1024
largo WM_CAP_START= WM_USER
largo WM_ CAP_STOP = WM_CAP_START + 68
largo WM_CAP_DRIVER_CONNECT = WM_CAP_START + 10
largo WM_CAP_DRIVER_DISCONNECT = WM_CAP_START + 11
largo WM_CAP_SAVEDIB = WM_CAP_START + 25
largo WM_CAP_GRAB_FRAME = WM_CAP_START + 60
largo WM_CAP_SEQUENCE63
largo WM_CAP_SET_OVERLAY = WM _CAP_START+ 51
largo WM_CAP_SET_PREVIEW =WM_CAP_START+ 50
largo WM_CAP_SET_CALLBACK_VIDEOSTREAM
LARGO WM_CAP_SET_CALLBACK_VIDEOSTREAM =WM_CAP_START +6
LARGO WM_ CAP_SET_CALLBACK_ERR OR = WM_C AP_START +2
LARGO largo WM_CAP_SET_CALLBACK_STATUSA= WM_CAP_START +3
largo WM_CAP_SET_CALLBACK_FRAME= WM_ CAP_START +5
largo WM_CAP_SET_SCALE=WM_CAP_START+53
long WM_CAP_SET_PREVIEWRATE =WM_CAP_START+ 52
// Definir función api
ulong capCreateCaptureWindowA(string lpszWindowName,ulong dwStyle,long x,long y,long nWidth,long nHeight,ulong ParentWin,long nId )BIBLIOTECA 'AVICAP32.DLL'
//Código de inicialización
cadena lpszName
ulong l1
l1=handle(w_main)
lpszName='Interfaz de cámara...
lhand=capCreateCaptureWindowA(lpszName,262144+12582912+1073741824 + 268435456 ,0,0,200,200,l1,0)
si lhand <> 0 entonces
enviar(lhand, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 0)
enviar(lhand, WM_CAP_SET_CALLBACK_ERROR, 0, 0)
enviar( mano izquierda, WM_CAP_SET_ CALLBACK_STATUSA, 0, 0)
enviar(mano izquierda,
WM_CAP_DRIVER_CONNECT, 0, 0)
enviar(lado izquierdo,
enviar(lado izquierdo, WM_CAP_SET_SCALE, 1, 0)
enviar(lado izquierdo, WM_CAP_ SET_PREVIEWRATE, 66, 0)
enviar(lhand, WM_CAP_SET_OVERLAY, 1, 0)
enviar(lhand, WM_CAP_SET_PREVIEW, 1, 0)
finalizar si
//guardar en el archivo<
cadena s
s='c.SAVE:\save.avi'
si lhand<>0 entonces
Enviar(lhand,WM_CAP_FILE_SET_CAPTURE_FILEA, 0, s);
Enviar( lhand,WM_CAP_SEQUENCE, 0, 0) //comenzar a capturar
finalizar si
//dejar de guardar
enviar(lhand, WM_CAP_STOP, 0, 0)
/guardar como imagen
cadena s
s='c:\save.bmp'
si lhand <> 0 entonces
Enviar(lhand,WM_CAP_SAVEDIB,0,s);
end if
// Si no tienes una cámara web, puedes descargar el siguiente software que te permitirá tener una cámara web virtual