Auf dieser Seite wird beschrieben, wie ein Videostream aus Live-Streaming-Standardprotokollen mit Anmerkungen versehen wird.
Die Streaming API der Video Intelligence API ermöglicht eine Echtzeit-Streaminganalyse für Live-Medien. Zu den unterstützten Funktionen gehören:
Live-Labelerkennung
Liveerkennung von Szenenwechseln
Liveerkennung expliziter Inhalte
Liveobjekterkennung und -Tracking
Die Aufnahmebibliothek AIStreamer bietet eine Reihe von Open-Source-Schnittstellen und Beispielcode zum Herstellen einer Verbindung zur Video Intelligence API Streaming API. Die Bibliothek unterstützt:
HTTP Live Streaming (HLS): Ein HTTP-basiertes Medienstreaming- und Kommunikationsprotokoll.
Real Time Streaming Protocol (RTSP): Ein Netzwerksteuerungsprotokoll für Streaming-Medienserver. Es wird in Verbindung mit dem Real Time Protocol (RTP) und Real Time Control Protocol (RTCP) verwendet.
Real Time Messaging Protocol (RTMP): Ein Protokoll für das Streaming von Audio-, Video- und sonstigen Daten über das Internet.
Erstmalige Nutzung von AIStreamer
Die Aufnahmebibliothek AIStreamer enthält die folgenden Beispiele, darunter auch ein Docker-Beispiel:
Live-Streaming: Anweisungen zur Unterstützung von Live-Streaming-Protokollen (HLS, RTSP und RTMP) in der Video Intelligence API.
Docker und Kubernetes: Anweisungen zur Verwendung unseres Docker-Beispiels und zur Bereitstellung mit Kubernetes.
Label-Liveerkennung: Anweisungen zur Streaming-Label-Analyse.
Liveerkennung von Szenenwechseln: Anweisungen zur Analyse von Szenenwechseln beim Streamen.
Liveerkennung expliziter Inhalte: Anweisungen zur Analyse von expliziten Inhalten beim Streamen.
Liveobjekterkennung und -tracking: Anweisungen zur Analyse der Objekterkennung und des Objekt-Tracking beim Streamen.
Code-Architektur
Die Aufnahmebibliothek AIStreamer enthält die folgenden drei Verzeichnisse:
client: Python- und C++-Clientbibliotheken für die Verbindung zu Video Intelligence.
env: Docker-Beispiel für die AIStreamer-Aufnahme.
proto: Proto-Definitionen und gRPC-Schnittstelle für Video Intelligence.
Drittanbieterabhängigkeiten
Die Open-Source-Aufnahmebibliothek AIStreamer basiert auf den folgenden Open-Source-Bibliotheken von Google und Drittanbietern.
Bazel: Ein Tool zum Entwickeln und Testen mit Unterstützung für mehrere Sprachen.
gRPC: Ein leistungsstarkes, universelles Open-Source-RPC-Framework.
Protobuf: Der sprach- und plattformneutrale, erweiterbare Mechanismus von Google zur Serialisierung strukturierter Daten.
rules_protobuf: Bazel-Regeln zum Erstellen von Protokollpuffern und gRPC-Diensten.
glog: C++-Implementierung des Google-Logging-Moduls.
gflags: C++-Bibliothek zur Implementierung der Verarbeitung von Befehlszeilen-Flags.
ffmpeg: Eine umfassende, plattformübergreifende Lösung zum Aufnehmen, Konvertieren und Streamen von Audio- und Videodateien.
gStreamer: Ein weiteres plattformübergreifendes Multimedia-Verarbeitungs- und Streaming-Framework.