вторник, 20 января 2015 г.

HTPC своими руками (часть 3)

Это третья, заключительная, часть цикла постов о самостоятельной сборке HTPC (первая и вторая части). В предыдущих частях я рассказывал о "железной" и программной начинке, а также слегка коснулся истории моего HTPC-строения. В этой части я опишу интеграцию HTPC с сервисом IPTV от провайдера Атлант Телеком.

Мой тарифный план от интернет-провайдера включает пакет каналов IPTV, сейчас этот пакет включает более 70 каналов, в том числе один в HD качестве. Плейлист для IPTV плеера находится тут (доступен только из сети Атлант Телекома).

Для просмотра IPTV провайдер предлагает использовать либо программный плеер (для просмотра ТВ на компьютере), либо цифровую приставку STB MAG250 Micro.

STB MAG250 Micro

Эта цифровая приставка используется многими IPTV провайдерами, но не подходила мне, т.к. на тот момент вся сеть была на базе wifi, а не ethernet. Мои первые попытки смотреть IPTV через wifi, используя для этого multicast, заканчивались зависанием или перезагрузкой точки доступа уже через секунд 15-20 просмотра. Через ethernet-кабель, приходящий от провайдера, IPTV работал нормально. Чтобы решить эту проблему нужно преобразовывать multicast трафик в unicast. К тому моменту я уже немного игрался с tvheadend, так что вместо экспериментов с udpxy и прочими поставил его. Установка для Debian Wheezy проста

$ wget -O- http://apt.tvheadend.org/repo.gpg.key | sudo apt-key add -
$ echo 'deb http://apt.tvheadend.org/stable wheezy main' | sudo tee /etc/apt/sources.list.d/tvheadend.list
$ sudo apt-get update
$ sudo apt-get install tvheadend

При установке у вас попросит задать логин и пароль администратора, которые вам пригодятся чтобы зайти в настройки Tvheadend. Для этого вам нужно в браузере перейти по адресу http://server-ip:9981/. Свежеустановленный Tvheadend выглядит как-то так


Первый раз я скрупулезно выполнил мартышкин труд и создал в Tvheadend'е более 70 каналов, включил в XBMC плагин tvheadend pvr и настроил подключение к серверной части. После небольшой паузы (на тот момент у меня был еще HTPC на базе Raspberry PI) появилась картинка и звук на телевизоре. Я прошелся по каналам и обнаружил что для некоторых есть только звук, а вместо картинки - черный экран. Расследование показало, что проблемные каналы вещаются в MPEG2, а работающие в H264. Гугление привело меня на страницу покупки лицензионных ключей для аппаратного декодера Rapsberry PI. Дело в том, что декодирование MPEG-2 и VC-1 требует отчисление роялти и потому заблокировано по-умолчанию. Чтобы не заморачиваться в будущем я купил сразу ключи для MPEG-2 и VC-1. После прописывания ключей в загрузчик Raspberry и перезагрузки заработали и "проблемные" каналы.

Недоставало только программы передач (EPG) для работы записи по расписанию. Для MythTV я использовал программу передач с сайта teleguide.info и все было замечательно, но однажды на этом сайте появилось уведомление, что сервис закрывается - пришлось искать альтернативы.

Атлант Телеком предоставляет программу передач в формате JTV (http://help.telecom.by/_files/TelecomTV/TelecomTVepg.zip), но Tvheadend поддерживает только формат XMLTV. Попробовал покопаться в содержимом файлов EPG провайдера - мое внимание привлекла запись, которая присутствовала в начале каждого файла с расширением .pdt (сейчас этой записи уже нет)


В названии каждой первой передачи была вставка
-- Телепрограмма с сайта: www.vipiko.tv --
Зайду-ка я на этот сайтик. Bingo! На этом сайте выложена программа передач не только в формате JTV, но и нужном мне XMLTV. Похоже Атлант Телеком просто собирает в архив нужные каналы, не особо заботясь о "чистке". Подключив этот сервис к Tvheadend, я пользовался им примерно год и прекратил, когда после очередной "отмены времени" в РФ, для многих каналов смещение времени стало неверным. К этому времени выяснилось, что teleguide.info толи восстал из пепла, то ли не до конца помер - теперь пользуюсь им.

На этом можно было бы и закончить рассказ, если бы Атлант Телеком слишком часто не менял каналы IPTV. Приходилось отслеживать изменения и перенастраивать Tvheadend. Вскоре делать это надоело и я написал утилиту tvheadend-iptv-damavik, которая заботится об актуальности настроек каналов и импорте EPG.

2 комментария:

  1. Подскажите, а как адаптировать Вашу утилиту под tvheadend 4.0.8

    ОтветитьУдалить
    Ответы
    1. Придется переписать генератор конфигурации под новый формат. Именно по этой причине я установил обратно tvheadend 3.4.27 после случайного апгрейда до 4.0.8.

      Удалить