https://a.storyblok.com/f/270183/1368x665/f9b88ee023/another-noise-suppression.png

Mais uma técnica de supressão de ruído. Básica, mas avançada

Publicado em July 18, 2024

Tempo de leitura: 1 minuto

No meu última postagem no blog, apresentei cenários em que a supressão de ruído em videochamadas seria útil. Além disso, mostrei duas maneiras (Moderada e Avançada) de implementá-la em seus aplicativos web usando o SDK de vídeo da Vonage. Cheguei até a criar aplicativos de exemplo para ambas as implementações.

Agora, tenho mais uma opção para adicionar supressão de ruído às suas aplicações de Video. Por quê?

Básico, mas avançado

Os métodos mencionados anteriormente para adicionar supressão de ruído exigiam a importação de bibliotecas externas. Com a versão mais recente do Vonage Client SDK para o JavaScript do Video, não há mais necessidade de importação, pois o mesmo filtro de áudio avançado para supressão de ruído já está incluído. Isso torna a implementação muito simples.

Experimente

Assim como da última vez, criei um aplicativo de exemplo para que você possa testar o recurso e dar uma olhada no código. Ele é MUITO semelhante ao código do exemplo de bate-papo por Video básico. Você pode usar o Vonage Video API Playground para gerar as credenciais necessárias para executar o aplicativo.

Ativar/Desativar a supressão de ruído

Esta implementação básica adiciona métodos ao objeto Publisher para ativar e desativar a supressão de ruído. Ambos retornam uma promessa ou um erro caso algo dê errado.

// enable Noise Suppression

publisher.applyAudioFilter({

  type: 'advancedNoiseSuppression',

});

// disable Noise Suppression

publisher.clearAudioFilter();

Ativar a supressão de ruído desde o início

Se você quiser que a supressão de ruído seja ativada assim que o usuário começar a falar na chamada, basta passar um audioFilter objeto com uma chave chamada `type` e seu valor definido como advancedNoiseSuppression nas opções ao inicializar o Publisher.

const publisherOptions = {

  insertMode: 'append',

  width: '100%',

  height: '100%',

  resolution: '1280x720',

  audioFilter: {

    type: 'advancedNoiseSuppression'

  }

};

const publisher = OT.initPublisher(

    'publisher',

    publisherOptions,

    handleError

);

Obter o tipo de filtro de áudio

Se, a qualquer momento, você quiser saber qual filtro de áudio está sendo aplicado, existe o getAudioFilter() método no objeto Publisher. Ele retornará o filtro de áudio, se estiver definido, ou `null`, caso contrário.

publisher.getAudioFilter();

// output

{

    "type": "advancedNoiseSuppression"

}

// or

null

Compatibilidade com navegadores

Conforme mencionado na postagem anterior do blog, a supressão de ruído pode ser utilizada em navegadores que suportam processadores de mídia , como o Chrome e os navegadores baseados no Chromium (Electron, Opera e Edge). O Client SDK do Video JS da Vonage possui uma útil função `hasMediaProcessorSupport` para determinar se o cliente oferece suporte a essa funcionalidade.

É isso aí! Experimente adicionar a supressão de ruído ao seu aplicativo de Video e conte para a gente como foi. Se tiver alguma dúvida ou comentário, entre em contato pelo nosso Canal da Comunidade no Slack e siga a gente no X.

Compartilhar:

https://a.storyblok.com/f/270183/384x384/1a06993970/dwanehemmings.png
Dwane HemmingsPromotor de Desenvolvedores de JavaScript