← Media over QUIC в Cloudflare / moq
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.