Linux mint dlna клиент

Linux Mint 17 и DLNA

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

Но возникает проблема для тех, у кого нет дома NAS или чего-то подобного, а смотреть контент с ПК на других устройствах, поддерживающих DLNA хочется. Под Linux существует множество различных DLNA-серверов, но оптимальным, все же, является MiniDLNA. И тому есть несколько причин. Во-первых, это типичный Unix-way: этот сервер является именно DLNA-сервером, а не комбайном с кучей свистелок, при этом контент без проблем воспринимается на любом устройстве. Даже телевизоры Samsung со своим AllShare прекрасно подключаются к нему. Также можно отметить и замечательную скорость работы и нетребовательность к ресурсам этого сервера.

И все бы было хорошо, но вот в с помощью команды

установить его не получится — нет его в репозитарии.

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

Подготовка

Если будете выполнять команды в консоли, запущенной с правами root, команду sudo писать не нужно.

Для начала нужно установить необходимые библиотеки:

И устанавливаем сами библиотеки:

Самая свежая версия MiniDLNA на данный момент — 1.1.3, ее можно скачать здесь, либо загрузить из консоли:

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

Теперь перейдем в распакованную папку с исходниками

Если вы хотите, чтобы на устройстве отображались сразу папки с файлами, нужно немного подправить код:

и откроем в редакторе

поиском (F6), ищем процедуру:

В начале процедуры выполняется разбор SOAP/XML-запроса, затем его обработка и возврат результата. Разбор запроса завершается формированием отладочного сообщения:

Далее реализован выбор корневого контейнера в зависимости от конфигурационного параметра root_container:

Сразу после этого блока и перед блоком с запросами к БД добавляем код перенаправления папок для видео, музыки и изображений:

В итоге правленный фрагмент должен выглядеть следующим образом:

Чтобы упростить процедуру последующего обновления, сохраним патч с внесенными изменениями:

Теперь вместо редактирования файла, достаточно применить патч:

Теперь можно переходить к конфигурированию.

Если вам это не нужно, переходите сразу к конфигурированию:

Установка

1) Для тех, кто в дальнейшем захочет обновить версию, предыдущую можно удалить (конфигурационные файлы при этом сохраняются), если этого не сделать, то в случае, если в новой версии состав установочных файлов изменится, в /usr/local могут остаться старые файлы, при первой установке — переходим сразу к пункту 2.

Для удаления заходим в папку с предыдущей установкой и выполняем команду:

2) Запускаем установку (в комментариях предложили более правильный путь, чем make install):

Ключ -D указывает, что должен быть создан Debian-пакет

3)Если мы производим первоначальную установку, нужно создать init-скрипт:

, если мы обновляем версию, больше ничего делать не нужно, при первоначальной установке у нас откроется пустой файл, в который нужно внести следующий код:

, сохранить комбинацией клавиш Ctrl+O и выйти из редактора — Ctrl+X.

4) После этого даем права на запуск скрипта:

5) И активируем запуск init-скрипта:

6) Так как по умолчанию служба запускается под пользователем minidlna, нам нужно создать соответствующую учетную запись:

7) Правим файл конфигурации сервера:

В нем нам нужно следующее содержимое (здесь подправлен интервал, с которым сервер себя анонсирует, так как не все телевизоры опрашивают сервер, также вам надо прописать путь к папке с медиа, к примеру так: «media_dir=V,/mnt/sdb6/Video/Alex/» в соответствующем разделе файла):

8)Затем проверяем параметры init-скрипта /etc/default/minidlna:

Обычно корректировка не требуется. Если файл отсутствует, при первичной установке из исходников, копируем листинг:

Обычно после этого не требуется дополнительных настроек, но если есть проблемы с доступом к медиа (или хотите перестраховаться), можно настроить права доступа:

Если папка недоступна, задаем права доступа:

Вышестоящие папки также должны быть доступны на чтение всем пользователям. Проверяем доступность на чтение каждой папки, указанной в пути. Для вышестоящих папок используем chmod без ключа -R, если не требуется сброс разрешений для всех дочерних файлов и папок.
В качестве альтернативы смене разрешений, можно запустить MiniDLNA от имени пользователя или группы-владельца файлов. Для этого необходимо задать параметры USER и GROUP в /etc/default/minidlna, и сменить владельца папки /var/lib/minidlna командой:

Читайте также:  Темы для рабочего стола windows 10 весна
Запуск сервера

Проверяем, работает ли служба, также смотрим параметры запуска:

Проверяем, слушается ли порт:

В случае успешного старта, лог должен быть примерно следующим:

Если видим: «WARNING: Inotify max_user_watches [8192] is low.», необходимо увеличить число дескрипторов слежения inotify до 100 000. Для этого в файл /etc/sysctl.conf добавим строки:

Или копипастом команды:

Изменение параметра вступит в силу после перезагрузки системы.
Открываем в браузере адрес.сервера:8200, видим количество файлов в библиотеке, начиная с версии 1.1.2, также отображается список подключенных клиентов.

Настройка DLNA/UPnP-AV сервера завершена.

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

Служба при этом будет перезапущена, подключенные клиенты будут отключены.

Для сканирования медиа-библиотеки при каждом старте системы можно задать ключ запуска: “-R” в параметре DAEMON_OPTS в файле /etc/default/minidlna. Сканирование большой медиа-библиотеки существенно нагружает диск, что может замедлить загрузку системы.

Полное формирование каталога может занять несколько минут. Сканирование папок выполняется в порядке их объявления в конфиге. Файлы из небольших папок, объявленных в конфиге выше, появятся в каталоге в самом начале процесса сканирования. Крупные папки с редко воспроизводимым контентом имеет смысл размещать в конфиге последними.

Источник

Просмотр видео с DLNA-сервера в Linux

Организовать DLNA-сервер на Linux можно множеством способов. Например можно использовать uShare или MiniDLNA. Но что если встала обратная задача? И если для прослушивая музыки с DLNA-сервера для Linux есть большое количество ПО, то с просмотром видео ситуация немного сложнее. Но определённый набор решений есть и тут. Именно они и будут рассмотрены далее.

Totem

Медиаплеер Totem, известный так же как GNOME Video, имеет поддержку DLNA, однако включение этой поддержки не совсем очевидно. Например на Ubuntu 18.04 после установки пакетов «totem», «totem-plugins» и «totem-plugins-extra» поддержки DLNA в Totem не обнаружилось. Оказалось что она реализована с использованием фреймворка grilo, для которого и нужно устанавливать модули. В итоге чтобы получить Totem с поддержкой DLNA необходимо выполнить команду:

Чтобы смотреть видео с DLNA-сервера нужно зайти в меню «Каналы», найти свой DLNA сервер, кликнуть по нему и выбрать нужный файл для просмотра. При воспроизведении видео можно ставить на паузу и перематывать. Всё стандартно. Единственное неприятное ограничение: все файлы на сервере отображаются единым списком без разбивки по папкам.

С видеоплеером VLC немного проще и без неожиданностей. В Ubuntu 18.04 его можно установить командой:

После запуска плеера нужно в меню «Вид» выбрать пункт «Плейлист», затем в списке слева выбрать «Протокол UPnP». После этого в Плейлисте отобразится список доступных медиа-серверов, кликая по которым можно перейти к выбору конкретного видео.

Поддерживается поиск на сервере и группировка медиафайлов по папкам. При просмотре видео всё также обычно и предсказуемо: работает перемотка и постановка видео на паузу. Как будто просмотр идёт с локального диска.

djmount

Интересным вариантом является использование djmount: утилиты, позволяющей монтировать медиасервер как обычную файловую систему. Для просмотра видео можно использовать любой Медиаплеер. В Ubuntu 18.04 можно djmount устанавливается командой:

После установки надо создать директорию и смонтировать в неё виртуальную файловую систему с помощью djmount:

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

Источник

DLNA клиент

В последней прошивке в телефон добавили функцию передачи контента по DLNA, чем мне весьма хочется воспользоваться. Посему вопрос — какие есть адекватные DLNA клиенты под линуксы? Пробовал Rygel, он молча не работает — т.е телефон клиент видит, но работать с ним не хочет

Контент теперь транслируют с мобильных устройств на стационарные. В этом мире что-то пошло не так.

Такого монстра громоздить ради просто транслирования музыки.. Ну и на клиенте нет иксов

Rygel непонятная штука, сам для DLNA с плазмы на Ubuntu пользуюсь minidlna, довольно шустрая и всегда работает, что актуально для устройств подключенных через домашний WiFi-роутер. Правда если чего в папке новое закачал то я так понял необходимо каждый раз делать sudo minidlna -R. Правда иногда не понимает без sudo service minidlna stop/start, но это мелочи. При этом устройство должно воспроизводить кодеки, например для DivX на телевизоре мне пришлось вначале проиграть с флешки регистрирующий ролик, хоть с флешки всё и так играло, но вот по DLNA без этого мало что передавалось.

Читайте также:  Последняя версия windows 2016 года

в качестве клиента пробуй XBMC, VLC. в качестве сервера рекомендую minidlna.

Правда если чего в папке новое закачал то я так понял необходимо каждый раз делать sudo minidlna -R

minidlna использует inotify и на лету подхватывает новый контент.

minidlna использует inotify и на лету подхватывает новый контент

я никакого лёта не увидел, хоть inotify и включен, поэтому только так

я никакого лёта не увидел, хоть inotify и включен, поэтому только так

УМВР искаропки. закинул файло, тут же проиндексировалось и стало доступно.

Если все же хочется на телефоне смотреть контент, а не передавать с него, то трудно представить что-то лучше Mediatomb.

Крутой, но не я один такой дурак, см. тут. А версия minidlna какая?

у меня 60, боюсь менять

minidlna

а шо, в репах демьяна его нету чоле?

а шо, в репах демьяна его нету чоле?

а откуда я его ставил епт? =]

адекватные DLNA клиенты под линуксы?

Главное чётко резличать, что в DLNA нет клиентов, а то запутаться легко. Есть три сущности:
— DLNA server (который раздаёт контент)
— DLNA player (который воспроизводит контент)
— DLNA control point (которая связывает произвольно первые со вторыми и упавляет вторыми)

Они могут сочетаться в разных вариантах. Скажем, Windows media player — это control + server. Телевизор часто внутри себя player + control. Я часто смотрю в варианте, когда control на коммуникаторе с Андроидом (предпочитаю BubbleUPnP), сервер — домашняя файлопомойка, проигрыватель — телевизор или тот же коммуникатор (когда ночью сериалы смотрю).

Под Linux более-менее (но не идеально) с серверами. Со всем остальным, особенно с control’ами — всё плохо :-/

я никакого лёта не увидел, хоть inotify и включен, поэтому только так

У меня прекрасно работает. Скопировал новый файл в положенное место или кинул симлинк на ведущуюся ещё раздачу — и файл мгновенно в списке MiniDLNA.

Источник

Linux Mint 17 и DLNA

Зачем это все надо

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

Но возникает проблема для тех, у кого нет дома NAS или чего-то подобного, а смотреть контент с ПК на других устройствах, поддерживающих DLNA хочется. Под Linux существует множество различных DLNA-серверов, но оптимальным, все же, является MiniDLNA. И тому есть несколько причин. Во-первых, это типичный Unix-way: этот сервер является именно DLNA-сервером, а не комбайном с кучей свистелок, при этом контент без проблем воспринимается на любом устройстве. Даже телевизоры Samsung со своим AllShare прекрасно подключаются к нему. Также можно отметить и замечательную скорость работы и нетребовательность к ресурсам этого сервера.

И все бы было хорошо, но вот в с помощью команды

установить его не получится — нет его в репозитарии.

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

Подготовка

Если будете выполнять команды в консоли, запущенной с правами root, команду sudo писать не нужно.

Для начала нужно установить необходимые библиотеки:

И устанавливаем сами библиотеки:

Самая свежая версия MiniDLNA на данный момент — 1.1.3, ее можно скачать здесь, либо загрузить из консоли: ключ перед адресом нужен, чтобы сохранилось оригинальное имя, с выхдом новой версии имя файла будет отличатся. После этого архив нужно распаковать:

Теперь перейдем в распакованную папку с исходниками

Если вы хотите, чтобы на устройстве отображались сразу папки с файлами, нужно немного подправить код:

Читайте также:  Mfco42d dll для windows 10

Для отключения запроса способа отображения файлов нужно в папке с исходниками (minidlna-1.1.3, мы в нее уже должны были перейти) подправить файл upnpsoap.c, но сначала сделаем его резервную копию:

и откроем в редакторе поиском (F6), ищем процедуру:

В начале процедуры выполняется разбор SOAP/XML-запроса, затем его обработка и возврат результата. Разбор запроса завершается формированием отладочного сообщения:

Далее реализован выбор корневого контейнера в зависимости от конфигурационного параметра root_container:

Сразу после этого блока и перед блоком с запросами к БД добавляем код перенаправления папок для видео, музыки и изображений:

В итоге правленный фрагмент должен выглядеть следующим образом:

Чтобы упростить процедуру последующего обновления, сохраним патч с внесенными изменениями:

Теперь вместо редактирования файла, достаточно применить патч:

Теперь можно переходить к конфигурированию.

Если вам это не нужно, переходите сразу к конфигурированию:

Установка

1) Для тех, кто в дальнейшем захочет обновить версию, предыдущую можно удалить (конфигурационные файлы при этом сохраняются), если этого не сделать, то в случае, если в новой версии состав установочных файлов изменится, в /usr/local могут остаться старые файлы, при первой установке — переходим сразу к пункту 2.

Для удаления заходим в папку с предыдущей установкой и выполняем команду: 2) Запускаем установку (в комментариях предложили более правильный путь, чем make install):

Ключ -D указывает, что должен быть создан Debian-пакет

3)Если мы производим первоначальную установку, нужно создать init-скрипт: , если мы обновляем версию, больше ничего делать не нужно, при первоначальной установке у нас откроется пустой файл, в который нужно внести следующий код:

, сохранить комбинацией клавиш Ctrl+O и выйти из редактора — Ctrl+X.

4) После этого даем права на запуск скрипта:5) И активируем запуск init-скрипта: 6) Так как по умолчанию служба запускается под пользователем minidlna, нам нужно создать соответствующую учетную запись:

7) Правим файл конфигурации сервера: В нем нам нужно следующее содержимое (здесь подправлен интервал, с которым сервер себя анонсирует, так как не все телевизоры опрашивают сервер, также вам надо прописать путь к папке с медиа, к примеру так: «media_dir=V,/mnt/sdb6/Video/Alex/» в соответствующем разделе файла):

Обычно после этого не требуется дополнительных настроек, но если есть проблемы с доступом к медиа (или хотите перестраховаться), можно настроить права доступа:

Поскольку служба работает под пользователем с ограниченными правами, публикуемые папки и файлы должны быть доступны на чтение для всех пользователей, следовательно, иметь разрешения 644: «rw- r— r—», для файлов и 755: «rwx r-x r-x», для папок.

Проверяем доступность для каждой папки, заданной в minidlna.conf, командой:Если папка недоступна, задаем права доступа:Вышестоящие папки также должны быть доступны на чтение всем пользователям. Проверяем доступность на чтение каждой папки, указанной в пути. Для вышестоящих папок используем chmod без ключа -R, если не требуется сброс разрешений для всех дочерних файлов и папок.
В качестве альтернативы смене разрешений, можно запустить MiniDLNA от имени пользователя или группы-владельца файлов. Для этого необходимо задать параметры USER и GROUP в /etc/default/minidlna, и сменить владельца папки /var/lib/minidlna командой:

Запуск сервера

Проверяем, работает ли служба, также смотрим параметры запуска:

Проверяем, слушается ли порт:

В случае успешного старта, лог должен быть примерно следующим:

Если видим: «WARNING: Inotify max_user_watches [8192] is low.», необходимо увеличить число дескрипторов слежения inotify до 100 000. Для этого в файл /etc/sysctl.conf добавим строки:

Или копипастом команды:

Изменение параметра вступит в силу после перезагрузки системы.
Открываем в браузере адрес.сервера:8200, видим количество файлов в библиотеке, начиная с версии 1.1.2, также отображается список подключенных клиентов.

Настройка DLNA/UPnP-AV сервера завершена.

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

Служба при этом будет перезапущена, подключенные клиенты будут отключены.

Для сканирования медиа-библиотеки при каждом старте системы можно задать ключ запуска: «-R» в параметре DAEMON_OPTS в файле /etc/default/minidlna. Сканирование большой медиа-библиотеки существенно нагружает диск, что может замедлить загрузку системы.

Полное формирование каталога может занять несколько минут. Сканирование папок выполняется в порядке их объявления в конфиге. Файлы из небольших папок, объявленных в конфиге выше, появятся в каталоге в самом начале процесса сканирования. Крупные папки с редко воспроизводимым контентом имеет смысл размещать в конфиге последними.

Все это опробовано на своей системе, пользуйтесь на здоровье. Надеюсь, количество пользователей Linux будет постоянно увеличиваться.

Источник

Оцените статью