Фьючерсы
Доступ к сотням фьючерсов
CFD
Золото
Одна платформа мировых активов
Опционы
Hot
Торги опционами Vanilla в европейском стиле
Единый счет
Увеличьте эффективность вашего капитала
Демо-торговля
Введение в торговлю фьючерсами
Подготовьтесь к торговле фьючерсами
Фьючерсные события
Получайте награды в событиях
Демо-торговля
Используйте виртуальные средства для торговли без риска
Запуск
CandyDrop
Собирайте конфеты, чтобы заработать аирдропы
Launchpool
Быстрый стейкинг, заработайте потенциальные новые токены
HODLer Airdrop
Удерживайте GT и получайте огромные аирдропы бесплатно
Pre-IPOs
Откройте полный доступ к глобальным IPO акций
Alpha Points
Торгуйте и получайте аирдропы
Фьючерсные баллы
Зарабатывайте баллы и получайте награды аирдропа
Инвестиции
Simple Earn
Зарабатывайте проценты с помощью неиспользуемых токенов
Автоинвест.
Автоинвестиции на регулярной основе.
Бивалютные инвестиции
Доход от волатильности рынка
Мягкий стейкинг
Получайте вознаграждения с помощью гибкого стейкинга
Криптозаймы
0 Fees
Заложите одну криптовалюту, чтобы занять другую
Центр кредитования
Единый центр кредитования
Рекламные акции
AI
Gate AI
Ваш универсальный AI-ассистент для любых задач
Gate AI Bot
Используйте Gate AI прямо в вашем социальном приложении
GateClaw
Gate Синий Лобстер — готов к использованию
Gate for AI Agent
AI-инфраструктура: Gate MCP, Skills и CLI
Gate Skills Hub
Более 10 тыс навыков
От офиса до трейдинга: единая база навыков для эффективного использования ИИ
GateRouter
Умный выбор из более чем 40 моделей ИИ, без дополнительных затрат (0%)
Создание собственного пайплайна для потоковой передачи живого видео: практическое руководство по FFmpeg и MediaMTX
Проблема: Камера говорит по RTSP, но браузер не может услышать
Предположим, вы хотите отображать живое видео с камер безопасности и IoT-устройств в веб-приложении. Большинство камер передают данные по протоколу RTSP (Real Time Streaming Protocol). Однако браузеры прекратили поддержку RTSP с 2010-х годов. Проще говоря, основная проблема заключается в том, что «язык, на котором говорит камера», и «язык, который понимает браузер», различаются.
Этим переводом занимаются FFmpeg (универсальный инструмент для обработки видео) и MediaMTX (сервер для преобразования протоколов). Сочетание этих двух позволяет создать профессиональный потоковый пайплайн с низкой задержкой.
Объяснение инструмента
FFmpeg: волшебная палочка для преобразования любых форматов видео
Процесс обработки FFmpeg:
В стриминговых целях FFmpeg работает в качестве входного движка. Он захватывает видео с веб-камеры или файлов, эффективно кодируя его и отправляя на сервер по RTSP или RTMP.
MediaMTX: протокольный хаб с поддержкой нескольких клиентов
FFmpeg имеет одно выходное направление, но MediaMTX может одновременно транслировать нескольким клиентам. Более того:
Всего лишь один бинарный файл и файл конфигурации YAML могут справиться со сложными сценариями, для которых раньше требовалось несколько выделенных серверов.
Этапы реализации
Шаг 1: Установите инструмент
Ubuntu/Debian:
sudo apt update sudo apt install autoconf automake build-essential pkg-config libx264-dev libvpx-dev libfdk-aac-dev git clone ffmpeg CD ffmpeg ./configure --enable-gpl --enable-libx264 --enable-nonfree make -j$(nproc) sudo make install
macOS:
brew install ffmpeg
Виндоус: Скачать с gydan.dev → Распаковать в C:\ffmpeg → Добавить в системный PATH
Установите MediaMTX v1.15.0 (просто с помощью единственного двоичного файла).
Шаг 2: Потоковое видеофайла
создайте mediamtx.yml:
пути: тест_видео: источник: издатель
Запуск MediaMTX:
МедиаMTX mediamtx.yml
Отправка видео по RTSP с помощью FFmpeg:
ffmpeg -re -i video.mp4 -c:v libx264 -preset fast -c:a aac -f rtsp rtsp://localhost:8554/test_video
-re:Сохранение частоты кадров (обязательно для прямой трансляции) -preset fast:баланс скорости кодирования
Проверьте в VLC Media Player: Media → Открыть сетевой поток → rtsp://localhost:8554/test_video
Шаг 3: Включите веб-камеру для прямой трансляции
Виндоус:
ffmpeg -f dshow -rtbufsize 100M -i video=“Встроенная веб-камера” -c:v libx264 -preset ultrafast -tune zerolatency -f rtsp rtsp://localhost:8554/webcam
macOS:
ffmpeg -f avfoundation -framerate 30 -video_size 1280x720 -i “0” -c:v libx264 -preset ultrafast -tune zerolatency -f rtsp rtsp://localhost:8554/webcam
Линукс:
ffmpeg -f v4l2 -i /dev/video0 -c:v libx264 -preset ultrafast -tune zerolatency -c:a aac -f rtsp rtsp://localhost:8554/webcam
-tune zerolatency является ключевым моментом. Оптимизация потоковой передачи в реальном времени.
Шаг 4: Воспроизведение в браузере (WebRTC)
обновите mediamtx.yml:
WebRTC: Да webrtcАдрес: :8889 webrtcШифрование: нет webrtcAllowOrigin: '*'
пути: вебкамера: источник: издатель
Перезапустите MediaMTX и откройте http://localhost:8889 в браузере → живое видео будет отображаться в браузере.
Поток данных
MediaMTX не перекодирует. Он просто упаковывает H.264 стрим в контейнеры различных протоколов. Поэтому достигается низкая задержка.
Итоги данного раза
Базовый конвейер завершен:
Однако есть проблемы с эксплуатацией в производстве:
Во 2 части будет рассмотрено добавление аутентификации, подключение IP-камер и поддержка интернета.