Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-02-2009
ronald_tro ronald_tro is offline
Miembro
 
Registrado: feb 2009
Posts: 53
Poder: 16
ronald_tro Va por buen camino
Webcam capturar imagen y adaptada

Hola amigos de nuevo, estoy haciendo una aplicacion de poder ver mi webcam por medio de una image1, el codigo que tengo es este:
Boton de inicio:
begin
Ventana := capCreateCaptureWindowA('Ventana de captura',
WS_CHILD OR WS_VISIBLE, image1.Left, image1.Top, image1.Width,
image1.Height, form1.Handle, 0);
IF Ventana <> 0 THEN
BEGIN
TRY
SendMessage(Ventana, WM_CAP_DRIVER_CONNECT, 0, 0);
SendMessage(Ventana, WM_CAP_SET_PREVIEWRATE, 40, 0);
SendMessage(Ventana, WM_CAP_SET_PREVIEW, 1, 0);
EXCEPT
RAISE;
END;
END
ELSE
BEGIN
MessageDlg('Error al conectar Webcam', mtError, [mbok], 0);
END;
end;

Boton detener:
IF Ventana <> 0 THEN
BEGIN
SendMessage(Ventana, WM_CAP_DRIVER_DISCONNECT, 0, 0);
Ventana := 0;
END;

Y el problema que tengo es que tengo que agrandar la herramienta Image1 para poder ver todo lo de la webcam, mi pregunta es, habra alguna forma de poder ver toda la webcam del tamaño que tenga la herramienta image1?

Y otra duda amigos, tengo el boton de capturar una imagen en la misma aplicacion :
  1. BEGIN
  2. IF Ventana <> 0 THEN </SPAN>
  3. BEGIN
  4. Guardar.FileName := 'Captura de la imagen'; </SPAN>
  5. Guardar.DefaultExt := 'bmp'; </SPAN>
  6. Guardar.Filter := 'Fichero Bitmap (*.bmp)*.bmp'; </SPAN>
  7. IF Guardar.Execute THEN </SPAN>
  8. SendMessage(Ventana, WM_CAP_SAVEDIB, 0, </SPAN>
  9. longint(pchar(Guardar.FileName))); </SPAN>
  10. END;
Y cuando lo ejecuto me marca error en guardar, no se a que se refiere, ese codigo me lo pasaron, y si en vez de que salga el mensaje de guardar la imagen la guarde automaticamente en el folder donde tengo la aplicacoin, mil gracias por su ayuda y espero no molestarlos, un abrazo amigos.
Responder Con Cita
  #2  
Antiguo 15-02-2009
ronald_tro ronald_tro is offline
Miembro
 
Registrado: feb 2009
Posts: 53
Poder: 16
ronald_tro Va por buen camino
o amigos sera que asi dá por default el tamañ de la webcam,
Ventana := capCreateCaptureWindowA('Ventana de captura',

o quizas sera que tengo webcam integrada a mi notebook? bueno espero alguna respuesta de ustedes amigos y que me recomiendan hacer, bye.
Responder Con Cita
  #3  
Antiguo 17-01-2010
CCCP CCCP is offline
Miembro
 
Registrado: dic 2004
Ubicación: Barcelona
Posts: 38
Poder: 0
CCCP Va por buen camino
Existe un autosize
Responder Con Cita
  #4  
Antiguo 11-12-2010
MaxiDucoli MaxiDucoli is offline
Miembro
 
Registrado: feb 2006
Posts: 134
Poder: 19
MaxiDucoli Va por buen camino
asi guardas la imagen

procedure TFrmVidCp.FrmVidCpBtn3Click(Sender: TObject);
var
b : TBitmap;
begin
IF Ventana <> 0 THEN
BEGIN
b := TBitmap.Create;
Guardar.FileName := 'Captura de la imagen';
Guardar.DefaultExt := 'bmp';
Guardar.Filter := 'Fichero Bitmap (*.bmp)*.bmp';
IF Guardar.Execute THEN
SendMessage(Ventana, WM_CAP_EDIT_COPY, 0,0);
b.LoadFromClipboardFormat (cf_BitMap, ClipBoard.GetAsHandle(cf_Bitmap), 0);
b.SaveToFile(Guardar.FileName );
b.Free;
END;
end;
Responder Con Cita
  #5  
Antiguo 14-02-2011
Avatar de KingOfDragons
KingOfDragons KingOfDragons is offline
Miembro
 
Registrado: abr 2008
Ubicación: culiacan, sinaloa
Posts: 72
Poder: 17
KingOfDragons Va por buen camino
Cita:
Empezado por ronald_tro Ver Mensaje
Hola amigos de nuevo, estoy haciendo una aplicacion de poder ver mi webcam por medio de una image1, el codigo que tengo es este:
Boton de inicio:
begin
Ventana := capCreateCaptureWindowA('Ventana de captura',
WS_CHILD OR WS_VISIBLE, image1.Left, image1.Top, image1.Width,
image1.Height, form1.Handle, 0);
IF Ventana <> 0 THEN
BEGIN
TRY
SendMessage(Ventana, WM_CAP_DRIVER_CONNECT, 0, 0);
SendMessage(Ventana, WM_CAP_SET_PREVIEWRATE, 40, 0);
SendMessage(Ventana, WM_CAP_SET_PREVIEW, 1, 0);
EXCEPT
RAISE;
END;
END
ELSE
BEGIN
MessageDlg('Error al conectar Webcam', mtError, [mbok], 0);
END;
end;
Despues de conectar el driver pones este mensaje

Código Delphi [-]
SendMessage (Ventana, WM_CAP_SET_SCALE, 1, 0);

y agregas esta constante

Código Delphi [-]
Const WM_CAP_SET_SCALE = WM_CAP_START + 53;

esto va a hacer que se ajuste al tamaño que le definiste a Ventana
Responder Con Cita
  #6  
Antiguo 14-02-2011
Avatar de KingOfDragons
KingOfDragons KingOfDragons is offline
Miembro
 
Registrado: abr 2008
Ubicación: culiacan, sinaloa
Posts: 72
Poder: 17
KingOfDragons Va por buen camino
y Bueno ya que estamos con este tema me podrian ayudar ya que la solucion que dan no funciona me marca error quiero guardarlo en un archivo ya sea bmp o el formato que sea pero tambien quiero cambiar o definir su tamaño con el comando que dice el compañero al principio si funciona pero solo me deja el archivo con la primera letra de toda la cadena y sin formato que puedo hacer??
Responder Con Cita
  #7  
Antiguo 21-06-2012
Avatar de arrakshe
arrakshe arrakshe is offline
Registrado
NULL
 
Registrado: may 2012
Posts: 7
Poder: 0
arrakshe Va por buen camino
Tengo el mismo codigo con un problema diferente...

Tengo el mismo codigo pero el detalle esque el image1 me sale en negro cuando se prende la camara y la camara si sirve porque la he probado con otros programas y funciona perfectamente, no se si alguno tendra una minima idea del porque todo sale en negro, porque yo estoy perdido... Ademas como dato curioso un compañero implemento un codigo similar que si le esta funcionando sin embargo cuando lo coloque en mi programa no funciono y tenemos el mismo estilo de camara....
Responder Con Cita
  #8  
Antiguo 21-06-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.037
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por arrakshe Ver Mensaje
un compañero implemento un codigo similar que si le esta funcionando sin embargo cuando lo coloque en mi programa no funciono y tenemos el mismo estilo de camara....
Si la cámara es igual y el programa es distinto, y funciona en un programa sí y en el otro no, entonces es que hay un programa mal.
Responder Con Cita
  #9  
Antiguo 21-06-2012
Avatar de arrakshe
arrakshe arrakshe is offline
Registrado
NULL
 
Registrado: may 2012
Posts: 7
Poder: 0
arrakshe Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Si la cámara es igual y el programa es distinto, y funciona en un programa sí y en el otro no, entonces es que hay un programa mal.
De hecho es el mismo codigo, pero ya arregle el problema, es algo con los drivers de la camara porque si la apago y vuelvo a encender con el programa a la segunda encendida si funciona como debe ser, muchas gracias por tomarte el tiempo en responder.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Capturar Fotografia desde Webcam ? martita Gráficos 11 13-12-2012 18:24:04
Capturar imagen webcam fmtidona Gráficos 4 25-11-2005 18:04:31
Capturar imagen de webcam en Monocromo fmtidona Gráficos 1 15-09-2005 22:18:49
Capturar imagen desde webcam wogshit Gráficos 1 03-06-2004 10:14:50
Capturar video desde webcam... kolokol Internet 3 14-02-2004 10:14:57


La franja horaria es GMT +2. Ahora son las 06:52:16.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi