-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest.py
54 lines (40 loc) · 1.38 KB
/
test.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
48
49
50
51
52
53
# Francesco Pio Nocerino
# loSpaccaBit
# Controllo del volume con sensore neurosky
from module.NeuroPy import NeuroPy
import time
import os
from tqdm import tqdm
object1 = NeuroPy("porta_com", 115200, '7d55')
volume = [50, 50, 50, 50, 50]
# Inizializza la barra di avanzamento per il volume
volume_bar = tqdm(total=100, desc="Volume", position=0, leave=True)
def attention_callback(value):
# Regola il volume in base al valore di attenzione
os.system(f"osascript -e 'set volume output volume {value}'")
def meditation_callback(value):
# Aggiorna la lista del volume e calcola la media
volume.append(value)
volume.pop(0)
avg_value = sum(volume) / len(volume)
# Regola il volume in base alla media dei valori di meditazione
os.system(f"osascript -e 'set volume output volume {avg_value}'")
# Aggiorna la barra di avanzamento del volume
volume_bar.update(avg_value - volume_bar.n)
# Imposta i callback
object1.setCallBack("attention", attention_callback)
object1.setCallBack("meditation", meditation_callback)
# Avvia
object1.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
print("Programma interrotto dall'utente.")
except Exception as e:
print(f"Errore durante l'esecuzione del programma: {e}")
finally:
# Chiudi la barra di avanzamento
volume_bar.close()
print("Chiusura del programma.")
object1.stop()