Procesamiento de datos de audio utilizando las transformadas de Fourier en Java
Pregunta
Estoy tratando de procesar datos de audio. Estoy trabajando con Java. He extraído los datos de audio en una matriz. Ahora debería pasar muestras de datos de N a una función que calcula la transformada de Fourier discreta (o transformada rápida de Fourier, que es más eficiente). He leído la documentación, pero me estoy haciendo más y más confuso. Lo que estoy tratando de calcular es el espectro de magnitud (| X (k) |). ¿Alguien puede ayudarme? Gracias
Solución
Richard G. Baldwin tiene una serie de artículos muy buenos sobre Fast Fourier Transform algoritmos en Java en el sitio web Developer.com. En particular, los siguientes artículos deberían resultar útiles:
Diversión con Java, Comprensión de la Transformada Rápida de Fourier (FFT) http://www.developer.com/java/other/article.php/3457251/Fun-with-Java-Understanding-the-Fast-Fourier-Transform-FFT-Algorithm.htm
Análisis del espectro usando Java, frecuencia de muestreo, frecuencia plegable, y la FFT algoritmo http://www.developer.com/java/other/article.php/3380031/Spectrum-Analysis-using-Java-Sampling-Frequency-Folding-Frequency-and-the-FFT-Algorithm .htm
Otros consejos
Si sólo desea magnitud del espectro de audio, vaya para jAudio API .
Proporciona la clase de cálculo de MS.
El enlace desde @Sher se rompe ahora. Existe una API para el mismo propósito http://code.google.com/p/musicg/