StemDeck разделяет музыку на дорожки локально и бесплатно

StemDeck разделяет музыку на дорожки локально и бесплатно

На Hacker News опубликовали StemDeck, бесплатное приложение с открытым исходным кодом для разделения музыки на отдельные дорожки (стемы), которое работает полностью локально, без облака и подписки. Пользователь перетаскивает в программу файл MP3, WAV, FLAC, OGG/Opus, MP4 или M4A либо вставляет ссылку на YouTube, и StemDeck разбивает запись на до шести дорожек: вокал, барабаны, бас, гитара, пианино и всё остальное. Разделение выполняет открытая нейросеть Demucs (модель htdemucs_6s) от Meta AI; отдельно, по запросу, можно ещё разбить вокал на основной и бэк-вокал моделью UVR-MDX-NET Karaoke 2, обученной Anjok07 в рамках проекта Ultimate Vocal Remover.

Готовые дорожки открываются в браузерном микшере в стиле цифровой аудиостанции (DAW): можно приглушать и солировать каждую дорожку, двигать громкость фейдером, зумить и листать волновую форму, зацикливать участок на плеере и выгружать либо отдельные дорожки, либо собранный микс из выбранных дорожек одним WAV-файлом. Приложение также показывает темп (BPM), тональность и её достоверность, громкость по стандарту BS.1770 и пиковый уровень сигнала. Есть библиотека с папками, поиском и корзиной для хранения обработанных треков.

Авторы StemDeck прямо позиционируют его как бесплатную локальную альтернативу платным облачным сервисам разделения звука вроде Moises и LALAL.AI: без регистрации, без квот на обработку, без загрузки файлов на чужой сервер и без подписки. По их словам, StemDeck ничего не хранит, не кеширует и не пересылает куда-либо скачанный через YouTube контент, вся обработка происходит на машине пользователя. Проект не берёт денег, спонсорской поддержки или финансирования ни от кого.

Технически StemDeck собран на Python 3.12 (управляется через uv) с бэкендом на FastAPI, который отдаёт REST и Server-Sent Events; фронтенд, обычный JavaScript без фреймворка и сборки, с Web Audio API и отрисовкой волновых форм на canvas. Настольные приложения для macOS и Windows сделаны на Tauri v2 (Rust плюс системный WebView). При первом запуске десктопное приложение докачивает Python-рантайм (около 500 МБ), FFmpeg и саму модель Demucs (около 170 МБ); при установке из исходников для модели Demucs нужно около 170 МБ свободного места. StemDeck сам определяет доступное устройство для вычислений: CUDA на видеокартах NVIDIA, MPS на Apple Silicon либо CPU как резервный вариант. Помимо macOS-инсталлятора и Windows-сборки, StemDeck можно запустить из исходников через uv, а также через Docker, образ публикуется в GHCR с тегами edge, latest и версионными, включая версию с поддержкой CUDA-ускорения на Linux с NVIDIA GPU; отдельно есть шаблон для установки в Unraid Community Applications.

Сами авторы честно оговаривают ограничение: StemDeck не пытается конкурировать с коммерческими инструментами разделения звука и не претендует на их скорость, качество, мобильный доступ или расширенные музыкантские функции, он закрывает базовый сценарий и на этом останавливается.

Ключевые факты

  • StemDeck, бесплатное приложение с открытым кодом, которое разделяет аудиофайл или YouTube-видео на до шести дорожек: вокал, барабаны, бас, гитара, пианино, остальное
  • Разделение делает открытая модель Demucs (htdemucs_6s) от Meta AI; отдельно доступно разбиение вокала на основной и бэк-вокал моделью UVR-MDX-NET Karaoke 2 от Anjok07
  • Вся обработка идёт локально на компьютере пользователя, без аккаунта, без лимитов, без загрузки файлов на сервер и без подписки, в отличие от облачных сервисов Moises и LALAL.AI
  • Есть встроенный браузерный микшер в стиле DAW: соло/мьют дорожек, зацикливание, экспорт отдельных дорожек или собранного микса, а также анализ темпа, тональности и громкости трека
  • Приложение доступно как инсталлятор для macOS и Windows, как Docker-образ (в том числе с поддержкой CUDA) и как проект для запуска из исходников через uv

Почему это важно

Разделение музыки на дорожки (вокал отдельно от инструментов, барабаны отдельно от баса) обычно продают как облачную услугу с подпиской, лимитами на количество треков и загрузкой файла на чужой сервер. StemDeck предлагает тот же результат, до шести дорожек через открытую модель Demucs, но полностью локально и бесплатно, без регистрации и без отправки аудио куда-либо. Это типичный пример того, как готовая открытая нейросеть (Demucs от Meta AI уже несколько лет в открытом доступе) получает удобную настольную обёртку и становится доступной обычному пользователю, а не только тем, кто умеет запускать модели из командной строки.

Кому это важно

Инструмент рассчитан на музыкантов, диджеев, звукорежиссёров-любителей и всех, кто хочет вытащить вокал или инструментальную партию из уже имеющегося у них трека, например, для разбора песни, тренировки, караоке-версии или сведения кавера. Также он подойдёт тем, кто по соображениям приватности не хочет загружать музыку на сторонние облачные сервисы вроде Moises или LALAL.AI. Профессионалам, которым нужны скорость, максимальное качество разделения, мобильное приложение или продвинутые музыкантские функции, авторы StemDeck сами рекомендуют платные коммерческие продукты, по их словам, StemDeck и не пытается с ними конкурировать.

Как это применить

StemDeck распространяется в нескольких форматах. Пользователям macOS и Windows проще всего скачать готовый инсталлятор (DMG или zip) с GitHub Releases: при первом запуске приложение само подтягивает Python-рантайм (около 500 МБ), FFmpeg и модель Demucs (около 170 МБ), дальше запускается за секунды. Для Linux и тех, кто предпочитает собирать из исходников, нужны Python 3.12, ffmpeg и uv, после git clone и uv sync сервер поднимается локально на порту 8000 и открывается в браузере. Есть и готовый Docker-образ в GHCR (включая сборку с CUDA для NVIDIA-серверов) и отдельный шаблон для Unraid. В самом приложении процесс простой: перетащить аудиофайл или вставить ссылку на YouTube, выбрать нужные дорожки из шести и нажать «Process», после разделения дорожки открываются в микшере, где их можно прослушать, приглушить, свести и выгрузить готовый WAV.

Можно ли доверять

StemDeck, открытый проект, код которого выложен на GitHub, что позволяет любому проверить, как именно устроена обработка и куда уходят (точнее, не уходят) данные. Заявления авторов о том, что приложение ничего не хранит, не кеширует и не пересылает скачанный контент, а вся обработка происходит локально, соответствуют самой архитектуре инструмента, это не облачный сервис с сервером, принимающим файлы, а локальное приложение с моделью, скачанной один раз на диск пользователя. При этом в описании проекта нет данных о конкретной лицензии с открытым кодом, нет независимых замеров точности или скорости разделения по сравнению с чистым Demucs или платными сервисами, и не указано, кто именно (человек или команда) стоит за самим StemDeck, названы только сторонние модели и их авторы (Demucs от Meta AI, UVR-MDX-NET Karaoke 2 от Anjok07), на которых он построен.

Риски и подводные камни

Первый запуск требует докачки не менее полугигабайта данных (Python-рантайм плюс модель Demucs), а без видеокарты с поддержкой CUDA или Apple Silicon с MPS разделение будет идти на CPU заметно медленнее. Сами авторы честно предупреждают, что StemDeck не конкурирует с коммерческими сервисами по скорости, качеству разделения, наличию мобильного приложения или продвинутым инструментам для музыкантов, он закрывает только базовый сценарий «разделить трек на дорожки локально». Поддержка YouTube рассчитана только на контент, который пользователь имеет право обрабатывать, это не инструмент для массового скачивания чужой музыки. Отдельно стоит учитывать, что в описании проекта не указана открытая лицензия и нет проверенных цифр по качеству или скорости разделения, судить об этом можно будет только на собственном опыте использования.

Компания Meta Platforms признана экстремистской организацией, её деятельность на территории РФ запрещена.