Je comprends les concepts généraux pour cela, mais je suis très nouveau pour la programmation graphique Java.visualiseur de musique simple
L'idée est la suivante:
1. Récupérez les données d'octets d'un morceau et stockez-les dans un tableau d'octets.
2. Prenez un petit morceau de données d'octets, effectuez une FFT et obtenez une sorte de données utiles (différentes choses que vous pouvez faire une fois la FFT effectuée).
3. Envoyez ces données traitées à une fonction graphique qui l'utilisera d'une manière ou d'une autre pour toute visualisation active.
J'ai du mal à trouver comment faire 2 et 3 en temps réel. Je veux que les données traitées, la chanson jouée, et les données traitées influençant la fonction graphique dessinant actuellement tout en même temps. Je comprends comment faire ces choses séparément, mais je n'arrive pas à comprendre comment mettre tout cela ensemble.
Je ne comprends pas très bien pourquoi vous devez lire en avance. Si vous calculez une FFT de 2048 points à une fréquence d'échantillonnage de 44,1 kHz, le centre sera retardé de seulement 23 millisecondes, ce qui est inférieur à 1 image à 30 fps. Ou s'agit-il plus d'un problème de temps de calcul que d'un problème théorique? – Justin
Temps de calcul; même une analyse FT rapide est un investissement informatique important. Vous pouvez le simplifier quelque peu en réduisant le nombre de bandes de fréquences à rechercher, mais chaque bande implique essentiellement le calcul d'une intégrale de la forme d'onde par rapport à une représentation sinusoïdale d'une onde à cette fréquence centrale. – KeithS