Fehlerbehebung beim Streamen von Videos - Amazon Rekognition

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Fehlerbehebung beim Streamen von Videos

Dieses Thema enthält Informationen zur Fehlerbehebung beim Streamen von Videos mit Amazon Rekognition Video.

Ich weiß nicht, ob mein Stromprozessor erfolgreich erstellt wurde

Verwenden Sie den folgenden AWS CLI Befehl, um eine Liste der Stream-Prozessoren und deren aktuellen Status abzurufen.

aws rekognition list-stream-processors

Mit dem folgenden AWS CLI Befehl können Sie weitere Details abrufen. Ersetzen Sie stream-processor-name durch den Namen des erforderlichen Stromprozessors.

aws rekognition describe-stream-processor --name stream-processor-name

Ich weiß nicht, ob mein Stromprozessor korrekt konfiguriert ist

Wenn Ihr Code nicht die Analyseergebnisse von Amazon Rekognition Video ausgibt, ist Ihr Stromprozessor möglicherweise nicht korrekt konfiguriert. Führen Sie die folgenden Schritte aus, um zu bestätigen, dass Ihr Stromprozessor korrekt konfiguriert ist und Ergebnisse herstellen kann.

So stellen Sie fest, ob Ihre Lösung ordnungsgemäß konfiguriert ist
  1. Führen Sie den folgenden Befehl aus, um zu bestätigen, dass Ihr Stromprozessor ausgeführt wird. Ändern Sie stream-processor-name in den Namen Ihres Stromprozessors. Der Stromprozessor wird ausgeführt, wenn Status den Wert RUNNING aufweist. Wenn der Status RUNNING lautet und Sie keine Ergebnisse erhalten, siehe Mein Stromprozessor gibt keine Ergebnisse zurück. Wenn der Status FAILED lautet, finden Sie unter Der Status meines Stromprozessors lautet FAILED Informationen dazu.

    aws rekognition describe-stream-processor --name stream-processor-name
  2. Wenn Ihr Stream-Prozessor läuft, führen Sie die folgende Bash oder den folgenden PowerShell Befehl aus, um Daten aus dem Kinesis-Ausgabedatenstream zu lesen.

    Bash

    SHARD_ITERATOR=$(aws kinesis get-shard-iterator --shard-id shardId-000000000000 --shard-iterator-type TRIM_HORIZON --stream-name kinesis-data-stream-name --query 'ShardIterator') aws kinesis get-records --shard-iterator $SHARD_ITERATOR

    PowerShell

    aws kinesis get-records --shard-iterator ((aws kinesis get-shard-iterator --shard-id shardId-000000000000 --shard-iterator-type TRIM_HORIZON --stream-name kinesis-data-stream-name).split('"')[4])
  3. Mit dem Decodierungstool auf der Website „Base64 Decode“ können Sie die Ausgabe in eine für Menschen lesbare Zeichenfolge decodieren. Weitere Informationen finden Sie unter Schritt 3: Rufen Sie den Datensatz ab.

  4. Wenn die Befehle funktionieren und im Kinesis-Datenstrom Ergebnisse der Gesichtserkennung angezeigt werden, ist Ihre Lösung ordnungsgemäß konfiguriert. Bei einem Befehlsfehler prüfen Sie die anderen Vorschläge zur Problembehandlung und sehen Sie sich die Informationen unter Gewähren von Zugriff auf Ihre Ressourcen für Amazon Rekognition Videoan.

Alternativ können Sie den AWS Lambda Blueprint "kinesis-process-record" verwenden, um Nachrichten aus dem Kinesis-Datenstrom CloudWatch zur kontinuierlichen Visualisierung zu protokollieren. Dadurch entstehen zusätzliche Kosten für und. AWS Lambda CloudWatch

Mein Stromprozessor gibt keine Ergebnisse zurück

Ihr Stromprozessor gibt möglicherweise aus verschiedenen Gründen keine Ergebnisse zurück.

Grund 1: Der Stromprozessor ist nicht korrekt konfiguriert

Ihr Stromprozessor ist möglicherweise nicht korrekt konfiguriert. Weitere Informationen finden Sie unter Ich weiß nicht, ob mein Stromprozessor korrekt konfiguriert ist.

Grund 2: Ihr Stromprozessor weist nicht den Status RUNNING auf

So beheben Sie Statusfehler des Stromprozessors
  1. Überprüfen Sie den Status des Stream-Prozessors mit dem folgenden AWS CLI Befehl.

    aws rekognition describe-stream-processor --name stream-processor-name
  2. Wenn Status den Wert STOPPEDaufweist, starten Sie Ihren Stromprozessor mit dem folgenden Befehl:

    aws rekognition start-stream-processor --name stream-processor-name
  3. Wenn Status den Wert FAILED aufweist, finden Sie weitere Informationen unter Der Status meines Stromprozessors lautet FAILED.

  4. Wenn Status den Wert STARTING aufweist, warten Sie 2 Minuten und überprüfen Sie den Status, indem Sie Schritt 1 wiederholen. Wenn der Status noch den Wert STARTING aufweist, gehen Sie wie folgt vor:

    1. Löschen Sie den Stromprozessor mit dem folgenden Befehl.

      aws rekognition delete-stream-processor --name stream-processor-name
    2. Erstellen Sie einen neuen Stromprozessor mit der gleichen Konfiguration. Weitere Informationen finden Sie unter Arbeiten mit Streaming-Videoereignissen.

    3. Wenn Sie weiterhin Probleme haben, wenden Sie sich an den AWS Support.

  5. Wenn Status den Wert RUNNING aufweist, finden Sie weitere Informationen unter Grund 3: Es sind keine aktiven Daten im Kinesis-Videostrom vorhanden.

Grund 3: Es sind keine aktiven Daten im Kinesis-Videostrom vorhanden

Um zu überprüfen, ob der Kinesis-Videostrom aktive Daten enthält
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon Kinesis Video Streams Streams-Konsole unter https://console.aws.amazon.com/kinesisvideo/.

  2. Wählen Sie den Kinesis-Videostrom aus, der die Eingabe für den Amazon-Rekognition-Stromprozessor ist.

  3. Wenn die Vorschau Keine Daten im Strom angibt, befinden sich keine Daten zur Verarbeitung durch Amazon Rekognition Video im Eingabestrom.

Informationen zur Videoproduktion mit Kinesis Video Streams finden Sie unter Kinesis Video Streams Producer Libraries.

Der Status meines Stromprozessors lautet FAILED

Sie können den Status eines Stream-Prozessors mit dem folgenden AWS CLI Befehl überprüfen.

aws rekognition describe-stream-processor --name stream-processor-name

Wenn der Status den Wert FAILED aufweist, überprüfen Sie die Informationen zur Fehlerbehebung für die folgenden Fehlermeldungen.

Fehler: „Der Rolle wird der Zugriff verweigert“

Die vom Stromprozessor verwendete IAM-Rolle ist nicht vorhanden oder Amazon Rekognition Video verfügt nicht über die Berechtigung, die Rolle anzunehmen.

So beheben Sie Probleme mit dem Zugriff auf die IAM-Rolle
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Klicken Sie im linken Navigationsbereich auf Rollen und bestätigen Sie, dass die Rolle vorhanden ist.

  3. Wenn die Rolle vorhanden ist, überprüfen Sie, ob für die Rolle die AmazonRekognitionServiceRoleBerechtigungsrichtlinie gilt.

  4. Wenn die Rolle nicht vorhanden ist oder nicht über die erforderlichen Berechtigungen verfügt, siehe Gewähren von Zugriff auf Ihre Ressourcen für Amazon Rekognition Video.

  5. Starten Sie den Stream-Prozessor mit dem folgenden AWS CLI Befehl.

    aws rekognition start-stream-processor --name stream-processor-name

Fehler: „Kein Zugriff auf Kinesis Video oder Zugriff auf Kinesis-Daten verweigert“

Die Rolle hat keinen Zugriff auf die Kinesis-Video-Streams-API-Operationen GetMedia und GetDataEndpoint. Möglicherweise hat es auch keinen Zugriff auf die Kinesis-Data-Streams-API-Operationen PutRecord und PutRecords.

So beheben Sie Probleme mit API-Berechtigungen
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Öffnen Sie die Rolle und stellen Sie sicher, dass die folgende Berechtigungsrichtlinie angefügt ist.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kinesis:PutRecord", "kinesis:PutRecords" ], "Resource": "data-arn" }, { "Effect": "Allow", "Action": [ "kinesisvideo:GetDataEndpoint", "kinesisvideo:GetMedia" ], "Resource": "video-arn" } ] }
  3. Wenn eine der Berechtigungen fehlt, aktualisieren Sie die Richtlinie. Weitere Informationen finden Sie unter Gewähren von Zugriff auf Ihre Ressourcen für Amazon Rekognition Video.

Fehler: „Stream input-video-stream-nameexistiert nicht“

Die Kinesis–Videostrom-Eingabedaten für den Stromprozessor sind nicht vorhanden oder nicht korrekt konfiguriert.

So beheben Sie Probleme mit dem Kinesis-Videostrom
  1. Mit dem folgenden Befehl können Sie bestätigen, dass der Stream vorhanden ist.

    aws kinesisvideo list-streams
  2. Wenn der Stream vorhanden ist, überprüfen Sie Folgendes.

    • Der Amazon-Ressourcenname (ARN) ist identisch mit dem ARN des Eingabestroms für den Stromprozessor.

    • Der Kinesis-Videostrom befindet sich in derselben Region wie der Stromprozessor.

    Wenn der Stream-Prozessor nicht korrekt konfiguriert ist, löschen Sie ihn mit dem folgenden AWS CLI Befehl.

    aws rekognition delete-stream-processor --name stream-processor-name
  3. Erstellen Sie einen neuen Stromprozessor mit dem beabsichtigten Kinesis Video Stream. Weitere Informationen finden Sie unter Erstellen des Amazon-Rekognition-Video-Gesichtssuche-Stromprozessors.

Fehler: „Sammlung nicht gefunden“

Die vom Stromprozessor für die Gesichtsprüfung verwendete Amazon-Rekognition-Sammlung ist nicht vorhanden, oder die falsche Sammlung wird verwendet.

So bestätigen Sie die Sammlung
  1. Verwenden Sie den folgenden AWS CLI Befehl, um festzustellen, ob die erforderliche Sammlung vorhanden ist. Wechseln Sie region zu der AWS Region, in der Sie Ihren Stream-Prozessor ausführen.

    aws rekognition list-collections --region region

    Wenn die erforderliche Sammlung nicht vorhanden ist, erstellen Sie eine neue Sammlung und fügen Sie Gesichtsinformationen hinzu. Weitere Informationen finden Sie unter Gesichtssuche in einer Sammlung.

  2. Überprüfen Sie bei Ihrem Aufruf von CreateStreamProcessor, ob der Wert des CollectionId Eingabeparameters korrekt ist.

  3. Starten Sie den Stream-Prozessor mit dem folgenden AWS CLI Befehl.

    aws rekognition start-stream-processor --name stream-processor-name

Fehler: „output-kinesis-data-streamStream-Name unter Konto-ID nicht gefunden“

Der Kinesis-Ausgabedatenstream, der vom Stream-Prozessor verwendet wird, ist in Ihrer Region nicht vorhanden AWS-Konto oder befindet sich nicht in derselben AWS Region wie Ihr Stream-Prozessor.

So beheben Sie Probleme mit dem Kinesis-Datenstrom
  1. Verwenden Sie den folgenden AWS CLI Befehl, um festzustellen, ob der Kinesis-Datenstrom vorhanden ist. Wechseln Sie region zu der AWS Region, in der Sie Ihren Stream-Prozessor verwenden.

    aws kinesis list-streams --region region
  2. Wenn der Kinesis-Datenstrom vorhanden ist, überprüfen Sie, ob der Name des Kinesis-Datenstroms dem des Ausgabestroms entspricht, der vom Stromprozessor verwendet wird.

  3. Wenn der Kinesis-Datenstream nicht existiert, ist er möglicherweise in einer anderen AWS Region vorhanden. Der Kinesis-Datenstrom muss sich in derselben Region wie der Stromprozessor befinden.

  4. Erstellen Sie bei Bedarf einen neuen Kinesis-Datenstrom.

    1. Erstellen Sie einen Kinesis-Datenstrom mit demselben Namen wie dem des Stromprozessors. Weitere Informationen finden Sie unter Schritt 1: Erstellen eines Datenstroms.

    2. Starten Sie den Stream-Prozessor mit dem folgenden AWS CLI Befehl.

      aws rekognition start-stream-processor --name stream-processor-name

Mein Stromprozessor gibt nicht die erwarteten Ergebnisse zurück

Wenn Ihr Stromprozessor nicht die erwarteten Gesichtstreffer zurückgibt, verwenden Sie die folgenden Informationen.