Следующим этапом стала проблема универсализации, которая бы позволила не только удобно хранить фото или фильмы, но и в простом и понятном, а по возможности ещё и универсальном способе потреблять этот контент в рамках как минимум отдельно взятой квартиры. По сути, список протоколов, которые могли быть использованы для решения этой задачи, состоит из трёх пунктов: FTP, SMB и DLNA. Более всего для стриминга медиа предназначен последний.
Строго говоря, DLNA — это не протокол, а набор стандартов, которые используются для принятия и передачи различных типов мультимедийного контента. По данным Wiki, Digital Living Network Alliance ещё в далёком 2013 году насчитывал более 200 производителей оборудования, и встретить поддержку технологии в современных планшетах, телефонах, приложениях и Smart TV сейчас легко, а список поддерживаемых форматов для фото, аудио и видео просто огромен.
С чего начать?
Самым простым способом развернуть DLNA-сервер для совместного использования дома становится связка из роутера ZyXEL (даже среднего ценового диапазона, прошлого поколения с USB портом — в конкретном случае это Keenetic Ultra) и внешнего жёсткого диска, который так или иначе есть почти у каждого. Стоит иметь ввиду, что роутер вряд ли будет стабильно работать с дисками более 2.5 ТБ, а также использование внешнего питания для диска крайне желательно.
Далее на диске, который будет подключен к роутеру, нужно создать папку для контента, скопировать туда всё, что нужно (поддиректории поддерживаются вплоть до 3 уровней). Дальнейшая конфигурация состоит из указания папки для сканирования.
В зависимости от количества контента процесс может занять до нескольких часов, но это требуется только один раз, в дальнейшем при добавлении или удалении файлов сервер будет индексировать изменения за считанные секунды.
Если же вам не нужен сервер, который будет работать в режиме 24х7 независимо от других устройств, то стоит обратить внимание на программы Home media server (только Windows), PLEX (WIndows, Mac, Unix и даже FreeBSD), KODI (ex XBMC, WIndows, Mac, Unix, FreeBSD, Android, iOS при наличии Jailbreak и даже Raspberry Pi). Помимо этого есть ещё сетевое оборудование ASUS и OpenWRT based прошивки для ряда роутеров (тут уже на свой страх и риск).
Как смотреть?
Итак, с настройкой и копированием контента всё понятно, теперь же поговорим о том, как можно смотреть всё это.
Для ноутбуков на Windows и Mac самым простым способом будет использования всеядного и широко известного плеера VLC, из пункта «протокол UPnP» виден созданный нами DLNA-сервер и доступна возможность не только просмотреть контент по категориям, но и просто по папкам.
Для iOS-устройств Apple есть множество альтернативных плееров (VLC тоже есть) с поддержкой различных протоколов, из них самым удобным является nPlayer (платная версия или бесплатная с рекламой), который позволяет не только смотреть контент, но и скачивать его на устройство, а также запоминает позицию воспроизведения. Словом, приложение классное.
Для Android-устройств задача ещё более упрощается ввиду того, что большая их часть поддерживает DLNA из коробки, для остальных можно посоветовать приложение BubbleUPnP for DLNA/Chromecast (платная версия или бесплатная с рекламой), которое позволяет работать с DLNA и открывать видео посредством любого удобного для вас плеера, включая даже системный.
Smart TV большинства производителей (в случае Samsung с самого первого поколения) достаточно только иметь подключение к сети любым способом, буквально через несколько минут после включения в списке источников появится сервер с возможностью навигации по папкам и по типу контента.
Запас прочности и использование в реальной жизни
Несмотря на простоту решения, его работа весьма стабильна, а запас прочности велик, так что можно смотреть файлы объёмом до 4-6 Гбайт. Число одновременных подключений выдерживает 3-4 устройства без каких-либо проблем с производительностью.
Даже Android-устройства среднего уровня и самые старые поколения iPhone и iPad воспроизводят видео с диска посредством DLNA без проблем с производительностью.
Единственным минусом, характерным только для Smart TV, является отсутствие возможности быстрой перемотки файла — её можно делать только шагами по минуте или две, что несколько усложняет просмотр видео не с начала.
Итоги
Использование DLNA фактически не имеет альтернатив ввиду специфичности решений класса STB, весьма ощутимой цены и малого распространения HDMI-стиков под управлением Windows 10, а универсальность использования и создания DLNA-сервера с минимальными затратами на дополнительное «железо» просто бьёт в пух и прах возможные альтернативы в лице NAS.
О каких технологиях вам было бы интересно почитать в следующий раз?
Спасибо за внимание
Комментарии (73)
lolipop
28.04.2016 17:47А еще можно просто заказать роутер-коробчонку из китая за 12-13 баксов, которая будет делать то же самое. Ну или на любом другом роутере с usb на альтернативной прошивке. Или даже просто запустить на любом компьютере.
kharkevich
28.04.2016 19:19>роутер-коробчонку из китая за 12-13 баксов, которая будет делать то же самое
и при этом дико тормозить, по крайней мере железках с слабым процессором / сетью xupnpd лагает при конверте HD IPTV в DLNA для телека
>запустить на любом компьютере.
который нужно держать включенным, а он, негодяй, шумит вентиляторами, в отличии железяк с пассивным охлаждением.lolipop
28.04.2016 19:35коробченка держит в себе mips-процессор 600Mhz, 64 памяти и флешку 8 гб, думаете, в zyxel-ях из обзора стоит другой процессор?
kharkevich
28.04.2016 22:57Не знаю что у вас за коробочка, но у меня был опыт с двумя коробочками:
rb951g-2hnd в meta router'е c openwrt (правда вот тут немного не честно)
wr841n перешитый на openwrt
Ни одна из них не смогла xupnpd. Любая динамическая сцена вызывала прекрасные зеленые кубики.
Пришлось заменить на одноплатный компьютер с пассивным охлаждением.
думаете, в zyxel-ях из обзора стоит другой процессор — не знаю. просто сказал, что коробочка не смогла
ksantd
29.04.2016 16:08про проц не помню(память намекает на что то с 1 ггц но могу ошибиться), но 256 оперативы у него да и файл подкачки можно делать если подключить хдд, выходит на порядок мощнее =)
bazis13
28.04.2016 23:04конечно надо держать включенным, зачем его выключать днем-то? Сделайте нормальное охлаждение, не будет он шуметь.
ed007
28.04.2016 18:59Все же не совсем понимаю смысла в таких серверах. Если для просмотра фильмов, то hdmi кабель к большому ТВ таким сервером не очень заменишь. Если слушать музыку с музцентра — с точки зрения управления гораздо удобнее использовать mpd с локальным накопителем — проще говоря телефон с хорошим цап, например самс s3
ivga
28.04.2016 19:49Заменить кабель беспроводным приложением на телефоне или планшете намного удобнее.
AxisPod
28.04.2016 19:55Ну sams s3 не очень просто и найти, да и цап для смарта хорош, но уж никак не для нормального стационарного прослушивания. А вот с mpd не уверен что удобнее, онлайн радио организовать, окей, а вот с управлением на конечном устройстве будет множество мук.
А вот фильмы смотреть с ТВ поддерживающего DLNA ну очень удобно, до использования относился скептически, но после сборки своего NAS и покупки ТВ, скептицизм испарился. Из кучи вариантов DLNA оказался наиболее удобным, монстроузный Kodi (XBMC) не вкатил, долгие загрузки, топорное управление, куча менюшек только усложняет просмотр (использовался на Android медиа-плеере), с компьютера смотреть тоже не удобно, явно нужен пульт.
Завёл один раз DLNA сервак и всё, в любом месте, с любого девайса, смотри и не надо мучиться.Meklon
28.04.2016 22:03+1Для Kodi есть офигенная программа Yatse. Универсальный пульт. Любой телефон и планшет в доме для управления телевизором. При необходимости прямой стрим видео с телефона на экран. Или YouTube через share сразу на телевизор отправить.
Автор — очень отзывчивый швед.
semmaxim
28.04.2016 20:01Да-да, конечно. Тянуть HDMI-кабель от компьютера в зале к телевизору в спальне. Да ещё и бегать каждый раз в соседнюю комнату чтобы переключить на другую серию или перемотать.
Meklon
28.04.2016 22:05Я создавал по схеме Центральный сервер с дисками -> мелкая железка типа Intel NUC/Raspberry Pie -> HDMI -> телевизор. Пульт — любой телефон или планшет.
semmaxim
29.04.2016 08:04Сравните по стоимости, простоте и времени настройки. А результат тот же. Смысл?
Meklon
29.04.2016 10:54Принципиально удобство отличается. У меня это IPTV, вся музыка, фильмы, сериалы. Все с каталогизацией. Та же музыка может включаться на колонки без телевизора, просто как фон. Удобнее, чем напрямую с файлами. Но дороже, да.
semmaxim
29.04.2016 10:58Посмотрите Plex. Там именно фильмы, сериалы, каталогизация, отметки посмотрел / ещё нет, запоминание места на котором закончил смотреть, поддержка компьютеров/планшетов/смартфонов/SmartTV (через DLNA и/или специальное приложение). Всё это — установить приложение и указать ему папки из которых он сам всё подтянет, определит (точность ~ 90%), катологизирует и рассортирует.
Meklon
29.04.2016 11:14Посмотрю, но уже Kodi работает в полный рост. И да, у меня телевизоры — тупые.
bazis13
28.04.2016 23:10комп с полноценной ОС — это не дешевая железка на андроиде, придумали уже 100500 способов им управлять удаленно.
semmaxim
29.04.2016 08:10Только все эти способы они гораздо сложнее, чем поставить галочку или установить тот же Plex. И управлять придётся с какого-то устройства (а у меня, например, нет планшета и телефон на Windows Phone).
West77
29.04.2016 16:07У меня дома NAS на 3 Гб, стоит где-то далеко, и в локальную сеть раздает все фильмы, музыку, фото по DLNA/UPnP. Я могу зайти на него с мобильного телефона, выбрать фильм и отправить на большой телевизор. Удобно. не нужны компьютеры и HDMI кабели.
shuvaevgl
28.04.2016 19:43Стоит у меня дома NAS от QNAP. Дома несколько компов, смартфоны, есть медиаплеер, для просмотра кино на большом экране через проектор. И все устройства совершенно спокойно работают по шаре. Почти все SmartTV умеют работать с шарой, все медиаплееры. Если дома стоят Windows и Mac системы, то тоже проблемы нет — ставим одну галку и запускаем еще один протокол. Зачем нужен DLNA, который создает дополнительную нагрузку на хранилище, если и без него все работает?
AVX
28.04.2016 21:31Например для смарт тв LG, в которых после 13 года убрали поддержку SMB. Печаль-беда, но приходится смотреть либо по DLNA, либо просто с внешнего HDD (так мне кажется наиболее стабильно и удобно, если не часто фильмы новые качать).
shuvaevgl
28.04.2016 21:35Ух ты, а как они обосновали такое решение? Что-то с лицензиями?
AVX
28.04.2016 21:44Где-то на хабре были статьи, я сам уже не помню, смирился как-то. Вроде некоторые предлагали решения, типа после сброса на начальные настройки выбрать страну не Россию, а какую-то ещё, и будет работать. Но будет язык не тот, и не совсем удобно — другой набор интернет-сервисов, другой набор подборок провайдеров спутникового тв (ах, да, это только у кого встроенный dvb s/s2), и так далее. Я не стал что-то менять, т.к. уже несколько апдейтов прошивок применилось, и много накручено (начиная от тонкой настройки цветов, заканчивая установленными приложениями). Пока и так нормально, тем более не часто фильмы смотрим — просто времени нет. А когда находится — то плюс часок потратим на то, чтобы выбрать, что посмотреть, найти и скачать торрент, ну и смотрим потом с внешнего винта.
boldun
29.04.2016 16:07А ещё из DLNA клиента в LG телеке выпилили возможность выбора аудио дорожки, что ещё больше опечалило (вроде все в том же 2013).
ivga
28.04.2016 19:55Из серверов в тексте статьи забыли Serviio и miniDLNA, уже упомянутый выше.
По видео плеерам важно указывать наличие АС3 кодека, в VLC для iOS его нет, зато есть в nPlayer, Infuse, MCPlayer и ArkMC. ArkMC вообще выступает не только как плеер, но еще и как медиа сервер при его запуске на планшете или телефоне.
Ну и, я бы не забывала о том, что приложения-плееры с поддержкой UPnP/DLNA/Samsung Link сейчас работают не только со смарт ТВ, но и отправляют мультимедиа на Xbox, PS, работают с Chromecast, Apple TV и другими стиками.
Magnum72
28.04.2016 20:13Я перепробовал кучу DLNA серверов, в итоге остановился на Serviio. Еще хочу обратить ваше внимание на вот такой сервер: https://forum.cesbo.com/topic/1113-dlna-server/
Dimox
28.04.2016 20:50Подскажите, пожалуйста, по моей проблеме.
У меня всё как в статье — Zyxel, к нему подключен внешний жесткий диск по USB (правда без дополнительного питания). Захожу на диск по FTP. При этом скорость загрузки файлов составляет всего ~800 килобайт в секунду. То есть фильм размером 2-4 гигабайта записывается по нескольку часов.
Можно ли как-то увеличить скорость загрузки?Dimox
28.04.2016 20:56Поправка — не по FTP, а через «Сеть MS Windows».
maximfilin
29.04.2016 21:59А роутер какого поколения? У меня ПК — LAN — роутер/винт очень быстро, по 5 ГГц чуть медленнее, но все же не так.
Dimox
29.04.2016 22:50Keenetic Viva. Относительно недавняя модель вроде.
Вот я и думаю, что что-то у меня может не так настроено.maximfilin
29.04.2016 23:07Вот тут http://www.ixbt.com/comm/zyxel-keenetic-viva-extra.shtml пишут что скорость вполне себе ок. А файловая система на жёстком какая?
Dimox
30.04.2016 10:59Нашел решение проблемы. В настройках межсетевого экрана нужно было добавить 21-й порт. Теперь скорость загрузки — минимум 13 мегабайт в секунду.
vanyatwo
28.04.2016 21:30Имеется Synology NAS. Раньше складировал видео (кино, сериалы). Теперь на нем только музыка, у нее «реиграбельность» гораздо выше + удобен постоянный доступ.
Когда в итоге пришли к тому, что фильмы вообще не смотрим (ну кроме реально хороших по отзывам), т.к. 1.5 часа на один «сценарий» — многовато. Смотрим сериалы. Так вот, с ними задолбаешься постоянно обновлять серии и тд.
В итоге для iOS — Airplay, для Android — Miracast (или че там у них новое ща). Приемник на али стоит 20 баксов (хотя у меня AppleTV, стабильнее работает). Запустить любую серию занимает 1 минуту (hdrezka и тому подобные => play => отправить на экран).
Garg0t
28.04.2016 22:05При использовании Plex в связке с телевизором, поддерживающим Smart-TV, лучше использовать для просмотра родное приложение Plex просмотра.
ASD2003ru
28.04.2016 23:14+1Если устройство поддерживает SMB то уж лучше через него. Через DLNA бывает куча проблем.
— Не поддерживается перемотка.
— Не поддерживается формат (к примеру MKV, требуется транскодирование, чего роутер или простенький NAS вам врятли даст).
— Не поддерживается кодек (причём тот же файл через SMB может проигрываться) есть вариант в продвинутых DLNA серверах такой как транскодирование, но это и нагрузка на CPU и потеря качества.
— Разные производители железок в разной полноте реализуют возможности DLNA (как пример та же перемотка).
— Разного рода зависания, причём на устройствах воспроизведения нужно делать вплоть до перезагрузки.
Короче достаточно капризная вещь если использовать с железными проигрывателями.edogs
28.04.2016 23:40Единственным минусом, характерным только для Smart TV, является отсутствие возможности быстрой перемотки файла — её можно делать только шагами по минуте или две, что несколько усложняет просмотр видео не с начала.
Во-первых, перемотка зависит от формата, на некоторых работает отлично.
Во-вторых, действительно серьезным минусом является то, что на некоторых смарттв по длна недоступен выбор звуковых дорожек, играет только 1-ая, безусловно. Ну и внешние сабы недоступны.ASD2003ru
28.04.2016 23:48Перемотка на SMB может не работать (часто такое с MKV, плохо понимают контейнер).
А на DLNA перемотка может не работать еще и по причине кривой реализации протокола.
В том же Home media server можно посмотреть на профили для разного вида устройств.
Я к примеру сталкивался с таким: С флехи файл играет (кодек есть значит, формат контейнера понимает) — по DLNA — нет, только с транскодированием. По тому, смотрите много фильмов в разных форматах на ТВ — купите медиаплеер и не пудрите себе мозг с DLNA.
Есть возможность доступа по SMB — используйте его.edogs
29.04.2016 15:25По тому, смотрите много фильмов в разных форматах на ТВ — купите медиаплеер и не пудрите себе мозг с DLNA.
Не канает. 2-3 телевизора — к каждому покупать медиаплеер и копировать библиотеку? К тому же пользуемся именно длна на зухеле уже года 3 и ни одной проблемы, ну, кроме дорожки.
maximfilin
29.04.2016 22:01Может дело в ТВ, все Samsung все что видел перематывали только «шагами» по несколько секунд.
Mintavrus
29.04.2016 16:07Лучший медиасервер в части возможностей и настроек — HMS ( www.homemediaserver.ru )
Tim0n
29.04.2016 16:07Также не вижу необходимости в DLNA. HD-плеер (у меня Dune) подключен по HDMI к телевизору, сам качает торенты на свой винт или можно на него-же закачивать по сети с компьютера. Винта не слышно, охлаждение пассивное. Android — любой плеер играет с сетевой шары.
borec1
29.04.2016 16:07Использую DLNA сервер, встроенный в Win 8. Работает стабильно, никакого дополнительно софта. Если комп вдруг спит, телевизор его будит.
Когда на компе была XP'шка, пользовался PS3 Media Server. Тоже было неплохо, но менее стабильно.
juDge
29.04.2016 16:07С плекс навигация куда удобней чем с DLNA… есть описание медифайлов. У меня туча видео файлов накачаных но вот вопрос в том когда садишься смотреть то просто название мало о чем говорит. А в Plex зашел посмотрел описание, трейлеры глянул, понравилось посмотрел или не понравилось и не посмотрел =)
und
03.05.2016 14:55У меня в одной комнате стоит WDMyCloud, он естественно подсоединен к интернету. Телевизору тоже подключен к интернету, но я предпочитаю Raspberry PI, конечно можно было и телеком подсасывать контент, но Raspberry (XMBC) удобней. Еще на кухне стоит колонка с вторым Raspberry, который по wi-fi музыку подсасывает с NAS. DLNA удобно, спору нет. Проверил, мой Mikrotik не умеет сам создавать DLNA.
Eureka
Уважаемый автор, пользуясь темой вашей статьи позвольте задать вопрос собществу и вам, если в курсе: как можно ограничить доступ к части контента передаваемого через DLNA по MAC или IP конечного устройства? Есть сервер на базе Ubuntu Server, на нем работает MiniDLNA. И все бы не плохо, но как ограничить например на телевизоре в детской доступ в определенные папки общего медиа-архива? Уверен, очень актуальная задача.
mcleod095
Насколько я помню то протокол сам такое сделать не может.
Как вариант телевизор в десткой закинуть в другой vlan и уже в этом vlan запустить отдельную копию minidlna в котором прописать доступ только к нужной директории.
Хотя может есть более просто способ.
avg
Попробуйте plex, там есть и то то вы хотите, и еще много чего еще. Особенно радуют клиенты под всякие телевизоры и мобильные устройства, ими пользоваться гораздо удобней чем dlna напрямую, а на десктопе достаточно браузера
Я перешел на plex с minidlna и не жалею.
varelavalera
Клиенты на мобильные устройства у Plex платные
climp
А еще он неплохо поддерживается и развивается (plex). Большой фанат этого проекта. Можно даже пропускать IPTV с известного сайта, где за 1$ (теперь, раньше было бесплатно) 150 каналов, в т.ч. HD (кому интересно, спрашивайте в личку). IPTV смотреть через DLNA на ТВ, которые не поддерживают IPTV, но умеют DLNA. Ой, что-то меня понесло)
SL_RU
Просто ограничьте правами доступа. Запускайте демон от пользователя minidlna и настройте права чтения для необходимых файлов и папок.
Raegdan
И где же тут разделение доступа? Как вы решите задачу «чтобы мамка прон не нашла» таким механизмом? Это может помочь при использовании нескольких протоколов — типа демон SMB видит своё, а демон DLNA своё. Но при использовании одного DLNA вы ничего таким механизмом не добьётесь — всё, что он увидит, он раздаст всем.
SL_RU
А разве автор вопроса говорил, что ему нужно разделить доступ? Нет, он сказал только лишь про ограничение, а права доступа — самый естественный подход для решения этой задачи.
Raegdan
Он хочет для разных телевизоров отдавать разные подмножества контента. Через права в файловой системе такое не реализовать, потому что демон работает всегда под одной и той же учеткой.
SL_RU
Ну если так, то конечно. Тут без самбы никак. Её тоже все телики и телефончики поддерживают. Потоковое видео проигрывается через неё тоже отлично.
Raegdan
Ага. Поэтому мой NAS тоже работает по самбе.
AVX
Не все телики. LG уже пару лет как не поддерживает.
chieftain_yu
Если я правильно понял, что вам надо — под винду есть Home media server
.
maximfilin
Ох, актуальность это не то слово, но пока зачатки политик видел только для Home media server для Win