Перейти к содержимому

UDP / RTP для доставки цифрового ТВ

UDP-мультикаст доставляет ТВ-контент сразу многим получателям с помощью одного потока. Это экономит пропускную способность и отлично подходит для отелей, сетей провайдеров и спортивных арен. Подробнее о протоколе UDP.

UDP Multicast Diagram

Медиа-адрес настраивает место назначения UDP-потока. Формат этого адреса следующий:

udp://[interface@]address[:port][#options]

В квадратных скобках указаны необязательные параметры.

  • interface — имя локального интерфейса, например, eth0. Если это поле не указано, UDP-поток будет доставляться согласно системным маршрутам
  • address — IPv4-адрес мультикаст-группы, localhost или удалённого хоста для юникаст-доставки
  • port — сетевой порт для UDP-доставки. Если не указан, используется порт по умолчанию 1234

Дополнительные опции можно указать после символа #, разделяя их символом &, как параметры в обычном URL. Вот доступные опции:

  • socket_size=bytes — задаёт пользовательский размер системного сокета. Если не указано, используется значение из системной настройки: sysctl net.core.wmem_default
  • sync — включает передачу UDP в отдельном потоке с синхронизацией битрейта
  • no_sync — отключает синхронизацию битрейта, если она была включена глобально
  • cbr=Kbps — включает синхронизацию битрейта и постоянный битрейт. Подробнее о Постоянном битрейте (CBR)
  • ttl=n — управляет временем жизни датаграммы, чтобы предотвратить её бесконечную циркуляцию из-за ошибок маршрутизации. Значение по умолчанию — 32
  • sap — включает SAP. Подробнее о Session Announcement Protocol для мультикаста

Вот несколько примеров использования формата медиа-адреса в разных сценариях с Astra:

  • Мультикаст-доставка через определённый интерфейс: если вы хотите отправить UDP-поток в мультикаст-группу по адресу 239.255.0.1 через определённый сетевой интерфейс, например, eth0, адрес будет таким: udp://eth0@239.255.0.1
  • Мультикаст-доставка по системному маршруту: если вы хотите отправить UDP-поток в мультикаст-группу по адресу 239.255.0.2 и доверяете выбору маршрута системе, адрес будет: udp://239.255.0.2
  • Юникаст-доставка на конкретный хост: если вы отправляете юникаст-поток на определённый хост с IP-адресом 192.168.1.100, адрес будет: udp://192.168.1.100
  • Доставка на определённый порт: если вы хотите отправить UDP-поток в мультикаст-группу по адресу 239.255.0.3 на определённый порт, например, 5000, адрес будет: udp://239.255.0.3:5000
  • Включение CBR для подготовки потока к модуляции DVB: если вы отправляете UDP-поток на DVB-модулятор и нужен постоянный битрейт, например, 24000Kbit/s, адрес будет: udp://239.255.0.4#cbr=24000
  • Доставка на localhost с определённым портом: если нужно отправить UDP-поток сервису на этом же сервере, например, FFMpeg для транскодирования, используйте адрес: udp://127.0.0.1:11000

Чтобы настроить новый UDP-выход через веб-интерфейс, начните с выбора пункта “New Stream” в главном меню. Затем в списке выходов нажмите на значок шестерёнки и установите “Output Type” в значение UDP. Также можно изменить существующий поток, открыв его настройки, добавив новый выход и нажав на соответствующую шестерёнку.

UDP Output Options

Большинство опций, представленных в веб-интерфейсе, напрямую соответствуют компонентам UDP-адреса, описанным в разделе “Формат медиа-адреса”.