Patent attributes
Any number of computers join a session of an online video conference facilitated by a server of a central computer. Each computer sends to the server participant metadata including a role for each computer (e.g., “tutor” or “student”) and streaming information to facilitate streaming between other computers. The server sends the participant metadata to all other computers in the session. A computer decides to subscribe to a video stream of another computer only if that other computer has a role of “tutor.” The tutor computer subscribes to video streams from all student computers. A peer-to-peer communication platform such as WebRTC facilitates communications between computers but does not pass any video or audio streams via the central computer. The tutor computer subscribes to students who are speaking. A student computer subscribes to a video stream from another student computer if the download and upload speeds respectively are above a certain threshold.