Passer au contenu principal

Dépôt des guides OpenCV

Consultez le code source complet et les projets d’exemple pour les caméras DWE.ai sur GitHub.

Fonctionnalités

  • RTP/UDP bruts : aucune dépendance à GStreamer ni à une autre bibliothèque externe.
  • Haute résolution : optimisé pour les flux 1080p à 30 ips et plus.
  • Prise en charge 10 bits : gère le YUV 4:4:4 10 bits (yuv444p10le) et les formats 8 bits standard.
  • Faible latence : utilise un thread récepteur en arrière-plan et un décodage multithread.
  • Conception modulaire : sépare la gestion du réseau, le décodage et la logique d’affichage.

Prérequis

  • Python 3.8+
  • Bibliothèques FFmpeg (généralement installées automatiquement via PyAV)

Installation

Naviguez vers le répertoire 3-receive-dweos-h264/python dans le dépôt et configurez votre environnement :
  1. Créez un environnement virtuel :
    python3 -m venv venv
    source venv/bin/activate  # Sous Windows : venv\Scripts\activate
    
  2. Installez les dépendances requises :
    pip install -r requirements.txt
    

Utilisation

  1. Démarrez votre flux RTP H.264 (par défaut sur 127.0.0.1:5600).
  2. Lancez le récepteur :
    python main.py
    

Structure du projet

  • rtp_receiver.py : gère la réception des paquets UDP bruts et le réassemblage des NAL H.264 (y compris FU-A et STAP-A).
  • h264_decoder.py : encapsule PyAV pour un décodage H.264 performant.
  • main.py : point d’entrée principal qui relie le récepteur et le décodeur à une fenêtre OpenCV.