IPTV через UPNP/DNLA-сервер на роутере (pshare&xupnpd)
I did it! И я всё-таки предполагал верно, что с помощью UPNP/DNLA-сервера на роутере можно смотреть raw udp IPTV на тупых плейерах и телевизорах, которые отродясь об IPTV не слышали. Итак, вот он, герой - xupnpd. Это upnp-сервер, который позволяет представить на экране телевизора плейлист каналов IPTV.
Для волшебства необходимо:
1. Установить из репозитория Entware xupnpd:
Code:
$ opkg install xupnpd
2. Включить в web-интерфейсе роутера udpxy, для чего установить отличный от нуля HTTP Proxy Port:
Code:
IP Config > Miscellaneous > Multicast to HTTP Proxy Port: 12345
и перегрузить роутер.
3. Прописать upd>http прокси в настройки xupnpd. Для чего в файле /opt/share/xupnpd/xupnpd.lua строчку:
Code:
cfg.udpxy_url='http://192.168.1.1:12345'
, где 192.168.1.1 - адрес вашего роутера, а 12345 - порт, выбранный в предыдущем шаге.
4. Запустить xupnpd:
5. В web-интерфейсе xupnpd загрузить плейлист IP-TV вашего провайдера, для чего в браузере открыть страничку 192.168.1.1:4044 и выбрать последовательность действий
Code:
Playlists > Выбрать файл > Send
подразумевается, что *.m3u-плейлист у вас есть под рукой.
После чего сформированный плейлист построчно будет доступен на экране телевизора при выборе соответствующего upnp источника.
Мой провайдер иногда обновляет плейлист, поэтому скрипт автозапуска xupnpd у меня выглядит так:
Code:
$ cat /opt/etc/init.d/S55xupnpd
#!/bin/sh
find /opt/share/xupnpd/playlists/citycomm_utf8.m3u -maxdepth 0 -mtime -8 -exec \
wget -O {} http://tv.citycomm.ru/files/iptvplayer/citycomm_utf8.m3u \;
ENABLED=yes
PROCS=xupnpd
ARGS=
PREARGS=
DESC=$PROCS
PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
. /opt/etc/init.d/rc.func
другими словами, если плейлист старше недели, выкачивается его новая версия.
Функциональность xupnpd легко расширяется скриптами lua. Например, с его помощью можно "расшаривать" по upnp медиа-контент с жёсткого диска или смотреть на телевизоре top-ролики Youtube'а или плей-листы Youtube'а, сформированные ранее в вашем аккаунте. Очень удобно, ползая по Youtube'у добавлять ролики себе в плей-лист для того, чтобы позже посмотреть их на большом экране.
Таким образом удалось заставить играть IPTV на плейере WD TV Live без модификации прошивки последнего. В своё время я собирал ради этой фичи обновлённый mediatomb, но корректной работы от него так и не добился. Для WD TV Live единственным недостатком приведённого здесь решения является долгое переключение между каналами. Если удастся свести эту паузу к терпимому минимуму, то я, вероятно, продам имеющиеся спутниковые тюнеры.
Низкий поклон автору программы - Антону Бурдинюку.
PS. Для владельцев прошивки ветки 1.9.2.7-d ещё некоторое (короткое) время будет доступен предшественник xupnpd - pshare. Новые версии программ будут собираться исключительно для нового репозитория OpenWRT.
Огромное спасибо ryzhov_al за готовое решение !!!
Заставил свое ведро WD TV Live показывать ip-телевидение и проигрывать интернет-радио :D
( а самое главное избавился от расплавившейся флешки в ведре !! я думаю у кого WD тот поймет о чем я )
Все заработало в моем случаи без пунктов 2 и 3 ( наверно заслуга провайдера )
Quote:
Originally Posted by ryzhov_al
2. Включить в web-интерфейсе роутера udpxy, для чего установить в разделе "IP Config>Miscellaneous" параметр "Multicast to HTTP Proxy Port:", отличный от нуля, например, 4022 и перегрузить роутер.
3. Переработать имеющийся плейлист каналов.
Мой плейлист провайдера выглядит так
PHP Code:
#EXTM3U
#EXTINF:001,001-ОРТ
http://video2.local.lan:7780/udp/234.5.2.1:20000
#EXTINF:002,002-РТР
http://video2.local.lan:7780/udp/234.5.2.2:20000
#EXTINF:003,003-ТВЦ
http://video2.local.lan:7780/udp/234.5.2.3:20000
и так далее .....
Так-же ради эксперимента положил в папку /opt/share/pshare/playlists/ плейлист интернет-радио
Все отлично работает )))
Остался только маленький вопросик :confused:
Возможно сразу подгружать два плейлиста телевидения и радио ??
например
Code:
pshare -i br0 /opt/share/pshare/playlists/ТЕЛЕВИЗОР
pshare -i br0 /opt/share/pshare/playlists/РАДИО
Так чтоб в меню проигрывателя на телеке появилось возможность выбора плейлистов ТЕЛЕВИЗОР или РАДИО ??
P/S У мена на каналы побыстрей подписываются 10-15 секунд