Skip to content

Latest commit

 

History

History
157 lines (121 loc) · 6.2 KB

File metadata and controls

157 lines (121 loc) · 6.2 KB

📝 О проекте

Система для одновременного просмотра и обработки потоков с нескольких камер (USB/IP) с возможностью интеграции в компьютерное зрение.

🚀 Возможности

  • Поддержка USB и IP-камер (через RTSP)
  • Автоматическое переподключение при обрыве связи
  • Настраиваемые параметры камер (разрешение, FPS)
  • Многопоточная обработка кадров
  • Гибкая система обратных вызовов для обработки видео
  • Готовый GUI для просмотра потоков
  • Конфигурирование через параметры конструктора

⚙️ Установка

pip install omniview

🛠️ Использование

Базовый пример для USB камер

from omniview.managers import USBCameraManager


def frame_callback(camera_id, frame):
    # Your framing
    pass


if __name__ == "__main__":
    manager = USBCameraManager(
        show_gui=True,
        max_cameras=4,
        frame_callback=frame_callback
    )
    try:
        manager.start()
    except KeyboardInterrupt:
        manager.stop()

Базовый пример для IP камер

from omniview.managers import IPCameraManager


def frame_callback(camera_id, frame):
    # Your framing
    pass


if __name__ == "__main__":
    manager = IPCameraManager(
        show_gui=True,
        rtsp_urls=[
            "rtsp://admin:[email protected]:9090",
        ],
        max_cameras=4,
        frame_callback=frame_callback
    )
    try:
        manager.start()
    except KeyboardInterrupt:
        manager.stop()

📚 API

Основные методы:

  • start() - запускает менеджер камер (блокирующий вызов)
  • stop() - корректно останавливает все потоки
  • process_frames() - возвращает словарь текущих кадров (ID: кадр)

🔌 Класс USBCameraManager

Параметры конструктора:

Параметр Тип По умолчанию Описание
show_gui bool True Показывать окна с видео
max_cameras int 10 Макс. количество камер
frame_width int 640 Ширина кадра
frame_height int 480 Высота кадра
fps int 30 Целевой FPS
min_uptime float 5.0 Мин. время работы (сек)
frame_callback function None Callback для обработки кадров
exit_keys tuple (ord('q'),27) Клавиши для выхода

🌐 Класс IPCameraManager

Параметры конструктора (Все те-же самые что у USBCameraManager, но с добавлением):

Параметр Тип По умолчанию Описание
rtsp_urls list[str] [] Список RTSP URL

🎨 Разработано с использованием

Разработано на

Meowrch Linux

Meowrch — Linux-дистрибутив, созданный для творцов и разработчиков

🤝 Внести вклад

Мы приветствуем ваш вклад! Вот как вы можете помочь:

  • 🐛 Сообщайте об ошибках и запрашивайте функции через Issues
  • 🔧 Отправляйте pull requests с улучшениями
  • 📖 Улучшайте документацию

®️ Правовой статус

Данный проект защищён патентом. Все права защищены. Использование, копирование и распространение возможны только с письменного разрешения правообладателя.

Страница 1 Страница 2

📝 Лицензия

Этот проект лицензирован под GPL-3.0 License — см. файл LICENSE для деталей.