![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Capturar Pantalla = Pantalla negra
Hola a todos, tengo una aplicación en la que en un cuadro del formulario, se reproduce un video usando los componentes DSPack.
Cuando intento hacer una captura de pantalla de esta aplicación mediante código, obtengo una imagen perfecta, salvo el recuadro donde se reproduce el vídeo, que aparece en negro debido al overlay del mismo (DirectX). Tengo componentes del propio DSPack para capturar imagenes de un vídeo, pero claro, en ese caso sólo me captura la imagen del vídeo en sí, no del formulario completo. A ver si alguno conoce un método para hacer una captura completa de la pantalla que funcione con vídeos. Muchas gracias |
#2
|
||||
|
||||
Imagino que con video no te refieres a video juego.
Abrelo con VirtualDub y presiona la tecla print o impr pant. Luego vas a tu editor de imagenes favorito (mspaint por ejemplo) y pegas. Tambien puedes usar HyperSnap-DX Última edición por MAXIUM fecha: 27-03-2008 a las 14:49:31. |
#3
|
||||
|
||||
Gracias por responder, aunque si relees mi post, te darás cuenta, de que lo que me interesa, no es capturar un frame del vídeo (sí, no se trata de videojuegos), sino el formulario completo en el que se reproduce el vídeo. Por lo tanto, la opción del virtualdub no me vale.
La solución de utilizar programas externos tampoco me es útil, ya que la idea es poder capturar desde el propio programa. Saludos |
#4
|
||||
|
||||
Hola, por mi experiencia en casos así (que no son muchos xD) capturar frames de vídeos usando el método "Impr Pant" u otros es prácticamente imposible...
Pero la solución que se me ocurre de forma rápida (y porqué no decirlo, chapucera), es capturar la pantalla de la misma forma que lo haces ahora y por separado capturar el frame del video con lo qué el componente te ofrece. Luego lo ajuntas tú (de forma programada, no manual xD) antes de mostrar la imagen final. Problemas que se pueden presentar: - Que si la ventana no esta al frente de todo, pues salga un churro enorme si "pegas" el frame en la posición que teóricamente debería estar... xD Se que la solución es una enoooorme chapuza, pero es lo primero que se me ha ocurrido xD Saludos. |
#5
|
|||
|
|||
Hombre capturar las imagenes por separado no es tanta chapuza, porque en realidad las dos imagenes no estan juntas en ningun lado salvo en el monitor, de eso se trata el overlay, es decir la tarjeta de video en el ultimo momento antes de enviar la imagen al monitor superpone las dos cosas el video y la imagen del escritorio.
Saludos |
#6
|
||||
|
||||
Es una opción, aunque me ha sorprendido muchísimo no encontrar una solución más simple al problema. Nunca me ha gustado usar el componente de captura del DSPack (llamado DSGrabber), ya que el consumo de CPU a la hora de la reproducción se dispara en el momento en el que lo conectas al stream de video, pero puede ser la única opción.
Gracias a todos por las ideas. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Capturar la pantalla con lazarus | jorge1987 | Varios | 1 | 13-09-2006 17:23:09 |
capturar parte de la pantalla | gabriel3 | Varios | 1 | 21-01-2006 18:09:08 |
Capturar sección de la pantalla.. | n3mohack | API de Windows | 1 | 22-09-2005 19:25:24 |
Error al capturar la pantalla!! | DarkByte | Gráficos | 7 | 28-07-2005 03:16:33 |
Capturar pantalla | pablo | Varios | 1 | 07-09-2004 20:15:10 |
![]() |
|