Networking Technology - jhhl/AUMI-Together GitHub Wiki
networking Tech
Once AUMI Together is robust, it can start doing the tech to hook into a networked session
Major concepts
- improv groups are like Zoom Meetings. access can be provided by invitation, which should have levels of security.
- there are hosts and co-hosts (can take over for hosts) and conductors with differing powers
- a host enables participants and manages who is currently participating in the group
- a conductor controls the participants media streams: merging them in its mixer and video compositor to a tram sent to all and possibly streamed externally as well or simply recorded.
- there needs to be a channel - text and maybe audio - for admins and participants to do out-of-band communication.
One model for the server might be that session data is transmitted from the participants which is then used to set up server side synthesis. That would also include mixing by the conductor. This is transmitted back as audio to all the participants. another way would be for all that synthesis to be done locally, in which case, a participant could get a "monitor mix"
Client side
- establishing identity
-
- identities can request to be established
-
- it might be that they have to be associated with at least one improv group
-
- identities do not have to reflect real names
-
- identities have invitation queues
-
- identities can change profiles
-
- identities can delete themselves
- finding a session / responding to an invitation
- reconnecting to a dropped session
- metadata transmission of gesture info as opposed to sending audio
- out of band chat/audio chat
Investigate
Zoom has a new app making thing which may be used to build a Zoom-based framework for AUMI Together JumpStart