Add 'piano.py'

This commit is contained in:
Anthony Wang 2022-10-03 03:08:56 +00:00
parent 7746413302
commit 58f57624d1
No known key found for this signature in database
GPG Key ID: 1DDC6BC38786C595
1 changed files with 34 additions and 0 deletions

34
piano.py Normal file
View File

@ -0,0 +1,34 @@
import os
import subprocess
from sshkeyboard import listen_keyboard
p = ''
notes = {
'a': 440.00,
'w': 466.16,
's': 493.88,
'd': 523.25,
'r': 554.37,
'f': 587.33,
't': 622.25,
'g': 659.25,
'h': 698.46,
'u': 739.99,
'j': 783.99,
'i': 830.61,
'k': 880.00,
'o': 932.33,
'l': 987.77,
';': 1046.50,
'[': 1108.73,
'\'': 1174.66
}
def press(key):
global p
p = subprocess.Popen(['beep', '-f', str(notes[key]), '-l', '100000'])
def release(key):
os.kill(p.pid, 15)
listen_keyboard(on_press=press, on_release=release)