Ютуб ртмп что это

Facebook и YouTube предоставляют сервисы трансляций, которые позволяют вещать Live-видеопотоки на широкую аудиторию зрителей. В этой статье мы расскажем, как захватить видеопоток с веб-страницы по технологии WebRTC и отправить этот видеопоток одновременно в Facebook и на YouTube для прямой трансляции — сразу в два сервиса.

Перед тем как начать трансляцию, выясним, какие RTMP endpoints предоставляют Facebook и Youtube для стриминга. Далее нам нужно будет послать по этим RTMP адресам видеопотоки.

Facebook

Начнем, пожалуй с Facebook. Первым делом нужно отыскать кнопку Начать прямой эфир. Эта кнопка может выглядеть так:

Далее нужно еще раз нажать кнопку В эфир

И кликнуть по ссылке Click here для трансляции с внешних устройств, а не с самого Facebook.

Как Сделать Рестрим На Ютуб И Твич | Плагин Multiple RTMP

Далее кликаем Создать стрим

В результате, Facebook дает данные RTMP потока:

Из скриншота видно, что адрес сервера: rtmp://rtmp-api.facebook.com:80/rtmp/

А имя RTMP потока — это длинная уникальная строка:
1489000000111961?ds=1a=ATj9giGjaTTfgpNHBP

Именно эти два параметра нам потребуются для трансляции. Давайте их пока отложим и узнаем RTMP параметры для YouTube.

YouTube

Чтобы начать стримить с YouTube, нужно зайти на сайт https://youtube.com/live и нажать на кнопочку Upload

Далее выбираем Live Streaming и жмем Get Started.

Должна показаться панель стриминга, плеер и RTMP-настройки:

Из настроек видим, что RTMP адрес сервера rtmp://a.rtmp.youtube.com/live2, а имя потока скрыто и становится видимым по нажатию на кнопку Reveal.
Имя RTMP-потока для YouTube выглядит так: 8r0t-z4d-9xyj-2bcd

В итоге мы точно знаем куда слать RTMP-потоки:

Facebook YouTube
RTMP-адрес rtmp://rtmp-api.facebook.com:80/rtmp/ rtmp://a.rtmp.youtube.com/live2
Имя потока 1489000000111961?ds=1a=ATj9giGjaTTfgpNHBP 8r0t-z4d-9xyj-2bcd

Web Call Server

Сервер будет отвечать за прием видеопотока с вебкамеры по WebRTC и доставку на Facebook и YouTube по RTMP.

[RTMP] Стрим, прямая трансляция с камеры видеонаблюдения без ПК. Зачем это нужно и как настроить.

Сначала отправляем на сервер видеопоток с веб-камеры из браузера Google Chrome.

Для этой цели можно скачать пример HTML-страницы и скрипта для стриминга здесь и развернуть на своем веб-сервере три файла из этого архива:

  • streamer.html
  • streamer.js
  • flashphoner.js

Код стандартного демо-примера для стриминга доступен здесь. Допустим мы открыли демо. Коннектимся к серверу и отправляем на сервер WebRTC видеопоток с именем 5dfd. Это работает так:

Видео захватывается с камеры браузера (в данном случае с виртуальной), и уходит на сервер WCS5 по технологии WebRTC, в кодеках VP8+Opus или H.264+Opus в зависимости от устройства и версии браузера.

Следующим шагом будет перенаправление этого видео на Facebook.

Web Call Server имеет REST API, которое позволяет, зная имя потока, перенаправить WebRTC видеопоток на RTMP.

https://wcs5-eu.flashphoner.com:8888/rest-api/push/startup

В результате WCS перенаправляет WebRTC видеопоток на Facebook по длинному адресу:

Еще по теме:  Как заработать кроме Ютуба

rtmp://rtmp-api.facebook.com:80/rtmp/1489000000111961?ds=1a=ATj9giGjaTTfgpNHBP

В этом адресе совмещены RTMP URL и имя видеопотока.

Через несколько секунд в Facebook появится видео:

https://wcs5-eu.flashphoner.com:8888/rest-api/push/startup

Сервер вернет 200 OK и заберет поток на YouTube:

В итоге видим, что стрим транслируется и раздается на оба сервиса: и на Facebook и на YouTube.

https://wcs5-eu.flashphoner.com:8888/rest-api/push/find_all

Останавливаем ретрансляции двумя вызовами /push/terminate

https://wcs5-eu.flashphoner.com:8888/rest-api/push/terminate
https://wcs5-eu.flashphoner.com:8888/rest-api/push/terminate

Пишем JavaScript / HTML код

Работать с REST API, пожалуй, приходилось каждому или почти каждому разработчику. Поэтому мы не будем здесь описывать код, реализующий отправку REST/HTTP запросов.

Вместо этого расскажем как видеопоток с веб-страницы и вебкамеры доходит до сервера.

Как мы упоминали выше, для создания минимального клиента, захватывающего видео, необходимо три скрипта:

  • streamer.html
  • streamer.js
  • flashphoner.js

streamer.html

Эта страница содержит div-элемент localVideo, в котором будет отображаться захват с камеры, и кнопку Start для начала трансляции.

The streamer

Скрипт трансляции работает с четырьмя основными функциями API:

  • Flashphoner.init(); //отвечает за инициализацию API.
  • Flashphoner.createSession(); //отвечает за подключение к серверу
  • session.createStream(); //отвечает за создание видеопотока
  • session.createStream().publish(); //отвечает за отправку видеопотока

var localVideo; function init() < Flashphoner.init(); localVideo = document.getElementById(«localVideo»); >function start() < Flashphoner.createSession().on(Flashphoner.constants.SESSION_STATUS.ESTABLISHED, function (session) < //session connected, start streaming startStreaming(session); >).on(Flashphoner.constants.SESSION_STATUS.DISCONNECTED, function () < setStatus(«DISCONNECTED»); >).on(Flashphoner.constants.SESSION_STATUS.FAILED, function () < setStatus(«FAILED»); >); > function startStreaming(session) < session.createStream(< name: «stream222», display: localVideo, cacheLocalResources: true, receiveVideo: false, receiveAudio: false >).on(Flashphoner.constants.STREAM_STATUS.PUBLISHING, function (publishStream) < setStatus(Flashphoner.constants.STREAM_STATUS.PUBLISHING); >).on(Flashphoner.constants.STREAM_STATUS.UNPUBLISHED, function () < setStatus(Flashphoner.constants.STREAM_STATUS.UNPUBLISHED); >).on(Flashphoner.constants.STREAM_STATUS.FAILED, function () < setStatus(Flashphoner.constants.STREAM_STATUS.FAILED); >).publish(); > function setStatus(status)

Скачать архив с скриптами streamer.html и streamer.js можно здесь.

Чтобы трансляция заработала из Google Chrome, нужно выложить скрипты трансляции на веб-хостинг, который работает по https.

Web Call Server может быть установлен на отдельном Linux-хосте. Скачать сервер для тестов можно здесь. После того, как сервер установлен и запущен, он будет принимать входящие вебсокет-соединения по адресам: ws://host:8080 и wss://host:8443

Таким образом, мы показали как захватить видео с вебкамеры и доставить видеопоток до сервера с помощью трех скриптов. Если все было сделано правильно, скрипт должен вывести статус PUBLISHING. Это означает, что WebRTC поток успешно доставляется на сервер и может быть ре-транслирован на YouTube или Facebook с помощью REST API.

Ссылки

Web Call Server — WebRTC сервер с возможностью ретрансляции на YouTube и Facebook
Web SDK — JavaScript API для внедрения кода трансляции в веб-страницу.
REST API — управление ретрансляциями WebRTC видеопотоков
Source — исходный код примера трансляции потока с веб-страницы на сервер.
YouTube Live — сервис живых трансляций от YouTube
Facebook Live — сервис живых трансляций от Facebook

  • Flashphoner corporate blog
  • Website development
  • JavaScript
  • Programming
  • Development of communication systems

Источник: h.amazingsoftworks.com

Создание RTMP/RTSP-publish

../_images/live__stream_name.png

  1. В личном кабинете перейдите в раздел CDN .
  2. Перейдите на вкладку Трансляции и нажмите кнопку Создать ресурс .
  3. Выберите тип ресурса. Первый поток создается автоматически. Добавляйте или удаляйте потоки по выбору.
  4. Введите желаемое название потока или сформируйте его автоматически, нажав иконку Кубики .
  5. Выберите качество потока из выпадающего списка.
Еще по теме:  Где Ютуб на телевизоре

Внимание При способе публикации RTMP/RTSP-publish доступно создание не более 10 потоков.

Ресурс создан. Вы будете перенаправлены на вкладку Инструкция по настройке .

Для публикации выделяются два URL (основной и резервный) и имя потока с указанием авторизационного токена. Выберите конкретный способ публикации для формирования корректных ссылок.

Пример для RTMP-publish:

  • URL primary: rtmp://a.r.cdnvideo.net/livemaster/
  • URL backup: rtmp://b.r.cdnvideo.net/livemaster/`
  • Streams: m97yox4iyw_0k1z5tsvxkb?auth=jkJt47ncuaFo78z1WXgAgJp

Резервный URL следует использовать только при наличии достаточной полосы пропускания. При создании нескольких потоков каждому из них будет выделен свой Stream .

Для публикации нескольких качеств в некоторых энкодерах (например, Wirecast) требуется вводить поле Streams по отдельности. Чтобы показать Streams по отдельности нажмите на Стрелочку вниз .

Если вы пользуетесь, например FMLE 3.2, скопируйте поле целиком.

../_images/live__link_to_pub.png

Проверка трансляции

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

Выберите комфортный способ просмотра: просмотр созданных потоков по отдельности или все вместе.

Используйте фрейм Код для встраивания для размещения плеера на вашем ресурсе.

Транскодирование

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

  • протокол: RTMP, RTSP, MPEG_TS,
  • кодек для видео: h.264,
  • кодек для аудио: AAC/mp3.

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

Для подключения услуги транскодирования на странице создания или редактирования RTMP-publish ресурса необходимо:

  1. Указать исходный поток, который вы будете публиковать.
  2. Выбрать подходящий пакет транскодирования (параметры пакета можно увидеть, нажав кнопку Подробности ).
  3. Нажать кнопку Создать ресурс или Сохранить .

Если вы заказываете услугу транскодирования, то для ресурса указывается только один входной поток.

DVR и запись потока

Для подключения услуги в рамках ресурса необходимо активировать переключатель DVR и запись потока .

Если вы хотите, чтобы записываемые потоки шли в рамках одного master плейлиста (например, если записываемые потоки различаются лишь качеством), активируйте опцию Использовать адаптивный playlist (smil) .

Для каждого из сгенерированных потоков можно выбрать свои настройки записи и DVR.

Настройки для потока

  1. Выберите тип трансляции:
    • Кратковременная трансляция — запись идет не более 12 часов, целиком доступна после окончания. Подходит для записи единоразовых мероприятий (вебинаров, спортивных трансляций и т.д.).
    • Постоянная трансляция — ведется запись исключительно определенного окна (последние N часов, где N — не больше 12). После окончания трансляции доступно только это окно. Подходит для вещания 24/7 (телеканалов, видеонаблюдения и т.д.).
    • (опционально) Активируйте переключатель DVR .
    • во время записи при включенном DVR плеер показывает Live-поток с возможностью перемотки до начала записи, при выключенном — оригинальный Live-поток.
    • после окончания записи при включенном DVR плеер показывает запись, при выключенном — Live-поток.
    Еще по теме:  Как удалить шортс из Ютуб канала

    Если запись активна, то в интерфейсе появляется возможность сбросить окно DVR (начать накапливать окно заново). Для этого необходимо нажать кнопку Сброс DVR .

    Если на шаге 1 вы выбрали кратковременную трансляцию

    • время и путь хранения записи;
    • Timeout записи;
    • способ начала записи.

    Настройка Время хранения записи позволяет выбрать период времени после окончания записи, по истечении которого она удаляется, чтобы освободить место в хранилище.

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

    Настройка Timeout записи позволяет выбрать период времени при недоступности Live-потока, в течение которого запись не считается завершенной и продолжается, ожидая возобновления публикации потока.

    Настройка Способ начала записи позволяет выбрать, когда именно начнется запись:

    • По публикации — запись начнется с минимальной задержкой после начала публикации потока.
    • По кнопке — запись начнется в тот момент, когда вы нажмете кнопку Начать запись (становится активной только после создания ресурса). Запись остановится либо после нажатия кнопки Остановить запись , либо после завершения публикации Live-потока.
    • По расписанию — запись начнется и закончится в определенные моменты мирового времени (если поток будет опубликован).

    Если на шаге 1 вы выбрали постоянную трансляцию

    Примените следующие настройки:

    • продолжительность DVR;
    • Timeout DVR;
    • cпособ начала записи.

    Настройка Продолжительность DVR позволяет выбрать размер окна, которое будет записано и доступно для DVR. Можно выбрать подходящее значение из выпадающего списка или указать другое (в минутах).

    Настройка Timeout DVR позволяет выбрать период времени при недоступности Live-потока, в течение которого запись не считается завершенной и продолжается, ожидая возобновления публикации потока.

    Настройка Способ начала записи позволяет выбрать, когда именно начнется запись:

    • По публикации — запись начнется с минимальной задержкой после начала публикации потока.
    • По кнопке — запись начнется в тот момент, когда вы нажмете кнопку Включить DVR (становится активной только после создания ресурса). Запись остановится либо после нажатия кнопки Отключить DVR , либо после завершения публикации Live-потока.

    Источник: cloud.ru

    RTMP-трансляции в Telegram

    В API-схеме Telegram появилось упоминание поддержки протокола RTMP для ведения трансляций.

    Это позволит стримерам вести трансляции не только через приложение Telegram, но и через сторонние программы, например, OBS Studio. Такое ПО позволяет комбинировать источники видео и аудио, автоматизировать трансляцию, отображать чат и сообщения о пожертвованиях. RTMP является стандартом и поддерживается на других платформах для прямых трансляций, например, YouTube и Twitch.

    Сейчас для того, чтобы вести трансляцию из стороннего ПО, приходится использовать библиотеки. В частности, прямую трансляцию через OBS можно вести только с помощью эмулированной камеры через Telegram Desktop и Telegram для macOS.

    Подписывайтесь на наши каналы в Telegram, Telegram Info и Beta Info, чтобы всегда знать о последних новостях мессенджера.

    Источник: tginfo.me

    Рейтинг
    ( Пока оценок нет )
    Загрузка ...