summaryrefslogtreecommitdiffstats
path: root/move/tree/alsa_default.pl
blob: 0ad89c2640a89576d4d47f997476e3d9f9c8769f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/perl

# state machine:
if (/\s*control\./) {
    ($min, $max) = (0, 0);
} elsif (/\s*name '/) {
    # skip masks
    $ignore = /\s*name '.*(3D Control|mask|Exchange DAC|Output Jack)/;
} elsif (!$ignore) {
    if (/s*comment.range '(\d+) - (\d+)'/) {
        ($min, $max) = ($1, $2);
    } elsif (/s*value/) {
        # enable switches (we should really blacklist sb live and the like):
        s/(value\w*\S*)\s* false/\1 true/;
        # set volume to 67%:
        my $val = int($max*0.6);
        s/(value\w*\S*)\s* 0/\1 $val/
    }
}