Voraussetzungen
- Der Live-API-Schlüssel für Ihr Konto.
- In Ihrem Live-Konto muss die Planerüberschreibung aktiviert sein.
Erstellen Sie einen Clip-Planer-Workflow
Beim Erstellen eines Clips müssen Sie sowohl die Zeitgrenze des Clips angeben (in der output
Feld) und eine geplante Zeit (time_utc
Feld), um die Clip-Anfrage zu stellen.
Das output
Feld im Anforderungshauptteil unterstützt alle gleichen Felder des outputs
Feld im Standard-VOD-Endpunkt. Jedoch, geplante Clips unterstützen nur eine einzelne Ausgabe und keine Liste. Sehen Support-Dokumente für VOD-Clipping für Details zu verfügbaren Feldern.
Normalerweise würden Sie einstellen time_utc
um die Endgrenze Ihres Clips anzupassen. Die geplante Zeit MUSS hinter der Endgrenze des Clips liegen, andernfalls schlägt die Clipanforderung zum geplanten Zeitpunkt fehl.
Zeitstempel für die time_utc
Das Feld muss in UTC als Unix-Zeitstempel in Sekunden formatiert sein. Sie können verwenden https://www.unixtimestamp.com/ zur Konvertierung.
Angenommen, wir möchten einen 15-minütigen Clip planen, der um beginnt 2021-02-09T13:55:00+00:00
. Wir können die verwenden output.start_time
und output.end_time
um unsere Clipgrenze als Unix-Zeit in Sekunden anzugeben. (Wieder, siehe Support-Dokumente für VOD-Clipping für Details zu verfügbaren Feldern).
start_time:
2021-02-09T13:55:00+00:00 = 1612878900
end_time:
2021-02-09T14:10:00+00:00 = 1612879800
Da der Scheduler auch eine Zeit benötigt, um die Clip-Anforderung zu planen, können wir denselben Wert wie verwenden end_time
da ist es auch unix zeit in sekunden.
Wir möchten auch ein Videocloud-Video für den Clip erstellen output
. Ein Videocloud-Video wird zum Zeitpunkt der Planung des Workflows erstellt und seine ID wird in der Antwort zurückgegeben, damit Sie die Video-ID kennen, bevor der Clip erstellt wird. Wenn Sie die Clip-Anfrage später abbrechen oder zum geplanten Zeitpunkt fehlschlagen, wird das Videocloud-Video NICHT von Ihrem Konto entfernt.
Anfrage
Gehen Sie wie folgt vor, um den Workflow zu erstellen POST
Anfrage:
https://api.bcovlive.io/v1/scheduler/clip
Header
Content-Type: application/json
X-API-KEY: your API Key
Anfragetext
{
"job_id": "your Job ID",
"description": "My Scheduled Clip",
"clip": {
"output": {
"label": "My Scheduled Clip",
"start_time": 1612878900,
"end_time": 1612879800,
"videocloud": {
"video": {
"name": "My Scheduled Clip"
}
}
},
"time_utc": 1612879800
}
}
Beispielantwort
{
"account_id": "your Account ID",
"description": "My Tuesday Clip",
"type": "clip",
"job_id": "your Job ID",
"clip": {
"state": "pending",
"output": {
"label": "My Scheduled Clip",
"start_time": 1612878900,
"end_time": 1612879800,
"videocloud": {
"video": {
"id": "70702010152202",
"name": "My Scheduled Clip"
}
}
},
"time_utc": 1612879800
}
"workflow_id": "d44cf29f4f184757ac0995beb8a0097e",
}
Beachten Sie, dass clip.output.videocloud.video.id
enthält die ID des neu erstellten Videocloud-Videos. Beim time_utc
Die Videoquelle wird mit dem aufgenommenen Clip aktualisiert.
Aktualisieren eines Clip-Scheduler-Workflows
Sie können beide aktualisieren output
und time_utc
Ihres Clips. Diese können nur aktualisiert werden, wenn sich der Job in einem ausstehenden Zustand befindet: "state": "pending"
.
Nach dem vorherigen Beispiel möchten wir, dass der Clip 5 Minuten kürzer ist als geplant. Beim Aktualisieren der output
Feld müssen Sie das vollständige Objekt angeben, nicht nur die vorgenommenen Änderungen. Dies beinhaltet die Videocloud-Video-ID, die vom obigen Aufruf zum Erstellen zurückgegeben wurde.
Beachten Sie, dass wir in diesem Beispiel beide aktualisiert haben end_time
und time_utc
um die 5-minütige Reduzierung widerzuspiegeln.
Anfrage
Gehen Sie wie folgt vor, um den Workflow zu aktualisieren PUT
Anfrage:
https://api.bcovlive.io/v1/scheduler/clip/{workflow_id}
Header
Content-Type: application/json
X-API-KEY: your API Key
Anfragetext
{
"clip": {
"output": {
"label": "My Scheduled Clip",
"start_time": 1612878900,
"end_time": 1612879500,
"videocloud": {
"video": {
"id": "70702010152202",
"name": "My Scheduled Clip"
}
}
},
"time_utc": 1612879500
}
}
Beispielantwort
{
"account_id": "your Account ID",
"description": "My Tuesday Clip",
"type": "clip",
"job_id": "your Job ID",
"clip": {
"state": "pending",
"output": {
"label": "My Scheduled Clip",
"start_time": 1612878900,
"end_time": 1612879500,
"videocloud": {
"video": {
"id": "70702010152202",
"name": "My Scheduled Clip"
}
}
},
"time_utc": 1612879500
}
"workflow_id": "d44cf29f4f184757ac0995beb8a0097e",
}
Abbrechen eines Clip-Planer-Workflows
Sie können den Clip mit einem abbrechen DELETE
Anfrage.
Beachten Sie beim Abbrechen eines Clip-Workflows, dass jedes zum Zeitpunkt der Planung erstellte Videocloud-Video NICHT vom Backend entfernt werden. Sie müssen verwaiste Videos manuell aus Ihrem Videocloud-Konto entfernen.
Anfrage
Gehen Sie wie folgt vor, um den Workflow zu aktualisieren DELETE
Anfrage:
https://api.bcovlive.io/v1/scheduler/clip/{workflow_id}
Header
X-API-KEY: Ihr API-SchlüsselAnfragetext
Es gibt keinen Anfragetext für diese Anfrage.
Beispielantwort
{
"account_id": "your Account ID",
"description": "My Tuesday Clip",
"type": "clip",
"job_id": "your Job ID",
"clip": {
"state": "cancelled",
"output": {
"label": "My Scheduled Clip",
"start_time": 1612878900,
"end_time": 1612879500,
"videocloud": {
"video": {
"id": "70702010152202",
"name": "My Scheduled Clip"
}
}
},
"time_utc": 1612879500
}
"workflow_id": "d44cf29f4f184757ac0995beb8a0097e",
}
Benachrichtigungen
Beim Erstellen des Workflows können Sie optional Benachrichtigungen konfigurieren. Sie müssen eine URL für unseren Service angeben POST
zu. Wir werden eine Benachrichtigung senden, wenn der Scheduler den Clip-Aufruf tätigt. Sie können auch konfigurieren, dass eine Benachrichtigung empfangen wird n
Sekunden vor dem Clip. Siehe die Live-Planer-Benachrichtigungen für mehr Details.
Beispielanfragetext
{
"job_id": "your Job ID",
"description": "My Scheduled Clip",
"notification_url": "https://example.com/live/clip/callbacks",
"clip": {
"output": {
"label": "My Scheduled Clip",
"start_time": 1612878900,
"end_time": 1612879800,
"videocloud": {
"video": {
"name": "My Scheduled Clip"
}
}
},
"time_utc": 1612879800,
"notification": 600
}
}