Zum Hauptinhalt springen

OpenCV Guides Repository

Zeigen Sie den vollständigen Quellcode und Beispielprojekte für DWE.ai-Kameras auf GitHub an.

Funktionen

  • Rohes RTP/UDP: Kein GStreamer und keine externen Abhängigkeiten erforderlich.
  • Hohe Auflösung: Optimiert für 1080p 30fps+ Streams.
  • 10-Bit-Unterstützung: Verarbeitet 10-Bit YUV 4:4:4 (yuv444p10le) und standardmäßige 8-Bit-Formate.
  • Geringe Latenz: Verwendet einen Hintergrund-Empfänger-Thread und mehrfädige Decodierung.
  • Modulares Design: Trennt Netzwerkverarbeitung, Decodierung und Anzeigelogik.

Voraussetzungen

  • Python 3.8+
  • FFmpeg-Bibliotheken (werden in der Regel automatisch über PyAV installiert)

Installation

Navigieren Sie zum Verzeichnis 3-receive-dweos-h264/python im Repository und richten Sie Ihre Umgebung ein:
  1. Virtuelle Umgebung erstellen:
    python3 -m venv venv
    source venv/bin/activate  # Unter Windows: venv\Scripts\activate
    
  2. Erforderliche Abhängigkeiten installieren:
    pip install -r requirements.txt
    

Verwendung

  1. Starten Sie Ihren H.264-RTP-Stream (standardmäßig auf 127.0.0.1:5600).
  2. Führen Sie den Empfänger aus:
    python main.py
    

Projektstruktur

  • rtp_receiver.py: Behandelt den Empfang roher UDP-Pakete und das Reassembly von H.264-NAL-Einheiten (einschließlich FU-A und STAP-A).
  • h264_decoder.py: Kapselt PyAV für hochperformante H.264-Decodierung.
  • main.py: Der Haupteinstiegspunkt, der den Empfänger und den Decoder mit einem OpenCV-Fenster verbindet.