INTEGRITY Документация

Media over QUIC в Cloudflare

MoQ (Media over QUIC) представляет собой протокол для доставки медиаконтента в реальном времени поверх транспорта QUIC. Он обеспечивает эффективную потоковую передачу с низкой задержкой благодаря возможностям мультиплексирования и управления соединениями в QUIC.

MoQ разработан как сервис инфраструктурного уровня интернета, который обеспечивает доставку медиа для приложений, подобно тому как HTTP обеспечивает доставку контента, а WebRTC связь в реальном времени.

Cloudflare в настоящее время поддерживает draft-14 ↗ и draft-16 ↗ спецификации MoQ Transport. Полный список поддерживаемых сообщений для каждого черновика приведен в Таблица возможностей MoQ.

Самую актуальную документацию по протоколу смотрите в документации рабочей группы IETF.

Начало работы

Реле MoQ Cloudflare доступны через Панель управления Cloudflare ↗ и API. В течение бета периода они предоставляются бесплатно.

Создание реле

Каждое реле работает в изолированной области: ваши пространства имен, треки и объекты отделены от данных других реле. Вы определяете, кто может публиковать, а кто подписываться, выдавая токены с правами, ограниченными нужными каждому клиенту операциями.

Чтобы создать реле через API:

curl -X POST \
  "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/moq/relays" \
  -H "Authorization: Bearer $API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "My Relay"}'

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

Создавать и настраивать реле также можно на панели управления Cloudflare в разделе Медиа > Realtime > Реле MoQ.

Подключение издателя и подписчика (draft-16)

Draft-16 требует аутентификации. При открытии сессии MoQ клиенты передают токен в пути URL. Используя открытые moq-rs ↗ инструменты:

Издатель:

ffmpeg -stream_loop -1 -re -i input.mp4 \
  -f mp4 -movflags empty_moov+frag_every_frame+separate_moof+omit_tfhd_offset - \
  | moq-pub --name my-namespace \
    "https://draft-16.cloudflare.mediaoverquic.com/<publish_subscribe_token>"

Подписчик:

moq-sub --name my-namespace \
  "https://draft-16.cloudflare.mediaoverquic.com/<subscribe_token>" \
  | ffplay -hide_banner -

Подключение издателя и подписчика (draft-14)

Клиенты draft-14 подключаются к:

https://draft-14.cloudflare.mediaoverquic.com/

Протестировать draft-18

Cloudflare готовит поддержку draft-18 перед глобальным развертыванием. Чтобы протестировать работу с реле draft-18 уже сейчас, обратитесь к moq-interop-runner ↗.

Содержание

2 страницы, скопированные из документации Cloudflare для moq.

Pages