Repolode
AhmadHassan-BTed

AhmadHassan-BTed/AhSilence

Um mecanismo de cancelamento ativo de ruído para Android, feito em Kotlin, que detecta zumbidos de baixa frequência com FFT e reproduz áudio com fase invertida para cancelá-los.

Estrelas
1,684
Forks
2
Issues abertas
5
Último commit
mês passado

O que é?

AhSilence é um app nativo de cancelamento ativo de ruído (ANC) para Android, desenvolvido com Jetpack Compose e Kotlin. Ele foi criado para lidar com sons persistentes de baixa frequência, como os de aparelhos de ar-condicionado ou zumbidos elétricos. O app grava o áudio ambiente, executa uma FFT radix-2 Cooley-Tukey personalizada para encontrar a frequência dominante e, em seguida, emite uma onda senoidal invertida para que as duas ondas se anulem por interferência destrutiva.

Os usuários podem ajustar a diferença de fase com um seletor de calibração de 360 graus para compensar a latência do hardware ou do Bluetooth, além de definir a amplitude com um controle deslizante de ganho. O modo Pro oferece esses controles, enquanto o modo Simple apresenta uma interface mais enxuta. O cancelamento é executado em um serviço em primeiro plano com uma notificação persistente, então continua funcionando com a tela bloqueada.

O projeto segue Clean Architecture, com uma camada de domínio escrita somente em Kotlin e isolada do código do framework Android. Segundo o projeto, ele funciona totalmente offline, sem chamadas de rede nem telemetria. É necessário um dispositivo Android físico com microfone, pois emuladores não oferecem suporte aos testes de áudio de baixa latência necessários. A versão mínima compatível é o Android 8.0 (API 26).

Recursos principais

  • 01Detecta o zumbido dominante de baixa frequência captado pelo microfone usando uma FFT radix-2 personalizada.
  • 02Reproduz ondas senoidais com fase invertida para cancelar a frequência detectada.
  • 03Seletor de fase de 360 graus para compensar a latência do hardware ou do Bluetooth.
  • 04Controle deslizante de ganho da amplitude, com modos de interface Pro e Simple.
  • 05O serviço em primeiro plano mantém o cancelamento ativo com a tela bloqueada.
  • 06Funciona totalmente offline, sem chamadas de rede nem telemetria.

Casos de uso

  • Reduzir o zumbido constante de um ar-condicionado ou ventilador enquanto dorme ou trabalha.
  • Estudar como funcionam a detecção de frequência baseada em FFT e o áudio em antifase no Android.
  • Usar como implementação de referência de Clean Architecture em um app Android de áudio em tempo real.

Início rápido

  1. 1

    Clone o repositório

    git clone https://github.com/ahmadhassan-bted/ahsilence.git
  2. 2

    Entre na pasta do projeto

    cd ahsilence
  3. 3

    Compile o APK de depuração

    ./gradlew clean assembleDebug
  4. 4

    Instale em um dispositivo Android físico conectado

    ./gradlew installDebug

Antes de usar

  • É necessário um dispositivo Android físico; emuladores não são compatíveis com testes de FFT do microfone.
  • Para compilar, é necessário Android Studio Ladybug ou posterior e JDK 21 ou superior.
  • Compatível apenas com Android 8.0 (API 26) ou superior.
  • Processa apenas zumbidos persistentes de baixa frequência; o cancelamento multifrequencial e adaptativo ainda está no roadmap.

Tópicos

Perguntas frequentes

O que é AhSilence?
Um mecanismo de cancelamento ativo de ruído para Android, feito em Kotlin, que detecta zumbidos de baixa frequência com FFT e reproduz áudio com fase invertida para cancelá-los. AhSilence é um app nativo de cancelamento ativo de ruído (ANC) para Android, desenvolvido com Jetpack Compose e Kotlin. Ele foi criado para lidar com sons persistentes de baixa frequência, como os de aparelhos de ar-condicionado ou zumbidos elétricos. O app grava o áudio ambiente, executa uma FFT radix-2 Cooley-Tukey personalizada para encontrar a frequência dominante e, em seguida, emite uma onda senoidal invertida para que as duas ondas se anulem por interferência destrutiva.
AhSilence é gratuito? Qual é a licença?
AhSilence é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
AhSilence ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de AhSilence foi em 15 de set. de 2026.
Para que posso usar AhSilence?
Reduzir o zumbido constante de um ar-condicionado ou ventilador enquanto dorme ou trabalha. Estudar como funcionam a detecção de frequência baseada em FFT e o áudio em antifase no Android. Usar como implementação de referência de Clean Architecture em um app Android de áudio em tempo real.
Como instalar AhSilence?
Clone o repositório: git clone https://github.com/ahmadhassan-bted/ahsilence.git Entre na pasta do projeto: cd ahsilence Compile o APK de depuração: ./gradlew clean assembleDebug Instale em um dispositivo Android físico conectado: ./gradlew installDebug
Onde consigo AhSilence?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/AhmadHassan-BTed/AhSilence

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados