Grab
De VdrWiki
Tabla de contenidos |
Descripción
El programa VDR permite ejecutar una serie de comandos cuando te conectas con él mediante telnet. Dichos comandos están disponibles dentro de lo que se denominan sesiones SVDRP, que básicamente consisten en hacer telnet al VDR y darle órdenes y esperar respuestas.
GRAB es uno de los comandos disponibles en las sesiones SVDRP. GRAB permite hacer una captura de pantalla de lo que está mostrando VDR en ese momento, es decir, un fotograma.
El comando GRAB nos va a devolver en formato JPEG o PNM la imagen del canal sintonizado en ese momento por VDR, es decir, una captura de lo que se está viendo en pantalla. Las características de la imagen (por defecto en mi instalación) serían:
Tamaño: 720x576 Resolución: 72x72dpi Color: RGB, 32bits (16,7 Millones) Formato: JPEG/JFIF
Veamos la sintaxis del comando GRAB y una descripción más detallada:
GRAB <fichero> [ <calida> [ <tamaño-x> <tamaño-y> ] ]
Captura el frame actual y lo salva en el fichero indicado. Las imágenes pueden guardarse tanto en formato JPEG como PNM, dependiendo de la extensión que se utilice en <fichero>. El parámetro calidad (que sólo aplica a cuando pedimos formato JPEG) puede estar en el rango de 0 a 100, siendo 100 el valor por defecto, es decir, la "mejor" calidad. Con los otros dos parámetros indicamos qué tamaño de imagen queremos (por defecto será pantalla completa). Si utilizamos sólo la extensión (.jpg, .jpeg o .pnm) en vez de un nombre completo, entonces VDR enviará la imagen en el formato indicado por la extensión a través de la sesión SVDRP codificada como base64. Pasa lo mismo si en vez del nombre del fichero usamos el signo menos '-', en cuyo caso se envía en también codificado como base64 en formato JPEG vía la sesión SVDRP.
# Activar "GRAB a fichero" (y usar /tmp como directorio) durante el arranque de vdr: $ ./vdr -g /tmp (resto de opciones)
Desde la versión de VDR 1.3.? se desactivó la captura de las pantallas a fichero y sólo se soportaba la opción '-' que envía la imagen sobre la sesión SVDRP. Se tomó esta decisión debido a razones de seguridad.
Para que VDR cree un fichero en su disco duro al usar este comando tienes que arrancar el programa con la opción [-g <directorio>], siendo /tmp el directorio más típico; es más, el programa Vdradmin necesita que arranques vdr con dicha opción y además apuntando a /tmp.
Requisitos de GRAB
El comando GRAB no siempre va a funcionar, es más, podríamos encontrarnos con un decepcionante error a la hora de ejecutarlo: '451 Grab image failed' (La captura de la imagen ha fallado).
- Requisitos de GRAB
- Usar una tarjeta de tipo Full-Featured
- Usar una tarjeta de tipo Budget y un plugin de salida que implemente GrabImage()
Nota1: Ciertos plugins de salida, como por ejemplo vdrxine, implementan
el método *cDevice::GrabImage que permite que Grab funcione y nos
devuelva las capturas de pantalla, incluso cuando NO tenemos una
tarjeta Full Featured.
Nota2: El plugin softdevice no implementa dicho método, lo cual significa
que si tienes una tarjeta budget y usas softdevice, entonces NO
puedes usar GRAB.
Ejemplos de aplicaciones que usan GRAB
El diálogo con el equipo mediante SVDRP manualmente (cli) o línea de comandos se hace un poco duro y por ello es de gran ayuda contar con aplicaciones que ejecutan GRAB y nos dan el pantallazo limpiamente. Algunos ejemplos son:
Referencias
Enlaces
| [1] | http:// | Página de referencia |
--Luis 19:57 15 sep 2006 (CEST)

