no estoy seguro si esto merece una respuesta por separado. Utilicé la respuesta de HSC y los ejemplos en "ALSA Wiki - The Dmix Howto". La documentación de Dmix es de hecho un poco frustrante.
Aquí es un ejemplo ~/.asoundrc
que funciona para mí. La sección de "enlaces" no es necesaria, pero el CÓMO dice que ayuda a que "los chips multicanal funcionen más rápido" (¿no estoy seguro si me importa?). Si ato "0 1 1 0", cambia los canales derecho/izquierdo. Si enlace "0 1 1 1", me sale basura en el oído derecho ... Aparentemente, ipc_key
es un parámetro obligatorio; Solo elegí un entero al azar.
# example 1
pcm.hw3mix {
type dmix
ipc_key 1939 # must be unique
slave {
pcm "hw:3"
period_time 0
period_size 1024 # must be power of 2
buffer_size 4096
rate 44100
}
bindings {
0 0
1 1
}
}
pcm.!default hw3mix
La última línea hace que mi nueva hw3mix
el dispositivo por defecto.
Simplifiqué lo anterior a:
# example 2
pcm.hw3mix {
type dmix
ipc_key 1939 # must be unique
slave { pcm "hw:3" }
}
pcm.!default hw3mix
y parece funcionar muy bien.
Como se sugiere en el enlace de ALSA Wiki anterior, puedo simplificar aún más a:
# example 3
pcm.dsp0 {
type plug
slave.pcm "dmix"
}
pcm.!default dsp0
y esto puede ser aún más simplificada a:
# example 4
pcm.!default {
type plug
slave.pcm "dmix"
}
o incluso:
# example 5
pcm.!default plug:dmix
sin embargo, los últimos tres ejemplos no me permiten especificar los parámetros para el plugin Dmix. Quería crear un dispositivo que mezcle varias transmisiones a "hw: 3". Creo que esto debe especificarse como un parámetro para Dmix ya que no es el dispositivo predeterminado, así que fui con mi segundo ejemplo anterior.En mi actual ~/.asoundrc
, también hay un bloque para "hw: 0,0" llamado "hw0mix", así que al cambiar los comentarios en las siguientes líneas, puedo cambiar la salida de las secuencias (recién creadas) entre mis auriculares y altavoces:
#pcm.!default hw0mix
pcm.!default hw3mix
NB: lo anterior se refiere a dispositivos como "hw: 0,0" y "HW: 3" ... fue un poco difícil de encontrar la manera de asegurar los números de dispositivo estable para mis diferentes de sonido USB dispositivos, encontré las instrucciones here en "Ordenar varias tarjetas del mismo tipo". La configuración consta de una línea en un archivo en /etc/modprobe.d/
. Así es como obtengo números como 0 y 3 para referirme a los mismos dispositivos durante los reinicios.
Esta respuesta es muy útil, pero estoy un poco confundido y agradecería más explicaciones. ¿Por qué el segundo comando 'aplay' tiene' -D default', pero el primero no? ¿Cuál es el significado de la sección 'bindings', y para qué sirve' ctl.dmixer'? ¿Es posible mezclar más de dos transmisiones, p. si ejecuto tres comandos 'aplay' simultáneamente? ¿Por qué el dispositivo "predeterminado" de tipo 'plug' apunta a' dmixer', podríamos cambiar el nombre 'pcm.dmixer' por' pcm.! Default' y evitar la indirección? – Metamorphic