Callaba
Dokumentationsnavigation ein- oder ausblenden
Callaba-Startseite

Multiview

Mit Multiview überwachen Sie RTSP-, SRT-, RTMP- oder NDI-Eingänge gemeinsam in einem browserbasierten Multiviewer. Fügen Sie die RTSP-URL einer Kamera oder eines Medienservers direkt hinzu; nur für die Anzeige auf der Wand ist keine SRT- oder RTMP-Konvertierung erforderlich.

FunktionLive-Multiview für Operatoren erstellen

Geeignet, wennOperatoren benötigen eine Browser-Videowand für mehrere SRT-, RTMP- oder NDI-Feeds.

Anderes Modul verwenden, wennVerwenden Sie Webplayer für Zuschauer; Multiview ist für das operative Monitoring bestimmt.

1Live-Eingänge hinzufügen2Kacheln anordnen3Multiviewer öffnen
POST /api/multiview/create
12 Endpunkte

Voraussetzungen

Verwenden Sie x-access-token zum Konfigurieren, Starten, Stoppen und Erstellen authentifizierter Viewer-Sitzungen. Wenn visibility PUBLIC ist, kann jeder mit der Multiview-ID seine öffentliche Ansicht, Statistiken und Beitrittsmethoden verwenden, also teilen Sie die ID nur so weit wie beabsichtigt.

Funktionen

  • create speichert die Multiview-, Layout-, Sichtbarkeits- und Anfangseingaben; eine leere Eingabeliste ist gültig.
  • update wendet die vollständige gewünschte Eingabeliste und das Layout an.
  • getAll, getCount und getById prüfen gespeicherte Multiviews.
  • start und stop steuern die Monitoring-Laufzeit.
  • join gibt die Browsersitzungsdetails für einen autorisierten Viewer zurück.
  • remove löscht die Multiview.

Beispiel-Workflow

  1. Erstellen Sie ein privates Multiview mit dem gewünschten Layout; die Eingabeliste kann zunächst leer sein.
  2. Aktualisieren Sie das Multiview mit dem vollständigen Satz von RTSP-, SRT-, RTMP- oder NDI-Eingängen.
  3. Starten Sie die Multiview und rufen Sie die authentifizierte Join-Methode auf.
  4. Öffnen Sie die zurückgegebene Viewer-Sitzung und bestätigen Sie den Live-Status jeder Eingabe.
  5. Senden Sie die vollständige gewünschte Liste für spätere Updates; ausgelassene Eingaben werden entfernt.

Typische Anwendungsfälle

  • Überwachen Sie RTSP-Kameras direkt, ohne eine separate SRT-/RTMP-Brücke aufzubauen.
  • Überwachen Sie Primär- und Backup-Contribution-Feeds in einem Kontrollraum.
  • Geben Sie einem Remote-Produzenten eine Ansicht von Kameras, Programmausgabe und Rückgabefeeds.
  • Vergleichen Sie regionale oder Sprachausgaben vor der Verteilung.

Einschränkungen und Fehlerbehebung

Korrigieren Sie fehlende oder ungültige Namen, RTSP-URLs, Eingabe-IDs, Sichtbarkeitswerte oder Teilnehmerdaten, bevor Sie die Anfrage erneut senden. Ein Multiview kann verfügbar bleiben, während einer seiner Eingänge offline ist; prüfen Sie deshalb den Live-Status jedes Eingangs einzeln. Fügen Sie nur dann eine Verarbeitungspipeline hinzu, wenn eine Quelle Transcodierung, Größenänderung, Audioanpassungen oder ein separates Auslieferungsprotokoll benötigt.

Nächste Schritte

Verbinden Sie die vorgesehenen Feeds, prüfen Sie den Viewer-Zugriff und aktivieren Sie den öffentlichen Zugriff nur, wenn das Multiview geteilt werden soll.

REST-Lösungsrezept

Ein Operator-Multiview erstellen und verwalten

Erstellen Sie die Videowand mit geprüften Eingangs-Kacheln, aktualisieren Sie das Layout ohne neue Ressourcen-ID, starten Sie sie und prüfen Sie die gespeicherte Ressource vor der Freigabe eines öffentlichen Raums.

  1. Videowand erstellenDefinieren Sie Quellen-Kacheln, Layout, Sichtbarkeit und Operator-Einstellungen.POST /api/multiview/create
  2. Kacheln und Layout aktualisierenSenden Sie die vorhandene ID mit dem vollständig gewünschten Raum-, Quellen-, Sichtbarkeits- und Layoutzustand.POST /api/multiview/update
  3. Videowand startenStarten Sie das Multiview erst, nachdem seine Eingangsressourcen verfügbar sind.POST /api/multiview/start
  4. Verwaltete Videowand lesenPrüfen Sie Quellen- und Sichtbarkeitszustand über die authentifizierte Ressource, bevor Sie eine öffentliche ID freigeben.POST /api/multiview/getById
  5. Raumstatus lesenVerwenden Sie den öffentlichen Status-Aufruf nur für einen bewusst öffentlichen Raum.POST /api/multiview-public/getStat

Behandeln Sie eine öffentliche Multiview-ID als teilbares Zugriffsmittel. Halten Sie private Operator-Wände hinter authentifizierten Methoden.

Modulübergreifender Workflow

Einen Contribution-Feed empfangen, im Multiview überwachen und aufzeichnen

Stellen Sie zuerst den SRT-Ingest bereit, binden Sie dessen Ressourcen-ID an eine private Multiview-Kachel und verwenden Sie dieselbe fehlerfreie Quelle anschließend für eine Aufzeichnung.

  1. Contribution-Ingest erstellenKonfigurieren Sie Listener, Zugriff, Latenz und Routing und behalten Sie die zurückgegebene SRT-Server-ID.POST /api/srt-servers/create
  2. Ingest startenStarten Sie den Listener und bestätigen Sie die verbundene Contribution-Quelle vor dem Aufbau nachgelagerter Ressourcen.POST /api/srt-servers/start
  3. Private Videowand erstellenErstellen Sie das Multiview-Grundgerüst mit Layout, Sichtbarkeit und Overlay-Einstellungen.POST /api/multiview/create
  4. SRT-Kachel anbindenSetzen Sie source_id der Kachel auf die SRT-Server-ID und verwenden Sie den dokumentierten SRT-Software-Quellentyp.POST /api/multiview/update
  5. Operator-Monitoring startenStarten Sie die aktualisierte Wand und treten Sie über den authentifizierten Operator-Pfad bei.POST /api/multiview/start
  6. Archiv-Job erstellenWählen Sie denselben SRT-Server über das SRT-Eingabe-Preset des Recording-Moduls und legen Sie Format und Modus fest.POST /api/recording/create
  7. Aufzeichnung startenStarten Sie die Aufzeichnung erst bei stabilem Ingest und Operator-Multiview.POST /api/recording/start
  8. Aufzeichnungszustand prüfenÜberwachen Sie Bitrate, Bildrate, Ausgabezeit, Geschwindigkeit und Fortschritt unabhängig von der Videowand.POST /api/recording/getStat

Multiview wird derzeit mit einer leeren inputs-Liste erstellt. Fügen Sie die SRT-Kachel per Update hinzu: source_kind ist INPUT_TYPE_SRT_SOFTWARE und source_id ist die SRT-Server-ID. Der Recording-Create-Aufruf benötigt sein eigenes SRT-Eingabe-Preset; die Multiview-ID ist keine Recording-Quellen-ID.

POST
/api/multiview/create
API-Token erforderlich

Erstellen Sie ein Multiview. Sofern active nicht false ist, startet Callaba auch die zugeordneten Eingänge und die Konferenz. Der Benutzerbereich wird aus dem API-Token abgeleitet; senden Sie deshalb kein user_id.

Nächster Aufruf: Lesen Sie mit getById die gespeicherten Eingänge und fordern Sie anschließend mit join ein Operator-Token an.

Eine Antwort mit Status 400 hat die Form { success: false, status, code, message, details }.

Parameter im Request-Body
Identität
name
string
Direktlink kopieren

Erforderlicher, für Operatoren sichtbarer Name, 1–120 Zeichen.

Layout
layout_id
string
Direktlink kopieren

Optionale Layout-Kennung: Die Engine verwendet standardmäßig 4-tiles.

overlay_settings
object
Direktlink kopieren

Optionale Overlay-Konfiguration für die Videowand.

Eingänge
inputs
array
Direktlink kopieren

Optionale Eingabedefinitionen: Unterstützte Laufzeitquellentypen umfassen direktes RTSP sowie SRT-, RTMP- und NDI-Varianten. Beginnen Sie mit einem leeren Array, wenn Sie die Wand bereitstellen möchten, bevor Sie Feeds hinzufügen.

Zugang
visibility
string
Direktlink kopieren

Optional PRIVATE oder PUBLIC. Der Standard ist PRIVATE.

Laufzeit
active
boolean
Direktlink kopieren

Optionaler anfänglicher Laufzeitstatus. Standardmäßig aktiv, sofern nicht explizit auf false gesetzt.

Multiview erstellen
Code kopieren
curl --request POST \
--url http://localhost/api/multiview/create \
--header 'x-access-token: <your_api_token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "Master control multiview",
"layout_id": "4-tiles",
"visibility": "PRIVATE",
"overlay_settings": {},
"inputs": [],
"active": true
}'
Antwort
Identität
id
string
Direktlink kopieren

Stabile Multiview-Kennung.

name
string
Direktlink kopieren

Vom Operator vergebener Multiview-Name.

Layout
layout_id
string
Direktlink kopieren

Ausgewähltes Kachellayout, zum Beispiel 4-tiles.

inputs
array
Direktlink kopieren

Normalisierte Videoeingänge und deren Laufzeitbindungen.

Zugang
visibility
string
Direktlink kopieren

PRIVATE oder PUBLIC.

Laufzeit
conference_id
string
Direktlink kopieren

Zugeordnete Konferenz für die Bedienoberfläche.

active
boolean
Direktlink kopieren

Aktivstatus der Multiview-Laufzeit.

Antwort: Multiview erstellen
JSON
Code kopieren
{
"_id": "6b0011223344556677889900",
"id": "6b0011223344556677889900",
"name": "Master control multiview",
"conference_id": "6b1011223344556677889900",
"layout_id": "4-tiles",
"visibility": "PRIVATE",
"overlay_settings": {},
"inputs": [
{
"id": "camera-a",
"name": "Camera A",
"source_kind": "INPUT_TYPE_SRT_SOFTWARE",
"source_id": "6b2011223344556677889900",
"participant_name": "Camera A",
"resolution": "1920x1080",
"video_codec": "libx264",
"video_bitrate": 1350,
"tile_index": 0,
"muted": false,
"hidden": false,
"volume": 1
}
],
"active": true,
"created": "2026-06-25T10:00:00.000Z",
"modified": "2026-06-25T10:00:01.000Z",
"success": true
}
POST
/api/multiview/update
API-Token erforderlich
POST
/api/multiview/getCount
API-Token erforderlich
POST
/api/multiview/getAll
API-Token erforderlich
POST
/api/multiview/getById
API-Token erforderlich
POST
/api/multiview/start
API-Token erforderlich
POST
/api/multiview/stop
API-Token erforderlich
POST
/api/multiview/join
API-Token erforderlich
POST
/api/multiview-public/getById
Öffentlicher Endpunkt
POST
/api/multiview-public/getStat
Öffentlicher Endpunkt
POST
/api/multiview-public/join
Öffentlicher Endpunkt
DELETE
/api/multiview/remove
API-Token erforderlich