Continuamos con el experimento anterior y en Chrome
M68, agregamos una restricción MediaStreamTrack
experimental para controlar
qué cancelador de eco se está usando, se agregó compatibilidad con un cancelador de eco nativo en
Windows. Además, mejoró la funcionalidad del cancelador de eco nativo en
macOS. Como antes, todo esto se encuentra detrás de una prueba de origen, por lo que deberás registrarte o
iniciar Chrome con una función experimental de línea de comandos, si deseas probarlo. Para ver más
consulta a continuación.
Novedades
En primer lugar, ahora es posible controlar qué cancelador de eco se está recibiendo
Se usa incluyendo una nueva restricción en tus llamadas a getUserMedia
, p. ej.:
echoCancellationType: type
En el ejemplo anterior, type
puede ser uno de los siguientes:
browser
para usar la implementación de software proporcionada por el navegador. osystem
para usar la implementación proporcionada por el en un sistema de archivos. Actualmente, esta es una de las implementaciones en macOS y Windows.
Si omites la restricción, Chrome seleccionará el cancelador de eco de esta manera. siempre tiene: si hay cancelación del eco de hardware, se usará; de lo contrario, El cancelador de eco del software de Chrome lo hará. Sin especificar la restricción, Chrome elegiremos nunca uno de los dos canceladores de eco experimentales que forman parte del esta prueba.
Como echoCancellationType
funciona como cualquier otra restricción, es posible
especificar system
como un valor ideal y hacer que Chrome lo use si está disponible
De lo contrario, recurrirá al browser
. El valor de echoCancellationType browser
es
siempre disponible en Chrome. Para saber qué cancelador de eco se seleccionó,
puedes llamar a getSettings()
en la pista de audio getUserMedia y verificar el valor de
el campo echoCancellationType
.
Por último, puedes comprobar qué canceladores de eco se encuentran disponibles para una
MediaStreamTrack
llamando a getCapabilities()
en él. Sin embargo,
echoCancellationType
aún no se implementó para InputDeviceInfo
.
Compatibilidad con la cancelación del eco de Windows
Ampliamos la compatibilidad del cancelador de eco nativo para incluir a Windows usando DSP de captura de voz este componente. Al igual que con el cancelador de eco de macOS, queremos evaluar su y veamos si hay casos en los que tiene un mejor rendimiento de software, si solo se coloca más cerca del hardware de audio. Al contrario de lo que ocurre con macOS, nuestras pruebas iniciales en Windows no han sido prometedores. Seguiremos ajustando la implementación para ver si podemos obtenerla. para tener un mejor rendimiento. Por ahora, probablemente sea mejor evitar experimentar con el Cancelador de eco de Windows a mayor escala. Pruébalo en entornos controlados, como en tu máquina local, pero no esperes que funcione sin problemas.
Se mejoró la compatibilidad con la cancelación del eco en macOS
Durante el experimento anterior, la implementación de macOS no tenía la capacidad de realizar un seguimiento correcto de qué dispositivo de salida se usó. Esto significa que No se pudo cancelar el eco de ningún dispositivo que no sea el predeterminado de la computadora. dispositivo. En muchos casos, esto podría no haber sido un problema, ya que macOS puede cambiar automáticamente los dispositivos predeterminados cuando los auriculares, etc., están conectados o desconectado. Sin embargo, no funcionaría correctamente en todos los casos.
Esta función se agregó a Chrome M68 y se implementó tanto para Cancelador de eco de macOS y Windows. No se ha habilitado el cancelador de eco del software de Chrome afectado por esta falta de funcionalidad, ya que utiliza un bucle interno para obtener de la reproducción de audio para cancelar.
Cómo habilitar el experimento
Para implementar este nuevo comportamiento en tu sitio, debes registrarte en el programa de "Asistencia experimental" para AEC nativo" Prueba de origen. Si solo quieres probarlo de manera local, el experimento se puede habilitar en la línea de comandos:
chrome --enable-blink-features=ExperimentalHardwareEchoCancellation
Pasar esta marca en la línea de comandos hace que el nuevo echoCancellationType
disponibilidad global en Chrome para la sesión actual. Uso
de eco, puedes probar los canceladores de eco nativos en tu app, como
descrita anteriormente. Esta es la misma marca de línea de comandos que en la prueba anterior. activado
En Chrome M68, se habilitará la nueva funcionalidad. Habilitando la nueva prueba de origen
Solo activará la funcionalidad nueva y no activará la anterior.
de prueba en versiones anteriores de Chrome.
Envía comentarios
Al igual que con el experimento anterior, nos interesa el rendimiento cualitativo
de los canceladores de eco de macOS y Windows; principalmente el primero. También podríamos
como los comentarios sobre qué tan bien funciona la nueva restricción echoCancellationType
práctica, lo fácil que es de usar, etc. Esto incluye su inclusión en
getSettings
y getCapabilities
.
También nos interesa la forma en que Chrome interactúa con otras aplicaciones al usar estos canceladores de eco nativos, así como los problemas de estabilidad u otros problemas con la implementación.
Si estás probando esta función, envía tus comentarios en este error. Si es posible, incluye el hardware usado (versión de SO, modelo de hardware, micrófono, auriculares, etc.). Si realizas más experimentos a gran escala, visita se aprecian las estadísticas comparativas sobre la calidad de las llamadas de audio. si es objetivo o subjetivos.