Repolode
AhmadHassan-BTed

AhmadHassan-BTed/AhSilence

Motor de cancelación activa de ruido para Android en Kotlin que detecta zumbidos de baja frecuencia con FFT y reproduce audio invertido en fase para cancelarlos.

Estrellas
1,684
Forks
2
Issues abiertos
5
Último commit
el mes pasado

¿Qué es?

AhSilence es una aplicación nativa de cancelación activa de ruido (ANC) para Android, creada con Jetpack Compose y Kotlin. Está pensada para sonidos persistentes de baja frecuencia, como los de unidades de aire acondicionado o zumbidos eléctricos. La aplicación graba el audio ambiental, ejecuta una FFT radix-2 de Cooley-Tukey personalizada para encontrar la frecuencia dominante y, luego, emite una onda sinusoidal invertida para que ambas ondas interfieran de forma destructiva.

Los usuarios pueden ajustar el desfase con un dial de calibración de 360 grados para compensar la latencia del hardware o de Bluetooth, y configurar la amplitud con un control deslizante de ganancia. El modo Pro muestra estos controles, mientras que el modo Simple ofrece una interfaz reducida. La cancelación se ejecuta en un servicio en primer plano con una notificación persistente, por lo que sigue funcionando cuando la pantalla está bloqueada.

El proyecto sigue Clean Architecture y mantiene una capa de dominio escrita únicamente en Kotlin, aislada del código del framework de Android. Según las notas del proyecto, funciona completamente sin conexión, sin llamadas de red ni telemetría. Requiere un dispositivo Android físico con micrófono, ya que los emuladores no admiten las pruebas de audio de baja latencia que necesita. La versión mínima compatible es Android 8.0 (API 26).

Funciones clave

  • 01Detecta el zumbido dominante de baja frecuencia del audio del micrófono mediante una FFT radix-2 personalizada.
  • 02Reproduce ondas sinusoidales invertidas en fase para cancelar la frecuencia detectada.
  • 03Dial de fase de 360 grados para compensar la latencia del hardware o de Bluetooth.
  • 04Control deslizante de ganancia de amplitud, con modos de interfaz Pro y Simple.
  • 05El servicio en primer plano mantiene la cancelación activa mientras la pantalla está bloqueada.
  • 06Funciona completamente sin conexión, sin llamadas de red ni telemetría.

Casos de uso

  • Reducir el zumbido constante de un aire acondicionado o un ventilador mientras se duerme o se trabaja.
  • Estudiar cómo funcionan la detección de frecuencias basada en FFT y el audio en contrafase en Android.
  • Implementación de referencia de Clean Architecture en una aplicación Android de audio en tiempo real.

Inicio rápido

  1. 1

    Clona el repositorio

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

    Entra en la carpeta del proyecto

    cd ahsilence
  3. 3

    Compila el APK de depuración

    ./gradlew clean assembleDebug
  4. 4

    Instálalo en un dispositivo Android físico conectado

    ./gradlew installDebug

Antes de usarlo

  • Se necesita un dispositivo Android físico; los emuladores no son compatibles con las pruebas FFT del micrófono.
  • Para compilar, se requiere Android Studio Ladybug o una versión posterior y JDK 21 o posterior.
  • Solo es compatible con Android 8.0 (API 26) y versiones posteriores.
  • Solo procesa zumbidos persistentes de baja frecuencia; la cancelación multifrecuencia y adaptativa sigue en la hoja de ruta.

Temas

Preguntas frecuentes

¿Qué es AhSilence?
Motor de cancelación activa de ruido para Android en Kotlin que detecta zumbidos de baja frecuencia con FFT y reproduce audio invertido en fase para cancelarlos. AhSilence es una aplicación nativa de cancelación activa de ruido (ANC) para Android, creada con Jetpack Compose y Kotlin. Está pensada para sonidos persistentes de baja frecuencia, como los de unidades de aire acondicionado o zumbidos eléctricos. La aplicación graba el audio ambiental, ejecuta una FFT radix-2 de Cooley-Tukey personalizada para encontrar la frecuencia dominante y, luego, emite una onda sinusoidal invertida para que ambas ondas interfieran de forma destructiva.
¿AhSilence es gratuito? ¿Qué licencia tiene?
AhSilence es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿AhSilence sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de AhSilence fue el 15 sept 2026.
¿Para qué puedo usar AhSilence?
Reducir el zumbido constante de un aire acondicionado o un ventilador mientras se duerme o se trabaja. Estudiar cómo funcionan la detección de frecuencias basada en FFT y el audio en contrafase en Android. Implementación de referencia de Clean Architecture en una aplicación Android de audio en tiempo real.
¿Cómo se instala AhSilence?
Clona el repositorio: git clone https://github.com/ahmadhassan-bted/ahsilence.git Entra en la carpeta del proyecto: cd ahsilence Compila el APK de depuración: ./gradlew clean assembleDebug Instálalo en un dispositivo Android físico conectado: ./gradlew installDebug
¿Dónde consigo AhSilence?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/AhmadHassan-BTed/AhSilence

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados