<?xml version="1.0"?>
<ArrayOfVMixFunctionReference xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <!-- Many non-native functions can be mapped to existing vMix functions
  {0} - Input
  {1} - Parameter
  {2} - StringParameter
  {3} - Parameter - 1
  {4} - Number of Input
  {5} - Input= if input is not null
  {6} - InputKey by int
  {7} - InputKey by string
  
  ActiveStateValue prefixes
  
  ! - NOT
  ~ - CONTAINS
  ` - NOT CONTAINS-->

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Dummy function</Description>
    <Function>None</Function>
  </vMixFunctionReference>

  <!--<vMixFunctionReference>
    <Description>Dummy function</Description>
    <Function>Test</Function>
    <FormatString>Function=NoSuitable</FormatString>
  </vMixFunctionReference>-->

  <vMixFunctionReference>
    <Function>UTC Native Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Draft API call</Description>
    <Function>API</Function>
    <StringDescription>http://</StringDescription>
    <FormatString>http://{2}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Execute windows application</Description>
    <Function>Win</Function>
    <StringDescription>Path</StringDescription>
    <HasStringProperty>true</HasStringProperty>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Move to next page</Description>
    <Function>NextPage</Function>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Move to previous page</Description>
    <Function>PrevPage</Function>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Set current page</Description>
    <Function>SetPage</Function>
    <HasIntProperty>true</HasIntProperty>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>
      Check condition, functions below this one executes only if condition is TRUE.
      This is block function, block ends at ConditionEnd function.
    </Description>
    <Function>Condition</Function>
    <HasInputProperty>true</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <IntDescription>N/A</IntDescription>
    <InputDescription>Input</InputDescription>
    <StringDescription>N/A</StringDescription>
    <CommandType>Condition</CommandType>
    <IsBlock>true</IsBlock>
    <HideParameters>3</HideParameters>
    <AdditionalCount>4</AdditionalCount>
    <Color>
      <A>255</A>
      <R>255</R>
      <G>0</G>
      <B>0</B>
    </Color>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>
      Reverse opened condition, functions below this one executes only if condition is TRUE.
      This is block function, block ends at ConditionEnd function.
    </Description>
    <Function>Else</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <Color>
      <A>255</A>
      <R>255</R>
      <G>0</G>
      <B>0</B>
    </Color>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>
      Check if value of expression changed from previous check, functions below this one executes only if value was changed.
      This is block function, block ends at ConditionEnd function.
    </Description>
    <Function>ValueChanged</Function>
    <IsBlock>true</IsBlock>
    <InputDescription>Input</InputDescription>
    <IntDescription>N/A</IntDescription>
    <StringDescription>Expression</StringDescription>
    <HasInputProperty>true</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>true</HasStringProperty>
    <Color>
      <A>255</A>
      <R>255</R>
      <G>0</G>
      <B>0</B>
    </Color>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Close Condition block.</Description>
    <Function>ConditionEnd</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <IntDescription>N/A</IntDescription>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
    <Color>
      <A>255</A>
      <R>255</R>
      <G>0</G>
      <B>0</B>
    </Color>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Execute ExecLink (any named hotkey).</Description>
    <Function>ExecLink</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>true</HasStringProperty>
    <StringDescription>Link</StringDescription>
    <InputDescription>N/A</InputDescription>
    <IntDescription>N/A</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Jump to function in script.</Description>
    <Function>GoTo</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>true</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <IntDescription>Command Index</IntDescription>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>
      Check if variable exist, functions below this one executes only if variable exist.
      This is block function, block ends at ConditionEnd function.
    </Description>
    <Function>HasVariable</Function>
    <IsBlock>true</IsBlock>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>true</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <StringDescription>N/A</StringDescription>
    <InputDescription>N/A</InputDescription>
    <IntDescription>Index</IntDescription>
    <Color>
      <A>255</A>
      <R>255</R>
      <G>0</G>
      <B>0</B>
    </Color>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>
      Check if button is pushed, functions below this one executes only if button is pushed.
      This is block function, block ends at ConditionEnd function.
    </Description>
    <Function>IsPressed</Function>
    <IsBlock>true</IsBlock>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <StringDescription>N/A</StringDescription>
    <InputDescription>N/A</InputDescription>
    <Color>
      <A>255</A>
      <R>255</R>
      <G>0</G>
      <B>0</B>
    </Color>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Set variable at index.</Description>
    <Function>SetVariable</Function>
    <HasInputProperty>true</HasInputProperty>
    <HasIntProperty>true</HasIntProperty>
    <HasStringProperty>true</HasStringProperty>
    <StringDescription>Value</StringDescription>
    <InputDescription>Input</InputDescription>
    <IntDescription>Index</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Wait some time in milliseconds.</Description>
    <Function>Timer</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>true</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <IntDescription>Interval</IntDescription>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Sync vMix state to UTC.</Description>
    <Function>SyncState</Function>
    <Aliases>UpdateState</Aliases>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
    <IntDescription>N/A</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Toggle LIVE switch.</Description>
    <Function>LIVEToggle</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
    <IntDescription>N/A</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Toggle LIVE switch On.</Description>
    <Function>LIVEOn</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
    <IntDescription>N/A</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Toggle LIVE switch Off.</Description>
    <Function>LIVEOff</Function>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
    <IntDescription>N/A</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Native>true</Native>
    <Description>Sync internal button vMix state/</Description>
    <Function>SyncInternalButtonState</Function>
    <Aliases>UpdateInternalButtonState</Aliases>
    <HasInputProperty>false</HasInputProperty>
    <HasIntProperty>false</HasIntProperty>
    <HasStringProperty>false</HasStringProperty>
    <InputDescription>N/A</InputDescription>
    <StringDescription>N/A</StringDescription>
    <IntDescription>N/A</IntDescription>
  </vMixFunctionReference>

  <!--General-->
  <vMixFunctionReference>
    <Function>General Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Refresh all activator device lights and controls</Description>
    <Function>ActivatorRefresh</Function>
    <FormatString>Function=ActivatorRefresh</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>CallManagerShowHide</Function>
    <FormatString>Function=CallManagerShowHide</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>KeyPress</Function>
    <FormatString>Function=KeyPress&amp;Value={2}</FormatString>
    <StringDescription>Key</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Send keys to active window</Description>
    <Function>SendKeys</Function>
    <FormatString>Function=SendKeys&amp;Value={2}</FormatString>
  </vMixFunctionReference>

  <!--Audio-->
  <vMixFunctionReference>
    <Function>Audio Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Audio Mute On/Off</Description>
    <Function>Audio</Function>
    <FormatString>Function=Audio&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].Muted</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>AudioAuto</Function>
    <FormatString>Function=AudioAuto&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>AudioAutoOff</Function>
    <FormatString>Function=AudioAutoOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>AudioAutoOn</Function>
    <FormatString>Function=AudioAutoOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Audio Bus On/Off</Description>
    <Function>AudioBus</Function>
    <FormatString>Function=AudioBus&amp;Input={0}&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <ActiveStatePath>Inputs[{0}].Audiobusses</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@audiobusses</ActiveStateXPath>
    <ActiveStateValue>~{2}</ActiveStateValue>
    <StringValues>
      <string>M</string>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Audio Bus Off</Description>
    <Function>AudioBusOff</Function>
    <FormatString>Function=AudioBusOff&amp;Input={0}&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <ActiveStatePath>Inputs[{0}].Audiobusses</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@audiobusses</ActiveStateXPath>
    <ActiveStateValue>~{2}</ActiveStateValue>
    <StringValues>
      <string>M</string>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Audio Bus On</Description>
    <Function>AudioBusOn</Function>
    <FormatString>Function=AudioBusOn&amp;Input={0}&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <ActiveStatePath>Inputs[{0}].Audiobusses</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@audiobusses</ActiveStateXPath>
    <ActiveStateValue>~{2}</ActiveStateValue>
    <StringValues>
      <string>M</string>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Audio Mixer Show Hide</Description>
    <Function>AudioMixerShowHide</Function>
    <FormatString>Function=AudioMixerShowHide</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Audio Mute Off</Description>
    <Function>AudioOff</Function>
    <FormatString>Function=AudioOff&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].Muted</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Audio Mute On</Description>
    <Function>AudioOn</Function>
    <FormatString>Function=AudioOn&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].Muted</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Turn off Audio Plugin, starting from 1</Description>
    <Function>AudioPluginOff</Function>
    <FormatString>Function=AudioPluginOff&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn on Audio Plugin, starting from 1</Description>
    <Function>AudioPluginOn</Function>
    <FormatString>Function=AudioPluginOn&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle on/off Audio Plugin, starting from 1</Description>
    <Function>AudioPluginOnOff</Function>
    <FormatString>Function=AudioPluginOnOff&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Show Audio Plugin Editor, starting from 1</Description>
    <Function>AudioPluginShow</Function>
    <FormatString>Function=AudioPluginShow&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Master Audio On/Off</Description>
    <Function>MasterAudio</Function>
    <FormatString>Function=MasterAudio</FormatString>
    <ActiveStatePath>Audio[Master].Muted</ActiveStatePath>
    <ActiveStateXPath>//audio/master/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Master Audio Off</Description>
    <Function>MasterAudioOff</Function>
    <FormatString>Function=MasterAudioOff</FormatString>
    <ActiveStatePath>Audio[Master].Muted</ActiveStatePath>
    <ActiveStateXPath>//audio/master/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Master Audio On</Description>
    <Function>MasterAudioOn</Function>
    <FormatString>Function=MasterAudioOn</FormatString>
    <ActiveStatePath>Audio[Master].Muted</ActiveStatePath>
    <ActiveStateXPath>//audio/master/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
  </vMixFunctionReference>


  <vMixFunctionReference>
    <Description>Toggle Bus X Audio On/Off</Description>
    <Function>BusXAudio</Function>
    <FormatString>Function=BusXAudio&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <ActiveStatePath>Audio[Bus{2}].Muted</ActiveStatePath>
    <ActiveStateXPath>//audio/bus{2}/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Bus X Audio Off</Description>
    <Function>BusXAudioOff</Function>
    <FormatString>Function=BusXAudioOff&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <ActiveStatePath>Audio[Bus{2}].Muted</ActiveStatePath>
    <ActiveStateXPath>//audio/bus{2}/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle Bus X Audio On</Description>
    <Function>BusXAudioOn</Function>
    <FormatString>Function=BusXAudioOn</FormatString>
    <StringDescription>Bus</StringDescription>
    <ActiveStatePath>Audio[Bus{2}].Muted</ActiveStatePath>
    <ActiveStateXPath>//audio/bus{2}/@muted</ActiveStateXPath>
    <ActiveStateValue>False</ActiveStateValue>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>


  <vMixFunctionReference>
    <Description>Turn off Audio Plugin, starting from 1</Description>
    <Function>MasterAudioPluginOff</Function>
    <FormatString>Function=MasterAudioPluginOff</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn on Audio Plugin, starting from 1</Description>
    <Function>MasterAudioPluginOn</Function>
    <FormatString>Function=MasterAudioPluginOn</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle on/off Audio Plugin, starting from 1</Description>
    <Function>MasterAudioPluginOnOff</Function>
    <FormatString>Function=MasterAudioPluginOnOff</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Show Audio Plugin Editor, starting from 1</Description>
    <Function>MasterAudioPluginShow</Function>
    <FormatString>Function=MasterAudioPluginShow</FormatString>
  </vMixFunctionReference>


  <vMixFunctionReference>
    <Description>Turn off Audio Plugin, starting from 1</Description>
    <Function>BusXAudioPluginOff</Function>
    <FormatString>Function=BusXAudioPluginOff&amp;Value={2},{1}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>M</string>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn on Audio Plugin, starting from 1</Description>
    <Function>BusXAudioPluginOn</Function>
    <FormatString>Function=BusXAudioPluginOn&amp;Value={2},{1}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>M</string>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle on/off Audio Plugin, starting from 1</Description>
    <Function>BusXAudioPluginOnOff</Function>
    <FormatString>Function=BusXAudioPluginOnOff&amp;Value={2},{1}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>M</string>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Show Audio Plugin Editor, starting from 1</Description>
    <Function>BusXAudioPluginShow</Function>
    <FormatString>Function=BusXAudioPluginShow&amp;Value={2},{1}</FormatString>
    <IntDescription>Plugin Number</IntDescription>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>M</string>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Bus X Send To Master On/Off</Description>
    <Function>BusXSendToMaster</Function>
    <FormatString>Function=BusXSendToMaster&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Bus X Send To Master Off</Description>
    <Function>BusXSendToMasterOff</Function>
    <FormatString>Function=BusXSendToMasterOff&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Bus X Send To Master On</Description>
    <Function>BusXSendToMasterOn</Function>
    <FormatString>Function=BusXSendToMasterOn&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Bus X Solo On/Off</Description>
    <Function>BusXSolo</Function>
    <FormatString>Function=BusXSolo&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Bus X Solo Off</Description>
    <Function>BusXSoloOff</Function>
    <FormatString>Function=BusXSoloOff&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Bus X Solo On</Description>
    <Function>BusXSoloOn</Function>
    <FormatString>Function=BusXSoloOn&amp;Value={2}</FormatString>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>A</string>
      <string>B</string>
      <string>C</string>
      <string>D</string>
      <string>E</string>
      <string>F</string>
      <string>G</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>SetBalance</Function>
    <FormatString>Function=SetBalance&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Balance</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>SetGain</Function>
    <FormatString>Function=SetGain&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Gain</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>SetGainChannel1</Function>
    <FormatString>Function=SetGainChannel1&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Gain</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>SetGainChannel2</Function>
    <FormatString>Function=SetGainChannel2&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Gain</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>SetHeadphonesVolume</Function>
    <FormatString>Function=SetHeadphonesVolume&amp;Value={1}</FormatString>
    <IntDescription>Volume</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Bus Volume</Description>
    <Function>SetBusXVolume</Function>
    <FormatString>Function=Set{2}Volume&amp;Value={1}</FormatString>
    <StringDescription>Bus</StringDescription>
    <StringValues>
      <string>Master</string>
      <string>BusA</string>
      <string>BusB</string>
      <string>BusC</string>
      <string>BusD</string>
      <string>BusE</string>
      <string>BusF</string>
      <string>BusG</string>
    </StringValues>
    <IntDescription>Volume</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Input Volume</Description>
    <Function>SetVolume</Function>
    <FormatString>Function=SetVolume&amp;Input={0}&amp;Value={1}</FormatString>
    <IntDescription>Volume</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>When using SeparateMono on an Audio Input, this can be used to set channel volumes independently.</Description>
    <Function>SetVolumeChannel1</Function>
    <FormatString>Function=SetVolumeChannel1&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Volume</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>When using SeparateMono on an Audio Input, this can be used to set channel volumes independently.</Description>
    <Function>SetVolumeChannel2</Function>
    <FormatString>Function=SetVolumeChannel2&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Volume</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set Volume of an Input's sub channel (1 to 16)</Description>
    <Function>SetVolumeChannelMixer</Function>
    <FormatString>Function=SetVolumeChannelMixer&amp;Value={2},{1}&amp;Input={0}</FormatString>
    <StringDescription>Channel</StringDescription>
    <IntDescription>Volume</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Input Volume gradually over X milliseconds</Description>
    <Function>SetVolumeFade</Function>
    <FormatString>Function=SetVolumeFade&amp;Input={0}&amp;Value={1},{2}</FormatString>
    <IntDescription>Volume</IntDescription>
    <StringDescription>Milliseconds</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Solo</Description>
    <Function>Solo</Function>
    <FormatString>Function=Solo&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].Solo</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@solo</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>SoloOn</Description>
    <Function>SoloOn</Function>
    <FormatString>Function=SoloOn&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].Solo</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@solo</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>SoloOff</Description>
    <Function>SoloOff</Function>
    <FormatString>Function=SoloOff&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].Solo</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@solo</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <!--Transitions-->

  <vMixFunctionReference>

    <Function>Transitions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Cuts the input directly to Output without changing Preview</Description>
    <Function>CutDirect</Function>
    <FormatString>Function=CutDirect&amp;Input={0}&amp;Mix={1}</FormatString>
    <ActiveStateValue>{4}</ActiveStateValue>
    <IntDescription>Mix</IntDescription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
    </IntValues>
    <ActiveStatePath>Active</ActiveStatePath>
    <ActiveStateXPath>//active</ActiveStateXPath>
    <ActiveStatePathIntDependence>
      <string>Active</string>
      <string>Mixes[{3}].Active</string>
      <string>Mixes[{3}].Active</string>
      <string>Mixes[{3}].Active</string>
    </ActiveStatePathIntDependence>
    <ActiveStateXPathIntDependence>
      <string>//active</string>
      <string>//mix[@number='2']/active</string>
      <string>//mix[@number='3']/active</string>
      <string>//mix[@number='4']/active</string>
    </ActiveStateXPathIntDependence>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle FTB On/Off</Description>
    <Function>FadeToBlack</Function>
    <FormatString>Function=FadeToBlack</FormatString>
    <ActiveStatePath>FadeToBlack</ActiveStatePath>
    <ActiveStateXPath>//fadeToBlack</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>QuickPlay</Function>
    <FormatString>Function=QuickPlay&amp;Input={0}</FormatString>
    <ActiveStatePath>Active</ActiveStatePath>
    <ActiveStateXPath>//active</ActiveStateXPath>
    <ActiveStateValue>{0}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set Master Fader T-Bar, 255 will cut to Preview</Description>
    <Function>SetFader</Function>
    <FormatString>Function=SetFader&amp;Value={1}</FormatString>
    <IntDescription>Fader</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Change Transition Duration for Button X</Description>
    <Function>SetTransitionDurationX</Function>
    <FormatString>Function=SetTransitionDuration{2}&amp;Value={1}</FormatString>
    <StringDescription>Transition</StringDescription>
    <IntDescription>Duration</IntDescription>
    <StringValues>
      <string>1</string>
      <string>2</string>
      <string>3</string>
      <string>4</string>
    </StringValues>
    <ActiveStatePath>Transitions[Transition/Number/{2}].Duration</ActiveStatePath>
    <ActiveStateXPath>//transition[@number='{2}']/@duration</ActiveStateXPath>
    <ActiveStateValue>{1}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Change Transition for Button X</Description>
    <Function>SetTransitionEffectX</Function>
    <FormatString>Function=SetTransitionEffect{1}&amp;Value={2}</FormatString>
    <IntDescription>Transition</IntDescription>
    <StringDescription>Effect</StringDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
    <StringValues>
      <string>Fade</string>
      <string>Zoom</string>
      <string>Wipe</string>
      <string>Slide</string>
      <string>Fly</string>
      <string>CrossZoom</string>
      <string>FlyRotate</string>
      <string>Cube</string>
      <string>CubeZoom</string>
      <string>VerticalWipe</string>
      <string>VerticalSlide</string>
      <string>Merge</string>
      <string>WipeReverse</string>
      <string>SlideReverse</string>
      <string>VerticalWipeReverse</string>
      <string>VerticalSlideReverse</string>
      <string>Cut</string>
      <string>Stinger1</string>
      <string>Stinger2</string>
    </StringValues>
    <ActiveStatePath>Transitions[Transition/Number/{1}].Effect</ActiveStatePath>
    <ActiveStateXPath>//transition[@number='{1}']/@effect</ActiveStateXPath>
    <ActiveStateValue>{2}</ActiveStateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>StingerX</Function>
    <FormatString>Function=Stinger{1}&amp;Input={0}</FormatString>
    <IntDescription>Stinger</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Clicks one of the four Transition buttons in the main vMix window.</Description>
    <Function>TransitionX</Function>
    <FormatString>Function=Transition{1}</FormatString>
    <IntDescription>Transition</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Clicks one of the four Transition buttons in the main vMix window.</Description>
    <Function>TransitionMix</Function>
    <FormatString>Function={2}&amp;Mix={1}</FormatString>
    <IntDescription>Mix</IntDescription>
    <StringDecription>Transition</StringDecription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
    </IntValues>
    <StringValues>
      <string>Fade</string>
      <string>Zoom</string>
      <string>Wipe</string>
      <string>Slide</string>
      <string>Fly</string>
      <string>CrossZoom</string>
      <string>FlyRotate</string>
      <string>Cube</string>
      <string>CubeZoom</string>
      <string>VerticalWipe</string>
      <string>VerticalSlide</string>
      <string>Merge</string>
      <string>WipeReverse</string>
      <string>SlideReverse</string>
      <string>VerticalWipeReverse</string>
      <string>VerticalSlideReverse</string>
      <string>Cut</string>
      <string>Stinger1</string>
      <string>Stinger2</string>
    </StringValues>
  </vMixFunctionReference>

  <!--Output-->
  <vMixFunctionReference>
    <Function>Output Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggles Fullscreen On or Off</Description>
    <Function>Fullscreen</Function>
    <FormatString>Function=Fullscreen</FormatString>
    <ActiveStatePath>Fullscreen</ActiveStatePath>
    <ActiveStateXPath>//fullscreen</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggles Fullscreen Off</Description>
    <Function>FullscreenOff</Function>
    <FormatString>Function=FullscreenOff</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggles Fullscreen On</Description>
    <Function>FullscreenOn</Function>
    <FormatString>Function=FullscreenOn</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Change what is displayed on Output X.</Description>
    <Function>SetOutputX</Function>
    <FormatString>Function=SetOutput{1}&amp;Value={2}&amp;{5}{0}</FormatString>
    <StringDescription>Display</StringDescription>
    <IntDescription>Output</IntDescription>
    <StringValues>
      <string>Output</string>
      <string>Preview</string>
      <string>MultiView</string>
      <string>Input</string>
    </StringValues>
    <IntValues>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Change what is displayed on the External2 output.</Description>
    <Function>SetOutputExternal2</Function>
    <Aliases>SetOutputExternalX</Aliases>
    <FormatString>Function=SetOutputExternal2&amp;Value={2}&amp;{5}{0}</FormatString>
    <StringDescription>Display</StringDescription>
    <StringValues>
      <string>Output</string>
      <string>Preview</string>
      <string>MultiView</string>
      <string>Input</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Change what is displayed on the Fullscreen output.</Description>
    <Function>SetOutputFullscreen</Function>
    <FormatString>Function=SetOutputFullscreen&amp;Value={2}&amp;{5}{0}</FormatString>
    <StringDescription>Display</StringDescription>
    <StringValues>
      <string>Output</string>
      <string>Preview</string>
      <string>MultiView</string>
      <string>Input</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Change what is displayed on the Fullscreen output.</Description>
    <Function>SetOutputFullscreen2</Function>
    <FormatString>Function=SetOutputFullscreen2&amp;Value={2}&amp;{5}{0}</FormatString>
    <StringDescription>Display</StringDescription>
    <StringValues>
      <string>Output</string>
      <string>Preview</string>
      <string>MultiView</string>
      <string>Input</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Create a snapshot image of the current Output. Optional Value specifies save Filename, otherwise a save file window will appear. Filename can specify date, for example mysnapshot {0:dd MMM yyyy}.jpg</Description>
    <Function>Snapshot</Function>
    <FormatString>Function=Snapshot&amp;Value={2}</FormatString>
    <StringDescription>FileName</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Create a snapshot image of the selected Input. Optional Value specifies save Filename, otherwise a save file window will appear. Filename can specify date, for example mysnapshot {0:dd MMM yyyy}.jpg</Description>
    <Function>SnapshotInput</Function>
    <FormatString>Function=SnapshotInput&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>FileName</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>StartExternal</Function>
    <FormatString>Function=StartExternal</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>

    <Function>StartMultiCorder</Function>
    <FormatString>Function=StartMultiCorder</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>

    <Function>StartRecording</Function>
    <FormatString>Function=StartRecording</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>

    <Function>StartStopExternal</Function>
    <FormatString>Function=StartStopExternal</FormatString>
    <ActiveStatePath>External</ActiveStatePath>
    <ActiveStateXPath>//external</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>

    <Function>StartStopMultiCorder</Function>
    <FormatString>Function=StartStopMultiCorder</FormatString>
    <ActiveStatePath>MultiCorder</ActiveStatePath>
    <ActiveStateXPath>//multiCorder</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>

    <Function>StartStopRecording</Function>
    <FormatString>Function=StartStopRecording</FormatString>
    <ActiveStatePath>Recording.Active</ActiveStatePath>
    <ActiveStateXPath>//recording</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Optional stream number starting from 0. Leave blank to control all streams.</Description>
    <Function>StartStopStreaming</Function>
    <FormatString>Function=StartStopStreaming&amp;Value={2}</FormatString>
    <StringDescription>Stream</StringDescription>
    <ActiveStatePath>Streaming</ActiveStatePath>
    <ActiveStateXPath>//streaming</ActiveStateXPath>
    <ActiveStateValue>True</ActiveStateValue>
    <StringValues>
      <string></string>
      <string>0</string>
      <string>1</string>
      <string>2</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Optional stream number starting from 0. Leave blank to control all streams.</Description>
    <Function>StartStreaming</Function>
    <FormatString>Function=StartStreaming&amp;Value={2}</FormatString>
    <StringDescription>Stream</StringDescription>
    <StringValues>
      <string></string>
      <string>0</string>
      <string>1</string>
      <string>2</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>StopExternal</Function>
    <FormatString>Function=StopExternal</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>StopMultiCorder</Function>
    <FormatString>Function=StopMultiCorder</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>StopRecording</Function>
    <FormatString>Function=StopRecording</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Optional stream number starting from 0. Leave blank to control all streams.</Description>
    <Function>StopStreaming</Function>
    <FormatString>Function=StopStreaming&amp;Value={2}</FormatString>
    <StringDescription>Stream</StringDescription>
    <StringValues>
      <string></string>
      <string>0</string>
      <string>1</string>
      <string>2</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set Key on Custom RTMP Stream. Optional stream number starting from 0 at start followed by comma, e.g 0,mystreamkey</Description>
    <Function>StreamingSetKey</Function>
    <StringDescription>Key</StringDescription>
    <IntDescription>Stream</IntDescription>
    <FormatString>Function=StreamingSetKey&amp;Value={1},{2}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set Password on Custom RTMP Stream. Optional stream number starting from 0 at start followed by comma, e.g 0,password</Description>
    <Function>StreamingSetPassword</Function>
    <StringDescription>Stream</StringDescription>
    <StringDescription>Password</StringDescription>
    <IntDescription>Stream</IntDescription>
    <FormatString>Function=StreamingSetPassword&amp;Value=(1),{2}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set URL on Custom RTMP Stream. Optional stream number starting from 0 at start followed by comma, e.g 0,rtmp://myurl/</Description>
    <Function>StreamingSetURL</Function>
    <StringDescription>URL</StringDescription>
    <IntDescription>Stream</IntDescription>
    <FormatString>Function=StreamingSetURL&amp;Value={1},{2}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set Username on Custom RTMP Stream. Optional stream number starting from 0 at start followed by comma, e.g 0,username</Description>
    <Function>StreamingSetUsername</Function>
    <FormatString>Function=StreamingSetUsername&amp;Value={1},{2}</FormatString>
    <StringDescription>UserName</StringDescription>
    <IntDescription>Stream</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Write current recording duration to log file with optional tag text Value.</Description>
    <Function>WriteDurationToRecordingLog</Function>
    <FormatString>Function=WriteDurationToRecordingLog&amp;Value={2}</FormatString>
  </vMixFunctionReference>

  <!--Title Functions-->

  <vMixFunctionReference>
    <Function>Title Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Seconds to add or subtract from current Countdown time</Description>
    <Function>AdjustCountdown</Function>
    <FormatString>Function=AdjustCountdown&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Seconds</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change countdown time according to Value as hh:mm:ss (00:00:00)</Description>
    <Function>ChangeCountdown</Function>
    <FormatString>Function=ChangeCountdown&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Time</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>NextTitlePreset</Function>
    <FormatString>Function=NextTitlePreset&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Pause or Resume Countdown or if complete, Start from beginning.</Description>
    <Function>PauseCountdown</Function>
    <FormatString>Function=PauseCountdown&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Freeze Title Input while making multiple updates</Description>
    <Function>PauseRender</Function>
    <FormatString>Function=PauseRender&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>PreviousTitlePreset</Function>
    <FormatString>Function=PreviousTitlePreset&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Resume Title Input rendering after making multiple updates</Description>
    <Function>ResumeRender</Function>
    <FormatString>Function=ResumeRender&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>SelectTitlePreset</Function>
    <FormatString>Function=SelectTitlePreset&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>PresetNumber</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set countdown duration according to Value as hh:mm:ss (00:00:00)</Description>
    <Function>SetCountdown</Function>
    <FormatString>Function=SetCountdown&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Duration</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Image in Title according to Filename or empty to clear.</Description>
    <Function>SetImage</Function>
    <FormatString>Function=SetImage&amp;Value={2}&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <StringDescription>FileName</StringDescription>
    <IntDescription>Index</IntDescription>
    <ActiveStatePath>Inputs[{0}].Elements[InputImage/Index/{1}].Image</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/image[@index='{1}']</ActiveStateXPath>
    <ActiveStateValue>{2}</ActiveStateValue>
    <StateDirect>true</StateDirect>
    <StatePath>Inputs[{0}].Elements[InputImage/Index/{1}].Image</StatePath>
    <StateValue>String</StateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle X Visibility in Title.</Description>
    <Function>SetXVisible</Function>
    <Aliases>SetImageVisible</Aliases>
    <FormatString>Function=Set{2}Visible&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Index</IntDescription>
    <StringDescription>Type</StringDescription>
    <StringValues>
      <string>Image</string>
      <string>Text</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Hide X in Title.</Description>
    <Function>SetXVisibleOff</Function>
    <Aliases>SetImageVisibleOff</Aliases>
    <FormatString>Function=Set{2}VisibleOff&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Index</IntDescription>
    <StringDescription>Type</StringDescription>
    <StringValues>
      <string>Image</string>
      <string>Text</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Show X in Title. SelectedIndex or SelectedValue can be used to select image.</Description>
    <Function>SetXVisibleOn</Function>
    <Aliases>SetImageVisibleOn</Aliases>
    <FormatString>Function=Set{2}VisibleOn&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Index</IntDescription>
    <StringDescription>Type</StringDescription>
    <StringValues>
      <string>Image</string>
      <string>Text</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Text in Title according to Value parameter.</Description>
    <Function>SetText</Function>
    <FormatString>Function=SetText&amp;Value={2}&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Index</IntDescription>
    <StringDescription>Text</StringDescription>
    <ActiveStatePath>Inputs[{0}].Elements[InputText/Index/{1}].Text</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/text[@index='{1}']</ActiveStateXPath>
    <ActiveStateValue>{2}</ActiveStateValue>
    <StateDirect>true</StateDirect>
    <StatePath>Inputs[{0}].Elements[InputText/Index/{1}].Text</StatePath>
    <StateValue>String</StateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Colour of Text in Title in HTML format (#xxxxxx)</Description>
    <Function>SetTextColour</Function>
    <FormatString>Function=SetTextColour&amp;Value={2}&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Index</IntDescription>
    <StringDescription>Colour</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Ticker Speed.</Description>
    <Function>SetTickerSpeed</Function>
    <IntDescription>Index</IntDescription>
    <StringDescription>Speed</StringDescription>
    <FormatString>Function=SetTickerSpeed&amp;Value={2}&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>StartCountdown</Function>
    <FormatString>Function=StartCountdown&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Stop and Reset Countdown</Description>
    <Function>StopCountdown</Function>
    <FormatString>Function=StopCountdown&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Pause Countdown Only</Description>
    <Function>SuspendCountdown</Function>
    <FormatString>Function=SuspendCountdown&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>TitleBeginAnimation</Function>
    <StringDescription>Animation</StringDescription>
    <FormatString>Function=TitleBeginAnimation&amp;Value={2}&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <!--Input-->
  <vMixFunctionReference>
    <Function>Input Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Send to Output the selected Input</Description>
    <Function>ActiveInput</Function>
    <FormatString>Function=ActiveInput&amp;Input={0}&amp;Mix={1}</FormatString>
    <IntDescription>Mix</IntDescription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
    </IntValues>
    <ActiveStatePath>Active</ActiveStatePath>
    <ActiveStateXPath>//active</ActiveStateXPath>
    <ActiveStatePathIntDependence>
      <string>Active</string>
      <string>Mixes[{3}].Active</string>
      <string>Mixes[{3}].Active</string>
      <string>Mixes[{3}].Active</string>
    </ActiveStatePathIntDependence>
    <ActiveStateXPathIntDependence>
      <string>//active</string>
      <string>//mix[@number='2']/active</string>
      <string>//mix[@number='3']/active</string>
      <string>//mix[@number='4']/active</string>
    </ActiveStateXPathIntDependence>
    <ActiveStateValue>{4}</ActiveStateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Create a new Input based on information provided in Value.</Description>
    <Function>AddInput</Function>
    <FormatString>Function=AddInput&amp;Value={2}</FormatString>
    <StringDescription>TypeAndFilename</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>AutoPauseOff</Function>
    <FormatString>Function=AutoPauseOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>AutoPauseOn</Function>
    <FormatString>Function=AutoPauseOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle automatically playing first item in a List with Transition</Description>
    <Function>AutoPlayFirst</Function>
    <FormatString>Function=AutoPlayFirst&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn Off automatically playing first item in a List with Transition</Description>
    <Function>AutoPlayFirstOff</Function>
    <FormatString>Function=AutoPlayFirstOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn On automatically playing first item in a List with Transition</Description>
    <Function>AutoPlayFirstOn</Function>
    <FormatString>Function=AutoPlayFirstOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle automatically playing next item in a List</Description>
    <Function>AutoPlayNext</Function>
    <FormatString>Function=AutoPlayNext&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn Off automatically playing next item in a List</Description>
    <Function>AutoPlayNextOff</Function>
    <FormatString>Function=AutoPlayNextOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn On automatically playing next item in a List</Description>
    <Function>AutoPlayNextOn</Function>
    <FormatString>Function=AutoPlayNextOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>AutoPlayOff</Function>
    <FormatString>Function=AutoPlayOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>AutoPlayOn</Function>
    <FormatString>Function=AutoPlayOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>AutoRestartOff</Function>
    <FormatString>Function=AutoRestartOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>AutoRestartOn</Function>
    <FormatString>Function=AutoRestartOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Basic Auto Colour Correction.</Description>
    <Function>ColourCorrectionAuto</Function>
    <FormatString>Function=ColourCorrectionAuto&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Reset Colour Correction to Default Values.</Description>
    <Function>ColourCorrectionReset</Function>
    <FormatString>Function=ColourCorrectionReset&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Create a new Virtual Input from the specified Input.</Description>
    <Function>CreateVirtualInput</Function>
    <FormatString>Function=CreateVirtualInput&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>DeinterlaceOff</Function>
    <FormatString>Function=DeinterlaceOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>DeinterlaceOn</Function>
    <FormatString>Function=DeinterlaceOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Hides large preview of input</Description>
    <Function>InputPreviewHide</Function>
    <FormatString>Function=InputPreviewHide&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Shows large preview of input</Description>
    <Function>InputPreviewShow</Function>
    <FormatString>Function=InputPreviewShow&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggles large preview of input</Description>
    <Function>InputPreviewShowHide</Function>
    <FormatString>Function=InputPreviewShowHide&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Add Filename to List</Description>
    <Function>ListAdd</Function>
    <FormatString>Function=ListAdd&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>FileName</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Export List as M3U to Filename</Description>
    <Function>ListExport</Function>
    <FormatString>Function=ListExport&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>FileName</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ListPlayOut</Function>
    <FormatString>Function=ListPlayOut&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Remove from List by Index starting from 1</Description>
    <Function>ListRemove</Function>
    <FormatString>Function=ListRemove&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Remove all items from List</Description>
    <Function>ListRemoveAll</Function>
    <FormatString>Function=ListRemoveAll&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ListShowHide</Function>
    <FormatString>Function=ListShowHide&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Shuffle (randomize) List</Description>
    <Function>ListShuffle</Function>
    <FormatString>Function=ListShuffle&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>LivePlayPause</Function>
    <FormatString>Function=LivePlayPause&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>LoopOff</Function>
    <FormatString>Function=LoopOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>LoopOn</Function>
    <FormatString>Function=LoopOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MarkIn</Function>
    <FormatString>Function=MarkIn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MarkOut</Function>
    <FormatString>Function=MarkOut&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MarkReset</Function>
    <FormatString>Function=MarkReset&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MarkResetIn</Function>
    <FormatString>Function=MarkResetIn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MarkResetOut</Function>
    <FormatString>Function=MarkResetOut&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MirrorOff</Function>
    <FormatString>Function=MirrorOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MirrorOn</Function>
    <FormatString>Function=MirrorOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>MoveInput</Function>
    <FormatString>Function=MoveInput&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Number</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Move to next item in List</Description>
    <Function>NextItem</Function>
    <FormatString>Function=NextItem&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Move to Next Picture for Photo and PowerPoint Inputs</Description>
    <Function>NextPicture</Function>
    <FormatString>Function=NextPicture&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>Pause</Function>
    <FormatString>Function=Pause&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].State</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@state</ActiveStateXPath>
    <ActiveStateValue>!Paused</ActiveStateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>Play</Function>
    <FormatString>Function=Play&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].State</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@state</ActiveStateXPath>
    <ActiveStateValue>!Running</ActiveStateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>PlayPause</Function>
    <FormatString>Function=PlayPause&amp;Input={0}</FormatString>
    <ActiveStatePath>Inputs[{0}].State</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/@state</ActiveStateXPath>
    <ActiveStateValue>Running</ActiveStateValue>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Send to Preview the selected Input</Description>
    <Function>PreviewInput</Function>
    <FormatString>Function=PreviewInput&amp;Input={0}&amp;Mix={1}</FormatString>
    <IntDescription>Mix</IntDescription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
    </IntValues>
    <ActiveStatePath>Preview</ActiveStatePath>
    <ActiveStateXPath>//preview</ActiveStateXPath>
    <ActiveStatePathIntDependence>
      <string>Preview</string>
      <string>Mixes[{3}].Preview</string>
      <string>Mixes[{3}].Preview</string>
      <string>Mixes[{3}].Preview</string>
    </ActiveStatePathIntDependence>
    <ActiveStateXPathIntDependence>
      <string>//preview</string>
      <string>//mix[@number='2']/preview</string>
      <string>//mix[@number='3']/preview</string>
      <string>//mix[@number='4']/preview</string>
    </ActiveStateXPathIntDependence>
    <ActiveStateValue>{4}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Send to Preview the next Input</Description>
    <Function>PreviewInputNext</Function>
    <FormatString>Function=PreviewInputNext</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Send to Preview the previous Input</Description>
    <Function>PreviewInputPrevious</Function>
    <FormatString>Function=PreviewInputPrevious</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Move to previous item in List</Description>
    <Function>PreviousItem</Function>
    <FormatString>Function=PreviousItem&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Move to Previous Picture for Photo and PowerPoint Inputs</Description>
    <Function>PreviousPicture</Function>
    <FormatString>Function=PreviousPicture&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>RemoveInput</Function>
    <FormatString>Function=RemoveInput&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ResetInput</Function>
    <FormatString>Function=ResetInput&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Restart selected Input</Description>
    <Function>Restart</Function>
    <FormatString>Function=Restart&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Save video clip from Video Delay according to Duration in milliseconds</Description>
    <Function>SaveVideoDelay</Function>
    <FormatString>Function=SaveVideoDelay&amp;Input={0}&amp;Duration={1}</FormatString>
    <IntDescription>Duration</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change to Category according to Value</Description>
    <Function>SelectCategory</Function>
    <FormatString>Function=SelectCategory&amp;Value={2}</FormatString>
    <StringDescription>Category</StringDescription>
    <StringValues>
      <string>All</string>
      <string>Red</string>
      <string>Green</string>
      <string>Orange</string>
      <string>Purple</string>
      <string>Aqua</string>
      <string>Blue</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>
      Photos,List: Selects item in List according to Value starting from number 1
      Virtual Set: Zooms to selected preset using the current speed settings
    </Description>
    <Function>SelectIndex</Function>
    <FormatString>Function=SelectIndex&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set Input transparency according to Value. 0 is transparent, 255 is opaque</Description>
    <Function>SetAlpha</Function>
    <FormatString>Function=SetAlpha&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Alpha</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gain R level of Input. 1 = Original, Value = Value 0-2</Description>
    <Function>SetCCGainB</Function>
    <FormatString>Function=SetCCGainB&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GainR</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gain G level of Input. 1 = Original, Value = Value 0-2</Description>
    <Function>SetCCGainG</Function>
    <FormatString>Function=SetCCGainG&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GainG</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gain B level of Input. 1 = Original, Value = Value 0-2</Description>
    <Function>SetCCGainG</Function>
    <FormatString>Function=SetCCGainB&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GainB</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gain RGB level of Input. 1 = Original, Value = Value 0-2</Description>
    <Function>SetCCGainRGB</Function>
    <FormatString>Function=SetCCGainRGB&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GainRGB</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gamma R level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCGammaR</Function>
    <FormatString>Function=SetCCGammaR&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GammaR</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gamma G level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCGammaG</Function>
    <FormatString>Function=SetCCGammaG&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GammaG</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gamma B level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCGammaB</Function>
    <FormatString>Function=SetCCGammaB&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GammaB</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Gamma RGB level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCGammaRGB</Function>
    <FormatString>Function=SetCCGammaRGB&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>GammaRGB</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Hue level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCHue</Function>
    <FormatString>Function=SetCCHue&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>CCHue</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Lift R level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCLiftR</Function>
    <FormatString>Function=SetCCLiftR&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>LiftR</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Lift G level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCLiftG</Function>
    <FormatString>Function=SetCCLiftG&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>LiftG</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Lift B level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCLiftB</Function>
    <FormatString>Function=SetCCLiftB&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>LiftB</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Lift RGB level of Input. 0=Original, Value = Value -1-1</Description>
    <Function>SetCCLiftRGB</Function>
    <FormatString>Function=SetCCLiftRGB&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>LiftRGB</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change Saturation level of Input. 0=Original, -1=Greyscale, Value = Value -1-1</Description>
    <Function>SetCCSaturation</Function>
    <FormatString>Function=SetCCSaturation&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Saturation</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set the Display Name of the Input</Description>
    <Function>SetInputName</Function>
    <FormatString>Function=SetInputName&amp;Value={2}&amp;Input={0}</FormatString>
    <StateDirect>true</StateDirect>
    <StatePath>Inputs[{0}].Title</StatePath>
    <StateValue>String</StateValue>
    <StringDescription>DisplayName</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change current PanX value of Input. 0=centered, -2=100% to left, 2=100% to right, Value = Value -2-2</Description>
    <Function>SetPanX</Function>
    <FormatString>Function=SetPanX&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>PanX</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change current PanY value of Input. 0=centered, -2=100% to bottom, 2=100% to top, Value = Value -2-2</Description>
    <Function>SetPanY</Function>
    <FormatString>Function=SetPanY&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>PanY</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set transition effect for Photos and PowerPoint Inputs (Fade, Zoom, etc)</Description>
    <Function>SetPictureEffect</Function>
    <FormatString>Function=SetPictureEffect&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Effect</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set duration of transition effect in Milliseconds</Description>
    <Function>SetPictureEffectDuration</Function>
    <FormatString>Function=SetPictureEffectDuration&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Duration MS</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set transition time between Photos and PowerPoint slides in Seconds</Description>
    <Function>SetPictureTransition</Function>
    <FormatString>Function=SetPictureTransition&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Seconds</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set Position of selected Input according to Value in Milliseconds</Description>
    <Function>SetPosition</Function>
    <FormatString>Function=SetPosition&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Milliseconds</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set Playback speed/rate for Videos and Video Delays, 0.5=50%,1=100%,2=200% etc, Value = Speed 0.1-4</Description>
    <Function>SetRate</Function>
    <FormatString>Function=SetRate&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Set Slow Motion speed for Instant Replay, 0.5=50%,1=100% etc, Value = Speed 0-1</Description>
    <Function>SetRateSlowMotion</Function>
    <FormatString>Function=SetRateSlowMotion&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Change current Zoom level of Input. 1=100%, 0.5=50%, 2=200%, Value = Value 0-5</Description>
    <Function>SetZoom</Function>
    <FormatString>Function=SetZoom&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Zoom</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>SharpenOff</Function>
    <FormatString>Function=SharpenOff&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>SharpenOn</Function>
    <FormatString>Function=SharpenOn&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>VideoCallAudioSource</Function>
    <FormatString>Function=VideoCallAudioSource&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Source</StringDescription>
    <StringValues>
      <string>Master</string>
      <string>Headphones</string>
      <string>BusA</string>
      <string>BusB</string>
      <string>BusC</string>
      <string>BusD</string>
      <string>BusE</string>
      <string>BusF</string>
      <string>BusG</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>VideoCallVideoSource</Function>
    <FormatString>Function=VideoCallVideoSource&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Source</StringDescription>
    <StringValues>
      <string>Output1</string>
      <string>Output2</string>
      <string>Output3</string>
      <string>Output4</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Start Video Delay Recording</Description>
    <Function>VideoDelayStartRecording</Function>
    <FormatString>Function=VideoDelayStartRecording&amp;Input={0}&amp;Duration={1}</FormatString>
    <IntDescription>Description</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle Video Delay Recording</Description>
    <Function>VideoDelayStartStopRecording</Function>
    <FormatString>Function=VideoDelayStartStopRecording&amp;Input={0}&amp;Duration={1}</FormatString>
    <IntDescription>Description</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Stop Video Delay Recording</Description>
    <Function>VideoDelayStopRecording</Function>
    <FormatString>Function=VideoDelayStopRecording&amp;Input={0}&amp;Duration={1}</FormatString>
    <IntDescription>Description</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Wait for a Video Input to reach the end of playback.</Description>
    <Function>WaitForCompletion</Function>
    <FormatString>Function=WaitForCompletion&amp;Input={0}&amp;Duration={1}</FormatString>
    <Timeout>300000</Timeout>
    <IntDescription>Duration</IntDescription>
  </vMixFunctionReference>


  <!--Input-->
  <vMixFunctionReference>
    <Function>Overlay Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Move Overlay in Input MultiView according to Value parameter.</Description>
    <Function>MoveMultiViewOverlay</Function>
    <FormatString>Function=MoveMultiViewOverlay&amp;Value={1},{2}&amp;Input={0}</FormatString>
    <IntDescription>FromIndex</IntDescription>
    <StringDescription>ToIndex</StringDescription>
    <StringValues>
      <string>1</string>
      <string>2</string>
      <string>3</string>
      <string>4</string>
      <string>5</string>
      <string>6</string>
      <string>7</string>
      <string>8</string>
      <string>9</string>
      <string>10</string>
    </StringValues>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Toggle On/Off MultiView Overlay For Input At Index (starting from 1)</Description>
    <Function>MultiViewOverlay</Function>
    <FormatString>Function=MultiViewOverlay&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn Off MultiView Overlay For Input At Index (starting from 1)</Description>
    <Function>MultiViewOverlayOff</Function>
    <FormatString>Function=MultiViewOverlayOff&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turn On MultiView Overlay For Input At Index (starting from 1)</Description>
    <Function>MultiViewOverlayOn</Function>
    <FormatString>Function=MultiViewOverlayOn&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle OverlayX On/Off with selected Input using configured Transition</Description>
    <Function>OverlayInputX</Function>
    <Aliases>OverlayInputToggle</Aliases>
    <FormatString>Function=OverlayInput{1}&amp;Input={0}</FormatString>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateXPath>//overlays/overlay[@number='{1}']</ActiveStateXPath>
    <ActiveStateValue>{4}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Transition Out to OverlayX with selected Input</Description>
    <Function>OverlayInputXIn</Function>
    <Aliases>OverlayInputIn</Aliases>
    <FormatString>Function=OverlayInput{1}In&amp;Input={0}</FormatString>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateXPath>//overlays/overlay[@number='{1}']</ActiveStateXPath>
    <ActiveStateValue>{4}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Immediately switch Overlay1 Off (Cut)</Description>
    <Function>OverlayInputXOff</Function>
    <Aliases>OverlayInputOff</Aliases>
    <FormatString>Function=OverlayInput{1}Off</FormatString>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateXPath>//overlays/overlay[@number='{1}']</ActiveStateXPath>
    <ActiveStateValue>{4}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Transition Out OverlayX</Description>
    <Function>OverlayInputXOut</Function>
    <Aliases>OverlayInputOut</Aliases>
    <FormatString>Function=OverlayInput{1}Out</FormatString>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateXPath>//overlays/overlay[@number='{1}']</ActiveStateXPath>
    <ActiveStateValue>{4}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Zooms PIP Overlay to fill Fullscreen and vice versa</Description>
    <Function>OverlayInputXZoom</Function>
    <FormatString>Function=OverlayInput{1}Zoom</FormatString>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Immediately switch all Overlays Off</Description>
    <Function>OverlayInputAllOff</Function>
    <FormatString>Function=OverlayInputAllOff</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Preview OverlayX using the selected Input</Description>
    <Function>PreviewOverlayInputX</Function>
    <FormatString>Function=PreviewOverlayInput{1}&amp;Input={0}</FormatString>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Change Overlay in Input MultiView according to Value parameter.</Description>
    <Function>SetMultiViewOverlay</Function>
    <FormatString>Function=SetMultiViewOverlay&amp;Value={1},{2}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
    <StringDescription>InputOverlay</StringDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
    <ActiveStatePath>Inputs[{0}].Elements[InputOverlay/Index/{3}].Key</ActiveStatePath>
    <ActiveStateXPath>//inputs/input[@key='{0}']/overlay[@index='{3}']/@key</ActiveStateXPath>
    <ActiveStateValue>{7}</ActiveStateValue>
  </vMixFunctionReference>

  <!--PlayList-->

  <vMixFunctionReference>
    <Function>PlayList Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Move to Next Item in a running PlayList</Description>
    <Function>NextPlayListEntry</Function>
    <FormatString>Function=NextPlayListEntry</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Move to Previous Item in a running PlayList</Description>
    <Function>PreviousPlayListEntry</Function>
    <FormatString>Function=PreviousPlayListEntry</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Open PlayList with Name matching Value</Description>
    <Function>SelectPlayList</Function>
    <FormatString>Function=SelectPlayList&amp;Value={2}</FormatString>
    <StringDescription>Name</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>StartPlayList</Function>
    <FormatString>Function=StartPlayList</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>StopPlayList</Function>
    <FormatString>Function=StopPlayList</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>Scripting Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>ScriptStart</Function>
    <FormatString>Function=ScriptStart&amp;Value={2}</FormatString>
    <StringDescription>ScriptName</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Start a dynamic script using code specified as the Value.</Description>
    <Function>ScriptStartDynamic</Function>
    <FormatString>Function=ScriptStartDynamic&amp;Value={2}</FormatString>
    <StringDescription>Code</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ScriptStop</Function>
    <FormatString>Function=ScriptStop&amp;Value={2}</FormatString>
    <StringDescription>ScriptName</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ScriptStopAll</Function>
    <FormatString>Function=ScriptStopAll</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ScriptStopDynamic</Function>
    <FormatString>Function=ScriptStopDynamic</FormatString>
  </vMixFunctionReference>

  <!--Replay-->

  <vMixFunctionReference>
    <Function>Replay Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayXCameraY</Function>
    <FormatString>Function=Replay{2}Camera{1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <StringDescription>Bus</StringDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
    <StringValues>
      <string>A</string>
      <string>B</string>
    </StringValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayChangeDirection</Function>
    <FormatString>Function=ReplayChangeDirection</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayChangeSpeed</Function>
    <FormatString>Function=ReplayChangeSpeed&amp;Value={1}</FormatString>
    <IntDescription>Speed</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayCopyLastEvent</Function>
    <FormatString>Function=ReplayCopyLastEvent&amp;Value={1}</FormatString>
    <IntDescription>EventList</IntDescription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayCopySelectedEvent</Function>
    <FormatString>Function=ReplayCopySelectedEvent&amp;Value={1}</FormatString>
    <IntDescription>EventList</IntDescription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayExportLastEvent</Function>
    <FormatString>Function=ReplayExportLastEvent&amp;Value={2}</FormatString>
    <StringDescription>Folder</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayFastBackward</Function>
    <FormatString>Function=ReplayFastBackward&amp;Value={1}</FormatString>
    <IntDescription>Speed</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayFastForward</Function>
    <FormatString>Function=ReplayFastForward&amp;Value={1}</FormatString>
    <IntDescription>Speed</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayJumpFrames</Function>
    <FormatString>Function=ReplayJumpFrames&amp;Value={1}</FormatString>
    <IntDescription>Frames</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayJumpToNow</Function>
    <FormatString>Function=ReplayJumpToNow</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turns off the specified camera angle (1-4)</Description>
    <Function>ReplayLastEventCameraOff</Function>
    <FormatString>Function=ReplayLastEventCameraOff&amp;Value={1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turns on the specified camera angle (1-4)</Description>
    <Function>ReplayLastEventCameraOn</Function>
    <FormatString>Function=ReplayLastEventCameraOn&amp;Value={1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turns on only the specified camera angle (1-4)</Description>
    <Function>ReplayLastEventSingleCameraOn</Function>
    <FormatString>Function=ReplayLastEventSingleCameraOn&amp;Value={1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayLive</Function>
    <FormatString>Function=ReplayLive</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayLiveToggle</Function>
    <FormatString>Function=ReplayLiveToggle</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMarkCancel</Function>
    <FormatString>Function=ReplayMarkCancel</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMarkIn</Function>
    <FormatString>Function=ReplayMarkIn</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMarkInLive</Function>
    <FormatString>Function=ReplayMarkInLive</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Number of previous seconds to use when creating a new event.</Description>
    <Function>ReplayMarkInOut</Function>
    <FormatString>Function=ReplayMarkInOut&amp;Value={1}</FormatString>
    <IntDescription>Seconds</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Number of previous seconds to use when creating a new event.</Description>
    <Function>ReplayMarkInOutLive</Function>
    <FormatString>Function=ReplayMarkInOutLive&amp;Value={1}</FormatString>
    <IntDescription>Seconds</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Number of previous seconds to use when creating a new event.</Description>
    <Function>ReplayMarkInOutRecorded</Function>
    <FormatString>Function=ReplayMarkInOutRecorded&amp;Value={1}</FormatString>
    <IntDescription>Seconds</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMarkInRecorded</Function>
    <FormatString>Function=ReplayMarkInRecorded</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMarkInRecordedNow</Function>
    <FormatString>Function=ReplayMarkInRecordedNow</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMarkOut</Function>
    <FormatString>Function=ReplayMarkOut</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayMoveLastEvent</Function>
    <FormatString>Function=ReplayMoveLastEvent&amp;Value={1}</FormatString>
    <IntDescription>EventList</IntDescription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayMoveSelectedEvent</Function>
    <FormatString>Function=ReplayMoveSelectedEvent&amp;Value={1}</FormatString>
    <IntDescription>EventList</IntDescription>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMoveSelectedEventDown</Function>
    <FormatString>Function=ReplayMoveSelectedEventDown</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayMoveSelectedEventUp</Function>
    <FormatString>Function=ReplayMoveSelectedEventUp</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayMoveSelectedInPoint</Function>
    <FormatString>Function=ReplayMoveSelectedInPoint&amp;Value={1}</FormatString>
    <IntDescription>Frames</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayMoveSelectedOutPoint</Function>
    <FormatString>Function=ReplayMoveSelectedOutPoint&amp;Value={1}</FormatString>
    <IntDescription>Frames</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPause</Function>
    <FormatString>Function=ReplayPause</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlay</Function>
    <FormatString>Function=ReplayPlay</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Play all Events in active list</Description>
    <Function>ReplayPlayAllEvents</Function>
    <FormatString>Function=ReplayPlayAllEvents</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Play all Events in active list</Description>
    <Function>ReplayPlayAllEventsToOutput</Function>
    <FormatString>Function=ReplayPlayAllEventsToOutput</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayBackward</Function>
    <FormatString>Function=ReplayPlayBackward</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayEvent</Function>
    <FormatString>Function=ReplayPlayEvent&amp;Value={1}</FormatString>
    <IntDescription>EventNumber</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayEventsByID</Function>
    <FormatString>Function=ReplayPlayEventsByID&amp;Value={2}</FormatString>
    <StringDescription>IDs</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayEventsByIDToOutput</Function>
    <FormatString>Function=ReplayPlayEventsByIDToOutput&amp;Value={2}</FormatString>
    <StringDescription>IDs</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayEventToOutput</Function>
    <FormatString>Function=ReplayPlayEventToOutput&amp;Value={1}</FormatString>
    <IntDescription>EventNumber</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayForward</Function>
    <FormatString>Function=ReplayPlayForward</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayLastEvent</Function>
    <FormatString>Function=ReplayPlayLastEvent</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayLastEventToOutput</Function>
    <FormatString>Function=ReplayPlayLastEventToOutput</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayNext</Function>
    <FormatString>Function=ReplayPlayNext</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayPause</Function>
    <FormatString>Function=ReplayPlayPause</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlayPrevious</Function>
    <FormatString>Function=ReplayPlayPrevious</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlaySelectedEvent</Function>
    <FormatString>Function=ReplayPlaySelectedEvent</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayPlaySelectedEventToOutput</Function>
    <FormatString>Function=ReplayPlaySelectedEventToOutput</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayRecorded</Function>
    <FormatString>Function=ReplayRecorded</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turns off the specified camera angle (1-4)</Description>
    <Function>ReplaySelectedEventCameraOff</Function>
    <FormatString>Function=ReplaySelectedEventCameraOff&amp;Value={1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turns on the specified camera angle (1-4)</Description>
    <Function>ReplaySelectedEventCameraOn</Function>
    <FormatString>Function=ReplaySelectedEventCameraOn&amp;Value={1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Turns on only the specified camera angle (1-4)</Description>
    <Function>ReplaySelectedEventSingleCameraOn</Function>
    <FormatString>Function=ReplaySelectedEventSingleCameraOn&amp;Value={1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplaySelectEventsX</Function>
    <FormatString>Function=ReplaySelectEvents{1}</FormatString>
    <IntDescription>EventList</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySelectFirstEvent</Function>
    <FormatString>Function=ReplaySelectFirstEvent</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySelectLastEvent</Function>
    <FormatString>Function=ReplaySelectLastEvent</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySelectNextEvent</Function>
    <FormatString>Function=ReplaySelectNextEvent</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySelectPreviousEvent</Function>
    <FormatString>Function=ReplaySelectPreviousEvent</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySetDirectionBackward</Function>
    <FormatString>Function=ReplaySetDirectionBackward</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySetDirectionForward</Function>
    <FormatString>Function=ReplaySetDirectionForward</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySetLastEventText</Function>
    <FormatString>Function=ReplaySetLastEventText&amp;Value={2}</FormatString>
    <StringDescription>Text</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Changes the text of the specified angle (1-4).</Description>
    <Function>ReplaySetLastEventTextCamera</Function>
    <FormatString>Function=ReplaySetLastEventTextCamera&amp;Value={1},{2}</FormatString>
    <StringDescription>Text</StringDescription>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplaySetSelectedEventText</Function>
    <FormatString>Function=ReplaySetSelectedEventText&amp;Value={2}</FormatString>
    <StringDescription>Text</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Changes the text of the specified angle (1-4)</Description>
    <Function>ReplaySetSelectedEventTextCamera</Function>
    <FormatString>Function=ReplaySetSelectedEventTextCamera&amp;Value={1},{2}</FormatString>
    <StringDescription>Text</StringDescription>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>See SetRateSlowMotion</Description>
    <Function>ReplaySetSpeed</Function>
    <FormatString>Function=ReplaySetSpeed&amp;Value={2}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayShowHide</Function>
    <FormatString>Function=ReplayShowHide</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayStartRecording</Function>
    <FormatString>Function=ReplayStartRecording</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayStopEvents</Function>
    <FormatString>Function=ReplayStopEvents</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayStopRecording</Function>
    <FormatString>Function=ReplayStopRecording</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>ReplayToggleLastEventCameraX</Function>
    <FormatString>Function=ReplayToggleLastEventCamera{1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>ReplayToggleSelectedEventCameraX</Function>
    <FormatString>Function=ReplayToggleSelectedEventCamera{1}</FormatString>
    <IntDescription>Camera</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Update In point of Selected Event to current Position.</Description>
    <Function>ReplayUpdateSelectedInPoint</Function>
    <FormatString>Function=ReplayUpdateSelectedInPoint</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Update Mark Out point of Selected Event to current Position.</Description>
    <Function>ReplayUpdateSelectedOutPoint</Function>
    <FormatString>Function=ReplayUpdateSelectedOutPoint</FormatString>
  </vMixFunctionReference>

  <!--NDI-->

  <vMixFunctionReference>
    <Function>NDI Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Send specified command to NDI source</Description>
    <Function>NDICommand</Function>
    <FormatString>Function=NDICommand&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Command</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>NDISelectSourceByIndex</Function>
    <FormatString>Function=NDISelectSourceByIndex&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>NDISelectSourceByName</Function>
    <FormatString>Function=NDISelectSourceByName&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Name</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>NDIStartRecording</Function>
    <FormatString>Function=NDIStartRecording&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>NDIStopRecording</Function>
    <FormatString>Function=NDIStopRecording&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <!--PTZ-->

  <vMixFunctionReference>
    <Function>PTZ Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Creates a PTZ Virtual Input with the current Position</Description>
    <Function>PTZCreateVirtualInput</Function>
    <FormatString>Function=PTZCreateVirtualInput&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZFocusAuto</Function>
    <FormatString>Function=PTZFocusAuto&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZFocusFar</Function>
    <FormatString>Function=PTZFocusFar&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZFocusManual</Function>
    <FormatString>Function=PTZFocusManual&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZFocusNear</Function>
    <FormatString>Function=PTZFocusNear&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZFocusStop</Function>
    <FormatString>Function=PTZFocusStop&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZHome</Function>
    <FormatString>Function=PTZHome&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveDown</Function>
    <FormatString>Function=PTZMoveDown&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveDownLeft</Function>
    <FormatString>Function=PTZMoveDownLeft&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveDownRight</Function>
    <FormatString>Function=PTZMoveDownRight&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveLeft</Function>
    <FormatString>Function=PTZMoveLeft&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveRight</Function>
    <FormatString>Function=PTZMoveRight&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Stop all PTZ movement</Description>
    <Function>PTZMoveStop</Function>
    <FormatString>Function=PTZMoveStop&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Moves to the Position of the PTZ Virtual Input without selecting it into Preview</Description>
    <Function>PTZMoveToVirtualInputPosition</Function>
    <FormatString>Function=PTZMoveToVirtualInputPosition&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Moves to the Position of the PTZ Virtual Input associated with this Input. Index is first Input found starting from 0</Description>
    <Function>PTZMoveToVirtualInputPositionByIndex</Function>
    <FormatString>Function=PTZMoveToVirtualInputPositionByIndex&amp;Value={1}&amp;Input={0}</FormatString>
    <IntDescription>Index</IntDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveUp</Function>
    <FormatString>Function=PTZMoveUp&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveUpLeft</Function>
    <FormatString>Function=PTZMoveUpLeft&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZMoveUpRight</Function>
    <FormatString>Function=PTZMoveUpRight&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Updates selected PTZ Virtual Input with current Position</Description>
    <Function>PTZUpdateVirtualInput</Function>
    <FormatString>Function=PTZUpdateVirtualInput&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZZoomIn</Function>
    <FormatString>Function=PTZZoomIn&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZZoomOut</Function>
    <FormatString>Function=PTZZoomOut&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Speed</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>PTZZoomStop</Function>
    <FormatString>Function=PTZZoomStop&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <!--Preset-->

  <vMixFunctionReference>
    <Function>Preset Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Load the last preset.</Description>
    <Function>LastPreset</Function>
    <FormatString>Function=LastPreset</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Load preset from the specified Filename.</Description>
    <Function>OpenPreset</Function>
    <FormatString>Function=OpenPreset&amp;Value={2}</FormatString>
    <StringDescription>FileName</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description>Save preset to the specified Filename.</Description>
    <Function>SavePreset</Function>
    <FormatString>Function=SavePreset&amp;Value={2}</FormatString>
    <StringDescription>FileName</StringDescription>
  </vMixFunctionReference>

  <!--DataSources-->

  <vMixFunctionReference>
    <Function>DataSources Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>DataSourceAutoNextOff</Function>
    <FormatString>Function=DataSourceAutoNextOff&amp;Value={2}</FormatString>
    <StringDescription>NameAndTable</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>DataSourceAutoNextOn</Function>
    <FormatString>Function=DataSourceAutoNextOn&amp;Value={2}</FormatString>
    <StringDescription>NameAndTable</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>DataSourceAutoNextOnOff</Function>
    <FormatString>Function=DataSourceAutoNextOnOff&amp;Value={2}</FormatString>
    <StringDescription>NameAndTable</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>DataSourceNextRow</Function>
    <FormatString>Function=DataSourceNextRow&amp;Value={2}</FormatString>
    <StringDescription>NameAndTable</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>DataSourcePreviousRow</Function>
    <FormatString>Function=DataSourcePreviousRow&amp;Value={2}</FormatString>
    <StringDescription>NameAndTable</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>DataSourceSelectRow</Function>
    <FormatString>Function=DataSourceSelectRow&amp;Value={2},{1}</FormatString>
    <StringDescription>NameAndTable</StringDescription>
    <IntDescription>Row</IntDescription>
  </vMixFunctionReference>

  <!--Browser-->

  <vMixFunctionReference>
    <Function>Browser Functions</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>BrowserBack</Function>
    <FormatString>Function=BrowserBack&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>BrowserForward</Function>
    <FormatString>Function=BrowserForward&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>BrowserKeyboardDisabled</Function>
    <FormatString>Function=BrowserKeyboardDisabled&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>BrowserKeyboardEnabled</Function>
    <FormatString>Function=BrowserKeyboardEnabled&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>BrowserMouseDisabled</Function>
    <FormatString>Function=BrowserMouseDisabled&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>BrowserMouseEnabled</Function>
    <FormatString>Function=BrowserMouseEnabled&amp;Input={0}</FormatString>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Function>BrowserNavigate</Function>
    <FormatString>Function=BrowserNavigate&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>URL</StringDescription>
  </vMixFunctionReference>
  <vMixFunctionReference>
    <Description></Description>
    <Function>BrowserReload</Function>
    <FormatString>Function=BrowserReload&amp;Input={0}</FormatString>
  </vMixFunctionReference>

  <!--<vMixFunctionReference>
    <Description>Set preview input.</Description>
    <Function>PreviewInput</Function>
    <FormatString>Function=PreviewInput&amp;Input={0}</FormatString>
    <ActiveStatePath>Preview</ActiveStatePath>
    <ActiveStateValue>{0}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set active input.</Description>
    <Function>ActiveInput</Function>
    <FormatString>Function=ActiveInput&amp;Input={0}</FormatString>
    <ActiveStatePath>Active</ActiveStatePath>
    <ActiveStateValue>{0}</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Function>Media Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Pause input.</Description>
    <Function>Pause</Function>
    <FormatString>Function=Pause&amp;Input={0}</FormatString>
    <IntDescription>N/A</IntDescription>
    <StringDescription>N/A</StringDescription>
    <ActiveStatePath>Inputs[{0}].State</ActiveStatePath>
    <ActiveStateValue>Paused</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Play input.</Description>
    <Function>Play</Function>
    <FormatString>Function=Play&amp;Input={0}</FormatString>
    <IntDescription>N/A</IntDescription>
    <StringDescription>N/A</StringDescription>
    <ActiveStatePath>Inputs[{0}].State</ActiveStatePath>
    <ActiveStateValue>Running</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Restart input.</Description>
    <Function>Restart</Function>
    <FormatString>Function=Restart&amp;Input={0}</FormatString>
    <IntDescription>N/A</IntDescription>
    <StringDescription>N/A</StringDescription>
    <ActiveStatePath>Inputs[{0}].State</ActiveStatePath>
    <ActiveStateValue>*</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>Output Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>External Toggle.</Description>
    <Function>StartStopExternal</Function>
    <FormatString>Function=StartStopExternal</FormatString>
    <ActiveStatePath>External</ActiveStatePath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Fullscreen Toggle.</Description>
    <Function>StartStopFullscreen</Function>
    <FormatString>Function=Fullscreen</FormatString>
    <ActiveStatePath>Fullscreen</ActiveStatePath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>MultiCorder Toggle.</Description>
    <Function>StartStopMultiCorder</Function>
    <FormatString>Function=StartStopMultiCorder</FormatString>
    <ActiveStatePath>MultiCorder</ActiveStatePath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Recording Toggle.</Description>
    <Function>StartStopRecording</Function>
    <FormatString>Function=StartStopRecording</FormatString>
    <ActiveStatePath>Recording</ActiveStatePath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Start Recording.</Description>
    <Function>StartRecording</Function>
    <FormatString>Function=StartRecording</FormatString>
    <ActiveStatePath>Recording</ActiveStatePath>
    <ActiveStateValue>False</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Stop Recording.</Description>
    <Function>StopRecording</Function>
    <FormatString>Function=StopRecording</FormatString>
    <ActiveStatePath>Recording</ActiveStatePath>
    <ActiveStateValue>True</ActiveStateValue>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Streaming Toggle.</Description>
    <Function>StartStopStreaming</Function>
    <FormatString>Function=StartStopStreaming&amp;Value={1}</FormatString>
    <ActiveStatePath>Streaming</ActiveStatePath>
    <ActiveStateValue>True</ActiveStateValue>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Start Streaming.</Description>
    <Function>StartStreaming</Function>
    <FormatString>Function=StartStreaming&amp;Value={1}</FormatString>
    <ActiveStatePath>Streaming</ActiveStatePath>
    <ActiveStateValue>False</ActiveStateValue>
    <IntValues>
      <int>0</int>
      <int>1</int>
      <int>2</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Stop Streaming.</Description>
    <Function>StopStreaming</Function>
    <FormatString>Function=StopStreaming&amp;Value={1}</FormatString>
      <ActiveStatePath>Streaming</ActiveStatePath>
      <ActiveStateValue>True</ActiveStateValue>
      <IntValues>
        <int>0</int>
        <int>1</int>
        <int>2</int>
      </IntValues>
    </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>External 2</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set Output External2.</Description>
    <Function>SetOutputExternal2</Function>
    <FormatString>Function=SetOutputExternal2&amp;Value={2}&amp;Input={0}</FormatString>
    <StringDescription>Type</StringDescription>
    <StringValues>
      <string>Input</string>
      <string>Preview</string>
      <string>Output</string>
      <string>MultiView</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>Replay Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Mark In Out Live.</Description>
    <Function>ReplayMarkInOutLive</Function>
    <FormatString>Function=ReplayMarkInOutLive&amp;Value={1}</FormatString>
    <IntDescription>Time</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Play Last Event To Output.</Description>
    <Function>ReplayPlayLastEventToOutput</Function>
    <FormatString>Function=ReplayPlayLastEventToOutput</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>Overlay Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Fade in input as overlay.</Description>
    <Function>OverlayInputIn</Function>
    <FormatString>Function=OverlayInput{1}In&amp;Input={0}</FormatString>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateValue>!{0}</ActiveStateValue>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Switch overlay off.</Description>
    <Function>OverlayInputOff</Function>
    <FormatString>Function=OverlayInput{1}Off</FormatString>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateValue>*</ActiveStateValue>
    <TransitionIndex>0</TransitionIndex>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Fade out overlay.</Description>
    <Function>OverlayInputOut</Function>
    <FormatString>Function=OverlayInput{1}Out</FormatString>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateValue>*</ActiveStateValue>
    <TransitionIndex>0</TransitionIndex>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Toggle overlay.</Description>
    <Function>OverlayInputToggle</Function>
    <FormatString>Function=OverlayInput{1}&amp;Input={0}</FormatString>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateValue>{0}</ActiveStateValue>
    <TransitionIndex>0</TransitionIndex>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>
  
  <vMixFunctionReference>
    <Description>Preview overlay.</Description>
    <Function>PreviewOverlay</Function>
    <FormatString>Function=PreviewOverlayInput{1}&amp;Input={0}</FormatString>
    <ActiveStatePath>Overlays[{3}].ActiveInput</ActiveStatePath>
    <ActiveStateValue>!{0}</ActiveStateValue>
    <IntDescription>Overlay</IntDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>vMix Countdowns</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set countdown format hh:mm:ss.</Description>
    <Function>SetCountdown</Function>
    <FormatString>Function=SetCountdown&amp;Input={0}&amp;Value={2}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Title</IntDescription>
    <StringDescription>Time</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Start countdown.</Description>
    <Function>StartCountdown</Function>
    <FormatString>Function=StartCountdown&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Title</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Stop countdown.</Description>
    <Function>StopCountdown</Function>
    <FormatString>Function=StopCountdown&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Title</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Pause countdown.</Description>
    <Function>PauseCountdown</Function>
    <FormatString>Function=PauseCountdown&amp;Input={0}&amp;SelectedIndex={1}</FormatString>
    <IntDescription>Title</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>Title Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>-->

  <!--  <vMixFunctionReference>
    <Description>Set image path.</Description>
    <Function>SetImage</Function>
    <FormatString>Function=SetImage&amp;Input={0}&amp;SelectedIndex={1}&amp;Value={2}</FormatString>
    <ActiveStatePath>Inputs[{0}].Elements[{1}].Image</ActiveStatePath>
    <ActiveStateValue>{2}</ActiveStateValue>
    <StateDirect>true</StateDirect>
    <StatePath>Inputs[{0}].Elements[{1}].Image</StatePath>
    <StateValue>String</StateValue>
    <IntDescription>Index</IntDescription>
    <StringDescription>Path</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set image path with native indexes.</Description>
    <Function>SetImageNative</Function>
    <FormatString>Function=SetImage&amp;Input={0}&amp;SelectedIndex={1}&amp;Value={2}</FormatString>
    <ActiveStatePath>Inputs[{0}].Elements[InputImage/Index/{1}].Image</ActiveStatePath>
    <ActiveStateValue>{2}</ActiveStateValue>
    <StateDirect>true</StateDirect>
    <StatePath>Inputs[{0}].Elements[InputImage/Index/{1}].Image</StatePath>
    <StateValue>String</StateValue>
    <IntDescription>Index</IntDescription>
    <StringDescription>Path</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set title text.</Description>
    <Function>SetText</Function>
    <FormatString>Function=SetText&amp;Input={0}&amp;SelectedIndex={1}&amp;Value={2}</FormatString>
    <ActiveStatePath>Inputs[{0}].Elements[{1}].Text</ActiveStatePath>
    <ActiveStateValue>{2}</ActiveStateValue>
    <StateDirect>true</StateDirect>
    <StatePath>Inputs[{0}].Elements[{1}].Text</StatePath>
    <StateValue>String</StateValue>
    <IntDescription>Index</IntDescription>
    <StringDescription>Value</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set title text with native indexes.</Description>
    <Function>SetTextNative</Function>
    <FormatString>Function=SetText&amp;Input={0}&amp;SelectedIndex={1}&amp;Value={2}</FormatString>
    <ActiveStatePath>Inputs[{0}].Elements[InputText/Index/{1}].Text</ActiveStatePath>
    <ActiveStateValue>{2}</ActiveStateValue>
    <StateDirect>true</StateDirect>
    <StatePath>Inputs[{0}].Elements[InputText/Index/{1}].Text</StatePath>
    <StateValue>String</StateValue>
    <IntDescription>Index</IntDescription>
    <StringDescription>Value</StringDescription>
  </vMixFunctionReference>-->

  <!--<vMixFunctionReference>
    <Description>Play animation.</Description>
    <Function>TitleBeginAnimation</Function>
    <FormatString>Function=TitleBeginAnimation&amp;Input={0}&amp;Value={2}</FormatString>
    <StringDescription>Animation</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>vMix DataSource Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Next Row.</Description>
    <Function>DataSourceNextRow</Function>
    <FormatString>Function=DataSourceNextRow&amp;Value={2}</FormatString>
    <StringDescription>Data Source</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Previous Row.</Description>
    <Function>DataSourcePreviousRow</Function>
    <FormatString>Function=DataSourcePreviousRow&amp;Value={2}</FormatString>
    <StringDescription>Data Source</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Select Row.</Description>
    <Function>DataSourceSelectRow</Function>
    <FormatString>Function=DataSourceSelectRow&amp;Value={2},{1}</FormatString>
    <StringDescription>Data Source</StringDescription>
    <IntDescription>Index</IntDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>Multiviews and Virtual Sets Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Move MultiView Overlay.</Description>
    <Function>MoveMultiViewOverlay</Function>
    <FormatString>Function=MoveMultiViewOverlay&amp;Input={0}&amp;Value={1},{2}</FormatString>
    <IntDescription>Overlay Number</IntDescription>
    <StringDescription>Overlay Position</StringDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
    <StringValues>
      <string>1</string>
      <string>2</string>
      <string>3</string>
      <string>4</string>
      <string>5</string>
      <string>6</string>
      <string>7</string>
      <string>8</string>
      <string>9</string>
      <string>10</string>
    </StringValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>MultiView Overlay Toggle.</Description>
    <Function>MultiViewOverlayToggle</Function>
    <FormatString>Function=MultiViewOverlay&amp;Input={0}&amp;Value={1}</FormatString>
    <IntDescription>Overlay number</IntDescription>
    <StringDescription>N/A</StringDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set MultiView Overlay.</Description>
    <Function>SetMultiViewOverlay</Function>
    <FormatString>Function=SetMultiViewOverlay&amp;Input={0}&amp;Value={1},{2}</FormatString>
    <IntDescription>Overlay Number</IntDescription>
    <StringDescription>New Input Key</StringDescription>
    <ActiveStatePath>Inputs[{0}].Elements[InputOverlay/Index/{3}].Key</ActiveStatePath>
    <ActiveStateValue>{2}</ActiveStateValue>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
      <int>5</int>
      <int>6</int>
      <int>7</int>
      <int>8</int>
      <int>9</int>
      <int>10</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Select Zoom Index in VirtualSets.</Description>
    <Function>SelectZoomIndexOrVirtualSets</Function>
    <FormatString>Function=SelectIndex&amp;Input={0}&amp;Value={1}</FormatString>
    <IntDescription>Zoom Index</IntDescription>
    <StringDescription>N/A</StringDescription>
    <IntValues>
      <int>1</int>
      <int>2</int>
      <int>3</int>
      <int>4</int>
    </IntValues>
  </vMixFunctionReference>

  <vMixFunctionReference>
    
    <Function>Playlist, Lists and Photos Controls</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Select PlayList.</Description>
    <Function>SelectPlayList</Function>
    <FormatString>Function=SelectPlayList&amp;Value={2}</FormatString>
    <StringDescription>Name</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Start PlayList.</Description>
    <Function>StartPlayList</Function>
    <FormatString>Function=StartPlayList</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Stop PlayList.</Description>
    <Function>StopPlayList</Function>
    <FormatString>Function=StopPlayList</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Previous PlayList Entry.</Description>
    <Function>PreviousPlayListEntry</Function>
    <FormatString>Function=PreviousPlayListEntry</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Next PlayList Entry.</Description>
    <Function>NextPlayListEntry</Function>
    <FormatString>Function=NextPlayListEntry</FormatString>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Select Index in Photos and Lists Inputs.</Description>
    <Function>SelectIndex/Photos</Function>
    <FormatString>Function=SelectIndex&amp;Input={0}&amp;Value={1}</FormatString>
    <IntDescription>Media Input Index</IntDescription>
    <StringDescription>N/A</StringDescription>
  </vMixFunctionReference>-->

  <!--<vMixFunctionReference>
    
    <Function>Audio</Function>
    <IsGroup>true</IsGroup>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set input volume.</Description>
    <Function>SetVolume</Function>
    <FormatString>Function=SetVolume&amp;Input={0}&amp;Value={1}</FormatString>
    <IntDescription>Volume</IntDescription>
    <StringDescription>N/A</StringDescription>
  </vMixFunctionReference>

  <vMixFunctionReference>
    <Description>Set master volume.</Description>
    <Function>SetMasterVolume</Function>
    <FormatString>Function=SetMasterVolume&amp;Value={1}</FormatString>
    <IntDescription>Volume</IntDescription>
    <StringDescription>N/A</StringDescription>
  </vMixFunctionReference>-->

</ArrayOfVMixFunctionReference>