Интернет. Компьютер. Помощь. Советы. Ремонт

Домашний медиа сервер для мак ос. DLNA-сервер для дома и семьи. На что ставить

Продолжаю терзать телевизор - он не умеет подключаться к сетевым «шарам», но умеет работать с DLNA источниками. Не вдаваясь в суть технологии, я начал искать решение для Mac OS. Беглый поиск сулил проблемы (совместимость, работоспособность, стабильность), но мне повезло - я начал с конца списка и пока доволен.

Выбор пал на PS3 Media Server . Название как бы намекает, что изначально программа сделана для передачи видео на PlayStation 3, но по сути это искомый DLNA/UPnP сервер.

Программа бесплатная, небольшая (33 мб), кроссплатформенная (win/mac/linux), написана на java и потому ожидаемо убогая с виду.

Я скачал 1.5 beta 2, которая может быть нестабильной, но пока все работает. После старта мне пришлось мужественно проигнорировать предупреждение о том, что PlayStation не найден, затем выбрать папку, которую PMS будет раздавать.

Последнее, что полезно проделать в моем случае - отключить транскодирование форматов, которые мой телевизор понимает сам.

Это, насколько я понимаю, снимет лишнюю нагрузку с Макбука - файлы будут просто отдаваться, как есть. Судя по нагрузке на CPU в 0.2% и пустой transoding buffer (см. первую картинку), так и происходит.

Доказано! (Mac OS X 10.7 Lion + PS3 Media Server) * Samsung UE40D5000 = OK

Только OK, никак не Awesome, поскольку по какой-то непонятной причине телевизор не понимает (неподдерживаемый формат) MKV по DLNA, при этом отлично проигрывает тот же MKV с «флешки». Но это глюк телевизора.

Альтернативы PMS: Serviio (бесплатно, java), TVmobili (мутная схема с ограничением трафика в бесплатной версии, платная $30 или $1.5 в месяц). Это далеко не все, конечно, но интерес уже угас, честно говоря.

Для тех, кто первый раз слышит про аббревиатуру DLNA и не в курсе о том, что это такое, поясним, что с помощью данной технологии можно объеденить в одну цифровую сеть различные электронные устройства (компьютеры, мобильные телефоны, телевизоры и прочую бытовую электронику). Такое объединение позволит данным устройствам передавать и принимать по сети различный медиа-контент, а также транслировать его в режиме реального времени. Короче, это аналог технологии AirPlay, появившийся задолго до неё и на других на платформах. Если бытовая электроника и прочие устройства, сертифицированные для работы с DLNA, уже имеют на борту все необходимые средства для работы в такой сети, то в случае с Маком пользователю будет необходимо установить дополнительное ПО. Существует несколько решений, позволяющих Маку работать с другими DLNA-устройствами, и об одном из них, которое называется Serviio и является бесплатным DLNA-сервером. О нём мы поговорим сегодня.

Serviio состоит из двух частей: это сам сервер, работающий в фоновом режиме и ничем не дающий о себе знать после запуска, и консоль с графическим интерфейсом, служащая для управления им. Оба приложения написаны на Java, что подразумевает под собой относительно долгое время запуска, но, тем не менее, не вызывающее особых проблем. Интерфейс консоли имеет мультиязычную локализацию (23 языка) , среди которых, что приятно, присутствует русский.

Впрочем, интерфейс — это было сказано сильно, ведь фактически консоль представляет из себя что-то типа большого меню настроек для сервера. Меню достаточно функциональное, но благодаря грамотному распределению настроек по 6 вкладкам (седьмая содержит информацию с реквизитами программы), разобраться с ними не составит труда.

  • Состояние

Первая из двух основных вкладок, с опциями которых предстоит познакомиться пользователю, перед началом работы с сервером. В соответствующем поле данной вкладки необходимо прописать IP-адреса всех устройств, на которых предполагается проигрывать или просматривать медиаконтент, передаваемый с Мака, и задать для каждого наиболее подходящий профиль. На выбор доступно 20 профилей для различных телевизоров, бытовых медиплееров и пр. Если вашего устройства не оказалось в списке, то смело выставляйте Generic DLNA Profile — с большой долей вероятности устройство без проблем будет соединяться с Маком и проигрывать медиафайлы. Здесь же можно в ручном режиме управлять запуском или остановкой сервера. Напомним, что серверная программа сама себя не может прописать в автозагрузку для запуска вместе с системой, поэтому это сделать придется самому пользователю.

  • Медиатека

Вторая вкладка, в которую пользователю также нужно будет заглянуть в обязательном порядке. Здесь нам нужно будет выбрать локальные папки или онлайн-ресурсы, содержимое которых будет передаваться в создаваемую DLNA-сеть. В случае с локальными папками пользователю достаточно указать путь и отметить желаемые типы файлов из тех, что находятся в ней.

При добавлении онлайн-ресурса необходимо будет указать его веб-адрес. В качестве онлайн-ресурсов могут выступать новостные ленты, потоки вещания или отдельные файлы, загруженные на сервер.

  • Метаданные

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

  • Преобразование

Далеко не всегда медиаконтент на Маке будет представлен в тех форматах, которые понимает устройство-получатель. Именно по этой причине Serviio научили преобразовывать затребованные медиафайлы в родной для воспроизводящего устройства формат. Информацию о типе формата и его параметрах приложение берет из профиля, заданного для конкретного устройства. Вот почему так важно правильно его выставить. Функция преобразования не работает с теми устройствами, для которых был выставлен Generic DLNA профиль.

  • Отображение

Вкладка для настройки отображения меню выбора медиаконтента на воспроизводящем устройстве. Имеется возможность выбрать язык меню (русский язык присутствует).

  • Настройки консоли

На самом деле настройка на данной вкладке всего одна и отвечает она за выбор языка локализации интерфейса консоли.

Несмотря на статус бета-версии, Serviio стабильно работает (программа тестировалась в Mac OS X 10.7.2) и позволяет достаточно легко передавать медиаконтента с Мака на телевизор, бытовой медиаплеер и мобильный телефон с поддержкой DLNA. К недостаткам стоит отнести малое количество профилей, которые можно выставить для подключаемых устройств. Но если совсем недавно устройства с поддержкой DLNA можно было пересчитать буквально по пальцам, то сейчас их на много порядков больше и просто физически невозможно создать нужный профиль для каждого устройства.

Разумеется, что Serviio — это не единственное решение для Mac OS X, позволяющее создать DLNA-сервер для передачи медиаконтента, есть и другие, отличающиеся как ценой, так и спектром функций. Возможно, в будущем мы ещё вернёмся к этой теме.

Как-то так сложилось, что тег DLNA сервер чаще встречается в постах-вопросах, чем в ответах. И если в вопросах установки на домашний Windows-ПК какой-то пользовательский опыт накоплен, то определиться с выбором ПО для домашнего сервера/NAS-а/медиацентра - оказалось непросто. Распределившись по песочницам народ обособленно решает проблемы каждой программы в отдельности. А понять что из них чего стоит и нужно ли оно вообще - лично мне не удалось.

И вот, я вооружившись ссылкой с Википедии Как выбрать DLNA-сервер под Windows, Mac OS X или Linux - опробовал почти всё, что есть под Linux.

DLNA - его место в домашней сети

Наверное этот путь уже проходило большинство - в доме появляются новые медиа-устройства, растет количество членов семьи потребляющих медиа-контент, распухает сама база фильмов, музыки и фотографий.
При этом каждый строит медиа-инфрастуктуру по-своему. У кого-то это компьютер с TV-OUT, у кого-то нетбук или HTPC. Кто-то расшаривает папки с NAS-а по NFS, кто-то подключает HDD к медиаплееру, кто-то использует возможности Sony PS…
Появляется неразбериха в местах хранения, форматах, кодеках и т.п.
Так, в моем случае оказалось:
  • плазме в гостинной лучше подавать 720p чем FullHD
  • телевизору Sony в детской подключеному по Wi-Fi больше 15Mbit/s лучше не скармливать, H.264 ему нужен максимум Profile 4.1, а файлы на сетевых хранилищах он не видит вообще
  • спутниковый ресивер Openbox не умеет играть звуковые дорожки в DTS, по SMB не тянет больше 30Mbit/s, по NFS-не отображают кириллицу
  • Nokia Lumia и iPhone вообще ограниченны везде и всюду
В общем, единственным вариантом сдружить весь этот зверинец между собой - это использование DLNA сервера.
Теоретически - он и контент из разных мест в одиное дерево папок сведет, и разрешение подгонит и совместимость кодеков проверит и при необходимости перекодирует. Красота…

На что ставить

Домашний компьютер - как правило это Windows-машина. Смотреть фильм с перекодированием пока кто-то играет - не получиться; режима 24/7 нет и близко. На роль не подходит. Поэтому Windows версии программ я даже не рассматривал.
Роутер, прошитый DD-WRT/OpenWRT - есть пакеты для этих прошивок и они работают. Аппаратные ресурсы очень ограничены - транскодирование малореально, скорость доступа к USB порту и сетевым папкам сильно ограничена. Тем не менее - многим и такое подходит.
NAS или домашний сервер с Linux - самое универсальное решение. Программ много. Ограничений по протоколам нет. Производительности x86 процессоров 5-летней давности (в моем случае это Athlon X2-6000) хватает для одновременного перекодирования на-лету двух фильмов любого формата.

Личный опыт, оценка программ

MiniDLNA, uShare и xupnpd
Это разные проекты, но в сущности - одно и то-же. Легковесные и быстрые. Единственная функция, которую они выполняют - предоставляют сетевой доступ к медифайлам по протоколу DLNA/UPnP. Всё остальное плеер или телевизор должны уметь сами. DLNA поддерживается не в полной мере и многие устройства эти серверы просто не видят.
Очень массовые. Работают везде. Пакеты существуют под всевозможные дистрибутивов Linux, маршрутизаторы с прошивками DD-WRT/OpenWRT и NAS-ы. Процедура установки простейшая и хорошо расписана на профильных форумах. Никаких GUI нет
Если Вы, и только Вы (иначе неизбежны жалобы членов семьи):
  • смотрите/слушаете только с одного всеядного устройства (такого как телевизор Samsung)
  • Ваше устройство не умеет напрямую брать файлы с сетевых папок или делает это слишком медленно (такое как телевизор Sony Bravia)
  • храните фильмы/музыку на недорогом NAS-е или маршрутизаторе с USB-диском
  • заранее отбираете контент в нужном формате или не ленитесь перекодировать вручную
  • медиа-файлы уже хорошо отсортированы по папкам или Вас это вообще не беспокоит
- то Вам можно ограничиться и таким DLNA-сервером. Выбирать из них тот, который есть в пакетах под вашу железяку и будет увиден рендером.
MediaTomb
Разработчики однозначно пишут, что «это не DLNA-сервер, он лишь поддерживает часть его функций». И хотя некоторые проблемы совместимости могут быть, это вполне себе достойный внимания проект.
Здесь уже есть работающий через встроенный http-сервер GUI - в нем можно управлять папками с контентом. Добавлять новые, создавать ярлыки к существующим, задавать интервалы сканирования и т.п.
Хорошо распространен - нет проблемы установить в любом дистрибутиве Linux, тяжелых зависимостей за собой не тянет. Настраивается единственным текстовым файлом. Очень стабилен в работе, не ресурсоемк.
Можно использовать транскодирование, но оно реализовано в простешем виде. Так, привязка профилей осуществляется к формату входного файла, а не к устройству вывода. Сервер вообще не различает кто к нему подключился. Соответственно готовых профилей под устройства нет - все нужно настраивать вручную:
  • какие форматы транскодировать, а какие передавать напрямую
  • задать кодировщик по ситуации: ffmpeg, vlc, mplayer или что-то ещё
  • задать bitrate, количество аудио-каналов, профиль H.264 и прочие опции кодирования
  • наложить видеофильтр, такой как обрезание полей или crop
В моем случае пришлось писать отдельный скрипт для задания аргументов ffmpeg исходя из формата аудиодорожки (DTS или AC3).
При этом, при просмотре транскодированного потока на телевизоре не будет работать перемотка и выбор адуиодорожки. Прикрутить субтитры - тоже отдельная песня.
В общем - MediaTomb - весьма брутальные инструмент для true линуксоидов. Универсальным его не назовешь, но под себя и свое железо можно настроить идеально.
Rygel
Массовый, есть почти везде. Но очень криво ставится в режим демона (нужно самому писать init-скрипт, создавать папки и пользователя). Является частью проекта gnome и тянет за собой gstreamer (а то и pulseaudio). Если у кого на компьютере стоит KDE или что-то другое - совсем неудобен. Иконки для видео генерирует через tumbler из проекта XFCE, да и то с нюансами. Регулярно падает.
До изучения особенностей транскодирования у меня руки не дошли. Мой вердикт - "не годен ".
PS3 Media Server
Очень старый проект. И хотя от своего начального применения: «Раздавать фильмы/музыку с домашнего Windows ПК на Sony PS», - проект сильно развился. Но JAVA-код и требования для запуска X-сервера меня от него отвернули.
XBMC
DLNA-сервер в нём есть. Но держать этот комбайн ради одного лишь модуля глупо.
Тем более, что именно из XBMC родился отдельный проект медиа-сервера Plex.
Universal Media Server
Кривой он какой-то. Показывал мне все дерево каталогов вместо выбранной папки. Файлы открывал лишь некоторые и регулярно сыпал ошибками в консоль. С transconding-ом я вообще не разобрался.
Весьма тяжелый из-за JAVA-кода. Обязательно нужен запущенный X-сервер - демоном его не поставишь. "Не годен. "
GMediaServer
Проект заброшен. Внимания не достоин.
LXiMedia
Простая и удобная реализация DLNA-сервера. Достаточно выбрать папки с файлами, жестко задать параметры транскодирования, аудиодорожку, субтитры. Никаких пофилей, настроек. К тому-же это GUI-приложение, демоном не ставиться.
На мой взгляд он в таком виде бесполезен - один из многих и далеко не лучший.
Serviio
Пожалуй самый быстроразвивающийся проект сейчас. Регулярно обновляется. Активно обрастает плагинами, профилями и приложениями под мобильные OS.
Представляет из себя JAVA-приложение работающее демоном. Поддержка DLNA-протокола - полная. Довольно умело разбрасывает контент по папкам и категориям. Умеет создавать превьюшки к фильмам. Легко подключаются разные каналы on-line вещания.
Транскодирует при помощи ffmpeg. База профилей устройств уже достаточно большая (и продолжает пополнятся) - сервер корректно подбирает параметры кодирования для любого из домашних железок. Что не распознал - подобрать профиль или написать свой не сложно.
Из-за того, что используется ffmpeg - та-же проблема, что и в mediatomb - нет перемотки в транскодированном потоке и не меняется аудиодорожка.
Управляется это все либо из JAVA-клиента, либо web-морды, написанной на PHP, либо смартфона (есть приложения под Android и WP).
К сожалению недоступен в виде.deb или.rpm пакета. Нужно ставить вручную: создать папки, пользователя, распаковать, взять на форуме поддержки init-скрипт, прописать в автозапуск". Под Synology NAS есть готовый пакет.
В целом - вполне может стать единой точкой доступа к медиа-контенту дома. Все, что нужно - он умеет.
Skifta
Не включен в Linux-репозитории, а потому редок. Но он имеет графический инсталлятор и несет с собой jre, а потому станет почти в любой системе. Неудобен тем, что запускается в два шага - вначале утилитка в SystemTray, потом - сам media-server. Без иксов и демоном не пойдет. Очень прост и лаконичен, но сильно грузит систему (JAVA-код).
TVMOBiLi
Стоит 30$ (или абонентская плата 1,5$/мес). Доступен в виде.deb и.rpm пакетов. Не в Ubuntu/Fedora установить довольно сложно - встроенные vlc и ffmpeg наверняка найдут недостающие библиотеки и откажутся работать. У меня не получилось подобрать в Gentoo USE-флаги для vlc. Не работал совсем, пришлось переделывать профили, что-бы использовался только ffmpeg.
В целом профили транскодирования - его сильная сторона. Можно задать любую логику и любые параметры.
Управляется через симпатичную WEB-морду. Имеет богатую базу профилей транскодирования. Есть проигрывать файлов через встроенный http-сервер. Превьюшки генерировать не умеет.
Работает быстро и красиво. Хороший кандидат.
TwonkyServer
Устанавливается распаковкой tar.gz. или через инсталлятор. В Linux репозиториях его нет. Очень быстрый код, мгновенный запуск, удобный web-интерфейс. Хорошо и грамотно раскидывает контент по папкам. Есть готовые init-скрипты. Умеет извлекать из файлов meta-данные и генерировать превьюшки. Все понравилось. Одна беда - $19.95.
И все же: "Рекомендую ".
Plex
Как пишут разработчики - «A complete Media Solution». Подтверждаю.
Этот монстр вырос из XBMC и умеет все и даже больше. К фильмам найдет постеры, рейтинги и кучу данных. Сериалы к тому-же ещё и распределит по сезонам и эпизодам. Музыкальную коллекцию упорядочит из любого исходного вида.
Транскодирование делает из всего под всё. Параметрами можно управлять прямо из экранного меню телевизора. Для умных устройств вроде телевизоров LG Smart TV и Apple TV поддержка выходит далеко за пределы протокола DLNA.
Есть поддержка собственного облачного сервиса, что позволяет смотреть домашнее видео удаленно - сервер подстроит параметры отправляемого видео под возможности устройства и канала связи.
Есть отдельно написанные клиенты под мобильные OS и плитки Windows 8.
Для Ubuntu, Fedora, CentOS и массовые модели NAS есть готовые пакеты. Под все остальное - устанавливается простой распаковкой. Из зависимостей требует лишь Avahi-daemon.
К сожалению механизм транскодирования слабо допускает вмешательства в работу - профили подправить можно, но возможности сильно ограничены.

Способен решить любые задачи в рамках темы, при этом бесплатен, стабилен и как ни странно - быстр.

Очень хотелось бы, что-бы кто-то этот список дополнил и/или внес изменения.

Для передачи видео/музыки/фотографий на телевизор по WiFi используется технология DLNA. Принцип работы данной технологии заключается в том, что на компьютере устанавливается программа-сервер, в которой можно указать пути к расшариваемым папкам на компьютере с медийным контентом.

Данная технология позволяет вам не использовать HDMI кабель, туда сюда его дергать, либо постоянно скачивать фильмы на жесткий диск или флешку и носить ее постоянно к телевизору. Кстати, о «ношении». Ведь телевизоры работают в файловой системе NTFS, а маки в NFS+, поэтому телевизор не увидит носитель отформатированный в NFS+ по USB. А это еще один повод задуматься об использовании технологии DLNA. Плюсы и минусы опишу в конце, а пока - вникаем:)

Для того, чтобы передавать фильмы по WiFi на телевизор нам необходимо:
1. WiFi роутер
2. макинтош
3. Телевизор с поддержкой WiFi (покажу на примере своего Samsung UE55ES8007)
4. Программа медиа-сервер, в данном случае на мой взгляд лучшая - это Serviio и далее по тексту объясню и покажу почему и т.д.

Подводные камни
1. Мы можем добавить сервер в автозагрузку системы, в доке появляется ярлык программы, который никак не убрать, пока полностью не выключим медиа-сервер
2. При перезагрузке компьютера, медиа-сервер не дает ему перезагрузиться, пока мы вручную не выключим Serviio

В остальном - проблем нет, пользуюсь и вам рекомендую!

Понравилась статья? Поделитесь с друзьями!
Была ли эта статья полезной?
Да
Нет
Спасибо, за Ваш отзыв!
Что-то пошло не так и Ваш голос не был учтен.
Спасибо. Ваше сообщение отправлено
Нашли в тексте ошибку?
Выделите её, нажмите Ctrl + Enter и мы всё исправим!