-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbinaural_beats.py
34 lines (23 loc) · 1.11 KB
/
binaural_beats.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import json
import IPython.display
import numpy as np
import pyshaman
# Binaural
pyshaman.binaural_beat(left=400, right=420, duration=10)
# Mono
sr = 44100
volume = nk.rescale(nk.signal_simulate(duration=5, sampling_rate=sr, frequency=10))
sound = pyshaman.generate_sound(frequency=[400, 800], duration=5, volume=volume, rate=sr)
volume = nk.rescale(nk.signal_simulate(duration=5, sampling_rate=sr, frequency=5))
sound += pyshaman.generate_sound(frequency=[200], duration=5, volume=volume, rate=sr)
nk.signal_plot(sound)
# IPython.display.Audio(sound, rate=44000) # https://github.com/microsoft/vscode-jupyter/issues/1012
pyshaman.write_wav(sound, filename="test2.wav")
# Stereo
sr = 44100
volume = nk.rescale(nk.signal_simulate(duration=5, sampling_rate=sr, frequency=10))
left = pyshaman.generate_sound(frequency=[1600], duration=5, volume=volume, rate=sr)
volume = nk.rescale(nk.signal_simulate(duration=5, sampling_rate=sr, frequency=2.5))
right = pyshaman.generate_sound(frequency=[200], duration=5, volume=volume, rate=sr)
# nk.signal_plot([left, right])
pyshaman.write_wav(left=left, right=right, filename="test2.wav")