Ace Stream Forum

Для разработчиков => Проблемы и решения => Тема начата: madsen от 03 Апрель 2018, 21:48:09

Название: Начало работы с Ace Stream АПИ
Отправлено: madsen от 03 Апрель 2018, 21:48:09
Здравствуйте. На спортивных сайтах выкладывают contentId матча. Скажите, пожалуйста, как по этому Id можно получить m3u8 ссылку
Название: Re: Начало работы с Ace Stream
Отправлено: Benny от 03 Апрель 2018, 23:06:38
как по этому Id можно получить m3u8 ссылку
Добавив его (CID) в плейлист медиа-сервера, например. После можно скачать (m3u8) плейлист из веб-интерфейса медиа-сервера.
Название: Re: Начало работы с Ace Stream
Отправлено: madsen от 03 Апрель 2018, 23:27:18
как по этому Id можно получить m3u8 ссылку
Добавив его (CID) в плейлист медиа-сервера, например. После можно скачать (m3u8) плейлист из веб-интерфейса медиа-сервера.
Решусь задать дилетантский вопрос.  Я не могу стутчаться, как здесь описано http://acestream.net/demos/http-api/ с контент id и получать m3u8?  Хочу написать простенькую прогу, которая бы принимала contentId, получала бы ссылку на m3u8 и пихала бы её в player. Как я понимаю, нужно ip адрес другой, не тот, который в примере
Название: Re: Начало работы с Ace Stream
Отправлено: Benny от 03 Апрель 2018, 23:48:46
Хочу написать простенькую прогу, которая бы принимала contentId, получала бы ссылку на m3u8 и пихала бы её в player.
Это уже сделано - посредством встроенного в движок прокси-сервера или "стороннего" - http://mytalks.ru/index.php?topic=4506.0

Как оба эти подхода, так и свой "велосипед" требуют запущенной копии движка Ace Stream (локального либо удаленного) - именно для того, чтобы "преобразовать" contentId (Р2Р-контент) в другой формат (например в HLS m3u8-плейлист).
Название: Re: Начало работы с Ace Stream
Отправлено: Benny от 08 Апрель 2018, 00:07:48
запустив движок на компьютере, я могу отправлять запрос вида И получать m3u8?
Конкретно из примера в цитате в ответе вернется json, в котором, среди прочего, будет и ссылка на m3u8 HLS плейлист.

Будет гораздо проще, если не играться в угадайку, а сразу внятно описать чего хочется, например:
- имеется исходный контент в виде .торрент файла;
- требуется  - скачать его посредством Ace Stream и получить на выходе m3u8 плейлист;
- целевое устройство для воспроизведения этого плейлиста - Apple TV.
Название: Re: Начало работы с Ace Stream
Отправлено: madsen от 08 Апрель 2018, 00:15:48
Хочу написать простенький клиент для ios (для личного пользования), который воспроизводит acestream контент.
Как я понял из http://acestream.net/demos/http-api/ один из вариантов - делать запрос на Api и получать m3u8 ссылку, а затем встявлять её в плеер своего клиента.
Пример из ссылки:
Цитировать
http://127.0.0.1:6878/ace/manifest.m3u8?format=json&sid=0.6045503369100068&transcode_audio=1&transcode_mp3=0&use_api_events=1&use_api_stop=1&id=94c2fd8fb9bc8f2fc71a2cbe9d4b866f227a0209

{
    "response": {
        "playback_url": "http://127.0.0.1:6878/ace/r/5410b27fc567c35c8547e3b69b141215ce3a1fd7/ef0609c43e560697329d93dae4571edb.m3u8",
        "stat_url": "http://127.0.0.1:6878/ace/stat/5410b27fc567c35c8547e3b69b141215ce3a1fd7/ef0609c43e560697329d93dae4571edb",
        "command_url": "http://127.0.0.1:6878/ace/cmd/5410b27fc567c35c8547e3b69b141215ce3a1fd7/ef0609c43e560697329d93dae4571edb",
        "event_url": "http://127.0.0.1:6878/ace/event/5410b27fc567c35c8547e3b69b141215ce3a1fd7/ef0609c43e560697329d93dae4571edb",
    },
    "error": null
}

 У меня есть только ContentID, который я беру на одном из сайтов.

Какая схема моих дествий, объясните, пожалуйста? Если я скачаю и запущу движок на компьютере, я могу отправлять запрос вида :
Цитировать
http://ip адрес компьютера :port /ace/manifest.m3u8?format=json&id=клнтентID, взятого с сайта
И получать в ответе json содержащий m3u8 ?
 Есть ли ещё альтернативный вариант?
Название: Re: Начало работы с Ace Stream
Отправлено: Benny от 08 Апрель 2018, 00:55:58
И получать в ответе json содержащий m3u8 ?
Да, но именно для плеера проще отправлять ссылку вида
http://IP:PORT/ace/manifest.m3u8?format=m3u8&id=a5a7e10612daa2b56fd30c95acf4a1ea580bf21a
и получать в ответе готовый m3u8 плейлист.
Есть ли ещё альтернативный вариант?
Для "непрограммиста" так, например:
- запускаем на ПК Ace Stream;
- заходим в "Медиа-сервер", затем в "Настройки медиа-сервера" и выбираем "HLS" для "live/vod stream type";
- открываем на iOS любой плеер с поддержкой URL в качестве источника и указываем там URL вида http://IP:PORT/ace/getstream?id=a5a7e10612daa2b56fd30c95acf4a1ea580bf21a
Название: Re: Начало работы с Ace Stream
Отправлено: madsen от 08 Апрель 2018, 09:24:10
Спасибо за разъяснения
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: madsen от 04 Сентябрь 2018, 22:44:29
https://youtu.be/BWGa3xT1PEc (https://youtu.be/BWGa3xT1PEc)
Написал таки клиента для ios. Суть такая: на windows запущен движок, со смартфона делается http запрос, в ответ приходит ссылка, вставляется в плеер.
Но не могу сказать, что такой вариант меня бы устроил. Нет возможности держать сервер постоянно в рабочем состоянии.  Хочу, чтобы  не было взаимодействия с windows-компьютером. Подскажите, пожалуйста, что нужно для того, чтобы реализовать на ios. Что почитать, с чем ознакомиться?
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Benny от 04 Сентябрь 2018, 23:33:25
Нет возможности держать сервер постоянно в рабочем состоянии.
Что мешает держать сервер в любом другом месте - VPS/VDS (linux/arm), любой линуксовый АРМ мини-хост (RPi и его клоны) и т.д?
что нужно для того, чтобы реализовать на ios. Что почитать, с чем ознакомиться?
Нужно "всего лишь" реализовать движок Ace Stream "c нуля" под iOS/macOS, при этом исходников нет (и у нас пока в планах нет открывать исходники движка).
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: madsen от 05 Сентябрь 2018, 07:56:50
А если говорить про реализацию движка на ios, то каковы масштабы работы, с какими сложностями пришлось бы столкнуться и что вообще нужно знать для этого? Просто пока движок представляет "чёрный ящик" и как он работает, непонятно
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Benny от 05 Сентябрь 2018, 11:59:54
то каковы масштабы работы, с какими сложностями пришлось бы столкнуться и что вообще нужно знать для этого?
Если грубо, и касаться только части "смотреть", но не "вещать", то нужно написать свою торрент-качалку+HTTP прокси сервер и связать это все слоем АПИ.
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: madsen от 05 Сентябрь 2018, 20:15:05
Какую-то более конкретную, точечную информацию, если вдруг руки дойдут, и знаний хватит, я смогу здесь получить ?
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Benny от 05 Сентябрь 2018, 20:25:46
Какую-то более конкретную, точечную информацию
Нет конечно. Разве это не очевидно из фразы "у нас пока в планах нет открывать исходники движка"?

Да, и если вдруг и это не очевидно - для нас не проблема портировать Ace Stream под iOS/macOS. Проблема в том, что нам не нужно приложение, которое нельзя опубликовать в яблочном аппсторе.
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: madsen от 07 Январь 2019, 19:22:39
Цитировать
Если грубо, и касаться только части "смотреть", но не "вещать", то нужно написать свою торрент-качалку
а подскажите, как по contentId получить торрент файл или поток?
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Benny от 08 Январь 2019, 00:32:57
как по contentId получить торрент файл или поток?
"получить" как и откуда? Если локально, то движок сохраняет торрент-файлы в .ACEStream/collected_torrent_files/
А если через http АПИ и "удаленно", то см. http://wiki.acestream.org/wiki/index.php/Engine_HTTP_API#How_to_get_HTTP_stream
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: madsen от 08 Январь 2019, 21:49:44
я пытаюсь разобраться, как работает движок
Цитировать
Если грубо, и касаться только части "смотреть", но не "вещать", то нужно написать свою торрент-качалку+HTTP прокси сервер и связать это все слоем АПИ.
Ладно, есть не ContentId, есть info hash. С помощью него вы качаете файл с видео трансляции?
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Benny от 08 Январь 2019, 22:31:45
я пытаюсь разобраться, как работает движок
тогда начинать нужно с http://www.bittorrent.org/beps/bep_0003.html
есть infohash. С помощью него вы качаете файл с видео трансляции?
в том числе. Про инфохеш проще понять на примере https://ru.wikipedia.org/wiki/Magnet-%D1%81%D1%81%D1%8B%D0%BB%D0%BA%D0%B0
Но в целом infohash, content ID и транспортные файлы (.torrent или .acelive) это все всего лишь разные способы достижения одной и той же цели - получить информацию об участниках и ресурсах Р2Р сети.
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Dimon от 09 Апрель 2019, 17:04:57
Не совсем понимаю, как скрыть ip адрес сервера. Например, если запускаешь стрим на виртуальной машине, на компьютере, то в расшифровке acelive файла анонс отображается например так httр://192.168.0.1:7282/announce

То есть, отображается ip локальной машины. Но, если добавляешь трансляцию на удалённом сервере, то в анонсе отображается ip адрес сервера httр://ip_адрес_сервера:порт/announce

А если сервер скрыт за антидоссом, это практически уязвимость для различных манипуляций нехорошими людьми. При знании реального ip адреса сервера, сам антидосс становится совершенно бесполезным.

Читал документацию, но так и не понял, как формируется этот анонс. Пробовал добавлять --tracker и --metatracker, это работает, но вместе с ними всё равно отображается и реальный ip адрес сервера. Может есть решение этого вопроса? Ткните пожалуйста носом, не могу сам найти.
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Benny от 09 Апрель 2019, 17:30:30
Пробовал добавлять --tracker и --metatracker, это работает, но вместе с ними всё равно отображается и реальный ip адрес сервера.
см. http://wiki.acestream.org/wiki/index.php/Streaming - для начала попробовать --skip-internal-tracker
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: madsen от 13 Июнь 2019, 10:28:33
есть infohash. С помощью него вы качаете файл с видео трансляции?
в том числе.
То есть ещё что-то необходимо помомио infohash? Например, я сформировал магнет-ссылку на телеканал
magnet:?xt=urn:btih:c53125c145f7d89e53633cf4fc1f1f48ac389002. Скачать по ней трансляцию не получиться через uTorrent? Она просто добавляется в список торрентов, пишет, что загружается, но процесс сам не идёт
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: Benny от 13 Июнь 2019, 10:39:54
Скачать по ней трансляцию не получиться через uTorrent?
нет конечно, при чем здесь "uTorrent" вообще? А через тот же Ace Player открывается "МТВ Ру" по этому инфохешу.
Название: Re: Начало работы с Ace Stream АПИ
Отправлено: madsen от 13 Июнь 2019, 10:46:50
Да, открывается.
Цитировать
нет конечно, при чем здесь "uTorrent" вообще?
Ну вы говорили, что нужно первым этапом написать "свою торрент-качалку". До того, как приступить к написанию своей, нужно же понять что и как качать. Вот этот клиент качает же файлы. Вот мне стало интересно, скачает он или нет ;D