136 votes

Jouer du son à travers deux ou plusieurs sorties/appareils

J'ai une carte son et une paire d'écouteurs Bluetooth. Je veux lire mes données audio à la fois sur ma carte son et dans mon casque Bluetooth.

Je crois que Windows a des cases à cocher qui vous permettent de "cocher" des sorties pour les activer/désactiver, mais Ubuntu semble avoir l'équivalent de sélecteurs radio (vous ne pouvez en sélectionner qu'un à la fois).

Question bonus : Dans le même ordre d'idées, j'ai 5 canaux de sortie analogiques sur ma carte son (en plus de mon audio numérique et HDMI) - j'aimerais pouvoir déterminer ce qui sort de chacun de ces ports (par exemple, " haut-parleurs avant " sur les 5 ou " avant ", " centre ", " arrière ", etc.)

138voto

Takkat Points 135194

Avec paprefs vous avez accès à un périphérique de sortie virtuel qui permet une sortie simultanée vers toutes les cartes son et tous les périphériques connectés :

sudo apt install paprefs

Ensuite, dans le terminal, exécutez paprefs , sélectionnez Sortie simultanée et vérifiez Ajout d'une sortie virtuelle pour une sortie simultanée sur toutes les cartes son locales .

paprefs

Le périphérique de sortie audio créé en plus pour la sortie simultanée peut être sélectionné dans l'écran d'accueil. Sortie de l'onglet PulseAudio Préférences sonores menu ( pavucontrol ):

pavucontrol screenshot

Dans cet exemple, il est indiqué pour un appareil HDMI, mais, dès que votre appareil Bluetooth sera reconnu, il sera également disponible pour une sortie simultanée.

Les changements peuvent nécessiter un redémarrage de PulseAudio pour prendre effet, soit en vous déconnectant et en vous reconnectant à votre session, soit en exécutant pulseaudio -k dans un terminal.


En cas paprefs ne fait pas l'affaire ou si vous préférez avoir des paprefs non installé, utilisez cette commande depuis la ligne de commande :

pactl load-module module-combine-sink

Pour décharger le module depuis la ligne de commande et rétablir les valeurs par défaut de PulseAudio, il suffit de redémarrer PulseAudio avec :

pulseaudio -k

ou problème :

pactl unload-module module-combine-sink

26voto

aaricus Points 269

Ubuntu

Je viens de confirmer que cette solution fonctionne toujours sur Ubuntu 14.04 LTS.

  1. Installer : Terminal ouvert et type sudo apt install paprefs allez dans l'onglet correspondant exactement à l'image ci-dessus et sélectionnez l'option.
  2. Exécution initiale :
    1. En restant dans le terminal, tapez pulseaudio -k pour tuer et redémarrer pulseaudio ( de cette façon avec le service utilisateur actuel de systemd pulseaudio).
    2. Ensuite, allez dans vos paramètres de son et vous verrez l'option de sortie vers plusieurs périphériques de son.
    3. Bravo à celui qui a écrit paprefs, c'est un petit logiciel brillant que j'aimerais voir inclus dans Ubuntu sans nécessiter d'installation supplémentaire.

Apple Mac OS X

Une solution similaire est disponible par l'intermédiaire d'un logiciel inclus, et ce qui est si génial à ce sujet est que pulseaudio Le son semble être parfaitement synchrone sur les deux sorties, il doit donc s'adapter au décalage, ce qui explique pourquoi il est si impressionnant ; sinon, nous entendrions une version légèrement retardée d'une sortie à l'autre.

13voto

Dans Kubuntu 18.04, Plasma 5.12 paprefs n'est pas nécessaire, car un paramètre similaire existe déjà :

enter image description here

Une nouvelle option de sortie devrait être disponible après le redémarrage, appelée "Sortie simultanée".

enter image description here

Ou dans pavucontrol :

enter image description here


Dans la version 18.10 avec Plasma 5.13.5, l'option "Sortie simultanée" a été supprimée. paprefs est nécessaire.

9voto

Je n'ai pas réussi à faire fonctionner la proposition de Takkat dans Debian 8.7, bien que j'aie redémarré le système. Je suppose que vous avez réalisé la proposition de Takkat en installant paprefs . Extension de la réponse de Takkat qui fonctionne sur la base d'Arch Linux wiki où garder une entrée analogique et Pulse appelle ça "duplex"

# /etc/pulse/default.pa
# http://unix.stackexchange.com/a/180374/16920
load-module module-alsa-sink device=hdmi:0
load-module module-combine-sink sink_name=combined
set-default-sink combined

Puis redémarrez pulseaudio :

pulseaudio -k

8voto

Anoop Points 1353

Parce que LeonidMew demandait à propos de la 18.04 (j'utilise la 18.04.2 ), voici ma version.

L'interface graphique paprefs J'ai essayé de combiner une HDMI avec une sortie analogique, au lieu des deux hdmi. J'ai donc édité le fichier /etc/pulse/default.pa tel que décrit par Léo Léopold Hertz

$ gedit /etc/pulse/default.pa  # make changes as in method a or b below
$ pulseaudio -k # then restart pulseaudio

Les deux méthodes suivantes fonctionnent indépendamment l'une de l'autre, alors choisissez-en une ( assurez-vous d'ajouter ces lignes en haut du fichier je l'ai mis juste après .fail ! Sinon, cela ne fonctionne pas).

Méthode A

load-module module-alsa-sink device=hw:0,0
load-module module-combine-sink sink_name=combined

Méthode B

load-module module-alsa-sink device=hw:1,3 sink_name=hdmi
load-module module-alsa-sink device=hw:1,7 sink_name=hdmi2
load-module module-combine-sink sink_name=combined slaves=hdmi,hdmi2
set-default-sink hdmi-combined

Référence

Méthode A

À titre de référence, le hw:0,0 vient de aplay -l

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Méthode B

Et le 1:7 y 1:3 vient de

$ pacmd list-sinks | grep -e 'name:' -e 'alsa.device ' -e 'alsa.subdevice '
    name: <alsa_output.pci-0000_00_1b.0.iec958-stereo>
        alsa.subdevice = "0"
        alsa.device = "1"
    name: <alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1>
        alsa.subdevice = "0"
        alsa.device = "7"

Dans les "paramètres du son" de GNOME, j'ai défini l'autre HDMI du deuxième moniteur comme sortie, puis j'ai relancé la commande

$ pacmd list-sinks | grep -e 'name:' -e 'alsa.device ' -e 'alsa.subdevice '
    name: <alsa_output.pci-0000_00_1b.0.iec958-stereo>
        alsa.subdevice = "0"
        alsa.device = "1"
    name: <alsa_output.pci-0000_01_00.1.hdmi-stereo>
        alsa.subdevice = "0"
        alsa.device = "3"

Pour vérifier que ces chiffres sont corrects, j'ai lancé

$ aplay -D plughw:1,3 /usr/share/sounds/alsa/Front_Right.wav
$ aplay -D plughw:1,7 /usr/share/sounds/alsa/Front_Right.wav

qui ont sonné sur leurs moniteurs respectifs.

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