File: notescale.py

package info (click to toggle)
snack 2.2.10.20090623-dfsg-6
  • links: PTS
  • area: main
  • in suites: stretch
  • size: 3,636 kB
  • ctags: 4,759
  • sloc: ansic: 32,662; sh: 8,558; tcl: 1,086; python: 761; makefile: 575
file content (58 lines) | stat: -rwxr-xr-x 1,155 bytes parent folder | download | duplicates (5)
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#! /usr/bin/env python

import sys
if sys.version_info[0] == 2:
    from Tkinter import *
else:
    from tkinter import *

from tkSnack import *

root = Tkinter.Tk()

initializeSnack(root)
"""AudioControllerSingleton().playLatency(100)"""

def playbeep(freq):
   s.stop()
   filt.configure(freq)
   s.play(filter=filt)

def beepC4():
   playbeep(261.6)

def beepD4():
   playbeep(293.7)

def beepE4():
   playbeep(329.7)

def beepF4():
   playbeep(349.3)

def beepG4():
   playbeep(392.1)

def beepA4():
   playbeep(440.0)

def beepB4():
   playbeep(493.9)

def beepC5():
   playbeep(523.3)

s = Sound()

filt = Filter('generator', 440.0, 30000, 0.0, 'sine', 8000)
        
Button(root, text='C4', command=beepC4).pack(side='left')
Button(root, text='D4', command=beepD4).pack(side='left')
Button(root, text='E4', command=beepE4).pack(side='left')
Button(root, text='F4', command=beepF4).pack(side='left')
Button(root, text='G4', command=beepG4).pack(side='left')
Button(root, text='A4', command=beepA4).pack(side='left')
Button(root, text='B4', command=beepB4).pack(side='left')
Button(root, text='C5', command=beepC5).pack(side='left')

root.mainloop()