mimoLive® - Användarmanual

Generiska selektorer
Endast exakta träffar
Sök i titeln
Sök i innehåll
Val av inläggstyp

Handbok - Innehållsförteckning

Datatyper

Innehållsförteckning

Minskning av API svarar med sparsmakad filtrering

Om den API svar är för mycket data, kan du begränsa vilka data du vill få tillbaka genom Sparse Filtering. För sparse filtering har du två fält som hjälper dig med detta:

- "include=", kommer att beskriva vilka kategorier av JSON svar ska inkluderas. Du kan ange flera sökvägar separerade med kommatecken.
- "field[]=," kommer att beskriva vilka värden som ska inkluderas i den specifika kategorin. Du kan ha flera fältdefinitioner för att ange olika värden för varje kategori.

Exempel: Du vill läsa ut om en viss Filinspelning Utdatad destination för närvarande spelas in eller inte. I det här fallet är vi intresserade av värdet "live-state" för kategorin "attributes" i rotkategorin "data". Detta innebär att vi måste ange sökvägen för include-kategorin som "data.attributes". Kategorin "attribut" innehåller flera värden men vi vill bara se "live-state" i svaren, det är därför vi begränsar det med "fields[attributes]=live-state"

Detta utgör följande curl-kommando: (Se till att ersätta och med dina egna värden!)

curl "http://192.168.0.107:8989/api/v1/documents//output-destinations/?include=data.attributes&fields[attributes]=live-state"

Svaren kommer att se ut på följande sätt:

{"data":{"attributes":{"live-state":"preview"}}}

Dokument

Typen "dokument" motsvarar det dokumentobjekt som mimoLive skriver till disk som ".tvshow"-filer.

{
  // Unique Identifier of the document
  "id": String,
  // Always "documents" (see the JSON-API documentation for more information on this field)
  "type": "documents",
  // See the JSON:API specification for more information on this field
  "relationships": {
    // The layer contained in the document
    "layers": Relationship,
    // The sources used by the document
    "sources": Relationship,
    // The output destinations used by this document
    "output-destinations": Relationship
  },
  // The link to the resource itself (see the JSON:API specification for more information on this field)
  "links": Object,
  // This is probably the data you are after
  "attributes": {
    // The name of the document
    "name": String,
    // Metatdata of the document
    "metadata": {
      // Comments as entered in the show metadata panel in mimoLive
      "comments": String,
      // The height of the document in pixels
      "height": Integer,
      // The width of the document in pixels
      "width": Integer,
      // The author of the document as entered in the show metadata panel in mimoLive
      "author": String,
      // The title of the show as entered in the show metadata panel in mimoLive
      "title": String,
      // The proposed show length (timer) as entered in the show metadata panel inmimoLive (in seconds)
      "duration": Integer,
      // The framerate of the document in frames per second
      "framerate": Float,
      // The generic show name as entered in the show metadata panel in mimoLive
      "show": String,
      // The audio samplerate of the document in hz
      "samplerate": Integer
    },
    // The live state of the document/show (see LiveState for possible values and their meaning)
    "live-state": LiveState,
    // If the show is currently live, the current length of the show in seconds
    "duration": Integer,
    // If the show is currently live, timestamp when the show went live (can be used together with "metadata.duration" and "duration" to compute a countdown)
    "show-start": Integer
  }
}

Skikt

Typen "lager" representerar de lager som används i renderingspipelinen för att generera videoutdata från mimoLive.

{
  // Unique identifier of the layer
  "id": String,
  // Always "layers" (see the JSON-API documentation for more information on this field)
  "type": "layers",
  // See the JSON:API specification for more information on this field
  "relationships": {
    // The document this layer is part of
    "document": Relationship,
    // All the layer variants for this layer
    "variants": Relationship,
    // The variant that is currently live (null otherwise)
    "live-variant": Relationship,
    // The variant that is active/selected for that layer
    "active-variant": Relationship
  },
  // The link to the resource itself (see the JSON:API specification for more information on this field)
  "links": Object,
  // Attributes of the layer (this is probably the data you are after)
  "attributes": {
    // The composition identifier for the layer, this can be used to differentiate the various layer types
    "composition-id": String,
    // The live state of the layer (see LiveState for possible values and their meaning)
    "live-state": LiveState,
    // The name of the layer as displayed in the mimoLive layer stack
    "name": String,
    // The user-controlled volume of the layer, as seen in the layer stack
    // where 0.0 means silence and 1.0 is full volume.
    // If the layer has no volume control, the value is null.
    "volume": Float | null,
    // The inputs used for the layer (composition). The keys come directly from the underlying QuartzComposition. Check out the custom layer protocol for more information on the key names and their meaning. The layer reports the "input-values" from either "live-variant" or the "active-variant" if the layer is not live.
    "input-values": Object,
    // Description object for each of the keys returned in "input-values"
    "input-descriptions": {
      (String): {
        // Whether the input is currently hidden in the mimoLive user interface
        "hidden": Bool,
        // The type of the input ("string", "number", "index", "bool", "color", "image", "structure")
        "type": String,
        // If applicable: The minimum value the input accepts
        "value-min": Float,
        // If applicable: The maximum value the input accepts
        "value-max": Float,
        // For dropdowns a list of names for the individual values
        "value-list": Array,
        // By which ammount a value should be increased or decreased
        "value-step": Float,
        // String that declares in which unit the value is (eg. "°C")
        "value-unit": String,
        // Label that is shown next to the input
        "label": String,
        // The index of the input (for sorting)
        "index": Integer
    	}
    },
    // Outputs from the last render cycle that were returned from QuartzComposer, including the original keys
    "output-values": Object,
    // The index of the layer in the layer stack (zero relates to the top of the stack)
    "index": Integer 
  }
}

*Attributet "volym" har lagts till i mimoLive 5.2.

Varianter

Typen "varianter" modellerar en instans av en lagerkonfiguration. De flesta lager har bara en variant, men för vissa lager (t.ex. Lower Thirds) är det vanligt att ha flera varianter med olika textinnehåll.
Varianter delar en hel del information med typen "lager". I själva verket fungerar ett lager mest som en proxy för dess för närvarande aktiva variant.

{
  // Unique identifier of the variant
  "id": String,
  // Always "variants" (see the JSON-API documentation for more information on this field)
  "type": "variants",
  // See the JSON:API specification for more information on this field
  "relationships": {
    // The layer this variant belongs to
    "layer": Relationship
  },
  // The link to the resource itself (see the JSON:API specification for more information on this field)
  "links": Object,
  // Attributes of the variant (this is probably the data you are after)
  "attributes": {
    // The live state of the variant (see LiveState for possible values and their meaning). If the layer is not live, the value will always be "off".
    "live-state": LiveState,
    // The name of the variant as displayed in the mimoLive layer stack
    "name": String,
    // The inputs used for the variant (composition). The keys come directly from the underlying QuartzComposition. Check out the custom layer protocol for more information on the key names and their meaning. The layer reports the "input-values" from either "live-variant" or the "active-variant" if the layer is not live.
    "input-values": Object,
    // Description object for each of the keys returned in "input-values"
    "input-descriptions": {
    	(String): {
        // Whether the input is currently hidden in the mimoLive user interface
        "hidden": Bool,
        // The type of the input ("string", "number", "index", "bool", "color", "image", "structure")
        "type": String,
        // If applicable: The minimum value the input accepts
        "value-min": Float,
        // If applicable: The maximum value the input accepts
        "value-max": Float,
        // For dropdowns a list of names for the individual values
        "value-list": Array,
        // By which ammount a value should be increased or decreased
        "value-step": Float,
        // String that declares in which unit the value is (eg. "°C")
        "value-unit": String,
        // Label that is shown next to the input
        "label": String,
        // The index of the input (for sorting)
        "index": Integer
      }
    },
    // Outputs from the last render cycle that were returned from QuartzComposer, including the original keys
    "output-values": Object
  }
}

Källor

Typen "källor" modellerar källor som används i lager, filter och andra källor, vilket ger ljud- och videoingångar till mimoLive.

{
  // Unique identifier of the source
  "id": String,
  // Always "sources" (see the JSON-API documentation for more information
  // on this field).
  "type": "sources",
  // See the JSON:API specification for more information on this field
  "relationships": {
    // The document this source is part of
    "document": Relationship,
    // The filters that process this source's video
    "filters": Relationship
  },
  // The link to the resource itself (see the JSON:API specification for
  // more information on this field).
  "links": Object,
  // Attributes of the variant (this is probably the data you are after)
  "attributes": {
    // The tally state of the source (see tally-state for possible values
    // and their meaning)
    "tally-state": TallyState,
    // The name of the source as displayed in mimoLive
    "name": String,
    // Whether the source supplies video
    "video": Bool,
    // [optionally] If the associated video hardware is currently connected
		// (Available since 5.5)
    "video-device-connected": Bool,
    // Whether the source supplies audio
    "audio": Bool,
    // [optionally] If the associated audio hardware is currently connected
		// (Available since 5.5)
    "audio-device-connected": Bool,
    // Summary text of the source as displayed in mimoLive
    "summary": String,
    // The identifier of the composition if the source is based on a QuartzComposition
    "composition-id": String,
    // The gain that is applied to audio comming from this source, as
    // controlled in the source settings view where 0.0 means silence,
    // 1.0 is the default and 2.0 means doubled volume.
    // Null if a source has no audio.
    "gain": Float | null,
    // The inputs used for the underlying composition (if it is a composition
    // source). Check out the custom layer protocol for more information on
    // the key names and their meaning.
    "input-values": Object,
    // Description object for each of the keys returned in "input-values"
    "input-descriptions": {
      (String): {
        // Whether the input is currently hidden in the mimoLive window
        "hidden": Bool,
        // The type of the input ("string", "number", "index", "bool",
        // "color", "image", "structure")
        "type": String,
        // If applicable: The minimum value the input accepts
        "value-min": Float,
        // If applicable: The maximum value the input accepts
        "value-max": Float,
        // For dropdowns a list of names for the individual values
        "value-list": Array,
        // By which ammount a value should be increased or decreased
        "value-step": Float,
        // String that declares in which unit the value is (eg. "°C")
        "value-unit": String,
        // Label that is shown next to the input
        "label": String,
        // The index of the input (for sorting)
        "index": Integer
      }
    },
    // Outputs from the last render cycle that were returned from
    // QuartzComposer, including the original keys
    "output-values": Object
  }
}
*

*Attributet "gain" har lagts till i mimoLive 5.2.

Filter

Typen "filter" representerar de filter som kan tilldelas videokällor för att bearbeta videon innan den används i lager.

{
  // Unique identifier of the filter
  "id": String,
  // Always "filters" (see the JSON-API documentation for more information on this field)
  "type": "filters",
  // See the JSON:API specification for more information on this field.
  "relationships": {
    // The source that this filter belongs to
    "source": Relationship
  },
  // The link to the resource itself (see the JSON:API specification for more information on this field)
  "links": Object,
  // Attributes of the variant (this is probably the data you are after)
  "attributes": {
    // The name of the filter as displayed in mimoLive
    "name": String,
    // The identifier of the filter's QuartzComposition
    "composition-id": String,
    // The inputs used for the underlying composition (if it is a composition source). Check out the custom layer protocol for more information on the key names and their meaning.
    "input-values": Object,
    // Description object for each of the keys returned in "input-values"
    "input-descriptions": {
      (String): {
        // Whether the input is currently hidden in the mimoLive user interface
        "hidden": Bool,
        // The type of the input ("string", "number", "index", "bool", "color", "image", "structure")
        "type": String,
        // If applicable: The minimum value the input accepts
        "value-min": Float,
        // If applicable: The maximum value the input accepts
        "value-max": Float,
        // For dropdowns a list of names for the individual values
        "value-list": Array,
        // By which ammount a value should be increased or decreased
        "value-step": Float,
        // String that declares in which unit the value is (eg. "°C")
        "value-unit": String,
        // Label that is shown next to the input
        "label": String,
        // The index of the input (for sorting)
        "index": Integer
      }
    },
    // Outputs from the last render cycle that were returned from QuartzComposer, including the original keys
    "output-values": Object
  }
}

Utgångsdestinationer

Tillgänglig sedan: mimoLive 4.2
Typen "output-destinations" modellerar de olika output-destinationerna som en mimoLive-show kan ha, inklusive inspelning, streaming och mer.

{
  // Unique identifier of the output destination
  "id": String,
  // Always "output-destinations" (see the JSON-API documentation for more information on this field)
  "type": "output-destinations",
  // See the JSON:API specification for more information on this field
  "relationships": {
    // The document that this output destination belongs to
    "document": Relationship
  },
  // The link to the resource itself (see the JSON:API specification for more information on this field)
  "links": Object,
  // Attributes of the variant (this is probably the data you are after)
  "attributes": {
    // The name of the output destination as displayed in mimoLive
    "title": String,
    /*
     The concrete type of output destination:
     - "File Recording"
     - "Audio Aux"
     - "Live Streaming"
     - "Virtual Camera"
     - "Fullscreen"
     - "Blackmagic Design"
     - "NDI®" (including the "®")
     */
    "type": String,
    // A summary containing the most important settings
    "summary": String,
    // Whether the output destination is properly configured
    "ready-to-go-live": Bool,
    // Whether the output destination is set to start when the mimoLive show starts
    "starts-with-show": Bool,
    // Whether the output destination is set to stop when the mimoLive show ends
    "stops-with-show": Bool,
    // Individual settings depending on the "type" of output destination (see below for reference)
    "settings": Object,
    // The current live state of the output destination (see below for how to interpret the values)
    "live-state": LiveState
  }
}

Individuella inställningar

Olika typer av utmatningsdestinationer har olika inställningar.
Nedan visas de olika typerna av "inställningar" objekt. För typer av utdatadestinationer som inte är listade kommer ordboken att vara tom.

{
  // Path to the folder that will contain the recording. Can be set to "null" to reset to initial value ("~/Movies').
  "location": String,
  // Filename that will be given to the recording. See below for placeholder values. Can be set to "null" to reset to initial value ("%document %year-%month-%day %hour-%minute-%second.%extension").
  "filename": String
}
{
  // Available since: mimoLive 5.5:
  // Ofuscated URL of the streaming endpoint.
  "rtmpurl": String,
  // Ofuscated steaming key.
  "streamingkey": String,
   // Public broadcast URL.
  "publicurl": String
}
*

Även om värdena "rtmpurl" och "streamingkey" är dolda kan du fortfarande ställa in dessa värden med en PATCH-begäran.

Platshållarvärden för filinspelningens "filnamn"-attribut

PlatshållareFörklaring
1TP3DokumentDokumentets namn inklusive tillägget .tvshow (beroende på användarens systeminställningar)
%shownamn på föreställningen
%extensionmov, utan prefixet .
1TP4år4 siffror år, t.ex. 2018
1TP4Månad2 siffror för månad, t.ex. 01 för januari
y2-siffrig dag, t.ex. 31
%hour2 siffror timme (24h-klocka), t.ex. 15
%minute2-siffriga minuter, t.ex. 45
%second2-siffriga sekunder, t.ex. 50

Lageruppsättningar

Tillgänglig sedan: mimoLive 4.8
Typen "lageruppsättningar" modellerar lageruppsättningar som användaren kan skapa och hantera i mimoLive.

{
  // Unique identifier of the layer set
  "id": String,
  // Always "layer-sets" (see the JSON-API documentation for more information on this field)
  "type": "layer-sets",
  // See the JSON:API specification for more information on this field
  "relationships": {
    // The document that this layer set belongs to
    "document": Relationship
  },
  // The link to the resource itself (see the JSON:API specification for more information on this field)
  "links": Object,
  "attributes": {
    // The name of the layer set as displayed in mimoLive
    "name": String,
    // Wheter the layer stack currently matches the configuration represented by the layer set
    "active": Bool
  }
} 

Levande stat

Typen "LiveState" representerar det tillstånd som ett dokument, lager eller variant kan befinna sig i. Möjliga värden är:

VärdeFörklaring
avLager: Lagret är avstängt och kommer inte att renderas.
 Dokument: Showen är inte igång.
 Destination för utdata: Utdatadestinationen kan inte gå live eftersom den inte är korrekt konfigurerad.
levandeLager: Lagret är live och kommer att renderas, på en variant betyder detta att lagret är live och varianten är live.
 Dokument: Showen pågår för närvarande.
 Utgångsdestination: Utgångsdestinationen är aktiv och sänder/spelar in data.
förhandsvisningLager: Lagret visas i förhandsgranskningskolumnen och kan snart kopplas live.
 Utgångsdestination: Output-destinationen är redo att gå live och väntar på kommandon.
avstängningLager: Lagret är för närvarande aktivt men håller på att stängas ned (t.ex. en utgående övergång).
startUtgångsdestination: Utmatningsdestinationen håller på att startas (t.ex. anslutning till en extern tjänst).

TallyState

En "TallyState" representerar det tillstånd som en källa kan vara i. Aktivitetsgraden är ordnad och endast den högsta användningen kommer att rapporteras. Möjliga värden (från låg till hög) är:

VärdeFörklaring
avKällan används för närvarande inte av mimoLive
i brukKällan används för närvarande någonstans inom mimoLive
effektKällan används för närvarande för att återges i en filterförhandsgranskning
förhandsvisningKällan används för närvarande inuti förhandsgranskningen
programKällan används för närvarande inuti programutgången

Din feedback

Hur skulle du betygsätta din erfarenhet av den här funktionen i mimoLive?

Senaste uppdatering Manual Sidor

Nyhetsbrev via e-post

Svenska

Delta i 24/7 Live Zoom® Demo

*krävs

Du måste ladda innehåll från reCAPTCHA för att skicka in formuläret. Observera att detta innebär att uppgifter delas med tredjepartsleverantörer.

Mer information