I have a rather unusual situation where I am combining sources, some of which are Zoom callers who need a delay added to them to be in sync with the other inputs. However, because there will be lots of different callers with different latency, I need to adjust the delay every time we switch to a new caller.
So, I am hoping there is some way to programatically access the audio and video delay settings on a source, so that I can connect it to some external controller, for fast and easy adjustment.
I am at the early stages of testing right now, but I was assuming that there would be some stability in the latency of a single Zoom participant (e.g. in a break out room). Different latencies for different people, yes, but I just need to get 1 remote person in sync with me.
Are you suggesting that an individuals latency varies, or were you thinking that I need to sync up multiple people at once?
I will also take a look at your suggestions though, although the solution needs to be simple and frictionless (no extra signups, etc) for the end users.
This use case is for a karaoke event where I can’t expect much more from the participants than being able to join a Zoom call.
I send music and video to a remote singer (wearing headphones), who sings back to me. i then mix their singing with the backing track that I sent them to produce a mix. So I split the music video feed, send one feed with no delay to the singer, and delay the other feed to match their singing.
Of course there would be a line-up process prior to each song, to establish the delay for that particular singer, which is where an easy to operate way of adjusting the delay would be so useful.
In both cases, the solution is to uncouple the singing from the music and then synchronise the music at both ends. Of course, instead of Zoom, you could also use mimoCall and get better audio quality for the signing.