¿Cómo iniciar / configurar pulseaudio de forma remota con ssh?

11

Tengo una máquina remota a la que puedo hacer ssh. En la máquina remota hay un programa que usa audio de pulso para obtener la entrada de un micrófono USB conectado a la máquina remota. Esta configuración funciona bien cuando se opera localmente, es decir, puedo obtener entrada del audio de pulso cuando se conecta localmente.

Sobre ssh, recibo el error:

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

Igualmente, cuando trato de abrir pavucontrol en la máquina remota a través de ssh -X, recibo el mensaje:

La conexión a PulseAudio falló. ... En este caso, esto es probable porque PULSE_SERVER en el entorno / X11 Root Window Properties o default-server en client.conf está mal configurado.

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

Intentando iniciar el audio de pulso con x11: start-pulseaudio-x11

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

pulseaudio --check regresa directamente al símbolo del sistema.

Si intento obtener las propiedades ssh X, obtengo:

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"

Okay. He visto preguntas relacionadas con este problema, pero en cada caso, el autor de la pregunta quiere transmitir el sonido a través de una conexión de red, lo que yo> no <quiero hacer. Entonces, ¿qué configuro PULSE_SERVERpara ser?

jwinebar
fuente

Respuestas:

7

Parece que he resuelto el problema ejecutando

pax11publish -r

Ahora, xprop -root | grep PULSE muestra:

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

Aparentemente pulseaudio --check normalmente debería ir al símbolo del sistema. Aparentemente esto indica que se está ejecutando.

terdon
fuente
3
El OP había publicado esto como parte de la pregunta. Lo eliminé y publiqué como respuesta en su lugar.
terdon