Page 1 sur 1

Restauration des paramètres de AlsaMixer

Posté : dim. 19 nov. 2023 13:39
par Artemus24
Salut à tous.

Je teste la volumétrie du son dans VLC sous BookWorm à partir du bureau.
J'ai branché le casque sur la prise jack et j'ai sélectionné dans VLC HeadPhone.
J'ai modifié le son en passant par alsamixer puis je reboote la Raspberry PI.

Je teste le son, c'est comme si je n'avais rien fait.
Je vérifie que le fichier existe bien "/var/lib/alsa/asound.state" et c'est bien le cas
Je vérifie le service :

Code : Tout sélectionner

root@raspberrypi:~# systemctl status alsa-restore.service
● alsa-restore.service - Save/Restore Sound Card State
     Loaded: loaded (/lib/systemd/system/alsa-restore.service; static)
     Active: active (exited) since Sun 2023-11-19 13:01:53 CET; 5min ago
       Docs: man:alsactl(1)
    Process: 696 ExecStart=/usr/sbin/alsactl -E HOME=/run/alsa -E XDG_RUNTIME_DIR=/run/alsa/runtime restore (code=exited, status=0/SU>
   Main PID: 696 (code=exited, status=0/SUCCESS)
        CPU: 26ms

nov. 19 13:01:53 raspberrypi systemd[1]: Starting alsa-restore.service - Save/Restore Sound Card State...
nov. 19 13:01:53 raspberrypi alsactl[696]: alsa-lib main.c:1541:(snd_use_case_mgr_open) error: failed to import hw:0 use case configuration -2
nov. 19 13:01:53 raspberrypi alsactl[696]: alsa-lib main.c:1541:(snd_use_case_mgr_open) error: failed to import hw:1 use case configuration -2
nov. 19 13:01:53 raspberrypi alsactl[696]: alsa-lib main.c:1541:(snd_use_case_mgr_open) error: failed to import hw:2 use case configuration -2
nov. 19 13:01:53 raspberrypi systemd[1]: Finished alsa-restore.service - Save/Restore Sound Card State.
root@raspberrypi:~#
Il est actif mais j'ai des erreurs.

Je fais "sudo alsactl restore". Je teste et cette fois-ci le son est fort !
Mais toujours avec les mêmes erreurs :

Code : Tout sélectionner

root@raspberrypi:~# sudo alsactl restore
alsa-lib main.c:1541:(snd_use_case_mgr_open) error: failed to import hw:0 use case configuration -2
alsa-lib main.c:1541:(snd_use_case_mgr_open) error: failed to import hw:1 use case configuration -2
alsa-lib main.c:1541:(snd_use_case_mgr_open) error: failed to import hw:2 use case configuration -2
root@raspberrypi:~#
Je consulte le service :

Code : Tout sélectionner

root@raspberrypi:~# cat /lib/systemd/system/alsa-restore.service
#
# Note that two different ALSA card state management schemes exist and they
# can be switched using a file exist check - /etc/alsa/state-daemon.conf .
#

[Unit]
Description=Save/Restore Sound Card State
Documentation=man:alsactl(1)
ConditionPathExists=!/etc/alsa/state-daemon.conf
ConditionPathExistsGlob=/dev/snd/control*
After=alsa-state.service

[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=-/usr/sbin/alsactl -E HOME=/run/alsa -E XDG_RUNTIME_DIR=/run/alsa/runtime restore
ExecStop=-/usr/sbin/alsactl -E HOME=/run/alsa -E XDG_RUNTIME_DIR=/run/alsa/runtime store
root@raspberrypi:~#
Je vais dans Raspi-Config, et je sélectionne pour l'audio (6 Advances Options / A7 Audio Config) "PulseAudio".
Avant, j'avais "PipeWire" ! Je refais le teste du son dans VLC et là, ça fonctionne.

Si j'ai bien compris la nature du problème, ça fonctionne sous PulseAudio, mais pas sous PipeWire.
Je remets "PipeWire" dans Raspi-Config et je reboote ma Raspberry. Résultat : ca ne fonctionne plus.
Comme qui dirait un bug que la fondation n'a pas résolu !!!

Comment faire sous PipeWire que la restauration du paramétrage de alsamixer soit bien prise en compte ?

@+

Re: Restauration des paramètres de AlsaMixer

Posté : dim. 19 nov. 2023 16:22
par piper
Je vais poser une question bête :
avant de faire alsactl restore (qui restaure les paramètres sauvegardés)
avais-tu fait alsactl store ? (qui sauvegarde les paramètres)

On ne sait jamais, des boulettes, j'en fait aussi

Re: Restauration des paramètres de AlsaMixer

Posté : dim. 19 nov. 2023 18:04
par Artemus24
J'ai modifié le volume du son de HeadPhone en passant par alsamixer.
Après le reboot, j'ai constaté qu'il était encore au minimum, comme si ma modification n'avait pas été prise en compte.
Je constate bien la présence du fichier "/var/lib/alsa/asound.state".
Je fais ensuite un "sudo alsactl store" et après reboot, le son est encore au minimum.
Si je fais un "sudo alsactl restore", j'obtiens la modification que j'ai faite dans alsamixer.

Maintenant, si je bascule de PipeWire vers PulseAudio, je n'ai plus ce problème.
Ce n'est pas une boulette mais bien une constatation que j'ai faite sur le volume du son quand je suis sous PipeWire.

Re: Restauration des paramètres de AlsaMixer

Posté : dim. 19 nov. 2023 19:59
par piper
Tu n'as pas compris, la boulette aurait été d'oublier de faire un alsactl store

Re: Restauration des paramètres de AlsaMixer

Posté : lun. 20 nov. 2023 11:06
par Artemus24
Alsamixer fait un "alsactl store" quand tu modifies les paramètres. Je l'ai vérifié puis que j'ai détruit le fichier "/var/lib/alsa/asound.state" avant de modifier le paramétrage.

Je l'ai fait aussi manuellement, puis un reboot et enfin un "alsactl restore" et ça fonctionne. Je précise que je l'ai fait aussi bien sous PulseAudio que sous PipeWire

Le problème ne vient pas des commandes de alsa, mais plutôt si elles sont exécutés ou pas. Si tu es en PulseAudio, le test audio fonctionne mais pas si tu es en "PipeWire". Je le comprends ainsi.

J'ai refait plus fois les tests en modifiant le paramétrage dans Raspi-config (Puleaudio ou PipeWire) avant de poster mon sujet. Maintenant, je cherche une solution dans le cas où je suis en PipeWire, sans faire une bidouille quelconque.

Re: Restauration des paramètres de AlsaMixer

Posté : lun. 20 nov. 2023 11:22
par dyox
Salut Artemus,

Je pense que tous tes problèmes viennent du fait que l'OS n'est pas assez mature. A ta place je reviendrai dessus d'ici la prochaine grande mise à jour.
En attendant, tu peux voir les commits et issues du système : https://github.com/raspberrypi/linux/commits/rpi-6.1.y

Re: Restauration des paramètres de AlsaMixer

Posté : lun. 20 nov. 2023 12:11
par Artemus24
Salut Dyox.

Ce n'est pas ça qui va m'empêcher de dormir. Chercher ce qui ne fonctionne pas trop bien est un passe temps comme un autre.
Je ne vais pas de toute façon modifier quoi que ce soit car j'utilise PulseAudio et non PipeWire.

@+

Re: Restauration des paramètres de AlsaMixer

Posté : lun. 20 nov. 2023 22:43
par piper
Tout à fait d'accord :
Chercher et comprendre est un excellent moyen d'apprendre et au delà, de mettre ses connaissances à niveau sur les nouveaux produits et logiciels.
Je suis un grand partisan de cette approche qu'on soit juste passionné ou professionnel (évidemment on ne bidouille pas sur les serveurs de production, mais un de test qui prenait la poussière).
C'est d'ailleurs par l'expérimentation que les jeunes apprennent le mieux (et en générale seuls)

Il faut bien voir que sur Rapi-OS , ils ont eu la volonté de simplifier au maximum la vie des utilisateurs avec raspi-config. Et avec les dernières évolutions, il lui est demandé de faire de plus en plus de choses et des choses pas simples du tout (switch entre wayland et X11 donc potentiellement entre vncserver et wayvnc, switch entre pulseaudio et pirewire : quand on le fait à la mimine, il faut souvent s'adapter d'une distrib à l'autre, d'une version version de distrib à l'autre, d'un bureau à l'autre).
Je pense que là, avec raspi-config, ils ont eu les yeux plus gros que le ventre.

Re: Restauration des paramètres de AlsaMixer

Posté : mar. 21 nov. 2023 06:35
par Artemus24
Je pense que c'est une erreur d'avoir fait en une seule fois autant d'évolution, sans que les autres logiciels se soient adaptés comme realvnc à wayland.
La solution consiste à mettre au démarrage de la raspberry pi la commande "alsactl restore".