web-dev-qa-db-fra.com

Comment démarrer / configurer pulseaudio à distance avec ssh?

J'ai une machine distante sur laquelle je peux ssh. Sur la machine distante, un programme utilise l'audio Pulse pour obtenir les entrées d'un microphone USB connecté à la machine distante. Cette configuration fonctionne correctement si elle est utilisée localement, c’est-à-dire que je peux obtenir une entrée audio de Pulse lorsqu’elle est connectée localement.

Sur ssh, je reçois l’erreur:

ALSA lib Pulse.c:243:(Pulse_connect) PulseAudio: Unable to connect: Connection refused
ALSA lib Pulse.c:243:(Pulse_connect) PulseAudio: Unable to connect: Connection refused

De même, lorsque j'essaie d'ouvrir pavucontrol sur la machine distante via ssh -X, le message suivant s'affiche:

La connexion à PulseAudio a échoué. ... Dans ce cas, cela est probablement dû au fait que Pulse_SERVER dans les propriétés de la fenêtre racine Environnement/X11 ou le serveur par défaut dans client.conf est mal configuré.

pulseaudio --start
N: [pulseaudio] main.c: User-configured server at {30ab51874e4a0ca492830f1400000007}unix:/home/user2/.Pulse/30ab51874e4a0ca492830f1400000007-runtime/native, refusing to start/autospawn.

Tentative de démarrage de Pulse audio avec x11: start-pulseaudio-x11

Connection failure: Connection refused
pa_context_connect() failed: Connection refused

pulseaudio --check retourne directement à la commande Invite.

Si je tente d’obtenir les propriétés ssh X, j’obtiens:

user1@remote-pc:~$: xprop -root | grep Pulse
PULSE_COOKIE(STRING) = Some stuff here
Pulse_SERVER(STRING) = "{30ab51874e4a0ca492830f1400000007}unix:/home/user2/.Pulse/30ab51874e4a0ca492830f1400000007-runtime/native"
Pulse_SESSION_ID(STRING) = "30ab51874e4a0ca492830f1400000007-1407765989.424751-1424846683"
Pulse_ID(STRING) = "12165@30ab51874e4a0ca492830f1400000007/2040"

D'accord. J'ai vu des questions liées à ce problème, mais dans chaque cas, le demandeur souhaite transmettre le son via une connexion réseau, ce que je ne veux pas. Alors, qu'est-ce que je configure pour que Pulse_SERVER soit?

10
jwinebar

Je semble avoir résolu le problème en exécutant

pax11publish -r

Maintenant, xprop -root | grep Pulse montre:

Pulse_SERVER(STRING) = "{9899a0f46bdae6bbc8e6e8b200000005}unix:/home/user1/.Pulse/9899a0f46bdae6bbc8e6e8b200000005-runtime/native"

Apparemment, pulseaudio --check devrait normalement aller à la commande Invite. Apparemment, cela indique qu'il est en cours d'exécution.

5
terdon