Je veux enregistrer le son (voix) en utilisant PortAudio (PyAudio) et émettre l'onde sonore correspondante sur l'écran. Sans espoir comme je suis, je suis incapable d'extraire les informations de fréquence du flux audio afin que je puisse le dessiner en Hz/temps.Comment extraire des informations de fréquence d'un flux audio d'entrée (en utilisant PortAudio)?
Voici un exemple de code snippet qui enregistre et lit l'audio enregistrée pendant cinq secondes, au cas où il aide tout:
p = pyaudio.PyAudio()
chunk = 1024
seconds = 5
stream = p.open(format=pyaudio.paInt16,
channels=1,
rate=44100,
input=True,
output=True)
for i in range(0, 44100/chunk * seconds):
data = stream.read(chunk)
stream.write(data, chunk)
Je souhaite extraire les informations nécessaires à partir des variables ci-dessus « données ». (Ou utiliser une autre approche de haut niveau avec PortAudio ou d'une autre bibliothèque liaisons Python.)
Je serais très reconnaissant pour toute aide! Même des bribes vaguement liées de sagesse d'analyse audio sont appréciées. :)
Donc vous voulez faire un analyseur de spectre? – endolith