IP Library Granted Patent US 10,652,303
Granted Patent B2
US 10,652,303 · App. 15/499,582 · Granted May 12, 2020

Screencast orchestration

Inventor: Timophey Zaitsev (San Mateo, CA)
Assignee: Rabbit Asset Purchase Corp.
H04L65/608H04L65/607H04L65/80H04L67/02
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 10,652,303
App. No.
15/499,582
Granted
May 12, 2020
Kind
B2
Abstract

A method comprising by one or more computing systems of a virtual-room networking system, receiving, from a client computing device, a request to access a remote client; by the one or more computing systems of the virtual-room networking system, capturing, from the remote client, content to be presented to one or more client computing devices; by the one or more computing systems of the virtual-room networking system, encoding the captured content to be presented to the one or more client computing devices, wherein the encoding processes and converts the captured content in a format to be presented to the one or more computing devices; by the one or more computing systems of the virtual-room networking system, transmitting the encoded captured content to the one or more client computing systems.

Claims (55)

1. A method comprising:

by one or more computing systems of a virtual-room networking system, receiving, from a client computing device, a request to access a remote client;

by the one or more computing systems of a virtual-room networking system, selecting a first set of a plurality of pipeline components through which to provide the client computing device access to the remote client, comprising:

selecting, based on one or more first factors, a first one of a plurality of capture computational resources, wherein the one or more first factors comprise one or more of a geographic location of the client computing device, a capacity of the plurality of capture computational resources, and a number of failed capabilities of the plurality of capture computational resources;

locking the first one of the plurality of capture computational resources;

locking the first one of the plurality of encode computational resources;

locking the first one of the plurality of transmit computational resources;

selecting, based on one or more second factors, a first one of a plurality of encode computational resources; and

selecting, based on one or more third factors, a first one of a plurality of transmit computational resources;

by the one or more computing systems of the virtual-room networking system, capturing, from the remote client and using the selected first capture computational resource, content to be presented to one or more client computing devices;

by the one or more computing systems of the virtual-room networking system, encoding using the selected first encode computational resource the captured content to be presented to the one or more client computing devices, wherein the encoding processes and converts the captured content in a format to be presented to the one or more client computing devices;

by the one or more computing systems of the virtual-room networking system, transmitting using the selected first transmit computational resource the encoded captured content to the one or more client computing systems.

2. The method of claim 1 , wherein the remote client is a remote desktop.

3. The method of claim 1 , wherein the remote client is controlled by the client computing device.

4. The method of claim 3 , wherein each of the one or more client computing devices is associated with a particular user of the virtual-room networking system.

5. The method of claim 1 , wherein the content to be presented to the one or more client computing devices contains one or more audio streams and one or more video streams.

6. The method of claim 1 , wherein the encoding further comprises:

by the one or more computing systems of the virtual-room networking system, determining a current system capacity;

by the one or more computing systems of the virtual-room networking system, processing and converting the captured content into a higher quality format when the current system capacity is below a pre-determined threshold.

7. The method of claim 1 , wherein the one or more second factors comprise one or more of the geographic location of the client computing device, a capacity of the plurality of encode computational resources, and a number of failed capabilities of the plurality of encode computational resources.

8. One or more computer-readable non-transitory storage media in one or more computing systems, the media embodying logic that is operable when executed to:

receive, from a client computing device, a request to access a remote client;

select a first set of a plurality of pipeline components through which to provide the client computing device access to the remote client, comprising:

select, based on one or more first factors, a first one of a plurality of capture computational resources, wherein the one or more first factors comprise one or more of a geographic location of the client computing device, a capacity of the plurality of capture computational resources, and a number of failed capabilities of the plurality of capture computational resources;

lock the first one of the plurality of capture computational resources;

lock the first one of the plurality of encode computational resources;

lock the first one of the plurality of transmit computational resources;

select, based on one or more second factors, a first one of a plurality of encode computational resources; and

select, based on one or more third factors, a first one of a plurality of transmit computational resources;

capture, from the remote client and using the selected first capture computational resource, content to be presented to one or more client computing devices;

encode using the selected first encode computational resource the captured content to be presented to the one or more client computing devices, wherein the encoding processes and converts the captured content in a format to be presented to the one or more computing devices;

transmit using the selected first transmit computational resource the encoded captured content to the one or more client computing systems.

9. The media of claim 8 , wherein the remote client is a remote desktop.

10. The media of claim 8 , wherein the remote client is controlled by the client computing device.

11. The media of claim 10 , wherein the remote client is controlled by a second client computing device.

12. The media claim of 10 , wherein each of the one or more client computing devices is associated with a particular user of the virtual-room networking system.

13. The media claim of 8 , wherein the content to be presented to the one or more client computing devices contains one or more audio streams and one or more video streams.

14. A system, comprising:

one or more memory devices; and

a processor communicatively coupled to the one or more memory devices, the processor operable to:

receive, from a client computing device, a request to access a remote client;

select a first set of a plurality of pipeline components through which to provide the client computing device access to the remote client, comprising:

select, based on one or more first factors, a first one of a plurality of capture computational resources, wherein the one or more first factors comprise one or more of a geographic location of the client computing device, a capacity of the plurality of capture computational resources, and a number of failed capabilities of the plurality of capture computational resources;

lock the first one of the plurality of capture computational resources;

lock the first one of the plurality of encode computational resources;

lock the first one of the plurality of transmit computational resources;

select, based on one or more second factors, a first one of a plurality of encode computational resources; and

select, based on one or more third factors, a first one of a plurality of transmit computational resources;

capture, from the remote client and using the selected first capture computational resource, content to be presented to one or more client computing devices;

encode using the selected first encode computational resource the captured content to be presented to the one or more client computing devices, wherein the encoding processes and converts the captured content in a format to be presented to the one or more computing devices;

transmit using the selected first transmit computational resource the encoded captured content to the one or more client computing systems.

15. The system claim 14 , wherein the remote client is a remote desktop.

16. The system of claim 14 , wherein the remote client is controlled by the client computing device.

17. The system of claim 16 , wherein the remote client is controlled by a second client computing device.

18. The system claim 16 , wherein each of the one or more client computing devices is associated with a particular user of the virtual-room networking system.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2019
From: RABBIT, INC.
To: RABBIT (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
Reel/Frame 050506/0024 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2019
From: RABBIT (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
To: RABBIT ASSET PURCHASE CORP.
Reel/Frame 050529/0396 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: ZAITSEV, TIMOPHEY
To: RABBIT, INC.
Reel/Frame 049556/0822 →
Continuity (2)
Provisional Application 62328825 · Apr 28, 2016
Related Publication 20170318070A1 · Nov 2, 2017