if you send a
http://127.0.0.1:8088/api/? vMix will a return with the some of the following.
Version of vMix
Edition of VMix
Which input is loaded and Status and Information of Input
Which Overlay is loaded and Status and Information of Input
Which input is set to Preview and Status and Information of Input
Which input is set to Output and Status and Information of Input
Audio levels ...
etc...
eg.
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<vmix>
<version>21.0.0.45</version>
<edition>Basic HD</edition>
<inputs>
<input key="8065cdca-d64b-4813-a75f-122e6f27d164" number="1" type="Xaml" title="NewsHD2.xaml" state="Paused" position="0" duration="0" loop="False" selectedIndex="0">
NewsHD2.xaml
<text index="0" name="Headline">HEADLINE</text>
<text index="1" name="Description">DESCRIPTION</text>
<text index="2" name="TitleTime">{0:hh:mm tt}</text>
<image index="0" name="BackgroundImage">
file:///C:/Program Files (x86)/vMix/titles/NewsHD2.xaml.png
</image>
</input>
<input key="fb3e17a7-a077-4ef9-8efa-06277a13c1e2" number="2" type="Blank" title="Blank" state="Paused" position="0" duration="0" loop="False">Blank</input>
</inputs>
<overlays>
<overlay number="1"/>
<overlay number="2"/>
<overlay number="3"/>
<overlay number="4"/>
<overlay number="5"/>
<overlay number="6"/>
</overlays>
<preview>2</preview>
<active>1</active>
<fadeToBlack>False</fadeToBlack>
<transitions>
<transition number="1" effect="Fade" duration="500"/>
<transition number="2" effect="Merge" duration="1000"/>
<transition number="3" effect="Wipe" duration="1000"/>
<transition number="4" effect="Stinger2" duration="1000"/>
</transitions>
<recording>False</recording>
<external>False</external>
<streaming>False</streaming>
<playList>False</playList>
<multiCorder>False</multiCorder>
<fullscreen>False</fullscreen>
<audio>
<master volume="100" muted="False" meterF1="0" meterF2="0" headphonesVolume="100"/>
<busA volume="100" muted="True" meterF1="0" meterF2="0"/>
<busB volume="100" muted="False" meterF1="0" meterF2="0"/>
</audio>
</vmix>
So yes, it would be possible to write a VB.NET to parse the information returned from the HTTP API. and send API commands to vMix in return.. There might be another way to do it directly in the vMixAPI.dll, vMixTitleLibrary.dll, vMixInterop.dll and other .dll's also..
I was just starting to learn Visual Studio and the various languages after a 30 year break from programming, but due to my new job driving trucks and being on the road 6 days a week, I no longer have time to try and write applications
sinc747 wrote:So, to Michael's original question...
"Would some have an example of how to query an input to see if the audio is active?"
- Tom