Streaming

From Ace Stream Wiki
Revision as of 16:20, 12 September 2012 by 127.0.0.1 (talk) (Новая страница: «== Установка == === Установка TS Engine на Debian === Для установки TS Engine необходимо добавить репозит…»)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Установка

Установка TS Engine на Debian

Для установки TS Engine необходимо добавить репозиторий Torrent Stream в файл /etc/apt/sources.list: deb http://torrentstream.net/repo ubuntu main

Если при установке пакета выводится сообщение про неизвестный ключ, можно его добавить в систему:

wget -O - http://torrentstream.net/repo/torrentstream.public.key | apt-key add -

После этого нужно установить пакет torrentstream-engine:

apt-get update

apt-get install torrentstream-engine


Установка пакет TorrentStream Full на Ubuntu из deb-пакета

  • скачать пакет по ссылке

http://torrentstream.org/downloads/linux/test/torrentstream_1.0.6-0ubuntu8_amd64.deb

либо

http://torrentstream.org/downloads/linux/test/torrentstream_1.0.6-0ubuntu8_i386.deb

(в зависимости от нужной архитектуры)

  • установить пакет через менеджер пакетов (например, двойным кликом на скачанный файл пакета)


Установка пакет TorrentStream Full на Ubuntu из репозитория

Добавить репозиторий Torrent Stream в файл /etc/apt/sources.list:

deb http://torrentstream.net/repo ubuntu main

Если при установке пакета выводится сообщение про неизвестный ключ, можно его добавить в систему:

sudo wget -O - http://torrentstream.net/repo/torrentstream.public.key | apt-key add -

После этого нужно установить пакет torrentstream-engine:

sudo apt-get update

sudo apt-get install torrentstream-full


Запуск трансляции

Для запуска трансляции используется команда tsengine-stream, которая принимает такие параметры:


--name

Название трансляции


--source

Источник - URL потока, который будет транслироваться. В данный момент поддерживаются HTTP потоки с инкапсуляцией MPEG-TS


--destdir

Директория, в которую будет сохранен .tslive файл для данной трансляции и некоторые служебные файлы.


--bitrate

Битрейт потока в килобайтах в секунду. Для корректной работы потока следует указывать средний битрейт потока, который используется в качестве источника.


--piecesize

Размер в байтах куска для работы bittorrent-протокола. По умолчанию данный параметр принимает значение auto, при котором размер куска определяется автоматически.


--duration

Длительность потока в формате ЧЧ:ММ:СС. Этот параметр задает объем кэша для потока. Значение по умолчанию - 01:00:00 (т.е. система будет держать в кэше приблизельно один час трансляции).


--host

IP-адрес либо название хоста, на котором запускается трансляция. Для работы трансляции данный адрес должен быть доступен пользователям, которые будут смотреть трансляцию.


--port

Порт, на который будут приниматься входящие соединения. По умолчанию 7764.


--trackers

Список дополнительных трекеров, которые будут использоваться для обмена пирами. Адреса трекеров указываются через запятую. По умолчанию дополнительные трекеры не используются.


--provider-key

Ключ лицензии для коммерческих трансляций. По умолчанию не используется.


--maxclients

Максимальное количество клиентов, которые будут получать данные непосредственно от источника трансляции. По умолчанию 7.


Пример:

tsengine-stream --name test --source http://84.22.159.204:8006 --bitrate 350000 --host mysite.com --destdir /tmp/streams

После запуска трансляции в директории /tmp/streams будут созданы такие файлы:

test - кэш трансляции. Размер этого файла примерно равен длительность_потока_в_секундах * битрейт байт

test.tslive - с помощью этого файла пользователи могут подключаться к трансляции

test.restart - здесь хранится информация для корректного перезапуска трансляции

test.sauth - ключ для цифровой подписи трансляции


Также после запуска можно зайти на страницу трекера, встроенного в TS Engine:

http://mysite.com:7764/


На данной странице отображается некоторая информация по трансляции, а также здесь можно скачать файл трансляции .tslive по такой ссылке:

http://mysite.com:7764/file?name=test


Просмотр трансляции пользователями.

Если два основных способа просмтра трансляции

  1. пользователь скачивает файл .tslive и запускает его в TS Player
  2. организатор трансляции создает веб-страницу для просмотра трансляции, пользователи заходят на данную страницу и смотрят трансляцию через браузер.

В качестве шаблона для такой страницы можно использовать http://torrentstream.org/stream/test.php. Необходимо только изменить ссылку на файл .tslive в этой строке:

this.loadTorrent("http://torrentstream.net/streams/test2.mpegts.tslive");


Мониторинг трансляции

Программа tsengine-stream выводит всю отладочную информацию в STDERR. Успешный страрт трансляции выглядит примерно таким образом:

host:~# tsengine-stream --name test --source http://84.22.159.204:8006 --bitrate 350000 --host mysite.com --destdir /tmp/streams
tracker url: http://mysite.com:7764/announce/
bitrate: 350000
piece size: 262144
dest dir: /tmp/streams
------------------------
createlivestream: open stream: url http://84.22.159.204:8006 reader builtin
2012-07-16 12:56:36 stream: started input thread
2012-07-16 12:56:37 stream: created piece 0 speed 131.12 KiB/s
2012-07-16 12:56:38 stream: created piece 1 speed 183.15 KiB/s
2012-07-16 12:56:39 stream: created piece 2 speed 198.34 KiB/s
2012-07-16 12:56:40 stream: created piece 3 speed 196.96 KiB/s
2012-07-16 12:56:41 stream: created piece 4 speed 199.23 KiB/s
2012-07-16 12:56:43 stream: created piece 5 speed 203.08 KiB/s
2012-07-16 12:56:44 stream: created piece 6 speed 206.37 KiB/s

Основная выводимая информация: номера создаваемых кусков и скорость загрузки данных от источника трансляции.

Остановка трансляции осуществляется нажатием Ctrl-C