bitfocus / companion-module-bmd-atem

MIT License
54 stars 32 forks source link

Feature Request: Add audio fader feature for all audio sliders? #308

Closed Jibun-no-Kage closed 4 weeks ago

Jibun-no-Kage commented 1 month ago

Feature Request: Add audio fader feature for all audio sliders? Would like to be able to set a slide rate for any audio fader then trigger the fader to slide. Similar to how the Fade-to-Black feature works for video on the BMD ATEM.

Jibun-no-Kage commented 1 month ago

I noticed in the ATEM software control application, there is an 'audio follow video' feature (check box). But there seems to be no way to enable or disable this on the ATEM its-self, nor is it part of the module, or did I miss seeing it? I created a macro that does fade the master audio on the ATEM and I call that via companion, it works, but is a kludge, so the feature request is still needed, unless it is there somewhere and I missed it?

dragon788 commented 1 month ago

I think it is per input using Input Mix?

image

Jibun-no-Kage commented 1 month ago

Humm... Yes, does turn on/off AFV for given audio source on the audio panel. But what I was getting at was to have a feature in the ATEM module that would let you use any audio input and trigger a fader, similar to how you can link audio fading to the FTB button on the ATEM.

Via Stream Deck, I would like to bring up mic 1 and bring down mic 2, slowly, I can do this via ATEM macros, but it is complex and tricky to do such macros, and said macros cannot be run in parallel, meaning I have to fade mic 1 down completely and only then fade up mic 2, cannot be done at the same time, for example.

Jibun-no-Kage commented 1 month ago

Speaking of which... to toggle the FTB 'Audio Follow Video' feature? Anyone have an idea what this is in the ATEM module? The action descriptions of FairLight are a cryptic for someone that is not a sound engineer? Or at least for me! :)

image

Above is the setting that lets FTB do a synchronized audio fade. I am assuming it pulls down the master gain slider/fader. But the ability to allow any audio channel to be 'faded' is what I was asking about.

Jibun-no-Kage commented 1 month ago

@dragon788 If there was a 'master' as the input source, to toggle AFV that would at least have addressed the AFV link to FTB. For now I setup two macros, one turns on AFV for the master, other turn off AFV for master. Then, in companion, I did a 2 step button, the first step runs the turn on AFV macro, the second step runs the turn off AFV macro. I also set a custom variable to true, in step 1, and false in step 2. I change the button text via feedback as per the custom variable true/false.

This results in the following... Step 1 Variable set to true Button text set to 'FTB AFV On' via feedback Run macro FTB-AFV-On

Step 2 Variable set to false Button text set to 'FTB AFV Off' via feedback Run macro FTB-AFV-Off

Thus, you have a toggle button on Stream Deck, that reflects the AFV state of the master, as seen in ATEM control software.

Of course, this is all a side discussion, since I still need a way to do fading of any defined audio input source, and as I said above, my use case is, I need to fade down Mic1 and fade up Mic2, for example, at the same time if possible! :) And in such a way that I don't have to have it liked to the FTB feature at all.

Why? If anyone asks... because we don't always have a dedicated sound engineer that can do this on the fly as needed. When we only have staff for streaming/recording at ATEM, not the sound board, hence the use case.

Jibun-no-Kage commented 1 month ago

Oh (LOL)... Yes I guess I could drive the sound board via companion... and get it done that way... but has not looked at that option yet.

Julusian commented 1 month ago

@Jibun-no-Kage what audio faders are missing, and for what model? mic1 and mic2 for the mini/extreme series has long been supported

image

Jibun-no-Kage commented 1 month ago

It is not that the channels are not supported by sliders. It is that, there does not seem to be a way to set a fade rate for each channel, and that channels cannot be faded up or down as needed. What I am asking for a way to set rate/total time a given audio channel can be faded up or down via companion, not having to use ATEM macros, looping macros cannot not be run in parallel on the ATEM for example.

As I said above, I would like to be able to fade-down mic1 and fade-up mic2, at the same time for example from companion. To do a custom fade rate/total time on the master gain can be done via an ATEM macro (sort of), or linking the master gain to the AFV feature of FTB.

Julusian commented 1 month ago

The action I showed above does have a duration field at the bottom there, which in the example I have shown will do a 500ms fade from the current level to -infinity. Which sounds like what you are after?

I haven't used these myself in a while, but it should work fine to use multiple of these at once to achieve fading one channel down and another up.

Jibun-no-Kage commented 1 month ago

That is definitely part of the puzzle... but I am still trying to figure out how to move multiple sliders at the 'same' time in sequence, for example fade down mic1 at the same time, fading up mic2 for example. Yes I could do it via a rather complex ATEM macro maybe. But I would much rather do it via companion... easier to maintain, support, document, etc. ATEM macros have some real quirks, when you have macros do step wise changes, they tend to step on each other as well.

For example, created an ATEM macro that steps master gain down from +2 to -120, to do this you have to create the macro then edit the XML file to create the 'steps', especially if you want the 'rate' to speed up or slow down as applicable. So say you have the macro working. Now the issue is when to call it. If you call this type of stepping macro first, before any other macro or triggering FTB, the macro halts, gets interrupted, stops stepping. If you trigger FTB, then call the macro, the macro runs, as long as no other macro is triggered. Interesting no? I asked about this serial dependency the macros have, and so far BMD has not replied. Clearly the expectation was at best your can chain commands or macros together, but not run individuals sepparate macros in parallel, or my experience thus far suggests.

Julusian commented 1 month ago

to do multiple at once, use multiple actions. Or if you want them to happen at slightly different times, set the delay

image

Jibun-no-Kage commented 1 month ago

Yup... that should work... I will give it a try this weekend. Providing the ATEM does not have an issue with it. The one thing, which I can live with, is the fade is consistent. With the ATEM macro trick, I could have the fade follow logarithmic curve, but that is a real pain to implement. Hummm.... actually I could use relative delays and multiple actions, so I could have first 3 seconds 500ms, next 3 seconds 250ms, next 3 seconds 100ms, just for sake of comparable result.

Julusian commented 4 weeks ago

Easing curves will be in the betas shortly

Jibun-no-Kage commented 3 weeks ago

Now that... is really good to hear! Thanks again.