Llevo un par de dias destripando URLs para obtener las direcciones directas a varias webcams que tenía por ahí guardadas. Ahora con ayuda de Mplayer y A-foto es muy facil mantener una ventana abierta a diversos lugares del mundo o incluso grabar video-secuencias. Estas son algunas de las direcciones y su configuración para verlas directamente en el escritorio de KDE.

Básicamente las webcam online se puede dividir en dos grupos: las que sirven en vídeo continuo (streaming), algunas con sonido incluido, y las que sirven imágenes sueltas con una tasa de refresco mas o menos elevada. Las primeras son relativamente fáciles de sintonizar (ha excepción de aquellas que emiten el vídeo en un formato propietario y cerrado. Solo encontré una).

Abríd una consola y escribíd:mplayer rtsp://rx-wes-sea92.rbn.com/farm/pull/tx-rbn-sea44:1259/ngm/petespond/live/live.rm
(Desde rtsp:// hasta live.rm es la misma linea)

En un segundo mplayer os abre una ventana hacia una webcam situada en África (Sudáfrica creo) con una calidad impresionante y sonido ambiente también impresionante. El vídeo superior es un volcado de dicha webcam, solo que en lugar de utilizar mplayer he ejecutado mencoder para volcar la transmisión: mencoder "rtsp://rx-wes-sea92.rbn.com/farm/pull/tx-rbn-sea44:1259/ngm/petespond/live/live.rm" -o charca.rm -ovc lavc -oac pcm -quiet

Aquí tenéis otra webcam en África una gran calidad y sonido:mplayer mms://stream.onenetplace.com/africam001
Esta webcam además que funciona las 24 horas del día. Durante la noche conectan en modo infrarrojos sobre una charca a la que se suelen acercar animales a beber.

Playlist

Al destripar el HTML buscando la url directa a la webcam os encontrareis como estas: http://play.rbn.com/?url=ngm/petespond/demand/welcome.rm?url=ngm/petespond/live/live.rm&proto=rtsp&rbnkey=1
Si lanzais esa dirección en algún navegador probablemente obtengais la conexión con la webcam despues de chuparse 1-2 anuncios publicitarios. Para saltarse estos anuncios abrid una consola y lanzad:mplayer -playlist "http://play.rbn.com/?url=ngm/petespond/demand/welcome.rm?url=ngm/petespond/live/live.rm&
proto=rtsp&rbnkey=1""

En consola podeis ver como mplayer vá saltando de una URL a otra de anuncios hasta obtener finalmente la conexion válida a la webcam rtsp://rx-wes-sea102.rbn.com/farm/pull/tx-rbn-sea44:1259/encoder/ngm/petespond/live/live.rm
(observa que no basta con limpiar las variables de la URL)

Secuencia de imágenes

Otras webcam (la mayoría) sirven fotogramas sueltos cada x periodo de tiempo ó bien un flujo de fotogramas sueltos en formato MJPEG que mplayer no puede leer directamente.
Si se trata de un streaming en formato MJPEG procedente de una webcam del tipo IP (normalmente la url termina con algo como “/video.cgi” ó “/mjpeg.cgi“) podeis conectar a ella directamente contruyendo una tubería y utilizando wget para la descarga.
Por ejemplo para visualizar la webcam que la Autoridad Portuaria tiene en el puerto de Cartagena podeis hacer en consola (todo en una sola línea):mkfifo cartagena.mjpeg; wget -O cartagena.mjpeg "http://video2.apc.es:15376/axis-cgi/mjpg/video.cgi?resolution=fullsize&camera=1%20&compression=50\" 2>/dev/null & mplayer cartagena.mjpeg -demuxer 35 -cache 32
(desde http: hasta compresion=50 es una sola linea)
– Creamos una tubería con nombre cartagena.mjpeg
– Conectamos y volcamos los datos a la tubería
– Conectamos mplayer a la tubería informando de que debe decodificar el flujo como MJPEG (demuxer 35).
En este caso la conexión se demora unos segundos, mientras se llena el buffer, pero luego resulta bastante continua.
Otras webcam simplemente sirven imágenes en formato JPG cada x segundos. Para visualizar estas podeis hacer uso del widget A-foto para Superkaramba (en KDE). Simplemente abrid la URL de la imagen JPG en konqueror y una vez cargada la página, arrastrad el icono de la barra de dirección sobre una ventana de A-foto.
A-foto por defecto recarga la imagen cada 2 minutos. Podeis bajarla a 1 minuto ó bien corregir una linea del código de A-foto para poder indicar el tiempo en segundos en lugar de minutos y poder reducir el refresco a 15 segundos (por ejemplo).

Hackear A-foto

Teniendo instalado A-foto en tu máquina, edita el archivo afoto.py (normalmente en ~/.kde/share/apps/superkaramba/themes/afoto/.
En la línea 878 donde dice:int(float(output.replace('\n',''))*600000)
cambiar a
int(float(output.replace('\n',''))*100)

Las instancias de A-foto lanzadas a partir de ahora tomarán el tiempo de recarga en segundos (no en minutos como indican los menues).
Podeis abrir en Konqueror esta dirección de una webcam sobre un comedero de aves en Inglaterra y actualizarla sobre los 15 segundos., aunque últimamente no hace más que llover y la cámara está empañada.

De arriba abajo y de izquierda a derecha: 1) un varano trepando por un árbol tratando de cazar alguna garza. 2) Antílopes en una pradera 3) Un pinzón en el comedero de inglaterra 4) Las terrazas de los vecinos desde mi propia webcam 5) entrada al puerto de Cartagena.