In diesem Thema erfahren Sie, wie Sie das verwenden Dynamic Ingest API zum Hochladen und Verwalten von Videoinhalten.
API-Funktionalität
Die Dynamic Ingest (DI) -API von Brightcove basiert auf Funktionen, bei denen Videoquelldateien vom Speicherort des Kunden heruntergeladen und bestimmte Wiedergaben der Quelldateien erstellt werden. (Es gibt auch eine Option zum Hochladen Ihrer Quelldateien an einen temporären Speicherort, an dem Dynamic Ingest-Zugriff darauf haben kann.) Die Plattform ist Cloud-zentrisch, global verteilt und basiert auf modernen Praktiken, um erstklassige Konsistenz und Geschwindigkeit zu erzielen.
Überblick über Workflow
Eine Reihe von Systemen/Technologien wird bei der gesamten Transkodierung und Speicherung von Medien verwendet. Diese lauten:
- CMS-API (Content Management System):: Erstellt ein Video-Objekt zur Verwendung in der DI-API
- Zencoder: Transkodiert das Video und erstellt mehrere Wiedergaben
- Amazon S3: Verschiebt den Master und die Formatvarianten basierend auf den Profileinstellungen in den Speicher
- katalog: Speichert die mit dem Video verbundenen erforderlichen Informationen
Nach der anfänglichen Transkodierung haben Sie die folgenden Aktionen, die Sie auf den Medien ausführen können:
- Neu transkodieren:: Neue Formatvarianten erstellen, wenn der Master vorhanden ist (Fehler, wenn der Master nicht vorhanden ist)
- Ersetzen: Zeigen Sie auf einen neuen Master oder ersetzen Sie einen vorhandenen Master
Betrieb
Wenn Sie die DI-API verwenden, führen Sie verschiedene Vorgänge durch, z. B. das Lesen eines Aufgaufprofils und das Schreiben von Ingest-Informationen in Ihr Konto. Im Folgenden finden Sie eine vollständige Liste der Vorgänge, die für DI-Aufgaben erforderlich sind:
- video-wolke/video/erstellen
- video-wolke/video/lesen
- video-wolke/video/update
- Video-Cloud / Ingest-Profile / Profil / Lesen
- Video-Cloud / Ingest-Profile / Konto / Lesen
- Video-Cloud / Ingest-Profile / Konto / Schreiben
- Video-Cloud / Aufnahme-Profile / Profil / Schreiben
- Video-Cloud / Upload-URLs / Lesen
Um Client-Anmeldeinformationen zu erhalten, verwenden Sie die Studio-Admin-Tools oder sehen Sie sich eines der folgenden Dokumente an
Best-Practices
Gültige Quellstandorte
Dynamic Ingest kann Quellvideodateien aus folgenden Quellen abrufen: HTTP / HTTPS oder S3 - mit oder ohne Authentifizierung
Beispiele:
- http://example.com/path/to/input.avi
- https://dl.dropboxusercontent.com/u/3641457/Bird_Titmouse.mp4
- s3: //my-bucket/video.mp4
Hinweise zu S3
Wenn sich Ihre Videos in einem geschützten S3-Bucket befinden, finden Sie unter Verwenden von Dynamic Ingest-Einnahmen mit S3 weitere Informationen zum Einrichten von Berechtigungen für den Zugriff auf Ihre Dateien.
Zu den Vorteilen der Pull-basierten Aufnahme gehören ein einfacherer Workflow und ein Repository Ihrer eigenen digitalen Master. Wenn dies für Sie jedoch keine Option ist, können Sie sie auch verwenden Hochladen der Quelldatei um Ihre Videos und andere Assets an einen temporären Speicherort hochzuladen, von dem aus Dynamic Ingest darauf zugreifen kann.
Namen von Quelldateien
Alle Eingangs-URLs müssen ordnungsgemäß gemäß RFC 3986 codiert sein, wenn sie an Brightcove gesendet werden. Dies bedeutet, dass alle im Pfad der URL gefundenen reservierten Zeichen in Prozent codiert sind (Leerzeichen, in die codiert werden %20
und alle in der Abfrage der URL gefundenen reservierten Zeichen in Prozent codiert sind (Leerzeichen, die in +
oder %20
, und +
wird in codiert %2B
).
Ein vorsigniertes S3 (v2 enthält Signature , Expires und awsAccessKeyId und v4 enthält X-Amz-Algorithmus, X-Amz-Credential, X-Amz-Date, X-Amz-Expires, x-amz-SignedHeaders und X-Amz-Signature) oder GCS(enthält Signature, Expires und GoogleAccessId) url sollte bereits ordnungsgemäß codiert sein und kann unversehrt verwendet werden.
Aufnahme von Videos
Für die Aufnahme von Videos sind zwei API-Aufrufe erforderlich:
- Rufen Sie den CMS API auf, um ein Video-Objekt im Video Cloud-System zu erstellen und seine ID zu erhalten
- Rufen Sie die DI-API auf, um die URL für die Videoquelldatei anzugeben, und geben Sie die an Profil aufnehmen benutzt werden
Ein Beispielsatz von grundlegenden Anfragen würde wie folgt aussehen:
CMS-API-Anfrage
- HTTP-Methode
- POST
- Anfrage-URL
- https://cms.api.brightcove.com/v1/accounts/{account_id}/videos
- Anfrage Body
-
{ "name": "My new video" }
Die Antwortdaten enthalten das Video id
, das bei der nächsten Anfrage verwendet wird.
Erstelle API Anfrage
- HTTP-Methode
- POST
- Anfrage-URL
- https://ingest.api.brightcove.com/v1/accounts/{account_id}/videos/{video_id}/ingest-requests
- Anfrage Body
-
{ "master": { "url": "http://host/master.mp4" }, "profile": "high-resolution" }
Siehe die Schnellstart Einzelheiten zu den API-Aufrufen finden Sie unter a Arbeitsprobe.
Zum CMS API Rufen Sie an, um das Video im Video Cloud-System zu erstellen CMS API Übersicht. Beachten Sie, dass das Video erforderlich name
ist und dass der Name und alle anderen Zeichenfolgen, die für Video-Metadaten (wie die description
) enthalten sind, uriscodiert sein müssen.
Beispiel Assets
Brightcove Learning Services bietet einige Beispiel-Assets, mit denen Sie bei den ersten Schritten mit Dynamic Ingest experimentieren können. Zu diesen Assets gehören kurze Videos, Bilder und WebVTT-Untertitel in mehreren Sprachen:
Ersetzen Sie ein Video
Um ein Video durch eine neue Version oder eine neue Reihe von Wiedergabeversionen zu ersetzen, ist der Dynamic Ingest API Aufruf genau derselbe wie für die Aufnahme neuer Videos - der einzige Unterschied besteht darin, dass Sie keinen vorherigen Anruf bei der CMS API um das Video-Objekt im Video Cloud-System zu erstellen und eine ID dafür zu erhalten. Wenn die Quellvideodatei unter der angegebenen URL dieselbe ist, die ursprünglich aufgenommen wurde, erhalten Sie einfach einen neuen Satz von Wiedergabeversionen. Wenn die Quelldatei neu ist, ersetzen Sie das vorhandene Video. Alle Videos bleiben mit vorhandenen Darstellungen abspielbar, bis die Retranscodierung abgeschlossen ist.
Sehen Sie das Arbeitsbeispiel hier.
Retranscodieren Sie ein Video
Wenn Sie möchten Archiviere einen Meister wenn Sie das Video über die aufgenommen haben Dynamic Ingest API oder das Studio-Upload-Modul, dann können Sie das Video auch vom Master erneut transkodieren. Auch hier ist die URL für die Aufgabeanfrage dieselbe, aber der Anfragetext hat Folgendes:
// request
POST /v1/accounts/{account_id}/videos/{video_id}/ingest-requests
// request body
{
"master": { "use_archived_master": true },
"profile": "videocloud-default-v1"
}
Bilder
Du kannst den ... benutzen Dynamic Ingest API um Poster- und Miniaturbilder aus Ihrem Video aufzunehmen oder eigene Bilder hinzuzufügen. Einzelheiten finden Sie unter Bilder und die Dynamic Ingest API.
Untertitel aufnehmen
Sie können Ihrem Video auch WebVTT-Untertitel hinzufügen oder diese mithilfe von Dynamic Ingest für ein vorhandenes Video hochladen. Einzelheiten finden Sie unter WebVTT-Dateien aufnehmen.
DRM und HLSe
Dynamic Ingest verarbeitet Videos, die einen der von Brightcove unterstützten DRM-Typen verwenden. HLSe wird ebenfalls unterstützt.
Archivierung von Wiedergaben
Standardmäßig werden alle Video- und Bildwiedergaben automatisch archiviert. Wenn Sie die Archivierung von Wiedergaben deaktivieren möchten, Wenden Sie sich an den Brightcove-Support. Beachten Sie, dass digitale Meister werden archiviert, wenn dies im Aufnahmeprofil angegeben ist.
Benachrichtigungen
Sie können eine oder mehrere Rückruf-URLs angeben, um Benachrichtigungen über die Ergebnisse des Aufnahmeprozesses zu erhalten. Die von Ihnen angegebenen URLs sollten für Apps sein, die POST-Anfragen annehmen können. Benachrichtigungen werden im JSON-Format gesendet.
Details zum Empfangen und Interpretieren von Benachrichtigungen finden Sie in Benachrichtigungen: Dynamic Ingest- und CMS-APIs