ID3 (metadatos)

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 14 de febrero de 2021; las comprobaciones requieren 3 ediciones .

ID3 (del inglés.Identificar  un MP 3 ) es un formato de metadatos más utilizado en archivos de audio MP3 . ID3 contiene el título de la pista, el álbum, el nombre del artista, etc., datos que utilizan los reproductores multimedia y otro software, así como los reproductores de hardware, para mostrar la información del archivo y organizar automáticamente la colección de audio.

Hay dos versiones incompatibles de ID3: ID3v1 e ID3v2.

ID3v1

Después de la creación del formato MP3, surgió un problema con el almacenamiento de información sobre el archivo de música; esto no estaba previsto en MP3. En 1996, a Eric Camp se le ocurrió la idea de añadir un trozo de memoria a un archivo para solucionar este problema.

La primera versión de las etiquetas ID3 tenía solo 128 bytes , comenzando con la cadena TAG . La etiqueta se colocó al final del archivo para mantener la compatibilidad con los primeros reproductores. Algunos de ellos hicieron un pequeño ruido cuando intentaron leer la etiqueta, pero la mayoría lo ignoró. Los jugadores modernos perciben esta información correctamente.

Dado que había poco espacio para los datos, solo se podía almacenar información básica sobre la canción en dichas etiquetas: título, álbum, artista, comentario: 30 bytes para cada campo, 4 bytes para almacenar el año y un byte para el género, que podría ser seleccionado de una lista predefinida con 80 valores ( Winamp luego amplió la lista con 68 valores). Si los títulos de canciones o álbumes contenían más de 30 caracteres, se cortaron. Por supuesto, debido a las limitaciones de tamaño, no había dudas sobre las opciones avanzadas de almacenamiento de metadatos.

La única mejora implementada en la versión 1.1 fue propuesta por Michael Mutschler en 1997: dado que el campo de comentarios aún es demasiado pequeño para almacenar algo útil, se decidió acortarlo en dos bytes para usarlos para almacenar la pista numérica.

Formato extendido

La etiqueta extendida es un bloque de datos adicional antes de la etiqueta ID3v1, que le permite expandir algunos campos ID3 (v1-v1.1) tres veces y agregar algunos campos nuevos. Los desarrolladores de esta extensión intentaron seguir la idea de la mayor compatibilidad, por lo que el comienzo de todas las etiquetas se almacena en una etiqueta ID3v1 normal, lo que permite que cualquier programa que comprenda ID3v1 lea o escriba datos, y solo si no hay suficientes bytes asignados, la continuación de cada campo se almacenará en un bloque extendido (siempre que el programa pueda escribir allí). El bloque extendido ocupa 227 bytes, se ubica antes de la etiqueta ID3v1 y comienza con la etiqueta TAG+. Se asignaron 60 bytes adicionales para los campos "título de la canción", "artista" y "álbum", un byte para la velocidad (estilo, tipo) de la música (00=desconocido, 01=lento, 02=medio, 03= fast, 04=hardcore), 30 bytes para una entrada gratuita de género, así como seis bytes para la hora de inicio y finalización de la música en el archivo (por ejemplo, para aumentar el volumen sin problemas). El campo de comentarios no se amplió y se mantuvo igual a 28-30 bytes. Si no se utiliza ninguno de los anteriores, se omite automáticamente.

Era un estándar no oficial y fue apoyado por un pequeño número de jugadores.

Estructura ID3

Las cadenas están separadas por ceros o espacios. Los campos no utilizados se rellenan como líneas en blanco.

ID3 (v1-v1.1): 128 bytes

Campo Longitud, bytes Descripción
encabezamiento 3 ETIQUETA
Nombre treinta nombre de 30 caracteres
Ejecutor treinta Nombre del artista de 30 caracteres
Álbum treinta título del álbum de 30 caracteres
Año cuatro Entrada de cadena del año.
Comentario 28 [1] o 30 Comentario
Byte nulo [1] una Si el número de pista está presente, este byte es 0
pista [1] una Número de pista en el álbum o 0; solo se cuenta si el campo anterior es 0
Género una Índice en la lista de géneros o 255

Etiqueta extendida

Colocado antes de la etiqueta ID3v1: 227 bytes

Campo Longitud, bytes Descripción
encabezamiento cuatro "ETIQUETA+"
Nombre 60 60 bytes adicionales para el campo "Nombre" ID3v1
Ejecutor 60 60 bytes adicionales para el campo "Artista" ID3v1
Álbum 60 60 bytes adicionales para el campo "Álbum" ID3v1
Velocidad (estilo, tipo) de música una Cuanto mayor sea el número, más "activa" la música
Género treinta cadena de 30 caracteres
Hora de inicio 6 Hora en formato mmm: ss
hora de finalización 6 Hora en formato mmm: ss

Los tamaños de los campos ID3v1, teniendo en cuenta la etiqueta extendida, serán:

Campo Tamaño, bytes
Nombre 90
Ejecutor 90
Álbum 90

Letras3

Lyrics3 es el primer intento de incorporar letras dentro de un archivo MP3 de Petr Strnad durante la era ID3v1.x. El bloque de texto se colocó entre las líneas LYRICSBEGIN y LYRICSEND al final del archivo, antes de la etiqueta ID3v1.x (si no existía, se creaba). El texto fue escrito en codificación ISO-8859-1 , la longitud máxima fue de 5100 bytes, las líneas fueron separadas por caracteres CR + LF, se implementó soporte para sellos de tiempo.

Con el tiempo, se lanzó el formato Lyrics3 v2.00, que tenía más funciones (en particular, el tamaño del bloque aumentó significativamente, aparecieron campos adicionales y la capacidad de insertar una imagen). El bloque 2.00 se colocó entre las líneas LYRICSBEGIN y LYRICS200 y tenía una longitud variable, que se escribió en los últimos seis bytes antes de la última línea LYRICS200.

La idea no se usó mucho debido al lanzamiento del estándar ID3v2, en el que dicha idea se organizó de manera más flexible y funcional.

Críticas y comentarios

ID3v1 ha sido muy criticado por una serie de problemas. En primer lugar, estos son campos demasiado pequeños, cuyo tamaño no es suficiente para almacenar la mayor parte de la información: 30 bytes no fueron suficientes para nombres largos, se redujeron.

La propuesta de encerrar el género a un número limitado de alternativas también encontró muchos detractores. A muchos simplemente no les gustó la lista propuesta, que no asignó espacio para géneros como, por ejemplo, el minimalismo o el barroco .

ID3v1 también carecía de internacionalización . De acuerdo con la especificación, todas las cadenas deben almacenarse en ISO 8859-1 , pero en la práctica, los usuarios a menudo usan la codificación nacional, por lo que a menudo vieron krakozyabry .

ID3v2

En respuesta a las críticas de ID3v1, se desarrolló un nuevo estándar, ID3v2. Fue publicado el 26 de marzo de 1998 y es completamente diferente a ID3v1.

Las etiquetas ID3v2 tienen una longitud variable y pueden aparecer al principio [2] o al final [3] del archivo. La etiqueta consta de varios "marcos". Cada cuadro contiene algún tipo de metadatos. Por ejemplo, el cuadro "TIT2" contiene el título de la obra y el cuadro "WOAR" contiene un enlace al sitio web del artista. El tamaño máximo de un marco está limitado a 16 MB y una etiqueta no puede superar los 256 MB. El texto se almacena en codificaciones UTF-16 [2] o UTF-8 [3] . Los marcos de texto se marcan con un bit de codificación.

El estándar ID3v2 define 84 tipos de marcos y también permite que las aplicaciones creen sus propios marcos. Entre los marcos estándar se encuentran marcos para almacenar la imagen de portada, latidos por minuto , información de derechos de autor y licencia, letras, texto libre, enlaces y otros datos.

Un archivo que contiene una etiqueta ID3v2 comienza con la secuencia de caracteres "ID3". Estos caracteres forman parte de la etiqueta "Encabezado". El encabezado tiene una longitud de 10 bytes y contiene los campos que se enumeran a continuación. El orden de bytes en ID3v2 es big endian . El tamaño está en bytes de 7 bits (el bit más significativo se establece en 0).

Campo Desplazamiento, bytes Longitud, bytes Descripción
Firma 0 3 "ID3"
Versión 3 2 2, 3 o 4
Banderas 5 una
El tamaño 6 4 (7 bits)

El encabezado del marco tiene una longitud de 10 bytes y contiene los campos enumerados en la siguiente tabla.

Campo Desplazamiento, bytes Longitud, bytes Descripción
identificador 0 3 [4] , 4 [5] Tipo de marco, letras y números latinos en mayúsculas
El tamaño 3 cuatro
Banderas 5 2

Versiones de ID3v2

ID3v2.2 es la primera versión ampliamente utilizada de ID3v2. Ahora considerado obsoleto. Se utiliza un ID de marco de tres caracteres en lugar de uno de cuatro caracteres ("TT2" para un marco con un título de trabajo en lugar de "TIT2").

Los formatos de marco ID3v2.2, ID3v2.3 e ID3v2.4 son ligeramente diferentes.

ID3v2.3 es la tercera versión y la más utilizada en la actualidad. Expande el tamaño del campo "Identificador" a cuatro bytes, agrega el campo "Número de marcos". Un marco puede contener múltiples valores separados por "/".

ID3v2.4 es la cuarta versión (actual). Permite que las cadenas se almacenen en codificación UTF-8 . Se usa un byte nulo para separar valores y el carácter "/" se puede usar en el texto. Ahora puede agregar una etiqueta al final del archivo, como en ID3v1.

"Secciones" ID3v2

En diciembre de 2005, se propusieron extensiones [6] para vincular texto e imágenes al tiempo de reproducción. El primero le permite crear una tabla de contenido para saltar rápidamente a una ubicación específica (o capítulo) dentro de un archivo de audio. Con la ayuda del segundo, puede organizar la visualización de imágenes (presentación de diapositivas). Una aplicación típica es el podcasting .

Crítica

Debido a las diferencias en las versiones de ID3v2, muchos reproductores aún no admiten todas las versiones de las etiquetas. El problema es que las diferentes versiones usan diferentes estructuras de datos. Por ejemplo, para extraer datos de los cuadros "TIT2" (con el título de la canción) y "USLT" (con la letra de la canción), se requieren diferentes algoritmos. Otros formatos de etiquetas como APEv2 almacenan datos como pares clave-valor y no tienen este problema.

ID3v2 almacena información sobre datos de audio. Por ejemplo, el cuadro "TLEN" almacena la duración de la canción y el cuadro "AENC" almacena información sobre el método de compresión .

En ID3v2.2 e ID3v2.3, la etiqueta debe colocarse al principio del archivo, lo que facilita la transmisión, pero requiere que se vuelva a escribir todo el archivo cuando cambian los campos de la etiqueta. La versión ID3v2.4 le permite colocar los datos de la etiqueta al final del archivo. Los editores de etiquetas pueden dejar espacio en los campos de etiquetas para evitar que se sobrescriba el archivo si se amplía la etiqueta, pero esta operación no es estándar: los requisitos para las etiquetas varían mucho, especialmente si se adjuntan "APIC" (imágenes asociativas) a la música. .

Implementaciones en desuso

Dado que la mayoría de los archivos contienen versiones anteriores de etiquetas ID3v2, los desarrolladores no tienen prisa por agregar soporte para todos los formatos de etiquetas y todos los tipos de marcos descritos en el estándar ID3v2 a sus productos.

Explorador de Windows

Explorador de Windows[ ¿Qué? ] admite etiquetas de versión ID3v1 e ID3v2.3.

Explorer no puede leer la etiqueta de versión ID3v2.4, y cuando intenta editarla, da un error 0x8007000D.

Explorer lee y escribe etiquetas ID3v1, pero con un giro. Si solo se escribe la etiqueta ID3v1 en el archivo MP3, Explorer la leerá y, al editar, escribirá los datos en ID3v1 y agregará la etiqueta ID3v2.3. No se admite la edición de etiquetas ID3v1. Si el archivo contiene etiquetas tanto ID3v1 como ID3v2.3, Explorer leerá la versión ID3v2.3 y, al editarla, duplicará los datos de ambas etiquetas. Si no hubiera etiquetas en el archivo MP3, Explorer escribirá solo la etiqueta ID3v2.3.

Edición ID3

Hay muchos programas para editar etiquetas ID3. Entre ellos:

Capacidades:

  • editar varios archivos a la vez ("etiquetado por lotes");
  • buscar y reemplazar.

Usar en otros formatos y alternativas

Las etiquetas ID3 se crearon para incluirse en archivos MP3 y MP3Pro , pero también se pueden usar en otros formatos de archivo. AIFF es el único formato que comenzó a usar ampliamente la etiqueta ID3v2. Este formato está basado en RIFF; la etiqueta ID3 se almacena dentro de un "chunk" (trozo) llamado "ID3". WAV (también basado en RIFF) puede incluir una etiqueta ID3, pero esta función no se utiliza. "Broadcast WAV" es el único sistema de etiquetado WAV ampliamente utilizado. Los formatos de Windows Media ( ASF , WMA , WMV ) tienen sus propios formatos de etiquetas, pero también admiten la incrustación de ID3 como atributo [7] . Es posible incluir ID3 en MP4 [8] , pero la mayoría de los programas no lo admiten. Otros formatos basados ​​en contenedores utilizan sus propios sistemas de etiquetado. Por ejemplo , Vorbis usa el comentario de Vorbis y no admite la incrustación de ID3 porque ID3 puede romper la estructura del contenedor.

Véase también

Notas

  1. 1 2 3 El número de pista está escrito en los dos últimos bytes del comentario. Si el comentario tiene más de 28 caracteres, el número de pista no está disponible
  2. 1 2 Para ID3v2.2, ID3v2.3, ID3v2.4
  3. 1 2 Para ID3v2.4
  4. Para ID3v2.2
  5. Para ID3v2.3 e ID3v2.4
  6. Newell, C. "Anexo del marco del capítulo ID3v2" (enlace descendente) . ID3.org ( 2 de diciembre de 2005 ). Consultado el 6 de febrero de 2008. Archivado desde el original el 15 de marzo de 2012. 
  7. "Centro de desarrolladores de Windows Media: compatibilidad con etiquetas ID3" (enlace descendente) . Red de desarrolladores de Microsoft . microsoft _ Consultado el 6 de febrero de 2008. Archivado desde el original el 15 de marzo de 2012. 
  8. La autoridad de registro 'MP4' (enlace descendente) . Consultado el 5 de julio de 2008. Archivado desde el original el 26 de agosto de 2012. 

Enlaces