Audio;pas de sauvegarde de la configuration d'alsamixer

Bonjour ou Bonsoir;
Après pas mal de recherches, je me permet de créer ce topic.
Je viens d’installer debian version stretch 64 bits sur un eeepc 1005px.
Je me suis rendu compte que le son ne marche pas, quand je lance alsamixer, je dois changer la carte pour choisir " 0 HDA intel" ( alc 269vb n’apparait pas dans les choix), et ensuite enlever mute du canal headphone, et augmenter le son. A ce moment le son fonctionne, mais au démarrage suivant je dois refaire la manip. Si au démarrage suivant je fais alsactl restore, le son se met a fonctionner. dans mes recherches, j’ai remarqué que alsa-init ne donne rien, et que le fichier /etc/modprobe.d/alsa-base.conf n’existe pas.
Je me demande si le codec realtek alc269vb est reconnu, et si cela bloquerais l’initialisation.
Peut etre avez vous d’autres idées?

Salut
As tu utilisé la fonction de sauvegarde d’Alsa?
Après avoir réglé ta configuration avec alsamixer

sudo alsactl store

ça va générer un fichier asound.state dans /var/lib/alsa

Normalement il est pris en compte lors des démarrages suivant mais il est toujours possible que certains curseurs manquent

il existe un service de systemd qui fait le restore automatiquement alsa-restore.service (dans le paquet alsa-utils)

cat /lib/systemd/system/alsa-restore.service

est il activé

systemctl status alsa-restore.service

1 J'aime

Salut oh grandtoubab et merci de ta réponse.
oui j’ai utilisé les fonctions de sauvegarde d’alsa.
le fichier asound.state est bien présent.
la commande cat /lib/systemd/system/alsa-restore.service donne:
"aucun fichier ou dossier de ce type"
et systemctl status alsa-restore.service
loaded et active (excited) !!!

le fichier n’existe pas mais il est actif??? c’est louche

voila le contenu

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=graphical.target

[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=-/usr/sbin/alsactl -f /var/lib/alsa/save.asound.state restore

pour lire le journal
journalctl -u alsa-restore.service

pour verifier manuellement que le fichier asound restore bien ta conf

sudo alsactl restore

mais tu vois qu’ils ont malicieusement pris un fichier d’un autre nom dans le service, il faudrait donc faire préalablement

/usr/sbin/alsactl -f /var/lib/alsa/save.asound.state store

ah oui ok j’avais oublié que j’avais bidouillé :grinning:

chez moi /run est en tmpfs donc volatil et perdu au moment du restore

df -h
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
udev               1,8G       0  1,8G   0% /dev
tmpfs              370M    6,2M  364M   2% /run
/dev/sda1           19G     15G  3,6G  81% /
tmpfs              1,9G     30M  1,8G   2% /dev/shm
tmpfs              5,0M       0  5,0M   0% /run/lock
tmpfs              1,9G       0  1,9G   0% /sys/fs/cgroup
tmpfs              1,9G     48K  1,9G   1% /tmp
/dev/sda6          268G    214G   41G  85% /home
tmpfs              370M     28K  370M   1% /run/user/1001

donc tu vois le topo: tu crée un fichier asound et tu donne son chemin dans le service alsa-restore

chez toi je vois qu’il y a un étage en plus

/lib/systemd/system/alsa-restore.service

oula ca va vite, excuses je suis débutant- intermédiaire sur linux.
la commande “cat /lib/systemd/system/alsa-restore.service” donne le bon résultat mais uniquement quand je suis en root. je fais pourtant partie du group audio!.

la commande df -h me donne ca:

j’ai relu mes mémos.
En fait je ne m’en suis jamais sorti avec les service lancés au démarrage(en plus du pb /run en tmpfs) car à l’ouverture de session utilisateur il y a quelque chose qui réinitialise (peut etre pulseaudio ??)

donc je me suis fait ma solution perso mais c’est vraiment du hors-piste

j’ ai duplique le binaire alsactl dans mon home sous le nom alsactlperso pour que mon user puisse l’invoquer sans sudo

~/bin$ ls -alrt
total 104
-rwxr-xr-x  1 guy guy 97352 août  21 13:16 alsactlperso

j’ai créé un fichier asound dans mon /home

/home/guy/bin/alsactlperso -f /home/guy/.config/alsa/save.asound.state store

et j’ai créé un lanceur dans autostart de mon /home

:~/.config/autostart$ ls -alrt xxalsa-restore.desktop
-rwxr-xr-x 1 guy guy 264 août  21 15:23 xxalsa-restore.desktop

[Desktop Entry]
Name=Alsa Restore
Name[fr]=XXRestauration Alsa
Comment=Restore alsa level
Comment[fr]=Restaurer les niveaux Alsa
Exec=/home/guy/bin/alsactlperso -f /home/guy/.config/alsa/save.asound.state restore
Terminal=false
Type=Application
StartupNotify=true

Bonjour,

sinon, question toute bête, déjà évoquée par grandtoubab, tu n’aurais pas un autre service que alsa qui s’occuperait de gérer tes cartes son par dessus alsa ? Du genre pulseaudio, qui va écraser tes modifs alsactl à chaque démarrage…

Si c’est le cas, tu dois pouvoir choisir la carte son à utiliser par défaut avec un outil comme pavucontrol.

C’est ce que je me dit aussi … par défaut c’est Pulsaudio qui est installé par Debian, donc il n’est pas impossible que la conf Alsa soit généré a chaque redémarrage.

pour copier alsactl et le renommer je fais:
cd /usr/bin puis mv alsactl /home/alsactlperso ?

quand je lance alsamixer, j’ai ca, je dois faire f6 pour selectionner la bonne carte.

pour benco35

puisque tu as bien généré manuellement un fichier asound , dans un dossier non volatil, le test simple consiste à le restaurer manuellement sans toucher à rien d’autres après ton ouverture de session

sudo alsactl restore

Au moins tu verras si le son est remis comme tu le veux

pour lancer alsamixer directement sur la carte, je n’ai qu’une carte et elle donc identifiée 0

alsamixer -c0

la carte est identifiée dans /proc/asound

root@debian:/proc/asound# cat cards
 0 [SB             ]: HDA-Intel - HDA ATI SB
                      HDA ATI SB at 0xf0500000 irq 16
root@debian:/proc/asound# 

je crois avoir 2 “cartes” son: hda intel et realtek alc269vb.
j’avais pas fais gaffe a la question de l’autre service qui écraserait ma config alsactl. pour etre franc j’hesite.
la commande cat cards me donne ca:

tente déja la restauration manuelle tu verras si ça rends le son comme tu le souhaite.

pour pavucontrol

sudo apt install pavucontrol

vu que pavucontrol me donne ca, je vais essayer ta solution grandtoubab.

j’ai copier et renommer alsactl dans mon fichier perso, et créer le save.asound.state .
mais pour créer le lanceur automatique, je sèche. faut faire un touch ?

si je tente un restauration des parametres manuellement par alsactl restore, c’est pas le fichier dans mon /home qui est utilisé?

il faut utiliser un editeur de texte, mon préféré c’est gedit

s’il n’est pas installé

sudo apt install gedit

Donc pour toi avec ton utilisateur ben

gedit /home/ben/.config/autostart/xxalsa-restore.desktop

pour restaurer à partir d’un fichier précis il faut le préciser dans la commande

pour toi si tu as mis le binaire dans /home/ben/bin

/home/ben/bin/alsactlperso -f /home/ben/.config/alsa/save.asound.state restore

j’ai mis alsactlperso dans /home/ben , ca va pas faire d’erreur?
et j’utilise nano, c’est pas important?

pas grave ce sont des conventions, pour trouver facilement les binaires on les mets dans bin
as tu verifié les droits, il faut ben ben pour toi

si c’est root tu fais
sudo chown ben:ben /home/ben/alsactlperso
si tu es a l’aise avec nano tout va bien :grinning: