Comment enregistrer les paramètres AlsaMixer?


77

Bonjour, j'ai essayé le programme "EarCandy", maintenant j'ai eu / j'ai eu beaucoup de problèmes. Au début, je n’avais aucun son et maintenant le volume est très bas. PS Earcandy est maintenant supprimé de mon disque dur.

Quand j'ouvre l'Alsamixer avec:

alsamixer

Je vois que le volume des haut-parleurs est nul. Maintenant je le pousse au volume maximum. Mais après chaque redémarrage, je dois rouvrir alsamixer et régler à nouveau le volume au maximum. Puis-je enregistrer les paramètres d'alsamixer ou existe-t-il un autre moyen de résoudre le problème? entrez la description de l'image ici

Réponses:


75

Exécuter:

sudo alsactl store

Cela devrait enregistrer les configurations d’alsamixer sur /etc/asound.statelesquelles est chargé chaque démarrage.


14
Mon ordinateur portable continue de réinitialiser ma configuration, même après avoir exécuté la commande ci-dessus. Il prétend le stocker /var/lib/alsa/asound.state. Y a-t-il une autre raison pour que cela ne fonctionne pas?
Azmisov

1
J'ai exactement le même problème et le même comportement lorsque j'essaie sudo alsactl store.
JeanSibelius

1
@Azmisov: Vous pouvez expérimenter davantage avec le système de la manière suivante: (1) enregistrer la configuration (2) démarrer alsamixeret modifier le niveau maître (2) restaurer la configuration (3) vérifier que le niveau principal a été restauré. Si ce qui précède est conforme aux attentes, vérifiez que la restauration est réellement déclenchée au démarrage du système ( chkconfig alsa-utilsdoit s’afficher alsa-utils on).
dma_k

Cette réponse a résolu mon problème SPDIF: askubuntu.com/questions/541847/…
neves

1
Quand je cours, sudo alsactl storecela me donne l'erreur suivante alsactl: get_controls:567: snd_ctl_open error: Invalid argument.
user2513149

24

Vous pouvez également enregistrer les paramètres du mélangeur dans un fichier personnalisé avec alsactl:

alsactl --file ~/.config/asound.state store

Rechargement:

alsactl --file ~/.config/asound.state restore

2
La meilleure réponse n'a pas fonctionné pour moi, mais cela a fonctionné! J'ai créé un fichier de configuration et l'ai placé à /etc/asound.stateet ajouté la ligne de rechargement à mon fichier /etc/rc.local.
John

C’était la bonne solution pour moi… mais je devais spécifier le chemin absolu du fichier .config à l’intérieur du rc.local(bien que cela devrait fonctionner même avec relative car c’est le même utilisateur .. mais ce n’est pas le cas). merci et j'espère que mon indice aidera aussi quelqu'un
davidhq

12

La réponse de Seppo Erviälä est juste mais pas complète. Comme l'a déjà noté dma_k, il est man alsactlclairement indiqué à la fin que,

/var/lib/alsa/asound.state (ou le fichier que vous spécifiez avec l'indicateur -f) est utilisé pour stocker les paramètres actuels de vos cartes son.

palacsinit a noté de manière appropriée que vous pouvez stocker la configuration dans votre fichier avec

alsactl --file ~/.config/asound.state store

et recharger avec

alsactl --file ~/.config/asound.state restore

Cela peut être encore amélioré en plaçant la deuxième ligne, la commande de restauration dans un fichier .desktop.

Vous devrez exécuter nano ~/.config/autostart/alsarestore.desktop, ce qui ouvrira l'éditeur de texte nano et créera un ~/.config/autostart/alsarestore.desktopfichier. Les entrées dans le ~/.config/autostart/répertoire sont utilisées pour lancer automatiquement les programmes et services pour un utilisateur spécifique au démarrage / à la connexion graphique.

Le contenu du fichier .desktop doit être le suivant:

[Desktop Entry]
Type=Application
Terminal=false
Name=alsarestore
Exec=alsactl --file ~/.config/asound.state restore

Entre autres choses, vous pouvez stocker votre configuration dans un /etc/asound.statelien symbolique /var/lib/alsa/asound.state, mais celle-ci est plus une suggestion qu'une solution testée


C'est la seule façon dont j'ai travaillé pour moi sur Ubuntu Xenial 16.04
Francisco Costa

1
Les commandes "store" et "restore" fonctionnent bien pour un contrôle manuel. Cependant, lorsque je configure le fichier de démarrage automatique avec la commande "restore", je constate que le réglage du micro dans alsamixer est en cours de réécriture sur Muet et que le résultat est statique. Si je fais manuellement la commande de restauration, tout va bien. Pourquoi le réglage du micro est-il en train de changer et de ne pas être corrigé par un fichier de configuration correctement stocké par démarrage automatique ???
Brad Horn

@ BradHorn, il est possible que vous ayez quelque chose d'autre qui écrase votre commande. Il fonctionne, mais quelque chose d'autre annule ses modifications
Sergiy Kolodyazhnyy

des idées ce que cela pourrait être?
Brad Horn

1
@ BradHorn pas du haut de ma tête, non. Essayez de changer la Execligne dans le .desktopfichier pour être Exec=bash -c "sleep 5 && alsactl --file ~/.config/asound.state restore". Cela introduira un délai de 5 secondes. Ainsi, tout ce qui remplace vos paramètres sera exécuté en premier, puis votre commande de restauration sera exécutée par la suite. Essayez de jouer avec les sleepvaleurs si cela remplace toujours vos paramètres.
Sergiy Kolodyazhnyy

2

Après 2 mois d’essai visant à faire fonctionner "sudo alsactl store", j’ai finalement réussi à le faire. Entrez d’abord le terminal "alsamixer" pour entrer dans l’interface utilisateur alsamixer. Ensuite, effectuez les configurations dont vous avez besoin (par exemple, augmentez le niveau des haut-parleurs / casque ou réactivez quelque chose en appuyant sur la touche "m" du clavier). Maintenant la partie la plus importante. Avant de quitter alsamixer, ouvrez un nouveau terminal et faites: "sudo su" pour obtenir les privilèges élevés (soyez très prudent avec les commandes que vous utilisez en mode "sudo su" car vous risquez de détruire votre système), puis faites "alsactl store" pour enregistrer. alsa paramètres. Fermez ensuite les deux terminaux et redémarrez votre ordinateur. Cela fera le travail.


Cela ne marche pas pour moi.
kleinfreund

Travaille pour moi, pas exactement comme ici, mais avec sudo su.
Дмитрий Полянин

1

La solution de Sergiy Kolodyazhnyy a fonctionné pour moi. Bien que je devais ajouter la modification de Exec=bash -c "sleep 5 .... En effet, cela se produit car PulseAudio modifie ALSA.
Une autre solution consiste à désactiver PulseAudio lors du démarrage (voir ici ):

sudo cp /etc/pulse/client.conf /etc/pulse/client.confbackup
sudo nano /etc/pulse/client.conf

Recherchez ; autospawn = yes, supprimez le ;et remplacez-le par:

autospawn = no

Cette solution a également fonctionné pour moi, même si Ubuntu m'a donné une erreur de programme système au début. Comme je déteste ce genre de message, j'ai utilisé la première solution.



0

Alsa-Json-Gateway https://github.com/fulup-bzh/AlsaJsonGateway prend en charge le stockage / la restauration des sessions de carte son à partir de l'API JSON / REST.

  • liste des sessions / jsonapi? request = session-list & cardid = hw: 0
  • store session / jsonapi? request = session-store & cardid = hw: 0 & args = MySoundConfig
  • restaurer / jsonapi? request = session-load & cardid = hw: 0 & args = MySoundConfig

0

Pour ceux à qui la réponse de @Sergiy Kolodyazhnyy n'a pas fonctionné, essayez de la remplacer alsactlpar son chemin complet (quel que soit le which alsactlretour qui vous a été fait).

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.