ФОРУМ КУПИТЬ

Последние статьи

ВСЕ СТАТЬИ

Apple TV + Plex Media Server

01/05/2014 16:59:48

Умный Дом часто совершенно справедливо ассоциируют не только с умным освещением или с умным отоплением, но и с такими вещами, как мультирум и распределением медиаконтента. Однако современные технологии шагнули значительно дальше простого проигрывания музыки в разных частях дома. Активное внедрение в нашу жизнь мобильных компьютеров, смартфонов, беспроводных сетей и Интернет-сервисов позволили реализовать по-настоящему революционные идеи. Постепенно информация и медиа-контент (музыка, видео, фотографии) перестают принадлежать какому-то конкретному устройству или носителю, перебираясь в облачные хранилища или сетевые накопители. А устройства воспроизведения теряют свою узкую монополию, так как любое современное устройство может воспроизводить контент, обрабатывать его, делиться им с другими не менее умными устройствами. Но все это в теории, а что мы можем иметь на практике?

Компания Apple предложила очень интересную технологию, которая потенциально неплохо вписывается в идеологию Умного Дома. Эта технология AirPlay. Суть ее заключается в том, что пользователи с помощью iPad/iPhone могут отправлять по Wi-Fi различный контент на телевизор или в аудио-систему. Легким движением руки можно запустить проигрывание через AirPlay не только той музыки, которая записана в мобильное устройство, но и которая доступна через Интернет-сервисы и сайты. Точно также с фотографиями и видео. Все то, что может воспроизвести устройство через свои динамики и через свой экран, оно может отправить посредством AirPlay на большой плазменный телевизор и на качественную акустику с Hi-Fi усилителем. Но и это еще не все. Посредством этой технологии можно целиком дублировать экран мобильного устройства на экране HD-телевизора или использовать экран ТВ как второй (что поддерживается в некоторых играх). Разумеется, с помощью AirPlay можно легко реализовать и мультирум.

Распаковываем Apple TV

В красочных деталях вы можете прочитать обо всех прелестях Airplay на сайте компании из Купертино. Мне же было интересно самостоятельно протестировать эту технологию и попытаться интегрировать ее в общую систему моего Умного Дома. Что для этого нужно? Не очень много. Для передачи контента на телевизор нужна приставка Apple TV (стоимость в текущий момент в районе 4500 руб), а для построения мультирума Airport Express (стоимость около 4000 руб). Я решил приобрести Apple TV последнего на момент написания статьи, 3-го поколения.

Приставка Apple TV

Как и любая другая продукция от Apple, приставка Apple TV радует приятным и стильным дизайном, качественными материалами. Вещь приятно взять в руки.
Настройка Apple TV не представляет какой-либо сложности. Справится любой, поэтому не стану подробно останавливаться на этом моменте.

Все заявленные возможности Airplay работают из коробки. Теперь жена может с планшета запускать музыку из своей подборки в Одноклассниках через Apple TV на больших колонках (приставка подключена не только к телевизору через HDMI, но и к аудио-ресиверу через оптический аудиопорт - таким образом, не требуется включать телевизор для прослушивания музыки). Я также могу показавать друзьям фото и видео с планшета на большом экране, а дети играть в игры (хотя изображение на телевизоре чуточку, но запаздывает). Кроме всего прочего, Apple TV может проигрывать видео с YouTube, Vimeo, фотографии c Flicker. Естественно, приставка может показывать контент из iCloud. Приятно порадовало, что в отличие от аналогичной функциональности в моем смарт-телевизоре от Panasonic, Apple TV при навигации и управлении не тормозит. Все работает плавно и быстро. Понравилось приложение Radio и раздел Ambient, где собрана подборка Интернет-радиостанций для отдыха и релаксации. Ну, знаете, звуки морского прибоя, пение птиц и так далее. Кстати, при прослушивании радио приставка может переключаться в режим слайд-шоу, показывая заранее выбранные фотографии (природа, животные) или из того же iCloud.

Важной особенностью Apple TV является наличие специального приложения для устройств Apple - "Пульт ДУ". То есть планшет или телефон могут не просто дублировать функции родного пульта, но и обеспечить полную интерактивность. Не обязательно в этом смысле, например, включать телевизор, чтобы послушать радио. Включить приставку, выбрать радиостанцию можно и из приложения. ОЧЕНЬ удобно.

Ложка дегтя

Все бы ничего, но есть у продуктов Apple и свои фишки. В свое время Стив Джобс говорил - это будет так и никак иначе. Не будет в мобильных продуктах от Apple поддержки Adobe Flash и точка. И ее в официальных приложениях не было и нет. Не будет в планшетах iPad USB порта. И его не было и нет. Не будет Apple TV проигрывать контент с NAS, DLNA, файловых серверов (SMB, FTP). И не проигрывал и не проигрывает. Постойте, как не проигрывает? А вот так! Apple TV не умеет (отнюдь не по техническим причинам) напрямую обращаться к сервисам, размещенным в локальной сети дома. Apple остается верен себе, развиваясь в своей эко-системе. Источником контента может выступать либо устройство от Apple, либо компьютер, с запущенным iTunes (не дай бог ночью приснится...). Более того, родным форматом видео для Apple TV является MP4. MKV, например, он играть не будет. Конечно, можно проигрывать "нестандартные" форматы с локального файлового сервера через какое-нибудь платное приложение, установленное на iPad, которое налету будет конвертировать видео, но это, согласитесь, совершенно не соответствует нашему православному духу, воспитанному на операционной системе Linux, и абсолютно не гуманно по отношению к моему iPad 2, который с трудом играет 720p, не говоря уже о Full HD...

Манна небесная

Да, такая замечательная и удобная технология AirPlay, такая красивая реализация и такой обидный во всех смыслах слова недостаток. И если для Apple TV второй версии есть хак, позволяющий загрузить в приставку альтернативное ПО, то для третьей генерации таковой отсутствует. Конечно же я знал об этом. Но знал также и о другом... Apple TV можно подружить с домашней медиа-системой без использования iTunes (не дай бог, не дай бог ночью приснится...), но с помощью такой замечательной штуковины как Plex Media Server!


Мульфильмы на моем сервере

Plex Media Server - это мощный медиа-сервер, который с помощью Интернет-технологий позволяет обеспечить удобный доступ к контенту с любого устройство в локальной или глобальной сети. Мобильный телефон, телевизор, планшет, компьютер, ТВ-приставки  - любое устройство будет иметь доступ к фотографиям, музыке, фильмам, размещенным на сервере. Поддерживается широкий спектр операционных систем. Контент доступен не только через специальные приложения, но и через любой Web-браузер. Эта возможность чрезвычайно интересная и важная, так как позволяет интегрировать Plex Media Server в структуру домашнего Web-сайта. Серверное ПО доступно как для NAS (Synology, Netgear, unRAID и т.д.), так и для компьютера (Linux, Windows, Mac, FreeBSD). Принципиальной особенностью медиа-серверов такого типа заключается в том, что вся индексация контента и хранение кешей происходит на сервере, что значительно ускоряет доступ к файлам. То есть, к примеру, размещенные на Samba-сервере фотографии можно посмотреть на iPad'е и без Plex - с помощью приложения типа File Explorer. Но желание это делать резко пропадает, когда программа начинает отображать превьюшки и сами фотографии, сделанные 12-15 мегапиксельными аппаратами. На отображение одной фотографии уходит 10-15 секунд, а вся скромная память устройства начинает забиваться кешами превьюшек. В случае с Plex Media Server всеми этими сервисными штуками занимается серверное программное обеспечение, отдавая контент, так сказать, в облегченном виде, при необходимости делая ресайз или перекодировку на лету. В этом смысле имеет значение мощность компьютера, на котором установлен Media Server. И мой 4-х ядерный Core 2 Quad (Q6600), установленный на сервере и скучавший до сего момента 99,9% времени наконец-то нашел чем заняться. Все, что необходимо пользователю - добавить в библиотеку Plex Media Server'а папки, где хранится медиа-контент. Сервер сам просканирует файлы и автоматически отобразит постеры и сопутствующую информацию. Правда, иногда с постерами выходят промашки, но это вопрос для другой статьи.

Но есть небольшая сложность. Дело в том, что я для домашних серверов использую Debian Linux. А Plex Media Server официально доступен только для таких дистрибутивов Linux как: Ubuntu, Fedora, CentOS. К счастью есть решение от шведского парня Christian Svedin
https://forums.plex.tv/index.php/topic/51427-plex-media-server-for-debian/

sudo apt-get install curl
echo "deb http://shell.ninthgate.se/packages/debian squeeze main" | sudo tee -a /etc/apt/sources.list.d/plexmediaserver.list
sudo curl http://shell.ninthgate.se/packages/shell-ninthgate-se-keyring.key | sudo apt-key add -
sudo apt-get update
sudo apt-get install plexmediaserver

Все. Plex Media Server установлен. Запускаем сервер

/etc/init.d/plexmediaserver start

По умолчанию Plex Media Server настроен на порт 32400 и обратиться к нему из браузера можно по URL

http://media:32400/web/index.html

Где "media" - имя или IP-адрес компьютера, на котором установлен Plex.

Ключи от ларчика

Но одной только установки Plex Media Server'а недостаточно, чтобы Apple TV получил доступ к нашему медиа-контенту, хранящемуся на Linux-сервере. Нужна маленькая хитрость. И эта хитрость называется PlexConnect. Вкратце, работает это так. На Apple TV в качестве DNS-сервера мы настраиваем адрес компьютера, на котором запущен PlexConnect. Скрипт перехватывает обращения приставки Apple TV к DNS в приложении "Трейлеры", а вместо них подсовывает контент с Plex Media Server'а. Гениально и просто. В 2013 году Apple попыталась помешать реализации такого фокуса, направив трейлеры через защищенное соединение, но довольно быстро и эту проблему удалось решить. Настройка PlexConnect предельно проста.

https://github.com/iBaa/PlexConnect

Установка и настройка по шагам
1. Скачиваем PlexConnect посредством утилиты git
git clone https://github.com/iBaa/PlexConnect.git

2. Переносим папку в какое-нибудь удобное место
Например, /usr/local/lib

3. Генерируем сертификаты
cd /usr/local/lib/PlexConnect/assets/certificates
openssl req -new -nodes -newkey rsa:2048 -out trailers.pem -keyout trailers.key -x509 -days 7300 -subj "/C=US/CN=trailers.apple.com"
openssl x509 -in trailers.pem -outform der -out trailers.cer && cat trailers.key >> trailers.pem

4. Настраиваем PlexConnect
Открываем файл Settings.cfg
прописываем IP-адрес нашего PlexMediaServer'а
ip_pms = 192.168.0.251
Если это необходимо, то правим и другие параметры

5. Запускаем PlexConnect
sudo ./PlexConnect.py

Теперь осталось только настроить Apple TV

1. Прописываем в качестве DNS-сервера IP-адрес компьютера, на котором установлен PlexConnect

Настройки->Сеть->Ethernet (если Apple TV работает через Ethernet)->DNS (вручную)

2. Устанавливаем сертификат.

Для этого не нужно ни программы Apple Configurator, ни iPhone Configuration Utility. Все делается чисто с помощью пульта.

Настройки->Основные->Отсылать данные в Apple
Здесь должно стоять "НЕТ"
Далее, выделив эту опцию с помощью пульта, нажимаем кнопку Play (не выбор, а именно Play).
Apple TV предложить создать новый профиль. Создаем и указываем следующий URL
http://trailers.apple.com/trailers.cer

ВСЕ! Теперь выходим в главное меню, выбираем приложение Трейлеры и видим там наши фильмы, фотографии, музыку и все остальное без необходимости каждый раз использовать iPhone/iPad или программу iTunes (не дай бог ночью приснится!)

Автоматический поворот фотографий при просмотре через Apple TV

Данная проблема проявлялась в версии 0.3. В данный момент (версия 0.5) описанная проблема в PlexConnect отсутствует.

При использовании PlexConnect и медиа-сервера Plex, программное обеспечение приставки Apple TV в режиме просмотра фотографий по какой-то причине не учитывает информацию в EXIF и автоматически не переворачивает изображения. Видимо, такой необходимости просто нет при отображении оригинальных трейлеров. Эта особенность меня несколько раздражала, а переворачивать оригиналы изображений, размещенных на сервере не хотелось, и я попытался найти решение проблемы на форумах, посвященных Plex. И нашел. Причем решение убивает сразу двух зайцев. Почему двух? Потмоу что еще одной проблемой Apple TV является отображение объемных фотографий с высоким разрешением. В режиме слайд-шоу такие фотографии не успевают обрабатываться процессором приставки, в результате чего некоторые снимки выпадают, а Apple TV даже иногда перезагружается. Решение простое - неоходимо, чтобы Plex Media Server уменьшал фотографии до разрешения телевизора (для Full HD это всего-лишь 1920х1080). В процессе транскодирования Plex автоматически поворачивает фотографии. А настройка очень простая.

Открываем файл /usr/local/lib/PlexConnect/assets/templates/Photo_Browser.xml

И на 33 строке вместо

 <url>{{IMAGEURL(Media/Part/key)}}</url>

пишем

 <url>{{IMAGEURL(Media/Part/key::1920:1080)}}</url>

После перезагрузки скрипта PlexConnect все заработало просто отлично. Фотографии переворачиваются, слайд-шоу не заедает. Все довольны.

Вывод

Таким образом приставка Apple TV и технология AirPlay очень органично вписываются в концепцию Умного Дома, позволяя отображать на телевизоре абсолютно всю информацию, которая доступна в домашней медиа-среде и открывая для пользователей новые возможности. А решая проблему с воспроизведением контента через Apple TV с домашнего Linux-сервера, я открыл для себя программу Plex Media Server, которая делает доступ к медиа-данным еще более удобным и функциональным, дополняя и расширяя возможности информационной системы Умного Дома.

Автор: Andrey_B
Любое использование материалов сайта возможно только с разрешения автора и с обязательным указанием источника.



Добавить комментарий:

(необязательно, не отображается на сайте)


Сортировка комментариев: Последние сверху | Первые сверху

2014-10-27 23:23:05 | Melwin
Чувак, огромное тебе, человеческое спасибо) Все работает как часы!


2014-11-21 19:02:44 | Maxim
Сейчас сетевые накопите Qnap, поддерживают Apple® AirPlay и умеют качать торенты. Думаю стоит на это обратить внимание.


2014-12-11 23:12:11 | Денис
Скажите, а возможно ли сделать так чтобы при просмотре фильмов через PLEX на любом устройстве аудио выводилось или дублировалось через звуковую карту сервера? Заранее благодарен!


2015-01-11 19:08:43 | asakharov
Некоторая ограниченность этого решения связана с ограничениями AppleTV - его неумение проигрывать контент с высоким битрейтом. И не всегда у Plex Server хватает ресурсов на перекодировку.
Альтернатива - поставить Plex Client на телевизор, который это поддерживает. Скажем, телевизоры на Android.
Другая возможность - использовать NAS c HDMI выходом и с поддержкой XBMC. В этом случае получаем все возможности XBMC плеера по созданию медиа каталога и проигрывание фильмов - музыки c NAS. Без AppleTV.