Hi !
I guess this post really aims at Martin unless someone else figured how to use this non-documented new feature in vMix 24...
Checked
https://www.vmix.com/help24/ but it's not up-to-date yet, certainly because it's still in beta.
So, I finally found a little time to test vMix 24 and obviously my first concern was to experiment with the long awaited DynamicInputs and DynamicValues features. Along with Doggy we tried to understand how it works and whether it solves the situations which originally motivated my Feature Request (
https://forums.vmix.com/...-Functions-for-Shortcuts )
First to make it clear to everyone, let's describe what's visible in vMix UI :
Shortcuts section :
new commands are now implemented (in the function dropdown)
> SetDynamicInput1
> SetDynamicInput2
> SetDynamicInput3
> SetDynamicInput4
Clipboard01.jpg
(51kb) downloaded 2 time(s).Perfect !
In the "general" tab, one can find:
> SetDynamicValue1
> SetDynamicValue2
> SetDynamicValue3
> SetDynamicValue4
No DynamicFunctions unfortunately... It would be so practical!
new inputs also show in the input dropdown, right after "active", "hover" and before "preview" (top of the list)
> Dynamic1
> Dynamic2
> Dynamic3
> Dynamic4
Clipboard02.jpg
(35kb) downloaded 0 time(s).So far, so good !
I expected these to be named "DynamicInput1" "DynamicInput2" "DynamicInput3" "DynamicInput4" but I guess it does not matter much... Well... until you realize the same names will be used for DynamicValues too !!! Or maybe we did not understand it well... to be confirmed... But, as the case may be (sharing the same names) it seems a little confusing and it highly reduces the potential usecases to use 2 x 4 SetDynamicStuff arrays when only 1 x 4 DynamicStuff array can be retrieved. Ain't this really confusing and frustrating?
Now let's carry on the inventory.
Those DynamicInputs and DynamicValues do not show in the Triggers section ! ???
But the functions (SetDynamicInputs) do !
So we can have the triggers to set the function but we cannot have the DynamicInputs to be triggered ! ??? Weird !
They will not show in the dropdowns for multiview layers either ! How disappointing ! I know we have other commands to dynamically manage our multiviews, but an input is an input, may it be static or dynamic. Again I really expected Dynamic Inputs to be usable here and don't really understand why not.
Now let's check the API in its main representation : the XML status page > NOTHING !!!
Frankly this is the 1st thing I checked after setting a DynamicInput and I couldn't believe my eyes that it would not reflect a DynamicInput was even set!
I expected DynStuff to be reported here, like the "active" or "preview" inputs or anything else, but nothing ! Very weird!
Here's what I expected
Code:
<vmix>
<version>24.0.0.37</version>
<edition>Trial</edition>
<inputs>
<input key="d9cedf22-366b-442d-abe6-74b7a8e6332d" number="1" type="Colour" title="Colour" shortTitle="Colour" state="Paused" position="0" duration="0" loop="False">Colour</input>
<input key="7ee95cbe-0931-47fe-8efc-3d1f7e5a69d7" number="2" type="Virtual" title="Virtual - Colour" shortTitle="Colour" state="Paused" position="0" duration="0" loop="False">Virtual - Colour</input>
<input key="2a0bc7e2-a5d1-4ca5-b580-b76f51c04c15" number="3" type="Virtual" title="Virtual - Colour" shortTitle="Colour" state="Paused" position="0" duration="0" loop="False">Virtual - Colour</input>
<input key="cb10932c-cbda-48eb-99eb-6a424e99f9ac" number="4" type="Virtual" title="Virtual - Colour" shortTitle="Colour" state="Paused" position="0" duration="0" loop="False">Virtual - Colour</input>
<input key="8f486a95-c94b-4333-b6a1-6585c80fc96e" number="5" type="Colour" title="Colour" shortTitle="Colour" state="Paused" position="0" duration="0" loop="False">Colour</input>
</inputs>
<overlays>
<overlay number="1"/>
<overlay number="2"/>
<overlay number="3"/>
<overlay number="4"/>
<overlay number="5"/>
<overlay number="6"/>
<overlay number="7"/>
<overlay number="8"/>
</overlays>
<preview>3</preview>
<active>1</active>
--- ?? -----------
<DynamicInput1>2</DynamicInput1>
<DynamicInput2>16</DynamicInput2>
<DynamicInput3>4</DynamicInput3>
<DynamicInput4>15</DynamicInput4>
<DynamicValue1>100</DynamicValue1>
<DynamicValue2>test</DynamicValue2>
<DynamicValue3>1200</DynamicValue3>
<DynamicValue4>380</DynamicValue4>
--- ?? -----------
<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="CubeZoom" 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="False" meterF1="0" meterF2="0"/>
<busB volume="100" muted="False" meterF1="0" meterF2="0"/>
</audio>
</vmix>
I suppose this would make sense if we want to be able to know what we're doing, potentially to have activators available for DynStuff someday... I'm very surprized nothing is reported here.
Furthermore, I believe this has consequences when it comes to using DynStuff with the API and not the least: it simply does not seem to work at all ! Or I am the idiot of the year ! Which is possible btw but here's what I tried to do (trying to keep it as simple as possible) without any success at all
New project
2 color inputs
2 shortcuts
> shortcut 1 : numkey 1 > SetDynamicInput1 to input 1 (red color)
> shortcut 2 : numkey 2 > SetDynamicInput1 to input 2 (blue color)
Alright now I press 2. Although it does not report anywhere, I expect my input 2 to be set as Dynamic1
Let's try with a basic http request (I always start here):
http://127.0.0.1:8088/api/?function=fade&input=Dynamic1
Nothing happens ! WTF ???
Scratching my head, I decide to test by creating a new shortcut
> shortcut set to key A > fade > Dynamic1
It works ! I see my blue color input fading in PGM
Hmm !!! Now I try again with HTTP request but using the WebController way (not through the API but with direct access to internal shortcuts GUID)
http://127.0.0.1:8088/?shortcut=GUID
It works !!! But only because an extra shortcut was created.
I'm not sure I understand what is happening here but it seems DynamicInputs and DynamicValues are not implemented at the API level. They can only work internally within vMix from shortcuts "which are already defined" (when the point was to use the API dynamically for less shortcuts at the end)... I have not tested the "scripting" feature yet (I think Doggy did btw) but again this is very surprizing considering the fact that the main reason that justified this Dynamic Logic feature request was to REDUCE the number of required shortcuts. At the moment, as implemented, if I get it right, it requires even more shortcuts than before !!!
I might be totally wrong and I really hope I completely missed the point on how to use these DynamicInputs and Values because so far, as I understood it, it's pretty much useless but, again, I'm possibly the idiot of the year !
I also did some quick tests with DynamicValues and thanks to Doggy I could figure how to use them (not obvious at all). I must say I was taken aback to realize that it can only be used to set TEXT values (when any values especially numeric were expected) and how it is supposed to be working but let's talk about this later on.
I hope someone can explain I'm totally off track.
I also hope Martin will explain if the implementation is over or still work in progress and if the expectations I mentioned above are way beyond the limits or not.
Bien à vous tous
Guillaume, aka DWAM