From Amarok Wiki

Tag.png

Contents

¿Qué es?

La mayoria de la gente no tiene colecciones estáticas, sino que las canciones están constantemente siendo renombradas y movidas. Con la mayoría de los otros reproductores, renombrar o mover un archivo supone que el reproductor le pierde la pista, obligándote a reañadir el archivo a tu lista de reproducción y probablemente perdiendo cualquier estadística que tuvieras sobre la canción. Esto, además de ser frustrante, es una pérdida de tiempo. Por ello, Amarok ha implementado unas características de seguimiento de archivos para hacer frente a estas situaciones, permitiendo a Amarok mantener la información de tus canciones aunque las renombres o muevas (a este sistema nos referiremos como AFT durante el resto de la página). Las partes de Amarok que pueden aprovecharse de esto se dice que son "AFT-enabled".

Actualmente, la lista de reproducción de Amarok, las estadísticas y las letras pueden utilizar AFT. La lista de reproducción incluye la implementación AFT para la edición en línea de etiquetas, el diálogo de etiquetas, y la reproducción. Las estadísticas guardarán la información sobre tus archivos aunque los muevas; ¡puedes incluso mover un archivo fuera de los directorios de la colección, y al ponerlo en cualquier otro lugar verás que las estadísticas se actualizan con la nueva localización!

¿Cómo funciona?

El escaner de la colección de Amarok, con la opción de vigilar cambios en las carpetas activada, detecta por si solo los nuevos archivos, así como los eliminados de las carpetas de tu colección, actualizando automáticamente la misma. Con AFT, cuando los archivos son escaneados por Amarok, se lee o calcula una firma única en el archivo. Usando esta firma, Amarok puede comprobar si un archivo que está siendo añadido a la colección es un archivo que ha sido renombrado o movido. Las listas de reproducción de Amarok así como las estadísticas y letras son actualizadas con la nueva información, permitiéndote gestionar los archivos sin necesidad de hacerlo desde Amarok, ¡o preocuparte por perder años de estadísticas!

Tipos de seguimiento AFT

Hay dos tipos de seguimiento AFT: integrado, y no integrado.

Cuando usas el seguimiento integrado, se escribe el valor de la firma a los metadatos de tus archivos, en campos específicamente reservados por muchos formatos para esta información. No todos los formatos de audio permiten el uso de este tipo de seguimiento; actualmente solo los archivos MPEG que usan etiquetas ID3v2, Ogg Vorbis, FLAC, y Ogg FLAC lo permiten. Este tipo de seguimiento es extremadamente robusto; a menos que elimines las entradas UID de la base de datos de Amarok o los metadatos del archivo, Amarok nunca perderá ese archivo. Los archivos duplicados también permiten seguimiento si se crean distintas firmas para cada uno de ellos.

Al utilizar el seguimiento no integrado, se calcula un hash a partir de varios parámetros de solo lectura del archivo, tales como la duración o una porción de sus datos. En este caso no se modifican en absoluto tus archivos.

A continuación se muestran algunos casos en los que el seguimiento no integrado puede fallar:

  1. Al editar un archivo (por ejemplo sus etiquetas) y renombrarlo desde fuera de Amarok. El AFT puede lidiar con cada caso de forma separada, pero no con los dos a la vez. Como reultado deberás reescanear el archivo siempre que lleves a cabo cualquiera de las dos operaciones para asegurar que AFT haga bien su trabajo.
  2. Con dos archivos idénticos. El seguimiento solo se realizará sobre uno de ellos.

Nota: Debido a que la opción vigilar cambios en las carpetas utiliza mtimes (modify times: veces modificado) de los directorios seleccionados para determinar que hay que reescanear, y no los archivos individuales, si modificas las etiquetas de algún archivo fuera de Amarok, el escaner no reanalizará el directorio, es decir, si mueves alguno de esos archivos, el seguimiento fallará. Por tanto, si quieres que esto funcione correctamente después de modificar archivos fuera de Amarok puedes hacer varias cosas: ejecutar manualmente un reescaneo completo, ejecutar touch en el directorio en el que se encuentre el archivo (funciona en la mayoría de sistemas de archivos de Unix/Linux/Mac), o "trucar" el escaner para que escanee el directorio donde estaban los archivos creando un archivo nuevo (por ejemplo con touch) de forma que se actualice el mtime del directorio (puedes eliminar el archivo después del escaneo).

Usar los identificadores de MusicBrainz

A partir de la revisión git 859bbf8e, Amarok puede usar los identificadores de MusicBrainz integrados para llevar a cabo el seguimiento. Hay un "detalle" con el que puedes tropezar al usar los identificadores de MusicBrainz: puesto que identifican las canciones basándose en las características de los datos de audio, si tienes canciones idénticas en diferentes formatos, los dos pueden quedar con el mismo identificador único. Como resultado, Amarok puede confundirse y escanear únicamente uno de los archivos; o incluso puede entrar en un bucle hacia delante y hacia atrás entre los dos formatos.

Por esta razón, los identificadores creados con el programa amarok_afttagger tienen prioridad, puesto que garantizan el seguimiento de archivos en lugar del seguimiento de canciones, por lo que si estás teniendo el problema antes expuesto y el comportamiento no es el deseado (después de todo, dependiendo de tus necesidades particulares, puedes querer hacer el seguimiento de canciones o el de archivos) entonces simplemente etiqueta a tus archivos con el programa amarok_afttagger y estos identificadores tendrán prioriddad. Asimismo, si no te preocupa reproducir la canción en un formato u otro, puedes eliminar cualquier identificador integrado generado por Amarok usando el programa amarok_afttagger, y permitir que el seguimiento se lleve a cabo utilizando los identificadores de MusicBrainz.

¿Cómo lo conecto?

Tú no conectas el seguimiento no integrado -- ya lo está para cada archivo de tu colección. Simplemente disfrútralo.

Si además quieres utilizar las características del seguimiento integrado, puedes utilizar un programa instalado con Amarok llamado amarok_afttagger. Pásalo a una lista de archivos o directorios para escribir etiquetas a los archivos que lo permitan. También puedes regenerar nuevas IDs, o eliminar IDs con él. Para obtener más información sobre las características de este programa ejecuta "amarok_afttagger --help". Cuando lo hayas ejecutado en tus archivos, realiza un reescaneado completo en Amarok para introducir los nuevos identificadores en la base de datos.

Seguridad

amarok_afttagger utiliza la librería TagLib, que ha sido probada y testada en numerosas ocasiones. Esta librería es utilizada en muchas aplicaciones en múltiples plataformas, y está muy bien vista.

Cuando realiza las operaciones en los archivos, amarok_afttagger utiliza una librería interna llamada SafeFileSaver. Esto utiliza sumas de control basadas en el hash y las garantías de los sistemas de archivos ante determinadas operaciones para asegurar que el archivo que es modificado por amarok_afttagger nunca se modifica por ningún otro proceso al mismo tiempo. Esta es el principal motivo de la lentitud del programa, pero merece la pena la lentitud en favor de la seguridad.

En resumen, este programa se cree que es seguro. El autor lo ha usado para escribir identificadores -- y reescribir varias veces con el propósito de probarlo -- a miles de archivos sin ningún tipo de problemas.

No me funciona / Me funciona genial y quiero agradecerlo

No hay problema. Envía un email a mitchell @t kde d.t org, poniendo AFT en algún lugar del asunto. También puedes abrir un bug en bugs.kde.org. ¡Gracias!