vMix Forums
»
General
»
General Discussion
»
Scoreboard triggers to title indicators from XML
Rank: Advanced Member
Groups: Registered
Joined: 5/1/2020(UTC) Posts: 31 Location: Tennessee Was thanked: 1 time(s) in 1 post(s)
|
I can't find the words to refine my search of what I'm trying to accomplish so hoping the forum can help. Is there a simple automation technique to take an XML value and translate that into the visibility change in a title using Vmix 4K. For example: I receive Live XML data from a scoreboard. Possession of ball is denoted by a "." in the XML field. (ie: <Hpos>. ) I'm trying to figure out a simple way to tell Vmix when the home field has the "." value to turn on the possession indicator (make visible) in the custom GT title field I've created, as well as turning it off if it's blank.
TIA
Kris
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 12/27/2012(UTC) Posts: 5,246 Location: Belgium Thanks: 294 times Was thanked: 961 time(s) in 795 post(s)
|
Originally Posted by: MSFTGuruGuy I can't find the words to refine my search of what I'm trying to accomplish so hoping the forum can help. Is there a simple automation technique to take an XML value and translate that into the visibility change in a title using Vmix 4K. For example: I receive Live XML data from a scoreboard. Possession of ball is denoted by a "." in the XML field. (ie: <Hpos>. ) I'm trying to figure out a simple way to tell Vmix when the home field has the "." value to turn on the possession indicator (make visible) in the custom GT title field I've created, as well as turning it off if it's blank.
TIA
Kris
check out the "scripting for dummies" post and find some examples of how to extract what is in a title field and based upon that content do some actions
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 5/1/2020(UTC) Posts: 31 Location: Tennessee Was thanked: 1 time(s) in 1 post(s)
|
I think it might either be that I haven't coded in 20 years, or that I have coded before and over thinking this, but I'm not really finding the right solution in the post let me try again (thanks in advance for the patience).
I have a live XML feed coming off a scoreboard, let's say its location is kept at x:/scoreboard.xml Ball possession is denoted by a simple "." in either <HomePOS> or <VisitorPOS> section of the XML generated. I'm trying to build a script that turns an image visibility in title "SCOREBUG" on/off based on who the XML has denoted has possession.
I know I'm overthinking this, but any shortcut help would be fantastic. I think it's writers block. :)
Kris
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 12/27/2012(UTC) Posts: 5,246 Location: Belgium Thanks: 294 times Was thanked: 961 time(s) in 795 post(s)
|
Originally Posted by: MSFTGuruGuy I think it might either be that I haven't coded in 20 years, or that I have coded before and over thinking this, but I'm not really finding the right solution in the post let me try again (thanks in advance for the patience).
I have a live XML feed coming off a scoreboard, let's say its location is kept at x:/scoreboard.xml Ball possession is denoted by a simple "." in either <HomePOS> or <VisitorPOS> section of the XML generated. I'm trying to build a script that turns an image visibility in title "SCOREBUG" on/off based on who the XML has denoted has possession.
I know I'm overthinking this, but any shortcut help would be fantastic. I think it's writers block. :)
Kris
One can use a "invisible" label in the title to read the possession from with a script and then use the option to make the image invisible If visibility itself is not an option one can use pages in the title triggered by the script as trick for example. First post of the "scripting for dummies" allready has an example of how to read a value from a title "IMAGENAME = Input.Find("TitleName").Text("Headline.Text)" as example to work from
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 5/1/2020(UTC) Posts: 31 Location: Tennessee Was thanked: 1 time(s) in 1 post(s)
|
Thanks for the direction! Looking back this script is almost taken directly out of another example, but it still isn't working. I don't see an error, just nothing is becoming visible. I have the HPOS and VPOS xml fields mapped to a hidden text field in the title. which is referenced in the variable statement below:
dim ballposs as string = "" do while true ballposs = Input.Find("FBSCORELINE").Text("HPOS.text")
If ballposs.Contains(".") Then
API.Function("SetImageVisibleOn",Input:="FBSCORELINE",SelectedName:="Hpossession.Source") API.Function("SetImageVisibleOff",Input:="FBSCORELINE",SelectedName:="Apossession.Source") 'below line is just for tracking' Console.writeLine("Home team has possession")
else
API.Function("SetImageVisibleOn",Input:="FBSCORELINE",SelectedName:="Apossession.Source") API.Function("SetImageVisibleOff",Input:="FBSCORELINE",SelectedName:="Hpossession.Source") 'below line is just for tracking' Console.writeLine("Away team has possession")
End If loop
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 12/27/2012(UTC) Posts: 5,246 Location: Belgium Thanks: 294 times Was thanked: 961 time(s) in 795 post(s)
|
Originally Posted by: MSFTGuruGuy Thanks for the direction! Looking back this script is almost taken directly out of another example, but it still isn't working. I don't see an error, just nothing is becoming visible. I have the HPOS and VPOS xml fields mapped to a hidden text field in the title. which is referenced in the variable statement below:
dim ballposs as string = "" do while true ballposs = Input.Find("FBSCORELINE").Text("HPOS.text")
If ballposs.Contains(".") Then
API.Function("SetImageVisibleOn",Input:="FBSCORELINE",SelectedName:="Hpossession.Source") API.Function("SetImageVisibleOff",Input:="FBSCORELINE",SelectedName:="Apossession.Source") 'below line is just for tracking' Console.writeLine("Home team has possession")
else
API.Function("SetImageVisibleOn",Input:="FBSCORELINE",SelectedName:="Apossession.Source") API.Function("SetImageVisibleOff",Input:="FBSCORELINE",SelectedName:="Hpossession.Source") 'below line is just for tracking' Console.writeLine("Away team has possession")
End If loop pritty sure : Code:ballposs = Input.Find("FBSCORELINE").Text("HPOS.text")
should be HPOS.Text -> Text with a capital just like it is within the title Check to make sure the input name is correct with fileextention if input is called as such Code:If ballposs.Contains(".") Then
'or
If ballposs = "." Then
'works too
|
|
|
|
Rank: Advanced Member
Groups: Registered
Joined: 5/1/2020(UTC) Posts: 31 Location: Tennessee Was thanked: 1 time(s) in 1 post(s)
|
Thank you! The case change in HPOS.Text... didn't seem to change anything but that was a good catch.
ballposs is just a variable it shouldn't have an extension, right?
However, removing the "Contains" element did seem to do the trick!
Thank you again!
|
|
|
|
vMix Forums
»
General
»
General Discussion
»
Scoreboard triggers to title indicators from XML
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.
Important Information:
The vMix Forums uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close