From 3ca213d829b6c56beb764eae430a78736d73eeca Mon Sep 17 00:00:00 2001 From: sotech117 Date: Thu, 14 Dec 2023 18:15:07 -0500 Subject: add functionality to restrict range and determine max 8 frequencies within that range --- Sender.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'Sender.py') diff --git a/Sender.py b/Sender.py index ca0183e..2a125e9 100644 --- a/Sender.py +++ b/Sender.py @@ -12,11 +12,9 @@ Play a single frequency. :param samplingRate: Sampling rate in Hz. """ def play_frequency(freq, amplitude, duration=1.0, samplingRate=44100, p=None): - # Generate sample for the given frequency as a float32 array samples = (amplitude * np.sin(2*np.pi*np.arange(samplingRate*duration)*freq/samplingRate)).astype(np.float32).tobytes() - # Open stream stream = p.open(format=pyaudio.paFloat32, channels=1, @@ -29,7 +27,7 @@ def play_frequency(freq, amplitude, duration=1.0, samplingRate=44100, p=None): stream.stop_stream() stream.close() - # p.terminate() + p.terminate() # def play_frequency(freq, amplitude, duration=1.0, samplingRate=44100): @@ -69,6 +67,7 @@ Use threads to play multiple frequencies simultaneously. """ def play_frequencies_separately(freq_map, duration=1.0, samplingRate=44100): p = pyaudio.PyAudio() + threads = [] for freq, amplitude in freq_map.items(): thread = threading.Thread(target=play_frequency, args=(freq, amplitude, duration, samplingRate, p)) -- cgit v1.2.3-70-g09d2