Архип Posted March 10, 2018 Share #1 Posted March 10, 2018 (edited) версия: 3.1.16, linux, Release Notes: - Поддержка мультибитрейтных потоков при адаптивном вещании в HLS - Включена обработка запроса на пинкод/пароль от внешнего устройства при использование AirCast - Настройки приложения теперь можно менять с пульта - Расширен функционал "Engine API", для максимальной совместимости с приложениями, использующими устаревший API - Автоматическое восстановление соединения для AirPlay и Google Cast. - В пульте добавлена кнопка "Рестарт", для возможности повторного запуска контента с места остановки. - Оптимизация HLS - Устранение артефактов при трансляции по HTTP - Совместимость со сторонними приложениями, использующими устаревший API - Добавлены настройки транскодирования аудиодорожек при выдаче потока в HLS Hide Краткое описание: Ace Stream – это медиа-платформа с децентрализованной/распределенной системой поставки и хранения мультимедийных данных, предназначенная для создания интернет-сервисов с функциями AVoD (Аудио и Видео по Запросу) и Live Streaming («живого»/потокового вещания). Используя функции Ace Stream, вы сможете проигрывать в онлайне видео/аудио контент из P2P –сетей (по протоколу BitTorrent и/или AceStream), в любых удобных вам плеерах и на любых устройствах (SmartTV, ТВ-приставки, iPad, iPhone, и др.), поддерживающих соответствующие кодеки и стандартные форматы вещания (HTTP и/или HLS). Эта Тема переросла из этого топика по причине того что там было решение для просмотра в остовном live-tv b и с помощью ресурса ттв, здесь же пойдёт речь в остовном о самом движке Ace Stream, который претерпел с момента написания той статьи значительные изменения(см. Release Notes) Сама установка на убунту вкратце есть в вике разработчика здесь. Для пользователей xpenology у которых уже установлена как минимум DSM-5.2, а в идеале и настоятельно рекомендуется DSM-6.1, и у которых архитектура железа x64, я собрал уже готовое решение которое упаковано в контейнер докера и которое находится здесь. После запуска контейнера на вашем nas-server DSM, потребуется только один раз зайти в контейнер для правки ip вашей сети и записи в кроне для чистки кеша и регулярного обновления плейлистов, дополнительно но не обязательно, можно также занести данные учётки ттв в HTTPAceProxy для воможности просмотра архивов и использования функционала офф. виджета ттв(скрины в спойлере ниже). виджета ттв только андроид Hide Edited March 10, 2018 by Архип 3 3 Quote Link to comment Share on other sites More sharing options...
Архип Posted March 10, 2018 Author Share #2 Posted March 10, 2018 (edited) Вообщем после всех именений под себя, будет доступен различный видеоконтет по следующим ссылкам: http://ip:port-HTTPAceProxy/torrenttv # весь список 900+ каналов, не требуется учётка/подписка vip ттв http://ip:port-HTTPAceProxy/channels/?type=m3u # весь список, требуется учётка/подписка vip ттв http://ip:port-HTTPAceProxy/channels/?group=3&type=m3u # список по группам (расшифровка групп: 1-детские; 2-музыка; 3-фильмы; 4-спорт; 5-общие; 6-познавательные; 7-новостные; 8-развлекательные; 9-взрослые; 10-мужские; 11-региональные; 12-религиозные), требуется учётка/подписка vip ттв http://ip:port-HTTPAceProxy/archive/dates/?days=1 # архив за 1 день, (требуется доустановить ffmpeg), требуется учётка/подписка vip ттв http://ip:port-nginx/aceall.m3u # весь список 900+ каналов, не требуется учётка/подписка vip ттв http://ip:port-nginx/films.m3u # Фильмы по жанрам, актуальное количество p2p ссылок: 2860, пополняется http://ip:port-HTTPAceProxy/proxyfilms # for use with AceProxy as proxy, фильмы средствами HTTPAceProxy, совместимость с TorrentMonitor (Server) http://ip:port-HTTPAceProxy/films # for use with bulit-in AceStream proxy, фильмы средствами HTTPAceProxy, совместимость с TorrentMonitor (Server) Edited March 10, 2018 by Архип 5 Quote Link to comment Share on other sites More sharing options...
Архип Posted April 2, 2018 Author Share #3 Posted April 2, 2018 (edited) Оптимизация и тонкая настройка из коробки сразу доступны логи движка по ссылке при услови что порт для супервизора 9903 проброшен http://ip::9903/logtail/acestream # это аналог в терминале tail -f -n 0 /var/log/supervisor/acestream.log аналогично доступны логи для HTTPAceProxy, только после правки в HTTPAceProxy/aceconfig.py строчки 140 на: logfile = "/var/log/supervisor/acehttp.log" путь для правки nano /opt/HTTPAceProxy-master/aceconfig.py и тогда http://ip::9903/logtail/acehttp движок запускается с ключами: --live-cache-type memory # - хранить кеш в оперативной памяти --live-cache-size 524288000 # - максимальный размер кеша в bit, (по умолчанию: 209715200 bit (200 Мб)), здесь по личному опыту проишёл к тому что от зависимости объёма вашей памяти 200 Мб достаточно но 500 Мб ещё лучше, а сам я выставил вообще 1000 Мб --core-sandbox-max-peers 15 # - это значение позволяет автоматически находить пиры с хорошей скоростью отдачи и подсоединять их к себе, по умолчанию 5--live-buffer 25 кстати в контейнере уже выполнено echo "tmpfs /tmp tmpfs rw,nosuid,nodev 0 0" | tee -a /etc/fstab что монтирует /tmp в tmpfs в коробке уже установлен скрипт сканирования источника как рекомендует сам автор ресурса потому как у него есть ограничение по исходящему трафику, и он не может позволить беспрерывную долбежку, вот его содержание: #!/bin/sh FNAME="tv.m3u" URL="http://pomoyka.lib.emergate.net/trash/ttv-list/ttv.all.iproxy.m3u?ip=192.168.178.92:6878" GNAME="${FNAME}.gz" curl --fail -R -z "${GNAME}" -o "${GNAME}" -H "Accept-Encoding: gzip" "${URL}" && \ gunzip -c "${GNAME}" >"${FNAME}" curl скачивает файл из $URL в tv.m3u.gz, используя метод сжатия gzip если он ранее уже был скачан, а на сервере изменен не был, то скачивание не производится это реализовано через поддержку хедеров If-Modified-Since и Last-Modified таким образом трафик остается на минимально необходимом уровне 1-2 Mb в сутки вместо 50,100,200 и больше Mb gunzip разжимает tv.m3u.gz в tv.m3u, который и нужен будет нам # правим под себя ip выполняем в терминале контейнера cd /var/www/html/ && ./scan-m3u.sh заносим в крон 0 */6 * * * cd /var/www/html/ && ./scan-m3u.sh лист доступен будет по ссылке http://ip:8844/tv.m3u # если порт nginx 80 пробросить на 8844! отдельно что касается использования HTTPAceProxy в которой реализована поддержка API torrenttv, что позволяет более комфортно пользоватся так как подтягиваются програма передач, иконки и архивы. за это отвечает плагин p2pproxy_plugin.py у которого в настройках заносим учётные данные ттв вип путь для правки nano /opt/HTTPAceProxy-master/plugins/config/p2pproxy.py строчки 19 и 20 # Insert your email on torrent-tv.ru here email = 're.place@me' # Insert your torrent-tv account password password ='ReplaceMe' ссылки этого плагина соответсвенно http://ip:8000/channels/?type=m3u http://ip:8000/archive/dates/?days=1 #(требуется доустановить ffmpeg) Install FFmpeg 3.4 add-apt-repository ppa:jonathonf/ffmpeg-3 apt-get update apt-get install ffmpeg по категориям http://ip:8000/channels/?group=3&type=m3u #расшифровка групп выше но также парралельно есть плагин torrenttv_plugin.py который так же частично использует API для подтягивания иконок и програмы но не требует учётки ттв и при этом также нет возможности смотреть архивы путь для правки nano /opt/HTTPAceProxy-master/plugins/config/torrenttv.py строчка 15 заносим источник типа # Insert your Torrent-tv.ru playlist URL here url='' и строчка 27 , интервал сканирования источника в минутах, оптимально значение 360 ссылки этого плагина соответсвенно http://ip:8000/torrenttv http://ip:8000/torrenttv/playlist.m3u здесь правим сортировку каналов в строчке 28 и 30 на True nano /opt/HTTPAceProxy-master/plugins/modules/playlist.py здесь правим specified flags проца, доступные значения nano /opt/HTTPAceProxy-master/aceclient/aceclient.py строчка 247 ffmpeg_cmd += '-hwaccel auto -hide_banner -loglevel fatal -re -i %s -c copy -f mpegts -' % url где добавляем ключ допустим для интел -cpuflags sse4.2 или лучше -cpuflags avx2 # если иструкция avx2 поддерживается вышим процем логи прокси: тыц ,тыц ,тыц Edited April 2, 2018 by Архип 2 1 Quote Link to comment Share on other sites More sharing options...
Olegin Posted April 9, 2018 Share #4 Posted April 9, 2018 В 02.04.2018 в 13:45, Архип сказал: В 02.04.2018 в 13:45, Архип сказал: http://ip::9903/logtail/acestream # это аналог в терминале tail -f -n 0 /var/log/supervisor/acestream.log из коробки сразу доступны логи движка по ссылке при услови что порт для супервизора 9903 проброшен В коробке не было папки /dev/disk/by-id, создал, но все-равно в браузере ls: cannot access '/dev/disk/by-id/': No such file or directory Quote Link to comment Share on other sites More sharing options...
Архип Posted April 9, 2018 Author Share #5 Posted April 9, 2018 (edited) #/dev/disk/by-id в контейнерах не работает, только на железе Цитата Комментарий разработчика по поводу ошибки "cannot access /dev/disk/by-id" - влиять на работоспособность движка не должно. Edited April 9, 2018 by Архип Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 11, 2018 Share #6 Posted April 11, 2018 Цитата После запуска контейнера на вашем nas-server DSM, потребуется только один раз зайти в контейнер для правки ip вашей сети и записи в кроне для чистки кеша и регулярного обновления плейлистов Добрый день, как это сделать? Quote Link to comment Share on other sites More sharing options...
Архип Posted April 11, 2018 Author Share #7 Posted April 11, 2018 (edited) заходим в контейнер так: docker exec -it aceub /bin/bash где 'aceub' имя которым вы обозвали контейнер дальше идём в крон crontab -e и добавляем там в самом низу эти записи 0 */2 * * * find /tmp/state/.ACEStream/.acestream_cache/* -depth -type f -mmin +5 -print0 | xargs -0 -r rm -f > /dev/null 2>&1 0 */2 * * * find /tmp/state/.ACEStream/collected_torrent_files/* -depth -type f -mmin +5 -print0 | xargs -0 -r rm -f > /dev/null 2>&1 это означает что файлы кеша старше чем 5 минут будут удалятся каждые 2 часа по плейлисту добавляем 0 */6 * * * cd /var/www/html/ && ./scan-m3u.sh > /dev/null 2>&1 это означает что скрипт scan-m3u.sh будет выполнятся каждые 6 часов сам скрипт scan-m3u.sh редактируем на предмет вашего ip по этому пути nano /var/www/html/scan-m3u.sh выполняем cd /var/www/html/ && ./scan-m3u.sh если интересно то опишу как вместо расшаривания через встроенный вебсервер nginx, использовать абсолютно бесплатно облако B2 Cloud Storage root@v3:/var/www/html# b2 upload_file tvplaylist /var/www/html/xxxtv.m3u xxxtv.m3u /var/www/html/xxxtv.m3u: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 176k/176k [00:01<00:00, 124kB/s] URL by file name: https://xxx.xxxx2.com/file/tvplaylist/xxxtv.m3u URL by fileId: https://xxx.xxxx2.com/b2api/v1/b2_download_file_by_id?fileId=4_zbxxx1c_f1139ec2141fc2c6a_d20180406_m172825_c002_v0001096_t0018 { "action": "upload", "fileId": "4_zbxxx1c_f1139ec2141fc2c6a_d20180406_m172825_c002_v0001096_t0018", "fileName": "xxxtv.m3u", "size": 176124, "uploadTimestamp": 1523035705000 } Edited April 11, 2018 by Архип 1 Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 11, 2018 Share #8 Posted April 11, 2018 Хотелось-бы, но хоть с этим справится сначала надо. Quote Link to comment Share on other sites More sharing options...
Olegin Posted April 11, 2018 Share #9 Posted April 11, 2018 1 час назад, Архип сказал: nano /var/www/html/scan-m3u.sh Чего-то не нашел scan-m3u.sh даже после обновления образа контейнера docker pull sybdata/aceubase и перезапуска. Quote Link to comment Share on other sites More sharing options...
Архип Posted April 11, 2018 Author Share #10 Posted April 11, 2018 (edited) вот Dockerfile там всё записано mv /root/scan-m3u.sh /var/www/html/scan-m3u.sh просто перезапуск не проканает, нужно перезосдавать поэтому просто руками докачайте скрипт cd /var/www/html/ && wget https://raw.githubusercontent.com/sybdata/aceUbase/master/src/scan-m3u.sh Edited April 11, 2018 by Архип Quote Link to comment Share on other sites More sharing options...
toleeck Posted April 11, 2018 Share #11 Posted April 11, 2018 очень удачно у вас вышел докер! спасибо! осталось только чуть подчистить плейлист под свои нужды, убрав неиспользуемое, и названия групп каналов из скобок в названиях каналов перебросить в group-title="groupname" Quote Link to comment Share on other sites More sharing options...
Архип Posted April 11, 2018 Author Share #12 Posted April 11, 2018 (edited) 2 часа назад, toleeck сказал: названия групп каналов из скобок в названиях каналов перебросить в group-title="groupname" вы можете разные ссылки с источника вбивать и например если с категориями то ttv.all.tag.iproxy.m3u #все каналы, сортировка по категории,названию, с тэгами групп и лого Edited April 11, 2018 by Архип Quote Link to comment Share on other sites More sharing options...
toleeck Posted April 12, 2018 Share #13 Posted April 12, 2018 13 hours ago, Архип said: вы можете разные ссылки с источника вбивать действительно, чего это я? спасибо! Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 12, 2018 Share #14 Posted April 12, 2018 Господа, что то у меня нечего не выходит, ткните носом , как правильно ставить контейнер? логи не вижу, плейлист скачать могу, VLC каналы не показывает. Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 12, 2018 Share #15 Posted April 12, 2018 Монитор Quote Link to comment Share on other sites More sharing options...
Olegin Posted April 12, 2018 Share #16 Posted April 12, 2018 1. В вебморду ходить и править там ничего не надо 2. Настройте порты зеркально, только 80 выведите на свободный, например 8844, как автор рекомендует, чтобы потом не путаться Порты Hide Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 12, 2018 Share #17 Posted April 12, 2018 (edited) порты Hide Не думаю, сто с портами проблема, у меня они заняты, только чем? Edited April 12, 2018 by jonbv Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 12, 2018 Share #18 Posted April 12, 2018 Quote Link to comment Share on other sites More sharing options...
Архип Posted April 12, 2018 Author Share #19 Posted April 12, 2018 (edited) #jonbv блин, вы что делаете что вы в скрипт вбиваете вроде же ясно выше писал URL="http://pomoyka.lib.emergate.net/trash/ttv-list/ttv.all.iproxy.m3u?ip=ваш ип:6878 вебморду вообще не трогайте!!! Edited April 12, 2018 by Архип Quote Link to comment Share on other sites More sharing options...
Архип Posted April 12, 2018 Author Share #20 Posted April 12, 2018 (edited) скинте в личку контакты skype , teamviewer Port: 993 тоже руки прочь! это почтовик Server: imap вай вай вай Edited April 12, 2018 by Архип 1 Quote Link to comment Share on other sites More sharing options...
Olegin Posted April 12, 2018 Share #21 Posted April 12, 2018 19 минут назад, jonbv сказал: Не думаю, сто с портами проблема, у меня они заняты, только чем? Скорее всего на 8000 порт вот это засадили... Hide 1 Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 12, 2018 Share #22 Posted April 12, 2018 #Архип, да там принскрин не показывает всю строчку, я показал только ip и порт, почему порт нельзя менять? Quote Link to comment Share on other sites More sharing options...
jonbv Posted April 12, 2018 Share #23 Posted April 12, 2018 Quote Link to comment Share on other sites More sharing options...
Архип Posted April 12, 2018 Author Share #24 Posted April 12, 2018 (edited) порт 6878!!! это порт движка зачем вы туда порт никса пихаете мне вообще непонятно я что нибуть про порт писал или нет, я писал только про ip Edited April 12, 2018 by Архип 1 Quote Link to comment Share on other sites More sharing options...
Архип Posted April 12, 2018 Author Share #25 Posted April 12, 2018 (edited) 8002 не судьба, никак? Edited April 12, 2018 by Архип Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.