Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pyaudio
- import wave
- import struct
- import numpy as np
- import time
- import itertools
- CHUNK = 512
- FORMAT = pyaudio.paInt16
- CHANNELS = 1
- RATE = 44100
- num_chunks=1
- freqs=np.fft.fftfreq(CHUNK*num_chunks)
- print(len(freqs))
- p = pyaudio.PyAudio()
- stream = p.open(format=FORMAT,
- channels=CHANNELS,
- rate=RATE,
- input=True,
- frames_per_buffer=CHUNK)
- while True:
- data = stream.read(CHUNK)
- data=struct.unpack('%dh'%CHUNK, data)
- w = np.fft.fft(data)
- amp=np.array([np.absolute(x) for x in w])
- idx=np.argmax(amp)
- max_freq=freqs[idx]
- freq_in_hertz=abs(max_freq*RATE)
- print(freq_in_hertz)
Advertisement
Add Comment
Please, Sign In to add comment