Martes, 6 de mayo de 2014 (Antes de ayer)

Este año le estaba haciendo poco ó ningún caso a las cajas nido de la terraza y a sus webcams, entre otras cosas porque en años anteriores la crianza de los gorriones que las habitan suele ser un rotunda fracaso.
Pero no un fracaso extraordinario, sino un fracaso común y corriente.Y es que los gorriones normalmente ponen 5-6 huevos, nacen todos y van muriendo hasta quedar 1 ó 2 el día que toca salir del nido. De esos 1 ó 2, excepcionalmente, uno sobrevive al primer año. Si prestáis un poco de atención en estas fechas veréis que raramente a un hembra la siguen más de 1 ó 2 volantones, 3 con mucha suerte.

Eso, más o menos es lo normal (al menos es lo que yo llevo observando), lo anormal es que llegue el día en que van a echar a volar y haya en el nidal cinco polluelos (como ocurre actualmente en uno de los nidales de casa) y en un más que sorprendentemente buen estado de salud.

Así es que para celebrar el inminente acontecimiento he conectado la cámara al streaming de Youtube como os indico a continuación y de paso estreno la herramienta de Eventos en directo que apenas he tenido tiempo de probar.


Eventos en vivo

Desde hace un año (aprox. en España) Youtube ofrece la posibilidad de crear lo que ellos llaman Eventos en directo, es decir conectar y ver ( o insertar en tu página ) grabaciones que se están produciendo en ese instante, en tiempo real (o casi). Muy usado para eventos deportivos y conciertos pero también para la retransmisión de webcam y creación de vídeotutoriales (conectas la webcam y le explicas a alguien el método para hacer tal ó cual).

Existen ya varios servicios de este estilo que se han popularizado mucho en internet ( Ustream.tv o Justin.tv ) muy usados actualmente para la emisión en directo de manifestaciones o escraches e imposibilitando de esta manera el secuestro policial del material grabado ya que este se difunde públicamente en el mismo momento que se genera, vaya lo que viene siendo un canales de información en vivo y en directo de cualquiera acontecimiento público.

He probado los tres sitios comentados para la emisión de eventos en directo y creo que me voy a quedar con el de Youtube por varios motivos: Es el más popular, conocido y que llega a más gente. Dispone de soporte para gran número de navegadores y plataformas. Permite un control más personalizado de la publicidad que el canal inserta (normalmente) al inicio de la retransmisión.


Creación de eventos

Los tres sitios que he probado hasta ahora (Justin.tv, Ustream.tv y Youtube) son gratuitos. Todos insertan publicidad (normalmente al principio). Los dos primeros ofrecen la posibilidad de retirar la publicidad mediante pago del servicio. En Youtube en cambio podéis desactivar la inserción de publicidad en vuestros vídeos de forma gratuita (aunque creo que la cuenta tiene que reunir algunas condiciones previas para poder hacerlo). Sigue leyendo…

Domingo, 9 de marzo de 2014 (Hace más de 1 mes)

A estas alturas ya habrán oido hablar de Telegram, la alternativa libre y gratuita a Whatsapp. Visual y funcionalmente es idéntico a Whatsapp, literalmente es un clon, pero es gratuito y disfruta de las enormes ventajas del desarrollo Open source, una de las cuales es la posibilidad de que a su alrededor crezcan otros proyectos que amplían, complementan y enriquecen el original. Telegram dispone de una API de gestión y control de que se alimentan virguerías como Tg-master: un Telegram para terminal/consola.

A partir de aquí las posibilidades de usar este “Whatsapp libre” desde el ordenador y poder chatear desde un terminal con el teléfono de alguien, y viceversa. Pueden dar un juego inmenso. Podéis enviar mensajes, realizar chats y enviar/recibir archivos de vídeo/foto, mensajes privados, etc. A fecha de hoy (Marzo/2014) tg-master está en fase beta, pero ya me gustaría que programas en fase de producción tuvieran su estabilidad. Funciona perfectamente y es muy sencillo.

Podéis usar Tg-master con vuestra actual número de teléfono compartiendo la cuenta de Android con el ordenador. Al ingresar en Tg-master con el mismo número os llegará un chivatazo al móvil informando que “otro dispositivo se ha conectado a vuestra cuenta” pero sin más repercusiones. Pero claro, las posibilidades más creativas se presentan asignando una segunda cuenta de Telegram a vuestro PC. Aprovechando que tenía un número de teléfono en desuso de tarjeta prepago de mi anterior zapatófono lo he aprovechado para registrar en Telegram una segunda cuenta que es gestionada desde el PC con Tg-master y de esta manera disponer de un canal de chat entre PC y Móvil. Algo muy parecido a lo que ya hiciera con MCABBER (Jabber) (¿alguien se acuerda de aquellas charlas con la máquina?)

Para instalar Tg-master necesitáis descargar y descomprimirwget https://github.com/vysheng/tg/archive/master.zip -O tg-master.zip
unzip tg-master.zip && cd tg-master

Compilad (si es necesario tendréis que resolver dependencias)./configure --prefix=/usr
make

Ahora copiad el binario a /usr/bin y lo hacéis ejecutable para tenerlo disponible desde cualquier sitio.
cp ./telegram /usr/bin/telegram; chmod +x /usr/bin/telegram

Instalación

Una vez compilado e instalado en /usr/bin lo podéis ejecutar por primera vez para registraros en el servicio. En primer lugar Tg-master os pedirá el número de teléfono que queréis registrar en el servicio de Telegram. Introducid vuestro segundo número (con el +34 delante) y al instante os enviarán al móvil (tenedlo encendido cerca) un código de 5 dígitos que habréis de ingresar en Tg-master. Una vez validado ya estaréis listos para chatear con vuestro teléfono (claro os tenéis que agregar mutuamente en contactos).

Tg-master dispone de autocompletado con TAB (como la consola Linux) por lo que los comandos aunque no los conozcáis se escriben rápidamente.

Telegram via terminal
Telegram via terminal

Aunque Tg-master está en fase de desarrollo admite ya un tosco método de ejecución vía stdin recibiendo ordenes directas desde terminal. Para enviar un mensaje un contacto cualquiera en Telegram sin necesidad de entrar en el programa ejecutadecho "msg user#12345678 Mi mensaje al contacto | /usr/bin/telegram -k /home/tu-usuario/.telegram/tg.pub > /dev/null & sleep 1; killall telegram
(la carpeta /home/tu-usuario/.telegram/ se crea la primera vez que ejecutáis Telegram y registráis un teléfono y contiene el archivo tg.pub con la clave pública que debéis adjuntar con cada orden)
Como veis el método es bastante tosco porque requiere matar el proceso a lo bestia dándole un segundo para que envíe el mensaje. (el número de usuario destino lo obtenéis en Telegram haciendo contact_list). Este método es probable que cambien en breve con forme avance el desarrollo del programa.

Si necesitáis hacer videoconferencia con algo más de calidad de imagen de la que suelen ofrecer las webcams comerciales standard una opción a tener en cuenta es usar nuestra cámara de fotografía ó videocámara.

JVC y su conector VGAJVC y su conector VGA

Casi todas las cámaras digitales modernas, incluso las de gama baja, disponen de una conector salida VGA con la que podemos enviar la imagen a cualquier dispositivo grabador/reproductor como el televisor ó nuestro PC si este dispone de capturadora de vídeo ( si no tenéis tarjeta capturadora en Ebay podéis conseguir modelos PCI muy básicos y perfectamente válidos por 10-15 euros).

Para ver la imagen de cámara (GNU/Linux, openSuse 11.4) simplemente conecta el cable de la cámara a la tarjeta capturadora y en un terminal escribesmplayer tv:// -tv device=/dev/video1:driver=v4l2:width=320:height=240

Aplicar filtros y convertir V4l2 a V4l

Si en algún momento te pierdes hecha un vistazo a este apunte anterior: V4lo2loopback para Linux.
Una vez tengo la cámara conectada al PC cargo el módulo v4l2loopback_dcsudo modprobe v4l2loopack_dc Sigue leyendo…

Viernes, 22 de noviembre de 2013

Para GNU/Linux. La idea es sencilla: un script BASH que mediante el uso de ADB (Android Debug Bridge) mantenga una o varias carpetas sincronizadas entre nuestro Android y el ordenador de tal manera que siempre dispongamos de una copia en nuestro disco duro y esta se realice de manera automática (sin más intervención manual que conectar el teléfono al USB para cargarlo) y rápida.
En el siguiente vídeo se ve como funciona y como la sincronización es bastante rápida.


Idealmente esto lo empecé para mantener a mano en el ordenador las fotografías y vídeos que grabo con mi móvil (un Android – HTC Wildfire S) pero en realidad nada impide que esto puede ser usado para sincronizar otros contenidos ó simplemente como un modo cómodo de traspasar archivos al teléfono habitualmente para usarlo como pendrive.

La alternativa más evidente a este uso de ADB para sincronizar dos carpetas sería el montaje del teléfono como unidad de disco duro externo y a continuación usar alguna aplicación como sync para la sincronización, pero hay un par de ventajas a favor de ADB abismales: en el tiempo que tarda el teléfono en desmontar y montar en el PC la nueva unidad como un disco duro de nuestro ordenador he acabado yo de transferir alrededor de 200 Mg de archivos. La velocidad de transferencia es idéntica pero la conexión en inmediata (un par de segundos. Actualmente mantengo sincronizados 15 carpetas que contienen 250 archivos. Desde que conecto el teléfono al USB y aparece el diálogo informando de “No es necesaria la sincronización” pasan aprox. 6 seg).
Además de la velocidad, al no estar la tarjeta del teléfono montada como un disco duro/pendrive se gana en seguridad frente a archivos corruptos o desmontajes inapropiados. Si tienes que irte de improviso simplemente desconectas el teléfono y te lo llevas.

El único engorro es instalar ADB que viene con el kit de desarrollo de Android distribuido por Google. Si no las tienes ya instaladas simplemente sigue los pasos que se indican en la sección “Descargar Android SDK

Preparar el móvil

La única preparación o instalación en el teléfono móvil es dejar activa por defecto la depuración USB de tal manera que siempre que se conecte esté accesible de forma inmediata para la aplicación ADB. Para activar la depuración usb, en tu teléfono busca y activa: Ajustes->Aplicaciones->Desarrollo->Depuración USB

Sigue leyendo…

Lunes, 28 de octubre de 2013

Desde hace muchas versiones atrás que Digikam dejó obsoletos mis scripts para geolocalización de fotografías.

Desde su versión 2.0 la integración con GoogleMaps, Marble, OpenStreetMap y similares es uno de los aspectos que más ha atenciones ha recibido y actualmente mantener geolocalizadas y referenciadas todas las fotografías de nuestra colección es súmamente sencillo.

¿Y para que sirve tener las fotos geolocalizables?
Pues lógicamente como información anexa si se trata de fotografía con algún valor científico (flora, fauna), como recordatorio de algún lugar remoto que visitamos hace años y (sobretodo) como herramienta de búsqueda si el gestor de fotos (caso Digikam) dispone de alguna aplicación con la que localizar imágenes a partir de la navegación por áreas de un mapa.
&>sqlite3 -list /home/album/Fotografia/digikam4.db "SELECT COUNT(id) FROM images"
52387 fotografías salen en mi álbum de fotografías de Digikam, que hay que sumar las fotografías de Merche. Lógicamente localizar aquí una fotografía empieza a tener una dificultad considerable, pero si sabes donde se hizo y puedes coger un mapa y listar las fotografías que se hicieron en un área restringida pues la tarea es entonces notablemente más sencilla.

Geoetiquetado masivo de fotografías

(Nota 1: actualmente estoy usando una versión antigua de Digikam 2.1.1 – actualmente 3.3. Doy por hecho que lo que explicado aquí es igualmente válido para versiones posteriores y ha sido mejorado, pero no puedo confirmarlo.).
(Nota 2: la aplicación Geo-location no se instala por defecto al instalar Digikam).

El siguiente vídeo es bastante auto-explicativo sobre el modo de geoetiquetar una pila de imágenes, que básicamente consiste en

Sigue leyendo…

Lunes, 30 de septiembre de 2013

Parecía una tontería, pero me costó encontrar el modo de averiguar cuanto tiempo lleva el escritorio innactivo, básicamente lo que hacen los salvapantallas para lanzarse.
La instalación standard (hasta donde sé) de openSuse no dispone de ninguna aplicación que directamente indique los segundos ó milisegundos que el escritorio (KDE ó GNOME) llevan sin recibir actividad por el teclado ó el ratón. Hay modos indirectos, a traves del comando WHO (who -a) ó consultado /proc/interrupts (cat /proc/interrupts).
Al final opté por compilar una mini-applicación que encontré naufragando por internet y que hace eso mismo: imprimir el tiempo de inactividad en el escritorio gracias a las librerías de salvapantallas (cambié un par de líneas).

Copia estas líneas a un archivo:#include <X11/extensions/scrnsaver.h>
#include <stdio.h>
main() {
XScreenSaverInfo *info = XScreenSaverAllocInfo();
Display *display = XOpenDisplay(0);
if (display != NULL) {
XScreenSaverQueryInfo(display, DefaultRootWindow(display), info);
printf("%u\n", info->idle); }
}
y guardalo como innactivo.c.
Ahora compilalo haciendo gcc -o innactivo innactivo.c -lXss
Copia el binario a /usr/bin y hazlo ejecutablesudo cp innactivo /usr/bin/innactivo
sudo chmod +x /usr/bin/innactivo

Listo. Ahora en cualquier consola al escribir innactivo se imprimen los milisegundos que lleva el sistema innactivo. En mi caso son siempre 8-9 los milisegundos que transcurren entre que ejecuto la orden y se imprime en pantalla.

Cuaderno de campo es un blog desarrollado y mantenido por Trebol-a y en el que escriben Trebol-a, Miguel, Merche y Mónica
Si quieres saber algo más sobre los autores acude a la página acerca-de, si quieres contactar con alguno de nosotros hazlo a través de contactar ó de Google+

Creative Commons: Todo el contenido de la web (imágenes, textos, vídeos, a excepción de aquellas obras de otros autores enlazados por Cuaderno de Campo) se acoge a los términos expresados en la licencia Creative Commons