Je souhaite sélectionner une carte son par défaut ou désactiver toutes les autres, afin de pouvoir sélectionner celle qui convient après la suspension.
Ceci est une manière de régler de manière dynamique la carte de sortie audio par défaut en utilisant PulseAudio (pas ALSA).
Liste de vérification des sources et des puits
$ pactl list short sources
0 alsa_output.pci-0000_00_1b.0.analog-stereo.monitor module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
1 alsa_input.pci-0000_00_1b.0.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
2 combined.monitor module-combine-sink.c s16le 2ch 44100Hz SUSPENDED
$ pactl list short sinks
0 alsa_output.pci-0000_00_1b.0.analog-stereo module-alsa-card.c s16le 2ch 44100Hz RUNNING
1 combined module-combine-sink.c s16le 2ch 44100Hz IDLE
2 alsa_output.pci-0000_01_00.1.hdmi-stereo module-alsa-card.c s16le 2ch 44100Hz RUNNING
Définir les valeurs par défaut:
$ pactl set-default-source alsa_input.pci-0000_00_1b.0.analog-stereo
$ pactl set-default-sink alsa_output.pci-0000_00_1b.0.analog-stereo
Il est même possible de définir des ports. Voir Comment changer la sortie audio avec un raccourci clavier
Référence: man pactl
Vu que je n’ai pas Pulse, la réponse acceptée ne vaut pas pour des gens comme moi.
Cela devrait fournir ici une solution décente qui fonctionne uniquement avec ALSA.
J'ai un peu de détail puisque j'ai 3 appareils (2 cartes embarquées, carte vidéo HDMI, canal 5.1 PCI) dans ma machine, mon appareil préféré étant le dernier.
ce qui a fonctionné pour moi a été de modifier /etc/asound.conf
avec les éléments suivants:
(ressource: http://www.alsa-project.org/main/index.php/Asoundrc )
pcm.!default {
type hw
card 0
}
ctl.!default {
type hw
card 0
}
Si j'avais intuitivement configuré mon périphérique par défaut avec 2
, l'ordre des périphériques ci-dessus aurait été inversé après le redémarrage:
0: [CMI8738 ]
1: [Nvidia ]
2: [Nvidia_1 ]
le périphérique par défaut étant 2.
(cela continuerait après chaque redémarrage, et aucun redémarrage d’alsa ne permettait pas aux applications de lire de l’audio)
Pour empêcher ma machine de me suivre, j'ai dû éditer /etc/modprobe.d/alsa-base.conf
et ajouter la ligne suivante:
(ressource (recherche de la 6ème occurrence de "order"): https://alsa.opensrc.org/MultipleCards#How_to_choose_a_particular_order_for_multiple_installed_cards )
options snd slots=snd-cmipci,
qui a forcé mon périphérique préféré à 0 et que la carte par défaut correspond:
J'espère que je n'aurai plus jamais à toucher à ces paramètres, et cela aidera d'autres personnes, comme moi, qui ne veulent pas gérer les flux audio PulseAudio.
(oui, cela signifie que des applications peu développées telles que Discord n'identifieront pas vos appareils audio sans Pulse)
J'utilise personnellement alsamixer
alsamixer
Appuyez sur F6 pour sélectionner la carte son.