Repolode
AhmadHassan-BTed

AhmadHassan-BTed/AhSilence

一个基于 Kotlin 的 Android 主动降噪引擎,用 FFT 检测低频嗡鸣并播放反相声波进行抵消。

Star
1,684
Fork
2
未关闭 Issue
5
最近提交
上个月

这是什么?

AhSilence 是一个用 Jetpack Compose 和 Kotlin 编写的原生 Android 主动降噪(ANC)应用。它主要针对空调、电器等持续存在的低频嗡鸣声。应用录制环境声音,通过自研的 Cooley-Tukey 基-2 FFT 算法找出主导频率,再播放反相正弦波,使两列声波发生相消干涉。

用户可以通过 360 度相位校准转盘调整相位偏移,以补偿硬件或蓝牙延迟,并用增益滑块设置振幅。专业模式提供全部控制项,简单模式则提供精简界面。降噪功能运行在前台服务中并显示常驻通知,锁屏后仍可继续工作。

项目采用 Clean Architecture 分层,领域层为纯 Kotlin 代码,与 Android 框架隔离。应用完全离线运行,不发起网络请求,也不收集数据。由于需要低延迟的麦克风音频测试,开发与调试需使用真机,模拟器不适用。最低支持 Android 8.0(API 26)。

核心功能

  • 01通过自研的基-2 FFT 从麦克风音频中检测主导低频嗡鸣。
  • 02播放反相正弦波以抵消检测到的频率。
  • 03360 度相位转盘,用于补偿硬件或蓝牙延迟。
  • 04振幅增益滑块,提供专业和简单两种界面模式。
  • 05前台服务使降噪在锁屏时仍然运行。
  • 06完全离线运行,不发起网络请求,也不收集遥测数据。

适用场景

  • 在睡眠或工作时降低空调、风扇等持续的嗡鸣声。
  • 学习基于 FFT 的频率检测和反相音频在 Android 上的实现原理。
  • 作为实时音频 Android 应用中 Clean Architecture 分层的参考实现。

快速上手

  1. 1

    克隆仓库

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

    进入项目文件夹

    cd ahsilence
  3. 3

    构建调试版 APK

    ./gradlew clean assembleDebug
  4. 4

    安装到已连接的实体 Android 设备

    ./gradlew installDebug

使用前须知

  • 需要实体 Android 设备,模拟器不支持麦克风 FFT 测试。
  • 构建需要 Android Studio Ladybug 或更新版本以及 JDK 21+。
  • 仅支持 Android 8.0(API 26)及以上系统。
  • 目前只能处理持续的低频嗡嗡声;多频率和自适应消除仍在路线图中。

标签

常见问题

AhSilence 是什么?
一个基于 Kotlin 的 Android 主动降噪引擎,用 FFT 检测低频嗡鸣并播放反相声波进行抵消。 AhSilence 是一个用 Jetpack Compose 和 Kotlin 编写的原生 Android 主动降噪(ANC)应用。它主要针对空调、电器等持续存在的低频嗡鸣声。应用录制环境声音,通过自研的 Cooley-Tukey 基-2 FFT 算法找出主导频率,再播放反相正弦波,使两列声波发生相消干涉。
AhSilence 可以免费使用吗?用的什么许可证?
AhSilence 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
AhSilence 还在维护吗?
半年内有更新。AhSilence 最近一次提交是在 2026年9月15日。
AhSilence 适合用来做什么?
在睡眠或工作时降低空调、风扇等持续的嗡鸣声。 学习基于 FFT 的频率检测和反相音频在 Android 上的实现原理。 作为实时音频 Android 应用中 Clean Architecture 分层的参考实现。
AhSilence 怎么安装和运行?
克隆仓库: git clone https://github.com/ahmadhassan-bted/ahsilence.git 进入项目文件夹: cd ahsilence 构建调试版 APK: ./gradlew clean assembleDebug 安装到已连接的实体 Android 设备: ./gradlew installDebug
在哪里获取 AhSilence?
源代码和安装说明在 GitHub 上:https://github.com/AhmadHassan-BTed/AhSilence

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目