¿Cómo puedo acceder a canales adicionales en mi tarjeta de sonido a través de PulseAudio sin problemas?

¿Cómo puedo acceder a canales adicionales en mi tarjeta de sonido a través de PulseAudio sin problemas?

Preguntas frecuentes sobre Pulseaudiomuestra cómo cargar explícitamente un módulo receptor ALSA con un mapa de canales. Esto funciona, pero también implica deshabilitar los módulos de detección automática del dispositivo, lo cual no quiero hacer.

Hay, en la configuración de "sonido", una opción de "modo" para cada dispositivo de salida que parece configurar el mapa de canales que PulseAudio usa para ese dispositivo. Tiene opciones como "Salida estéreo analógica" y "Salida envolvente analógica 5.1". Este parece ser el camino a seguir si el objetivo es no romper la configuración predeterminada, que en su mayor parte funciona muy bien.

El problema es que mis parlantes en realidad son solo estéreo, pero todavía tengo 6 salidas más que me gustaría usar de alguna manera. Supongo que podrían quedar expuestos como lavabos adicionales. O, si puedo exponer estos canales adicionales como "aux0, aux1, ...", puedo usarmódulo-reasignación-sumideropara que parezcan lavabos adicionales.

También tengo ocho entradas analógicas y 2 entradas digitales, y ninguna configuración de "modo" parece exponerlas todas.

Entonces la pregunta es: ¿dónde se configuran estos "modos"? ¿O hay otras buenas soluciones a este problema?

Respuesta1

Los ejemplos aquí me ayudaron:

https://wiki.archlinux.org/index.php/PulseAudio/Examples#Simultaneous_HDMI_and_Analog_Output

Terminé con lo siguiente en ~/.config/pulse/default.pa:

# http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#index12h3
# https://wiki.archlinux.org/index.php/PulseAudio/Examples#Simultaneous_HDMI_and_Analog_Output
# remix=no is required, otherwise it will turn 2-channel sound into 4-channel sound and send it to all master channels
load-module module-remap-sink sink_name=headphones remix=no master=alsa_output.pci-0000_00_1b.0.analog-surround-40 channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right sink_properties=device.description=Headphones
load-module module-remap-sink sink_name=speakers remix=no master=alsa_output.pci-0000_00_1b.0.analog-surround-40 channels=2 master_channel_map=rear-left,rear-right   channel_map=front-left,front-right sink_properties=device.description=Speakers

# sending output to this goes to both
# replacing "0" with "alsa_output.pci-0000_00_1b.0.analog-surround-40" might work, but this also does
update-sink-proplist 0 device.description="Both"

# this renames the virtual streams, which show up in KMix.  It's handy, since KMix can't show more than one sink for master volume in the popup
update-sink-input-proplist 0 media.name="Headphones"
update-sink-input-proplist 1 media.name="Speakers"

Reemplace los nombres de sus dispositivos (los master=...) según sea necesario.

NOTA:Primero debe copiarlo /etc/pulse/default.pay ~/.config/pulse/default.paluego editarlo, porque pulseaudio no lee en absoluto el archivo de todo el sistema si el archivo del usuario existe. De ahora en adelante, debe fusionar cualquier cambio del archivo de todo el sistema en su archivo personal. Alternativamente, podría simplemente editar el archivo de todo el sistema, pero luego las actualizaciones podrían sobrescribirlo, lo que desperdiciaría todo su trabajo. (O tal vez dpkg le pedirá que los combine manualmente, pero ¿qué pasa si no lo notó? (Inserte una recomendación etckeeperaquí).)

También hay un ejemplo aquí:

http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#index12h3

Pero utiliza los canales auxiliares, lo que resulta más confuso. Usarlo remix=nolo hace innecesario.

Ahora no tengo idea de cuál es su definición de error, pero debería poder usar estos ejemplos más PA Wiki o buscar un poco en Google para llegar al resto del camino. Para sus canales adicionales, la wiki enumera esto:

Mapa de canales. Una lista de nombres de canales separados por comas. Los nombres de los canales definidos actualmente son: izquierdo, derecho, mono, central, frontal izquierdo, frontal derecho, frontal central, posterior central, posterior izquierdo, posterior derecho, lfe, subwoofer, frontal izquierdo del centro. , frontal derecha del centro, lateral izquierda, lateral derecha, aux0, aux1 a aux15, superior central, superior frontal izquierda, superior frontal derecha, superior frontal central, superior trasera izquierda , arriba-trasero-derecho, arriba-trasero-centro (el valor predeterminado depende de la cantidad de canales y del controlador)

Por cierto, la pacmdherramienta toma exactamente los mismos comandos que el default.paarchivo, por lo que puede realizar cambios de forma interactiva y luego pegar los comandos de trabajo en default.pa, pero sin incluirlos pacmden cada uno. Tenga en cuenta que es posible que deba hacer algunas cosas de manera ligeramente diferente, como descargar algunos módulos primero, en comparación con hacerlo en default.pa, ya que pulseaudio ya se está ejecutando. Pasé algún tiempo tirándome de los pelos por esto. (:v)

información relacionada