J'ai deux applications au démarrage, que je lie avec des bouclages et des puits nuls. Tout fonctionne bien, sauf que chaque fois que je les démarre, je dois ouvrir pavucontrol et modifier manuellement le puits/la source pour chaque application. Je sais qu'il existe une commande pour changer le récepteur par défaut, mais cela n'aide pas. Je veux pouvoir affecter un puits ou une source à l'entrée et à la sortie de chaque application sans ouvrir pavucontrol. Il y a évidemment un moyen de le faire (comme le fait Pavucontrol en coulisse). Je ne trouve aucun document ni personne qui l'ait déjà fait.
Images à démontrer:
Outre le nettoyage du puits par défaut, nous pouvons déplacer une entrée ou une sortie source vers un autre puits ou une source en utilisant pactl
(ou pacmd
).
move-sink-input ID SINK
Déplace le flux de lecture spécifié (identifié par son index numérique) vers le puits spécifié (identifié par son nom symbolique ou son index numérique).
move-source-output ID SOURCE
Déplace le flux d'enregistrement spécifié (identifié par son index numérique) vers la source spécifiée (identifié par son nom symbolique ou son index numérique).
Pour lister les flux existants, nous pouvons émettre
pactl list sink-inputs
pactl list source-outputs
Ceux-ci peuvent ensuite être déplacés par index vers un autre emplacement donné par index (ou nom), par ex.
pactl move-sink-input 5 1
Voir aussi Comment changer de puits pulseaudio avec "pacmd set-default-sink" pendant la lecture? pour utiliser pacmd.