From baaecb8b7dca3783f53546b17edf30ac8d41da04 Mon Sep 17 00:00:00 2001 From: Baozhu Zuo Date: Thu, 14 Sep 2017 20:14:10 +0800 Subject: [PATCH] update ac108_asound.state asound.conf --- ac108_asound.state | 719 +-------------------------------------------- asound.conf | 2 +- install.sh | 4 + 3 files changed, 19 insertions(+), 706 deletions(-) diff --git a/ac108_asound.state b/ac108_asound.state index 7b13c1e..d99f487 100644 --- a/ac108_asound.state +++ b/ac108_asound.state @@ -65,698 +65,7 @@ state.ALSA { } } } -state.seeedvoicecard { - control.1 { - iface MIXER - name 'Capture Volume' - value.0 63 - value.1 63 - comment { - access 'read write' - type INTEGER - count 2 - range '0 - 63' - dbmin -1725 - dbmax 3000 - dbvalue.0 3000 - dbvalue.1 3000 - } - } - control.2 { - iface MIXER - name 'Capture Volume ZC Switch' - value.0 0 - value.1 0 - comment { - access 'read write' - type INTEGER - count 2 - range '0 - 1' - } - } - control.3 { - iface MIXER - name 'Capture Switch' - value.0 true - value.1 true - comment { - access 'read write' - type BOOLEAN - count 2 - } - } - control.4 { - iface MIXER - name 'Left Input Boost Mixer LINPUT3 Volume' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -9999999 - dbmax 600 - dbvalue.0 -9999999 - } - } - control.5 { - iface MIXER - name 'Left Input Boost Mixer LINPUT2 Volume' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -9999999 - dbmax 600 - dbvalue.0 -9999999 - } - } - control.6 { - iface MIXER - name 'Right Input Boost Mixer RINPUT3 Volume' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -9999999 - dbmax 600 - dbvalue.0 -9999999 - } - } - control.7 { - iface MIXER - name 'Right Input Boost Mixer RINPUT2 Volume' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -9999999 - dbmax 600 - dbvalue.0 -9999999 - } - } - control.8 { - iface MIXER - name 'Right Input Boost Mixer RINPUT1 Volume' - value 3 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 3' - dbmin 0 - dbmax 2900 - dbvalue.0 2900 - } - } - control.9 { - iface MIXER - name 'Left Input Boost Mixer LINPUT1 Volume' - value 3 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 3' - dbmin 0 - dbmax 2900 - dbvalue.0 2900 - } - } - control.10 { - iface MIXER - name 'Playback Volume' - value.0 255 - value.1 255 - comment { - access 'read write' - type INTEGER - count 2 - range '0 - 255' - dbmin -9999999 - dbmax 0 - dbvalue.0 0 - dbvalue.1 0 - } - } - control.11 { - iface MIXER - name 'Headphone Playback Volume' - value.0 127 - value.1 127 - comment { - access 'read write' - type INTEGER - count 2 - range '0 - 127' - dbmin -9999999 - dbmax 600 - dbvalue.0 600 - dbvalue.1 600 - } - } - control.12 { - iface MIXER - name 'Headphone Playback ZC Switch' - value.0 false - value.1 false - comment { - access 'read write' - type BOOLEAN - count 2 - } - } - control.13 { - iface MIXER - name 'Speaker Playback Volume' - value.0 127 - value.1 127 - comment { - access 'read write' - type INTEGER - count 2 - range '0 - 127' - dbmin -9999999 - dbmax 600 - dbvalue.0 600 - dbvalue.1 600 - } - } - control.14 { - iface MIXER - name 'Speaker Playback ZC Switch' - value.0 false - value.1 false - comment { - access 'read write' - type BOOLEAN - count 2 - } - } - control.15 { - iface MIXER - name 'Speaker DC Volume' - value 4 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 5' - } - } - control.16 { - iface MIXER - name 'Speaker AC Volume' - value 5 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 5' - } - } - control.17 { - iface MIXER - name 'PCM Playback -6dB Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.18 { - iface MIXER - name 'ADC Polarity' - value 'No Inversion' - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 'No Inversion' - item.1 'Left Inverted' - item.2 'Right Inverted' - item.3 'Stereo Inversion' - } - } - control.19 { - iface MIXER - name 'ADC High Pass Filter Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.20 { - iface MIXER - name 'DAC Polarity' - value 'No Inversion' - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 'No Inversion' - item.1 'Left Inverted' - item.2 'Right Inverted' - item.3 'Stereo Inversion' - } - } - control.21 { - iface MIXER - name 'DAC Deemphasis Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.22 { - iface MIXER - name '3D Filter Upper Cut-Off' - value High - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 High - item.1 Low - } - } - control.23 { - iface MIXER - name '3D Filter Lower Cut-Off' - value Low - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 Low - item.1 High - } - } - control.24 { - iface MIXER - name '3D Volume' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 15' - } - } - control.25 { - iface MIXER - name '3D Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.26 { - iface MIXER - name 'ALC Function' - value Off - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 Off - item.1 Right - item.2 Left - item.3 Stereo - } - } - control.27 { - iface MIXER - name 'ALC Max Gain' - value 7 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - } - } - control.28 { - iface MIXER - name 'ALC Target' - value 4 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 15' - } - } - control.29 { - iface MIXER - name 'ALC Min Gain' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - } - } - control.30 { - iface MIXER - name 'ALC Hold Time' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 15' - } - } - control.31 { - iface MIXER - name 'ALC Mode' - value ALC - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 ALC - item.1 Limiter - } - } - control.32 { - iface MIXER - name 'ALC Decay' - value 3 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 15' - } - } - control.33 { - iface MIXER - name 'ALC Attack' - value 2 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 15' - } - } - control.34 { - iface MIXER - name 'Noise Gate Threshold' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 31' - } - } - control.35 { - iface MIXER - name 'Noise Gate Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.36 { - iface MIXER - name 'ADC PCM Capture Volume' - value.0 195 - value.1 195 - comment { - access 'read write' - type INTEGER - count 2 - range '0 - 255' - dbmin -9999999 - dbmax 3000 - dbvalue.0 0 - dbvalue.1 0 - } - } - control.37 { - iface MIXER - name 'Left Output Mixer Boost Bypass Volume' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -2100 - dbmax 0 - dbvalue.0 -2100 - } - } - control.38 { - iface MIXER - name 'Left Output Mixer LINPUT3 Volume' - value 0 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -2100 - dbmax 0 - dbvalue.0 -2100 - } - } - control.39 { - iface MIXER - name 'Right Output Mixer Boost Bypass Volume' - value 5 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -2100 - dbmax 0 - dbvalue.0 -600 - } - } - control.40 { - iface MIXER - name 'Right Output Mixer RINPUT3 Volume' - value 2 - comment { - access 'read write' - type INTEGER - count 1 - range '0 - 7' - dbmin -2100 - dbmax 0 - dbvalue.0 -1500 - } - } - control.41 { - iface MIXER - name 'ADC Data Output Select' - value 'Left Data = Left ADC; Right Data = Right ADC' - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 'Left Data = Left ADC; Right Data = Right ADC' - item.1 'Left Data = Left ADC; Right Data = Left ADC' - item.2 'Left Data = Right ADC; Right Data = Right ADC' - item.3 'Left Data = Right ADC; Right Data = Left ADC' - } - } - control.42 { - iface MIXER - name 'DAC Mono Mix' - value Stereo - comment { - access 'read write' - type ENUMERATED - count 1 - item.0 Stereo - item.1 Mono - } - } - control.43 { - iface MIXER - name 'Left Boost Mixer LINPUT2 Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.44 { - iface MIXER - name 'Left Boost Mixer LINPUT3 Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.45 { - iface MIXER - name 'Left Boost Mixer LINPUT1 Switch' - value true - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.46 { - iface MIXER - name 'Right Boost Mixer RINPUT2 Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.47 { - iface MIXER - name 'Right Boost Mixer RINPUT3 Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.48 { - iface MIXER - name 'Right Boost Mixer RINPUT1 Switch' - value true - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.49 { - iface MIXER - name 'Left Input Mixer Boost Switch' - value true - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.50 { - iface MIXER - name 'Right Input Mixer Boost Switch' - value true - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.51 { - iface MIXER - name 'Left Output Mixer PCM Playback Switch' - value true - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.52 { - iface MIXER - name 'Left Output Mixer LINPUT3 Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.53 { - iface MIXER - name 'Left Output Mixer Boost Bypass Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.54 { - iface MIXER - name 'Right Output Mixer PCM Playback Switch' - value true - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.55 { - iface MIXER - name 'Right Output Mixer RINPUT3 Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.56 { - iface MIXER - name 'Right Output Mixer Boost Bypass Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.57 { - iface MIXER - name 'Mono Output Mixer Left Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } - control.58 { - iface MIXER - name 'Mono Output Mixer Right Switch' - value false - comment { - access 'read write' - type BOOLEAN - count 1 - } - } -} -state.seeedvoicecard4 { +state.seeed4micvoicec { control.1 { iface MIXER name 'OUT1 Mute' @@ -856,7 +165,7 @@ state.seeedvoicecard4 { control.7 { iface MIXER name 'CH1 digital volume' - value 180 + value 181 comment { access 'read write' type INTEGER @@ -864,7 +173,7 @@ state.seeedvoicecard4 { range '0 - 255' dbmin -11925 dbmax 7200 - dbvalue.0 1575 + dbvalue.0 1650 } } control.8 { @@ -884,7 +193,7 @@ state.seeedvoicecard4 { control.9 { iface MIXER name 'CH3 digital volume' - value 180 + value 181 comment { access 'read write' type INTEGER @@ -892,7 +201,7 @@ state.seeedvoicecard4 { range '0 - 255' dbmin -11925 dbmax 7200 - dbvalue.0 1575 + dbvalue.0 1650 } } control.10 { @@ -912,7 +221,7 @@ state.seeedvoicecard4 { control.11 { iface MIXER name 'ADC1 PGA gain' - value 31 + value 27 comment { access 'read write' type INTEGER @@ -920,13 +229,13 @@ state.seeedvoicecard4 { range '0 - 31' dbmin 0 dbmax 3100 - dbvalue.0 3100 + dbvalue.0 2700 } } control.12 { iface MIXER name 'ADC2 PGA gain' - value 31 + value 27 comment { access 'read write' type INTEGER @@ -934,13 +243,13 @@ state.seeedvoicecard4 { range '0 - 31' dbmin 0 dbmax 3100 - dbvalue.0 3100 + dbvalue.0 2700 } } control.13 { iface MIXER name 'ADC3 PGA gain' - value 31 + value 27 comment { access 'read write' type INTEGER @@ -948,13 +257,13 @@ state.seeedvoicecard4 { range '0 - 31' dbmin 0 dbmax 3100 - dbvalue.0 3100 + dbvalue.0 2700 } } control.14 { iface MIXER name 'ADC4 PGA gain' - value 31 + value 27 comment { access 'read write' type INTEGER @@ -962,13 +271,13 @@ state.seeedvoicecard4 { range '0 - 31' dbmin 0 dbmax 3100 - dbvalue.0 3100 + dbvalue.0 2700 } } control.15 { iface MIXER name 'Tx1 Channels' - value '4 channels ' + value '1 channels ' comment { access 'read write' type ENUMERATED diff --git a/asound.conf b/asound.conf index 9c40d17..c696042 100644 --- a/asound.conf +++ b/asound.conf @@ -34,6 +34,6 @@ pcm.array { pcm.ac108 { type ac108 - slavepcm "hw:0,0" + slavepcm "hw:1,0" channels 4 } diff --git a/install.sh b/install.sh index c74ecf3..c386517 100755 --- a/install.sh +++ b/install.sh @@ -78,8 +78,10 @@ has_2mic=$(grep seeed-2mic-voicecard /boot/config.txt) has_4mic=$(grep seeed-2mic-voicecard /boot/config.txt) case "${card}" in "2mic") + echo "cp wm8960_asound.state /var/lib/alsa/asound.state" cp wm8960_asound.state /var/lib/alsa/asound.state if [ "x${has_4mic}" != x ] ; then + echo "has 4mic before, now remove it" sed -i "s/dtoverlay=seeed-4mic-voicecard//g" /boot/config.txt fi grep -q "dtoverlay=seeed-2mic-voicecard" /boot/config.txt || \ @@ -87,8 +89,10 @@ case "${card}" in ;; "4mic") + echo "cp ac108_asound.state /var/lib/alsa/asound.state" cp ac108_asound.state /var/lib/alsa/asound.state if [ "x${has_2mic}" != x ] ; then + echo "has 2mic before, now remove it" sed -i "s/dtoverlay=seeed-2mic-voicecard//g" /boot/config.txt fi grep -q "dtoverlay=seeed-4mic-voicecard" /boot/config.txt || \