glyph for return
[naja.git] / data / sounds / __init__.py
1 import itertools
2 import random
3
4 from naja.gen_sound import Chunk, scale
5
6
7 def grind():
8     yield Chunk('sine', freq=200, length=0.01, volume=25)
9     tones = []
10     for freq in (200, 300, 400, 700, 240, 340, 600):
11         tones.append(Chunk('sine', freq=freq, length=0.005, volume=25))
12     for i in range(75):
13         yield random.choice(tones)
14     yield Chunk('sine', freq=200, length=0.01, volume=25)
15
16
17 SOUNDS = {
18     'chirp': scale(1650, 1449, -200, length=0.05, volume=50),
19     'error': Chunk('sine', freq=1000, length=0.25),
20     'grind': grind(),
21     'shutdown': scale(1600, 399, -400, length=0.1),
22     'silence': Chunk('silence', length=2),
23     'startup': scale(400, 1601, 400, length=0.1),
24     'zoop': scale(1000, 1600, 40, length=0.005, volume=50),
25     'zzzzz': Chunk('sine', freq=200, length=0.25, volume=50),
26     'yipee': itertools.chain(
27         scale(1400, 1801, 100, length=0.05, volume=50),
28         scale(1600, 1801, 100, length=0.05, volume=50),
29     ),
30     'awwww': (
31         Chunk('sine', freq=800, length=0.1, volume=50),
32         Chunk('sine', freq=500, length=0.2, volume=50),
33     ),
34     'aha': (
35         Chunk('sine', freq=2000, length=0.1, volume=50),
36         Chunk('sine', freq=2200, length=0.05, volume=50),
37     ),
38 }