IP Library › Granted Patent US 11,425,219
Granted Patent B1
US 11,425,219 · App. 16/587,524 · Granted Aug 23, 2022

Smart stream capture

Inventors: Sang Jin Lee (San Francisco, CA); Maxime Boulin (Redwood City, CA); Jackson Gardner (Oakland, CA); Phillip Carter (Lake Forest, CA); Charles Bradford (Irvine, CA); Ross Alan Cameron Gardner (Irvine, CA); Tyler McDowall (Laguna Hills, CA); RayAna Min Stanek (Irvine, CA); Kevin M. Ni (San Francisco, CA)
Assignee: Twitch Interactive, Inc.
H04L67/36H04L65/1059H04L65/1083H04L65/4069H04L67/38
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 11,425,219
App. No.
16/587,524
Granted
Aug 23, 2022
Kind
B1
Abstract

A plurality of image sources that are open on a first computing device may be determined. A plurality of visual representations of the plurality of image sources may be displayed. A selection of a first image source of the plurality of image sources for which to transmit first image data corresponding to the first image source to one or more other computing devices may be received via the plurality of visual representations. A first image capture component to capture the first image data may be automatically selected, by one or more software components, from a plurality of image capture components. The first image data may be captured using the first image capture component, and the first image data may be transmitted to the one or more other computing devices.

Claims (40)

1. A computing system comprising:

one or more processors; and

one or more memories having stored therein computing instructions that, upon execution by the one or more processors, cause the computing system to perform operations comprising:

determining a plurality of image sources that are open on a first computing device;

displaying a plurality of visual representations of the plurality of image sources;

receiving, via the plurality of visual representations, a selection of a first image source of the plurality of image sources for which to transmit first image data corresponding to the first image source to one or more other computing devices;

automatically selecting, by one or more software components, from a plurality of image capture components, a first image capture component that captures, by at least causing a presentation entry-point in a graphics application programming interface to be replaced with a replacement function, the first image data corresponding to the first image source, wherein the first image capture component is selected based, at least in part, on a determination that a streaming session was operated with the first image capture component capturing other image data from the first image source for at least a threshold minimum time duration; and

capturing the first image data using the first image capture component, wherein the first image data is transmitted to the one or more other computing devices.

2. The computing system of claim 1 , wherein the plurality of visual representations of the plurality of image sources comprise thumbnails of the plurality of image sources.

3. A computer-implemented method comprising:

determining a plurality of image sources that are open on a first computing device;

displaying a plurality of visual representations of the plurality of image sources;

receiving, via the plurality of visual representations, a selection of a first image source of the plurality of image sources for which to transmit first image data corresponding to the first image source to one or more other computing devices;

automatically selecting, by one or more software components, from a plurality of image capture components, a first image capture component that captures, by at least causing a presentation entry-point in a graphics application programming interface to be replaced with a replacement function, the first image data corresponding to the first image source, wherein the first image capture component is selected based, at least in part, on a determination that a streaming session was operated with the first image capture component capturing other image data from the first image source for at least a threshold minimum time duration; and

capturing the first image data using the first image capture component, wherein the first image data is transmitted to the one or more other computing devices.

4. The computer-implemented method of claim 3 , wherein the plurality of visual representations of the plurality of image sources comprise thumbnails of the plurality of image sources.

5. The computer-implemented method of claim 3 , wherein the first image capture component is further selected based, in part, on whether the first image source is generated by a video game or on whether the first image source is assisted by a graphics card.

6. The computer-implemented method of claim 3 , wherein the selecting comprises:

attempting use of a second image capture component to capture the first image data;

determining that the second image capture component does not successfully capture the first image data;

attempting use of the first image capture component to capture the first image data; and

determining that the first image capture component does successfully capture the first image data.

7. The computer-implemented method of claim 6 , wherein the use of the first image capture component and the use of the second image capture component are attempted in parallel with one another.

8. The computer-implemented method of claim 6 , wherein determining that the second image capture component does not successfully capture the first image data comprises determining that the second image capture component obtains an image with no texture or with an all-black texture.

9. The computer-implemented method of claim 3 , wherein the first image capture component comprises a component that captures an image of an entire desktop, and wherein the image of the entire desktop is cropped after being captured to show only the first image source.

10. One or more non-transitory computer-readable storage media having stored thereon computing instructions that, upon execution by a computing device, cause the computing device to perform operations comprising:

determining a plurality of image sources that are open on a first computing device;

displaying a plurality of visual representations of the plurality of image sources;

receiving, via the plurality of visual representations, a selection of a first image source of the plurality of image sources for which to transmit first image data corresponding to the first image source to one or more other computing devices;

automatically selecting, by one or more software components, from a plurality of image capture components, a first image capture component that captures, by at least causing a presentation entry-point in a graphics application programming interface to be replaced with a replacement function, the first image data corresponding to the first image source, wherein the first image capture component is selected based, at least in part, on a determination that a streaming session was operated with the first image capture component capturing other image data from the first image source for at least a threshold minimum time duration; and

capturing the first image data using the first image capture component, wherein the first image data is transmitted to the one or more other computing devices.

11. The one or more non-transitory computer-readable storage media of claim 10 , wherein the first image capture component is further selected based, in part, on whether the first image source is generated by a video game or on whether the first image source is assisted by a graphics card.

12. The one or more non-transitory computer-readable storage media of claim 10 , wherein the selecting comprises:

attempting use of a second image capture component to capture the first image data;

determining that the second image capture component does not successfully capture the first image data;

attempting use of the first image capture component to capture the first image data; and

determining that the first image capture component does successfully capture the first image data.

13. The computing system of claim 1 , wherein the first image capture component is further selected based, in part, on a type of the graphics application programming interface employed by the first image source.

14. The computer-implemented method of claim 3 , wherein the first image capture component is further selected based, in part, on a type of the graphics application programming interface employed by the first image source.

15. The one or more non-transitory computer-readable storage media of claim 10 , wherein the first image capture component is further selected based, in part, on a type of the graphics application programming interface employed by the first image source.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE SECOND INVENTORS NAME PREVIOUSLY RECORDED AT REEL: 059430 FRAME: 0650. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 24, 2022
From: LEE, SANG JIN; BOULIN, MAXIME; GARDNER, JACKSON; CARTER, PHILLIP; BRADFORD, CHARLES; GARDNER, ROSS ALAN CAMERON; MCDOWALL, TYLER; STANEK, RAYANA MIN; NI, KEVIN M.
To: TWITCH INTERACTIVE, INC.
Reel/Frame 060440/0256 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2022
From: LEE, SANG JIN; BOULIN, MAXINE; GARDNER, JACKSON; CARTER, PHILLIP; BRADFORD, CHARLES; GARDNER, ROSS ALAN CAMERON; MCDOWALL, TYLER; STANEK, RAYANA MIN; NI, KEVIN M.
To: TWITCH INTERACTIVE, INC.
Reel/Frame 059430/0650 →
Cited By (2)
US 12,389,080 US 12,598,241