![¿Cómo pueden dos aplicaciones leer desde la misma entrada de sonido (digital) en Linux/ALSA?](https://rvso.com/image/1447619/%C2%BFC%C3%B3mo%20pueden%20dos%20aplicaciones%20leer%20desde%20la%20misma%20entrada%20de%20sonido%20(digital)%20en%20Linux%2FALSA%3F.png)
Tengo una tarjeta de sonido con un puerto de entrada AES/EBU a la que quiero acceder con dos aplicaciones simultáneamente. Quiero grabar la entrada en un archivo WAV lineal en tiempo real y al mismo tiempo transmitirla a través de IceCast. Si ingenuamente intento acceder al mismo dispositivo de entrada con ambas aplicaciones, uno me dice que no puede acceder al dispositivo. ¿Cómo puedo configurar ALSA para lograr esto? ¿O tengo que transmitirlo a través de algún programa externo, introduciendo retrasos?
Respuesta1
Puede utilizar el dsnoop
complemento para copiar los datos de muestra en múltiples dispositivos de captura virtuales.
Coloque algo como esto en su ~/.asoundrc
o /etc/asound.conf
y utilícelo snooped_digital
como nombre de dispositivo en ambas aplicaciones:
pcm.snooped_digital {
type dsnoop
slave {
pcm "hw:2,1" # the actual device
channels 2
rate 48000
}
}