Freigeben über


Dinge, die bei der Verwendung von Azure AI Video Indexer im Großen und Maßstab zu berücksichtigen sind

Wenn Sie Azure AI Video Indexer zum Indizieren von Videos verwenden und Ihr Archiv von Videos wächst, sollten Sie die Skalierung in Betracht ziehen.

In diesem Artikel werden Fragen wie die folgenden beantwortet:

  • Gibt es technologische Einschränkungen, die ich berücksichtigen muss?
  • Gibt es eine intelligente und effiziente Vorgehensweise?
  • Kann ich verhindern, dass im Prozess zu viel Geld ausgegeben wird?

Der Artikel enthält sechs bewährte Methoden für die Verwendung von Azure AI Video Indexer im großen Maßstab.

Erwägen Sie beim Hochladen von Videos die Verwendung einer URL anstelle eines Bytearrays.

Azure AI Video Indexer bietet Ihnen die Wahl, Videos aus einer URL oder direkt durch Senden der Datei als Bytearray hochzuladen, letzteres enthält einige Einschränkungen.

Zunächst weist es Einschränkungen bei der Dateigröße auf. Die Größe der Bytearray-Datei ist auf 2 GB begrenzt, während die Größenbeschränkung beim Hochladen unter Verwendung einer URL bei 30 GB liegt.

Betrachten Sie zudem nur einige der Probleme, die Ihre Leistung und damit Ihre Möglichkeit zur Skalierung beeinflussen können:

  • Das Versenden von Dateien in mehreren Teilen bedeutet eine hohe Abhängigkeit von Ihrem Netzwerk,
  • Dienstzuverlässigkeit,
  • Konnektivität,
  • Uploadgeschwindigkeit,
  • verlorene Pakete im World Wide Web.

Erste Überlegungen zur Verwendung von Azure AI Video Indexer im Maßstab

Wenn Sie Videos mithilfe einer URL hochladen, müssen Sie lediglich einen Pfad zum Speicherort einer Mediendatei angeben, und Video Indexer kümmert sich um den Rest (siehe das Feld videoUrl in der API zum Hochladen von Videos).

Tipp

Verwenden Sie den optionalen Parameter videoUrl der API zum Hochladen von Videos. Darüber hinaus können Sie AzCopy für eine schnelle und zuverlässige Möglichkeit verwenden, um Ihre Inhalte auf ein Speicherkonto zu übertragen, aus dem Sie sie mithilfe der SAS-URL an Azure AI Video Indexer übermitteln können. Azure AI Video Indexer empfiehlt die Verwendung von readonly SAS-URLs.

Respektieren von Einschränkungen

Azure AI Video Indexer ist so aufgebaut, dass die Indizierung im großen Maßstab behandelt wird. Wenn Sie dies optimal nutzen möchten, sollten Sie auch die Funktionen des Systems kennen und Ihre Integration entsprechend entwerfen. Sie möchten keine Uploadanforderung für einen Batch von Videos senden, nur um festzustellen, dass einige der Filme nicht hochgeladen wurden und Sie einen HTTP 429-Antwortcode erhalten (aufgrund zu vieler Anforderungen). Es gibt ein API-Anforderungslimit von zehn Anforderungen pro Sekunde und bis zu 120 Anforderungen pro Minute.

Azure AI Video Indexer fügt einen retry-after Header in der HTTP-Antwort hinzu, der Header gibt an, wann Sie versuchen sollten, den nächsten Wiederholungsversuch auszuführen. Stellen Sie sicher, dass Sie ihn beachten, bevor Sie es mit Ihrer nächsten Anforderung versuchen.

Entwerfen Sie eine geeignete Integration, respektieren Sie die Einschränkung

Verwenden einer Rückruf-URL

Es wird empfohlen, dass Sie nicht den Status Ihrer Anforderung ständig von der zweiten, von der Sie die Uploadanforderung gesendet haben, eine Rückruf-URL hinzufügen und warten, bis Azure AI Video Indexer Sie aktualisiert. Sobald es eine Statusänderung in Ihrer Uploadanforderung gibt, erhalten Sie eine POST-Benachrichtigung an die von Ihnen angegebene URL.

Sie können eine Rückruf-URL als einen der Parameter der API zum Hochladen von Videos hinzufügen. Sehen Sie sich die Codebeispiele im GitHub-Repository an.

Als Rückruf-URL können Sie auch Azure Functions verwenden, eine serverlose ereignisgesteuerte Plattform, die über HTTP ausgelöst werden kann und einen folgenden Flow implementiert.

Definition der Rückruf-URL

Eine Rückruf-URL wird verwendet, um den Kunden (über eine POST-Anforderung) über die folgenden Ereignisse zu benachrichtigen:

  • Änderung des Indizierungszustands:

    • Eigenschaften:

      Name Beschreibung
      id Video-ID
      state Videozustand
    • Beispiel: https://test.com/notifyme?projectName=MyProject& id=1234abcd&state=Processed

  • Im Video identifizierte Person:

    • Eigenschaften

      Name des Dataflows Beschreibung
      id Video-ID
      faceId Die Gesichts-ID, die im Videoindex angezeigt wird
      knownPersonId Die Personen-ID, die innerhalb eines Gesichtsmodells eindeutig ist
      personName Der Name der Person
    • Beispiel: https://test.com/notifyme?projectName=MyProject& id=1234abcd&faceid=12&knownPersonId=CCA84350-89B7-4262-861C-3CAC796542A5&personName=Inigo_Montoya

Verwenden Sie die für Sie richtigen Indizierungsparameter

Wenn Sie Entscheidungen im Zusammenhang mit der Verwendung von Azure AI Video Indexer im Großen und Maßstab treffen, schauen Sie sich an, wie Sie es mit den richtigen Parametern für Ihre Anforderungen optimal nutzen können. Denken Sie über Ihren Anwendungsfall nach. Mithilfe der Definition verschiedener Parameter können Sie Geld sparen und den Indizierungsprozess für Ihre Videos beschleunigen. Legen Sie z. B. die Voreinstellung nicht auf Streaming fest, wenn Sie nicht vorhaben, das Video anzuschauen, und indizieren Sie keine Erkenntnisse aus Videoaufnahmen, wenn Sie nur Erkenntnisse aus Audioaufnahmen benötigen.

Indizieren in optimaler Auflösung, nicht in höchster Auflösung

Sie fragen sich vielleicht, welche Videoqualität Sie für die Indizierung Ihrer Videos benötigen.

In vielen Fällen besteht bei der Indizierungsleistung fast kein Unterschied zwischen HD-Videos (720P) und 4K-Videos. Schließlich werden Sie fast dieselben Erkenntnisse mit derselben Konfidenz erhalten. Je höher die Qualität des hochgeladenen Films ist, desto größer ist auch die Dateigröße, was zu einer höheren Rechenleistung und einem höheren Zeitaufwand für das Hochladen des Videos führt.

Beispielsweise kann für das Feature zur Gesichtserkennung eine höhere Auflösung in dem Szenario helfen, in dem es viele kleine, aber kontextbezogen wichtige Gesichter gibt. Dies kommt jedoch mit einer quadratischen Zunahme der Laufzeit und einem erhöhten Risiko falsch positiver Ergebnisse.

Wir empfehlen Ihnen daher, sich zu vergewissern, dass Sie die richtigen Ergebnisse für Ihren Anwendungsfall erhalten, und diesen zunächst lokal zu testen. Laden Sie dasselbe Video in 720P und in 4K hoch, und vergleichen Sie die gewonnenen Erkenntnisse.