Верх страницы
Обложка к записи Сказ о том, как я AceProxy в Ubuntu 16.10 поднимал
Время для прочтения: 0 мин. 25 сек.

Сказ о том, как я AceProxy в Ubuntu 16.10 поднимал

AceProxy — питоновский Ace Stream HTTP-прокси, созданный для медиа-платформы Ace Stream, которая является децентрализованной/распределенной системой поставки и хранения мультимедийных данных, предназначенная для создания интернет-сервисов с функциями AVoD (Аудио и Видео по Запросу) и Live Streaming («живого»/потокового вещания), с обширной социальной и интерактивной составляющей.

Установка VLC

Обновляем пакеты на сервере:

sudo apt-get update

Добавляем пакет vlc-nox (это vlc, собранный без иксов):

sudo apt-get install vlc-nox

Пробуем запустить vlc:

sudo cvlc -I telnet \
    --clock-jitter -1 \
    --network-caching -1 \
    --sout-mux-caching 2000 \
    --telnet-password admin

Если при первом запуске, вы получите ошибку о невозможности запуска сервера от рута:

VLC is not supposed to be run as root. Sorry. If you need to use real-time priorities and/or privileged TCP ports you can use /usr/bin/vlc-wrapper (make sure it is Set-UID root and cannot be run by non-trusted users first).

Можно сделать небольшой хак в недрах самого vlc. Для чего в файле /usr/bin/vlc замените строку geteuid на getppid:

sudo sed -i 's/geteuid/getppid/' /usr/bin/vlc

Если вы будете собирать vlc из исходников, то просто скомпилируйте его с флагом --enable-run-as-root.

Установка Ace Stream

Для начала мы ставим версию 2.х из репозитория, а уж потом обновляем её до актуальной 3.х простой заменой файлов (это работает, проверено).

Добавляем репозиторий в /etc/apt/sources.list:

sudo deb http://repo.acestream.org/debian/ wheezy main

Скачиваем ключ:

wget -O - http://repo.acestream.org/keys/acestream.public.key | apt-key add -

Обновляем пакеты на сервере:

sudo apt-get update

Устанавливаем acestream 2.х:

sudo apt-get install acestream-engine

Сливаем себе зависимости для версии 3.х:

sudo apt-get install python-setuptools
sudo apt-get install python-m2crypto
sudo apt-get install python-apsw

Находим здесь ссылку на дистриб под вашу ОС и качаем его:

wget "http://dl.acestream.org/linux/acestream_3.1.16_ubuntu_16.04_x86_64.tar.gz"

Создаём временную директорию:

mkdir /tmp/acestream

Распаковываем полученный архив:

tar zxvf acestream_3.1.16_ubuntu_16.04_x86_64.tar.gz -C /tmp/acestream

Копируем соответствующие файлы из временной папки в корневую папку /opt/acestream:

sudo mv /tmp/acestream/acestream_3.1.16_ubuntu_16.04_x86_64/ /opt/acestream

Проверяем версию установленного приложения:

/opt/acestream/acestreamengine --version

Версия должна быть та, что содержится в названии архива. В моем случае это 3.1.16.

Установка AceProxy

Доставляем зависимости:

sudo apt-get install python-gevent git python-psutil python-pkg-resources

Клонируем себе обновляемый форк репозитория ValdikSS:

cd /opt
git clone https://github.com/AndreyPavlenko/aceproxy.git

Редактируем конфиг прокси /opt/aceproxy/aceconfig.py:

# Автоматом запускать Ace Stream при старте прокси
acespawn = True

# Команда запуска движка Ace Stream
acecmd = "/opt/acestream/acestreamengine \
    --client-console \
    --live-cache-type memory \
    --live-mem-cache-size 209715200 \
    --upload-limit 0 \
    --live-buffer 60"

# Включаем использование VLC
vlcuse = True

# Команда запуска VLC
vlccmd = "cvlc -I telnet \
    --clock-jitter -1 \
    --network-caching -1 \
    --sout-mux-caching 2000 \
    --telnet-password admin"

# Так установите эти переменные
videodelay = 0 
videoobey = False 
videopausedelay = 0

Запуск AceProxy

В простейшем случае запуск выглядит так:

python /opt/aceproxy/acehttp.py > /var/log/acehttp.log 2>&1 &

Проверка

Для проверки возьмите плейлист из вашего прокси по адресу:

http://ваш_домен:8000/torrent-telik/playlist.m3u

Откройте полученный плейлист в любом плеере с поддержкой потокового видео, например VLC.

Будут вопросы, пишите в комментах.

Источник torrent-telik.com похоже загнулся окончательно.

Ссылки

Автор: Кобзарёв Михаил

Русский разработчик с 20-ти летним стажем. Работаю с PHP, ООП, JavaScript, Git, WordPress, Битрикс, Joomla, Drupal, Opencart, DLE, Laravel, Moonshine, SuiteCRM.

Оптимизирую сайты под Google Page Speed, настраиваю импорты для больших магазинов на WooCommerce + WP All Import. Пишу плагины на заказ. Все мои услуги.

Веду блог о разработке, дайджест в телеграмме и в ВК.

Вы всегда можете нанять меня.

Комментарии
Подписаться
Уведомить о
guest

7 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Александр
Александр
6 лет назад

Подскажите пожалуйста, как правильно дать рут доступ асе, чтоб можно было прописать путь к кэшу в раздел нтфс? При попытке указать путь — нет прав. Спасибо.

Volker
Volker
6 лет назад

на роутере aceproxy поднять возможно?

Андрей
Андрей
6 лет назад

Здравствуйте,

Подскажите, пожалуйста, как исправить ошибку?
При установке движка acestream — sudo apt-get install acestream-engine появляется сообщение:
acestream-engine : Зависит: python2.7-apsw но он не может быть установлен
E: Невозможно исправить ошибки, у вас отложены (held) битые пакеты

пытаюсь установить на чистую ubuntu 16.04.3 по Вашей инструкции

Предыдущая запись

Давайте дружить
в Телеграме

Авторский блог вашего покорного слуги в Telegram про web, программирование, алгоритмы, инструменты разработчика, WordPress, Joomla, Opencart, Laravel, Moonshine, фильмы и сериалы