summaryrefslogtreecommitdiff
path: root/services/Cava.qml
diff options
context:
space:
mode:
Diffstat (limited to 'services/Cava.qml')
-rw-r--r--services/Cava.qml17
1 files changed, 15 insertions, 2 deletions
diff --git a/services/Cava.qml b/services/Cava.qml
index 5053984..e7d3a63 100644
--- a/services/Cava.qml
+++ b/services/Cava.qml
@@ -3,16 +3,29 @@ pragma Singleton
import "root:/config"
import Quickshell
import Quickshell.Io
+import QtQuick
Singleton {
id: root
- property list<int> values
+ property list<int> values: Array(Config.dashboard.visualiserBars)
property int refCount
+ Connections {
+ target: Config.dashboard
+
+ function onVisualiserBarsChanged() {
+ root.values = Array(Config.dashboard.visualiserBars);
+ cavaProc.running = false;
+ cavaProc.running = true;
+ }
+ }
+
Process {
+ id: cavaProc
+
running: true
- command: ["sh", "-c", `printf '[general]\nframerate=60\nbars=${Config.dashboard.visualiserBars}\n[output]\nchannels=mono\nmethod=raw\nraw_target=/dev/stdout\ndata_format=ascii\nascii_max_range=100' | cava -p /dev/stdin`]
+ command: ["sh", "-c", `printf '[general]\nframerate=60\nbars=${Config.dashboard.visualiserBars}\nsleep_timer=3\n[output]\nchannels=mono\nmethod=raw\nraw_target=/dev/stdout\ndata_format=ascii\nascii_max_range=100' | cava -p /dev/stdin`]
stdout: SplitParser {
onRead: data => {
if (root.refCount)