I’m desperately trying to get an equalizer to work on my Pirate audio.
I was inspired by this article ( http://www.gerrelt.nl/RaspberryPi/wordpress/equalizer/ ), I have access to the tool with the following command:
sudo alsamixer -D equal
I think my concern is that I can’t find the right syntax for setting the output parameter in /etc/mopidy/mopidy.conf.
I tried several different descriptions for example to modify :
output = alsasink device=hw:sndrpihifiberry
output = alsasink device=equal
output = equal
But without success, no sound comes out and an error goes up in mopidy.
Is there someone who can help me or guide me?
Thank you very much in advance.
Please post the error message.
I would guess that you are running Mopidy as a service. Mopidy as a service runs under the user ‘mopidy’. That user will not have access to
/home/pi/.alsaequal.bin. I will further guess the error message mentions a permission issue.
Yes, Modidy is running as a service. the error message is :
mopidy: ERROR [MainThread] mopidy.audio.gst GStreamer error: Could not open audio device for playback.
And that even if I chmod 777
What do you think about the syntax of mopidy output setting? What is the right one for you?
Changing the file permission won’t help if the mopidy user can’t see the folder so move that file somewhere else. How about moving it inside /var/lib/mopidy/ where other mopidy service stuff lives?
The first setting is the one to use:
output = alsasink device=equal
So I moved /home/pi/.alsaequal.bin to /var/lib/mopidy/
I changed /etc/asound.conf as this :
In /etc/mopidy/mopidy.conf I set output = alsasink device=equal
then I reboot, now I think I’m very close thanks to you, but now the error is :
ERROR [MainThread] mopidy.audio.gst GStreamer error: Could not open audio device for playback.
Great, it’s working fine now!!!
Last command I write : chown mopidy:audio /var/lib/mopidy/.alsaequal.bin
Thanks a lot kingosticks!
Great, and good spot,
it seems the controls file has to exist beforehand for it to work (not sure why).
It looks like you need to then run
sudo alsamixer -D equal to control the
equal equalizer, which is annoying. But you can avoid that by giving everyone write permission to the controls file with
sudo chmod 777 /var/lib/mopidy/.alsaequal.bin. Then
alsamixer -D equal works.
You can also add the following to the bottom of your /etc/asound.conf to make the
equal pcm/ctl devices your system default:
pcm.default pcm.equal ctl.default ctl.equal
Then you can just do
alsamixer (and if you want change Mopidy’s config to just
output = alsasink.
EDIT: Turns out you don’t actually need to create the controls file first for it to work. I think I was creating that issue for myself when testing using
sudo gst-launch-1.0 first. But if you want the pi user to have access via alsamixer (without using
sudo) then you do still need to sort the controls file permissions out. Also make sure you delete your ~/.asoundrc file to avoid any confusion there.
And this looks handy too: https://github.com/JiriSko/amixer-webui as you can’t sensibly use Mopidy-ALSAMixer with alsaequal.
Perfect! alsamixer command is enough to work now.
Whow, that look promizing! I’m going to test that too!
Thanks for all!