Commit | Line | Data |
---|---|---|
d06e7260 SK |
1 | #! /usr/bin/awk -f |
2 | ||
75b23ff8 SK |
3 | BEGIN { |
4 | OFS = msg_fs ? msg_fs : "|" | |
5 | Kfs = key_fs ? key_fs : ":" | |
6 | } | |
7 | ||
d06e7260 SK |
8 | /^Sink \#[0-9]+$/ { |
9 | sub("^#", "", $2) | |
10 | sink = $2 | |
11 | next | |
12 | } | |
13 | ||
14 | /\tState:/ { | |
15 | state[sink] = $2 | |
16 | next | |
17 | } | |
18 | ||
19 | /\tMute:/ { | |
20 | mute[sink] = $2 | |
21 | next | |
22 | } | |
23 | ||
24 | # Volume: front-left: 45732 / 70% / -9.38 dB, front-right: 45732 / 70% / -9.38 dB | |
25 | /\tVolume:/ { | |
26 | delete vol_parts | |
27 | delete left_parts | |
28 | delete right_parts | |
29 | sub("^\t+Volume: +", "") | |
30 | split($0, vol_parts, ", +") | |
31 | sub("^front-left: +", "", vol_parts[1]) | |
32 | sub("^front-right: +", "", vol_parts[2]) | |
33 | split(vol_parts[1], left_parts, " +/ +") | |
34 | split(vol_parts[2], right_parts, " +/ +") | |
35 | vol_left[sink] = left_parts[2] | |
36 | vol_right[sink] = right_parts[2] | |
37 | next | |
38 | } | |
39 | ||
40 | END { | |
41 | for (sink in state) { | |
75b23ff8 SK |
42 | print("state" Kfs sink, state[sink]) |
43 | print("mute" Kfs sink, mute[sink]) | |
44 | print("vol_left" Kfs sink, vol_left[sink]) | |
45 | print("vol_right" Kfs sink, vol_right[sink]) | |
d06e7260 SK |
46 | } |
47 | } |