npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@libs-scripts-mep/beep-listener

v3.1.0

Published

Biblioteca que faz a detecção do beep dos controladores

Readme

beep-listener

Classe que permite validar o acionamento do buzzer dos controladores via microfone, avaliando frequência, amplitude e tempo.

Instalando

Abra o terminal, e na pasta do script, rode:

npm i @libs-scripts-mep/beep-listener

Desinstalando

Abra o terminal, e na pasta do script, rode:

npm uninstall @libs-scripts-mep/beep-listener

Atualizando

Abra o terminal, e na pasta do script, rode:

npm update @libs-scripts-mep/beep-listener

Como utilizar

Importação

Realize a importação:

import BeepListener from "../node_modules/@libs-scripts-mep/beep-listener/beep-listener.js"

Inicialização

  • Utilize o método Init() para obter acesso ao microfone e inicializar as instâncias do AudioContext e AnalyserNode;
  • Verifique no JSDocs as possibilidades de parâmetros;
  • É possível passar o deviceId para não ocorrer o problema de múltiplos microfones conectados no computador e acabar utilizando o microfone errado;
  • EX:
 await BeepListener.Init({ deviceId: await BeepListener.C930e() })

Configuração da Frequência

  • Utilize o método FrequencyReader() para obter o valor da frequência lida pelo microfone;
  • A partir deste valor é possível configurar a calibração do ganho do microfone e captura dos dados.

Calibração do Ganho do Microfone

  • Utilize o método calibrateMic() para calibrar o ganho do microfone.
  • Este método ajusta o ganho do microfone, fazendo com que a frequência lida fique dentro da amplitude desejada.

Filtros

  • É possível adicionar filtros ou outras funcionalidades para manipular as faixas lidas pelo microfone;
  • Utilize o método changeFilters() para alterar os filtros, onde ele recebe por parâmetro um array de AudioNodes;
  • Dentre os AudioNodes, podem ser utilizados GainNodes, BiquadFilterNodes, etc.;
  • Para criar um BiquadFilterNode do tipo passa-faixa, utilize o método createBandpassFilter(), que vai ajustar o filtro para um determinado range de frequência;
  • EX:
BeepListener.changeFilters([BeepListener.createBandpassFilter(3050, 3200), BeepListener.createBandpassFilter(3050, 3200)])
  • A biblioteca também possui filtros prontos, basta invocar o método setBandpassFilters(), que cria e aplica 10 filtros passa-faixa para filtrar as frequências de interesse.

Captura do Beep

  • Utilize o método Capture() para capturar os dados do microfone;
  • Instruções mais detalhadas no JSDocs.

Cuidados e Boas-Práticas

  • Em capturas que utilizam validação por amplitude, o ganho do microfone deve ser calibrado para maior repetibilidade do teste;
  • Caso aplique filtros de frequência, a validação obrigatoriamente deve ser por amplitude também, caso contrário ocorrerão falsas aprovações, já que o microfone sempre lerá na frequência da captura;
  • Ao calibrar o microfone, acione o beep por um período de tempo (±1000ms) antes de invocar o método calibrateMic(), pois ocorre um efeito em que a amplitude da faixa é maior quando o microfone a escuta no início. Após este tempo, a amplitude estabiliza;
  • Beeps contínuos são melhores para detecção do que beeps intermitentes, justamente pelo efeito mencionado acima. Caso receba uma peça com comunicação e beep intermitente, solicite uma mudança no firmware.