Forzar downmix a mono en Linux

8

Por razones personales (tengo problemas de audición), necesito mi máquina Linux para producir un sonido mono mezclado. Mezclado, no solo un canal.

¿Existe alguna posibilidad de forzar tal comportamiento en el servidor ALSA / PulseAudio? La mezcla de hardware (cortocircuito de los canales L y R con algunas resistencias) no es posible en este momento. Estoy buscando una solución de software para mezclar dos canales en uno.

Sé que algunos reproductores multimedia tienen esta funcionalidad, pero me gustaría que todo el sistema (es decir, juegos, aplicaciones flash, etc.) produzca audio mezclado hacia abajo.

Neo
fuente

Respuestas:

10

No he hecho ninguna prueba exhaustiva, pero este ~/.asoundrcarchivo (o /etc/asound.conf) debería funcionar para cualquier cosa que use ALSA. Asume que solo desea tratar con dos canales internos (izquierdo y derecho), y que su tarjeta de sonido está en hw:0.

pcm.!default makemono

pcm.makemono {
    type route
    slave.pcm "hw:0"
    ttable {
        0.0 1    # in-channel 0, out-channel 0, 100% volume
        1.0 1    # in-channel 1, out-channel 0, 100% volume
    }
}

Consulte la documentación oficial para obtener detalles sobre cómo afinar / complicar más las cosas.

goldPseudo
fuente
Esto me llevó por el buen camino, ¡gracias! Ahora que PulseAudio es una cosa, tuve que copiar también /etc/pulse/default.paa ~/.config/pulse/default.pay elimine la línea que dice load-module module-alsa-sink, a continuación, ejecutar pulseaudio -kpara recoger los cambios. Ver también: superuser.com/a/1158248/9599
We Are All Monica