понедельник, 20 января 2014 г.

Домашний мини-сервер на ОС Xubuntu.

Сервис DLNA Serviio. Часть 3.



    У Serviio есть функции, доступные только в Pro версии. Рассмотрим их и попробуем найти для этих возможностей альтернативу.
       
    MediaBrowser - приложение на основе web-плеера, которое использует API (интерфейс приложения) и даёт Вам возможность просмотреть и воспроизвести содержание медиатеки Serviio в web-браузере. 

    MediaBrowser доступен в комплекте с сервером Serviio. Вам нужно открыть веб-браузер и набрать URL-адрес:   http://<serviio_pc_ip_address>:23424/mediabrowser
    Непосредственно на ПК с Serviio, можно использовать:                     http://localhost:23424/mediabrowser
    Примечание: Прежде чем получить доступ к содержанию медиатеки через MediaBrowser, Вы должны задать пароль пользователя на вкладке Удалённый доступ в консоли Serviio.





    Однако до воспроизведения дело не доходит:
    200, Stream not found, NetStream.Play.StreamNotFound, clip: ...

    Как альтернативу используем VLC media player 2.0 и выше.
    Запускаем  VLC media player и нажимаем Ctrl+L (или Вид > Плейлист), переходим в Локальная Сеть > Протокол UPnP (Universal Plug and Play).
    Вы увидите, что Serviio появляется почти сразу (при большой медиатеке нужно ждать около минуты для получения информации от serviio), затем вы сможете просматривать содержание медиатеки.



    Двойное нажатие на файл, который вы хотите проиграть, и нет проблем.


    Доступ к содержанию медиатеки Serviio по Интернету, используя MediaBrowser.

    Большинство Интернет-поставщиков назначают своим клиентам IP-адрес, который часто изменяется - так называемый динамический IP.
    Для доступа к содержанию медиатеки Serviio по Интернету рекомендуется:
  - или Получите у вашего Интернет-поставщика Статический IP-адрес,
  - или Получите доменное имя для своего динамического IP-адреса («Динамический DNS»), используя web-сервис, как например DNSdynamic (http://dnsdynamic.org/). Вам также потребуется скачать и установить один из их свободных клиентов, для поддержки обновлений вашего IP-адреса.

    Это гарантирует, что вы всегда сможете подключиться к домашней сети удалённо.
    Для этого, откройте консоль Serviio и перейдите на вкладку Удаленный доступ.
    Введите Статический IP-адрес или полный динамический DNS-адрес, на который вы подписаны (например myserviio.dnsdynamic.org), в поле «Внешний адрес». 
    Нажмите кнопку «Проверить статус соединения» - если проверка будет успешной, то теперь для доступа к содержанию медиатеки Serviio по Интернету, вводите в web-браузере, например:
    http://myserviio.dnsdynamic.org:23424/mediabrowser

   
    ServiiGo - стороннее Android-приложение для воспроизведения потокового содержания медиатеки Serviio.   

    Как альтернативу используем VLC media player for Android (beta).

    Или специальное универсальное приложение, то есть подходящее для всех устройств Андроид. Приложений много, например Skifta и MediaHouse.

    Skifta. Скачать программу можно, введя название в приложении Google Play. После её установки надо сделать несколько простых настроек:  
 - Выбрать источник - например мини-сервер с ОС Xubuntu, с которого будете смотреть видео 
 - Выбрать приёмник, то есть ваш кпк на Android 
 - Выбрать видео, которое доступно для просмотра.       

    MediaHouse. Скачать программу можно из Play Маркета. Настройка DLNA здесь вообще не требуется. 
    Запускаете мини-сервер, и он сразу отобразится в списке доступных подключений (мини-сервер и  смартфон должны быть в одной локальной сети, разумеется).
    Кликаем на мини-сервер, выбираем «Browse» и дальше уже тут папку c файлами, которые нужны.



четверг, 16 января 2014 г.

Домашний мини-сервер на ОС Xubuntu.

Сервис DLNA Serviio. Часть 2.


    Настройка сервиса Serviio.
    Serviio состоит из 2 частей - сервера и консоли. Вся настройка производится из консоли. Запустим консоль на рабочем столе мини-сервера с ОС Xubuntu.
    Чтобы запустить консоль, нужно дать команду на выполнение файла с 

shell-скриптом serviio-console.sh, к которому ведёт путь /opt/serviio/bin/
    Чтобы консоль можно было запускать пользователю user (от его имени входим в ОС Xubuntu), в эмуляторе терминала выполним две команды:

    Право на исполнение(+x) файла serviio-console.sh

          sudo chmod +x /opt/serviio/bin/serviio-console.sh 

    Команда на запуск консоли serviio:

          sudo sh /opt/serviio/bin/serviio-console.sh 
  
    Окно терминала можно закрыть, обратимся к консоли Serviio.
    Если всё будет на английском, то первым делом настроим локализацию: 
    Console settings - выбираем Русский язык - Save


    Организуем Медиатеку.



    Добавляем смонтированные диски.









    Настраиваем вид медиатеки на экране вашего TV.
    

    Если ваши медиа-файлы на смонтированных дисках находятся в беспорядке, то выбирая определённые категории для отображения, вы даёте Serviio команду систематизировать вашу медиатеку.
     Если же вы сами упорядочили медиа-файлы так, как вам удобно, будет целесообразно назначить показ только содержимого. Например, можно так.

 
 

    *) Album Artists
    Исполнители альбома указываются, чтобы попытаться сохранить все песни в альбоме вместе, когда существует более  чем один Исполнитель на альбоме.
    Например, для музыки из кинофильма, где каждый Исполнитель отличается, Вы можете называть исполнителя альбома "Различные Исполнители".
    Применительно к альбому с гостями Исполнителя, где каждая песня - дуэт, и каждый гость мог бы называться, например Johnny Cash & <Гость_1>, Johny Cash & <Гость_2> и т.д., а исполнителя альбома можно назвать просто "johnny cash".  

    Это будет доступно для версии Pro.


    С консолью, собственно, всё.


    Общее представление о том, что увидим на экране TV.





                            



вторник, 14 января 2014 г.

Домашний мини-сервер на ОС Xubuntu.

Сервис DLNA Serviio. Часть 1.


    В ОС Xubuntu можно установить в качестве DLNA-сервера несколько программ, не входящих в официальный  репозиторий.  Например, PS3 Media Server или Serviio.
    Serviio - самый быстроразвивающийся сейчас проект. Регулярно обновляется. Активно обрастает плагинами, профилями и приложениями под мобильные OS.
    Представляет из себя JAVA-приложение, работающее демоном. Поддержка DLNA-протокола - полная. Довольно умело распределяет контент по папкам и категориям. Умеет создавать превьюшки к фильмам. Легко подключаются разные каналы on-line вещания.
    Транскодирует при помощи ffmpeg. База профилей устройств достаточно большая (и продолжает пополнятся) - сервер корректно подбирает параметры кодирования для любого совместимого UPnP (DLNA) устройства в сетиЧто не распознал - можно подобрать профиль или написать свой.
    Serviio доступен в версиях Free и Pro. Версия Pro имеет дополнительные функции:
 - MediaBrowser - плеер для веб-браузера;                                         
 - ServiiGo - Android-приложение для потоковой передачи контента;  
 API для доступа к контенту через интернет;  
 - Контроль доступа к общему контенту. 

     И так, установим последнюю версию Serviio в Xubuntu.
На сайте Serviio найдите ссылку на последний архив для Linux и загрузите его:
     sudo wget http://download.serviio.org/releases/serviio-1.4-linux.tar.gz    (sudo wget ссылка_на_последний_архив_serviio)

  Создайте директорию /opt/serviio и распакуйте туда файл:
     sudo mkdir -p /opt/serviio && tar -C /opt/serviio -xvzf serviio-1.4-linux.tar.gz --strip-components=1 

  Создайте системного пользователя serviio:
     sudo adduser --system --home /opt/serviio serviio 

  Назначьте владельцем папки установки системного пользователя serviio:
     sudo chown serviio:nogroup -R /opt/serviio 

  Создайте другую конкретную папку, которая будет использоваться Serviio, чтобы временно хранить транскодированные файлы (Выберите путь, который вы предпочитаете, но убедитесь, что он указывает на раздел с достаточным количеством 
свободного пространства, так как мультимедийные файлы могут быть огромными). 
Мы создадим папку tmp в корневом каталоге одного из смонтированных дисков с файловой системой ext4
     sudo mkdir /mnt/32eb8b1c-dd26-406b-a5e9-da5ca93f2ac7/.tmp 

  Измените разрешения на доступ к созданной папке tmp:         
     sudo chmod 1777 /mnt/32eb8b1c-dd26-406b-a5e9-da5ca93f2ac7/.tmp 

  Измените сценарий /opt/serviio/bin/serviio.sh, чтобы указать эту папку: добавляем следующий параметр в конце 
   JAVA_OPTS= line:    -Dserviio.defaultTranscodeFolder=/mnt/32eb8b1c-dd26-406b-a5e9-da5ca93f2ac7/.tmp 
  Открываем файл serviio.sh для изменения:
     sudo mousepad /opt/serviio/bin/serviio.sh 

  Было:
  # Setup Serviio specific properties
  JAVA_OPTS="-Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Dderby.system.home=$SERVIIO_HOME/library -Dserviio.home=$SERVIIO_HOME"

  После добавления должно быть так:
  # Setup Serviio specific properties
  JAVA_OPTS="-Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Dderby.system.home=$SERVIIO_HOME/library -Dserviio.home=$SERVIIO_HOME -Dserviio.defaultTranscodeFolder=/mnt/32eb8b1c-dd26-406b-a5e9-da5ca93f2ac7/.tmp" 

  Сохраняем изменения, закрываем mousepad.

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

  Во-первых, установить Java, если он ещё не установлен:
     sudo apt-get install default-jre 

Примечание. В процессе установки появится пара окошек, в которых надо будет нажать на ОК и Да. Используйте для этого Enter и клавиши со стрелками.

  Затем установите дополнительные кодеки и библиотеки для обеспечения полноценной работы Serviio.
  Установите отсутствующие кодеки (включая последние Lame):
     sudo apt-get install ubuntu-restricted-extras 

  Установите ffmpeg (команда одной строкой):
     sudo apt-get install libxine1-ffmpeg gxine mencoder mpeg2dec vorbis-tools id3v2 mpg321 mpg123 libflac++6 ffmpeg totem-mozilla icedax tagtool easytag id3tool lame nautilus-script-audio-convert libmad0 libjpeg-progs flac faac faad sox ffmpeg2theora libmpeg2-4 uudeview flac libmpeg3-1 mpeg3-utils mpegdemux liba52-0.7.4-dev libquicktime2 

  Установите dcraw, если Вы нуждаетесь в поддержке RAW изображений:
     sudo apt-get install dcraw 

  Для автозапуска DLNA-сервера при загрузке ОС, создайте скрипт инициализации:
     sudo mousepad 
  

# Serviio - Media Streaming Server

#
# Serviio is a free media server. It allows you to stream your media files
# (music, video or images) to renderer devices (e.g. a TV set, Bluray
# player, games console or mobile phone) on your connected home network.

description "Serviio - Media Streaming Server"


env USER=serviio

env LANG=ru_RU.UTF-8

start on started networking

start on mounted DEVICE=[/UL]*
stop on shutdown

respawn


exec start-stop-daemon --start --make-pidfile --pidfile /var/run/serviio.pid -c $USER --exec /opt/serviio/bin/serviio.sh



  ( параметр LANG является необязательным и может использоваться для определения конкретного языка )

  Сохраните файл как /etc/init/serviio.conf 


  Примечание. Теперь, при необходимости, вы можете остановить сервер DLNA (также запустить снова) с помощью служебных команд:     
     sudo service serviio stop
     sudo service serviio start


  Так как всё прошло нормально (конечно же! - serviio start/running, process 12345), теперь вы сможете увидеть Serviio на любом UPnP/DLNA устройстве, подключённом к той же сети. 
  Убедитесь, что вы открываете TCP 8895 и UDP 1900 порты в брандмауэре. Брандмауэр (входит в состав некоторых антивирусных ПО) может быть одной из причин, по которым ваше устройство не может подключиться к Serviio.


  Примечание. Если всё же подключения нет, то ищите подозрительные записи в /opt/serviio/log/serviio.log.
  Если вам нужен более подробный журнал, измените категории org.serviio в /opt/serviio/config/log4j.xml:

<category name="org.serviio">
   <priority value="DEBUG"/>
</category>

  Перезапустите Serviio. Теперь вы должны иметь некоторые подсказки, чтобы помочь вам решить эту проблему.


  Продолжение следует.



пятница, 10 января 2014 г.

Домашний мини-сервер на ОС Xubuntu.

Сервис UPnP (DLNA).


    Выбираем и устанавливаем приложение, предоставляющее медиа-ресурсы (изображения, музыку, видео) с вашего домашнего мини-сервера совместимым сетевым устройствам, а также отображающее эти медиа-ресурсы в режиме реального времени.
    Совместимым UPnP (DLNA) устройствам в сети могут быть, например, smart-телевизоры, игровые приставки, медиа-плееры, iPad/iPhone/iPod, мобильные и PDA устройства.

    Примечание. В зависимости от производителя и модели изделия, возможна не полная поддержка все функций сервера UPnP.

    В центре приложений Xubuntu можно найти несколько программ, которые можно установить в качестве DLNA-сервера. Это - MiniDLNA; uShare; MediaTom; Plex Media Server; XBMC Media Center.

    Plex Media Server уже рассматривался, MediaTom не имеет русской локализации, MiniDLNA и uShare в сущности - одно и то-же и совсем простое.
    Установим XBMC Media Center. (В поисковую строку центра приложений Xubuntu:  xbmc, далее сама установка, перезагружаем мини-сервер.)

    Настройка XBMC Media Center относительно простая.
    Запускаем XBMC.
    Проходим: SYSTEM > Settings > Appearance > International > Language > Russian

    Добавление источника - Видео
    Проходим: ВИДЕО > Файлы > Добавить видео... > Обзор > Выберите новый ресурс. Затем следует, например:











    Аналогично добавляем источники Музыка и Фото.

    Включение служб
    СИСТЕМА > Настройки > Службы > отмечаем все службы в пунктах: UPnP; Вэб-сервер; Удалённое управление. Кроме того, в пункте Вэб-сервер задаём имя и пароль для вэб-интерфейса управления XBMC.






    Остальные настройки - по необходимости.

    XBMC Media Center допускает управление через встроенный вэб-интерфейс (не имеет русской локализации).
    Для этого на любом компьютере из локальной сети открываем браузер и в адресной строке вводим: IP-адрес, который назначен мини-серверу + порт, например,  http://192.168.1.55:8080 
    Вводим Имя пользователя и Пароль в окне Авторизации и попадаем в Web GUI XBMC. 



    Однако этот вэб-интерфейс (установленный по умолчанию) сразу отказался хоть как то выполнять свои функции. Но в XBMC можно выбрать альтернативный Web GUI, это и сделаем:
    СИСТЕМА > Настройки > Службы > Вэб-сервер > Вэб-интерфейс > AWXi
    Можно сменить порт 8080, который обычно используется для работы на веб-сервере в качестве не root пользователя (8090 - используется как альтернатива порту 8080).
    И так, набираем http://192.168.1.55:8090 вводим Имя пользователя и Пароль в окне Авторизации и попадаем в AWXi Web GUI XBMC.


    
    На этот раз всё работает, но русской локализации в настройках Web GUI нет.




    Для наглядности откроем свои видео-файлы:









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



понедельник, 6 января 2014 г.

Домашний мини-сервер на ОС Xubuntu.

Настройка BitTorrent-клиента.


    Transmission - BitTorrent-клиент с минимальными системными требованиями. Он прост и надёжен, поддерживает удалённое управление из командной строки, web-интерфейса, или через отдельную программу. 
    В ОС Xubuntu 13.10 по умолчанию установлен клиент Transmission, версии 2.82.

    Настройка приложения очень проста. Открываем клиент Transmission.


    Далее, собственно, без комментариев.










    Добавим клиент в автозагрузку, с условием запуска свёрнутым в системный трей.

    Правой кнопкой мыши на ярлыке Transmission > Свойства > Запуск
    Интересуемся тем, что записано в поле Команда:  



    Идём в Диспетчер настроек > Сеансы и запуск > Автозапуск приложений > на кнопку Добавить    
    В окне Добавление приложения вводим имя и команду с аргументом  -m 



    Жмём на ОК



    Управлять BitTorrent-клиентом возможно через встроенный в Transmission вэб-интерфейс (не имеет русской локализации).
    Для этого на любом компьютере из локальной сети открываем браузер и в адресной строке вводим: IP-адрес, который назначен мини-серверу + порт для прослушивания запросов RPC, например,  http://192.168.1.55:9091 
    Вводим Имя пользователя и Пароль в окне Авторизации и попадаем в Web GUI Transmission.




    Использование Transmission Remote GUI 5 на сетевых компьютерах.
     
    Transmission Remote GUI - многофункциональный кросс-платформенный интерфейс для удалённого управления клиентом Transmission через протокол RPC. Он быстрее и функциональней, чем встроенный в Transmission вэб-интерфейс.  
    Особенности:    
-  Собственные приложения для Windows, Linux и MacOS X    
-  Интерфейс подобный uTorrent    
-  Выбор файлов для загрузки    
-  Выбор приоритета файлов    
-  Детальное представление о связанных пирах    
-  Полная информация о каждом торренте    
-  Опции для каждого торрента

    Загружаем подходящий вариант приложения (мы устанавливаем на Windows-машину):  https://code.google.com/p/transmisson-remote-gui/ 
    Установка производится как обычно для Windows. 
    В процессе можно отметить чек-боксы:   
- Связать Transmission Remote GUI с расширениями файлов .torrent     
- Управлять magnet-ссылками в Transmission Remote GUI



    Задаём параметры соединения:  
Узел - IP-адрес, который назначен мини-серверу.
Порт для прослушивания запросов RPC, по умолчанию : 9091     
Пользователь - имя пользователя, заданное в настройках Transmission.    
Пароль, заданный в настройках Transmission.



    Далее последуют предложения (нужно ли это вам - решайте сами):  


  

     Потом откроется интерфейс Transmission Remote GUI 5:



    Окно Добавление нового торрента говорит о работоспособности Transmission Remote GUI.



      
    Так как приложение Transmission Remote GUI - интерфейс  для удалённого 
управления клиентом Transmission, то в нём достаточно добавить торрент(ы) и дождаться начала их загрузки. Затем приложение Transmission Remote GUI можно закрывать - клиент Transmission на мини-сервере самостоятельно выполнит все загрузки.


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

    Как выполнить port forwarding (перенаправление портов).
    На примере маршрутизатора Asus WL-520GU.

    Выполним перенаправление порта "вручную", так как мини-сервер с ОС Xubuntu уже имеет статический (фиксированный) IP-адрес - назначенный IP-адрес привязан к MAC-адресу сетевого адаптера мини-сервера.


    В вэб-интерфейсе управления маршрутизатором выбираем:
    WAN > Виртуальный сервер
    Включить виртуальный сервер?  Yes
    Заполняем нужное, жмём Добавить, Применить.




    Примечание. На сайте разработчиков Transmission указано, что порт входящих подключений по умолчанию - 51413, так же рекомендуется диапазон портов 49152 - 65535.
    Примечание. Значение BOTH (оба) задаёт одни и те же параметры для протоколов TCP и UDP.