Dune HD TV

Здесь вы узнаете о том как

Управлять медиацентром Dune HD с помощью IP Control

Dune HD hardware - многофункциональный и мультиформатный медиацентр, в основе которого лежит операционная система Linux, на нём можно просматривать IP TV, фильмы по локальной и глобальной (Internet) сети, фотографии, слушать музыку в том числе и online радио и ещё на него можно установить много разнообразных плагинов например: плагин для просмотра видео с каналов Youtube. Также имеется встроенный Internet браузер, для просмотра сайтов (правда у меня он сильно тормозной, поэтому им не пользуюсь). А также у него имеется поддержка управления с помощью многих программ на базе Android. Что же раз можно управлять им со смартфона на базе Android, значит можно наверное управлять им и через HTTP запросы, подумал я и полез искать мануал по этой теме. И действительно можно, мануал я нашел на сайте производителя, правда он на английском, но все и так понятно. Конечно он не такой большой как для XBMC, но тем неменее позволяет реализовать практически любую хотелку (функцию управления). И так приступим к изучению некоторых, полезных функций.

Первым делом нам нужно настроить подключение к роутеру по WiFi или Ethernet (считается лучшим вариантом подключения, но у меня и по WiFi неплохо работает). Обратите внимание на то что компьютер с которого будет производится управление и приставка, должны быть в одной сети (т.е. например подключены к одному и тому же роутеру). Включаем приставку и идем в меню Настройки, выбираем пункт меню Сеть. Далее есть несколько вариантов на выбор - Проводное Ethernet или Беспроводное WiFi (если сеть защищена, понадобится ввести ключ сети), выбираем то по которому решили подключить. Затем нажимаем кнопку Применить, теперь немного терпения и в поле IP - адрес: появится ваш IP и надпись [подключено][Wifi или Ethernet].

Далее открываем интернет браузер и в адресной строке пишем следующий запрос на получение статуса:

http://Ваш_IP_адрес/cgi-bin/do?cmd=status

Если все верно сделано, то в ответ получим примерно такой текст в формате xml

<command_result>

<param name="protocol_version" value="3"/>

<param name="player_state" value="standby"/>

<param name="playback_pip_video_enabled" value="1"/>

<param name="pip_alpha_level" value="255"/>

<param name="pip_zorder" value="400"/>

<param name="video_zorder" value="200"/>

<param name="osd_zorder" value="500"/>

</command_result>

Из ответа который пришел мне видно что protocol_version = 3, но это не означает что можно только использовать функции из раздела Protocol "3" (starting with firmware version 120531_2200_beta). В этом случае мы можем использовать весь список функций, включая и Protocol "3". Попробуем воспроизвести ту же ссылку на online радио что и в статье про XBMC http://cast.radiogroup.com.ua:8000/avtoradio или найти другую в интернете. В адресной строке пишем следующий запрос:

http://Ваш_IP_адрес/cgi-bin/do?cmd=start_file_playback&media_url=http://cast.radiogroup.com.ua:8000/avtoradio

в результате выполнения этого запроса мы увидим текст в формате xml с большим количеством параметров, чем в первом случае. И должно заиграть радио на медиацентре если этого не произошло то читаем дальше. Если еще раз выполнить первый наш запрос:

http://Ваш_IP_адрес/cgi-bin/do?cmd=status

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

1. <param name="player_state" value="file_playback"/>

2. <param name="playback_state" value="playing"/>

3. <param name="previous_playback_state" value="buffering"/>

4. <param name="playback_url" value="http://cast.radiogroup.com.ua:8000/avtoradio"/>

5. <param name="playback_speed" value="256"/>

6. <param name="playback_position" value="378"/>

В первом параметре описывается состояние плеера, в данном случае воспроизводится файл. Во втором параметре, состояние проигрываемого файла, если ссылка битая или неправильная то вы увидите надпись param name="playback_state" value="initializing", такая же надпись будет и если загрузка потока по ссылке идет долго, в этом случае стоит немного подождать, конечно если вы только уверены на 100% что ссылка рабочая. В данном примере второй параметр нам говорит, что файл воспроизводится. В третьем параметре описывается, предшествующее состояние перед воспроизведением файла, здесь - буферизация. Т.е. сначала плеер загружает часть потока в буфер обмена, а затем воспроизводит. В четвёртом параметре мы видим ссылку на воспроизводимый файл. В пятом скорость воспроизведения в данном случае - число 256, которое означает что плеер находится в режиме воспроизведения, а число - 0, что плеер стоит на паузе. Шестой параметр отображает текущую позицию воспроизводимого потока или файла, если периодически обновлять страницу с первым запросом о статусе, то мы увидим как это значение изменяется.

Вот ещё несколько запросов для тестирования http://Ваш_IP_адрес/cgi-bin/do?cmd=:

  • set_playback_state&speed=0 - Поставить на паузу.
  • set_playback_state&speed=256 - Начать воспроизведение.
  • set_playback_state&volume=50 - Установить громкость на уровень 50.
  • set_playback_state&position=20 - Начать воспроизведение с 20 секунды.
  • ir_code&ir_code=E11EBF00 - Эмуляция нажатия кнопки Pause на пульте ДУ.
  • standby - Перевести плеер в спящий режим.
  • Так же нужно обратить внимание на некоторые моменты - в режиме online трансляции некоторые команды не воспринимаются, например такие как Начать воспроизведение с 20 секунды так как поток нельзя вернуть назад или остановить. В общем если возникнет ситуация при которой плеер не сможет выполнить запрос, он обязательно сообщит вам об ошибке в ответном сообщении. Также нельзя воспроизвести видео с Youtube по обычным ссылкам типа http://www.youtube.com/watch?v=XqsJM5BpIOM, нужна именно прямая ссылка на файл, а ее получить сложно, без знаний в области Youtube API и PHP. Пока я даже сам не вникал в суть данного вопроса, хотя поверхностное понимание имеется. Ещё хочется добавить, что в мануале по IP Control Dune HD описана возможность эмуляции нажатия кнопок пульта, но в совсем неудобном виде, поэтому прикладываю файл с кодами здесь.

    Здесь можно посмотреть как это работает.

    Полное описание всех методов можно найти здесь.

    Программы и технологии используемые в моей системе - Умный Дом

    Комментарии Все комментарии

    Написать комментарий