Open source медиа сервер 2026: 10 лучших альтернатив Plex

open source медиа сервер

Open source media server в 2026 году — это уже не «бесплатная замена Plex для гиков». Это нормальный домашний кинотеатр без подписок, без телеметрии и без сюрпризов вроде того что Plex провернул в 2025-м, заперев удалённый стрим за пейволлом. 25 лет в SRE и сетях, и за последний год развернул, сломал и починил все десять решений из этого списка. Расскажу что выбрать под NAS, под homelab, под Smart TV и под старый Raspberry Pi с 1 ГБ памяти.

Быстрый ответ
Если коротко — какой open source media server взять в 2026:
  • Jellyfin 10.11.8 — универсальный сервер, видео+музыка+книги, аппаратный транскодинг, мобильные клиенты. Лучший общий выбор.
  • Navidrome 0.61.2 — только музыка. Лёгкий, быстрый, Subsonic API, работает на Pi.
  • Gerbera 3.2.1 — чистый DLNA/UPnP для Smart TV. Без веб-плеера, но ест 30 МБ RAM.
  • Universal Media Server 15.5.0 — DLNA с агрессивным транскодингом для старых телевизоров.
  • Kodi 21.3 Omega — HTPC на самом ТВ-боксе, не сервер в классическом смысле.

Берёшь NAS с x86 и Intel iGPU — ставь Jellyfin. Только музыка — Navidrome. Хочешь чтобы Samsung 2014 года увидел сервер по DLNA — Gerbera или UMS.

Содержание: показать

Диагноз: Plex закрылся, надо валить

Поднял Plex дома. Года три-четыре он работал. А в апреле 2025 пришло письмо: удалённый стрим теперь только по подписке. Plex Pass или Remote Watch Pass. С ноября 2025 это начали реально включать через Roku, в течение 2026 — на Apple TV, Fire TV, Android TV и сторонних клиентах. Знакомо?

Я не против платить за софт. Я против платить за доступ к собственным файлам на собственном железе. Поэтому open source media server в 2026 — не вопрос идеологии, а вопрос гигиены.

Что ты получишь к концу статьи:

  • сравнительная таблица 10 платформ с реальными цифрами по RAM, транскодингу и поддержке устройств
  • понимание что выбрать под твой сценарий: NAS, homelab, Smart TV, музыка
  • готовые docker-compose для топ-3 решений
  • разбор аппаратного ускорения — Intel Quick Sync, NVIDIA NVENC, AMD AMF
  • troubleshooting типовых граблей

Времени на чтение — минут 25. Времени на разворачивание Jellyfin по этому материалу — минут 15 если у тебя уже есть Docker.

Сравнительная таблица: 10 open source медиа серверов 2026

Это таблица-отправная точка. Дальше разбираю каждое решение в деталях. Версии актуальны на момент публикации — перед установкой проверь свежие релизы на GitHub проекта.

Платформа Версия Фокус HW транскодинг Web UI DLNA Live TV RAM idle Сложность Лучше всего для
Jellyfin 10.11.8 Видео+музыка+книги Intel/NVIDIA/AMD/VAAPI Да Да Да + DVR ~250 МБ Средняя Универсальный сервер
Kodi 21.3 Omega HTPC + клиент Да (на стороне клиента) Нет (только TUI) Да (UPnP) Да через PVR-клиенты ~200 МБ Высокая Подключение к ТВ напрямую
Universal Media Server 15.5.0 DLNA + транскодинг FFmpeg/MEncoder Web Player Да (главное) Нет ~400 МБ (Java) Низкая Старые Smart TV, PS3, Xbox
Gerbera 3.2.1 Чистый UPnP Через FFmpeg Да (база/файлы) Да (ядро) Нет ~30 МБ Средняя Лёгкий DLNA на Pi
ReadyMedia (MiniDLNA) 1.3.3 Минималистичный DLNA Нет Нет Да Нет ~15 МБ Низкая Самый лёгкий DLNA
Rygel 0.42 UPnP/DLNA для Linux GStreamer Нет Да Нет ~50 МБ Средняя GNOME/Linux desktop
Navidrome 0.61.2 Только музыка FFmpeg (audio) Да Нет (только Subsonic) Нет ~50 МБ Низкая Личный Spotify
Funkwhale 1.4 Музыка + федерация FFmpeg Да Нет Нет ~600 МБ Высокая Музыка + ActivityPub
Lyrion Music Server (LMS) 9.1.1 Squeezebox экосистема FFmpeg/sox Да Через плагины Радио ~150 МБ Средняя Multi-room hi-fi
Audiobookshelf 2.x Аудиокниги + подкасты FFmpeg (audio) Да Нет Нет ~80 МБ Низкая Замена Audible

Цифры по RAM — на пустом сервере без активных стримов. Под нагрузкой Jellyfin с 4K-транскодингом съест 1-2 ГБ, плюс GPU. У Navidrome нагрузка от размера библиотеки — 30 000 треков укладываются в 50-100 МБ.

Почему open source выигрывает в 2026

Семь причин почему я перевёл всех знакомых с Plex на FOSS:

  1. Удалённый стрим у Plex теперь платный — Plex Pass $6.99/мес или Remote Watch Pass $1.99/мес. На своём сервере. Со своими файлами. Странно.
  2. Телеметрия — Plex/Emby собирают что и когда ты смотришь. Jellyfin не собирает ничего, это записано в его манифесте.
  3. Аппаратное ускорение бесплатно — в Jellyfin Intel Quick Sync, NVIDIA NVENC и AMD VAAPI работают из коробки. У Plex это Plex Pass-only.
  4. Контроль обновлений — твой Docker, твой compose, твоя версия. Никто не выкатит тебе ребрендинг приложения и не уберёт половину функций как Plex с Roku-апой.
  5. Безопасность аудитируема — код Jellyfin на GitHub, CVE раскрываются публично (см. 10.11.7 от октября 2025).
  6. Низкие требования — Navidrome крутится на Raspberry Pi Zero. Plex — нет.
  7. Сообщество вместо саппорта — на форуме Jellyfin тебе ответят за пару часов. В Plex Support тикете — через неделю и шаблоном.

Минус один и существенный: единого «полированного» приложения уровня Plex для семейных пользователей у open source пока нет. Жена и дети не всегда хотят разбираться с интерфейсом Jellyfin. Об этом ниже.

Архитектура типового self-hosted media stack

Чтобы было понятно куда мы суём эти серверы и как они общаются — вот как обычно выглядит домашняя установка.

%%{init: {
  'theme': 'base',
  'themeVariables': {
    'primaryColor': '#ffffff',
    'primaryTextColor': '#1e293b',
    'primaryBorderColor': '#94a3b8',
    'lineColor': '#64748b',
    'fontSize': '15px',
    'fontFamily': 'ui-sans-serif, system-ui, sans-serif'
  },
  'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}
}}%%
flowchart TD
    A["Хранилище: NAS или диски"] --> B["Docker host: Linux x86_64"]
    B --> C["Jellyfin контейнер"]
    B --> D["Navidrome контейнер"]
    B --> E["Reverse proxy: Caddy или Traefik"]
    C --> F["GPU: Intel iGPU или NVIDIA"]
    E --> G["LAN: Smart TV, телефоны"]
    E --> H["WAN: VPN или Cloudflare Tunnel"]
    style A fill:#f8fafc,stroke:#94a3b8,stroke-width:2px,color:#1e293b
    style B fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
    style C fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
    style D fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
    style E fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
    style F fill:#f8fafc,stroke:#f97316,stroke-width:2px,color:#9a3412
    style G fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
    style H fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af

Файлы лежат на NAS или просто на дисках. Docker крутится на отдельном Linux-боксе или на самом NAS если он x86 (Synology Plus, TrueNAS, Unraid). Jellyfin пробрасывает GPU через /dev/dri для Intel или --gpus all для NVIDIA. Снаружи — reverse proxy с TLS, доступ через VPN типа Tailscale или Cloudflare Tunnel.

1. Jellyfin — основной выбор в 2026

Jellyfin — это форк Emby 3.5.2 от 2018 года, ушедший в чистый FOSS. На апрель 2026 актуальная версия — 10.11.8. Это форк форка проекта который изначально был форком, и звучит как мем, но работает оно отлично.

Что умеет Jellyfin

  • Видео: H.264, H.265/HEVC, AV1, VP9, MPEG-2, контейнеры MKV/MP4/TS
  • Аудио: FLAC, ALAC, MP3, AAC, Opus, Vorbis, DSD через транскодинг
  • Аппаратный транскодинг: Intel Quick Sync (QSV), NVIDIA NVENC, AMD VAAPI/AMF, Apple VideoToolbox, Raspberry Pi V4L2
  • HDR: HDR10, HDR10+, Dolby Vision (с тонмаппингом)
  • Subtitles: PGS, SRT, ASS/SSA, VTT
  • Live TV + DVR через HDHomeRun, TVHeadend, IPTV M3U
  • Книги (через плагин Bookshelf), музыка (полноценно), подкасты, фотографии
  • Клиенты: web, Android, Android TV, iOS, Roku, Samsung Tizen, LG webOS, Kodi-плагин, Symfonium для музыки

Что нового в 10.11

Релиз 10.11 от октября 2025 — один из самых крупных за всю историю проекта. Перешли на EF Core для базы, добавили нативные бэкапы прямо из дашборда, переписали часть веб-UI. На больших библиотеках (10 000+ айтемов) пока есть регрессии по скорости загрузки — точечные релизы 10.11.2 и далее их закрывают, последний 10.11.8 от апреля 2026 закрывает регрессии 10.11.7 и важные CVE.

Перед обновлением
10.11.7 содержал критические исправления безопасности. Если ты на 10.11.x старее — обновись на 10.11.8. Перед апгрейдом сделай бэкап /config через встроенный планировщик (Dashboard — Scheduled Tasks — Backup Database).

Установка через Docker — основной сценарий

Создай compose-файл. Я предполагаю что у тебя Linux с Docker и Intel iGPU — самая частая конфигурация на NAS и homelab.


services:
  jellyfin:
    image: jellyfin/jellyfin:10.11.8
    container_name: jellyfin
    user: 1000:1000
    network_mode: host
    volumes:
      - ./config:/config
      - ./cache:/cache
      - /mnt/media:/media:ro
    devices:
      - /dev/dri:/dev/dri
    group_add:
      - "109"   # render group в Debian/Ubuntu
    restart: unless-stopped
    environment:
      - JELLYFIN_PublishedServerUrl=http://192.168.1.10:8096

Подними:


docker compose up -d
docker logs -f jellyfin

Открой http://твой-ip:8096. Пройди мастер: язык, админ, библиотеки. Указывай /media/movies, /media/tv и так далее как ты их смонтировал внутрь контейнера.

Аппаратный транскодинг — где обычно ломается

Главная боль при первой установке — GPU не пробрасывается. Проверь:


ls -la /dev/dri/
# должны быть card0 и renderD128

# проверь к какой группе привязан renderD128
stat -c "%G %g" /dev/dri/renderD128
# обычно render с GID 109 на Debian/Ubuntu, 989 на Fedora

# внутри контейнера
docker exec -it jellyfin /usr/lib/jellyfin-ffmpeg/ffmpeg -hwaccels

Если в выводе есть vaapi и qsv — GPU виден. Идёшь в Dashboard — Playback — Transcoding и выбираешь Intel QuickSync (QSV), указывай /dev/dri/renderD128. Включи Tone Mapping для HDR-контента.

Плюсы Jellyfin

  • Полный пакет: видео, музыка, книги, ТВ — всё в одном
  • Аппаратный транскодинг бесплатно для всех GPU
  • Огромная экосистема клиентов — даже на старом Samsung Tizen есть Jellyfin Tizen
  • Активная разработка: семь лет проекту, к декабрю 2025 отметили

Минусы Jellyfin

  • Веб-UI местами не такой полированный как Plex
  • На больших библиотеках 10.11 медленнее чем 10.10 (фиксят)
  • Нет встроенного Discovery вне локальной сети — надо разбираться с reverse proxy/VPN
  • Иногда метаданные подбираются криво, надо ручками править

2. Kodi — если фронт важнее бэка

Kodi — это HTPC-софт, не сервер в традиционном смысле. Ты ставишь его на тот же ТВ-бокс или Pi что подключён к телевизору, и он сам играет файлы из сетевой папки. Может работать как UPnP-сервер, но это побочная функция.

На май 2026 актуальная стабильная — 21.3 «Omega». 22 «Piers» в Alpha 3 с конца марта 2026, релиз скоро. Версия 22 принесла поддержку PipeWire на Linux, улучшенный AV1 hardware decode, FFmpeg 8.0.1, поддержку Wayland Color Management для HDR.

Kodi имеет смысл если:

  • У тебя есть x86 mini-PC, Raspberry Pi или Android TV-бокс воткнутый прямо в телевизор
  • Ты хочешь интерфейс на 10-foot UI — управление с пульта, крупный шрифт
  • Тебе нужны сторонние аддоны: PVR-клиенты для IPTV, скиннинг, скрейперы
  • Ты хочешь LibreELEC — минимальный дистрибутив только под Kodi, грузится за 15 секунд

Kodi не имеет смысла как «центральный сервер для всех устройств в доме». Для этого тебе всё равно нужен отдельный медиа-сервер — Jellyfin или Gerbera — а Kodi подключается к нему как клиент.

Связка Jellyfin + Kodi-плагин Jellycon/Jellyfin for Kodi — очень популярная схема: на сервере Jellyfin метаданные и стриминг, на телевизоре Kodi с красивым TV-интерфейсом.

3. Universal Media Server (UMS) — DLNA с турбонаддувом

UMS — форк PS3 Media Server, написанный на Java. Версия 15.5.0 от февраля 2026 добавила поддержку телевизоров LG и Samsung 2026 года выпуска, нативный Dolby Vision в MKV для LG TV 2022+, фолдер-серч.

Главная фишка UMS — агрессивный транскодинг под капризные старые устройства. Если у тебя Sony Bravia 2012 года которая отказывается понимать MKV с FLAC внутри — UMS на лету перекодирует это в формат который телевизор сожрёт. Под капотом FFmpeg, MEncoder, tsMuxeR, AviSynth, VLC.

Из коробки видит PS3, Xbox, Roku, Apple TV, FireTV, всё семейство Smart TV (LG, Samsung, Sony, Panasonic), DLNA-приёмники, Sonos, ресиверы Yamaha/Denon.

Установка UMS на Linux через Docker


services:
  ums:
    image: universalmediaserver/ums:15.5.0
    container_name: ums
    network_mode: host
    volumes:
      - ./ums-config:/root/.config/UMS
      - /mnt/media:/media:ro
    restart: unless-stopped

Веб-интерфейс — на порту 9001. Веб-плеер — на 9001 в /web/. DLNA-broadcast работает только в host network mode — не пытайся пихать UMS в bridge, не увидят его телевизоры.

Плюсы: ставишь и оно работает с любым устройством. Минусы: Java-процесс жрёт 400-700 МБ RAM на простое, веб-UI довольно технический, мобильного клиента нет (только сторонние UPnP-плееры).

4. Gerbera — чистый UPnP без бубна

Gerbera — наследник MediaTomb. C++, libupnp/libnpupnp под капотом. Версия 3.2.1 от 2026 года. Это не медиа-плеер с веб-плеером, это бэкенд который раздаёт твою библиотеку по UPnP/DLNA. Веб-интерфейс есть, но он для администрирования базы и просмотра файловой структуры, не для просмотра кино.

Кому Gerbera:

  • Тебе нужен лёгкий DLNA-сервер на Pi или старом мини-ПК
  • Воспроизведение через нативные DLNA-приложения телевизора, BubbleUPnP, VLC, Kodi
  • Тебе важна тонкая настройка через config.xml — layout, кастомные JS-скрипты импорта
  • Транскодинг через FFmpeg-вызовы из конфига — с тонкой настройкой профилей под устройство

Запуск Gerbera


services:
  gerbera:
    image: gerbera/gerbera:3.2.1
    container_name: gerbera
    network_mode: host
    volumes:
      - ./gerbera-config:/var/run/gerbera
      - /mnt/media:/media:ro
    restart: unless-stopped

После запуска зайди на http://ip:49152. В первом окне получи токен из логов:


docker logs gerbera 2>&1 | grep -i "token"

Токен вводишь, создаёшь админ-аккаунт, добавляешь библиотеку через File system — правый клик — Add. Через минуту телевизор увидит «Gerbera» в списке DLNA-источников.

RAM idle — 30 МБ. На Raspberry Pi 3B+ работает без вопросов. Главный минус — нет веб-плеера. Если хочется плеер — Jellyfin.

5. ReadyMedia (MiniDLNA) — самый лёгкий

ReadyMedia — переименованный MiniDLNA. C, около 15 МБ RAM, конфиг в одном файле, никакой веб-морды. Идеален когда нужно просто отдать одну папку с фильмами одному телевизору и забыть.


sudo apt install minidlna
sudo nano /etc/minidlna.conf

Минимальный конфиг:


media_dir=V,/mnt/media/movies
media_dir=A,/mnt/media/music
media_dir=P,/mnt/media/photos
db_dir=/var/cache/minidlna
log_dir=/var/log
inotify=yes
friendly_name=HomeServer

sudo systemctl enable --now minidlna
sudo systemctl status minidlna

Всё. Телевизор увидит сервер. Метаданных не подтягивает, обложек нет, транскодинга нет, но если у тебя коллекция MP4/MKV которые телевизор и так понимает — этого достаточно. Проект не очень активный, но работает годами без проблем.

6. Rygel — DLNA для GNOME

Rygel — часть проекта GNOME, DLNA/UPnP сервер на основе GStreamer. Версия 0.42. Имеет смысл если у тебя GNOME-десктоп и ты хочешь расшарить локальные папки в один клик через файл-менеджер. Как «домашний центральный сервер» — не очень, но как инструмент desktop-юзера годится.


sudo apt install rygel
rygel

Конфигурация в ~/.config/rygel.conf. По умолчанию шарит Music, Videos, Pictures из домашней папки. Транскодинг идёт через GStreamer-плагины, поэтому установи дополнительные:


sudo apt install gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-libav

7. Navidrome — твой личный Spotify

Если у тебя есть нормальная коллекция музыки — бери Navidrome. Это лучший open source медиа сервер для музыки в 2026, без вариантов. Версия 0.61.2 от апреля 2026, активная разработка, плагины на WebAssembly с 0.60.

Что я люблю:

  • 30 000 треков укладываются в 50 МБ RAM
  • Subsonic API — десятки клиентов: Symfonium, play:Sub, DSub, Ultrasonic, Substreamer
  • Smart playlists, scrobbling в Last.fm и ListenBrainz
  • Поиск на SQLite FTS5 с BM25 — реально быстрый
  • Multi-user, у каждого свои плейлисты, фавориты, история
  • Транскодинг на лету — FLAC за городом превращается в Opus 96k

Запуск Navidrome


services:
  navidrome:
    image: deluan/navidrome:0.61.2
    container_name: navidrome
    user: 1000:1000
    ports:
      - "4533:4533"
    environment:
      ND_LOGLEVEL: info
      ND_SCANSCHEDULE: "@every 24h"
      ND_TRANSCODINGCACHESIZE: "1024MiB"
      ND_SESSIONTIMEOUT: 24h
    volumes:
      - ./data:/data
      - /mnt/music:/music:ro
    restart: unless-stopped

Заходишь на http://ip:4533, создаёшь админа, ждёшь первичный скан (первые 100к треков — около 10 минут на NVMe). На телефон ставишь Symfonium (платный, $7) или DSub/Substreamer (бесплатный) — вводишь URL и пароль, всё работает.

Минус один: только музыка. Не хочет быть всем сразу, и это правильно.

8. Funkwhale — музыка с федерацией

Funkwhale — это Navidrome, скрещенный с Mastodon. Federated через ActivityPub — можешь подписаться на других пользователей и слышать их публичные плейлисты. Идея красивая, инсталляция тяжёлая.

Версия 1.4. Stack: Django + PostgreSQL + Redis + Celery + nginx. RAM idle — 600+ МБ. На Pi не запустишь, нужен нормальный сервер с 2-4 ГБ.

Имеет смысл если ты хочешь музыкальный fediverse — аналог Mastodon для меломанов. Если нужен только личный Spotify без публичной активности — Navidrome лучше во всём.

9. Lyrion Music Server (LMS) — hi-fi мульти-рум

Бывший Logitech Media Server. После того как Logitech закрыл железо Squeezebox, проект ушёл в community и переименовался в Lyrion. Версия 9.1.1.

LMS живёт в нише multi-room hi-fi. Если у тебя несколько Squeezebox-плееров (или их эмуляторов — Squeezelite, piCorePlayer на Raspberry Pi с DAC) — LMS их синхронно играет. Можешь иметь одну музыку в трёх комнатах в перфектном sync. Это не умеет ни Navidrome, ни Jellyfin.

Поддерживает FLAC до 24/192, DSD, gapless playback, мощные плагины (Spotify, Tidal, Qobuz, BBC iPlayer).


services:
  lms:
    image: lmscommunity/lyrionmusicserver:9.1.1
    container_name: lyrion
    hostname: lyrion
    ports:
      - "9000:9000/tcp"
      - "9090:9090/tcp"
      - "3483:3483/tcp"
      - "3483:3483/udp"
    volumes:
      - ./config:/config
      - /mnt/music:/music:ro
      - /etc/localtime:/etc/localtime:ro
    environment:
      - PUID=1000
      - PGID=1000
    restart: unless-stopped

10. Audiobookshelf — аудиокниги и подкасты

Audiobookshelf — не для фильмов и не для музыки. Это самостоятельная категория — аудиокниги, подкасты и e-books. Своя нативная Android-app, iOS в TestFlight, sync прогресса между устройствами. Скрейпит метаданные с Audible, Google Books, Open Library.

Если ты тонешь в подписках на Audible и хочешь ужарить весь свой архив MP3-аудиокниг в одно место — это оно. Jellyfin технически тоже умеет аудиокниги, но криво. Audiobookshelf делает это правильно.


services:
  audiobookshelf:
    image: ghcr.io/advplyr/audiobookshelf:latest
    container_name: audiobookshelf
    ports:
      - "13378:80"
    volumes:
      - ./config:/config
      - ./metadata:/metadata
      - /mnt/audiobooks:/audiobooks
      - /mnt/podcasts:/podcasts
    restart: unless-stopped

Рецепт: разворачиваем Jellyfin от нуля до рабочего сервера

Считаю что у тебя свежий Ubuntu Server 24.04 LTS на железе с Intel iGPU (любой Core 8-го поколения и новее). Если у тебя Synology или Unraid — принцип тот же, только GUI поверх Docker.

Подготовка системы


sudo apt update && sudo apt upgrade -y
sudo apt install -y curl ca-certificates intel-media-va-driver-non-free vainfo

Проверь что VAAPI поднялся:


vainfo
# должно показать VAEntrypointVLD для H264, HEVC, VP9, AV1 в зависимости от поколения

Если vainfo ругается на permissions — добавь юзера в группу render:


sudo usermod -aG render $USER
sudo usermod -aG video $USER
newgrp render

Установка Docker


curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
newgrp docker
docker compose version

Структура папок


sudo mkdir -p /opt/jellyfin/{config,cache}
sudo chown -R 1000:1000 /opt/jellyfin

# структура медиа - важно
sudo mkdir -p /mnt/media/{movies,tv,music,books}

docker-compose.yml


services:
  jellyfin:
    image: jellyfin/jellyfin:10.11.8
    container_name: jellyfin
    user: 1000:1000
    network_mode: host
    volumes:
      - /opt/jellyfin/config:/config
      - /opt/jellyfin/cache:/cache
      - /mnt/media:/media:ro
    devices:
      - /dev/dri:/dev/dri
    group_add:
      - "109"
      - "44"
    environment:
      - JELLYFIN_PublishedServerUrl=http://192.168.1.10:8096
      - TZ=Europe/Moscow
    restart: unless-stopped

Поднимаем:


cd /opt/jellyfin
docker compose up -d
docker logs -f jellyfin

Логи должны пройти миграции базы и запуститься на порту 8096. Открывай http://твой-ip:8096.

Первый запуск — визард

  1. Язык — русский
  2. Админ-логин и пароль — не jellyfin/jellyfin, серьёзно
  3. Библиотеки — добавь как минимум Movies (/media/movies), TV Shows (/media/tv), Music (/media/music)
  4. В настройках библиотеки выбери Real-time monitoring чтобы новые файлы появлялись сразу
  5. Metadata language — русский, country — Russia
  6. Auth via local network — да, доступ снаружи — нет (на этом этапе)

Включаем аппаратный транскодинг

Dashboard — Playback. Параметры:

  • Hardware acceleration: Intel QuickSync (QSV)
  • QSV Device: /dev/dri/renderD128
  • Enable hardware decoding: H.264, HEVC, VP9, AV1 (если CPU поддерживает — 11th gen+)
  • Enable HEVC encoding: да
  • Enable AV1 encoding: только если у тебя Intel Arc или 11th gen+
  • Enable Tone mapping: да (для HDR)
  • Tone mapping algorithm: bt2390
  • Throttle transcodes: да

Проверка — всё работает?

Базовая sanity-проверка после установки:


# контейнер живёт
docker ps | grep jellyfin

# порт слушается
ss -tlnp | grep 8096

# свежие логи без ошибок
docker logs --tail 100 jellyfin 2>&1 | grep -iE "error|fatal"

# GPU видно из контейнера
docker exec jellyfin /usr/lib/jellyfin-ffmpeg/ffmpeg -hide_banner -hwaccels

Запусти видео в плеере, перемотай на середину файла. Открой Dashboard — Playback — в реальном времени должна появиться сессия. Если в строке Transcoding пусто — идёт Direct Play (хорошо). Если есть «Transcoding (qsv)» — аппаратный транскодинг работает (тоже хорошо). Если «Transcoding (CPU)» — HW не подцепился, перепроверь конфиг.

Параллельно на сервере:


# нагрузка GPU при транскодинге
sudo intel_gpu_top
# в строке Video должны быть ненулевые проценты

Осложнения — типовые грабли и как их обойти

Ошибка - Permission denied на /dev/dri/renderD128
Контейнер не может писать в render-устройство. Причина — GID группы render внутри контейнера не совпадает с GID на хосте.

# узнай GID render на хосте
getent group render | cut -d: -f3

# пропиши его в group_add контейнера, перезапусти
docker compose down && docker compose up -d
Ошибка - Smart TV не видит DLNA-сервер
SSDP/UPnP-broadcast не проходит между сетями. Если контейнер в bridge — DLNA не работает почти никогда. Нужен host network mode или macvlan.

# проверь broadcast
sudo tcpdump -i eth0 udp port 1900

# должны лететь M-SEARCH запросы от телевизора и NOTIFY от сервера

Решение — поставь network_mode: host в compose. Если хочешь bridge — используй macvlan-сеть и публикуй контейнер с собственным IP в локальной сети.

Ошибка - Jellyfin тормозит при сканировании библиотеки
На 10.11 и больших библиотеках (10к+) первичный скан и обновление метаданных могут идти дольше чем на 10.10 — известная регрессия после миграции на EF Core. Точечные релизы её фиксят.

# обнови до последней
docker pull jellyfin/jellyfin:10.11.8
docker compose up -d --force-recreate

Дополнительно отключи в настройках библиотеки лишнее — Real-time monitoring если папок много, Chapter image extraction для всей библиотеки сразу.

Ошибка - HDR-видео в SDR превращается в кашу
Tone mapping не включён или GPU не поддерживает 10-bit decode. Капля никотина убивает лошадь, одна неправильная настройка tone mapping — весь вечер кино.

Для Intel Quick Sync HDR tone mapping работает с 8-го поколения и новее. Для AMD VAAPI — с RDNA2 (RX 6000+). Для NVIDIA — с Pascal+. Включи в Dashboard — Playback — Tone mapping. Алгоритм — bt2390. Если картинка тёмная — убавь Tone mapping desaturation в 0.5.

Ошибка - DLNA сервер ломается на 4K HEVC
UMS, Gerbera, MiniDLNA по умолчанию отдают файл как есть. Старый телевизор давится. Решение — либо профиль транскодинга в UMS, либо пере-кодирование в более совместимый контейнер заранее.

# одноразовый перекод 4K HEVC в 1080p H.264 для совместимости
ffmpeg -i input.mkv -c:v libx264 -crf 20 -preset slow \
       -c:a aac -b:a 192k -vf scale=1920:-2 output.mp4

Сравнение по сценариям — что брать в твоём случае

Универсальный сервер (видео+музыка+книги)

Jellyfin. Без вариантов. Альтернатива — Emby (но он уже не полностью FOSS) или Plex (но смотри начало статьи).

Только музыка

Navidrome для 99% случаев. LMS если у тебя hi-fi multi-room на Squeezebox/piCorePlayer. Funkwhale если хочешь федерацию.

Аудиокниги и подкасты

Audiobookshelf. У него своя ниша, своя app, и Jellyfin тут проигрывает.

Максимальная совместимость с Smart TV / приставками (DLNA)

Universal Media Server для агрессивного транскодинга на старых ТВ. Gerbera для современных ТВ, которые умеют HEVC и не нуждаются в перекодировке. MiniDLNA если железо слабое и нужен минимум.

Минимальное потребление ресурсов

MiniDLNA (~15 МБ RAM) и Gerbera (~30 МБ). Navidrome для музыки (~50 МБ). На Raspberry Pi Zero 2W будет жить любая из этих троек.

4K/HDR с аппаратным транскодингом

Jellyfin с Intel Quick Sync (11th gen+ для AV1), NVIDIA RTX 30+ или AMD RX 6000+. Из старых GPU нормально жмут только 8th-10th gen Intel iGPU.

HTPC прямо в телевизор

Kodi или LibreELEC на NVIDIA Shield, x86 mini-PC или Raspberry Pi 5.

Профилактика — не наступать на грабли

Бэкапы

Что бэкапить в Jellyfin:

  • /config — база, настройки, метаданные, плейлисты
  • /cache — не нужен, регенерируется
  • Сами файлы медиа — на отдельном сторадже с собственной стратегией

В 10.11 встроены нативные бэкапы. Dashboard — Scheduled Tasks — Backup Database. Расписание — раз в неделю. Хранить 4 копии. Дополнительно я делаю rsync /config на NAS:


# /etc/cron.daily/jellyfin-backup
#!/bin/bash
DATE=$(date +%Y%m%d)
rsync -a --delete /opt/jellyfin/config/ /mnt/backup/jellyfin/$DATE/
find /mnt/backup/jellyfin/ -maxdepth 1 -mtime +14 -exec rm -rf {} \;

sudo chmod +x /etc/cron.daily/jellyfin-backup

Мониторинг

Минимум — HTTP-проверка. Если ты запустил Uptime Kuma — добавь http://localhost:8096/health в монитор, оно вернёт 200 OK когда сервер живой.

Для полноценного мониторинга — Prometheus + jellyfin-exporter. Снимает активные сессии, время транскодинга, статус GPU. Графана-дашборд готовый есть в коммьюнити.

Безопасность

Минимальный hardening если выставляешь Jellyfin в интернет:

  1. Никогда не публикуй порт 8096 наружу напрямую. Только через reverse proxy с TLS — Caddy или Traefik
  2. Включи HSTS, отключи слабые TLS-цифры
  3. fail2ban на /Users/AuthenticateByName endpoint — блокировка по 3 неудачным попыткам
  4. Лучше не публиковать в публичный интернет вообще, а ходить через Tailscale или WireGuard — mesh-VPN
  5. Cloudflare Tunnel вместо проброса порта — не открывает 443 на маршрутизаторе
  6. Отдельный пользователь с правами read-only на медиа-том
  7. UFW: sudo ufw allow from 192.168.0.0/16 to any port 8096 и больше ничего

В 2025-м был кейс — LastPass поломали через outdated Plex-сервер у инженера. Урок: self-hosted — это не «поставил и забыл». Это «поставил, настроил автообновления, мониторишь CVE».


# простой watchtower для автообновления контейнеров
docker run -d --name watchtower \
  -v /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower \
  --schedule "0 0 4 * * *" \
  --cleanup \
  jellyfin

Не ставь watchtower на критичные prod-сервисы без тестового окружения. Для домашнего сценария — норм.

Автозапуск

restart: unless-stopped в docker-compose — этого достаточно. После ребута сервера контейнеры поднимутся сами. Дополнительно проверь что docker.service в автозагрузке:


sudo systemctl enable docker
sudo systemctl is-enabled docker

Системные требования — что нужно физически

Сценарий CPU RAM GPU Диск Сеть
Только музыка (Navidrome) Pi 4 / любой x86 1 ГБ не нужен SSD 32 ГБ под систему 1 Gbps LAN
1080p Direct Play Celeron J4125 / Pi 5 2 ГБ не нужен SSD 64 ГБ + HDD под медиа 1 Gbps
1080p Transcode 1-2 потока i3-8100+ / Ryzen 3 5300G 4 ГБ iGPU UHD 630+ SSD 128 ГБ + HDD 1 Gbps
4K HEVC HDR transcode i5-11400+ / Ryzen 5 7600 8 ГБ iGPU UHD 730+ или RTX 3050+ NVMe + RAID HDD 2.5 Gbps желательно
4-6 одновременных 4K transcode i5-13500+ / Xeon E-2378G 16 ГБ Intel Arc A380+ или RTX 4060 NVMe + RAID HDD 8TB+ 2.5-10 Gbps

На момент публикации актуальна версия Jellyfin 10.11.8, Navidrome 0.61.2, Gerbera 3.2.1, UMS 15.5.0, Kodi 21.3 Omega. Перед установкой проверь свежие релизы на GitHub проекта.

Таблица портов

Сервис Порт Протокол Назначение Открывать наружу?
Jellyfin HTTP 8096 TCP Web UI и API Только через reverse proxy
Jellyfin HTTPS 8920 TCP HTTPS если без proxy Нет, лучше Caddy/Traefik
Jellyfin Discovery 1900 UDP SSDP/DLNA broadcast Только LAN
Jellyfin Auto-discover 7359 UDP Поиск сервера клиентами Только LAN
Navidrome 4533 TCP Web UI и Subsonic API Только через reverse proxy
Gerbera 49152 TCP UPnP web UI Нет
Lyrion (LMS) Web 9000 TCP Web UI Только LAN
Lyrion Squeezebox 3483 TCP+UDP Протокол плееров Только LAN
UMS 9001 TCP Web admin/player Только LAN
Audiobookshelf 13378 TCP Web UI и API Только через reverse proxy

Альтернативы — что я в этой статье не разбирал

Список не полон, но эти проекты тоже встретишь:

  • Emby — предок Jellyfin, частично проприетарный с 2018-го. Премиум-функции платные. Если не хочешь тратить — бери Jellyfin.
  • Ampache — старая Subsonic-совместимая платформа. Жив, но Navidrome обогнал по UX.
  • Gonic — Go-имплементация Subsonic API. Очень лёгкий, но Navidrome полнее по фичам.
  • Airsonic-Advanced — форк форка Subsonic. Ещё работает, но активность ниже Navidrome.
  • OwnTone (forked-daapd) — DAAP-сервер для AirPlay, лёгкий, нишевый.
  • Roon — проприетарный hi-fi сервер. Платный, но не open source.
  • Stash — тоже медиа-сервер, для специфичного контента, не разбираем тут.
  • Komga / Kavita — для комиксов и манги. Если у тебя коллекция CBZ — смотри их, не Jellyfin.

FAQ — часто задаваемые вопросы

Чем Jellyfin отличается от Plex в 2026 году?

Jellyfin полностью бесплатный и open-source. Аппаратный транскодинг, удалённый доступ, мобильные клиенты, DVR — всё включено. Plex с 2025 года требует Plex Pass ($6.99/мес или $249.99 lifetime) для удалённого стриминга и часть фичей. Качество интерфейса у Plex чуть выше, экосистема клиентов шире, но overall за нулевую цену Jellyfin закрывает 90% сценариев.

Почему DLNA-сервер не виден на телевизоре после настройки?

Чаще всего проблема в Docker bridge network — SSDP-broadcast по UDP 1900 не проходит между сетями. Перезапусти контейнер с network_mode: host. Если хост-режим не подходит — используй macvlan-сеть или поставь сервер прямо на хост, не в контейнер. Проверь UFW/iptables: sudo ufw allow from 192.168.0.0/16.

Какой open source медиа сервер лучше для NAS?

Зависит от железа NAS. Synology Plus и Unraid с x86 Intel — бери Jellyfin с Quick Sync. Synology Value/J без iGPU — Navidrome для музыки и Gerbera для DLNA, Jellyfin потянет только Direct Play без транскодинга. TrueNAS Scale — Jellyfin через App Catalog или вручную через Docker.

Как проверить что аппаратный транскодинг работает в Jellyfin?

Запусти видео которое требует перекодировки (например 4K в 1080p) и зайди в Dashboard — Playback. В строке активной сессии будет «Transcoding (qsv)» или «Transcoding (nvenc)» — это HW. Если «Transcoding (CPU)» — используется только процессор. На сервере параллельно запусти intel_gpu_top или nvidia-smi — увидишь нагрузку на GPU.

Можно ли запустить Jellyfin на Raspberry Pi?

Можно, но с оговорками. Pi 4 и Pi 5 запускают Jellyfin, но аппаратное декодирование на них ограничено — V4L2 поддерживает H.264 и частично HEVC, AV1 — нет. Direct Play 1080p MP4 работает идеально. Транскодинг 4K на Pi 5 — не вытягивает. Если коллекция в основном 1080p H.264 — Pi подходит.

Что делать если Jellyfin тормозит при сканировании библиотеки?

В версии 10.11 после миграции на EF Core есть регрессии на больших библиотеках. Обнови до последнего минора (10.11.8 закрывает много бажков). Отключи Real-time monitoring в настройках библиотеки если папок очень много, выключи Chapter image extraction для всей библиотеки. Если совсем плохо — откатись на 10.10.x как временная мера, но без ключевых обновлений безопасности.

Чем Navidrome отличается от Funkwhale?

Navidrome — чистый локальный музыкальный сервер. Лёгкий, простой, Subsonic API, отличные мобильные клиенты. Funkwhale — федеративная платформа с ActivityPub: можешь подписываться на других пользователей и их публичные плейлисты как в Mastodon. Funkwhale тяжелее (Django+PostgreSQL+Redis+Celery, 600 МБ RAM против 50 у Navidrome). Если нужен личный Spotify — Navidrome. Если хочешь fediverse для меломанов — Funkwhale.

Безопасно ли выставлять Jellyfin в интернет?

Прямой проброс порта — небезопасно: были CVE в Jellyfin (последние закрыты в 10.11.7), отдельные конфигурации могут быть уязвимы. Безопасный путь: reverse proxy с TLS (Caddy, Traefik), fail2ban на endpoint логина, регулярные обновления. Лучше — mesh-VPN типа Tailscale: видны только устройствам в твоей сети, никаких открытых портов на роутере. Cloudflare Tunnel — тоже годится.

Прогноз — что мы получили

Поставили Jellyfin 10.11.8 на Linux в Docker, прокинули Intel iGPU для аппаратного транскодинга, настроили библиотеки видео, музыки и книг, разобрались с DLNA для старых телевизоров через Gerbera или UMS, добавили Navidrome если хочется отдельный музыкальный сервер с лёгкими мобильными клиентами. Сделали бэкапы, накрыли reverse proxy, не выставили ничего наружу без VPN.

Теперь у тебя есть полный self-hosted media stack 2026 года, без подписок, без телеметрии, без сюрпризов от вендора. Plex может закручивать гайки сколько угодно — тебя это уже не касается. Если конкретный шаг не зашёл или валится с ошибкой которую я не описал — пиши в комментарии, разберёмся.

Финальный совет
Не пытайся развернуть все десять серверов сразу. Поставь Jellyfin, попользуйся неделю-две, добавь Navidrome для музыки если её много, добавь Audiobookshelf если слушаешь подкасты. Остальное — по реальной потребности, а не на всякий случай. Минималистичный конфиг который делает ровно то что написано — всегда побеждает зоопарк сервисов которые «вдруг пригодятся».
Андрей Анатольевич
Author: Андрей Анатольевич

Руководитель ИТ / Кризис-менеджер 25 лет в IT: от инженера в МегаФоне до руководителя отдела. Знаю, как выглядит бардак: нестабильные сети, устаревшая инфраструктура, конфликты в команде, раздутые сроки. Помогаю бизнесу выходить из кризиса: навожу порядок в легаси, стабилизирую то, что разваливается, выстраиваю прогнозируемые процессы. Не раз возвращал к жизни ИТ-структуры — знаю цену хаосу. 📍 Ищу проект для полной реорганизации / стабилизации. 📬 Telegram: @over_dude ✉️ mail@it-apteka.com

Оставайтесь на связи

Рецепты от IT-боли. Без воды, без рекламы, без маркетинговой шелухи.

Подписаться на IT-Аптеку →

Мы ВКонтакте

IT-Аптека — советы, новости и помощь рядом.

Вступить в группу ВКонтакте →
Поделитесь:

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх