10 votes

Modifier la sortie du son à partir de la ligne de commande

J'ai écrit un script qui change ma sortie d'affichage de DVI (mon moniteur) à HDMI (mon téléviseur) en utilisant xrandr. Dans ce script, je voudrais également changer ma sortie audio de la sortie ligne analogique à HDMI.

J'ai essayé ce qui suit :

pacmd set-default-sink alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1

Cela semble changer certains sons (comme le son que vous entendez lorsque vous réglez le volume sur le bureau) en hdmi, mais la sortie sonore par défaut pour les applications (comme le mode grande image de Steam et divers jeux) est toujours réglée sur analogique. Pour le changer en HDMI, je dois cliquer sur le panneau des paramètres sonores sur le bureau et le changer manuellement en HDMI.

Comment modifier la sortie du son à partir de la ligne de commande de manière fiable ? Ou alternativement, que font exactement les paramètres sonores d'Ubuntu lorsque je modifie la sortie du son ?

J'utilise Ubuntu 15.10.

9voto

Takkat Points 135194

La modification du périphérique de sortie par défaut peut en effet être effectuée en utilisant l'interface CLI de pulseaudio :

pacmd set-default-sink <sink_name|index>

Ce dispositif par défaut peut toutefois être modifié par le module-stream-restore qui est chargé par défaut. Ce module restaurera également un dispositif à moins que nous l'appelions avec le paramètre suivant :

load-module module-stream-restore restore_device=false

Cela devrait être mis dans notre default.pa pour remplacer la ligne correspondante à cet endroit.

Pour que cette modification soit valable pour tous les utilisateurs, nous devons donc modifier le fichier /etc/pulse/default.pa comme racine. Une meilleure approche est cependant de travailler sur une copie de ce fichier dans notre répertoire utilisateur où nous pouvons le mettre à ~/.config/pulse/

cp /etc/pulse/default.pa ~/.config/pulse/

Les réglages que nous avons effectués ici remplaceront ceux effectués dans /etc/pulse Il est donc possible d'expérimenter ici. Si quelque chose ne va pas, il suffit de supprimer ce fichier pour que pulseaudio utilise à nouveau les valeurs par défaut du système.

Tous les changements dans default.pa une réinitialisation du serveur pulseaudio pour prendre effet. Ceci peut être fait avec :

pulseaudio -k

Voir aussi :
Comment changer le puits de pulseaudio avec "pacmd set-default-sink" pendant la lecture ?

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X