Зачем вам это нужно (и почему старые методы не работают)
Вы хотите сделать кавер, создать минусовку для караоке или просто поиграть с семплом. Пробовали спектральное редактирование в Audacity? Получается каша с артефактами. Плагины вроде iZotope RX? Они вытягивают из трека последние соки, но вокал все равно звучит как будто через марлю. Проблема в том, что классическая обработка аудио не умеет «понимать» музыку. Она видит частоты, но не различает гитару от голоса.
ИИ меняет правила игры. Нейросети обучены на тысячах часов музыки. Они не просто фильтруют частоты — они распознают паттерны. Знают, как звучит барабанная бочка, как ведет себя ситара в микс-даун. И могут вычленить вокал с точностью, которая пять лет назад казалась фантастикой.
Но на Mac все сложнее. Нет CUDA. Часто нет дискретной видеокарты. Приходится выбирать между производительностью и удобством. Я протестировал все основные инструменты на MacBook Pro M2 Max и старом Intel i9. Вот что получилось.
Три кита AI-демиксинга
Все вращается вокруг трех проектов. У каждого свой подход, свои сильные и слабые стороны.
| Инструмент | Архитектура | Плюсы | Минусы |
|---|---|---|---|
| Demucs | U-Net + LSTM | Лучшее качество, открытый код | Требует PyTorch, медленнее на CPU |
| Spleeter | U-Net | Быстрый, простой API | Качество ниже, меньше контроля |
| Ultimate Vocal Remover (UVR) | VR Architecture + MDX-Net | GUI, куча моделей | Только Windows (но есть способы) |
Важно: Ни одна нейросеть не даст идеального результата на 100% треков. Сложные миксы (много реверберации, плотный саунд) всегда будут проблемой. Ожидайте артефактов на бэк-вокалах и шипящих согласных.
Demucs: когда качество важнее скорости
Разработчики из Facebook AI Research не стали изобретать велосипед. Взяли архитектуру U-Net для сегментации изображений (да, аудио здесь представлено как спектрограмма-картинка) и добавили LSTM для учета временных зависимостей. Получился монстр, который справляется даже с блэк-металом (проверено лично).
1 Ставим Demucs на Mac
Здесь все через Python. Если не хотите возиться с окружением — используйте Homebrew. Но я предпочитаю виртуальные окружения.
# 1. Ставим PyTorch с поддержкой MPS (Apple Silicon)
pip3 install torch torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu
# 2. Если на Intel, можно попробовать с поддержкой CPU
# pip3 install torch torchaudio
# 3. Ставим Demucs
pip3 install demucs--device mps для ускорения через Metal Performance Shaders. На Intel это не сработает — будет использоваться CPU.2 Базовый запуск и что под капотом
# Разделяем трек на 4 стемы: вокал, барабаны, бас, остальное
demucs --device mps "путь/к/треку.mp3"
# Если нужно только вокал/аккомпанемент
demucs --two-stems vocals "путь/к/треку.flac"Demucs сначала конвертирует аудио в спектрограмму, пропускает через нейросеть, потом преобразует обратно в звук. Самое интересное — модель htdemucs_ft. Она дообучена на датасете с профессиональными сведениями. Дает на 10-15% меньше артефактов.
На MacBook Pro M2 Max трек длиной 4 минуты обрабатывается за ~2.5 минуты. На Intel i9 без GPU — за ~8 минут. Разница ощутимая.
Spleeter: быстрее, проще, но грубее
Проект от Deezer. Когда он появился в 2019, это был прорыв. Сейчас выглядит немного устаревшим, но для быстрых экспериментов подходит идеально. Особенно если не хочется разбираться с PyTorch.
3 Установка через pip (минус зависимости)
pip install spleeterПроблема в том, что Spleeter тянет за собой TensorFlow. На Apple Silicon это может вызвать головную боль. Есть альтернатива — использовать предварительно собранные бинарники.
# Используем Docker, чтобы не засорять систему
brew install docker
docker pull deezer/spleeter:latest
# Запускаем
docker run -v $(pwd)/input:/audio -v $(pwd)/output:/output deezer/spleeter separate -i /audio/track.mp3 -o /outputDocker на Mac использует виртуализацию. На M-серии это работает нормально, на Intel может быть медленно. Проверьте, что у вас достаточно оперативной памяти (минимум 4GB для Docker).
Качество? Spleeter часто оставляет «призраки» инструментов в вокале. Особенно страдают том-томы и хай-хэты. Зато работает в разы быстрее Demucs на CPU.
Ultimate Vocal Remover: фанатский проект, который перерос создателей
UVR — это не одна модель, а целый зоопарк. Разные архитектуры, обученные на разных датасетах. Есть модели специально для рока, для поп-музыки, для классики. И все это в одном интерфейсе.
Но официально UVR не поддерживает macOS. Неофициально — есть несколько способов запустить.
4 UVR на Mac через Wine (способ для смелых)
Wine позволяет запускать Windows-приложения на macOS. Работает нестабильно, но шансы есть.
# 1. Ставим Wine
brew install --cask wine-stable
# 2. Качаем UVR с GitHub
# 3. Пробуем запустить
wine UVR_Interface.exeЭтот способ — лотерея. Может работать, может вылетать с ошибками. На M-серии шансов меньше, чем на Intel. Если не хотите тратить время — используйте Demucs.
5 UVR через Google Colab (без боли)
Почему бы не скинуть тяжелую работу в облако? В репозитории UVR есть ноутбуки для Colab. Загружаете аудио, запускаете ячейки, скачиваете результат. Бесплатно, без установки, но нужен интернет.
Лично я пользуюсь этим способом для сложных треков, где нужны специфичные модели из UVR (например, MDX-Net для джаза).
Сравниваем результат: какой инструмент выбрать
Я прогнал один и тот же трек (альтернативный рок, плотный микс) через все три системы. Вот что получилось:
- Demucs htdemucs_ft: Вокал чистый, но немного «стерильный». Бас-барабан почти не просачивается. На фортепианных партиях слышны легкие артефакты.
- Spleeter (4 stems): Быстро, но в вокале остался шум от гитарного перегруза. Пришлось дочищать спектральным редактором.
- UVR (MDX-Net): Самый натуральный звук вокала, но иногда «съедает» согласные. Требует тонкой настройки параметров.
Мой выбор? Для большинства задач — Demucs. Баланс качества, скорости и простоты использования. Если нужно быстро набросать демо — Spleeter. Если хочется повозиться с настройками под конкретный трек — UVR через Colab.
Частые ошибки и как их избежать
Собрал подборку проблем, с которыми сталкивался сам и читатели моего блога.
| Ошибка | Причина | Решение |
|---|---|---|
| Demucs падает с ошибкой CUDA | PyTorch пытается использовать GPU, которого нет | Добавьте флаг --device cpu или --device mps для Apple Silicon |
| Spleeter выдает тишину | Проблема с аудиокодеком | Конвертируйте трек в WAV 44.1kHz 16bit перед обработкой |
| UVR не запускается через Wine | Отсутствуют зависимости .NET | Используйте готовую сборку с PortableApps.com или Colab |
| Результат с артефактами «под водой» | Нейросеть путает вокал с реверберацией | Попробуйте модель с постобработкой (Demucs extra) или уменьшите размер сегмента |
Что дальше? Будущее извлечения вокала на Mac
MLX — фреймворк от Apple для запуска моделей на их чипах. Пока что под него портировали только STT-модели вроде Parakeet. Но скоро дойдет очередь и до сепарации аудио. Представьте: Demucs, работающий в 3 раза быстрее на M3 Max без дополнительных танцев с бубном.
А пока — используйте то, что есть. И помните: даже лучшая нейросеть не заменит человеческого слуха. Иногда проще найти оригинальные stems (на Splice, например), чем выдирать вокал из готового микса.