PDA

View Full Version : PiCorePlayer 3.11 with 4 instances squeezeLite, LogiLink 7.1 and equalizer



papa_arrugada
2017-04-21, 08:06
Hi all,
I am new here in this forum and I have searched many many times.
I have now running a piCorePlayer with for instances and a suitable /etc/asound.conf to switch from one player to another with a logilink 7.1USB soundcard.
My outputs have names stereofront, stereocenter, stereosurround and stereoback.

Now a want to use the equalizer and I have searched for a solution and have read ALSA docs.
After installing equalizer over the web frontend in piCorePlayer the output of my 1st instance is fixed to "equal".

Therefore I have extended my /etc/asound.conf to the following, but I can hear no sound.
Can anyone help me with the settings?

################################################## #######################
## stereofront = the FRONT labeled green jack
## stereosurround = the SURROUND labeled black jack
## stereocenter = the CENTER / BASS labeled yellow jack
## stereoback = the BACK labeled black jack
## stereoall = all stereo outputs
##
## for up to eight mono output channels use:
##
## monofrontl = the FRONT labeled green jack - tip
## monofrontr = the FRONT labeled green jack - ring
## monosurroundl = the SUROUND labeled black jack - tip
## monosurroundr = the SUROUND labeled black jack - ring
## monocenterl = the CENTER / BASS labeled yellow jack - tip
## monocenterr = the CENTER / BASS labeled yellow jack - ring
## monobackl = the BACK labeled black jack - tip
## monobackr = the BACK labeled black jack - ring
################################################## #######################

pcm.logilink { # alias for our sound card
type hw # must be hw in our case
card 1 # check your correct card number by typing
device 0 # 'aplay -l' in your terminal
} # the 1st usb card on the Raspi shows as
# card 1: Device [USB Sound Device], device 0: USB Audio [USB Audio]

ctl.logilink {
type hw
card 1
device 0
}

pcm.dmixer {
type dmix
ipc_key 1024 # must be unique number on your system
ipc_perm 0666 # neccesary for normal user to have access
slave.pcm "logilink"
slave {
period_time 0
period_size 1024
buffer_size 4096
rate 44100
channels 8
}
bindings {
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
}

}

pcm.!default {
type plug
slave.pcm "dmixer"
}

ctl.equal {
type equal
}

pcm.equalizer {
type equal
slave.pcm "stereofront"
}

pcm.equal {
type plug
slave.pcm "equalizer"
}

pcm.stereofront {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1
ttable.1.1 1
}

pcm.stereocenter {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.2 1
ttable.1.3 1
}

pcm.stereoback {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.4 1
ttable.1.5 1
}

pcm.stereosurround {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.6 1
ttable.1.7 1
}

pcm.stereoall {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1 # input left and right to all 4 l+r outputs
ttable.1.1 1
ttable.0.2 1
ttable.1.3 1
ttable.0.4 1
ttable.1.5 1
ttable.0.6 1
ttable.1.7 1
}
pcm.monofrontl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1 # in-channel 0, out-channel 0, 100% volume
ttable.1.0 1 # in-channel 1, out-channel 0, 100% volume
}

pcm.monofrontr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.1 1
ttable.1.1 1
}

pcm.monocenterl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.2 1
ttable.1.2 1
}

pcm.monocenterr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.3 1
ttable.1.3 1
}


pcm.monobackl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.4 1
ttable.1.4 1
}

pcm.monobackr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.5 1
ttable.1.5 1
}

pcm.monosurroundl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.6 1
ttable.1.6 1
}

pcm.monosurroundr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.7 1
ttable.1.7 1
}

papa_arrugada
2017-04-21, 08:08
I want through the equalizer to the output stereofront.

sudo alsamixer -D equal
shows the equalizer.

Greg Erskine
2017-04-21, 14:09
Hi papa_arrugada,

Looks like you know more about ALSA than I do. :D

Here is the standard asound.conf. You need the ALSA EQ stuff in yours to make it work. I assume you have loaded the "ALSA 10 band Equalizer" on the [Tweaks] page.



# default - Generated by piCorePlayer
pcm.!default {
type plug
slave.pcm "hw:0,0"
}

#---ALSA EQ Below--------
ctl.equal {
type equal;
controls "/home/tc/.alsaequal.bin"
library "/usr/local/lib/ladspa/caps.so"
}

pcm.plugequal {
type equal;
slave.pcm "plughw:1,0";
controls "/home/tc/.alsaequal.bin"
library "/usr/local/lib/ladspa/caps.so"
}

pcm.equal {
type plug;
slave.pcm plugequal;
}


regards
Greg

papa_arrugada
2017-04-22, 05:50
Hi Greg,

thank you for your answer.
Up to now I don't know how the both lines with "controls" and "library" are working.

I have now an equalizer running. Wow!. What a sound difference. I use only 2 satellite speakers without subwoofer.
Between the equal (output) and the stereofront I have included a part for equalizer.

ctl.equal {
type equal
}

pcm.equalizerFront {
type equal
slave.pcm "stereofront"
}

pcm.equal {
type plug
slave.pcm "equalizerFront"
}

pcm.stereofront {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1
ttable.1.1 1
}


Over the web page (tweaks tab) and "audio tweaks" ALSA 19 band equalizer and configure button I can see the 10 frequencies of the equalizer and I can change the sound of output stereofront.
Additionally I have extended the file /home/tc/.alsaequal.presets with one line of my own settings fr JBL speakers. And I can select the new preset "JBL" the change the sound.

Ok, I now can change the sound of one output with equalizer.

My question now is: Can I do this for all 4 outputs independently?
I can add 3 more equalizers in asound.conf, but I don't know If this works.
And I am searching for the place from where the setting of the web page is loaded and stored to ALSA.

My goal is to have different settings for test over web page and use these for the 4 outputs.
But I don't know if this works.

papa_arrugada
2017-05-01, 10:50
Hello again,

I have success to run the 4 desired equalizers with seperate settings. The idea is to have 4 independent ".alsaequal.bin" in /home/tc directory and control them in the /etc/asound.conf.
After changing the /etc/asound we can open the 1st mixer with "sudo alsamixer -D equalizerFront" and change the sound settings. After ESC the belonging /home/tc.alsaequalFront.bin" is set.
Then we can do the same with the following mixers.
"sudo alsamixer -D equalizerSurround"
"sudo alsamixer -D equalizerCenter"
"sudo alsamixer -D equalizerBack"

and at the end we backup this with
"sudo filetool.sh -b"
and after restart we have the same diffeent sounds as before.

I hope this helps anyone to wish tuning the sound for different loudspeakers.

The /etc/asound.conf:





################################################## #######################
## CUSTOM ASOUND.CONF by mfd https://knx-user-forum.de/member/7968-mfd
################################################## #######################
## Channel splitting your UA0099 USB sound card to get up to four
## independent stereo outputs (...and more )
################################################## #######################
## stereofront = the FRONT labeled green jack
## stereosurround = the SURROUND labeled black jack
## stereocenter = the CENTER / BASS labeled yellow jack
## stereoback = the BACK labeled black jack
## stereoall = all stereo outputs
##
## for up to eight mono output channels use:
##
## monofrontl = the FRONT labeled green jack - tip
## monofrontr = the FRONT labeled green jack - ring
## monosurroundl = the SUROUND labeled black jack - tip
## monosurroundr = the SUROUND labeled black jack - ring
## monocenterl = the CENTER / BASS labeled yellow jack - tip
## monocenterr = the CENTER / BASS labeled yellow jack - ring
## monobackl = the BACK labeled black jack - tip
## monobackr = the BACK labeled black jack - ring
################################################## #######################


################################################## #######################
## labels and colors could be different for differnt vendors or
## versions of the device (Logilink, Sewell, Sweex, ...)
################################################## #######################
## put this file into your /ect/asound.conf
################################################## #######################

pcm.logilink { # alias for our sound card
type hw # must be hw in our case
card 1 # check your correct card number by typing
device 0 # 'aplay -l' in your terminal
} # the 1st usb card on the Raspi shows as
# card 1: Device [USB Sound Device], device 0: USB Audio [USB Audio]

ctl.logilink {
type hw
card 1
device 0
}

pcm.dmixer {
type dmix
ipc_key 1024 # must be unique number on your system
ipc_perm 0666 # neccesary for normal user to have access
slave.pcm "logilink"
slave {
period_time 0
period_size 1024
buffer_size 4096
rate 44100
channels 8
}
bindings {
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
}

}

pcm.!default {
type plug
slave.pcm "dmixer"
}

ctl.equal {
controls "/home/tc/.alsaequal.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equal {
type plug
slave.pcm "equalizerFront"
}

ctl.equalizerFront {
controls "/home/tc/.alsaequalFront.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerFront {
type equal
controls "/home/tc/.alsaequalFront.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereofront"
}

ctl.equalizerCenter {
controls "/home/tc/.alsaequalCenter.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerCenter {
type equal
controls "/home/tc/.alsaequalCenter.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereocenter"
}

ctl.equalizerBack {
controls "/home/tc/.alsaequalBack.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerBack {
type equal
controls "/home/tc/.alsaequalBack.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereoback"
}

ctl.equalizerSurround {
controls "/home/tc/.alsaequalSurround.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerSurround {
type equal
controls "/home/tc/.alsaequalSurround.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereosurround"
}

pcm.stereofront {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1
ttable.1.1 1
}

pcm.stereocenter {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.2 1
ttable.1.3 1
}

pcm.stereoback {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.4 1
ttable.1.5 1
}

pcm.stereosurround {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.6 1
ttable.1.7 1
}

pcm.stereoall {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1 # input left and right to all 4 l+r outputs
ttable.1.1 1
ttable.0.2 1
ttable.1.3 1
ttable.0.4 1
ttable.1.5 1
ttable.0.6 1
ttable.1.7 1
}
pcm.monofrontl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1 # in-channel 0, out-channel 0, 100% volume
ttable.1.0 1 # in-channel 1, out-channel 0, 100% volume
}

pcm.monofrontr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.1 1
ttable.1.1 1
}

pcm.monocenterl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.2 1
ttable.1.2 1
}

pcm.monocenterr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.3 1
ttable.1.3 1
}


pcm.monobackl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.4 1
ttable.1.4 1
}

pcm.monobackr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.5 1
ttable.1.5 1
}

pcm.monosurroundl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.6 1
ttable.1.6 1
}

pcm.monosurroundr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.7 1
ttable.1.7 1
}

papa_arrugada
2017-09-10, 11:48
I have to correct the asound.conf file, because I have to insert the "plug plugin" for center, back and surround in order to reach the devices from the instances from piCorePlayer.
Three additional 3 lines in piCorePlayer tweaks tabs are:

/usr/local/bin/squeezelite -n 'Wohnzimmer' -o surround -a 80:::0: -m ab:cd:ef:12:34:61 -z
/usr/local/bin/squeezelite -n 'Esszimmer' -o center -a 80:::0: -m ab:cd:ef:12:34:62 -z
/usr/local/bin/squeezelite -n 'Bad' -o back -a 80:::0: -m ab:cd:ef:12:34:63 -z

the outputs surround, center, back (and the default output equal) are connected the the suitable plug plugins in asound.conf file.
And from there to the equalizer settings.

Hope this helps and sorry for the incorrect ALSA setting.

Bye



################################################## #######################
## CUSTOM ASOUND.CONF by mfd https://knx-user-forum.de/member/7968-mfd
################################################## #######################
## Channel splitting your UA0099 USB sound card to get up to four
## independent stereo outputs (...and more )
################################################## #######################
## stereofront = the FRONT labeled green jack
## stereosurround = the SURROUND labeled black jack
## stereocenter = the CENTER / BASS labeled yellow jack
## stereoback = the BACK labeled black jack
## stereoall = all stereo outputs
##
## for up to eight mono output channels use:
##
## monofrontl = the FRONT labeled green jack - tip
## monofrontr = the FRONT labeled green jack - ring
## monosurroundl = the SUROUND labeled black jack - tip
## monosurroundr = the SUROUND labeled black jack - ring
## monocenterl = the CENTER / BASS labeled yellow jack - tip
## monocenterr = the CENTER / BASS labeled yellow jack - ring
## monobackl = the BACK labeled black jack - tip
## monobackr = the BACK labeled black jack - ring
################################################## #######################


################################################## #######################
## labels and colors could be different for differnt vendors or
## versions of the device (Logilink, Sewell, Sweex, ...)
################################################## #######################
## put this file into your /ect/asound.conf
################################################## #######################

pcm.logilink { # alias for our sound card
type hw # must be hw in our case
card 1 # check your correct card number by typing
device 0 # 'aplay -l' in your terminal
} # the 1st usb card on the Raspi shows as
# card 1: Device [USB Sound Device], device 0: USB Audio [USB Audio]

ctl.logilink {
type hw
card 1
device 0
}

pcm.dmixer {
type dmix
ipc_key 1024 # must be unique number on your system
ipc_perm 0666 # neccesary for normal user to have access
slave.pcm "logilink"
slave {
period_time 0
period_size 1024
buffer_size 4096
rate 44100
channels 8
}
bindings {
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
}

}

pcm.!default {
type plug
slave.pcm "dmixer"
}

ctl.equal {
controls "/home/tc/.alsaequal.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equal {
type plug
slave.pcm "equalizerFront"
}

ctl.equalizerFront {
controls "/home/tc/.alsaequalFront.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerFront {
type equal
controls "/home/tc/.alsaequalFront.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereofront"
}


pcm.center {
type plug
slave.pcm "equalizerCenter"
}

ctl.equalizerCenter {
controls "/home/tc/.alsaequalCenter.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerCenter {
type equal
controls "/home/tc/.alsaequalCenter.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereocenter"
}


pcm.back {
type plug
slave.pcm "equalizerBack"
}

ctl.equalizerBack {
controls "/home/tc/.alsaequalBack.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerBack {
type equal
controls "/home/tc/.alsaequalBack.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereoback"
}


pcm.surround {
type plug
slave.pcm "equalizerSurround"
}

ctl.equalizerSurround {
controls "/home/tc/.alsaequalSurround.bin"
library "/usr/local/lib/ladspa/caps.so"
type equal
}

pcm.equalizerSurround {
type equal
controls "/home/tc/.alsaequalSurround.bin"
library "/usr/local/lib/ladspa/caps.so"
slave.pcm "stereosurround"
}


pcm.stereofront {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1
ttable.1.1 1
}

pcm.stereocenter {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.2 1
ttable.1.3 1
}

pcm.stereoback {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.4 1
ttable.1.5 1
}

pcm.stereosurround {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.6 1
ttable.1.7 1
}

pcm.stereoall {
type plug
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1 # input left and right to all 4 l+r outputs
ttable.1.1 1
ttable.0.2 1
ttable.1.3 1
ttable.0.4 1
ttable.1.5 1
ttable.0.6 1
ttable.1.7 1
}
pcm.monofrontl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.0 1 # in-channel 0, out-channel 0, 100% volume
ttable.1.0 1 # in-channel 1, out-channel 0, 100% volume
}

pcm.monofrontr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.1 1
ttable.1.1 1
}

pcm.monocenterl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.2 1
ttable.1.2 1
}

pcm.monocenterr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.3 1
ttable.1.3 1
}


pcm.monobackl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.4 1
ttable.1.4 1
}

pcm.monobackr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.5 1
ttable.1.5 1
}

pcm.monosurroundl {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.6 1
ttable.1.6 1
}

pcm.monosurroundr {
type route
slave {
pcm "dmixer"
channels 8
}
ttable.0.7 1
ttable.1.7 1
}