4 votos

¿Cómo puedo cambiar la fecha de mis imágenes y videos en mi teléfono según sus nombres de archivo?

Ayer, moví un montón de fotos y videos antiguos a mi teléfono, utilizando un servidor FTP que instalé en mi teléfono. Todo salió bien, pero hoy descubrí que la fecha de todas las fotos y videos copiados estaba configurada en ayer. Como resultado, mis fotos y videos ahora aparecen en el orden incorrecto en la aplicación de Galería.

(Haz clic en la imagen para agrandar)

IMG: captura de pantalla

Afortunadamente, la fecha y la hora todavía se conservan en los nombres de archivo. En este momento, quiero restaurar la fecha de las fotos y videos utilizando sus nombres de archivo.

Estoy interesado en una forma de hacerlo. Realmente no me importa si es mediante el uso de una aplicación, un script o algo más.

Soy consciente de que puedo copiar los archivos desde mi computadora al teléfono nuevamente utilizando un protocolo diferente, pero eso no es lo que estoy buscando.

1voto

Exeleration-G Puntos 124

Terminé escribiendo un script bastante sucio para hacer esto. Para que funcione, estoy asumiendo que tienes un dispositivo con acceso root y que el directorio que contiene las imágenes y videos es /sdcard/DCIM/Camera. Si no es así, cambia el script.

  1. Descarga BusyBox e instálalo. Esto es necesario para ejecutar comandos de terminal de Linux.

  2. Crea un script llamado script.sh, que contenga este bloque de código, y colócalo en la root de tu tarjeta sd.

    cd DCIM/Camera
    echo "Navegando a `pwd`"
    
    ls
    
    for f in *.jpg *.3gp *.m4v
    do
    
      [ -e $f ] || continue    ## probando si el archivo existe
      FECHANUEVA=`echo $f | sed 's|IMG_||g' | sed 's|VID_||g' | sed 's|_||g' | \
      sed 's|.3gp||g'  | sed 's|.m4v||g' | sed 's|.jpg||g' | sed 's|........|&\.|g'`
    
      echo "Cambiando fecha a $FECHANUEVA en $f..."
    
      touch -t "$FECHANUEVA" "$f" ## usando touch para insertar la nueva fecha en el archivo
    
    done
  3. Inicia adb shell y ejecuta:

    su
    mount -o remount rw /sdcard

    para asegurarte de que realmente puedes editar los archivos

  4. Ve a tu tarjeta sd:

    cd /sdcard
  5. Ejecuta el script de terminal:

    sh script.sh
  6. Ahora inicia la aplicación de Galería, y espera. Especialmente si tienes una gran colección de archivos, Android puede tardar un tiempo en ordenarlo todo y actualizar la caché.

1voto

strange quark Puntos 2947

Si los datos EXIF son correctos, puedes usar jhead. Ten en cuenta que esto solo funciona para archivos JPEG.

Primero, verifica si los archivos todavía tienen los datos EXIF correctos usando:

jhead 

Luego, usa la opción -ft de jhead:

-ft Establece la marca de tiempo del sistema del archivo en lo que está almacenado en el encabezado Exif.

jhead *.jpg

0 votos

Suena bien, ¿pero hay algún archivo binario para Android en algún lugar?

0voto

leon Puntos 1270

Puedes cambiar fácilmente la marca de tiempo de imágenes con muchos visores de imágenes. Por ejemplo, en FastStone Viewer: Herramientas -> Cambiar Marca de Tiempo -> elige la fecha de creación de EXIF. Puedes seleccionar todas tus imágenes antes y aplicar esta función a todas ellas a la vez.

Mi única idea sobre los vídeos es un script que analiza un nombre y establece el atributo del archivo.

0 votos

¿Conoces alguna aplicación que pueda hacerlo directamente en Android? Gracias.

0voto

Esta es una aplicación que puedes hacer tú mismo, o puedo hacerlo por ti si así lo deseas. Involucra la manipulación de archivos utilizando la API de archivos de Java o herramientas de shell de Unix, lo que prefieras. Creo que si tienes experiencia en programación, la documentación de la API de Java es un buen lugar para empezar. O, si tienes Windows, puedes usar una extensión para el explorador de Windows llamada QTTabbar (qttabbar.sourceforge.net) que tiene una opción para copiar archivos conservando la fecha de modificación. Sugiero copiar los archivos de tu computadora al teléfono utilizando un cable USB.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X