Я хочу создать приложение для потоковой передачи видео в реальном времени с помощью флаттера, поэтому я провел небольшое исследование, чтобы сделать это, и нашел SDK под названием mux и другой под названием agora, поэтому возникает вопрос, в чем разница между mux и agora? Каков наилучший способ для потоковой передачи видео в прямом эфире во флаттере? И есть ли другой SDK для этой цели?
В чем разница между agoraи mux? И как лучше всего транслировать живое видео во флаттере?
Ответы (2)
Mux и Agora являются службами потокового видео, но они используют две разные базовые технологии для доставки видеопотоков.
Mux по своей сути является провайдером CDN, который отлично подходит для воспроизведения предварительно записанных видеофайлов. Mux использует традиционный вход RTMP и потоковую передачу HLS для живого видео. Это делает его похожим на использование YouTube Live, и вы увидите около 3-7 секунд задержки между моментом трансляции видеокадра и временем его просмотра пользователем из аудитории. Эта технология довольно распространена, и я бы порекомендовал взглянуть на нее. в этих видео на YouTube, которые объясняют концепцию (Архитектура потокового вещания: https://youtu.be/RvsaosnEHWc и что такое RTMP: https://youtu.be/gL-yqay_-D4)
Agora по своей сути представляет собой глобальную виртуальную сеть, оптимизированную для видео в реальном времени и использующую собственный протокол UDP. Оптимизация относится к интеллектуальной маршрутизации сети, которая глобально анализирует сетевой трафик и обеспечивает доставку пакетов UDP с минимальной задержкой. С сервисом Agora задержка намного ниже: около 250-500 мс и до 750 мс до 1 с в зависимости от сетевых подключений пользователей.
У Agora есть пакет Flutter для основного SDK, но есть также версия Flutter UIKit с низким кодом, которая использует основной пакет SDK, но также включает логику для построения представления видео, поэтому вам не нужно беспокоиться о настройке пользовательского интерфейса.
Agora Flutter UIKit: https://pub.dev/packages/agora_uikit Или, если вы хотите создать свой собственный пользовательский интерфейс, ознакомьтесь с кратким руководством Agora Flutter: https://www.agora.io/en/blog/adding-live-interactive-video-streaming-using-the-agora. -flutter-sdk/
Отказ от ответственности Я являюсь разработчиком-евангелистом Agora, и команда DevRel создала и поддерживает Agora Flutter UIKit.
Мы используем MUX и AWS IVS для большинства наших проектов.
MUX прост в использовании и имеет лучшую аналитику, чем IVS. Цены очень похожи (не забудьте проверить и понять цены)
Мы попробовали Agora для 1 проекта, и это было хорошо, но, в конце концов, это было дороже, а данные MUX были намного лучше.
Также есть каналы AWS MediaLive. Более гибкий и настраиваемый, но намного более сложный и дорогой, но он действительно хорош.