SoloCodigo
Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: MindEye en Martes 2 de Septiembre de 2003, 14:02
-
- Me gustaría que alguien me explicara por favor, como puedo capturar una imagen desde una webcam, para guardarla en el disco duro.
- Gracias amigos.
-
Declaraciones:
Const ws_visible = &H10000000
Const ws_child = &H40000000
Const WM_USER = 1024
Const WM_CAP_EDIT_COPY = WM_USER + 30
Const wm_cap_driver_connect = WM_USER + 10
Const wm_cap_set_preview = WM_USER + 50
Const wm_cap_set_overlay = WM_USER + 51
Const WM_CAP_SET_PREVIEWRATE = WM_USER + 52
Const WM_CAP_SEQUENCE = WM_USER + 62
Const WM_CAP_SINGLE_FRAME_OPEN = WM_USER + 70
Const WM_CAP_SINGLE_FRAME_CLOSE = WM_USER + 71
Const WM_CAP_SINGLE_FRAME = WM_USER + 72
Const DRV_USER = &H4000
Const DVM_DIALOG = DRV_USER + 100
Const PREVIEWRATE = 30
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lparam As Long) As Long
Private Declare Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal a As String, ByVal b As Long, ByVal c As Integer, ByVal d As Integer, ByVal e As Integer, ByVal f As Integer, ByVal g As Long, ByVal h As Integer) As Long
Dim hwndc As Long
Código que activa la captura de imágenes:(se supone un formulario con 2 picture llamados "picture1" y "picture2")
hwndc = capCreateCaptureWindow("Ventana de Captura", ws_child Or ws_visible, 0, 0, Picture2.Width, Picture2.Height, Picture2.hwnd, 0)
If (hwndc <> 0) Then
temp = SendMessage(hwndc, wm_cap_driver_connect, 0, 0)
temp = SendMessage(hwndc, wm_cap_set_preview, 1, 0)
temp = SendMessage(hwndc, WM_CAP_SET_PREVIEWRATE, PREVIEWRATE, 0)
End If
Código que realiza la captura de la imagen:
temp = SendMessage(hwndc, WM_CAP_EDIT_COPY, 1, 0)
Set Picture1.Picture = Clipboard.GetData
Espero que te sirva de ayuda.
Saludos,
Joaquín.
-
las camaras logitech quickam incluyen un sdk, con codigo en vba
-
- Muchisimas Gracias.
- Estoy realmente agradecido
-
Hola Chicos!! :hola: ..JJABIETAR..derrepente..no sabes como configurar la camara Web....así como tu la haces..(osea... que? constantes tengo que mandar a sendmessager y como?)...lo que quiero es cambiar la dimensión de la imagen que se presenta..y si es posible .. :unsure: ..Me podrías enseñar como capturo la imagen de la webcam para guardarla como JPG?.. :) ....De antemano...Muchas gracias.. :P ..Bye.. :hola: :comp:
-
Hola colegas, :kicking:
yo realice una aplicación en la que tenía que capturar imagenes con una webcam para luego procesarlas.La forma más sencilla sin duda es buscar un control OCX.Yo usé dos diferentes: "VideocapX" y "Videcap Control ActiveX"; en ambos con un par de lineas de código que podías encontrar en sus ayudas capturas la imagen y la guardas en el HD.El primero trabaja con imágenes en formato .jpg y el segundo con .bmp. A vuestro gusto, :comp:
saludos :hola:
-
:hola: ..sip..Gandalf_malaga7..pero date cuenta que ese componente caduca...(no lo puedes usar siempre).. :(
-
Yo tambien necesito esa misma informacion, y si dicen q esos componentes caducan, como lo podria resolver entonces???
-
Hola solcito!.. :hola: ...pues la solución a tu problema es utilizar las APis de Windows... :) ...mira este post...te ayudará un poco... ;) a mi me ayudo mucho...claro que tienes que probarlo , mejorarlo......etc...
Utilizando la camara Web... (http://foros.solocodigo.com/index.php?showtopic=9748&hl=)
Espero que te sirva...Bye :hola: ...Suerte.. :comp: :guitar: ...y nos cuentas como te fue.. :yes:
-
Gracias Eliza, lo voy a probar y despues te cuento :hola:
:comp:
-
se q es viejo el post pero no logro hacer que la imagen se guare que linea falta? no veo el savepicture por ningun lado