Архив форума Ace Stream

Для разработчиков => Torrent Stream API => Тема начата: Constantin от 11 Апреля 2012, 20:57:51

Название: TS Engine API
Отправлено: Constantin от 11 Апреля 2012, 20:57:51
С выходом версии движка 1.0.5 для всех разработчика программного обеспечения мы хотим открыть новые возможности по внедрению функционала ACE Stream/ Torrent Stream в любые программные продукты.

Для этого мы предоставляем новую версию ACE Stream Engine API ( Ранее TS Engine API  ) Смотрим здесь: http://wiki.acestream.media/Engine_API

Отталкиваясь от ваших вопросов и пожеланий мы будем ее поэтапно дополнять разными примерами, ну и дописывать то, что забыли.

В общем принимайте активное участие и создавайте свои уникальные продукты с функционалом и возможностями движка ACE Stream Engine ( TS Engine )

Обновление ACE Stream Engine (TS Engine API ) от 16.02.2013 (  применимо для версий 2.0 и выше )

P.S. В рамках проекта нами будет выпущен дистрибутив в виде отдельного движка ( без VLC ), что позволит вам использовать собственные плееры, не нагружая своих пользователей лишним софтом

Внимание! Начиная с версии 2.1.0 движок работает по API только с авторизированными клиентами ( внешними продуктами). Авторизация выполняется на этапе рукопожатия. Для успешной авторизации у клиента должен быть ключ продукта. Ключ продукта можно получить бесплатно, заполнив форму здесь (http://www.acestream.net/developers/request_key.php) Детальная информация здесь http://wiki.acestream.media/Product_key
Название: Re: TS Engine API
Отправлено: Constantin от 14 Апреля 2012, 20:48:57
Обновление TS Engine API от 14.04.2012

Добавлен пример
Название: Re: TS Engine API
Отправлено: NuisMons от 18 Августа 2012, 11:29:33
Здравствуйте, тут написано
Цитировать
Ко всем status_string (кроме idle, err, check) добавляются общие данные:
total_progress;immediate_progress;speed_down;http_speed_down;speed_up;peers;http_peers;downloaded;http_downloaded;uploaded
total_progress - сколько всего закачано по данному файлу
но для prebuf, по моему, это не так? для сидов мне пришлось брать 8, а скорость я беру из 5-го параметра
и еще вопрос, как передать magnet ссылку? 
Цитировать
LOADASYNC <request_id> INFOHASH <torrent_infohash> <developer_id> <affiliate_id> <zone_id>
это?
если что, вот мой "проект" для xbmc http://xbmc.ru/forum/showpost.php?p=32163&postcount=25
работает вроде отлично, но, бывает, после , примерно, 15 минут, поток просто прекращается
Название: Re: TS Engine API
Отправлено: Constantin от 21 Августа 2012, 20:27:33
Цитировать
"Ко всем status_string (кроме idle, err, check) добавляются общие данные:
total_progress;immediate_progress;speed_down;http_speed_down;speed_up;peers;http_peers;downloaded;http_downloaded;uploaded
total_progress - сколько всего закачано по данному файлу"

В документации все правильно, данные должны передаваться именно в таком формате, как описано в документации. Единственное, что можно предположить, что используется какая-то старая версия движка, где данные передавались не так. Посмотрите версию движка и номер сборки по логу, либо дайте нам лог движка. ( текущая версия: 1.0.6.6 )

Цитировать
"как передать magnet ссылку?  Так: LOADASYNC <request_id> INFOHASH <torrent_infohash> <developer_id> <affiliate_id> <zone_id> ?"

Магнет-ссылки движок сейчас не поддерживает ( в большинстве случаев долго собираются, увеличивая тем самым время до начала проигрывания, что не приемлемо для онлайна ). Указанная команда частично заменяет функционал магнет-ссылки, так как может загрузить торрент по инфохешу. Загрузка по инфохешу возможна за счет того, что мы используем сервера для кеширования торрентов. Если торрент закеширован на наших серверах, то его можно загрузить с помощью указанной команды
(по инфохешу). Торренты попадают в кеш на наших серверах, если хотя бы один раз осуществлялась их загрузка через Torrent Stream.

P.S. Извиняюсь за задержку с ответом, не заметил.
Название: Re: TS Engine API
Отправлено: NuisMons от 22 Августа 2012, 10:25:55
Спасибо за ответ.
Последний вопрос, можно ли отследить состояние буферизации, посылая события при помощи
Цитировать
PLAYBACK <video_url> <event>
т.е. если я пошлю, к примеру, что сейчас проигралось 4%, движок скажет мне, что, возможно, лучше сделать паузу, сменив
состояние с main:dl на main:buf при недостатке полученных данных? Или возможны только значения 0,25,50,75,100?
Извиняюсь, если я не очень понял документацию
Название: Re: TS Engine API
Отправлено: Constantin от 23 Августа 2012, 14:55:02
Спасибо за ответ.
Последний вопрос, можно ли отследить состояние буферизации, посылая события при помощи
Цитировать
PLAYBACK <video_url> <event>
т.е. если я пошлю, к примеру, что сейчас проигралось 4%, движок скажет мне, что, возможно, лучше сделать паузу, сменив
состояние с main:dl на main:buf при недостатке полученных данных? Или возможны только значения 0,25,50,75,100?
Извиняюсь, если я не очень понял документацию

Команда PLAYBACK может принимать только значения 0, 25, 50, 75 и 100.
Эта команда предназначена исключительно для информирования движка о
"количестве" проигранного контента и используется для ведения
статистики и корректной работы рекламных роликов.

На буферизацию движок уходит автоматически при нехватке данных в
буфере, повлиять на буферизацию при помощи API нельзя.
Название: Re: TS Engine API
Отправлено: Alexsandr01 от 18 Декабря 2012, 13:01:17
Так на какой порт устанавливать соединение ?
Если  62062 то получаю  - WSAECONNREFUSED
Если смотреть сниффером, порт каждый раз меняется при запуске tsengine

tsengine
2012-12-18 14:16:58 build 1901
2012-12-18 14:16:58 version 2.0.2

Название: Re: TS Engine API
Отправлено: Fix от 22 Января 2013, 13:09:29
Так на какой порт устанавливать соединение ?

похоже что порт записывается в файлик рядом с энжайном.
Название: Re: TS Engine API
Отправлено: Fix от 22 Января 2013, 13:13:43
Может кто-нить подсказать как унзать текущее наполение буфера чтоб приостановться. Т.к. сейчас если читать поток в цикле то буфер вычищается до нуля и движок начинает паузатся и похоже что возвращает мусор (а мог бы и подождать сам).
Название: Re: TS Engine API
Отправлено: Constantin от 19 Февраля 2013, 01:32:28
Обновление TS Engine API

Новая версия ACE Stream Engine API , представлена здесь: http://wiki.acestream.media/Engine_API
Название: Re: TS Engine API
Отправлено: aleksandrkr от 18 Апреля 2013, 11:53:18
Подскажите как сделать autoplay здесь.
Название: Re: TS Engine API
Отправлено: ekyt от 22 Июня 2013, 16:40:27
Здравствуйте.
Подскажите как правильно осуществить перемотку?
Клиент инициализирован HELLOBG version=3
Пытаюсь перемотать командой: EVENT seek position=1487. Далее ожидаю смену инфы о статусе движка: STATE PREBUFFERING или BUFFERING, но текущий статус (DOWNLOADING) не меняется.
Что я делаю не так?
 
Название: Re: TS Engine API
Отправлено: anton от 23 Июня 2013, 17:11:54
Здравствуйте.
Подскажите как правильно осуществить перемотку?
Клиент инициализирован HELLOBG version=3
Пытаюсь перемотать командой: EVENT seek position=1487. Далее ожидаю смену инфы о статусе движка: STATE PREBUFFERING или BUFFERING, но текущий статус (DOWNLOADING) не меняется.
Что я делаю не так?

Насколько я понял, вы хотите сделать перемотку для VOD (т.е. для обычного файла, не live трансляции)?

Если это так, то для перемотки нет необходимости отсылать какие-либо команды движку по API. Событие EVENT seek используется только для информирования движка о перемотке, но при этом движок никаких действий не выполняет.

Сама же перемотка осуществляется на уровне обращения к движку по ссылке на воспроисведение контента, которую движок выслал после окончания пребуферизации в команде START (это ссылка вида http://127.0.0.1:6878/content/8184c1807b56fffa6f2f6f406004565b448deb0a/0.565126139153). Все запросы по этой ссылке обрабатываются веб-сервером, встроенным в движок. С точки зрения плеера, эта ссылка представляет собой ссылку на видео-файл, который лежит на веб-сервере и доступен для скачивания по протоколу HTTP. Если плеер осуществляет перемотку, например, на середину файла, он должен отправлять HTTP Range запрос, в котором указывает позицию в байтах, с которой ему нужно получить данные. Движок распознает такие запросы и выдает нужную информацию. При этом если плеер запросил данные, которые еще не были физически закачаны в кеш, то начинается буферизация.
Название: Re: TS Engine API
Отправлено: ekyt от 23 Июня 2013, 21:14:02
Цитировать
Насколько я понял, вы хотите сделать перемотку для VOD (т.е. для обычного файла, не live трансляции)?
Да, все верно, я имел ввиду обычный файл и спасибо за развернутый ответ.
Название: Re: TS Engine API
Отправлено: Constantin от 11 Июля 2013, 00:41:38
Внимание! Начиная с версии 2.1.0 движок работает по API только с авторизированными клиентами ( продуктами). Авторизация выполняется на этапе рукопожатия. Для успешной авторизации у клиента должен быть ключ продукта. Ключ продукта можно получить бесплатно, заполнив форму здесь (http://www.acestream.net/developers/request_key.php)
Детальная информация здесь http://wiki.acestream.media/Product_key

Выход в релиз версии 2.1 запланирован на 07.2013, поэтому, убедительная просьба привести свои продукты  к полному соответствию API

P.S. Если ваши продукты не могут поддерживать используемые в Ace Stream рекламные форматы, дайте нам знать и вам будет предоставлена возможность использования тестового периода, с отключенной рекламой для вашего клиента/продукта. После тестового периода ваш продукт смогут использовать только те пользователи, которые будут использовать премиум-функцию "No ADs", обеспечивающую отключение рекламы. Вам также будет предоставлена возможность отключать рекламу для своих пользователях, на партнерских условиях. ( Информация о условиях будет представлена позже )
Название: Re: TS Engine API
Отправлено: Constantin от 18 Сентября 2013, 14:05:19
Уважаемые разработчики!   Если ваше приложение не поддерживает рекламные форматы Ace Stream, то вы можете использовать публичный ключ:

kjYX790gTytRaXV04IvC-xZH3A18sj5b1Tf3I-J5XVS1xsj-j0797KwxxLpBl26HPvWMm

При использовании публичного ключа Вашим приложением смогут пользоваться только те пользователи, у которая активирована опция "No ADs" (у кого отключена реклама Ace Stream). Если у пользователя не активирована указанная опция, то при попытке начать просмотр какого-либо контента движок отправит ошибку "No ADs option must be activated to use this product"

Ну а если  Ваше приложение поддерживает рекламные форматы системы Ace Stream, то Вы можете бесплатно получить персональный ключ продукта, отправим нам заявку через соответствующую форму (http://www.acestream.net/developers/request_key.php) и указав ссылку на скачивание вашего продукта для его проверки на соответствие. Приложения с персональным ключом продукта могут использовать все пользователи, независимо от наличия у них каких-либо премиум-опций.
Название: Re: TS Engine API
Отправлено: gladiatorX от 18 Сентября 2013, 21:17:02
У меня вопрос по запросу Ready Key=...


Исходные данные:

HELLOTS version=2.1.0 key=b8b17d6ef9
Публичный ключ: kjYX790gTytRaXV04IvC-xZH3A18sj5b1Tf3I-J5XVS1xsj-j0797KwxxLpBl26HPvWMm

Обрабатываю: sha1(b8b17d6ef9kjYX790gTytRaXV04IvC-xZH3A18sj5b1Tf3I-J5XVS1xsj-j0797KwxxLpBl26HPvWMm)
Получаю: 12057503e621b6848bc857a1645e27581ae96c5b
Отправляю: READY key=kjYX790gTytRaXV04IvC-12057503e621b6848bc857a1645e27581ae96c5b

В ответ получаю: NOTREADY.

ПОЧЕМУ?
Название: Re: TS Engine API
Отправлено: gladiatorX от 22 Сентября 2013, 09:58:06
Похоже этот форум мне не поможет. Где помощь, о которой здесь говорят? :-\