Mediatomb

Материал из ALT Linux Wiki

Введение

Mediatomb (DLNA-сервер, протокол upnp) — система организации и хранения медийных форматов, медиатека; поддерживает просмотр видео, музыки и изображений. Клиентами сервера Mediatomb выступают DLNA-клиенты: проигрыватели, встроенные практически во все операционные системы, например, кроссплатформенный VLC, в ОС Windows — Windows Media, а также современные телевизоры с подключением к сети. С помощью Mediatomb можно организовать удобный сервис для обучения и просмотра различного рода видеоматериалов на предприятиях, в учебных и медицинских учреждениях с доставкой их непосредственно в медиапроигрыватели рабочих станций пользователей, без привлечения дополнительных средств для установки, обучения и работе пользователей с медио проигрывателями. В домашних условиях Mediatomb интересен для организации медийного сервера с раздачей медийного материала на домашние устройства: планшет, смартфон, ПК, телевизор. Таким образом, сервис DLNA Mediatomb может быть включён в портфель малого/домашнего офиса. Mediatomb обеспечивает работу двух режимах: без включения транскодера и с включеным транскодером "тяжёлый" режим.

Режим транскодера, преобразует видеоформат в формат медиапроигрывателя пользователя "на лету".
Основной материал взят отсюда: [1]]

Остановимся на особенностях установки, настройки и эксплуатации сервиса Mediatomb применительно к ALT Linux.

Подготовка:

ОС:

ALT Linux Centaurus (рекомендуется x64) с последними обновлениями.

Оборудование:

ОЗУ от 4 Гб и выше (зависит от числа пользователей)
Диск — выделенный массив RAID1 (не обязательно)

Программы (не обязательно):

Установить Apache2 [2]] [3] или nginx.
Установить MySQL [4]]

Установка

# apt-get install mediatomb

Основные файлы настройки mediatomb:

/var/lib/mediatomb/data/config.xml
/etc/sysconfig/mediatomb

Создать каталог для медиафайлов, установив на него допуски:

# install -m 2755 -o _mediatomb -g _mediatomb -d /home/media

Внести изменения в конфигурацию /var/lib/mediatomb/data/config.xml (приведены блоки, которые правились):

...
    <ui enabled="yes" show-tooltips="yes">                        // для подключения по HTTP
      <accounts enabled="yes" session-timeout="30">
        <account user="mediatomb" password="mediatomb"/>          // HTTP Пользователь и пароль 
      </accounts>
    </ui>
    <name>Наше Media</name>                                       // Название медиабиблиотеки, отображаемое у клиентов
    <udn>uuid:65999079-6aa9-429a-bcf6-419be2510e3d</udn>
    <home>/home/media/</home>                                     // Каталог хранения файлов
    <webroot>/usr/share/mediatomb/web</webroot>
    <storage>
      <sqlite3 enabled="no">                                      // БД по умолчанию
        <database-file>mediatomb.db</database-file>
      </sqlite3>
      <mysql enabled="yes">                                       // БД сервера
        <host>localhost</host>
        <username>mediatomb</username>
        <password>mediatomb</password>
        <database>mediatomb</database>
      </mysql>
    </storage>
...
  <import hidden-files="yes">                                      // Поддержка кодировки.
    <filesystem-charset>UTF-8</filesystem-charset>
    <metadata-charset>UTF-8</metadata-charset>
    <playlist-charset>UTF-8</playlist-charset>
    <scripting script-charset="UTF-8">
...
Пояснения по БД: по умолчанию при установке mediatomb создаётся база данных sqlite3, но при желании можно перейти на MySQL, что и сделано в приведёном примере.

В файл сетевых настроек добавить сетевой интерфейс (замените eth0 на свой):

# sed -i 's/^MT_INTERFACE=.*$/MT_INTERFACE="eth0"/' /etc/sysconfig/mediatomb

Запустить сервис Mediatomb:

# service mediatomb start
# chkconfig mediatomb on

Управление

Управление медиатекой сводится к простым дествиям: наполнению каталога контентом, добавлению каталога в список "видимых" для установленной БД и настройки прохождения сценария индексации при появлении новых файлов в хранилище. Медиатека не требует постоянного вмешательства в её настройки, достаточно однократно выставить нужные значения. Для примера выполним вход на наш DLNA сервер по ssh и выполним:

# mediatomb  
MediaTomb UPnP Server version 0.12.1 - http://mediatomb.cc/
Copyright 2005-2010 Gena Batsyan, Sergey Bostandzhyan, Leonhard Wimmer.
MediaTomb is free software, covered by the GNU General Public License version 2
2015-11-17 15:26:27 INFO: Loading configuration from: /root/.mediatomb/config.xml
2015-11-17 15:26:27 INFO: Checking configuration...
2015-11-17 15:26:27 INFO: Setting filesystem import charset to UTF-8
2015-11-17 15:26:27 INFO: Setting metadata import charset to UTF-8
2015-11-17 15:26:27 INFO: Setting playlist charset to UTF-8
2015-11-17 15:26:27 WARNING: You enabled the YouTube feature, which allows you
                             to watch YouTube videos on your UPnP device!
                             Please check http://www.youtube.com/t/terms
                             By using this feature you may be violating YouTube
                             service terms and conditions!
2015-11-17 15:26:27 INFO: Configuration check succeeded.
2015-11-17 15:26:27 INFO: Initialized port: 50500
2015-11-17 15:26:27 INFO: Server bound to: 192.168.122.1
2015-11-17 15:26:28 INFO: MediaTomb Web UI can be reached by following this link:
2015-11-17 15:26:28 INFO: http://192.168.122.1:50500/ 

В браузере зарегистрироваться по выведенному адресу с логином и паролем, указанными в /var/lib/mediatomb/data/config.xml. Откроется менеджер управления медиаконтентом с двумя панелями:

левый имеет кнопки
[Database]
[Filesyste]
правый имеет кнопки
[X крестик]
[X крестик в круге]

Краткий порядок таков: тыкаем кнопку [Filesystem]-левый фрейм, находим /home/media, тыкаем кнопу [X]-правый фрейм, добавляем все файлы в каталог /home/media для индексирования, тыкаем кнопку [X в круге]-правый фрейм, выбираем режим сканирования, здесь нам предлагается выбор способа сканирования папки медиатеки, мы выберем самый простой и надёжный сценарий индексации:

[Timed],[Full],[Recursive], время исправляем на 600 сек, нажимаем [Set].

Нажимаем [Database](левый фрейм) и проверяем результат сканирования папки /home/media: всё в порядке, все файлы проиндексированы и видны. Следует отметить, что у каждого файла стоит кнопка [X крестик]-для удаления файла из медиатеки и кнопка [перо/блокнот]- для редактирования файла в медиатеке. Предупреждение: не следует тиражировать несколько папок с файлами медиатеки -- возможно дублирование названий в клиентской части.

Клиенты Mediatomb DLNA-сервера

В качестве клиентов DLNA-сервера рассмотрим популярные проигрыватели VLC и Windows Media поддерживающих upnp протокол. Надо отметить, что в VLC проигрывателе, plugin-upnp по умолчанию не установлен, выполним установку плагина:

# apt-get update && apt-get install vlc vlc-plugin-upnp

В качестве программ для записи экрана можно использовать входящий в KDE recordMyDesktop[5].

Ресурсы

Основной сайт Mediatomb [6]


mig