Интернет-плеер
с широким функционалом

category

Управление плейлистами

Загрузите или удалите плейлист

Icon

Введите ссылку на плейлист и код с экрана TV и email

Icon

Загрузите локальный файл плейлиста IPTV и email

Icon

Введите ссылку на плейлист или название файла и ID плейлиста

{ Разработчикам }

Vision - это кросс-платформенный медиаплеер. Используйте API для интеграции в свои медиа-сервисы.

1. Основное
Плейлист использует формат M3U, с дополнительными переменными.
Глобальными, которые касаются всего плейлиста и локальными, касаются конкретного канала.
Глобальная: url-tvg. Локальные tvg-rec, timeshift, group-title.

Пример плейлиста:

#EXTM3U url-tvg="http://example.com/epg.xml.gz"
#EXTINF:-1 group-title="Group_1" tvg-rec="1" timeshift="1",Channel 1
#EXTGRP:Group_1
http://example.com/stream/1.m3u8
#EXTINF:-1 group-title="Group_2" tvg-rec="1" timeshift="1",Channel 2
#EXTGRP:Group_2
http://example.com/stream/2.m3u8

Глобальная переменная записана в первой строке плейлиста после #EXTM3U.
Локальные для каналов Channel 1 и  Channel 2 после #EXTINF.
После перечисления всех переменных канала, например для первого канала это:
tvg-rec="1" - доступен архив (длинна архива корректируется наличием EPG в XMLTV);
timeshift="1" - доступен таймшифт;
group-title="Group_1" - название группы, которой принадлежит канал;
#EXTGRP:Group_1 - второй вариант названия группы, поддерживаются оба способа;
Channel 1 - непосресвенно само название канала канала;
В следующей строке идет ссылка на HLS поток,http://example.com/stream/1.m3u8.

2. Переменные
Глобальные переменные:
url-tvg - ссылка на загрузку XMLTV файла со списком программы передач и иконок для каналов(поддерживается так же .gz формат);

Локальные переменные:
group-title - название тематической группы канала;
Поддерживаемые названия групп описаны в разделе "Оформление" настоящего API;
tvg-rec - флаг архива, 1 - поддерживается, 0 - не поддерживается (по умолчанию 0);
timeshift - флаг таймшифта, 1 - поддерживается, 0 - не поддерживается (по умолчанию 0);

3. Оформление
Формат иконок каналов: PNG 120x90.
Список названий поддерживаемых тематических групп:
  • Общие
  • Зарубежные
  • Детские
  • Спорт
  • Музыкальные
  • Познавательные
  • Кино
  • Для взрослых
  • Новостные
4. XMLTV файл XMLTV - это широко распространенный стандарт описания программ передач. Подробную спецификацию формата можно найти здесь: http://wiki.xmltv.org/index.php/XMLTVFormat. Пример файла в формате XMLTV: <?xml version="1.0" encoding="utf-8"?> <tv generator-info-name="IPTVProvider"> <channel id="1"> <display-name lang="ru">Channel 1</display-name> <icon src="http://example.com/images/channel_2.png"/> </channel> <channel id="2"> <display-name lang="ru">Channel 2</display-name> <icon src="http://example.com/images/channel_2.png"/> </channel> <programme start="20190724120000 +0000" stop="20190724121500 +0000" channel="1"> <title lang="ru">Программа 1</title> </programme> <programme start="20190724121500 +0000" stop="20190724130000 +0000" channel="1"> <title lang="ru">Программа 2</title> </programme> <programme start="20190724100000 +0000" stop="20190724110000 +0000" channel="2"> <title lang="ru">Программа 1</title> </programme> <programme start="20190724110000 +0000" stop="20190724120000 +0000" channel="2"> <title lang="ru">Программа 2</title> </programme> Файл XMLTV состоит из двух частей: записи 'channel', содержащие информацию о каналах: 'id' - идентификатор канала; 'display-name' — название канала; 'icon' — логотип канала; записи 'programme', содержащие информацию о передачах: 'title' - название передачи; 'desc' — описание передачи; 'category' — категория передачи; Даты начала передачи (start) и окончания передачи (stop) описываются в формате "YmdHis P", где Y — год (4-значный), m — месяц (от 01 до 12), d — день (от 01 до 31), H — час (от 00 до 23), i — минута (от 00 до 59), s — секунда (от 00 до 59), P — смещение по часовому поясу (+0400 — соответствует Московскому времени). 5. Архив Доступ к архиву плеер осуществляет добавлением переменных archive и archive_end, определяющих начало и конец передачи в UNIX формате, в GET запрос URL'a HLS потока: http://example.com/stream/1.m3u8?archive=1407164412&archive_end=1407165000 6. Таймшифт Функцию Таймшифт (TimeShift) называют еще сдвигом во времени. В первую очередь функция позволяет смотреть передачи во время записи. Доступ к Таймшифт осуществляется добавлением переменной timeshift (время unixtime с которого нужно начать воспроизведение) и timenow (время unixtime когда включили воспроизведение(т.е. текущее время)). Трансляция осуществляется в live режиме. Пример запроса: http://example.com/stream/1.m3u8?timeshift=1483613831&timenow=1483628264 7. Плейлисты Загрузка плейлиста по коду - это функция, с помощью которой операторы онлайн телевидения могут передавать URL адрес плейлиста по коду отображенном на экране телевизора. Для добавления плейлиста нужно отправить GET запрос на адрес https://api.vision-app.net/collector/add_playlist указав переменные: code - код для загрузки с экрана устройства; playlist_url - url плейлиста в формате http(s)://example.com; email - email пользователя; В ответ сервер отправляет данные в формате JSON с переменными status и message. Существует два статуса в ответе сервера. "status": "success" - при получении данного статуса все данные приняты и плейлист будет загружен; "status": "faild" - произошла ошибка, неправильный формат данных или код не найден; Для добавления плейлиста как файла нужно отправить данные на адрес https://api.vision-app.net/collector/add_playlist_file?email={email}&code={code} указав вместо {code} - код для загрузки с экрана устройства и вместо {email} - email пользователя; переменная для загрузки файла playlist (длина имени файла до 200 символов, размер до 2мб) В ответ сервер отправляет данные в формате JSON с переменными status и message. Существует два статуса в ответе сервера. "status": "success" - при получении данного статуса все данные приняты и плейлист будет загружен; "status": "faild" - произошла ошибка, неправильный формат данных или код не найден; Для удаление плейлиста нужно отправить GET запрос на адрес https://api.vision-app.net/collector/del_playlist указав переменные: id - номер плейлиста; playlist - название плейлиста полностью или url адрес плейлиста; В ответ сервер отправляет данные в формате JSON с переменными status. Существует два статуса в ответе сервера. "status": "success" - при получении данного статуса все данные приняты и плейлист будет удален; "status": "faild" - произошла ошибка, неправильный формат данных или код не найден;

Установка

Загрузите приложение на свое устройство

image
Настройтие по инструкции для приставки MAG
Инструкция:

1. Пропишите адрес портала как http://stb.vision-app.net/

2. После запуска портала отобразится КОД для загрузки списка каналов, введите ссылку на плейлист и код с экрана TV в разделе "Управление плейлистами" -> "Добавить url m3u". После чего будет загружен плелист и начнется трансляция. Или добавьте плейлист файлом и код с экрана TV в разделе "Управление плейлистами" -> "Добавить файл".