← Cloudflare Stream / stream / viewing-videos
Использование собственного плеера
Cloudflare Stream совместим со всеми видеоплеерами, поддерживающими HLS и DASH. Это стандартные форматы потокового вещания, которые широко поддерживаются веб-браузерами, мобильными операционными системами и медиаустройствами для стриминга.
Руководства для конкретных платформ:
Использование манифестов HLS и Dash
URL
У каждого видео и прямой трансляции есть собственный уникальный манифест HLS и DASH. Получить доступ к манифесту можно, заменив <UID> на UID вашего видео или прямой трансляции и заменив <CODE> на ваш уникальный код клиента в URL ниже:
https://customer-<CODE>.cloudflarestream.com/<UID>/manifest/video.m3u8https://customer-<CODE>.cloudflarestream.com/<UID>/manifest/video.mpdВоспроизведение LL-HLS Бета
Если для Live Input включена бета-версия Low-Latency HLS, добавьте строку запроса ?protocol=llhls к URL манифеста HLS, чтобы протестировать манифест с низкой задержкой в пользовательском плеере. См. раздел Запуск прямой трансляции чтобы включить эту опцию.
https://customer-<CODE>.cloudflarestream.com/<UID>/manifest/video.m3u8?protocol=llhlsDashboard
-
На панели управления Cloudflare перейдите к разделу Stream страницу.
Перейдите в Видео ↗ -
В списке видео найдите нужное видео и выберите его.
-
Из раздела Настройки вкладке найдите URL манифеста HLS и Dash Manifest URL.
-
Выберите Нажмите, чтобы скопировать под опцией, которую вы хотите использовать.
API
См. Документация API сведений о видео Stream чтобы узнать, как получить URL манифеста с помощью Cloudflare API.
Настройка манифестов с указанием доступной клиенту пропускной способности
Каждый манифест HLS и DASH содержит несколько вариантов разрешения вашего видео или прямой трансляции. Плеер использует логику адаптивного битрейта, чтобы оценить доступную зрителю пропускную способность и выбрать оптимальное разрешение для воспроизведения. У каждого плеера эта логика своя, и большинство из них позволяют настроить или переопределить значения пропускной способности либо разрешения.
Если в вашем плеере нет таких параметров настройки или их нужно переопределить, можно добавить clientBandwidthHint query param to the request to fetch the manifest file. This should be used only as a last resort, we recommend first using customization options provided by your player. Remember that while you may be developing your website or app on a fast Internet connection, and be tempted to use this setting to force high quality playback, many of your viewers are likely connecting over slower mobile networks.
clientBandwidthHintfloat- Возвращает только то представление видео, которое ближе всего к указанному значению пропускной способности (в Мбит/с). Это можно использовать, чтобы задать конкретный уровень качества. Если указанное значение приведёт к недействительному или пустому манифесту, подсказка игнорируется.
См. пример ниже, чтобы отобразить только то представление видео, битрейт которого ближе всего к 1.8 Мбит/с.
https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/manifest/video.m3u8?clientBandwidthHint=1.8Воспроизведение прямых трансляций в нативных приложениях с задержкой менее 1 секунды
Если вам нужна сверхнизкая задержка, а пользователи смотрят прямые трансляции в нативных приложениях, транслировать видео можно с помощью задержка glass-to-glass менее 1 секунды ↗, используя для воспроизведения SRT или RTMPS.
Воспроизведение по SRT и RTMPS встроено в ffmpeg ↗. You will need to integrate ffmpeg with your own video player, neither AVPlayer (iOS) ни ExoPlayer (Android) изначально поддерживают воспроизведение SRT или RTMPS.
Мы рекомендуем использовать ffmpeg-kit ↗ как кроссплатформенную обёртку для ffmpeg.