Настройка домашнего медиасервера на базе PS3 Media Server и Ubuntu Server

  • Печать

Предисловие.

Стал недавно счастливым обладателем телевизора Philips 42PFL-6877. В телек интегрирован почти всеядный плеер, но тыкаться каждый раз с флешкой для просмотра фильмов совсем неудобно вот и решил я поставить дома медиасервер.

Ссылка на якобы подходящий с официального сайта присутствует (в разделе «ПО и драйверы»), но во первых он под Windows, во вторых он с разбегу не завёлся. После основательного гугления нашёл два более-менее вменяемых по описанию медиасервера для Linux: Minidlna и PS3 Media Server.

Minidlna вроде бы особых настроек не требует, надо указать папку с контентом в конфиге и должно работать. Работает, но почему то телевизор не может взять видео, хотя сами файлы и видно. Особо углубляться не стал и запустил PS3 Media Server, вот с ним кино пошло.

 Настройка PS3 MS.

Для начала уточню — на оригинальность настроек и файлов не претендую, всё нашёл в интернете на разный сайтах и свёл в одну статью.

Телевизор и сервер соединены по витой паре через Wi-Fi роутер. Все эксперименты с настройками проводились на последних (к моменту установки) релизах Ubuntu Server 12.04.1 и PS3 Media Server 1.70.0 (далее по тексту PS3 MS ).

На установке самого сервера останавливаться не буду — в нете полно мануалов, после установки командуем sudo apt-get update и потом sudo apt-get upgrade и sudo aptitude full-upgrade

Нет кириллицы в консоли, исправляем:

sudo echo 'FRAMEBUFFER=Y' >> /etc/initramfs-tools/initramfs.conf
sudo update-initramfs -u
sudo reboot

После перезагрузки настраиваем консоль:

sudo dpkg-reconfigure console-setup

выбираем кодировку в консоли UTF-8, используемую таблицу символов кириллица, консольный шрифт TerminusBold, размер шрифта 16.

Сам PS3 MS есть в репозитории Ubuntu, но я решил установить с оф. сайта программы.

Скачиваем и распаковываем:

sudo cd /root
sudo wget https://ps3mediaserver.googlecode.com/files/pms-generic-linux-unix-1.70.0.tgz
sudo tar -xzvf pms-generic-linux-unix-1.70.0.tgz

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

Для полноценной работы надо установить несколько пакетов:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:shiki/mediainfo
sudo apt-get update
sudo apt-get install openjdk-6-jre mplayer ffmpeg mencoder mediainfo libzen0 vlc mc

запускаем медиасервер:

sudo cd /root/pms-1.70.0
sudo ./PMS.sh

и прерываем с помощью Ctrl+c, дописываем в созданный сервером конфигурационный файл путь до папки с контентом:

sudo echo 'folders = /torrent' >> /root/.config/PMS/PMS.conf

запускаем медиасервер ещё раз:

sudo ./PMS.sh

Включаем телевизор, жмём на пульте кнопочку «source», выбираем сеть, и видим наш медиасервер. Вроде бы всё хорошо, но не видно файлов с русскими названиями, нужно добавить 2 строчки

export LANG=ru_RU.utf-8
export LC_CTYPE=ru_RU.utf-8

в начало файла /root/pms-1.70.0/PMS.sh (после #! /bin/sh), выполняем команды:

sed -i '1a export LANG=ru_RU.utf-8'  /root/pms-1.70.0/PMS.sh
sed -i '1a export LC_CTYPE=ru_RU.utf-8'  /root/pms-1.70.0/PMS.sh

и перезапускаем медиасервер.

В принципе теперь уже можно смотреть кино с медиасервера, только он по умолчанию транскодирует на лету файлы mkv и при слабом железе видео тормозит, а телевизор может и сам воспроизвести матрёшку. Отключаем транскодирование для avi и mkv:

sudo echo 'notranscode = avi,mkv' >> /root/.config/PMS/PMS.conf

перезапускаем медиасервер.

Организовываем работу PS3 MS как сервиса. Для этого из прилагаемого к статье архива копируем файл PS3MediaServer в папку /etc/init.d и выполняем команду:

sudo update-rc.d PS3MediaServer defaults 90
sudo reboot

Теперь медиасервер запускается автоматом при старте системы и при необходимости его можно перезапустить командами:

sudo service PS3MediaServer stop
sudo service PS3MediaServer start

Если сервер не запустился - создайте папку /var/log/pms

С настройками PS3 MS закончили.

Дополнение.

Для полного счастья установим torrent-клиент. Я использую Transmission - P2P клиент с веб-интерфейсом.
Устанавливаем:

sudo apt-get install transmission-daemon

Останавливаем сервис, иначе все изменения затрутся после завершения процесса:

sudo service transmission-daemon stop

Настраиваем:

sudo mc

открываем файл /etc/transmission-daemon/settings.json

и правим следующие настройки:

"download-dir": "/torrent"
"rpc-password": "admin"
"rpc-username": "password"
"rpc-whitelist-enabled": false

здесь задаём путь для загрузки, имя пользователя и пароль для веб-интерфейса, отключаем «белый» список доступа к интерфейсу — разрешаем для всех. Пароль указываем в открытом виде, после перезапуска он будет зашифрован.
Запускаем сервис:

sudo service transmission-daemon start

Заходим в веб-интерфейс по адресу, http://xxx.xxx.xxx.xxx:9091 (xxx.xxx.xxx.xxx - IP Вашего сервера)

Ещё телевизор не понимает звуковую дорожку в DTS и есть 3 варианта устранения этого недостатка: скачивать кино только с AC3, включить транскодирование в медиасервере или перекодировать DTS в AC3. Т.к. У меня транскодирование на лету тормозит, мой вариант №3.

Для этого добавляем пакеты: sudo apt-get install libdca-utils mkvtoolnix aften и с помощью скрипта mkvdts2ac3.sh, из прилагаемого к статье архива, конвертируем:

sudo ./mkvdts2ac3.sh --wd /tmp -n -f -i -d /torrent/filename.mkv

Всё, всем удачи :-))



Обсудить на форуме (комментариев 1).