7 Анализ задержки в RTSP RTP потоках
🎯 Общая характеристика проекта
| Атрибут | Значение |
|---|
| Тип | Программный проект (учебный) |
| Максимальная оценка | 8,2 балла (учебный проект) |
| Описание | Исследование: мониторинг качества видеопотока с фокусом на измерении и анализе задержки (end-to-end latency) в RTP/RTSP-потоках от IP-камер |
| Цель продукта | Разработка инструмента для автоматического измерения задержки видеопотока, фиксации её во времени и экспорта метрик в систему мониторинга (например, Prometheus + Grafana) |
| Целевая аудитория | Администраторы систем видеонаблюдения, DevOps-инженеры, инженеры поддержки, отвечающие за качество видеопотоков и работу IP-камер |
| Технологии (рекомендуемые) | RTSP/RTP, FFmpeg или GStreamer для приёма потока, Python/Go для измерения задержки, Prometheus (экспортер или pushgateway), Grafana для визуализации, Docker, ONVIF (опционально) |
📅 Поэтапные требования к проекту
📌 Этап 1: Выбор темы
Дата: 19.01.2026
Формат: Онлайн-форма
Документы: Форма
🔹 Требования к защите
- Подтверждён выбор темы 1-7.
- Сформирована команда (до 2 человек).
- Определены роли участников.
- Подтверждено понимание задачи и архитектуры мониторинга.
| Критерий | Вес | Описание |
|---|
| Выбор темы | 1% | Формальное подтверждение выбора темы, формирования команды и распределения ролей. Оценка выставляется при условии своевременной подачи формы. |
📌 Этап 2: Представление проекта
Дата: 31.01.2026
Формат: Презентация
Документы: Слайды, ТЗ
🔹 Требования к защите
- Чётко сформулированы:
- Проблема: отсутствие прозрачного мониторинга задержки RTSP/RTP-потоков, администратор узнаёт о проблемах только по жалобам пользователей.
- Решение: специализированный инструмент, который получает видеопоток, вычисляет задержку по временным меткам/паттернам и отдаёт метрики в Prometheus/Grafana.
- Целевая аудитория.
- Описаны технологии и архитектура системы.
- Представлен план реализации.
- Подтверждено согласование подхода с заказчиком.
| Критерий | Вес | Описание |
|---|
| Продукт | 25% | Постановка цели, видение законченного продукта: как работает система, где применяется, какие метрики собираются |
| Польза | 25% | Обоснование необходимости: почему текущие методы мониторинга недостаточны, как продукт улучшает ситуацию |
| Пользователь | 20% | Описание целевой аудитории внутри и вне МИЭМ, количественная оценка, рынки применения |
| Технологии | 20% | Обоснованный выбор стека: Prometheus, Grafana, Docker, модификация Blackbox exporter, интеграция с RTSP/ONVIF |
| Развитие | 10% | Перспективы развития: коммерциализация, интеграция в промышленные системы, поддержка новых протоколов |
📌 Этап 3: PoC (Proof of Concept)
Дата: 21.02.2026
Формат: Демонстрация + видео + репозиторий
Документы: Git, видео
🔹 Требования к защите
- Экспериментально подтверждена техническая реализуемость:
- Подключение к RTSP-потоку (FFmpeg/GStreamer или аналог).
- Выделение временной метки или тестового паттерна (например, наложенное время/счётчик).
- Расчёт разницы между «идеальным» временем и временем кадра на приёмной стороне (оценка latency).
- Интеграция с Prometheus или аналогичным механизмом экспорта метрик.
- Визуализация базовых метрик (задержка, доступность потока) в простой дашборд Grafana.
- Демонстрация минимальной работоспособности.
- Видео (до 3 минут) с демонстрацией сбора и отображения метрик.
- Код и конфигурации выложены в репозиторий с README.
| Критерий | Вес | Описание |
|---|
| Техническая реализуемость | 60% | Показано, что выбранный метод позволяет автоматически измерять задержку RTSP/RTP-потока и экспортировать метрику в систему мониторинга |
| Демонстрация | 20% | Наличие видео, демонстрирующего подключение к камере, измерение задержки и отображение значения в Grafana |
| Код и документация | 20% | Репозиторий с конфигами, Docker-окружением (при необходимости) и кратким README по PoC |
📌 Этап 4: Прототип
Дата: 16.03.2026
Формат: Демонстрация + отчет + репозиторий
Документы: Демо, отчет, git
🔹 Требования к защите
- Реализован прототип, поддерживающий:
- Измерение задержки для нескольких RTSP-потоков (несколько камер).
- Сбор нескольких метрик: задержка, доступность потока, код ошибки/причина недоступности.
- Передачи метрик в Prometheus.
- Визуализация в Grafana: панель с камерой, текущей задержкой, историей и, при необходимости, порогами.
- Демонстрация работы в реальном времени.
- Отчёт с описанием архитектуры, логики проверок, форматов метрик.
| Критерий | Вес | Описание |
|---|
| Реализация функционала | 40% | Рабочий прототип, измеряющий задержку и доступность для нескольких камер, с экспортом метрик |
| Интеграция | 25% | Корректная увязка измерителя задержки с Prometheus/Grafana, стабильная обработка RTSP-потоков |
| Демонстрация | 20% | Демо-стенд с визуализацией задержки и сценариями изменения условий (нагрузка, деградация сети) |
| Документация | 15% | Наличие отчёта с описанием архитектуры, API, форматов метрик, инструкций по запуску и настройке |
📌 Этап 5: MVP (Minimal Viable Product)
Дата: 11.04.2026
Формат: Работающий продукт + отзыв + отчет + git
Документы: Отзыв, отчет, git
🔹 Требования к защите
- Продукт может быть запущен и использован без участия разработчика.
- Поддержка всех базовых функций:
- Подключение к нескольким RTSP-камерам.
- Автоматический сбор метрик задержки, доступности, ошибок.
- Передача в Prometheus, дашборд Grafana.
- Алертинг по превышению задержки.
- Наличие документации пользователя и разработчика.
- Получен отзыв пользователя.
| Критерий | Вес | Описание |
|---|
| Продукт | 30% | Готовность продукта: отчуждаемость, выполнение базовых функций, непрерывный сбор метрик |
| Документация разработчика | 20% | Наличие спецификации MVP/MUP, описание архитектуры, API, логики проверок, текущего результата |
| Запуск и работа | 30% | Продукт запускается без разработчика, не требует несвойственных действий от пользователя, работает в фоне |
| Документация пользователя | 20% | Полная инструкция по установке, настройке, добавлению камер, интерпретации метрик и устранению неисправностей |
📌 Этап 6: MUP (Minimal Usable Product)
Дата: 16.05.2026
Формат: Асинхронная защита + консультация
Документы: Отзыв, отчет, git
🔹 Требования к защите
- Продукт внедрён в тестовую среду (например, в лаборатории с несколькими камерами).
- Пользователь самостоятельно использует весь функционал.
- Получен отзыв о реальном использовании.
- Документация дополнена на основе фидбэка.
- Созданы маркетинговые материалы.
| Критерий | Вес | Описание |
|---|
| Отзыв пользователя | 30% | Удобство использования, полнота информации, качество визуализации, полезность алертов |
| Функциональность | 30% | Полная реализация всех функций: сбор метрик, визуализация, алертинг, масштабируемость |
| Документация пользователя | 20% | Наличие полной, понятной документации с установкой, навигацией, сценариями использования и устранением неисправностей |
| Маркетинг | 20% | Наличие лендинга, продуктового ролика, раздатки или презентации, адаптированных под целевую аудиторию |
📌 Этап 7: Защита проекта
Дата: 06.06.2026 или 13.06.2026
Формат: Презентация + демо + отзывы
Документы: Слайды, демо, отзывы
🔹 Требования к защите
- Презентация пользовательского опыта.
- Демонстрация работы продукта (включая сценарии сбоя и алертинга).
- Представление отзывов пользователей.
- Подача заявки на РИД.
- Ответы на вопросы.
| Критерий | Вес | Описание |
|---|
| Представление | 20% | Маркетинговый стиль, ясность, логичность, отсутствие научного стиля, фокус на пользе и кейсах |
| Маркетинг | 20% | Качество лендинга, ролика, раздатки — соответствие продуктовому жанру, наличие кейсов применения |
| Впечатления пользователей | 30% | Удобство, полезность, простота установки и использования, качество визуализации и уведомлений |
| Завершённость | 30% | Полная документация, функциональность, наличие дистрибутива (Docker), ссылки на код, расширенный функционал (например, поддержка ONVIF-метрик, интеграция с Telegram-ботом для алертов) |
Вложения