Open denics opened 1 year ago
This skill is sending a mycroft.volume.set
message to the bus with to the requested volume setting, then its the PHAL ALSA plugin that handles the message using the alsaaudio
Python library.
I'm facing the same behaviour.
When I set the volume from the ovos_phal
container via the Python interpreter it works, which means the container has the right access to ALSA mixers.
ovos@ovos_phal:~$ python
Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import alsaaudio
>>> print(alsaaudio.mixers())
['Master', 'Capture']
>>> mixer = alsaaudio.Mixer("Master")
>>> mixer.getvolume()
[15, 14]
>>> mixer.setvolume(50)
>>> mixer.getvolume()
[50, 50]
Thats a locale problem (autotranslate) To set an absolute volume it needs change and volume (adapt)
whereas to get the current volume only volume
is required. Therefor the answer.
also check the "louder"/"quieter" intent where only louder
/quieter
is needed to increase/decrease by 10% (without a relative number) or x% (with number)
Non-english client users should look at the locale as this is very likely the problem.
Probably #30 will fix it
In docker, when I try to set the volume in Italian, I get:
hey mycroft, imposta il volume a 10
(set volume to 10)Il volume è a 50
(the volume is 50) which is not the answer I am waiting from it. It this is the docker behavior I think it should be documented, but I doubt so, I ALWAYS get 50 as an answer (not even 42)