IP Library Granted Patent US 9,591,262
Granted Patent B2
US 9,591,262 · App. 15/242,636 · Granted Mar 7, 2017

Flow-control based switched group video chat and real-time interactive broadcast

Inventor: Shah Talukder (Los Gatos, CA)
H04N7/152H04L12/1813H04L65/4015H04N5/04H04N5/76
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,591,262
App. No.
15/242,636
Granted
Mar 7, 2017
Kind
B2
Abstract

Real-time interactive broadcast sessions for client devices include: for each client device in the interactive broadcast session, configuring downstream video and audio ports for the interactive broadcast session between a central controller and the client device; receiving from each client device a selected broadcaster corresponding to a broadcaster flow control signal; in response to receiving the selected broadcaster from each client device, sending video and audio streams of the selected broadcaster to each client device over the interactive broadcast session; receiving a request from a given client device on the interactive broadcast session to interact with the selected broadcaster; configuring upstream and downstream video ports for one-to-one video chat session between the central controller and the given client device; and sending the video and audio streams of the given client device, and the video and audio streams of the selected broadcaster, to each client device over the interactive broadcast session.

Claims (47)

1. A method for providing a real-time interactive broadcast session for a plurality of client devices by a computing device comprising a central controller, comprising:

(a) configuring, by the central controller, one or more ports for an upstream video and an upstream audio for a broadcast device of the plurality of client devices in a first real-time broadcast session;

(b) receiving, by the central controller, a plurality of video data packets for a first video stream and a plurality of audio data packets for a first audio stream from the broadcaster device using the one or more ports for the upstream video and the upstream audio;

(c) storing plurality of video data packets and the plurality audio data packets of the first real-time interactive broadcast session as a recorded interactive broadcast session, wherein each video data packet and each audio data packet of the recorded interactive broadcast session comprises a timestamp;

(d) receiving, by the central controller, a playback command to play back the recorded interactive broadcast session from an initiator device of a second plurality of client devices in a second real-time interactive broadcast session;

(e) configuring, by the central controller, one or more ports for a downstream video and a downstream audio for one or more client devices of the second plurality of client devices in the second real-time interactive broadcast session; and

(f) in response to the playback command during the second real-time interactive broadcast session, sending, by the central controller, a second video stream comprising the plurality of video data packets of the recorded interactive broadcast session and a second audio stream comprising the plurality of audio data packets of the recorded interactive broadcast session to the one or more client devices of the second plurality of client devices using the one or more ports for the downstream video and audio for the one or more client devices of the second plurality of client devices, each video data packet and each audio data packet of the recorded interactive broadcast session received by the one or more client devices of the second plurality of client devices comprising the timestamp.

2. The method of claim 1 , further comprising:

(g) synchronizing, by at least a given client device of the plurality of client devices, the second video stream and the second audio stream received from the central controller using the timestamps of the plurality of video data packets and the plurality of audio data packets; and

(h) displaying the synchronized second video and audio streams by the given client device.

3. The method of claim 1 , wherein the first real-time interactive broadcast session and the second real-time interactive broad session are the same interactive broadcast session.

4. The method of claim 1 , further comprising:

(g) receiving, by the central controller, a request from a participant client device to join the second real-time interactive broadcast session;

(h) in response to the request, configuring, by the central controller, one or more ports for an additional downstream video and an additional downstream audio for the participant client devices; and

(i) sending, by the central controller, the second video stream and the second audio stream of the recorded interactive broadcast session to the participant client device using the one or more ports for the downstream video and audio for the participant client devices.

5. A non-transitory computer readable medium device comprising computer readable program code embodied therewith for providing a real-time interactive broadcast session for a plurality of client devices, the computer readable program code configured to:

(a) configure, by the central controller, one or more ports for an upstream video and an upstream audio for a broadcast device of the plurality of client devices in a first real-time broadcast session;

(b) receive, by the central controller, a plurality of video data packets for a first video stream and a plurality of audio data packets for a first audio stream from the broadcaster device using the one or more ports for the upstream video and the upstream audio;

(c) store plurality of video data packets and the plurality audio data packets of the first real-time interactive broadcast session as a recorded interactive broadcast session, wherein each video data packet and each audio data packet of the recorded interactive broadcast session comprises a timestamp;

(d) receive, by the central controller, a playback command to play back the recorded interactive broadcast session from an initiator device of a second plurality of client devices in a second real-time interactive broadcast session;

(e) configure, by the central controller, one or more ports for a downstream video and a downstream audio for one or more client devices of the second plurality of client devices in the second real-time interactive broadcast session; and

(f) in response to the playback command during the second real-time interactive broadcast session, send, by the central controller, a second video stream comprising the plurality of video data packets of the recorded interactive broadcast session and a second audio stream comprising the plurality of audio data packets of the recorded interactive broadcast session to the one or more client devices of the second plurality of client devices using the one or more ports for the downstream video and audio for the one or more client devices of the second plurality of client devices, each video data packet and each audio data packet of the recorded interactive broadcast session received by the one or more client devices of the second plurality of client devices comprising the timestamp.

6. The medium of claim 5 , wherein the computer readable program code is further configured to:

(g) synchronize, by at least a given client device of the plurality of client devices, the second video stream and the second audio stream received from the central controller using the timestamps of the plurality of video data packets and the plurality of audio data packets; and

(h) display the synchronized second video and audio streams by the given client device.

7. The medium of claim 5 , wherein the first real-time interactive broadcast session and the second real-time interactive broad session are the same interactive broadcast session.

8. The medium of claim 5 , wherein the computer readable program code is further configured to:

(g) receive, by the central controller, a request from a participant client device to join the second real-time interactive broadcast session;

(h) in response to the request, configure, by the central controller, one or more ports for an additional downstream video and an additional downstream audio for the participant client devices; and

(i) sending, by the central controller, the second video stream and the second audio stream of the recorded interactive broadcast session to the participant client device using the one or more ports for the downstream video and audio for the participant client devices.

9. A system, comprising:

a central controller; and

a non-transitory computer readable medium having computer readable program code embodied therewith, the computer readable program code configured to:

(a) configure, by the central controller, one or more ports for an upstream video and an upstream audio for a broadcast device of the plurality of client devices in a first real-time broadcast session;

(b) receive, by the central controller, a plurality of video data packets for a first video stream and a plurality of audio data packets for a first audio stream from the broadcaster device using the one or more ports for the upstream video and the upstream audio;

(c) store plurality of video data packets and the plurality audio data packets of the first real-time interactive broadcast session as a recorded interactive broadcast session, wherein each video data packet and each audio data packet of the recorded interactive broadcast session comprises a timestamp;

(d) receive, by the central controller, a playback command to play back the recorded interactive broadcast session from an initiator device of a second plurality of client devices in a second real-time interactive broadcast session;

(e) configure, by the central controller, one or more ports for a downstream video and a downstream audio for one or more client devices of the second plurality of client devices in the second real-time interactive broadcast session; and

(f) in response to the playback command during the second real-time interactive broadcast session, send, by the central controller, a second video stream comprising the plurality of video data packets of the recorded interactive broadcast session and a second audio stream comprising the plurality of audio data packets of the recorded interactive broadcast session to the one or more client devices of the second plurality of client devices using the one or more ports for the downstream video and audio for the one or more client devices of the second plurality of client devices, each video data packet and each audio data packet of the recorded interactive broadcast session received by the one or more client devices of the second plurality of client devices comprising the timestamp.

10. The system of claim 9 , wherein the computer readable program code is further configured to:

(g) synchronize, by at least a given client device of the plurality of client devices, the second video stream and the second audio stream received from the central controller using the timestamps of the plurality of video data packets and the plurality of audio data packets; and

(h) display the synchronized second video and audio streams by the given client device.

11. The system of claim 9 , wherein the first real-time interactive broadcast session and the second real-time interactive broad session are the same interactive broadcast session.

12. The system of claim 9 , wherein the computer readable program code is further configured to:

(g) receive, by the central controller, a request from a participant client device to join the second real-time interactive broadcast session;

(h) in response to the request, configure, by the central controller, one or more ports for an additional downstream video and an additional downstream audio for the participant client devices; and

(i) sending, by the central controller, the second video stream and the second audio stream of the recorded interactive broadcast session to the participant client device using the one or more ports for the downstream video and audio for the participant client devices.

Continuity (5)
Continuation 14686754 · Apr 14, 2015
Continuation 14470369 · Aug 27, 2014
Continuation 13449356 · Apr 18, 2012
Provisional Application 61478046 · Apr 21, 2011
Related Publication 20160360154A1 · Dec 8, 2016