Для ведения живой видео трансляции поток сначала должен быть доставлен на сервера публикации CDN. Источником трансляции может быть сервер, IP-камера, ноутбук со специальным ПО, другое кодирующее устройство (кодер). Существует несколько способов доставки потока на сервера публикации CDN.
В сети CDN поток будет размножен в необходимом количестве, преобразован в требуемый формат и транслирован конечным пользователям с оптимальных узлов раздачи. Трансляция инициируется по запросу от пользовательского плеера к серверу раздачи. Ограничений на тип пользовательского плеера не накладывается.
Возможно проведение трансляции одного события в нескольких битрейтах одновременно, в этом случае для каждого битрейта публикуется отдельный поток. В случае одновременного проведения нескольких трансляций из разных мест каждый поток публикуется отдельно.
После начальной конфигурации вам будет предоставлен URL страницы с тестовым плеером, на которой можно будет оценить раздачу потока через сеть CDN.

Бесплатное тестовое подключение в течении 14 дней!

Высокая скорость доставки контента любого объема для ваших интернет проектов по всей России

Записаться на тест

 

Требования к кодированию потока

 

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

  • видеокодек – H.264;
  • аудиокодек – AAC или MP3.

В настройках H.264 рекомендуется выставить следующие параметры для ключевых кадров (key frames):

  • фиксированный интервал между key frames;
  • вставка key frame раз в 1-2 секунды.

Если предполагается просмотр трансляции на устройствах iPhone первых трёх моделей, то к кодированию потока предъявляются более жёсткие требования:

 

  • Видеокодек – H.264 Baseline profile, level 3.0; требования к параметрам key frames те же.
  • Аудиокодек: AAC; MP3, sample rate 44100.

Налагаемые ограничения связаны с недостаточной процессорной мощностью iPhone первых трёх моделей. Начиная с модели iPhone 4 указанных ограничений нет.

Способы доставки потока

Возможные способы доставки потока в сеть CDNvideo:

  • RTMP-publish
  • RTMP-pull
  • RTSP-publish
  • RTSP-pull
  • MPEG_TS-publish

Ниже приведены описания каждого из перечисленных способов.

RTMP-publish

Способ может быть использован, если кодер поддерживает публикацию потока по протоколу RTMP (например Adobe FMLE, Apple QuickTime Broadcaster, ffmpeg). Для публикации выделяются два URL (основной и резервный) вида:
rtmp://01.domain.probro.ru:port/domain-publish rtmp://02.domain.probro.ru:port/domain-publish
Резервный URL следует использовать только при наличии достаточной полосы пропускания. Также выделяется пара Login/Password (запрашивается при подключении к серверу публикации).
Рекомендованные настройки в случае использования ПО Adobe FMLE (для других кодеров аналогично):

  • Format: H.264
  • Frame Rate: 30 fps
  • Input Size: 640×480
  • Bit Rate: 700 Kbps
  • Output Size: 640×480
  • Audio: 64k AAC mono 44100 Hz

В случае трансляции одного события в нескольких битрейтах одновременно на вкладке “Encoding Options” можно создать до 3-х потоков, указав для каждого битрейт и выходное разрешение. Имена потоков произвольные, указываются в строке “Stream:” через точку с запятой:

Encoding Options

С системными требованиями к Adobe FMLE можно ознакомиться по ссылке:

RTMP-pull

Способ может быть использован, если существует готовый RTMP-поток (origin). Необходимо предоставить URL потока вида:
rtmp://origin.server/app/stream
Можно указать два URL – основной и резервный. Сервера CDN будут настроены на забор потока и ретрансляцию.

Бесплатное тестовое подключение в течении 14 дней!

Высокая скорость доставки контента любого объема для ваших интернет проектов по всей России

Записаться на тест

RTSP-publish

Способ может быть использован, если кодер поддерживает публикацию потока по протоколу RTSP (например Apple QuickTime Broadcaster). Для публикации выделяются два URL (основной и резервный) вида:
rtsp://01.domain.probro.ru:PORT/domain-publish

rtsp://02.domain.probro.ru:PORT/domain-publish

Резервный URL следует использовать только при наличии достаточной полосы пропускания. Также выделяется пара Login/Password (запрашивается при подключении к серверу публикации). Имя потока может быть любым.

RTSP-pull

Способ может быть использован, если кодирующее устройство (обычно это IP-камера) поддерживает раздачу потоков по протоколу RTSP. Предварительно должны быть выполнены следующие условия:

  • доступность кодирующего устройства по постоянному публичному IP-адресу;
  • на кодирующем устройстве должен быть доступен для входящих соединений порт 554/tcp.

Для конфигурирования необходимо предоставить следующую информацию:

  • URL RTSP-источника;
  • название потока, например cam1.stream

Пример URL RTSP-источника для камеры Axis:

rtsp://login:secret@10.1.1.1:554/axis-media/media.amp
где пара login:secret – это, соответственно, логин и пароль для доступа к камере. В URL должен использоваться публичный IP-адрес кодирующего устройства.
Сервера публикации CDN будут настроены на забор потока по заданному URL.

MPEG_TS-publish

Способ используется для публикации RTP-потока в формате MPEG_TS. Необходимо предоставить следующую информацию:

  • IP-адрес кодирующего устройства;
  • количество публикуемых потоков ( например, «2»);
  • название каждого потока, (например, «stream1», «stream2»).

Для публикации выделяются адреса двух серверов (основной и резервный) и каждому по-току назначается отдельный UDP-порт. Например:

  • поток stream1, UDP-порт 1111, IP: 1.2.3.4 primary, 2.3.4.5 backup
  • поток stream2, UDP-порт 2222, IP: 1.2.3.4 primary, 2.3.4.5 backup

 

Кодирующее устройство должно быть настроено на отправку потока (потоков) по указан-ным адресам и портам. Потоки будут раздаваться под заданными именами.

 

Вещание конечным пользователям

 

Для вещания конечным пользователям используются следующие протоколы:

  • RTMP/RTMPT
  • RTSP
  • HTTP Dynamic Streaming (Adobe)
  • HTTP Live Streaming (Apple)
  • Smooth Streaming (Microsoft)

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

  • Вещание по протоколу RTMP, при этом на сервере раздачи задействован порт tcp/80, обычно используемый веб-серверами. Передаются стандартные RTMP-пакеты. Способ позволяет обойти большинство фильтров.
  • Вещание по протоколу RTMPT (RTMP tunneling over HTTP). Трафик RTMP инкапсулируется в HTTP, сервер раздачи отдаёт пакеты с порта tcp/80. С точки зрения межсетевого экрана такие пакеты ничем не отличаются от стандартного веб-трафика.

Бесплатное тестовое подключение в течении 14 дней!

Высокая скорость доставки контента любого объема для ваших интернет проектов по всей России

Записаться на тест

 

Порядок действий при подключении

  1. Для размещения ссылок на трансляцию вам будет выделен домен в зоне ответственности CDN вида customer.probro.ru. Для этого домена вы можете создать псевдоним (CNAME) в своей зоне ответственности DNS вида cdn.customer.ru (опционально).
  2. Оценить максимальное количество одновременных зрителей и предполагаемый средний битрейт и сообщить эти параметры нам для резервирования полосы пропускания (если предполагаемое максимальное количество одновременных зрителей превышает 1000).
  3. Выбрать способ публикации потока и сообщить нам. В зависимости от выбранного способа мы запросим или предоставим необходимую информацию.
  4. Настроить кодирующее устройство.
  5. Проверить показ трансляции на странице с тестовым плеером (URL страницы мы предоставим).
  6. Настроить плеер, размещаемый на вашем сайте, на отображение потоков через сеть CDN.