SoluCGI

Knowledge Level Assumptions

This documentation assumes you have basic understanding of CasparCG Server and templates.

https://github.com/CasparCG/help/wiki/Server

You can always contact info@maistidigital.com if you require professional help.

Main concepts

SoluCGI can control one CasparCG server with 2 channels. Text written in the first cell of active row in playlist sheet acts as a command.

Commands can be AMCP commands or more user friendly soluCGI commands. SoluCGI commands are mapped into AMCP by creating a sheet named project.

The cells after the command are interpret as data. Pressing enter on a row will excecute that command. Only sheets that are named starting with a word playlist will run commands. You can have as many playlists you need.

note

Pressing Enter when a cell is in text editing mode will not send commands.

Ribbon

Server

Here you set the port (default is 5250) and IP/Name of the CasparCG Server and click Connect. These settings are stored after closing.

note

Remember to click Connect as successfull connection is needed in order to control the server.

Channels

SoluCGI is recommended to be used with a server that is configured to have 2 channels

Channel 1 = PROGRAM

Channel 2 = PREVIEW

A separate laptop for controlling the server instead of having all in one machine is also recommended.

Clear buttons quickly remove everything in a channel.

caution

Clear Channel 1 and Clear Channel 2 buttons don't clear any MIXER commands set on the channel.

Block buttons disable sending commands to that channel.

tip

Block Channel 1 and keep preparing safely while having a countdown timer etc. on Channel 1 without worrying something going on air by mistake.

Swap Channels will change channels 1 and 2 in any AMCP command

tip

Use Swap Channels in situations where you need a cost efficient backup. e.g. you have two separate servers. One for studio and for game feed and if one fails you stop using the preview on the working server with block and use that channel for the other feed by setting new server IP and swapping the channels and setting a block for the client.

Info

Here you find Information of the Add-In, activate the product or get help.

Console

Feedback from the CasparCG server is shown here

note

If the server sends multiple messages you will only see the last one.

Playlist

Any Sheet that is named so it starts with a word Playlist will run commands. Other sheets will not.

You can run AMCP command directly from the A column or use SoluCGI commands specified in the project sheet.

Pressing Enter key on a row will send commands to the CasparCG server. The active column doesn't matter.

Pressing Enter while in edit mode will not send a command.

Project sheet

You can freely name your SoluCGI commands in column A. Columns after that are for AMCP commands. One command per cell. AMCP commands can be extended with special keywords.

Example:

ABC
LOAD NAMECG 1-20 ADD 1 "Maisti/nameWithTitle" 0 [data]CG 2-20 ADD 1 "Maisti/nameWithTitle" 1 [data]
PLAY TEMPLATECG 1-20 PLAY 1CLEAR 2
CLEAR TEMPLATECG 1-20 STOP 1
tip

Preview templates on channel 2 while loading them on channel 1. Clear channel 2 when playing the template on channel 1.

Advanced Media Control Protocol (AMCP)

SoluCGI supports:

  • Basic commands
  • Template commands
  • Data commands
  • Mixer Commands

Query Commands and Thumbnail Commands have limited support. They can be sent but the response can only be viewed in server console.

info

You will find all AMCP commands from the CasparCG wiki:

https://github.com/CasparCG/help/wiki/AMCP-Protocol

Extending Template commands

AMCP syntax can be extended with the following tags. Tags are inserted inside square brackets. Template data send from SoluCGI will always have keys labeled as f0,f1,f2 etc.

[data]

TemplateData is created from the cells after command in the active row of a playlist sheet.

Example command on the project sheet:

AB
LOAD NAMECG 1-20 ADD 1 "Maisti/nameWithTitle" 0 [data]

Example usage on the playlist sheet:

ABC
LOAD NAMEfirstname lastnametitle text
PLAY TEMPLATE
CLEAR TEMPLATE

[cell]

Tag is replaced with the raw text as is from the first cell after command in the active row of a playlist sheet.

Example command on the project sheet:

AB
LOAD CLIPLOADBG 1-10 [cell] MIX 15
PLAY CLIPPLAY 1-10
FADE OUTPLAY 1-10 "#00000000" MIX 15

Example usage on the playlist sheet:

AB
LOAD CLIPSOLUCGI
PLAY CLIP
FADE OUT

[name]

TemplateData is created from a named range matching the text in the first cell after command in the active row of a playlist sheet.

Example command on the project sheet:

AB
LOAD INFOBOXCG 1-20 ADD 1 "Maisti/infobox" 0 [name]

Example usage on the playlist sheet:

AB
LOAD INFOBOXInfobox_sample_1
PLAY TEMPLATE
CLEAR TEMPLATE
note

When referencing named range use the name without equals sign (=)

VB API

Official SoluCGI API is coming soon, but if you can’t wait and want to work with macros then you can just choose the row with desired command and send enter key press.

Range("B4").Select 'Select row with desired command
SendKeys "~", False 'Send Enter