-
Notifications
You must be signed in to change notification settings - Fork 0
/
visualize.py
47 lines (36 loc) · 1.16 KB
/
visualize.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
35
36
37
38
39
40
41
42
43
44
45
46
47
import json
from logzero import logger
import os
import sys
from visualizers.highlevel import (
FrequencyVisualizer,
FrequencyBandsVisualizer,
)
from visualizers.leds import ColorFactory
def main():
config = json.loads(os.environ["LIGHT_ORGAN_CONFIG"])
logger.setLevel(config["log_level"])
logger.info("Libraries loaded")
visualizer = FrequencyVisualizer(
led_count=config["led_count"],
led_offset=config["led_offset"],
sample_rate=config["sample_rate"],
buffer_size=config["buffer_size"],
chunk_size=config["chunk_size"],
rgb_color_factory=ColorFactory.RAINBOW,
)
## visualizer = FrequencyBandsVisualizer(
## led_count=config["led_count"],
## sample_rate=config["sample_rate"],
## buffer_size=config["buffer_size"],
## chunk_size=config["chunk_size"],
## )
# Signal run.py that the audio capturing can start
message = {"status": "INITIALIZED", "pid": os.getpid()}
print(json.dumps(message), file=sys.stdout)
try:
visualizer.run()
except KeyboardInterrupt:
visualizer.turn_off_leds()
if __name__ == "__main__":
main()