Телебачення через Acestream на Raspberry PI. Тепер у docker контейнерах

На хабре вже неодноразово згадувався AceStream: технологія, що надає користувачеві доступ до відеопотоків по закритому P2P протоколом AceStream, т. зв. torrent телебачення. AceStream надає доступ до розподіленої мережі доставки контенту, тобто переглядаючи телеканал користувач передає дані іншим користувачам, що дозволяє кардинально знизити вартість послуг.
А тепер хороша новина для власників медіаплеєра на основі raspberry (OSMC, LibreELEC): знайшлася збірка acestream під arm, що дозволило встановити його прямо на raspberry pi. У цій статті пропонується інструкція по установці acestream, і всього необхідного для перегляду ТБ в докер-контейнерах під raspberry. На момент написання статті, запропоноване рішення дозволяє дивитися безкоштовно велика кількість телеканалів, втім без гарантій: acestream в будь-який момент може перестати бути безкоштовним.
kodi live tv channels list screenshot
1. Установка docker на raspbian/osmc
Для docker існує рідний інсталяційний скрипт: https://get.docker.com/. Він звичайно створений для хипстерского методу curl-pipe-bash і я вам його радити не буду :) До того ж на момент написання він був трохи зламаний і на RPi не працював. Тому треба виконати кілька команд з-під root:
apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
apt-key adv -k 58118E89F3A912897C070ADBF76221572C52609D 
mkdir -p /etc/apt/sources.list.d
echo deb \[arch=armhf\] http://apt.dockerproject.org/repo raspbian-jessie main > /etc/apt/sources.list.d/docker.list
sleep 3; apt-get update; apt-get install -y -q docker-engine

Таким чином ми додали в систему новий репозитарій, ключі для нього, і встановили пакет docker-engine. Тепер, для запуску докер демона можна скористатися командою
systemctl start docker

2. Установка acestream
Для установки acestream досить покласти service file в каталог /etc/systemd/system і запустити засобами systemd, наприклад так:
curl -sSL https://raw.githubusercontent.com/aaaler/acestreamproxyvlc-pi/master/acestream.service > /etc/systemd/system/acestream.service
systemctl daemon-reload
systemctl enable acestream
systemctl start acestream

Якщо при запуску потрібний докер-образ не буде знайдений — докер його скачає сам. тому перший запуск сервісу вимагатиме значного часу. Якщо хочеться бачити прогрес завантаження — можна заздалегідь завантажити образ командою
docker pull aaaler/acestream-pi
.
Тепер AceStream запущений і відповідає на порту
62062
. Цього достатньо, наприклад, для роботи доповнень до Kodi типу torrent-tv, lostfilm і інших додатків, що використовують acestream безпосередньо. Однак можна піти далі, і налаштувати Live TV в Kodi. Для цього потрібно підняти ще пару контейнерів.
3. Установка aceproxy
Для роботи Live TV необхідно передати Kodi список каналів у вигляді плейлиста, і для цього ValdikSS написав спеціальний проксі. Він слухає запити по HTTP і передає їх в AceStream, а приходить з AceStream відеопотік — роздає засобами VLC. Т. к. авторський репозиторій давно не оновлювався, для побудови образу був обраний цей форк.
Спочатку потрібно розкласти конфіги:
mkdir 
curl -sSl https://raw.githubusercontent.com/aaaler/acestreamproxyvlc-pi/master/etc/torrenttv.py > /etc/aceproxy/torrenttv.py 
curl -sSl https://raw.githubusercontent.com/aaaler/acestreamproxyvlc-pi/master/etc/p2pproxy.py > /etc/aceproxy/p2pproxy.py

Якщо у вас є vip аккаунт на torrent-tv — пропишіть посилання на плейлист AceStream (з особистого кабінету) у файлі /etc/aceproxy/torrenttv.py. Використовувати torrent-tv необов'язково, є й інші джерела, що не потребують реєстрації.
Крім того, є можливість налаштувати плагін p2pproxy для перегляду каналів через DNLA.
Тепер скачаємо service файл і запустимо контейнери засобами systemd:
curl -sSL https://raw.githubusercontent.com/aaaler/acestreamproxyvlc-pi/master/aceproxy.service > /etc/systemd/system/aceproxy.service
curl -sSL https://raw.githubusercontent.com/aaaler/acestreamproxyvlc-pi/master/vlc-nox.service > /etc/systemd/system/vlc-nox.service
systemctl daemon-reload
systemctl enable aceproxy
systemctl start aceproxy

При запуску aceproxy всі необхідні компоненти будуть запущені автоматично. Тепер нам доступні для скачування звичайні m3u плейлисти відповідних плагінів:






playlist url service
http://127.0.0.1:8000/torrenttv/playlist.m3u
torrent-tv.ru
http://127.0.0.1:8000/torrent-telik
torrent-telik.ru
http://127.0.0.1:8000/allfon
allfon.org
Більш детально про використання aceproxy можна почитати у ValdikSS в Wiki
4. Налаштування плеєра KODI
Все вищеописане використовується мною для перегляду TV в плеєрі KODI. В ньому є функція показу Live TV, вона включається до
SYSTEM
Settings
TV
General
.
kodi settings enable live tv screenshot
Після цього Kodi повідомить, що потрібно увімкнути PVR addon, і покаже їх список. (Якщо цього не сталося, список PVR аddons можна знайти в
SYSTEM
Add-ons
My add-ons
). Виберіть
PVR IPTV Simple Client
, увімкніть його (enable), і вкажіть у налаштуваннях playlist url обраного плагіна.
kodi settings live tv playlist screenshot
У розділі
EPG Settings
можна вказати посилання на програму передач epg. Я використовував
http://api.torrent-tv.ru/ttv.xmltv.xml.gz

Крім того, перемикання каналів в acestream може займати значний час, так що рекомендую збільшити таймаут на перемикання каналів в экспетном режимі налаштувань
SYSTEM
Settings
TV

kodi settings timeout channel switch screenshot
Після підтвердження опцій, рекомендується перезавантажити kodi. При наступному запуску, повинні подгрузиться канали і з'явиться розділ TV в головному меню.
kodi settings live tv playlist screenshot
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.