Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak

Низькорівневий RTSP-відеострімер для Raspberry Pi 5

Розроблено та успішно здано в експлуатацію високонадійний фоновий системний сервіс на базі Python для платформи Raspberry Pi 5 під управлінням ОС Linux.

Головна задача софту - високошвидкісне захоплення сирого MJPEG відеопотоку з USB-портів (зовнішні карти відеозахоплення HDMI та веб-камери) та його стабільна трансляція за протоколом RTSP на статичні адреси локальної мережі із мінімальною затримкою.

Ключові технічні рішення та фічі проекту:
1. Апаратна оптимізація відеопайплайну: Тонке налаштування параметрів буферизації FFmpeg. Завдяки цьому мережева затримка відео знижена до фізичного мінімуму (менше 100-150 мс).
2. Динамічний пошук обладнання: Інтеграція з утилітою v4l2-ctl на рівні ядра Linux. Скрипт автоматично сканує порти, розпізнає підключені плати захоплення та на льоту підтягує їх у роботу. Реалізовано кросплатформений сумісний фолбек для симуляції пристроїв у Windows-оточенні.
3. Екстремальна відмовостійкість: Архітектура побудована на базі ізольованих потоків StreamWorker під управлінням центрального супервизора StreamManager. Реалізовано механізм автоматичної реанімації відеоядра у випадку падіння потоку або висмикування кабелю з використанням експоненціального бекаффу затримок.
4. Безпечне управління процесами ОС: Реалізовано коректне очищення зомбі-процесів на рівні операційної системи Linux через створення ізольованих сесій процесів та застосування системних сигналів до груп процесів (os.killpg з прапорами SIGTERM/SIGKILL). Це повністю виключає витоки оперативної пам'яті при перезапусках.
5. Вбудована телеметрія заліза: Налаштовано безперервний неблокуючий моніторинг навантаження на CPU та пряме зчитування показників температурних датчиків кристала Raspberry Pi із системної зони ядра (/sys/class/thermal/thermal_zone0/temp) для запобігання троттлінгу.

Проект повністю автономний, оформлений як фоновий демон та запускається автоматично при старті пристрою або після перебоїв із живленням.

#Python #Linux #FFmpeg #RaspberryPi #RTSP #StreamingVideo #SystemProgramming #Subprocess #Архітектура
Деталі роботи
Бюджет 4000 UAH
Додано 18 травня
99 переглядів
Фрилансер
Дмитро К.
Україна Одеса  7  0

Вільний для роботи Вільний для роботи
7 Сейфів завершено
На сервісі 1 місяць 13 днів