Power Builder - Tomar foto de la webcam

 
Vista:
Imágen de perfil de antonio
Val: 176
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por antonio (1271 intervenciones) el 25/05/2019 03:44:23
Un saludo a todos...

Resulta que encontre un programa que maneja este OCX videocap.ocx pero es de paga, lo importante es ¿Alguien lo ha usado y que me pueda dar tipo como activar la cámara y tomar la foto?

Ya que ese OCX se puede incrustar en una ventana pero no encuentro manuales o referencias de como activar la camara y como tomar la foto y guardarla en un directorio específico.

El software se llama VideoCap Pro ActiveX Control

Agradezco cualquier ayuda que me brinden.

Gracias,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Leonardo Daniel A.
Val: 821
Oro
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por Leonardo Daniel A. (481 intervenciones) el 25/05/2019 06:43:13
Hola andube buscando pero no encontre nada.. solo hay ejemplos de una libreria EZTWAIN y otro ejemplo que me encontre usando la API de windows.. me marca error al intentar capturar la imagen... no se si sea porque mi sistema operativo es de 64 bits

te dejo el ejemplo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de antonio
Val: 176
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por antonio (1271 intervenciones) el 25/05/2019 18:30:00
Mil gracias por tu apoyo Leonardo...

No pude probar tu codigo porque al abrirlo en PB 11.5 y PB 12.5 se cierra como si estuviese corrompido el código.

Pero encontre una solución de paga y probándolo lo recomiendo al 100% tiene muchas funcionalidades, fácil de implementar y muy pero muy práctico

El software se llama "VideoCap Pro ActiveX Control"

Lo recomiendo mucho

Nuevamente gracias Leonardo.

Saludos desde México
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Tomar foto de la webcam

Publicado por Douglas (1 intervención) el 18/07/2023 19:15:50
Conseguiram isso no Powerbuilder 2022?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Adolfo
Val: 250
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por Adolfo (260 intervenciones) el 28/05/2019 00:38:20
Yo tengo la version 11.5 y funciona muy bien, es licencia pagada y no es cara el sitio web donde lo puedes comprar es:

http://www.viscomsoft.com/products/videocappro

Puedes conectarte a CamarasIP, WebCams y Videoservidores (equipos que digitalizan las camaras análogas). Tiene detección de movimiento , detección de cara, descifrado de placas de vehiculo estas últimas 3 caracteristicas llevan costo extra.

Te anexo el código que utilizó para conectarme y para tomar una foto:
1
2
3
4
5
6
7
8
9
10
11
ole_1.object.LicenseKey = "***"
 
ole_1.object.SyncMode				= 0
ole_1.object.EffectType				= -1
ole_1.object.AspectRatio 			= False
ole_1.object.CaptureMode 			= False
ole_1.object.PreviewCaptureAudio = False
li_i = ole_1.object.StartIPCamera("rtsp://"+sle_moxach1.text+"/udpstream_ch1_stream1_h264",sle_user.text,sle_pass.text)
 
//Para tomar una foto
ole_1.object.SnapShotJPEG("C:\Temp\photo.jpg",90)

Ahora bien para poder distribuir este componente necesitas los siguientes componentes:
1
2
3
4
5
6
7
8
9
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\gdiplus.dll";          DestDir: "{app}";   Flags: ignoreversion
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\avformat-56.dll";      DestDir: "{app}";   Flags: ignoreversion
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\avcodec-56.dll";       DestDir: "{app}";   Flags: ignoreversion
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\avutil-54.dll";        DestDir: "{app}";   Flags: ignoreversion
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\swresample-1.dll";     DestDir: "{app}";   Flags: ignoreversion
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\swscale-3.dll";        DestDir: "{app}";   Flags: ignoreversion
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\viscomtran.dll";       DestDir: "{app}";   Flags: overwritereadonly regserver sharedfile
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\videocap.ocx";         DestDir: "{app}";   Flags: overwritereadonly regserver sharedfile
Source: "C:\Program Files (x86)\VideoCap Pro ActiveX Control\viscomipsource.dll";   DestDir: "{app}";   Flags: overwritereadonly regserver sharedfile

camaraweb
videoservidor

Saludos de Torreón, Coahuila, Mexico.
Si necesitas mas información mi correo es: [email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de antonio
Val: 176
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por antonio (1271 intervenciones) el 02/06/2019 04:55:16
Gracias Adolfo:

Estaremos en contacto ya que he ido varias veces a torreon...


Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Adolfo
Val: 250
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por Adolfo (260 intervenciones) el 03/06/2019 15:33:23
Claro, aqui te espero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 4
Ha disminuido su posición en 3 puestos en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por Joaquín (4 intervenciones) el 21/09/2019 02:46:04
Adolfo buenas tardes, te saludo desde el Estado de México.

Yo estuve trabajando por muchos años con el OCX ezvidc60, no sé si tú lo conozcas ?, el chiste es que el aplicativo(con PowerBuilder 11.5) ahora corre en un Windows 10 y con una WebCam Logitec c170 y dicho OCX ya no visualiza lo que se ve en la cámara, si toma la foto y se genera el archivo de la imagen capturada , pero el objeto para ver lo que la cámara está enfocando ya no.

Revisando aquí en este foro veo que recomiendas un OCX, supongo que la versión a comprar es la versión "Single Developer license" por un precio de 199 Euros?


Gracias & Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Tomar foto de la webcam

Publicado por Rodolfo (1 intervención) el 14/10/2019 18:42:47
Adolfo descargue el VideoCap Pro SDK ActiveX 12.0 y lo instale porque uso w10 y el ocx que consegui no se puede registrar, bien me gustaria saber como elegir el origen de la camara es decir si es la camara de la laptop o es una camara web usb o si es una camara ip, cuales serian las funciones para poder hacer eso. Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Adolfo
Val: 250
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por Adolfo (260 intervenciones) el 14/10/2019 21:24:03
Para conectarte a una camara WEB del equipo es necesario que corras una rutina que obtiene la lista de cámaras Web instaladas en la PC y otra rutina para recuperar las resoluciones disponibles:

Este es código para recuperar la lista de cámaras WEB:
1
2
3
4
5
6
ole_1.object.LicenseKey = "***"
li_j = ole_1.object.GetDeviceCount() - 1
for li_i = 0 to li_j
	ddlb_camaraweb.additem(ole_1.object.GetDeviceName(li_i))
next
if ddlb_camaraweb.totalitems() > 0 then ddlb_camaraweb.text = ddlb_camaraweb.text(1)
Y esta es la rutina para recuperar sus resoluciones:
1
2
3
4
5
6
ole_1.object.LicenseKey = "***"
li_j = ole_1.object.GetVideoFormatCount() - 1
for li_i = 0 to li_j
	ddlb_resolucion.additem(ole_1.object.GetVideoFormatName(li_i))
next
if ddlb_resolucion.totalitems() > 0 then ddlb_resolucion.text = ddlb_resolucion.text(1)
La numeración de las cámaras web inicia en 0, sin embargo la numeración del componente ddlb inicia en 1, por eso cuando yo grabo que camara web se quiere utilizar en un proceso yo guardo el indice - 1:
1
2
li_camweb = ddlb_camaraweb.finditem(ddlb_camaraweb.text,0) - 1
li_res    = ddlb_resolucion.finditem(ddlb_resolucion.text,0) - 1

Que posteriormente utilizó el momento de conectarse a esa camaraweb en específico:
1
2
3
4
5
ole_1.object.LicenseKey       = "***"
ole_1.object.Stop()
ole_1.object.ShowPreview      = False
ole_1.object.Device           = li_camweb
ole_1.object.VideoFormat      = li_res

Para conectarse a una camara IP el código es:
1
2
3
4
5
6
7
ole_1.object.LicenseKey          = "***"
ole_1.object.SyncMode            = 0
ole_1.object.EffectType          = -1
ole_1.object.AspectRatio         = False
ole_1.object.CaptureMode         = False
ole_1.object.PreviewCaptureAudio = False
li_i = ole_1.object.StartIPCamera(sle_dirip1.text,sle_user1.text,sle_pass1.text)
La variable sle_dirip1.text es la URL de la camara IP esta la debe proporcionar el fabricante en sus especificaciones tecnicas.

Para tomar una imagen de la camara ya sea IP o web utilizo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Integer li_archivo
Blob lb_imagen
 
FileDelete("C:\Fotos\FotoCredencial.jpg")
if ole_1.object.SnapShotJPEG("C:\Fotos\FotoCredencial.jpg",90) then
	li_archivo = FileOpen("C:\Fotos\FotoCredencial.jpg", StreamMode!)
	if li_archivo > 0 then
		FileReadEx(li_archivo,lb_imagen)
		FileClose(li_archivo)
	end if
else
	lb_imagen = ib_imgerror
end if
 
UPDATEBLOB Registro SET Reg_Foto = :lb_imagen WHERE Reg_ID = :ii_clave;
Para grabar video
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
if ib_camaraweb then
	ole_1.object.Stop()
else
	ole_1.object.StopIPCamera()
end if
 
ole_1.object.AspectRatio 	     = False
ole_1.object.FrameRate		     = 15
ole_1.object.WMVProfile 	     = 2
ole_1.object.CaptureFileName    = is_archvideo
ole_1.object.OutputWMV 		     = True
ole_1.object.CaptureMode 	     = True
ole_1.object.UseVideoCompressor = True
ole_1.object.VideoCompressor    = ii_compressor
 
if ib_camaraweb then
	ole_1.object.Device      = ii_camweb
	ole_1.object.ShowPreview = True
	ole_1.object.Start()
else
	ole_1.object.StartIPCamera(is_dir,is_user,is_pass)
end if
Para detener la grabación de video:

1
2
3
4
5
if ib_camaraweb then
	ole_1.object.Stop()
else
	ole_1.object.StopIPCamera()
end if

La variable ii_compressor es el numero del compressor que se utilizará para grabar video, si no utilzamos compressor los archivos resultantes serán muy grandes. Para obtener la lista de video compresores utilizo.

1
2
3
4
5
6
7
ole_1.object.LicenseKey = "***"
li_j = ole_1.object.GetVideoCompressorCount() - 1
for li_i = 0 to li_j
	ddlb_compressor.additem(ole_1.object.GetVideoCompressorName(li_i))
next
 
if ddlb_compressor.totalitems() > 0 then ddlb_compressor.text = ddlb_compressor.text(1)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2
Ha disminuido su posición en 8 puestos en Power Builder (en relación al último mes)
Gráfica de Power Builder

Tomar foto de la webcam

Publicado por Christian (1 intervención) el 12/11/2019 19:39:37
Yo te recomiendo al 100 que compres la versión paga de VideoCap Pro SDK ActiveX si te interesa hacer las capturas de webcam porque te permite hacerlo desde el formato que sea, desde la tarjeta, de sintonizador de TV, cámara de DVD, reproductor de DVD a AVI o WMV 9, formato de archivo WMV8. Y pues no solo eso, sino que a diferencia de muchos este sí te permite rotar, invertir el video, dibujar imágenes múltiples y textos en video al mismo tiempo. Te da la vista previa de secuencia de video e instantánea de la cámara IP y captura la transmisión de video de la cámara IP al archivo AVI (sin comprimir o comprimido usando cualquier códec disponible). A mí me ha funcionado de maravilla desde mi laptop.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar