JACK, PulseAudio y Firefox: habilite JACK para Firefox en un futuro próximo

JACK, PulseAudio y Firefox: habilite JACK para Firefox en un futuro próximo

El error #1345661 de Firefox se cerró con "WONTFIX", lo que ciertamente interrumpirá mi configuración actual en un futuro próximo (reproduzco el sonido de Firefox a través de alsa_in: loopback->JACK). He leído que Firefox ahora admite JACK, aunque aún no es estable. Preguntas:

  1. ¿Se admitirá oficialmente la compatibilidad con JACK en Firefox?
  2. ¿Ubuntu habilitará la compatibilidad con JACK en Firefox antes de que finalice la compatibilidad con ALSA sin formato?

Si la respuesta es No No, ¿cómo puedo restaurar la funcionalidad de manera confiable sin romper JACK? Es posible ejecutar PA a través de alsa_in, pero supongo que eso introduciría latencia adicional, interrumpiría la sincronización AV o introduciría distorsión de la señal debido a múltiples remuestreadores.

Respuesta1

Utilizo el siguiente script al que llamo "pulsejack". Llámalo sin argumentos y conecta un existente jackda PulseAudio. Llamado con cualquier argumento, comienza jackdcon esos argumentos y luego lo conecta a PulseAudio. Entonces Firefox puede retomar desde PulseAudio.

#/bin/sh
if [ $# -gt 1 ]
then
    killall jackd 2> /dev/null && sleep 2
    jackd "$@" && sleep 2
fi
pactl load-module module-jack-sink channels=2
pactl load-module module-jack-source channels=2
pacmd set-default-sink jack_out
pacmd set-default-source jack_in

Es posible que deba ejecutarlo sudo apt install pulseaudio-module-jack para obtener los módulos respectivos.

Respuesta2

He compilado mozilla-central firefox con soporte para jack y salida (fuentes). Se crean automáticamente cuando visitas un sitio con audio (es decir, youtube).

Sin embargo, las fuentes receptores de entrada no se crean; No los veo aparecer en cadence/jack patch bay. Entonces, todo lo que dependa de la entrada del micrófono falla. es decir, pruebas meet.jit.si/webrtc...


Otro problema es que incluso usando el puente pulseaudio; Firefox no reconoce el mismo problema, las fuentes de entrada, incluso cuando están conectadas correctamente al disipador de pulsos. Sin embargo, en Chrome, la entrada de micrófono utiliza correctamente la captura conectada para disipar el pulso. Entonces creo que esto es un error de Firefox en la forma en que detecta e informa la información de presencia del micrófono.

Mi opinión personal es que las fuentes de entrada/receptor de captura deben crearse al iniciar Firefox en lugar de hacerlo por pestaña/sitio como ocurre con las fuentes de salida en el caso de solo conector.

información relacionada