logo

Live Production Software Forums


Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
rambouzi  
#1 Posted : Thursday, March 15, 2018 6:15:01 AM(UTC)
rambouzi

Rank: Member

Groups: Registered
Joined: 6/6/2016(UTC)
Posts: 17
Man
Netherlands
Location: The Netherlands

I think I might found a bug in vMix.

After inserting a new input in a row of existing inputs, all the following inputs lose there connection with the triggers i made for them. Although the trigger is still there and correct. The only way to activate them again is to open the setting of that input and just hit edit and close. After doing that it works again. It's time consuming and unnecessary, because the trigger is still there, but just not working anymore.

So what am i doing.

For a theater play I am using the latest HD version of vMix. I need a lot of inputs (over 45) because the director wants all kind of pictures, video's and a live camera on 2 beamers. I am actually using 2 instances of vMix.

I am not operating it myself because I am walking around with the live camera, witch is also sometimes live on the beamers. So I needed a easy way to operate vMix during the theater play. The operator is not a specialist.

I made some keyboard shortcuts so the operator just has to press the space-bar for the next play to start.

But I want the following play/input to cue in the preview monitor. vMix is not doing that by itself, not even when using a playlist. So i programmed triggers for every input. It triggers 2.5 second after the transition and cue's the next input in the preview monitor. This works great. It is very unfortunate that a playlist can't do this. Believe me, I tried everything.

But you know directors. They always want to change things. So if a change is somewhere in the beginning, i need to open 30 or more inputs to update the trigger following the inserted input. Everything before the input is working OK.

So, is there a better way to insert inputs, without having to update every input over and over again?

Your tips and tricks are welcome.

Regards,

Remco Uri
The Netherlands
IceStream  
#2 Posted : Thursday, March 15, 2018 9:00:40 AM(UTC)
IceStream

Rank: Advanced Member

Groups: Registered
Joined: 3/7/2012(UTC)
Posts: 2,600
Man
Location: Canada

Thanks: 33 times
Was thanked: 501 time(s) in 470 post(s)
@ rambouzi

If I have understood you correctly, you have your all Inputs ordered in the sequence in which they will played/used LIVE, yes?
But the order can change at the whim of the director which messes up your "Triggers", yes?
The question for me then becomes, what "Triggers" are you using?
For situations like this, I would be more inclined to use somewhat generic "Triggers" to accommodate programming changes but maintain a strict protocol.
Namely, I would use two "Triggers" on each Input:
1. OnTransitionIn/PreviewInput/(itself)/1000 (Delay)
2. OntransitionIn/PreviewInputNext/2500 (Delay)
This way, the order can be changed in any manner (drag and drop Inputs) but 2.5 seconds after each transition In, the "Next" sequential Input will be cued up in Preview.
I hope I have understood your situation correctly.


Ice
thanks 1 user thanked IceStream for this useful post.
Martin Block on 11/9/2020(UTC)
rambouzi  
#3 Posted : Saturday, March 17, 2018 7:04:11 AM(UTC)
rambouzi

Rank: Member

Groups: Registered
Joined: 6/6/2016(UTC)
Posts: 17
Man
Netherlands
Location: The Netherlands

Thanks Ice,

This i a good idea. I changed it just a bit.

1. OnTransitionIn/PreviewInput/(active)/2500 (Delay)
2. OntransitionIn/PreviewInputNext/0 (Delay)

I need the 2500 delay for the transitions to finish, and then put active in the preview then next input. That works!

Great tip.

Now i just need to change and edit about 100 inputs..... ai.

Regards!
Remco
LightGuy145  
#4 Posted : Monday, November 9, 2020 9:24:40 PM(UTC)
LightGuy145

Rank: Newbie

Groups: Registered
Joined: 10/2/2020(UTC)
Posts: 5
United States
Location: Oneonta

I was similarly looking for a way to automate loading the next sequential input into preview after an input goes to output. In my case it is not that the order of input playback will necessarily change, but we are doing a live remote theatre performance where we want the operator not to have to worry about loading inputs into preview... only pushing the "GO" button. This is especially critical because the software operation is being done through Zoom screen control so we want to streamline the actions required by the operator as much as possible.

This thread was the most helpful thing I could find for this but the solution above involves assigning two triggers with delay times to every single input. This is not ideal because of the extra effort to assign TWO triggers to every input and the unreferenced delay times that will be built into those triggers. If you want the load-into-preview to happen as quickly as possible after a transition ends, and you might change your default transition time during rehearsal, it is perhaps not wise to manually assign the delays in the triggers of each input. It may be better to trigger a script which begins with a delay and then executes the previewing of the next input. This allows immediate tweaking of the default delay time for all inputs. If you have an input that will need to transition at a time longer than the delay built into the script, additional delay can be added to the trigger execution of the input.

This is the "Preview Next Input" script:

sleep(2000)
API.Function("PreviewInput",Input:=-1)
sleep(10)
API.Function("PreviewInputNext")

With comments added:

sleep(2000)
'This first delay is critical to make sure the transition into the input has ended; do not make this much longer than your most commonly used transition time or the programming/testing process becomes quite annoying waiting for inputs to preview -and- operators may get into trouble if they activate a cue late during a fast sequence of cues.

API.Function("PreviewInput",Input:=-1)
'We must momentarily put the active input also into preview so we can use the PreviewNextInput command; -1 is the number of the active (currently going to output) input.

sleep(10) 'Momentary delay to ensure active input is loaded into preview

API.Function("PreviewInputNext")
'Load the next sequential input number into preview. Especially if organizing inputs into tabs; be sure your input tiles are actually ordered sequentially.

About transition timing:

For our show we are most commonly using Merge (set to transition button 1), and occasionally Cut. Our default Merge time is 1500ms and when we want to deviate from that I am attaching a trigger to the preceding input to set the time of transition button 1. If the transition time is longer than the delay time in the above "Preview Next Input" script, I further delay the triggering of the script. I then attach a trigger to the next sequential input to restore the default transition time. The restoration to the default transition time is also being accomplished with a script so that the default time can be easily changed for all inputs. The default time script is also attached to the first input in the show sequence to ensure the correct default time is used from the very beginning.

The script "Set Default Time" is one line: API.Function("SetTransitionDuration1",Value:=1500)

Software feature comments/questions:

-It seems bizarre to me that there is not a mechanism within vMix to trigger actions relative to when a transition ENDS. Why must we institute trigger delay times relative to when a transition (in or out) BEGINS? This requires a completely unnecessary anticipation of the transition time. See feature request here:
https://forums.vmix.com/...sitionOut-Trigger-Option

-Also, why must we type or paste the name of the script we want to call into the trigger field? Why is there not a drop-down box to select the script you want to attach to a trigger?

-The convention to push the "Edit" button to save changes to a trigger is extremely counterintuitive and results in accidentally not saving changes to triggers. It is common GUI practice for an "Edit" button to open options to edit something and a "Save" button to confirm the changes. Why is "Edit" being used in place of "Save" or "Save Changes"?
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.