Anpassen des Videolayouts für zusammengestellte Archive

Mit der OpenTok-REST-API können Sie das Layout der Videos in einem OpenTok-Archiv anpassen.

Diese Funktion gilt für zusammengesetzte Archive, nicht für einzelne Archive. (Allgemeine Informationen zu OpenTok-Archiven finden Sie unter OpenTok-Archiv – Entwicklerhandbuch.)

Übersicht

Standardmäßig ordnen OpenTok-Archive die Videos aus der OpenTok-Sitzung in einem Kachel-Layout an. Das folgende Beispiel veranschaulicht das Layout bei 1, 2, 4 oder 5 Streams in einer Sitzung:

Dies wird als „Best-Fit“-Layout bezeichnet. Alternativ können Sie aus einer Reihe weiterer vordefinierter Layouts wählen. Bei den anderen Layouts weisen Sie jedem OpenTok-Videostream einen Klassennamen zu, um festzulegen, wie er im Layout dargestellt wird. (Siehe Vordefinierte Layout-Typen.)

Sie können auch Ihre eigenen benutzerdefinierten Layouts mit CSS definieren. Siehe Definieren von benutzerdefinierten Layouts.

Standardmäßig hat das zusammengesetzte Archiv eine Größe von 640 × 480 Pixel (SD im Querformat, Seitenverhältnis 4:3). Einzelne OpenTok-Videos werden in rechteckigen Containern innerhalb des Archivvideos angeordnet. Wenn das Seitenverhältnis eines einzelnen Videostreams nicht mit dem des Containers übereinstimmt (z. B. bei einem HD-Video oder einem Bildschirmfreigabevideo), wird es mit schwarzen Balken umrandet, damit es in den Container passt. Die folgende Abbildung zeigt beispielsweise ein „Best-Fit“-Layout mit zwei SD-Videos im Querformat (4:3) (1 und 4) und zwei HD-Videos im Querformat (16:9) (2 und 3):

Sie können ein zusammengesetztes Archiv auch so einstellen, dass es eine Auflösung von 480x640 (SD im Hochformat, Seitenverhältnis 3:4), 1280×720 (HD im Querformat, Seitenverhältnis 16:9), 720×1280 (HD im Hochformat, Seitenverhältnis 9:16), 1920×1080 (FHD Querformat, Seitenverhältnis 16:9) oder 1080×1920 (FHD Hochformat, Seitenverhältnis 9:16) verwenden soll, wenn Sie die Archiv starten Methode der OpenTok-REST-API. Bei der Aufzeichnung von Archiven, die Videostreams von Mobilgeräten enthalten (die häufig das Hochformat verwenden), empfiehlt es sich, das Hochformat zu verwenden.

Um diese Funktion zu nutzen:

Sie können auch Ihre eigenen benutzerdefinierte Layouts.

Festlegen des anfänglichen Layouttyps

Wenn Sie die Archivierung für eine Sitzung mithilfe der OpenTok-REST-API starten, können Sie optional den Typ des anfänglichen Archivlayouts festlegen.

Setzen Sie die Anforderungs-URL für die POST-Anforderung wie folgt:

https://api.opentok.com/v2/project/{apiKey}/archive

Setzen Sie die Content-Type zu application/json und legen Sie den Layout-Typ als Eigenschaft der in der POST-Anfrage gesendeten JSON-Daten fest:

{
  "sessionId": "2_MX44NTQ1MTF--bm1kTGQ0RjVHeGNQZE51VG5scGNzdVl0flB-",
  "layout": {
    "type": "pip"
  },
  "name" : "archive_name",
  "outputMode" : "composed"
}

Wenn Sie ein benutzerdefiniertes Layout verwenden (siehe Definieren von benutzerdefinierten Layouts), lege die type Eigenschaft zu "custom" und das Stylesheet als zusätzliche Eigenschaft übergeben –stylesheet:

{
  "sessionId": "2_MX44NTQ1MTF--bm1kTGQ0RjVHeGNQZE51VG5scGNzdVl0flB-",
  "layout": {
    "type": "custom",
    "stylesheet": "stream.instructor {position: absolute; width: 100%;  height:50%;}"
  },
  "name" : "archive_name",
  "outputMode" : "composed"
}

Sie können außerdem einen Layouttyp festlegen, der verwendet werden soll, wenn in der Sitzung ein Bildschirmfreigabe-Stream vorliegt, indem Sie die screenshareType Eigenschaft der layout Eigenschaft (siehe Layouts für die gemeinsame Bildschirmnutzung):

{
  "sessionId": "2_MX44NTQ1MTF--bm1kTGQ0RjVHeGNQZE51VG5scGNzdVl0flB-",
  "layout": {
    "type": "bestFit",
    "screenshareType": "pip"
  },
  "name" : "archive_name",
  "outputMode" : "composed"
}

Authentifizieren Sie den REST-Aufruf mithilfe eines JWT-Tokens (siehe OpenTok REST-API Authentifizierung):

X-OPENTOK-AUTH: <token>

Wenn Sie einen ungültigen Typ angeben, gibt die Anfrage einen 400-Fehler-Antwortcode zurück.

Sie können den anfänglichen Layout-Typ auch beim Starten eines Archivs mithilfe der OpenTok-Server-SDKs festlegen:

Wenn Sie keinen anfänglichen Layouttyp angeben, verwendet das zusammengestellte Archiv den Layouttyp „Best Fit“. Wenn Sie einen anderen Layouttyp angeben, achten Sie darauf, die entsprechenden Layoutklassen für die Streams in der OpenTok-Sitzung anzuwenden (siehe Zuordnung von Layout-Klassen zu OpenTok- Streams).

Siehe Vordefinierte Layout-Typen.

Dynamische Änderung des Layouttyps während einer Archivaufzeichnung

Sie können den Layouttyp dynamisch ändern, indem Sie die Funktion /archive/layout REST-API. Senden Sie eine PUT-Anfrage an die folgende URL:

https://api.opentok.com/v2/project/{apiKey}/archive/{archiveId}/layout

Setzen Sie die Content-Type zu "application/json" und fügen Sie den Layout-Typ als Eigenschaft der JSON-Daten in der PUT-Anfrage ein:

{
  "type": "pip"
}

Wenn Sie eine benutzerdefiniertes Layout setzen die type Eigenschaft zu "custom" und das Stylesheet als zusätzliche Eigenschaft übergeben—stylesheet:

{
  "type": "custom",
  "stylesheet": "stream.instructor {position: absolute;  width: 100%;  height:50%;}"
}

Sie können außerdem einen Layouttyp festlegen, der verwendet werden soll, wenn in der Sitzung ein Bildschirmfreigabe-Stream vorliegt, indem Sie die screenshareType Eigenschaft (siehe Layouts für die gemeinsame Bildschirmnutzung):

{
  "type": "bestFit",
  "screenshareType": "pip"
}

Authentifizieren Sie den REST-Aufruf mithilfe eines JWT-Tokens (siehe OpenTok REST-API Authentifizierung):

X-OPENTOK-AUTH: <token>

Wenn Sie einen ungültigen Typ angeben, gibt die Anfrage einen 400-Fehler-Antwortcode zurück.

Sie können den Layout-Typ auch mithilfe der OpenTok-Server-SDKs ändern:

Wenn Sie einen anderen Layouttyp als den Standardtyp „Best Fit“ festlegen, achten Sie darauf, die entsprechenden Layoutklassen für die Streams in der OpenTok-Sitzung anzuwenden (siehe Zuordnung von Layout-Klassen zu OpenTok- Streams).