Integrieren Sie Ihr CMS in Video Cloud

In diesem Thema lernen Sie die grundlegenden Vorgänge bei der Integration von Brightcove Video Cloud in ein CMS kennen. Darin sind typische Funktionen aufgeführt, die Benutzer innerhalb des CMS ausführen, sowie die Brightcove-API-Vorgänge, die zur Bereitstellung dieser Funktionen verwendet werden können.

Benutzerfunktionen

Nachfolgend finden Sie Funktionen im Zusammenhang mit Video Cloud dass Sie möglicherweise Benutzer Ihres CMS bereitstellen möchten:

  • Neue Videos hinzufügen zu Video Cloud
  • Ersetzen Sie a Video Cloud Video mit einer neuen Version
  • Metadaten für Videos aktualisieren, z. B. Titel, Beschreibung und Tags
  • Videos löschen
  • Playlists erstellen
  • Ändern Sie die Videos in einer Playlist
  • Wiedergabelisten löschen
  • Videoplayer erstellen
  • Eigenschaften des Videoplayers ändern, z. B. Abmessungen oder Stil
  • Fügen Sie Videoplayern durch Plugins spezielle Funktionen hinzu
  • Veröffentlichen Sie einzelne Videos oder Playlists
  • Bereitstellung von Analysedaten zu Videoladevorgängen, Aufrufen, Wiedergaberaten, Engagement usw.

Möglicherweise möchten Sie Ihren Endbenutzern nicht all diese Funktionen zur Verfügung stellen - Sie möchten beispielsweise nicht zulassen, dass sie Videos löschen. Einer der Vorteile der Integration Video Cloud mit Ihrem CMS, anstatt Benutzer direkt zu gehen Video Cloud In Studio können Sie genau auswählen, welche Funktionen den Benutzern über die Brightcove-APIs zur Verfügung gestellt werden sollen.

Authentifizierung

Für alle Brightcove-API-Anfragen basiert die Authentifizierung auf OAuth2-Zugriffstoken. Es gibt einen zweistufigen Prozess zum Abrufen von Zugriffstoken:

  1. Erstellen Sie Client-Anmeldeinformationen mit Berechtigungen für die benötigten API-Operationen
  2. Verwenden Sie die Client-Anmeldeinformationen, um ein temporäres Zugriffstoken zu erstellen, um eine API-Anfrage zu authentifizieren

Kundenanmeldeinformationen erstellen

Das Erstellen von Client-Anmeldeinformationen ist eine einmalige Operation, die ausgeführt werden kann Video Cloud Studio oder der OAuth API . Wie auch immer du es tust, a client_id und client_secret zurückgegeben, die Sie speichern müssen, um Zugriffstoken anzufordern.

Zugriffstoken erstellen

Temporäre Zugriffstoken werden mit dem erstellt OAuth API . Das client_id und client_secret muss Base64-codiert sein und als Basic Autorisierungszeichenfolge übergeben werden.

Die access_token zurückgegeben wird wiederum in einem Authorization-Header mit dem API-Aufruf übergeben:

    Authorization: Bearer your_access_token
    
    

Zugriffstoken sind 5 Minuten lang gültig. Sofern Sie keine Batch-Operation ausführen, die Hunderte von aufeinander folgenden API-Aufrufen ausführt, ist es sinnvoll, für jeden API-Aufruf einfach einen neuen anzufordern, anstatt zu versuchen, das Timeout zu verfolgen.

Hinzufügen Videos

Wenn Sie möchten, dass Benutzer Videos hinzufügen Video Cloud Von Ihrem CMS aus können Sie dies mit dem tun Dynamic Ingest API . Wir empfehlen, dass Benutzer Videos in Ihr Repository hochladen, bei dem es sich um einen S3-Bucket oder nur um einen öffentlich zugänglichen Server handeln kann. Das Dynamic Ingest-System kann die Videos abrufen und zum hinzufügen Video Cloud System durch einen zweistufigen Prozess, der unten beschrieben wird.

Hinzufügen eines Videoobjekts zu Video Cloud

Der erste Schritt besteht darin, ein Videoobjekt in der zu erstellen Video Cloud System durch die Herstellung eines POST Anfrage an die CMS API::

    https://cms.api.brightcove.com/v1/accounts/:account_id/videos
    
    

Der Anforderungshauptteil enthält grundlegende Videoeigenschaften in a JSON Objekt - minimal das Video name Sie können jedoch auch zusätzliche Metadaten wie a description und tags::

    {
    "name": "Woodpecker",
    "description": "A bird that hunts insects inside wood",
    "reference_id": "Bird_Woodpecker.mp4",
    "tags": ["bird", "air", "nature"]
    }
    
    

Aufnahme des Videos

Wenn Sie das Videoobjekt erstellen, wird das CMS API wird a zurückgeben JSON Objekt, das die Videoeigenschaften enthält. Sie werden das Video extrahieren id von dem JSON und verwenden Sie es, um einen Anruf bei der Dynamic Ingest API um die Aufnahme und Transcodierung des Videos anzufordern:

    https://ingest.api.brightcove.com/v1/accounts/ACCOUNT_ID/videos/VIDEO_ID/ingest-requests
    
    

Wieder wirst du senden JSON im Anforderungshauptteil, der den Speicherort der Videodatei angibt:

    {
      "master":{
        "url":"https://support.brightcove.com/test-assets/videos/Great_Blue_Heron.mp4"
      },
      "profile":"multi-platform-extended-static",
      "capture-images": true
    }
    
    

Die profile Hier ist das Aufnahmeprofil, das angibt, welche Wiedergabeversionen beim Transcodierungsprozess erstellt werden sollen. In den meisten Fällen sollte eines der folgenden Standardprofile ausreichen:

Dynamische Lieferprofile

  • multi-platform-extended-static
  • multi-platform-standard-static

Ältere Aufnahmeprofile

  • videocloud-default-v1 (the default)
  • screencast-1280
  • smart-player-transition
  • single-bitrate-high
  • audio-only
  • single-bitrate-standard
  • high-resolution

Sie können jedoch bei Bedarf mithilfe der Option zusätzliche benutzerdefinierte Aufnahmeprofile erstellen Ingest Profiles API oder mit Video Cloud Studio.

Hinzufügen von Poster- und Miniaturbildern

Das capture-images Option im obigen Code anweist Video Cloud um Poster- und Miniaturbilder für das Video in der Mitte des Transcodierungsprozesses aufzunehmen. Alternativ können Sie einstellen capture-images zu false und nehmen Sie stattdessen Bilder auf, entweder gleichzeitig mit der Aufnahme des Videos oder später:

    {
    "master":{
    "url":"https://support.brightcove.com/test-assets/videos/Great_Blue_Heron.mp4"
    },
    "profile":"multi-platform-extended-static",
    "capture-images": false,
    "poster": {
    "url": "https://some.site.com/images/for_video/titmouse-poster.png",
    "width": 640,
    "height": 360
    },
    "thumbnail": {
    "url": "https://some.site.com/images/for_video/titmouse-thumbnail.png",
    "width": 160,
    "height": 90
    }
    }
    
    

Sehen Bilder und die Dynamic Ingest API für mehr Details.

Hinzufügen von Textspuren für Untertitel oder Kapitel

Sie können auch die verwenden Dynamic Ingest API um Textspuren hinzuzufügen WebVTT Dateien zu Videos, entweder zum Zeitpunkt der Aufnahme oder später. Textspuren werden zum Hinzufügen verwendet Bildunterschriften oder Kapitel zu einem Video.

    {
    "master":{
    "url":"https://some.site.com/videos/mp4/Bird_Woodpecker.mp4"
    },
    "profile":"multi-platform-extended-static",
    "capture-images": false,
    "poster": {
    "url": "https://some.site.com/images/for_video/titmouse-poster.png",
    "width": 640,
    "height": 360
    },
    "thumbnail": {
    "url": "https://some.site.com/images/for_video/titmouse-thumbnail.png",
    "width": 160,
    "height": 90
    },
    "text_tracks": [
    {
    "url": "https://some.site.com/captions/for_video/Water-in-Motion.vtt",
    "srclang": "en",
    "kind": "captions",
    "label": "English",
    "default": true
    }
    ]
    }
    
    

Sehen Aufnahme von WebVTT-Dateien für mehr Details.

Verwaltung Videos

Das CMS API ermöglicht es Ihnen, Videodaten für ein Konto zurückzugewinnen. (Wie oben gezeigt, wird es auch zum Erstellen von Videoobjekten als Teil des Videoaufnahmeprozesses verwendet.) Die grundlegendste Anfrage lautet wie folgt:

    https://cms.api.brightcove.com/v1/accounts/account_id/videos
    
    

Standardmäßig gibt diese Anforderung a zurück JSON Array von 20 Videoobjekten mit einer Vielzahl von Metadaten, einschließlich Name, Beschreibung, Tags, benutzerdefinierten Feldern, Erstellungsdatum und zuletzt geänderter Daten, URLs für Poster und Miniaturansicht und vielem mehr.

Sie können die Ergebnisse der Anfrage verfeinern, indem Sie der Anfrage einen oder mehrere der folgenden Parameter hinzufügen:

limit
dies bestimmt die Anzahl der zurückzugebenden Videoobjekte und kann auf eine beliebige Zahl bis 100 eingestellt werden - der Standardwert ist 20
offset
dies bestimmt die Anzahl der zu übersprinnenden Elemente und wird daher zusammen mit dem limit Durchblättern des Videokatalogs verwendet - der Standardwert ist 0
sort
dies bestimmt das Video-Metadatenfeld, nach dem das Ergebnis sortiert werden soll. Standardmäßig werden die Ergebnisse nach sortiert updated_at(absteigend, um die zuletzt aktualisierten Videos zuerst anzuzeigen)

Sehen CMS API Übersicht - Parameter Für detaillierte Informationen zu diesen Parametern.

Nach Videos suchen

Sie können auch nach einer Vielzahl von Kriterien nach Videos suchen, indem Sie die q Parameter. Sie können nach bestimmten Feldern wie Name, Beschreibung und Tags sowie nach Datum und Status der Videos suchen:

    https://cms.api.brightcove.com/v1/accounts/account_id/videos?q=tags:sea,mammal
    
    

Details und alle Suchmöglichkeiten finden Sie unter Nach Videos suchen.

Ein bestimmtes Video abrufen und aktualisieren

So rufen Sie ein bestimmtes Video anhand seiner ID oder Referenz-ID ab:

    https://cms.api.brightcove.com/v1/accounts/account_id/videos/id
    or
    https://cms.api.brightcove.com/v1/accounts/account_id/videos/ref:reference_id
    
    

EIN GET Anfrage gibt das Videoobjekt zurück. Um es zu aktualisieren, ändern Sie die JSON und geben Sie es mit a zurück PATCH Anfrage an die gleiche URL.

Wiedergabelisten

Playlist-Informationen werden auch mit dem verwaltet CMS API ähnlich wie Videoinformationen. Beachten Sie, dass Video Cloud unterstützt acht Arten von Wiedergabelisten in zwei Kategorien:

Manuelle (oder EXPLICIT) Wiedergabelisten
enthalten einen bestimmten Satz von Videos - bis zu 100 Videos können enthalten sein
Intelligente Wiedergabelisten
dynamisch zur Laufzeit basierend auf Suchkriterien erstellt - es gibt sieben Arten von intelligenten Wiedergabelisten, die der Reihenfolge der Videos in der Liste entsprechen:
  • ACTIVATEDOLDESTTONEWEST
  • ACTIVATEDNEWESTTOOLDEST
  • ALPHABETICAL
  • PLAYSTOTAL
  • PLAYSTRAILINGWEEK
  • STARTDATEOLDESTTONEWEST
  • STARTDATENEWESTTO_OLDEST

Das Limit für die Anzahl der Videos kann auf eine beliebige Zahl von bis zu 100 festgelegt werden.

Wie bei Videos können Sie alle Playlists abrufen, indem Sie limit und offset um durch die Ergebnisse zu blättern, wenn das Konto über eine große Anzahl von Playlists verfügt:

    https://cms.api.brightcove.com/v1/accounts/account_id/playlists
    
    

Das zurückgegebene Array von Wiedergabelistenobjekten enthält Metadaten für die Wiedergabeliste, einschließlich der type entspricht einem der oben beschriebenen Typen. Wenn der Typ ist EXPLICIT, wird es auch ein video_ids Array geben, das die IDs der eingebundenen Videos enthält. Wenn es sich bei dem Typ um einen der intelligenten Playlist-Typen handelt, wird eine search Eigenschaft angezeigt, die die Suchzeichenfolge enthält, mit der die Videos abgerufen werden, etwa so:

    q=tags:fish,birds
    
    

Sie können eine einzelne Wiedergabeliste auch anhand ihrer id:

    https://cms.api.brightcove.com/v1/accounts/account_id/playlists/playlist_id
    
    

Wenn Sie die vollständigen Videoobjekte für eine Wiedergabeliste abrufen müssen (um Informationen zu den Videos auf einer Seite anzuzeigen), fügen Sie einfach hinzu /videos zu dieser URL:

    https://cms.api.brightcove.com/v1/accounts/account_id/playlists/playlist_id/videos
    
    

Beachten Sie, dass die Anfrage bei einer intelligenten Wiedergabeliste die Videos zurückgibt, die derzeit den Suchkriterien entsprechen, dies kann sich jedoch ändern.

Spieler erstellen

Brightcove-Player können über das erstellt werden Player Management API . Mit der API können Sie Player erstellen, ihre Eigenschaften aktualisieren und den Einbettungscode in Form einer URL abrufen iframe -Tag oder einen HTML-Block zum Einbetten in die Seite.

Sie können bis zu 200 Spieler pro Konto haben, aber im Allgemeinen ist es für Benutzer weniger verwirrend, so wenige Spieler zu haben, wie Sie unbedingt benötigen. Sie sollten separate Player zum Abspielen einzelner Videos oder Playlists haben, aber ansonsten benötigen Sie unterschiedliche Player nur dann, wenn sie anders gestaltet sind oder unterschiedliche Funktionen durch Plugins hinzugefügt werden.

Um einen Spieler zu erstellen, erstellen Sie einfach einen POST Anfrage an die Player Management API::

    https://players.api.brightcove.com/v2/accounts/account_id/players
    
    

Fügen Sie im Hauptteil der Anfrage die Spielerkonfiguration - das einzige was benötigt wird ist a name:

    {
    "name": "Single video player for blog posts"
    }
    
    

In der Antwort erhalten Sie die Spieler-ID sowie den Einbettungscode in mehreren Formen:

    {
    "embed_code": "<iframe src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
    "embed_in_page": "https://players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/in_page.embed",
    "id": "de055fa4-4f09-45af-8531-419c6794ad04",
    "preview_embed_code": "<iframe src='//preview-players.brightcove.net/v1/accounts/57838016001/players/de055fa4-4f09-45af-8531-419c6794ad04/preview/embeds/default/master/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
    "preview_url": "https://preview-players.brightcove.net/v1/accounts/57838016001/players/de055fa4-4f09-45af-8531-419c6794ad04/preview/embeds/default/master/index.html",
    "url": "https://players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html"
    }
    
    

Um die vollständige Player-Konfiguration zu erhalten, stellen Sie eine Anfrage an die /players Endpunkt, aber fügen Sie die Spieler-ID hinzu, die in der obigen Antwort zurückgegeben wird:

    https://players.api.brightcove.com/v2/accounts/account_id/players/de055fa4-4f09-45af-8531-419c6794ad04
    
    

Sie können eine machen PATCH Fordern Sie denselben Endpunkt an, die Player-Konfiguration zu aktualisieren.

Sie werden in der obigen Antwort feststellen, dass preview_embed_code und preview_url. Um das Testen neuer Spieler oder Spielerupdates zu ermöglichen, werden neu erstellte oder aktualisierte Spieler in den Vorschaumodus versetzt, damit Sie sie sehen können, bevor Sie Änderungen an bestehende Spieler weiterleiten. Um Änderungen in die Produktion zu übertragen, müssen Sie veröffentlichen der Spieler mit dieser Anfrage:

    https://players.api.brightcove.com/v2/accounts/account_id/players/de055fa4-4f09-45af-8531-419c6794ad04/publish
    
    

Anpassen von Spielern

Die Brightcove-Player wird mit Standard-Webtechnologien erstellt: HTML, CSS und JavaScript. Sie können den Player mit denselben Technologien anpassen. Dies kann auf der Seite erfolgen, auf der der Player veröffentlicht wird, aber am besten fügen Sie Ihre Anpassungen dem Player selbst über den Player hinzu Aufbau , Aktualisieren des Players über a PATCH Anfrage an die Player Management API wie im vorigen Abschnitt erklärt.

Sie können dem Player auch zusätzliche Features und Funktionen hinzufügen JavaScript Plugins und es gibt eine umfangreiche Player-API um Ihnen zu helfen, Ihren Code in den Player zu integrieren. Brightcove bietet eine Reihe von vorgefertigten Plugins für Dinge wie das Aktivieren von Werbung, das Anpassen des Endscreens und das Hinzufügen von Overlays.

Veröffentlichen von Videos

In dem Spielerbereich erstellen oben haben wir gesehen, dass, wenn Sie das Player-Konfigurationsobjekt mit dem erhalten Player Management API Die zurückgegebenen Daten enthalten ein Iframe-Tag zum Einbetten des Players in eine HTML-Seite sowie eine URL für das vollständige HTML, wenn Sie den Player direkt in eine Seite einbetten möchten.

Für jede Einbettung, die Sie auswählen, müssen Sie eine hinzufügen Video Cloud Video-ID oder Wiedergabelisten-ID zum Einbettungscode, um dem Player Inhalte hinzuzufügen. Der Iframe-Einbettungscode sieht wie folgt aus:

    <iframe
    src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html'
    allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>
    
    

An die URL für den Player müssen Sie den Parameter anhängen videoId={}video_id, damit der vollständige Einbettungscode wie folgt aussieht:

    <iframe
    src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html?videoId=4483119716001'
    allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>
    
    

Wenn dies ein Playlist-Player ist, verwenden Sie den Parameter playlistId={playlist_id} stattdessen. Die Modifikation des In-Page-Einbettungscodes ist ähnlich.

Sofern die Spielerabmessungen nicht in der Player-Konfiguration festgelegt sind, musst du auch die Größe des Players anpassen, indem du einem style Attribut Breite und Höhe hinzufügst:

    <iframe
    src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html?videoId=4483119716001'
    allowfullscreen webkitallowfullscreen mozallowfullscreen
    style=width:640px;height:360px;></iframe>
    
    

Analytics-Berichte abrufen

Das Analytics API ermöglicht es Ihnen, Analyseberichte von vielen verschiedenen zu erstellen dimensions. Siehe die Maßanleitungen für mehr Informationen.

Sie können den Datumsbereich für den Bericht und die Kennzahlen angeben, die zurückgegeben werden sollen, und Sie können die Daten im JSON csv, oder xlxs Format abrufen.

Für Zeiträume innerhalb des letzten Monats können Sie auch detaillierte Engagement-Berichte die Aufrufe für jeden hundertsten Teil des Videos anzeigen.

Zusammenfassung der APIs

Hier ist eine Zusammenfassung der APIs, die für die Integration in nützlich sind Video Cloud.

OAuth API
Wird verwendet, um Client-Anmeldeinformationen und Zugriffstoken für den Zugriff auf die anderen APIs zu erstellen.
Medienmanagement
Ingest Profiles API
Wird verwendet, um benutzerdefinierte Aufnahmeprofile zu erstellen, in denen die Wiedergaben angegeben sind, die für hinzugefügte Videos erstellt werden sollen Video Cloud
Dynamic Ingest API
Wird verwendet, um Videos und zugehörige Medienelemente hinzuzufügen Video Cloud
CMS API
Wird verwendet, um Videoobjekte für die Aufnahme zu erstellen und Videos und Wiedergabelisten zu verwalten
Brightcove-Spieler
Der Brightcove-Player
Der Spieler enthält a JavaScript API zur Interaktion mit dem Player zur Laufzeit
Player Management API
Wird verwendet, um Player zu erstellen und zu konfigurieren und um den Player-Einbettungscode zu erhalten
Analytics API
Wird verwendet, um Analyseberichte zur Videoleistung zu erhalten