Cancelamento de eco nativo do macOS

Desde a versão 10.12 (Sierra), o macOS inclui um cancelamento de eco nativo. O uso dele pode ser ativado experimentalmente no Chrome M66 ao ativar um teste de origem ou fornecer uma flag de linha de comando ao iniciar o Chrome. Consulte abaixo.

Com o experimento ativado, o cancelamento de eco nativo do macOS será usado para fluxos getUserMedia com a restrição echoCancellation ativada. Em outras plataformas e em versões anteriores do macOS, ativar o experimento não vai fazer nada. O mesmo cancelador de eco será usado como antes (geralmente o software do WebRTC).

Por que estamos fazendo isso?

Queremos avaliar o desempenho do cancelamento de eco nativo do macOS. Por ser um componente desenvolvido pela Apple, ele tem a oportunidade de ser ajustado especificamente para o hardware. A posição no pipeline de áudio também o torna menos sensível a determinados problemas de áudio que podem acontecer no Chrome.

O que é um cancelamento de eco?

Um cancelamento de eco tenta remover do sinal do microfone qualquer som reproduzido nos alto-falantes. Sem isso, o que você diz como uma das partes de uma chamada será captado pelo microfone das outras partes e enviado de volta para você. Você vai ouvir um eco de si mesmo.

Como ativar o experimento

Para ter esse novo comportamento no seu site, você precisa se inscrever no teste de origem "Cancelamento de eco nativo do macOS". Se você quiser testar localmente, o experimento pode ser ativado na linha de comando:

chrome --enable-blink-features=ExperimentalHardwareEchoCancellation

A transmissão dessa flag na linha de comando ativa o recurso globalmente no Chrome para a sessão atual.

Com esse experimento, queremos avaliar as diferenças qualitativas ao usar o cancelamento de eco nativo do macOS, como:

  • Ele cancela bem o eco?
  • Ele lida bem com cenários de dupla conversa, ou seja, quando as duas partes estão falando ao mesmo tempo?
  • Isso afeta negativamente a qualidade do áudio quando não há eco para cancelar?
  • Certos dispositivos de áudio (como fones de ouvido) causam problemas?
  • etc.

Também temos interesse em saber como o Chrome interage com outros aplicativos ao usar o cancelamento de eco nativo no macOS, além de problemas de estabilidade ou outros problemas com a implementação.

Se você estiver testando isso, envie seu feedback neste bug. Se possível, inclua o hardware usado (versão do macOS, modelo de hardware, microfone / fone de ouvido / etc.). Se você estiver fazendo experimentos em grande escala, links para estatísticas comparativas sobre a qualidade de chamadas de áudio são bem-vindos, sejam objetivas ou subjetivas.