lunes, 29 de octubre de 2018 (Hace 5 dias)

Guarda eso de abajo en bin como volumen4adb y hazlo ejecutable ( chmod +x ~/bin/volumen4adb )
Asigna a la combinación de teclas «Alt+q» al comando ~/bin/volumen4adb subir
Asigna a la combinación de teclas «Alt+a» al comando ~/bin/volumen4adb baja
Asigna a la combinación de teclas «Alt+s» al comando ~/bin/volumen4adb silencio

Cuando tengas el teléfono conectado con el cable microusb al ordenador Alt+q y Alt+a suben y bajan el volumen y Alt+s lo silencia durante 84 segundos, que es el que tiempo que dura la publicidad de Spotify. Ahora que no oigo publicidad de regatón soy mejor persona y menos agresiva.

#!/bin/bash
pausa=84
d=$(adb devices| grep "device$"| sed -r 's/([0-9a-z])(.)/\1/g')
if [ "x$d" != "x" ]; then
vactual=$(adb shell dumpsys audio|grep -A 4 "- STREAM_MUSIC:" | tr -d '\n\r' |sed -r 's/.8 (headphone): ([0-9])./\1/g')
#echo "Volumen actual : $vactual"
if [ "$1" == "silencio" ]; then
adb shell service call audio 3 i32 3 i32 1 i32 1
(for n in $(seq 1 $pausa); do echo "scale=2; (100 / $pausa)
$n" | bc ; sleep 1; done ) | zenity --text="Esperando $pausa segundos..." --progress --percentage=0 --auto-kill --auto-close --no-cancel
adb shell service call audio 3 i32 3 i32 "$vactual" i32 1
exit 0
fi
if [ "$1" == "sube" ]; then
vdestino=$(echo "$vactual + 1" | bc)
if [ $vdestino -ge 15 ]; then vdestino="15"; fi
adb shell service call audio 3 i32 3 i32 "$vdestino" i32 1
#echo "Subiendo a $vdestino"
exit 0
fi
if [ "$1" == "baja" ]; then
vdestino=$(echo "$vactual - 1" | bc)
if [ "$vdestino" -le 0 ]; then vdestino=0; fi
adb shell service call audio 3 i32 3 i32 "$vdestino" i32 1
# echo "Bajando a $vdestino"
exit 0
fi
if [ "$1" == "playpause" ]; then
adb shell input keyevent 85
fi
else
exit 1
fi

También asigné Alt-x a ~/bin/volumen4adb playpause pero sólo funciona al pausar, no al hacer replay, ignoro el motivo.

sábado, 18 de agosto de 2018 (Hace 77 dias)

Si usáis vuestro teléfono Android para crear y manejar waypoints casi seguro conocéis Oruxmaps, probablemente la mejor app para geolocalización y mapas (por aquí ya ha salido varias veces).
Oruxmaps genera una pequeña base de datos (formato SQLITE) donde archiva todos los registros generados. Normalmente esta base de datos se encuentra en /storage/sdcard/oruxmaps/tracklogs/oruxmaps.db.
Si necesitáis extraer waypoints de la BD para (por ejemplo) consultarlos en GoogleEarth, podéis generar un KML así:
echo "Name,Latitude,Longitude,Description" > actual.csv && sqlite3 oruxmapstracks.db "SELECT poiname || ',' || poilat || ',' || poilon || ',' || '\"' || poidescr || '\"' from pois where poifolder='actual'" >> actual.csv && gpsbabel -i unicsv -f actual.csv -o kml -F actual.kml
Esta línea genera un archivo CSV con los waypoints que tengo en la carpeta «actual» de Oruxmaps y a continuación lo convierte a KML con gpsbabel

En esta imagen podéis ver todas las tablas y campos de la BD de Oruxmaps.

miércoles, 7 de febrero de 2018 (Hace 269 dias)

Uno de los problemas de las cámaras de fototrampeo es que en cuanto están más de 10 segundos sin pilas se resetea el reloj y la fecha impresa en la foto es errónea o muy errónea. En la mayoría de las ocasiones se vuelve al año de fabricación y en otras, cuando el fallo de baterías es leve o momentáneo pues se vuelven atrás 20 horas ó 30 minutos.
Si (como es mi caso) la fecha/hora en que se capturó la imagen es importante pues es un incordio. Pero fácil de solucionar si sabes cuanto de retrasado estaba el reloj de la cámara.

Obviamente cuando este zorro se fotografió no eran las 13:11Obviamente cuando este zorro se fotografió no eran las 13:11

La dificultad está en saber la cantidad de tiempo en que está desajustada la cámara, pero gracias a las fotografías que toma la cámara nos toma al instalarla o desinstalarla es relativamente fácil calcular este desajuste con un margen de error de sólo minutos.
En mi caso, recogí las fotografías a las 19:00 y en ese momento la cámara me tomó una foto marcandola como las 02:16 del mismo día, es decir, la cámara iba retrasada 16 horas 45 minutos.

Cambiar datos EXIF

Leer y escribir datos EXIF en archivos de imágenes exiftool es básico. El alias -alldates nos permite ver todas las fechas relativas a una imagen o varias exiftool -alldates IMAG_0012.JPG
Date/Time Original : 2018:01:31 13:05:09
Create Date : 2018:01:31 13:05:09
Modify Date : 2018:01:31 13:05:09

Sigue leyendo…

domingo, 18 de diciembre de 2016

Una de las pesadillas recurrentes cuando manejas Linux desde un terminal o consola es equivocarte al teclear un comando como ROOT y en lugar de escribir rm ./* escribir rm *, lo primero borra todo en la carpeta, lo segundo borra todo en el ordenador. Sólo me ha pasado una vez, y recuerdo perfectamente ver como desaparecía la carpeta «/BOOT» y «/GRUB» delante de mis narices antes de darme cuenta de la tremenda metedura de pata (afortunadamente no llegó a la H de /HOME).
Como he visto varias veces volver a «pasar la piedra rozándome la cabeza» hace no mucho (más vale tarde que nunca) me decidí a aplicarme una medida para dedos torpes en dos etapas:
1º/ inhabilitar el comando rm
2º/ habilitar el uso de la papelera en consola.

Inhabilitar rm

Esto es tan sencillo como definir un alias llamado rm que diga algo asíalias rm='echo No use «rm», mejor use «del» o la ruta completa de rm «/bin/rm»
Añadiendo esa línea a nuestro de alias (en ~/.alias ó ~/.bashrc depende de tu Linux) cuando escribamos rm en consola nos aparecerá esa advertencia. Si persistimos en usar rm lo único que tenemos que hacer es usar su path completo /bin/rm.

Habilitar del

Habilitar el comando del (como abreviatura de delete, u otro que tu prefieras) es tan simple como crear un script en nuestro directorio BIN (~/bin) con nombre (p.ejemplo) deltrash.sh y con el contenido:#!/bin/sh
kioclient5 move "$@" trash:/

(Para KDE5, en otros KDE usa kioclient)
Ahora, de nuevo en alias creamos un atajo a nuestro script que diga algo comoalias del="rmtrash"
En adelante tras borrar uno o varios archivos veremos algo como

martes, 18 de octubre de 2016 (Hace más de 2 semanas)

Llevo ya bastantes años usando Digikam como gestor de álbumes de fotos. Hace ya muchas versión implantaron un módulo llamado «mesa de luz«, que recordando las mesas de luz de las diapositivas permite comparar cómodamente dos imágenes al mismo tiemnpo de forma sincronizada. Es muy útil para comparar dos imágenes casi idénticas y seleccionar la que tenga mejor nitidez, foco, exposición, etc…
La verdad, no lo he usado casi nunca, no le encontré mucha utilidad, hasta ayer, cuando descubrí que es una herramienta fabulosa para comparar dos fotogramas de las cámaras de trampeo y averiguar si por su patrón de manchas la gineta es la misma o no. A la izquierda el macho de gineta que ya viejo conocido (ver post anterior), a la derecha un «desconocida» fotografiada (por los pelos, solo los cuartos traseros) en una ubicación nueva (y bastante remota con respecto a las originales).

Conclusión, la gineta es la misma, y cada día me alucina más las caminatas que estos animales (paticortos) se pegan cruzándose La Muela de una punta a la otra con una regularidad y facilidad que me tiene asombrado.

jueves, 14 de julio de 2016 (Hace 111 dias)

Ya me pasó hace tiempo, que quería descargar varias decenas de archivos adjuntos a otros tantos emails y no sabía como sin pasarme la mañana moviendo el ratón por la pantalla. Entonces lo solucioné con IMAP, montando el correo electrónico de GMAIL como una carpeta local de mi ordenador pude obtener una copia en disco duro de los emails y sus adjuntos. Ahora se repite, misma situación, solución diferente.

Esta vez he optado por otra solución, requiere menos trabajo y es mucho más rápida que esperar a tener una copia local de GMAIL para extraer archivos, xdotool: un comando de consola que replica los movimientos de ratón y teclado, eventos de click, click-derecho, pulsación de teclas, etc… De esta manera es sumamente fácil simular que movemos el ratón al tal sitio, cliqueamos un botón, movemos a otro, pulsamos ENTERad infinitum

while [ true ]; do xdotool search "Correo" windowactivate --sync mousemove --window %1 290 460 sleep 0.5 click 1 sleep 3 key KP_Enter sleep 1 mousemove 1264 250 sleep 1 click 1 sleep 4; done

La siguiente línea de texto hace eso, sobre una página de GMAIL:
-busca la ventana llamada «Correo» y le da el foco activándola
– usandola como referencia mueve el ratón a sus coordenadas relativas 290×460 (botón descargar adjunto)
– espera 0.5 segundos y cliquea botón izquierdo del ratón (click 1)
– espera 3 segundos (mientras se abre diálogo guardar adjunto)
– pulsa ENTER
– espera 1 segundo (la descarga es rápida)
– mueve el ratón al botón «Siguiente mensaje»
– espera 1 segundo
– pulsa botón izquierdo del ratón
– espera 4 segundos a que cargue siguiente mensaje.
– repetir.

Ni os cuento las risas que nos hemos echado en algún trabajo a cuenta de automatizar el movimiento del ratón y dejar durante horas al 3DStudio modelando el solito escenarios… o dejando al ordenador durante largos periodos de tiempo enviando insultos por mensajería mientras nosotros nos íbamos de coartada a almorzar a la cafetería.

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