Repolode
AhmadHassan-BTed

AhmadHassan-BTed/AhSilence

Движок активного шумоподавления для Android на Kotlin: обнаруживает низкочастотный гул с помощью FFT и воспроизводит звук в противофазе, чтобы его компенсировать.

Звёзды
1,684
Форки
2
Открытые issues
5
Последний коммит
в прошлом месяце

Что это?

AhSilence — нативное приложение для активного шумоподавления (ANC) на Android, созданное с помощью Jetpack Compose и Kotlin. Оно предназначено для подавления постоянных низкочастотных звуков, например гула кондиционера или электрического оборудования. Приложение записывает окружающий звук, с помощью собственной FFT Cooley-Tukey с radix-2 находит доминирующую частоту и воспроизводит синусоидальный сигнал в противофазе, чтобы волны взаимно гасились.

Пользователи могут регулировать фазовый сдвиг с помощью калибровочного диска на 360 градусов, компенсируя задержку оборудования или Bluetooth, а также задавать амплитуду ползунком усиления. В режиме Pro доступны эти настройки, а в режиме Simple — упрощённый интерфейс. Шумоподавление работает в foreground service с постоянным уведомлением, поэтому продолжает работать при заблокированном экране.

Проект следует принципам Clean Architecture: доменный слой, написанный только на Kotlin, изолирован от кода Android framework. Согласно описанию проекта, приложение полностью работает офлайн, без сетевых запросов и телеметрии. Для работы требуется физическое Android-устройство с микрофоном: эмуляторы не поддерживают необходимые для тестирования аудио низкие задержки. Минимальная поддерживаемая версия — Android 8.0 (API 26).

Ключевые возможности

  • 01Определяет доминирующий низкочастотный гул по звуку с микрофона с помощью собственной FFT radix-2.
  • 02Воспроизводит синусоидальные сигналы в противофазе, чтобы подавить обнаруженную частоту.
  • 03Калибровочный диск фазы на 360 градусов компенсирует задержку оборудования или Bluetooth.
  • 04Ползунок усиления амплитуды и режимы интерфейса Pro и Simple.
  • 05Foreground service продолжает шумоподавление при заблокированном экране.
  • 06Полностью офлайн, без сетевых запросов и телеметрии.

Сценарии использования

  • Снижение постоянного гула кондиционера или вентилятора во время сна или работы.
  • Изучение обнаружения частот с помощью FFT и работы звука в противофазе на Android.
  • Пример Clean Architecture в Android-приложении для обработки аудио в реальном времени.

Быстрый старт

  1. 1

    Клонируйте репозиторий

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

    Перейдите в папку проекта

    cd ahsilence
  3. 3

    Соберите debug APK

    ./gradlew clean assembleDebug
  4. 4

    Установите приложение на подключённое физическое устройство Android

    ./gradlew installDebug

Что важно знать

  • Для тестирования FFT микрофона требуется физическое устройство Android; эмуляторы не поддерживаются.
  • Для сборки необходимы Android Studio Ladybug или новее и JDK 21 или новее.
  • Поддерживается только Android 8.0 (API 26) и выше.
  • Обрабатываются только постоянные низкочастотные гулы; подавление нескольких частот и адаптивное шумоподавление пока в дорожной карте.

Темы

Частые вопросы

Что такое AhSilence?
Движок активного шумоподавления для Android на Kotlin: обнаруживает низкочастотный гул с помощью FFT и воспроизводит звук в противофазе, чтобы его компенсировать. AhSilence — нативное приложение для активного шумоподавления (ANC) на Android, созданное с помощью Jetpack Compose и Kotlin. Оно предназначено для подавления постоянных низкочастотных звуков, например гула кондиционера или электрического оборудования. Приложение записывает окружающий звук, с помощью собственной FFT Cooley-Tukey с radix-2 находит доминирующую частоту и воспроизводит синусоидальный сигнал в противофазе, чтобы волны взаимно гасились.
AhSilence можно использовать бесплатно? Какая у него лицензия?
AhSilence распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
AhSilence всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в AhSilence — 15 сент. 2026 г..
Для чего можно использовать AhSilence?
Снижение постоянного гула кондиционера или вентилятора во время сна или работы. Изучение обнаружения частот с помощью FFT и работы звука в противофазе на Android. Пример Clean Architecture в Android-приложении для обработки аудио в реальном времени.
Как установить AhSilence?
Клонируйте репозиторий: git clone https://github.com/ahmadhassan-bted/ahsilence.git Перейдите в папку проекта: cd ahsilence Соберите debug APK: ./gradlew clean assembleDebug Установите приложение на подключённое физическое устройство Android: ./gradlew installDebug
Где скачать AhSilence?
Исходный код и инструкции по установке — на GitHub: https://github.com/AhmadHassan-BTed/AhSilence

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты