US11012479B2ActiveUtilityA1

Methods for capturing and broadcasting user computer sessions and related computer program products

35
Assignee: BladePriority: Nov 16, 2018Filed: Mar 14, 2019Granted: May 18, 2021
Est. expiryNov 16, 2038(~12.4 yrs left)· nominal 20-yr term from priority
H04L 65/4025H04L 65/70G09G 5/12H04L 65/1069A63F 13/86G09G 2370/022H04N 21/64784G09G 2340/02G06F 3/1454G06T 1/20H04N 21/632G09G 2370/24H04N 21/23439G09G 2350/00H04N 21/2343A63F 13/355H04L 65/607H04L 65/4023
35
PatentIndex Score
0
Cited by
10
References
12
Claims

Abstract

Methods for capturing and broadcasting a user computer session may involve running the session on a host computer equipped with a graphics processing unit to prepare session display data. The capturing and broadcasting method implements the operations of repeatedly providing the display data prepared by the graphics processing unit to a first encoder and a second encoder to establish a primary video stream and a secondary video stream; then transmitting the primary video stream to the remote client associated with the computer session and transmitting the secondary video stream to a subscriber client.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method of capturing and broadcasting a user computer session, the session running on a host computer equipped with a graphics processing unit to prepare session display data, the capturing and broadcasting method implementing the following operations:
 repeatedly providing display data prepared by the graphics processing unit to a first encoder presenting a first ceiling bit rate and establishing a primary video stream utilizing the first encoder; 
 transmitting the primary video stream to a remote client associated with the computer session; 
 repeatedly providing the same display data to a second, different encoder presenting a second ceiling bit rate different from the first ceiling bit rate and establishing a secondary video stream utilizing the second encoder; and 
 transmitting the secondary video stream to at least one subscriber client; and 
 wherein establishing a primary video stream utilizing the first encoder comprises in reference images into the primary video stream, and wherein establishing a secondary video stream utilizing the second encoder comprises introducing reference images into the secondary video stream, with the introduction of the reference images into the secondary video stream having a higher frequency than the introduction of the reference images into the primary video stream. 
 
     
     
       2. The method according to  claim 1 , further comprising configuring the first encoder and the second encoder in response to user input received from the remote client. 
     
     
       3. The method according to  claim 2 , wherein configuring the first encoder and the second encoder comprises defining the first ceiling bit rate and the second ceiling bit rate. 
     
     
       4. The method according to  claim 2 , wherein configuring the first and second encoder comprises preconfiguring the first encoder and the second encoder before repeatedly providing the display data. 
     
     
       5. The method according to  claim 2 , further comprising dynamically adjusting a bit rate of the primary video stream and/or a bit rate of the secondary video stream. 
     
     
       6. The method according to  claim 1 , further comprising running a virtual machine on a server to provide the host computer. 
     
     
       7. The method according to  claim 6 , wherein the graphics processing unit, the first encoder and the second encoder are carried by a graphics card of the server, and further comprising dedicating the graphics card entirely to the virtual machine. 
     
     
       8. The method according to  claim 1 , further comprising successively capturing sound data, and transmitting the successive sound data to the remote client and/or the subscriber client. 
     
     
       9. The method according to  claim 1 , further comprising receiving control data from the subscriber client, interpreting the control data to initiate and/or interrupt transmitting the secondary video stream to the subscriber client. 
     
     
       10. The method according to  claim 1 , wherein repeatedly providing the display data to the first encoder and the second encoder comprises reading the display data from a buffer memory of the graphics processing unit. 
     
     
       11. The method according to  claim 1 , further comprising transmitting the secondary video stream to a plurality of subscriber clients. 
     
     
       12. A computer program product embodied on a computer readable storage medium containing instructions that, when carried out on a host computer equipped with a graphics processing unit to prepare session display data, implements the following operations:
 repeatedly providing display data prepared by the graphics processing unit to a first encoder presenting a first ceiling bit rate and establishing a primary video stream utilizing the first encoder; 
 transmitting the primary video stream to a remote client associated with the computer session; 
 repeatedly providing the same display data to a second, different encoder presenting a second ceiling bit rate different from the first ceiling bit rate and establishing a secondary video stream utilizing the second encoder; and 
 transmitting the secondary video stream to at least one subscriber client; and 
 wherein establishing a primary video stream utilizing the first encoder comprises introducing reference images into the primary video stream, and wherein establishing a secondary video stream utilizing the second encoder comprises introducing reference images into the secondary video stream, with the introduction of the reference images into the secondary video stream having a higher frequency than the introduction of the reference images into the primary video stream.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.