Stinger animation (during or in between transition)

Hi, I was wondering if it’s possible to add a stinger animation to transition on MimoLive and if so how?

Thanks

1 Like

Sure. mimoLive is based on layers. Quick intro to amazing features?

Here you are:
https://www.youtube.com/watch?v=H_wFCc_tOuc
(See description for a content list.)

The second one: How to add a Timeline? A very complex stinger, or automatic show opener also uses some kind of timeline. :slight_smile:
https://www.youtube.com/watch?v=4-B1V-VoRtY

The easiest way would be to use a PIP-Layer with 3 variants.

  • One outside left
  • One placed in the middle
  • One outside right.

The movement betwenn of these positions is done automatically. (See first video). You simply have to click em live (or let it click live by an Automation-Layer, which is then your timeline for it. See also the video.)

You could also use PIP-window Layers to combine more fancy effects to your stinger. This file shows the principles around this layer: Prototying: MimoLive, Layouts, Designs

Hello Mate, first I would like to thank you for your prompt response and also for the YouTube video that opened my eyes to so many hidden features and possibilities on MimoLive. Truly well done.

In regards to the stinger, I saw all your steps and it doesn’t seem to be straightforward.

Thank god I’m a developer and understand scripting etc, don’t think this would be this easy for the GenPop.

I won’t be using the exact suggestion you made on you comment as in my case all is needed is a (pre existing) transparent video to run each time I run a set of layers that’s all.

I’ll give it a try later today and see if I manage to do it. But thank you so much for all your help.

R

When it’s while running a set, just start it together with your Set. :slight_smile:

If it should be started first, and the set should be startet while the singer (time shifted), use something like this:

Automation-Layer (one variant):
// start stinger
layerOn(<API-Endpoint-of-your-stinger-video-layer-or-variant>)
// seconds to sleep, till the screen is fully covered
sleep(1.43)
// start LayerSet
layerSetRecall(<API-Endpoint-of-your-LayerSet>)

Add more variants, if you want to switch several LayerSets with an introducing stinger-video. Instead of the Set, switch the script. It could stay in automatic-mode. Or if you need the Status at the WebControl, place your script at “on Live” segment at “manual” mode.

This you can use as a template:
layerOn()
sleep()
layerSetRecall()

Notice:
You can get API-Endpoints by right-clicking the layer or layer variant or LayerSet, Output-Destination… even at a special input field… the object. :slight_smile: - Every command has to be placed in a seperate line.

@FUNKist , could you please edit the title-section to bring this thread into the category mimoLive => Automation? Thx :heart:

1 Like

Done. (Title Edit), I’ll try to apply the script shortly. Will let you the outcome.

1 Like

Yeah! This is what I want to read!!

Just for your inspiration:
You could enhance our script, by switching all un-necessary audio off, and turning all necessary audio on again. You know exactly how long the stinger runs… Keep it in mind, maybe it’s handy.

Consider:
// switch particular audio-layer off
layerOff()
// switch all unnecessary audios off (combined in a Layer Set)
layerSetRecall()

This could happen while your “Stinger-In + LayerSet-Script”. Add more “sleep()”-Commands to shift in time.

I just had an attempted and failed miserably :slight_smile:

setVariable($stingerDoc, “1430086515-783D65B8-32A3-493B-9CA2-5C04709DA262”)
setVariable($cleanBackground, “D9C38039-E7FA-4DE6-A804-F56AD8F35B58”)

layerOn($stingerDoc)
sleep(1)
layerOn($cleanBackground)

In theory what I wanted ii to play the transparent video (stinger) but within 750 milliseconds the $cleanBackground starts… that’s all… dead simple.

My code has worked fine but it’s adding a LayerONTime which is long, I want this to run as normal at the end.

You could have it easy or hard:
At the start => start stinger, wait a bit, start content

At the end:
=> start content
=> know exactly how long the segment takes and sleep this time
=> start stinger

If you think mimoLive the same way as OBS/vMix/Wirecast…, you’ll never get happy with it. The power in mimoLive is it’s flexibility everyone is able to use. => old content gets overlayed by your stinger, wait some time, start new content, (stinger ends automatically).

When your stinger is shorter than the script duration, it’s impossible.

I don’t think of Mimo as OBS at all… otherwise why would I have been using Mimo for such long time. Just didn’t get into automation thats all.

What I want is simple…

Stinger video has 2 seconds.

I want that to start but after 1 seconds the background video should be on… the stinger video is transparent and will play one so when it’s done the background remain.

Dead simple.

What do you reckon?

I’m sorry, it seems to be that I missunderstood your experience. :slight_smile:

Same time needs a layerSet.

Tiny time-shifts:

action 1
sleep()
action 2
sleep()
action 3
sleep()
action 4
sleep()

Where can I find all the available functions… I checked the documentation nothing is on there nor anything about automation. This would surely be time saver.

I need to understand what’s layerSet? and what can be the parameters… can’t be guessing. I hope you understand my point.

Thanks a lot for your help.

You’re welcome:

The manual describes all of this.

A LayerSet is a way to execute several things the same time. (It is located unter the “Layer Stack” at the main program window.

By the way, you can reach also all “helping” content with the help of (i)-Icon in mimoLive. Next to the layers or other functions.

Like here:
Bildschirmfoto 2021-04-03 um 15.25.44

It appears after a mouse over.

I searched the manual and no result is returned for the keyword “layerSet” as eg… how I’m I supposed to locate the information about the automation framework and all the functions and parameters.

Unless Im getting blind which I hope I’m not lol

Layer Sets:

Automation Layer:

HTTP-API (for geeks):

I see… so it’s like a variation of a layer… kind of a state… but how can I make it on on the first layer which I presume is simple then off on second and work out the timeline.

layerOn()
≠
layerSetRecall()
≠
layerOff()

:slight_smile:

One and off… pretty simple. What’s Recall?

and where do I set the timing… that’s what I mean by timing… normally on Javascript we would set a parameter for everything within the function.

With layerSetRecall() you’ll start a Layer Set.
All on and offs are created inside a Layer Set.

See Links above.

Timing?
At your Automation layer. As described.

Instead of a Layer, you recall a LayerSet which does things the same time.

I suggest to re read all infos, I allready gave you. :slight_smile: