formato de datos de sonido

What is the low level actual format of sound data when read from a stream in Java? For example, use the following dataline with 44.1khz sample rate, 16 bit sample depth, 2 channels, signed data, bigEndian format.

TargetDataLine tdLine = new TargetDataLine(new AudioFormat(44100,16,2,true,true));

Entiendo que está muestreando 44100 veces por segundo y cada muestra es de 16 bits. Lo que no entiendo es qué representan los 16 bits, o cada uno de los 16 bits. Además, ¿cada canal tiene su propia muestra de 16 bits?

preguntado el 31 de julio de 12 a las 13:07

Los 16 bits forman un número, que es la amplitud de la onda de sonido en el momento de esa muestra discreta, medida finalmente en un valor entre -1 y 1. Pero, ¿por qué es importante el formato de datos subyacente? -

I am wanting to be able to read thru the data and pick out instances of a certain frequency. -

Then you need to learn alot more than the digital audio basics. :) To expand on Respuesta de @IronMensan, las frecuencias contenidas en una parte del sonido muestreado son las longitudes de onda de todas las ondas de sonido que produce el diafragma cuando se mueve. esto es computable, pero complejo, y no una ciencia exacta. -

2 Respuestas

Primero comenzaré con su última pregunta, sí, cada canal tiene su propia muestra de 16 bits para cada una de las 44100 muestras por segundo.

En cuanto a su primera pregunta, debe conocer el hardware dentro de un altavoz. Hay un diafragma y un electroimán. El diafragma es la gran parte redonda que puedes ver si quitas la tapa. Cuando el electroimán está cargado, tira o empuja una placa ferrosa que está unida al diafragma, lo que hace que se mueva. Ese movimiento se convierte en sonido.

El valor de cada muestra es la cantidad de electricidad que se envía al altavoz. Entonces, cuando una muestra es cero, el diafragma está en reposo. Cuando es positivo, se empuja hacia un lado y cuando es negativo, hacia el otro lado. Cuanto más grande es la muestra, más se mueve el diafragma.

Si graficas todas las muestras en tus datos, tendrías un gráfico del movimiento del altavoz a lo largo del tiempo.

Respondido 31 Jul 12, 13:07

Deberías aprender sobre el Conceptos básicos de audio digital (Wiki le brinda un comienzo y muchos enlaces con lecturas adicionales). Después Frecuencia de muestreo de 44.1 khz, profundidad de muestreo de 16 bits, 2 canales, datos firmados, formato bigEndian debería decirle inmediatamente el formato de bajo nivel.

In this case it means 44100 samples/sec, 16 bit firmado enteros que representan cada muestra y finalmente Endianess determina en qué orden se colocan los bytes de un int de 16 bits en el flujo (big endian = primero el byte más significativo).

Respondido 31 Jul 12, 13:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.