Skip to content

Models

This page describes the JSON structure for each of the components in the Erizos Studio Enviroment.

Shows

A Show is an object in Erizos Studio that represents a collection of playlists and templates.

Parameter Value Description
_id Uuid The id of the show
name String The name of the show
createdAt Date Date and time the show was created
updatedAt Date Date and time the show was last updated

Example Model

{
    "_id": "5d9f3427238f9f0e53b030f1",
    "name": "My Show",
    "createdAt": "2019-10-10T13:37:43.176Z",
    "updatedAt": "2020-01-12T10:14:40.278Z"
}

Playlists

A Playlist is an object that represents a collection of pages.

Parameter Value Description
_id Uuid The id of the playlist
show Uuid The id of the show the playlist belongs to
name String The name of the playlist
items Array A list of pages in the playlist
createdAt Date Date and time the playlist was created
updatedAt Date Date and time the playlist was last updated

Example Model

{
    "_id": "5d9f3427238f9f0e53b030f4",
    "show": "5d9f3427238f9f0e53b030f1",
    "name": "My Playlist",
    "items": [],
    "createdAt": "2019-10-10T13:37:43.323Z",
    "updatedAt": "2019-10-10T13:37:43.323Z"
}

Templates

A Template is an object that represents a graphic scene, it describes the model of the scene and additional data.

Parameter Value Description
_id Uuid The id of the template
aspect Float
system System The system the template was created on
path String The path to the template on the storage system
mode TEMPLATE/LAYERS Template: a stand alone template
Layers: a template that has child layers
model Object A description of the template model
name String The name of the template
show Date The Uuid of the Show the template belongs to
createdAt Date Date and time the template was created
updatedAt Date Date and time the template was last updated

Example Model

{
        "_id": "5df89437071dca32b3b533d4",
        "aspect": 1.7777777777777777,
        "system": "VIZRT",
        "path": "Vizrt/myTemplate",
        "mode": "TEMPLATE",
        "model": {
            "system": {
                "container": "$object",
                "layer": "MAIN_LAYER"
            },
            "fields": []
        },
        "name": "MyTemplate",
        "show": "5d9f3427238f9f0e53b030f2",
        "createdAt": "2019-12-17T08:39:19.346Z",
        "updatedAt": "2019-12-17T08:39:19.346Z",
    }

Pages

A Page represents an instance of a template, it stores the payload used to populate the template.

Parameter Value Description
_id Uuid The Uuid of the page
show Uuid The Uuid of the show the playlist belongs to
name String The name of the playlist
fields Array A list of fields in the page
template Date The Uuid of the template the page was created from
createdAt Date Date and time the page was created
updatedAt Date Date and time the page was last updated

Example Model

{
    "_id": "5dfb9c9f9848650d632b024f",
    "show": "5d9f3427238f9f0e53b030f2",
    "name": "My Page",
    "fields": [
        {
            "id": "01",
            "value": "Title"
        },
        {
            "id": "03",
            "value": "Title"
        }
    ],
    "template": "5dc3e8bcdd42b5ae0f82b5ea",
    "createdAt": "2019-12-19T15:51:59.210Z",
    "updatedAt": "2019-12-19T15:51:59.210Z"
}

Engines

An Engine represents a render engine, it stores the connection details and additional data to allowing sending graphic commands for output control.

Parameter Value Description
_id Uuid The id of the engine
type OutputType The type of the engine
name String The name of the engine
system System The system of the render engine
address String The IP address or hostname to connect to the render engine
port Integer The port number used to connect to the render engine
data Object Additional metadata used to connect to the engine
createdAt Date Date and time the engine was created
updatedAt Date Date and time the engine was last updated
connected Boolean If Erizos Studio can currently connect to the render engine

Example Model

{
        "_id": "5df8955a071dca32b3b533e5",
        "type": "SNAPSHOT",
        "name": "My Engine",
        "system": "CASPER_CG",
        "port": 5250,
        "data": {
            "channel": 1
        },
        "address": "127.0.0.0",
        "createdAt": "2019-12-17T08:44:10.981Z",
        "updatedAt": "2019-12-17T08:44:10.981Z",
    }

Profiles

A Profile is a collection of channels that contain the output engines.

Parameter Value Description
_id Uuid The id of the profile
name String The name of the profile
channels Array An array of channels of the profile
createdAt Date Date and time the profile was created
updatedAt Date Date and time the profile was last updated

Example Model

{
    "_id": "5e1b3fe7c6e1457e208d1185",
    "name": "My Profile",
    "channels": [],
    "createdAt": "2020-01-12T15:48:55.650Z",
    "updatedAt": "2020-01-12T15:48:55.650Z",
}

Channels

A Channel is a collection of output engines. A channel is a member of a profile.

Parameter Value Description
_id Uuid The id of the channel
name String The name of the channel
engines Array An array of Engine ids
type ChannelType Defines if the channel is a program or preview channel

Example Model

{
    "engines": [
        "5dc18eefe514176cabab8357",
        "5df75f311c7ef778028f65d2"
    ],
    "_id": "5e1b42a9c6e1457e208d1187",
    "name": "My Channel",
    "type": "PROGRAM"
}

Primitive Types

Uuid

A unique system identifier, Uuid is a string made of 24 hexadecimal characters

ID

Either a uuid or the name of the object, when specifying a name, Studio will perform a case-insensitive lookup, first matching object will be used.

Date

All dates are in the format of YYYY-MM-DDTHH:MM:SS.sssZ

Enumerations

System

Value Description
UE Unreal Engine
PIXOTOPE Pixotope
VIZRT Viz Engine
SINGULAR Singular.live
CASPER_CG CasperCG

Output Type

The type of a render engine

Value Description
OUTPUT Regular engine (default)
SNAPSHOT Provides preview snapshots

Channel Type

Value Description
NONE
PREVIEW Preview Channel
PROGRAM Program Channel

User Role

Value Description
ADMIN Admin
EDITOR Editor - Can create & edit pages, but not operate a studio
DESIGNER Designer - Can access the UI Builder
OPERATOR Operator - Can access the studio