Traitement des données audio à l'aide Transformées de Fourier en Java
Question
Je suis en train de traiter les données audio. Je travaille avec Java. Je l'ai extrait les données audio à un tableau. Maintenant, je passerais N échantillons de données à une fonction qui calcule la transformée de Fourier discrète (ou transformée de Fourier rapide, ce qui est plus efficace). J'ai lu la documentation, mais je suis de plus en plus confus. Ce que je suis en train de calculer le spectre d'amplitude (| X (k) |). Quelqu'un peut-il m'aider? Merci
La solution
Richard G. Baldwin a un certain nombre de très bons articles sur transformée de Fourier rapide des algorithmes en Java sur le site Developer.com. En particulier, les articles suivants devraient se révéler utiles:
Fun avec Java, Comprendre la transformée de Fourier rapide (FFT) algorithme http://www.developer.com/java/other/article.php/3457251/Fun-with-Java-Understanding-the-Fast-Fourier-Transform-FFT-Algorithm.htm
Analyse du spectre en utilisant Java, la fréquence d'échantillonnage, fréquence de pliage, et l'algorithme FFT http://www.developer.com/java/other/article.php/3380031/Spectrum-Analysis-using-Java-Sampling-Frequency-Folding-Frequency-and-the-FFT-Algorithm .htm
Autres conseils
Si vous voulez seulement Magnitude du spectre audio, optez pour API jAudio .
Il fournit la classe pour le calcul MS.
Le lien de @Sher est maintenant rompu. Il y a une API pour le même but http://code.google.com/p/musicg/