Formato de archivo Au
El formato de archivo Au es un formato de archivo de audio simple presentado por Sun Microsystems. El formato era común en los sistemas NeXT y en las primeras páginas web. Originalmente no tenía encabezado, era simplemente datos codificados con ley μ de 8 bits a una frecuencia de muestreo de 8000 Hz. El hardware de otros proveedores a menudo usaba frecuencias de muestreo de hasta 8192 Hz, a menudo múltiplos enteros de frecuencias de señal de reloj de video. Los archivos más nuevos tienen un encabezado que consta de seis palabras de 32 bits sin firmar, un fragmento de información opcional que siempre tiene un tamaño distinto de cero y luego los datos (en formato big endian).
Aunque el formato ahora es compatible con muchos formatos de codificación de audio, sigue asociado con la codificación logarítmica de ley μ. Esta codificación era nativa del hardware SPARCstation 1, donde SunOS expuso la codificación a los programas de aplicación a través de la interfaz /dev/audio. Esta codificación e interfaz se convirtió en un estándar de facto para el sonido Unix.
Nuevo formato
Todos los campos se almacenan en formato big-endian, incluidos los datos de muestra.
32 bit word (unsigned) | sobre el terreno | Descripción |
---|---|---|
0 | Número de magia | El valor 0x2e736e64 (cuatro caracteres ASCII ".snd") |
1 | offset de datos | El offset a los datos in bytes. (En la versión anterior del Sol, esto tenía que ser un múltiple de 8.) El número mínimo válido es 28 (decimal), ya que es la longitud del encabezado (seis palabras de 32 bits) más un tamaño mínimo de anotación (4 bytes, otra palabra de 32 bits). |
2 | tamaño de los datos | Tamaño de datos en bytes. Si es desconocido, el valor 0xffffff debería usarse. |
3 | Codificación | Formato de codificación de datos:
|
4 | Tasa de muestreo | Número de muestras/segundo, por ejemplo, 8000 |
5 | Canales | El número de canales entrelazados, por ejemplo, 1 para mono, 2 para estéreo; más canales posibles, pero no pueden ser apoyados por todos los lectores. |
6 | – | Anotación opcional o cadena de descripción, NULL-terminated. Un mínimo de 4 bytes debe ser almacenado incluso si no se usa. (En la versión anterior del Sol, su longitud tenía que ser un no cero de 8 bytes.) |
El tipo de codificación depende del valor de la "codificación" campo (palabra 3 del encabezado). Los formatos 2 a 7 son PCM lineales sin comprimir, por lo tanto, técnicamente sin pérdidas (aunque no necesariamente libres de errores de cuantificación, especialmente en formato de 8 bits). Los formatos 1 y 27 son ley μ y ley A, respectivamente, ambas representaciones logarítmicas de expansión de PCM y posiblemente con pérdida, ya que empaquetan lo que de otro modo serían casi 16 bits de rango dinámico en 8 bits de datos codificados, aunque esto se logra por una respuesta dinámica alterada y no se 'desecha' ningún dato. Los formatos 23 a 26 son ADPCM, que es una forma temprana de compresión con pérdida, por lo general, pero no siempre, con 4 bits de datos codificados por muestra de audio (para una eficiencia de 4:1 con entrada de 16 bits, o 2:1 con 8 bits; equivalente a, por ejemplo, codificar MP3 con calidad de CD a una velocidad de 352 kbit utilizando un codificador de baja calidad). Varios de los otros son comandos o datos DSP, diseñados para ser procesados por el software NeXT Music Kit.
Nota: los formatos PCM se codifican como datos firmados (a diferencia de los no firmados).
Después de la estructura del encabezado hay un campo de anotación de longitud variable. El contenido de este campo no está definido actualmente, excepto que su longitud debe ser un mínimo de 4 y debe ser una cadena terminada en NULL. (En la versión anterior de Sun, su longitud tenía que ser un múltiplo de 8 bytes distinto de cero). El segmento de datos de audio comienza inmediatamente después del campo de anotación. Los datos de audio se codifican en el formato identificado por el encabezado del archivo. La implementación actual solo admite un único segmento de datos de audio por archivo. Actualmente, la mayoría de las aplicaciones de audio ignoran el campo de anotación de longitud variable.
Contenido relacionado
Jeff minter
Sistemas de red Xerox
Decano kamen