A method for providing a switched group video chat for a plurality of client devices (106-1 through 106-n) by a computing device comprising a processor, comprising: (a) for each client device, configuring upstream and a downstream video ports by the processor for a one-to-one video chat session between a central controller and the client device; (b) receiving a video stream and an audio stream from one or more client devices by the processor over the corresponding one-to-one video chat sessions between the one or more client devices and the central controller; (c) receiving from a given client device by the processor a flow control signal for indicating a selection of a given participant of the group video chat to be viewed at the given client device; (d) in response to receiving the flow control signal from the given client device, sending the video stream received from the client device of the selected participant to the given client device by the processor over the one-to-one video chat session between the given client device and the central controller; and (e) sending a plurality of audio streams from the one or more client devices, except for the audio stream from the given client device, to the given client device by the processor over the one-to-one video chat session between the given client device and the central controller, whereby the given client device: in response to receiving the video stream and the plurality of audio streams, synchronizing the video stream and the audio stream corresponding to the selected participant by the given client device; mixing the synchronized audio stream with a remainder of the plurality of audio streams by the given client device; and playing the synchronized video stream and mixed audio stream by the given client device. (a) for each client device, configuring upstream and a downstream video ports by the processor for a one-to-one video chat session between a central controller and the client device; (b) receiving a video stream and an audio stream from one or more client devices by the processor over the corresponding one-to-one video chat sessions between the one or more client devices and the central controller; (c) receiving from a given client device by the processor a flow control signal for indicating a selection of a given participant of the group video chat to be viewed at the given client device; (d) in response to receiving the flow control signal from the given client device, sending the video stream received from the client device of the selected participant to the given client device by the processor over the one-to-one video chat session between the given client device and the central controller; and (e) sending a plurality of audio streams from the one or more client devices, except for the audio stream from the given client device, to the given client device by the processor over the one-to-one video chat session between the given client device and the central controller, whereby the given client device: in response to receiving the video stream and the plurality of audio streams, synchronizing the video stream and the audio stream corresponding to the selected participant by the given client device; mixing the synchronized audio stream with a remainder of the plurality of audio streams by the given client device; and playing the synchronized video stream and mixed audio stream by the given client device. in response to receiving the video stream and the plurality of audio streams, synchronizing the video stream and the audio stream corresponding to the selected participant by the given client device; mixing the synchronized audio stream with a remainder of the plurality of audio streams by the given client device; and playing the synchronized video stream and mixed audio stream by the given client device.