RTSP-Audiospur, AAC und unbekannte SDP-Spuren: Warum ein Videostream vor der Wiedergabe fehlschlägt

So diagnostizieren Sie RTSP-Streams mit Audiospuren, AAC-Nutzlasten, unbekannten SDP-Medienabschnitten und Client-Kompatibilitätsfehlern.

RTSP, SDP, AAC, Audiospur, unbekannte Spur

Einige RTSP-Kamerastreams schlagen nicht fehl, weil das Video nicht verfügbar ist, sondern weil die Sitzung mehr enthält, als der Client erwartet. Eine Kamera kann Video-, Audio-, Metadaten-, private Tracks-, Backchannel-Audio- oder herstellerspezifische Medienabschnitte in SDP ankündigen. Ein strenger Verbraucher kann die gesamte Sitzung ablehnen, wenn er auf einen nicht unterstützten Titel stößt.

Suchanfragen wie „RTSP AAC-Audio funktioniert nicht“, „unbekannter Titel in SDP“, „RTSP-Stream schlägt bei aktiviertem Audio fehl“ oder „Kamera funktioniert nach Deaktivierung von Audio“ weisen auf dieselbe Diagnosegrenze hin: SDP beschreibt die Sitzung und jeder angekündigte Titel kann die Kompatibilität beeinträchtigen.

SDP kann mehr als nur Videos bewerben

Eine RTSP-Antwort „DESCRIBE“ kann mehrere Medienabschnitte enthalten:

  • „m=video“.
  • „m=audio“.
  • Metadatenspuren
  • Bewerbungsspuren
  • Anbieterprivate Nutzlasten
  • Kontroll-URLs pro Titel

Für jeden Track muss der Client entscheiden, ob er ihn einrichten, ignorieren oder fehlschlagen kann. Manche Kunden sind tolerant. Andere sind streng. Wenn eine Restreaming-Engine oder ein Analyseprodukt nur einen unterstützten Videotrack erwartet, können unbekannte SDP-Abschnitte zu überraschenden Fehlern führen.

AAC Audio hat seine eigene Kompatibilitätsgrenze

AAC über RTP ist weit verbreitet, aber nicht jeder RTSP-Verbraucher verarbeitet jede Audio-Nutzlast sauber. SDP muss möglicherweise Modus, Konfiguration, Taktrate, Kanäle und Nutzlasttyp beschreiben. Wenn diese Felder fehlen oder ungewöhnlich sind, schlägt ein Client möglicherweise während der Einrichtung oder später beim Depaketieren fehl.

Audioprobleme können wie folgt auftreten:

  • Der Stream wird nur geöffnet, wenn Audio deaktiviert ist
  • SDP-Analysefehler
  • nicht unterstützter Nutzlasttyp
  • „SETUP“ schlägt auf der Audiospur fehl
  • Video funktioniert in VLC, schlägt jedoch bei einem strengeren Aufnahmepfad fehl
  • Der Rekorder lehnt die Sitzung ab, obwohl die Videospur gültig ist

Der letzte Fall ist wichtig: Eine nicht unterstützte Audiospur kann je nach Client-Verhalten den Zugriff auf eine verwendbare Videospur blockieren.

Unbekannte Spuren sollten gemeldet und nicht versteckt werden

Wenn SDP einen unbekannten Medienabschnitt enthält, sollte ein Diagnosetool ihn beibehalten. Das Ausblenden nicht unterstützter Tracks erschwert die Erklärung von Kompatibilitätsfehlern.

Zu den nützlichen Beweisen gehören:

  • Vollständiger SDP-Medienbereich
  • Nutzlasttyp
  • rtpmap-Wert
  • „fmtp“-Werte
  • Track-Control-URL
  • ob „SETUP“ versucht wurde
  • ob ein Fehler auf der Video-, Audio- oder Metadatenspur aufgetreten ist

Dadurch können Ingenieure entscheiden, ob sie die Spur deaktivieren, filtern, das Kameraprofil ändern oder die Downstream-Unterstützung anpassen möchten.

Deaktivieren Sie Audio als Test, nicht als Diagnose

Das Deaktivieren von Audio ist eine häufige Problemumgehung. Dies kann insbesondere für Analyse-Workflows gültig sein, die nur Videos benötigen. Aber es sollte als Test betrachtet werden:

  • Video und Audio schlagen fehl
  • Nur Video ist erfolgreich
  • SDP hat sich nach der Deaktivierung von Audio geändert
  • Nicht unterstützte Nutzlast oder Spur ist verschwunden
  • Der RTP-Videopfad blieb gleich

Dieser Vergleich beweist, dass der Fehler auf die Sitzungszusammensetzung und nicht auf die grundlegende Netzwerkerreichbarkeit zurückzuführen ist.

Wo RTSP Inspector passt

RTSP Inspector sollte die Sitzungsstruktur sichtbar halten. Seine Grenze ist nicht die Wiedergabe; Es ist eine Protokollerklärung. Bei mehrspurigen RTSP-Streams sollte die Antwort hilfreich sein:

  • Wie viele Titel hat SDP beworben?
  • Welche Tracks wurden unterstützt?
  • Welche Spur konnte nicht eingerichtet werden?
  • Ist Video-RTP angekommen?
  • Haben Audio- oder Metadaten den Verbraucher blockiert?
  • Sollte die nächste Aktion eine Änderung des Kameraprofils oder eine Änderung des Downstream-Parsers sein?

Wenn ein Kamerastream „nicht funktioniert“, ist die Videospur möglicherweise in Ordnung. Der nicht unterstützte Titel daneben ist möglicherweise der wahre Grund, warum die Sitzung fehlgeschlagen ist.