Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

la nueva WinTV no realiza bien la captura de video...

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: la nueva WinTV no realiza bien la captura de video... Responder citando

¡Hola a tod@s!

Tengo hecha una aplicación en la que, entre otras cosas, capturo imagen a través de una cámara. La captura la realizo con las "cap" de la API de Windows (capCreateCaptureWindow, ...). Mientras utilicé la winTV antigua (bt878) no tuve ningún problema. Pero al cambiar a la nueva winTV (bt88x) sigue capturando la imagen pero con unas rayas verticales que no dejan ver la imagen correctamente, como si ésta estuviera "entre rejas". Por mas vueltas que le doy no soluciono el problema y como Hauppage ha dejado de fabricar la winTV antigua, no tengo repuestos para futuras instalaciones, por lo que no me queda mas remedio que usar la nueva winTV.

¿Alguien tiene idea de cómo solucionar este problema?
A mi se me ocurrió usar el OCX que tienen desarrollado, pero es para VB o para VC++. He intentado pasar el de VC++ a Builder pero me da error.

En fin, que estoy desesperado y no se que hacer. Gracias por leer esta parrafada. Wink
Volver arriba
Mensaje    Asunto: captura de video Responder citando

Hola tecno, tengo que hacer un proyecto fin de carrera sobre reconocimiento de iris y tengo que capturar la imagen con una camara de video enchufada a una tarjeta de tv (AVerMedia CApture). He estado buscando cosas pero no he conseguido nada. Hay una control Activex, el XVideo pero no lo he encontrado, prueba con este enlace que a mi no me funciona a ver si tienes suerte, coneste control no se necesitan Apis.http://www.lacompu.com/desarrollo/download/libreria/librarycompon/xvideo.php3.
Y no sabes cuanto te agradeceria que me mandases el codigo de tu programa que captura la imagen. Te lo pido por favor que llevo 2 meses y no he conseguido nada. Gracias de ante mano. Laughing
Volver arriba
Mensaje    Asunto: captura de video Responder citando

Hola tecno, tengo que hacer un proyecto fin de carrera sobre reconocimiento de iris y tengo que capturar la imagen con una camara de video enchufada a una tarjeta de tv (AVerMedia CApture). He estado buscando cosas pero no he conseguido nada. Hay una control Activex, el XVideo pero no lo he encontrado, prueba con este enlace que a mi no me funciona a ver si tienes suerte, coneste control no se necesitan Apis.http://www.lacompu.com/desarrollo/download/libreria/librarycompon/xvideo.php3.
Y no sabes cuanto te agradeceria que me mandases el codigo de tu programa que captura la imagen. Te lo pido por favor que llevo 2 meses y no he conseguido nada. Gracias de ante mano. Laughing
Enviamelo a esta direccion por favor tonyjerry@hotmail.com
Volver arriba
Mensaje    Asunto: Responder citando

Hola Tony:

Existen unas Apis llamadas cap........ que controlan todo el tema
del Video en Windows.

Busca en

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/avifile_8dgz.asp

he incluso te viene pequeños ejemplos, de como usar esas Apis.
_________________
Saludos
~~~~~~~~
Wink _Willa
~~~~~~~~
www.avancegame.com
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Mensaje    Asunto: Responder citando

¡Hola Tony!

Básicamente, hay que hacer los siguientes pasos:

- Crear una ventana donde visualizar lo que queremos capturar:
hwndFoto = capCreateCaptureWindow("wFoto", WS_CHILD | WS_VISIBLE, 5, 5, pnlFoto->Width - 10, pnlFoto->Height - 10, pnlFoto->Handle, idFoto);

- Conectar la ventana con el driver:
SendMessage(hwndFoto, WM_CAP_DRIVER_CONNECT, (WPARAM) 0, 0);

- Poner overlay a TRUE:
SendMessage(hwndFoto, WM_CAP_SET_OVERLAY, (WPARAM) (BOOL) 1, 0L);


Luego, para realizar la captura, tienes varias formas. Hay una función que captura la imagen y la guarda en el portapapeles:
SendMessage(hwndFoto, WM_CAP_EDIT_COPY, 0, 0);

Tambien puedes guardarlo en un fichero temporal (de uso interno por parte de la API) y luego llevarlo a un fichero que te interese:
SendMessage(hwndFoto, WM_CAP_GRAB_FRAME, (WPARAM) 0, (LPARAM) 0L);
SendMessage(hwndFoto, WM_CAP_FILE_SAVEDIB, (WPARAM) 0, (LPARAM) (LPVOID) (LPSTR) "Fotos\\Fichero.bmp");


Para cada "SendMessage" que he usado hay una macro definida por Windows, mas fácil de usar, pero que hace lo mismo.


Este es el funcionamiento básico, pero hay muchas posibilidades. Te sugiero que visites el enlace indicado por _Willa, donde encontrarás una explicación mas detallada del uso del video mediante la API de Windows (eso si, en Ingles claro).

Espero que te sirva lo escrito. Salu2. Wink
Volver arriba
Mensaje    Asunto: caprura de video Responder citando

Bueno acabo de leer vuestras respuestas y me he quedao un poco a cuadros ya que nunca he programado estas cosas, pero intentare descifrar e enigma. Ahora mismo me pondre manos a la obra. Muchas gracias _willa y Tecno. Ya os contare como va el proceso de decodificación..jejeje. UN SALUDO.
Volver arriba
Mensaje    Asunto: Puedes encontrar ayuda en... Responder citando

Hola,

Tecno, a cual ocx para visual basic te refieres(sera el VideoCapX???), cualquiera que sea lo podes utilizar en C++ Builder facilmemte, cuentame haber si te puedo hechar una mano. Tu problema podria ser los drivers de tu tarjeta, algo debe estar mal confugurado, asegurate de tener los WDM instalados adecuadamente....

Tony, lo que necesitas para hacer una aplicacion de captura lo podes encontrar aqui:
[url]
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/avicap_4gh1.asp
[/url]

y si quieres un ejemplo que funciona perfectamente en Builder mira esto:

[url]
https://cppbuilder.es/viewtopic.php?t=955&highlight=captura+de+video
[/url]

Y no te desesperes hombre...
Espero haberte ayudado, cualquier cosa escribe nuevamnente.....


Saludos.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

¡Hola JhonAlba!

Gracias por tu aportación. Lo del OCX de VB, me refiero al que viene con la WinTV cuando la compras. Además de ese, tambien te viene como ejemplo uno para VC++, ambos con el código fuente. El problema es que no consigo pasar el de VC++ a Builder, por lo que no puedo usarlo (que sería lo mas cómodo).
De todas formas da igual, ya que he "resuelto el problema". Lo entrecomillo porque no se cómo explicarlo (en sentido literal). He descubierto que ajustando los valores de la estructura BITMAPINFO y modificando posteriormente los valores Width y Height para volver a establecerlos (mediante la función capSetVideoFormat) se arregla el problema, pero no se dar la explicación teórica que justifica hacer eso.
El caso es que si establezco dos veces seguidas los valores de BITMAPINFO variando solamente el Width y el Height, la cosa funciona.
Seguiré investigando y si descubro la lógica de todo esto la "colgaré" por aquí.

Bueno, salu2 a tod@s y gracias. Wink
Volver arriba
Mensaje    Asunto: captura de video Responder citando

Muchas gracias a todos los que estan arriba de esta respuesta¡¡ No sabeis cuanto os lo agradezco. Muchas gracias Tecno, JhonAlba,_Willa.
Ya me funciona¡¡ Dos meses indagando y me habeis solucionado el problema en 2 dias. Os prometo que aparecereis en las referencias de mi proyecto, jejeje. Bueno ya se a donde tengo que preguntar cuando tenga otra duda. ¡Este foro es la caña¡
Bueno chicos gracias otra vez y hasta otra dudita...
Volver arriba
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.