aboutsummaryrefslogtreecommitdiff
path: root/Sender.py
diff options
context:
space:
mode:
authorsotech117 <michael_foiani@brown.edu>2023-12-14 18:15:07 -0500
committersotech117 <michael_foiani@brown.edu>2023-12-14 18:15:10 -0500
commit3ca213d829b6c56beb764eae430a78736d73eeca (patch)
tree29a8e404e5f33ac4ac4a56f89cc81cf03bcfb1c2 /Sender.py
parent25aa2dd624776f460c7424431b62958f9c524e3d (diff)
add functionality to restrict range and determine max 8 frequencies within that range
Diffstat (limited to 'Sender.py')
-rw-r--r--Sender.py5
1 files changed, 2 insertions, 3 deletions
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))