Как стать автором
Обновить

Простой способ создания и использования DLNA сервера для домашнего хранилища

Время на прочтение4 мин
Количество просмотров106K
Всего голосов 20: ↑14 и ↓6+8
Комментарии73

Комментарии 73

Уважаемый автор, пользуясь темой вашей статьи позвольте задать вопрос собществу и вам, если в курсе: как можно ограничить доступ к части контента передаваемого через DLNA по MAC или IP конечного устройства? Есть сервер на базе Ubuntu Server, на нем работает MiniDLNA. И все бы не плохо, но как ограничить например на телевизоре в детской доступ в определенные папки общего медиа-архива? Уверен, очень актуальная задача.
Насколько я помню то протокол сам такое сделать не может.
Как вариант телевизор в десткой закинуть в другой vlan и уже в этом vlan запустить отдельную копию minidlna в котором прописать доступ только к нужной директории.
Хотя может есть более просто способ.
Попробуйте plex, там есть и то то вы хотите, и еще много чего еще. Особенно радуют клиенты под всякие телевизоры и мобильные устройства, ими пользоваться гораздо удобней чем dlna напрямую, а на десктопе достаточно браузера

Я перешел на plex с minidlna и не жалею.
Клиенты на мобильные устройства у Plex платные
А еще он неплохо поддерживается и развивается (plex). Большой фанат этого проекта. Можно даже пропускать IPTV с известного сайта, где за 1$ (теперь, раньше было бесплатно) 150 каналов, в т.ч. HD (кому интересно, спрашивайте в личку). IPTV смотреть через DLNA на ТВ, которые не поддерживают IPTV, но умеют DLNA. Ой, что-то меня понесло)
Просто ограничьте правами доступа. Запускайте демон от пользователя minidlna и настройте права чтения для необходимых файлов и папок.
И где же тут разделение доступа? Как вы решите задачу «чтобы мамка прон не нашла» таким механизмом? Это может помочь при использовании нескольких протоколов — типа демон SMB видит своё, а демон DLNA своё. Но при использовании одного DLNA вы ничего таким механизмом не добьётесь — всё, что он увидит, он раздаст всем.
А разве автор вопроса говорил, что ему нужно разделить доступ? Нет, он сказал только лишь про ограничение, а права доступа — самый естественный подход для решения этой задачи.
Он хочет для разных телевизоров отдавать разные подмножества контента. Через права в файловой системе такое не реализовать, потому что демон работает всегда под одной и той же учеткой.
Ну если так, то конечно. Тут без самбы никак. Её тоже все телики и телефончики поддерживают. Потоковое видео проигрывается через неё тоже отлично.
Ага. Поэтому мой NAS тоже работает по самбе.
Не все телики. LG уже пару лет как не поддерживает.
Если я правильно понял, что вам надо — под винду есть Home media server
.
Ох, актуальность это не то слово, но пока зачатки политик видел только для Home media server для Win
А еще можно просто заказать роутер-коробчонку из китая за 12-13 баксов, которая будет делать то же самое. Ну или на любом другом роутере с usb на альтернативной прошивке. Или даже просто запустить на любом компьютере.
>роутер-коробчонку из китая за 12-13 баксов, которая будет делать то же самое
и при этом дико тормозить, по крайней мере железках с слабым процессором / сетью xupnpd лагает при конверте HD IPTV в DLNA для телека
>запустить на любом компьютере.
который нужно держать включенным, а он, негодяй, шумит вентиляторами, в отличии железяк с пассивным охлаждением.
коробченка держит в себе mips-процессор 600Mhz, 64 памяти и флешку 8 гб, думаете, в zyxel-ях из обзора стоит другой процессор?
Не знаю что у вас за коробочка, но у меня был опыт с двумя коробочками:
rb951g-2hnd в meta router'е c openwrt (правда вот тут немного не честно)
wr841n перешитый на openwrt
Ни одна из них не смогла xupnpd. Любая динамическая сцена вызывала прекрасные зеленые кубики.
Пришлось заменить на одноплатный компьютер с пассивным охлаждением.

думаете, в zyxel-ях из обзора стоит другой процессор — не знаю. просто сказал, что коробочка не смогла
про проц не помню(память намекает на что то с 1 ггц но могу ошибиться), но 256 оперативы у него да и файл подкачки можно делать если подключить хдд, выходит на порядок мощнее =)
конечно надо держать включенным, зачем его выключать днем-то? Сделайте нормальное охлаждение, не будет он шуметь.
если читать внимательно, то все это в статье указано.
А пример не подскажете?
nexx 3020 на родной прошивке или перешитый в zуxеl/openwrt/padavan.
Есть ещё Plex. Супер штука.
Все же не совсем понимаю смысла в таких серверах. Если для просмотра фильмов, то hdmi кабель к большому ТВ таким сервером не очень заменишь. Если слушать музыку с музцентра — с точки зрения управления гораздо удобнее использовать mpd с локальным накопителем — проще говоря телефон с хорошим цап, например самс s3
Заменить кабель беспроводным приложением на телефоне или планшете намного удобнее.
Ну sams s3 не очень просто и найти, да и цап для смарта хорош, но уж никак не для нормального стационарного прослушивания. А вот с mpd не уверен что удобнее, онлайн радио организовать, окей, а вот с управлением на конечном устройстве будет множество мук.

А вот фильмы смотреть с ТВ поддерживающего DLNA ну очень удобно, до использования относился скептически, но после сборки своего NAS и покупки ТВ, скептицизм испарился. Из кучи вариантов DLNA оказался наиболее удобным, монстроузный Kodi (XBMC) не вкатил, долгие загрузки, топорное управление, куча менюшек только усложняет просмотр (использовался на Android медиа-плеере), с компьютера смотреть тоже не удобно, явно нужен пульт.

Завёл один раз DLNA сервак и всё, в любом месте, с любого девайса, смотри и не надо мучиться.

Для Kodi есть офигенная программа Yatse. Универсальный пульт. Любой телефон и планшет в доме для управления телевизором. При необходимости прямой стрим видео с телефона на экран. Или YouTube через share сразу на телевизор отправить.


Автор — очень отзывчивый швед.

Да-да, конечно. Тянуть HDMI-кабель от компьютера в зале к телевизору в спальне. Да ещё и бегать каждый раз в соседнюю комнату чтобы переключить на другую серию или перемотать.

Я создавал по схеме Центральный сервер с дисками -> мелкая железка типа Intel NUC/Raspberry Pie -> HDMI -> телевизор. Пульт — любой телефон или планшет.

Сравните по стоимости, простоте и времени настройки. А результат тот же. Смысл?

Принципиально удобство отличается. У меня это IPTV, вся музыка, фильмы, сериалы. Все с каталогизацией. Та же музыка может включаться на колонки без телевизора, просто как фон. Удобнее, чем напрямую с файлами. Но дороже, да.

Посмотрите Plex. Там именно фильмы, сериалы, каталогизация, отметки посмотрел / ещё нет, запоминание места на котором закончил смотреть, поддержка компьютеров/планшетов/смартфонов/SmartTV (через DLNA и/или специальное приложение). Всё это — установить приложение и указать ему папки из которых он сам всё подтянет, определит (точность ~ 90%), катологизирует и рассортирует.

Посмотрю, но уже Kodi работает в полный рост. И да, у меня телевизоры — тупые.

комп с полноценной ОС — это не дешевая железка на андроиде, придумали уже 100500 способов им управлять удаленно.
Только все эти способы они гораздо сложнее, чем поставить галочку или установить тот же Plex. И управлять придётся с какого-то устройства (а у меня, например, нет планшета и телефон на Windows Phone).
Это пока у вас один телевизор.
У меня дома NAS на 3 Гб, стоит где-то далеко, и в локальную сеть раздает все фильмы, музыку, фото по DLNA/UPnP. Я могу зайти на него с мобильного телефона, выбрать фильм и отправить на большой телевизор. Удобно. не нужны компьютеры и HDMI кабели.
Наверное, все же не на 3Гб, а на 3 Тб?
Стоит у меня дома NAS от QNAP. Дома несколько компов, смартфоны, есть медиаплеер, для просмотра кино на большом экране через проектор. И все устройства совершенно спокойно работают по шаре. Почти все SmartTV умеют работать с шарой, все медиаплееры. Если дома стоят Windows и Mac системы, то тоже проблемы нет — ставим одну галку и запускаем еще один протокол. Зачем нужен DLNA, который создает дополнительную нагрузку на хранилище, если и без него все работает?
Например для смарт тв LG, в которых после 13 года убрали поддержку SMB. Печаль-беда, но приходится смотреть либо по DLNA, либо просто с внешнего HDD (так мне кажется наиболее стабильно и удобно, если не часто фильмы новые качать).
Ух ты, а как они обосновали такое решение? Что-то с лицензиями?
Где-то на хабре были статьи, я сам уже не помню, смирился как-то. Вроде некоторые предлагали решения, типа после сброса на начальные настройки выбрать страну не Россию, а какую-то ещё, и будет работать. Но будет язык не тот, и не совсем удобно — другой набор интернет-сервисов, другой набор подборок провайдеров спутникового тв (ах, да, это только у кого встроенный dvb s/s2), и так далее. Я не стал что-то менять, т.к. уже несколько апдейтов прошивок применилось, и много накручено (начиная от тонкой настройки цветов, заканчивая установленными приложениями). Пока и так нормально, тем более не часто фильмы смотрим — просто времени нет. А когда находится — то плюс часок потратим на то, чтобы выбрать, что посмотреть, найти и скачать торрент, ну и смотрим потом с внешнего винта.
А ещё из DLNA клиента в LG телеке выпилили возможность выбора аудио дорожки, что ещё больше опечалило (вроде все в том же 2013).
НЛО прилетело и опубликовало эту надпись здесь
Патентные тролли по форматам сейчас лютуют(
>Для ноутбуков на Windows и Mac самым простым способом будет использования всеядного и широко известного плеера VLC…

А под Linux?
и под линукс тоже
VLC?
Он не только широко известен, но и широко доступен
У меня VLC почему-то долго «обнаруживает» сервер DLNA + есть проблемы при перемотке.
Из серверов в тексте статьи забыли Serviio и miniDLNA, уже упомянутый выше.

По видео плеерам важно указывать наличие АС3 кодека, в VLC для iOS его нет, зато есть в nPlayer, Infuse, MCPlayer и ArkMC. ArkMC вообще выступает не только как плеер, но еще и как медиа сервер при его запуске на планшете или телефоне.

Ну и, я бы не забывала о том, что приложения-плееры с поддержкой UPnP/DLNA/Samsung Link сейчас работают не только со смарт ТВ, но и отправляют мультимедиа на Xbox, PS, работают с Chromecast, Apple TV и другими стиками.

Подскажите, пожалуйста, по моей проблеме.

У меня всё как в статье — Zyxel, к нему подключен внешний жесткий диск по USB (правда без дополнительного питания). Захожу на диск по FTP. При этом скорость загрузки файлов составляет всего ~800 килобайт в секунду. То есть фильм размером 2-4 гигабайта записывается по нескольку часов.

Можно ли как-то увеличить скорость загрузки?
Поправка — не по FTP, а через «Сеть MS Windows».
А роутер какого поколения? У меня ПК — LAN — роутер/винт очень быстро, по 5 ГГц чуть медленнее, но все же не так.
Keenetic Viva. Относительно недавняя модель вроде.

Вот я и думаю, что что-то у меня может не так настроено.
Вот тут http://www.ixbt.com/comm/zyxel-keenetic-viva-extra.shtml пишут что скорость вполне себе ок. А файловая система на жёстком какая?
NTFS.
Нашел решение проблемы. В настройках межсетевого экрана нужно было добавить 21-й порт. Теперь скорость загрузки — минимум 13 мегабайт в секунду.
Ого, спасибо буду знать.
Имеется Synology NAS. Раньше складировал видео (кино, сериалы). Теперь на нем только музыка, у нее «реиграбельность» гораздо выше + удобен постоянный доступ.
Когда в итоге пришли к тому, что фильмы вообще не смотрим (ну кроме реально хороших по отзывам), т.к. 1.5 часа на один «сценарий» — многовато. Смотрим сериалы. Так вот, с ними задолбаешься постоянно обновлять серии и тд.

В итоге для iOS — Airplay, для Android — Miracast (или че там у них новое ща). Приемник на али стоит 20 баксов (хотя у меня AppleTV, стабильнее работает). Запустить любую серию занимает 1 минуту (hdrezka и тому подобные => play => отправить на экран).
При использовании Plex в связке с телевизором, поддерживающим Smart-TV, лучше использовать для просмотра родное приложение Plex просмотра.
Если устройство поддерживает SMB то уж лучше через него. Через DLNA бывает куча проблем.
— Не поддерживается перемотка.
— Не поддерживается формат (к примеру MKV, требуется транскодирование, чего роутер или простенький NAS вам врятли даст).
— Не поддерживается кодек (причём тот же файл через SMB может проигрываться) есть вариант в продвинутых DLNA серверах такой как транскодирование, но это и нагрузка на CPU и потеря качества.
— Разные производители железок в разной полноте реализуют возможности DLNA (как пример та же перемотка).
— Разного рода зависания, причём на устройствах воспроизведения нужно делать вплоть до перезагрузки.

Короче достаточно капризная вещь если использовать с железными проигрывателями.
Единственным минусом, характерным только для Smart TV, является отсутствие возможности быстрой перемотки файла — её можно делать только шагами по минуте или две, что несколько усложняет просмотр видео не с начала.
Во-первых, перемотка зависит от формата, на некоторых работает отлично.
Во-вторых, действительно серьезным минусом является то, что на некоторых смарттв по длна недоступен выбор звуковых дорожек, играет только 1-ая, безусловно. Ну и внешние сабы недоступны.
Перемотка на SMB может не работать (часто такое с MKV, плохо понимают контейнер).
А на DLNA перемотка может не работать еще и по причине кривой реализации протокола.
В том же Home media server можно посмотреть на профили для разного вида устройств.
Я к примеру сталкивался с таким: С флехи файл играет (кодек есть значит, формат контейнера понимает) — по DLNA — нет, только с транскодированием. По тому, смотрите много фильмов в разных форматах на ТВ — купите медиаплеер и не пудрите себе мозг с DLNA.
Есть возможность доступа по SMB — используйте его.
По тому, смотрите много фильмов в разных форматах на ТВ — купите медиаплеер и не пудрите себе мозг с DLNA.
Не канает. 2-3 телевизора — к каждому покупать медиаплеер и копировать библиотеку? К тому же пользуемся именно длна на зухеле уже года 3 и ни одной проблемы, ну, кроме дорожки.
Может дело в ТВ, все Samsung все что видел перематывали только «шагами» по несколько секунд.
Лучший медиасервер в части возможностей и настроек — HMS ( www.homemediaserver.ru )
Также не вижу необходимости в DLNA. HD-плеер (у меня Dune) подключен по HDMI к телевизору, сам качает торенты на свой винт или можно на него-же закачивать по сети с компьютера. Винта не слышно, охлаждение пассивное. Android — любой плеер играет с сетевой шары.
НЛО прилетело и опубликовало эту надпись здесь
Использую DLNA сервер, встроенный в Win 8. Работает стабильно, никакого дополнительно софта. Если комп вдруг спит, телевизор его будит.
Когда на компе была XP'шка, пользовался PS3 Media Server. Тоже было неплохо, но менее стабильно.
С плекс навигация куда удобней чем с DLNA… есть описание медифайлов. У меня туча видео файлов накачаных но вот вопрос в том когда садишься смотреть то просто название мало о чем говорит. А в Plex зашел посмотрел описание, трейлеры глянул, понравилось посмотрел или не понравилось и не посмотрел =)
У меня в одной комнате стоит WDMyCloud, он естественно подсоединен к интернету. Телевизору тоже подключен к интернету, но я предпочитаю Raspberry PI, конечно можно было и телеком подсасывать контент, но Raspberry (XMBC) удобней. Еще на кухне стоит колонка с вторым Raspberry, который по wi-fi музыку подсасывает с NAS. DLNA удобно, спору нет. Проверил, мой Mikrotik не умеет сам создавать DLNA.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий