Controlling CasparCG from a Vizrt Mosart?

Hi,
Does anyone have experience controlling CasparCG from a Vizrt Mosart?

We have a Mosart and a couple of CasparCG’s, but we only control Caspar for the standard client.

Control form Mosart is most likly possible - Does there exist any setup guidelines?

Regards
Jogvan Olsen

Swedish Television does (or did) that. So probably somebody there can tell you more. Try contacting Olle @Soprani

Viz Mosart Release Notes - 4.0
Binaries for CasparCG are no longer distributed as part of the Viz Mosart installers. • Please contact Viz Mosart Support for further information.

Do we have any solution out there or any advice? Thanks.

Not a real solution, more a simple workaround.

We use Mosart for automation. We use a Vizrt engine for lowerthirds graphic, for Studio walls and fullscreen graphic we use CasperCG.

To control CasparCG form Mosart, we have a scene in our Vizrt CG engine with a script that send commands to CasparCG.

Mosart → Vizrt CG engine → CasparCG

Not an elegant solution, but it works.


I have attached a vizrt scene withe the script - but I had to change the extension before upload. Change the extension back to ‘.via’ before import to viz.

viz_script_renam_to_dot_via.htm (2.1 MB)

Vizrt Script:

'set caspar ip and port no.
dim caspar_ip as String = "127.0.0.1" 
Dim caspar_port as Integer = 5250

dim ct as Container
dim pi as PluginInstance
dim txt as Container
dim caspar_channel, caspar_layer, caspar_template, f0, f1  as string

sub OnInitParameters()
	RegisterParameterContainer("cCurrent", "Root")
end sub

sub start()
	ct = GetParameterContainer("cCurrent")

	'set caspar channel
	txt = ct.findSubcontainer("caspar_channel")
	pi = txt.GetFunctionPluginInstance("ControlText")
	pi.PushButton("refresh")
	caspar_channel = pi.GetParameterString("input")	
	
	'set  caspar layer
	txt = ct.findSubcontainer("caspar_layer")
	pi = txt.GetFunctionPluginInstance("ControlText")
	pi.PushButton("refresh")
	caspar_layer = pi.GetParameterString("input")
	
	'name of videofile to play
	txt = ct.findSubcontainer("f0")
	pi = txt.GetFunctionPluginInstance("ControlText")
	pi.PushButton("refresh")
	f0 = pi.GetParameterString("input")
	
	dim caspar_string =  "PLAY "& caspar_channel &"-"& caspar_layer & " \"" & f0 & "\" CUT 0 Linear RIGHT\r\n" 

	System.TcpSend(caspar_ip, caspar_port, caspar_string , 10)	
end sub

The script will send a command srting like this to CasparCG:
PLAY 1-10 “NAME_OF_VIDEOFILE” CUT 0 Linear RIGHT

Thank you very much for your answer, it is very helpful. I am trying to find a more complete and elegant solution for a television station. It seems there are indeed some challenges!

Don’t know if it is an option for you, but NRK’s opensource TV Automation tool Sofie, can be used as a replacement for Mosart, in some cases.
We are looking in to it, and most likely will we replace Mosart with Sofie automation and use CaspparCG for all our graphic and playout.
But Sofie has some challenges too – e.g. support for video switcher is very limited, as far as I know, only Blackmagic is supported. But Sofie is open source, so it can be fixed.

SuperFly, the creators of Sofie are also the biggest contributors to CasparCG and, as I know them, would be very happy to add support for the vison mixer you use. Just ask @hummelstrand

vmix and tricaster have been supported for a while now.