summaryrefslogtreecommitdiff
path: root/services/Cava.qml
blob: 3fa5083273b4b8c19b8e0767bc3dade1c51a82b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
pragma Singleton

import "root:/config"
import Quickshell
import Quickshell.Io

Singleton {
    id: root

    property list<int> values

    Process {
        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`]
        stdout: SplitParser {
            onRead: data => root.values = data.slice(0, -1).split(";").map(v => parseInt(v, 10))
        }
    }
}