Verwendung von ONVIF-Clients zur Ansicht von Videostreams
ONVIF-Clients können viele verschiedene Dinge sein: angefangen von erweiterten, benutzerdefinierten Überwachungssystemen bis zu grundlegendsten Media Playern.
Dieser Abschnitt zeigt Beispiele zur Verbindung mit der Milestone Open Network Bridge.
Verwenden Sie einen Netzwerk-Video-Client zur Ansicht eines Live-Streams
Dieses Beispiel zeigt die ordnungsgemäße Installation des ONVIF Device Manager und Konfiguration zum Streamen von Live-Video aus einer XProtect-Installation.
Der ONVIF Device Manager ist ein kostenloser, Open Source Network-Video-Client von iDeviceDesign, der den ONVIF-Standards entspricht. Das Tool wird weitläufig genutzt, da es die Entdeckung und Ansicht von Videos von ONVIF-konformen Kameras in einem Netzwerk äußerst vereinfacht. Sie verwenden ONVIF Device Manager jedoch ausschließlich zum Streamen von Live-Videos. Zusätzlich dazu, können Sie die Videodaten in dem Stream nicht erfassen und speichern.
Bevor Sie beginnen, sollten Sie sich die folgenden Informationen von der Person verschaffen, welche die XProtect-Installation verwaltet:
- Die Anmeldeinformationen für den Benutzer, der für die Milestone Open Network Bridge erstellt wurde
Die IP-Adresse oder der Computername des Computers, auf dem Milestone Open Network Bridge installiert ist. Um ONVIF Device Manager zu installieren, führen Sie die folgenden Schritte aus:
- Gehen Sie zur Sourceforge ONVIF Device Manager Webseite (https://sourceforge.net/projects/onvifdm/) und laden Sie das Installationsprogramm herunter und führen Sie es anschließend aus. Sie können den ONVIF Device Manager auf jedem Computer installieren.
- Wenn die Installation vollständig ist, wird ein Symbol auf Ihrem Desktop verfügbar. Doppelklicken Sie auf das Symbol, um den ONVIF Device Manager zu starten.
- Wenn Sie den ONVIF Device Manager starten, erkennt er automatisch ONVIF-konforme Geräte im Netzwerk. Er könnte aber gegebenenfalls die Milestone Open Network Bridge nicht erkennen.
- Wenn er es tut, gehen Sie zu Schritt 6
- Wenn er es nicht tut, fügen Sie die Bridge manuell hinzu. Machen Sie bei Schritt 4 weiter
- Zum Hinzufügen einer Milestone Open Network Bridge, klicken Sie auf Hinzufügen.
- Im Dialogfenster Gerät hinzufügen, im Feld URI, geben Sie Name oder IP-Adresse des Computers an, auf dem die Milestone Open Network Bridge installiert ist, sowie die ONVIF-Portnummer. Beispielsweise könnte der String folgendermaßen aussehen: http://[IP-Adresse]:580/onvif/device_service.
- Nachdem Sie die Bridge hinzugefügt haben, finden Sie diese am unteren Ende der Geräte-Liste. Wählen Sie diese aus.
- Geben Sie die Anmeldeinformationen für den Basis-Benutzer ein, der für den ONVIF-Client oberhalb der Liste erstellt wurde. Sie müssen den Domain-Benutzernamen als Benutzernamen eingeben.
- Starten Sie den Milestone Open Network Bridge-Dienst neu, damit die Änderung in Kraft treten kann.
Verwenden Sie einen Media Player, um ein Videostream anzusehen
Dieses Beispiel beschreibt die Verwendung des VLC Media Players zum Abruf und der Ansicht eines Live-Videofeeds oder aufgezeichnetem Videos von einer Kamera in einer XProtect-Installation.
Der VLC Media Player ist ein kostenloser, Open Source Multimedia Player von VideoLan, der verschiedene Streaming-Protokolle (einschließlich RTSP) unterstützt. Zum Beispiel ist die Verwendung vom VLC Media Player nützlich, wenn Sie einen sehr schnellen Weg für die Verbindung zu einer Kamera oder als Verbindungstest zu einer Kamera benötigen.
Wenn Sie sich mit einer Kamera verbinden, um ein aufgezeichnetes Video anzusehen, streamt die Milestone Open Network Bridge die VideoSequenzen, beginnend bei der ersten Sequenz.
Bevor Sie beginnen, sollten Sie sich die folgenden Informationen von der Person verschaffen, welche die XProtect-Installation verwaltet:
- Die Anmeldeinformationen für das Benutzerkonto, welches der Milestone Open Network Bridge zugewiesen ist
- Die IP-Adresse oder Computername des Computer, auf der die Milestone Open Network Bridge installiert ist
- Die GUID des Geräts, von dem Sie Video streamen möchten
Die Kamera-GUID ist in Management Client verfügbar. Wählen Sie den Aufzeichnungsserver, dem die Kamera hinzugefügt wurde und wählen Sie dann die Kamera aus, um die GUID zu finden. Klicken Sie auf die Registerkarte Info, drücken und halten Sie STRG auf Ihrer Tastatur und klicken Sie dann auf die Video-Vorschau der Kamera.
Diese Beschreibung basiert auf VLC 2.2.4 für Windows.
Folgen Sie diesen Schritten, um den VLC Media Player zu installieren und sich mit ihm zu einem XProtect-System zu verbinden:
- Gehen Sie zu https://www.videolan.org/vlc/ und laden Sie dann das Installationsprogramm für den VLC Media Player herunter.
- Führen Sie das Installationsprogramm aus, und folgen Sie den schrittweisen Anweisungen.
- Auf der Symbolleiste, klicken Sie auf Medien und wählen dann Netzwerkstream öffnen.
- Im Dialogfenster Medium öffnen, geben Sie die folgende RTSP Zeichenkette ein. Ersetzen Sie die Variablen in den eckigen Klammern [Milestone Open Network Bridge IP Address] und [Camera GUID] durch die korrekten Informationen:
- Geben Sie zur Anzeige eines Live-Videostreams rtsp://[Milestone Open Network BridgeIP-Adresse]:554/live/[Kamera-GUID] ein.
- Geben Sie zur Anzeige eines aufgezeichneten Videos rtsp://[Milestone Open Network BridgeIP-Adresse]:554/vod/[Kamera-GUID] ein.
- Klicken Sie auf Wiedergabe und geben Sie dann den Benutzernamen und Passwort des Benutzerkontos ein, das zur Milestone Open Network Bridge hinzugefügt wurde.
Video-Wiedergabe verwalten
Die Wiedergabesteuerung entspricht RTSP-Standards und den ONVIF-Streamingvorgaben (https://www.onvif.org/profiles/specifications/).
Zusammenfassung der Aufnahmen
Sie erhalten einen Überblick über alle aufgezeichneten Videos, die in dem Gerät verfügbar sind, indem Sie den Befehl GetRecordingSummary
eingeben. Das ist nicht notwendig, aber es liefert nützliche Informationen vor der Durchführung einer Suche.
Sie können GetRecordingSummary
und/oder GetMediaAttributes
nutzen, um den Zeitstempel der ersten und letzten Aufzeichnung zu erhalten, aber Sie müssen erst die Einstellung Konfigurationen von Kameras nutzen auf der Registerkarte Erweiterte Einstellungen auf dem Milestone Open Network Bridge-Plug-in im XProtect Management Client aktivieren.
Legen Sie ein Proxy für den Aufnahmesuchdienst
an, unter Nutzung des Service-Endpunkts, der von GetServices
zurückgegeben wird. Erstellen Sie Frage- und Antwortobjekte, dann rufen Sie GetRecordingSummary
an.
SearchBindingProxy searchProxy( &soapSearch );
std::string searchEndpoint = "http://" + host + "/onvif/recording_search_service";
_tse__GetRecordingSummary tse__GetRecordingSummary;
_tse__GetRecordingSummaryResponse tse__GetRecordingSummaryResponse;
result = searchProxy.GetRecordingSummary( searchEndpoint.c_str(), NULL,
&tse__GetRecordingSummary, &tse__GetRecordingSummaryResponse );
Suche nach Aufnahmen
Die Suchdienstmethode FindRecordings
startet eine asynchrone Suche in der Kamera. FindRecordings
gibt ein Token zurück, das sich auf die Suchergebnisse bezieht. Obwohl nur eine Aufzeichnung verfügbar ist, ist eine Suche der richtige Weg, um eine Referenz für diese Aufzeichnung zu erhalten.
Senden Sie eine Anfrage FindRecordings
mit den folgenden obligatorischen Parametern:
SearchScope
>IncludedSources
>Token
– Sie müssen den GUID Token der Kamera angebenSearchScope
>RecordingInformationFilter
– String mit den folgenden Parametern:Zeitstempel
(in UTC-Format)maxTimeBefore
(die Zeit vor dem angeforderten Zeitstempel, in Millisekunden)maxCountBefore
(die maximale Anzahl von Spuren vor dem angeforderten Zeitstempel)maxTimeAfter
(die Zeit nach dem angeforderten Zeitstempel, in Millisekunden)maxCountAfter
(die maximale Anzahl von Spuren nach dem angeforderten Zeitstempel)
Beispielsweise:
boolean(//Track[TrackType = “Video”]),2016-12-06T08:07:43Z,99999999,20,99999999,20
Sie erhalten eine Antwort mit einem SearchToken
, die einzigartig für das Suchkriterium ist.
Reichen Sie den SearchToken
an GetRecordingSearchResults
weiter, und Sie erhalten eine Liste mit allen Spuren, die den Suchkriterien entsprechen.
Wiedergabe starten
Wenn Sie Video abspielen, liegt die standardmäßige Geschwindigkeit bei 1 (normale Wiedergabe vorwärts).
Die Wiedergabe wird mittels der RTSP PLAY Methode gestartet. Ein Bereich kann bestimmt werden. Wenn kein Bereich angegeben wird, spielt der Stream von Beginn bis zum Ende ab, oder wenn der Stream pausiert wurde, wird er ab diesem Zeitpunkt fortgesetzt. In diesem Beispiel, „Bereich: npt=3-20“ weist den RTSP Server an, die Wiedergabe von der dritten bis zur 20. Sekunde zu starten.
Beispielsweise:
PLAY rtsp://basic:basic@bgws-pvv-04:554/vod/943ffaad-42be-4584-bc2c-c8238ed96373 RTSP/1.0
CSeq: 123
Sitzung: 12345678
Erfordert: onvif-replay
Bereich: npt=3-20
Geschwindigkeit-Steuerung: nein
Wiedergabe rückwärts
ONVIF Geräte KÖNNTEN Wiedergabe rückwärts unterstützen. Wiedergabe rückwärts verwendet laut Anzeige des Skalierungsfeld einen negativen Wert. Damit Sie beispielsweise ohne Datenverlust rückwärts wiedergeben können, wird ein Wert von -1,0 verwendet.
Die Milestone Open Network Bridge unterstützt Werte [-32 : 32].
PLAY rtsp://basic:basic@bgws-pvv-04:554/vod/943ffaad-42be-4584-bc2c-c8238ed96373 RTSP/1.0
CSeq: 123
Sitzung: 12345678
Erfordert: onvif-replay
Bereich: clock=20090615T114900.440Z
Geschwindigkeit-Steuerung: nein
Skalierung: -1.0
Geschwindigkeit ändern
Die Geschwindigkeit wird durch die RTSP Geschwindigkeit-Steuerung kontrolliert. Wenn „Geschwindigkeit-Steuerung=ja“, bestimmt der Server die Wiedergabegeschwindigkeit. Der Stream wird mittels des Standard-RTP Timing Mechanismus in Echtzeit wiedergegeben. Wenn „Geschwindigkeit-Steuerung=nein“, bestimmt der Client die Wiedergabegeschwindigkeit. Geschwindigkeitsgesteuerte Wiedergabe wird im Normalfall nur von Nicht-ONVIF spezifischen Clients verwendet, da diese nicht „Geschwindigkeit-Steuerung=nein“ festlegen.
Benutzen Sie die angegeben Steuerelemente, um Wiedergabegeschwindigkeit in einem Client zu kontrollieren. Beim VLC Media Player beispielsweise, wählen Sie Wiedergabe > Geschwindigkeit > Schneller oder Langsamer. Dies erhöht bzw. verringert die Geschwindigkeit um 0,5.
Schneller (fein) und Langsamer (fein) verändern die Geschwindigkeit um 0,25.
Verwaltung der Wiedergabe des VLC Media Players mittels Befehlszeileneingaben
Sie können Video-Wiedergabe im VLC Media Player mittels Befehlszeilen verwalten. Detaillierte Informationen finden Sie unter Hilfe VLC Befehlszeilen (https://wiki.videolan.org/VLC_command-line_help/).
Solche Befehle erlauben es Ihnen unter anderem, rückwärts wiederzugeben und die Startzeit der Wiedergabe zu verändern.
Ein Beispiel für eine typische Befehlszeile:
>vlc.exe --rate=-1.0 --start-time=3600 "rtsp://basic:basic@bgws-pvv-04:554/vod/943ffaad-42be-4584-bc2c-c8238ed96373"
Wo:
- Rate sind die Skalierungs- und Geschwindigkeitsparameter
- Start-Zeit ist Sekunden nach dem Start der Datenbank
Folgend finden Sie die Wiedergabesteuerung für VLC Media Player:
Code |
Was kann ich mit den Code tun? |
---|---|
Eingabe-Wiederholung= |
<Integer [-2147483648 .. 2147483647]> Eingabewiederholungen Anzahl der Wiederholungen derselben Eingabe |
Start-Zeit= |
<float> Startzeit Der Stream startet an dieser Position (in Sekunden) |
Stopp-Zeit= |
<float> Stoppzeit Der Stream stoppt an dieser Position (in Sekunden) |
Lauf-Zeit= |
<float> Laufzeit Der Stream läuft über diesen Zeitraum (in Sekunden) |
Eingabe-Schnell-Suche Keine-Eingabe-Schnell-Suche |
Schnellsuche (standardmäßig deaktiviert) Bevorzugt Geschwindigkeit über Genauigkeit bei Suche |
rate= |
<float> Wiedergabegeschw. Dies bestimmt die Wiedergabegeschwindigkeit (normale Geschwindigkeit liegt bei 1,0) |
Eingabe-Liste= |
<string> Eingabeliste Sie können die Eingaben in einer durch Kommata geteilte Liste angeben, die miteinander nach der Normalen verknüpft werden |
Eingabe-Slave= |
<string> Eingabe-Slave (experimentell) Dies erlaubt es Ihnen, mehrere Eingaben zur selben Zeit wiederzugeben. Diese Funktion ist experimentell und unterstützt daher nicht alle Formate. Benutzen Sie ein „#“ zur Unterteilung von Eingaben |