Faire en sorte que PulseAudio préfère un périphérique audio externe

11

J'ai un périphérique audio externe Bose Soundlink que j'utilise pour diffuser de la musique de mon ordinateur vers ma chaîne stéréo. Ubuntu reconnaît l'appareil, mais ne l'utilise pas automatiquement. Pour que PulseAudio l'utilise pour la sortie, je dois le choisir manuellement dans l'onglet «Sortie» dans «Paramètres sonores».

J'aimerais que PulseAudio préfère toujours un appareil externe à l'appareil interne, s'il en existe un. Existe-t-il un moyen d'y parvenir?

bessman
la source

Réponses:

18

Le chargement du module est également utile module-switch-on-connect. Si vous ajoutez la ligne

load-module module-switch-on-connect

pour /etc/pulse/default.pa(comme su, bien sûr), cela devrait se produire automatiquement sans avoir à appeler un script.

Sam Whitlock
la source
3
Merci! C'est une solution élégante au problème. Pour le tester: $ pactl load-module module-switch-on-connect
iElectric
1
Fonctionne très bien avec mon DAC USB et Linux Mint 18 Sarah
alfonx
Fonctionne avec casque micro USB Sims4 + micro sous Linux Mint 18.3 Sylvia
Nidhin David
5

En théorie, cela devrait être géré par «PulseAudio Volume Control». Il y a un bouton pour sélectionner un appareil comme appareil par défaut, bien qu'à mon humble avis mal intitulé «Définir comme solution de repli». Plus d'informations sur cette fonctionnalité ici: http://ubuntuguide.org/wiki/Ubuntu_Oneiric_Hardware

Malheureusement, la fonctionnalité ne fonctionne pas. Dès qu'un périphérique audio USB est débranché, le paramètre comme périphérique par défaut est énormément oublié, malgré le fait que tous les autres paramètres tels que le volume, la balance, etc. sont conservés la prochaine fois que le périphérique est branché. Dans votre cas, si le l'appareil n'est pas supprimé, cette fonctionnalité peut réellement fonctionner pour vous. Si l'application vous manque, installez simplement le package 'pavucontrol'

J'utilise un casque USB pour appeler et j'ai dû créer un script en utilisant `` pacmd '' pour l'activer ou le désactiver selon les besoins pour éviter de passer par l'interface graphique, cela m'a permis d'ajouter simplement quelques éléments de lanceur pour basculer d'avant en arrière selon les besoins. Dans mon cas, mon script pour activer le casque est:

#!/bin/bash
pacmd "set-default-sink alsa_output.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-stereo"
pacmd "set-default-source alsa_input.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-mono"

Et pour revenir à mon audio interne:

#!/bin/bash
pacmd "set-default-sink alsa_output.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-stereo"
pacmd "set-default-source alsa_input.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-mono"

'pacmd' est assez facile à utiliser, il suffit de l'exécuter à partir du terminal et de saisir 'aide' pour plus d'informations.

Veazer
la source
1
À noter également, je suis passé à une distribution basée sur KDE (NetRunner) et les préférences des périphériques audio sont beaucoup mieux gérées, au point même d'utiliser différents périphériques par défaut pour différents types d'applications (communication, multimédia, etc.).
Veazer
"mais à mon humble avis mal intitulé" Définir comme solution de repli "." Bon point +1
mertyildiran
@Veazer N'est-il pas supposé Set as Fallbackque PulseAudio utilise ce périphérique lorsque le périphérique "principal" tombe en panne?
cprn
2

J'ai eu une réponse semblable à ce que dit Sam Whitlock, sauf que je devais modifier le fichier default.padans ~/.config/pulse. Il suffit d' ajouter le load-module module-switch-on-connectmarché!

Exécution d'Ubuntu 17.04 avec un casque Bluetooth JieLi AC4100 / IQ Sound (via USB cependant).

scoutchorton
la source