MAATRIX / Блог / Navidrome или Airsonic: что выгоднее и когда

Navidrome или Airsonic: что выгоднее и когда

MAATRIX

Если у вас есть коллекция музыки на пару сотен гигабайт и хочется слушать её из любой точки мира без Spotify и без подписок — встаёт вопрос, какой self-hosted сервер ставить. Navidrome и Airsonic — два самых обсуждаемых варианта в русскоязычных и англоязычных комьюнити, и оба совместимы с протоколом Subsonic, то есть работают с одними и теми же мобильными клиентами. Но по железу, стабильности и трудозатратам на обслуживание это два разных мира, и выбор не всегда очевиден.

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

Что это вообще такое и почему их сравнивают

Subsonic — это открытый API для стриминга музыки, придуманный ещё в 2000-х. Оригинальный Subsonic давно стал платным, но вокруг протокола выросла экосистема бесплатных серверов и клиентов: DSub, Substreamer, play:Sub, Symfonium, Amperfy и десятки других приложений на Android и iOS умеют подключаться к любому серверу, который говорит на этом протоколе.

Airsonic — это форк оригинального Subsonic (через Libresonic), написанный на Java. Он тянет за собой всю историю проекта: транскодирование на лету, поддержку подкастов, плейлистов, оценок, статистику прослушиваний. Проект сейчас живёт в состоянии "почти заброшен" — форк Airsonic Advanced подхватывает часть коммитов, но релизы редкие.

Navidrome — более новый проект на Go, написанный с нуля под современные реалии: быстрое сканирование библиотеки, минимальное потребление ресурсов, приятный веб-плеер из коробки, активная разработка. По сути это попытка сделать то же самое, что Airsonic, но без наследия Java-экосистемы 2010-х.

Сравнивать их есть смысл именно на уровне "что вы получите на арендованном сервере за те же деньги" — а тут разница ощутима.

Ресурсы: сколько сервера реально нужно

Главное практическое отличие — это потребление памяти и CPU, а значит и стоимость аренды.

ПараметрNavidromeAirsonic
Язык/рантаймGo, один бинарникJava (JVM), нужен Java 11+
RAM в простое50-100 МБ300-500 МБ (JVM overhead)
RAM при активном сканированиидо 300-400 МБ на 10к+ треков500 МБ-1 ГБ+
Скорость сканирования библиотекизаметно быстреезаметно медленнее
CPU при транскодированиизависит от ffmpeg, сравнимозависит от ffmpeg, сравнимо
Место на диске (сам сервер)десятки МБсотни МБ с зависимостями

Мы намеренно не приводим точные цифры "X МБ на Y треков" — они сильно зависят от размера библиотеки, частоты сканирования, включённого распознавания обложек и версии софта. Но сам факт разницы в архитектуре (нативный бинарник vs JVM) стабильно воспроизводится: Navidrome стартует за секунды и почти не потребляет RAM в простое, JVM у Airsonic держит выделенную кучу памяти постоянно, даже когда сервер никто не трогает.

Практически это означает: под Navidrome спокойно хватает сервера с 1-2 ГБ RAM, а под Airsonic комфортнее чувствовать себя будет конфигурация от 2 ГБ и выше — подробности в материале о том, сколько RAM нужно для Airsonic. На бюджетном VPS эта разница напрямую влияет на тариф, который придётся арендовать.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.

Арендовать сервер

Установка и первый запуск

Navidrome ставится как один статический бинарник или один Docker-контейнер без внешних зависимостей — ни JVM, ни отдельной базы данных (использует встроенный SQLite).

docker run -d \
  --name navidrome \
  -p 4533:4533 \
  -v /data/navidrome/data:/data \
  -v /data/music:/music:ro \
  -e ND_SCANSCHEDULE=1h \
  -e ND_LOGLEVEL=info \
  deluan/navidrome:latest

Airsonic требует Java-рантайм и обычно разворачивается либо через .war в Tomcat, либо через готовый Docker-образ, который уже включает JRE внутри — контейнер получается тяжелее просто за счёт слоя с Java.

docker run -d \
  --name airsonic \
  -p 4040:4040 \
  -v /data/airsonic/data:/airsonic \
  -v /data/music:/airsonic/music:ro \
  -v /data/podcasts:/airsonic/podcasts \
  linuxserver/airsonic

Пошаговые инструкции с нуля на Ubuntu 24.04 — отдельно для Navidrome и отдельно для Airsonic, там же разбор systemd-юнитов и nginx-проксирования для тех, кто не хочет Docker. Если Docker — ваш стандартный путь, есть готовые docker-compose файлы для Navidrome и для Airsonic.

По времени на разворачивание разница ощутима на слабом канале: образ Airsonic с JRE весит заметно больше, чем компактный образ Navidrome, — на VPS с медленным исходящим у провайдера или при первом pull это может занять на порядок больше времени.

Интерфейс и повседневное использование

Здесь разница субъективная, но устойчивая по отзывам пользователей.

Navidrome даёт современный веб-плеер прямо из коробки: тёмная тема, адаптивная вёрстка под мобильные браузеры, поддержка тегов ReplayGain, умные плейлисты (smart playlists) по критериям — жанр, год, рейтинг. Веб-интерфейс достаточно удобен, чтобы им можно было пользоваться как основным способом слушать музыку, не устанавливая отдельное приложение.

Airsonic встроенный веб-плеер тоже имеет, но его UI выглядит устаревшим — время даёт о себе знать. Многие пользователи Airsonic сразу переключаются на сторонние Subsonic-клиенты и веб-интерфейсом почти не пользуются. Зато у Airsonic есть функции, которых в Navidrome долго не было или до сих пор нет в полном объёме: встроенная поддержка подкастов с автозагрузкой новых эпизодов, более развитая система пользователей и общих плейлистов, LDAP-аутентификация из коробки.

Для мобильного доступа оба сервера работают с одними и теми же приложениями — DSub, Substreamer, play:Sub на Android, Amperfy, play:Sub на iOS — потому что оба реализуют Subsonic API. Разницы в клиентском опыте практически нет, кроме нюансов в поддержке отдельных полей API разными версиями серверов.

Транскодирование и форматы

Оба сервера умеют транскодировать на лету через ffmpeg — это нужно, когда у вас библиотека в FLAC, а слушать хочется на мобильном интернете в MP3 или Opus пониже битрейтом.

Navidrome настраивает транскодирование через простую форму в веб-интерфейсе (Settings → Transcoding) — задаёте команду ffmpeg, привязываете к плееру или пользователю.

ffmpeg -i %s -map 0:0 -b:a %bk -v 0 -f mp3 -

У Airsonic логика похожая, транскодирующие профили тоже настраиваются через админку и опираются на установленный в системе ffmpeg. Функционально возможности сопоставимы — оба умеют транскодировать "на лету" под разный битрейт в зависимости от типа сети клиента (мобильная/Wi-Fi). Разница скорее в том, что в Navidrome эта настройка выглядит проще и быстрее заводится с первого раза, а в Airsonic исторически чаще встречаются жалобы на проблемы с определёнными версиями ffmpeg в контейнере.

Сама нагрузка на CPU при транскодировании определяется в первую очередь ffmpeg и целевым битрейтом/кодеком, а не тем, какой сервер его вызывает — здесь оба варианта равны.

Стабильность, бэкапы и обслуживание

Navidrome активно развивается: релизы выходят регулярно, баги закрываются быстро, сообщество на GitHub живое. Из минусов — в моменте после крупного обновления иногда встречаются регрессии, потому что проект молодой и меняется быстрее.

Airsonic (оригинальный) как проект практически заморожен, апдейты редкие. Форк Airsonic Advanced активнее, но всё равно не сравнится по темпам разработки с Navidrome. Зато у Airsonic дольше история — многие баги в базовой функциональности давно найдены и исправлены, поведение предсказуемее для тех сценариев, которые уже годами используются в проде у других людей.

Частые проблемы и их решения по каждому серверу разобраны отдельно: ошибки и решения для Navidrome и ошибки и решения для Airsonic — стоит заглянуть перед тем, как выбирать, если у вас специфичный сценарий (например, библиотека с нестандартными тегами или сетевой диск как хранилище).

По бэкапам оба сервера просты: у Navidrome достаточно сохранить папку с данными (SQLite-база плюс кэш обложек), у Airsonic нужно бэкапить и базу (по умолчанию тоже встроенная, но можно подключить внешнюю), и конфиги. Пошаговые инструкции — бэкап и восстановление Navidrome и бэкап и восстановление Airsonic.

Так что выбрать: сценарии

Если коротко — вот по каким критериям стоит принимать решение.

Выбирайте Navidrome, если:

  • сервер бюджетный (1-2 ГБ RAM), и каждый мегабайт памяти на счету;
  • библиотека большая (десятки тысяч треков) и важна скорость сканирования;
  • хочется современный веб-плеер без установки отдельных приложений;
  • вы готовы мириться с тем, что проект активно меняется и иногда что-то ломается между релизами;
  • нужны умные плейлисты и работа с ReplayGain из коробки.

Выбирайте Airsonic, если:

  • вам критично нужна встроенная поддержка подкастов без костылей;
  • нужна LDAP-аутентификация или сложная система пользователей/групп для семьи или небольшой команды;
  • сервер уже был развёрнут когда-то и вы просто продолжаете его поддерживать, не видя смысла мигрировать;
  • вы предпочитаете более старый, но "обкатанный" временем стек, а не быстро меняющийся молодой проект.

На практике большинство новых установок в 2026 году идут в сторону Navidrome именно из-за экономии ресурсов — при аренде сервера это прямая экономия денег, а не только про "модно/немодно". Airsonic имеет смысл, если вам конкретно нужны его специфичные фичи, которых в Navidrome нет, а не просто "по инерции".

Если вы вообще не привязаны к Subsonic-экосистеме и рассматриваете более крупный медиасервер с поддержкой видео, стоит также посмотреть в сторону Jellyfin или Plex — но это уже другой класс задач, ориентированный не только на музыку.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.

Арендовать сервер

Нужны сами нейросети для контента?

Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.

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

Можно ли перенести библиотеку и плейлисты с Airsonic на Navidrome напрямую?

Прямого миграционного инструмента между базами нет — оба сервера хранят метаданные по-своему. Проще всего пересоздать плейлисты через экспорт/импорт M3U-файлов (оба умеют работать с ними), а сама музыкальная библиотека при этом не трогается — она остаётся на диске, меняется только сервер, который её индексирует.

Требуют ли оба сервера отдельной СУБД типа PostgreSQL или MySQL?

Нет, по умолчанию оба используют встроенные легковесные базы (SQLite у Navidrome, встроенная у Airsonic), внешняя СУБД не обязательна для типичной домашней или небольшой команды-инсталляции.

Что будет с транскодированием, если на сервере нет ffmpeg?

Транскодирование просто не заработает — оба сервера полагаются на системный ffmpeg. Без него можно слушать только исходные форматы файлов, что не всегда удобно на мобильной сети с ограниченным трафиком.

Влияет ли выбор сервера на скорость первого сканирования библиотеки на 50-100 тысяч треков?

Да, заметно — благодаря более лёгкой архитектуре Navidrome в среднем справляется быстрее, но точные цифры сильно зависят от диска (SSD/HDD/сетевое хранилище) и от того, насколько корректны теги в файлах — грязные метаданные замедляют сканирование в обоих случаях.

Можно ли запустить оба сервера на одном VPS одновременно, чтобы сравнить самому?

Да, технически ничего не мешает — они слушают разные порты (4533 у Navidrome по умолчанию, 4040 у Airsonic), можно указать на одну и ту же папку с музыкой в режиме read-only и попробовать оба на практике перед тем, как выбрать один.

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →