PulseAudio pacmd
n'est pas capable de commuter les puits par défaut tant qu'il y a un flux en cours de lecture sur l'entrée du puits. Cependant, il existe toujours un moyen d'y parvenir.
Changer le récepteur par défaut à partir de la ligne de commande
Nous devons d’abord déterminer le numéro d’indice des puits à changer. Cela peut être fait en appelant:
pacmd list-sinks
Selon notre système, vous obtiendrez une liste plus ou moins longue de puits et de propriétés actuellement accessibles:
>>> 2 sink(s) available.
* index: 0
name: <alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1>
driver: <module-alsa-card.c>
:
:
index: 1
name: <alsa_output.pci-0000_00_14.2.analog-stereo>
driver: <module-alsa-card.c>
Le index
ou le name
donné ici est ce dont nous avons besoin pour adresser le récepteur par ligne de commande. Le puits par défaut actuel est marqué d'un astérisque (ici 0
).
Pour pouvoir changer les récepteurs par défaut à partir de la ligne de commande, il peut être nécessaire de désactiver la restauration du périphérique cible du flux en modifiant la ligne correspondante /etc/pulse/default.pa
pour:
load-module module-stream-restore restore_device=false
Pour changer le puits de sortie par défaut, 1
nous lançons ensuite
pacmd set-default-sink 1
Sucess peut être visualisé en ouvrant le menu Sound Settings .
Déplacer un flux vers un autre lavabo
Changer le récepteur par défaut alors qu'un flux d'entrée actif en cours de lecture sur un récepteur donné n'a aucun effet . Cela devrait plutôt être fait en déplaçant cette entrée dans un autre puits.
pacmd list-sink-inputs
va nous dire l'index du flux d'entrée
>>> 1 sink input(s) available.
index: 5
driver: <protocol-native.c>
Nous savons maintenant que nous voulons déplacer le flux d’entrée 5
vers le puits 1
en appelant
pacmd move-sink-input 5 1
ou retour à couler 0
si on aime. Cela se fera immédiatement sans qu'il soit nécessaire d'arrêter la lecture.
Changer l'évier par défaut en jouant
Bien sûr, nous pouvons combiner ces deux commandes pour changer immédiatement les puits par défaut pendant la lecture, par exemple avec
pacmd set-default-sink 1 & pacmd move-sink-input 5 1
Un inconvénient de cette méthode est que l' index du flux d'entrée change chaque fois que nous arrêtons et redémarrons le lecteur de musique. Nous devons donc toujours trouver l’index de flux actuel avant de pouvoir passer à l’aide de la ligne de commande.
pactl list short sinks
>4 bluez_sink.FC_A8_9A_2C_EB_0B module-bluez5-device.c s16le 1ch 8000Hz IDLE
maintenant il suffit de référencer le nompactl set-default-sink bluez_sink.FC_A8_9A_2C_EB_0B
set-default-sink
mais vous aurez toujours besoin du numéro d’indexmove-sink-input
.0 sink input(s) available.
? Mais ce lecteur flash merdique joue encore de l'audio?client(s) logged in
section depacmd list
J'ai écrit un script simple pour déplacer automatiquement toutes les entrées-puits.
Usage:
./movesinks.sh <sink number>
la source
Version améliorée du script @Gaco
ma copie d'exécution est sur github et il comprend également la commutation automatisée du canal principal pour
kmix
la source
Il existe un script ruby (que j'ai à l'origine créé et réécrit de sections) qui vous permet de modifier les éviers, le volume et l'état muet par défaut à partir de la ligne de commande.
la source
J'ai bricolé des objets provenant de plusieurs endroits différents et j'ai imaginé ce script pour configurer une JAMBOX bluetooth une fois qu'elle a été appariée. Votre MAC sera différent bien sûr. Étant donné que je contrôle le volume de JAMBOX via l'application Clementine, 130% du volume fonctionne mieux dans mon cas. Vous voudrez peut-être changer cela, ainsi que rhythmbox.png (c'était la seule image de haut-parleur que je pouvais trouver sur mon ordinateur). La vérification des erreurs est rudimentaire, mais fonctionne de manière assez fiable. Je mets cela dans un lanceur de bureau pour plus de commodité sur un netbook ASUS.
la source
pactl list short
. Vous pouvez simplifier la ligne suivante en coupant directement après:pactl list short sink-inputs | cut -f1 | while read streamId
fonctionne pour moi.LES PUITS DE CERCLE
Le script Gaco ne contient plus qu’une ligne pour encercler les éviers disponibles.
la source
Et voici un script qui bascule également entre les puits:
http://marginalhacks.com/index.0.html#pulse-switch-out
Voici le script ci-dessous:
la source
Sur la base de la réponse de Gaco, je l'ai un peu réécrite pour mon usage personnel. Peut-être que quelqu'un trouve cela utile. C'est pour basculer entre mes haut-parleurs USB et mon casque USB Gaming.
la source
Je pense qu’une autre option mérite d’être mentionnée. Elle est disponible sur la page officielle de la FAQ sur PulseAudio sur freedesktop.org . Sous le titre suivant:
Ils fournissent le script suivant pour le faire:
la source
J'ai adapté @mpapis à une simple "bascule sink0 ou sink1" à l'exécution:
la source