blob: 28b06cc0413eaf72e3ee6dde08c1519c3df33cc5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#!/usr/bin/perl -pi
# state machine:
if (/\s*control\./) {
($min, $max) = (0, 0);
} elsif (/\s*name '/) {
# skip masks and blacklist sb live and the like:
$ignore = /\s*name '.*(3D Control|AC97 Playback Volume|Audigy Analog\/Digital Output Jack|External Amplifier Power Down|Exchange DAC|IEC958 input monitor|IEC958 Capture Monitor|IEC958 Playback Switch|mask|Mic Boost \(\+20dB\)|Mic Playback Switch|Output Jack|Surround down mix)/i;
} elsif (!$ignore) {
if (/s*comment.range '(\d+) - (\d+)'/) {
($min, $max) = ($1, $2);
} elsif (/s*value/) {
# enable switches:
s/(value\w*\S*)\s* false/\1 true/;
# set volume to 80%:
my $val = int($max*0.8);
s/(value\w*\S*)\s* \d+/\1 $val/;
}
}
|