IP Library Granted Patent US 10,028,022
Granted Patent B1
US 10,028,022 · App. 15/626,072 · Granted Jul 17, 2018

Dynamic control of media effects based on hardware performance

Inventors: Hermes Germi Pique Corchs (London, GB); Kirill A. Pugin (Sammamish, WA); Razvan Gabriel Racasanu (Mountain View, CA); Colin Todd Miller (San Jose, CA)
Assignee: Facebook, Inc.
H04N21/440281G06T7/246G11B27/031H04N21/4394H04N21/44008H04N21/44209H04N21/44222H04N21/4532H04N21/816H04N21/8106G06T2207/10016G06T2207/30201
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,028,022
App. No.
15/626,072
Granted
Jul 17, 2018
Kind
B1
Abstract

A media effects engine on a computer device applies one or more effects to an input media stream. A performance monitor monitors a performance metric associated with playing the input media stream and reduces a quality parameter associated with the effect upon detecting a drop in the performance metric below a target metric. The quality parameter manages a tradeoff between a quality of effect and an amount of hardware resources consumed to produce the effect. Thus, the effect can be adjusted to meet the capabilities of the computer device.

Claims (66)

1. A method comprising:

receiving an input media stream;

setting a quality parameter to an initial quality parameter value, the quality parameter controlling a quality of a selected effect and an amount of hardware resources of a media processing device used to apply the selected effect;

applying, by the media processing device, the selected effect to a first portion of the input media stream according to the initial quality parameter value to generate a first portion of an output media stream;

monitoring a performance metric of the first portion of the output media stream;

comparing the performance metric of the first portion of the output media stream to a target metric;

responsive to detecting that the performance metric of the first portion of the output media stream is below the target metric, reducing the quality parameter associated with the selected effect to a reduced quality parameter value;

applying, by the media processing device, the selected effect to a second portion of the input media stream according to the reduced quality parameter value to generate a second portion of the output media stream; and

outputting the output media stream.

2. The method of claim 1 , wherein applying the selected effect to the second portion of the input media stream according to the reduced quality parameter value uses less computing resources than applying the selected effect to the first portion of the input media stream according to the initial quality parameter value.

3. The method of claim 2 , wherein reducing the quality parameter comprises:

determining the reduced quality parameter value such that metric of the second portion of the output media stream increases to at least the target metric.

4. The method of claim 1 , wherein applying the selected effect to the first portion of the input media comprises:

extracting a number of facial features from the first portion of the input media stream;

tracking locations of the facial features in the first portion of the input media stream; and

applying the selected effect using the locations of the facial features, wherein the quality parameter controls the number of facial features.

5. The method of claim 1 , further comprising:

determining the target metric based on capabilities of the media processing device.

6. The method of claim 1 , further comprising:

monitoring respective throughputs of a plurality of effects applied to the first portion of the input media stream; and

identifying the selected effect from among the plurality of effects as having a slowest throughput of the respective throughputs.

7. The method of claim 1 , wherein the performance metric comprises a media frame rate or latency.

8. A non-transitory computer-readable storage medium storing instructions that when executed by a processor cause the processor to perform steps including:

receiving an input media stream;

setting a quality parameter to an initial quality parameter value, the quality parameter controlling a quality of a selected effect and an amount of hardware resources of a media processing device used to apply the selected effect;

applying the selected effect to a first portion of the input media stream according to the initial quality parameter value to generate a first portion of an output media stream;

monitoring a performance metric of the first portion of the output media stream;

comparing the performance metric of the first portion of the output media stream to a target metric;

responsive to detecting that the performance metric of the first portion of the output media stream is below the target metric, reducing the quality parameter associated with the selected effect to a reduced quality parameter value;

applying the selected effect to a second portion of the input media stream according to the reduced quality parameter value to generate a second portion of the output media stream; and

outputting the output media stream.

9. The non-transitory computer-readable storage medium of claim 8 , wherein applying the selected effect to the second portion of the input media stream according to the reduced quality parameter value uses less computing resources than applying the selected effect to the first portion of the input media stream according to the initial quality parameter value.

10. The non-transitory computer-readable storage medium of claim 9 , wherein reducing the quality parameter comprises:

determining the reduced quality parameter value such that metric of the second portion of the output media stream increases to at least the target metric.

11. The non-transitory computer-readable storage medium of claim 8 , wherein applying the selected effect to the first portion of the input media comprises:

extracting a number of facial features from the first portion of the input media stream;

tracking locations of the facial features in the first portion of the input media stream; and

applying the selected effect using the locations of the facial features, wherein the quality parameter controls the number of facial features.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the instructions when executed further cause the processor to perform a step of:

determining the target metric based on capabilities of the media processing device.

13. The non-transitory computer-readable storage medium of claim 8 , wherein the instructions when executed further cause the processor to perform steps including:

monitoring respective throughputs of a plurality of effects applied to the first portion of the input media stream; and

identifying the selected effect from among the plurality of effects as having a slowest throughput of the respective throughputs.

14. The non-transitory computer-readable storage medium of claim 8 , wherein the performance metric comprises a media frame rate or latency.

15. A computer device comprising:

a processor; and

a non-transitory computer-readable storage medium storing instructions that when executed by a processor cause the processor to perform steps including:

receiving an input media stream;

setting a quality parameter to an initial quality parameter value, the quality parameter controlling a quality of a selected effect and an amount of hardware resources of a media processing device used to apply the selected effect;

applying the selected effect to a first portion of the input media stream according to the initial quality parameter value to generate a first portion of an output media stream;

monitoring a performance metric of the first portion of the output media stream;

comparing the performance metric of the first portion of the output media stream to a target metric;

responsive to detecting that the performance metric of the first portion of the output media stream is below the target metric, reducing the quality parameter associated with the selected effect to a reduced quality parameter value;

applying the selected effect to a second portion of the input media stream according to the reduced quality parameter value to generate a second portion of the output media stream; and

outputting the output media stream.

16. The computer device of claim 15 , wherein applying the selected effect to the second portion of the input media stream according to the reduced quality parameter value uses less computing resources than applying the selected effect to the first portion of the input media stream according to the initial quality parameter value.

17. The computer device of claim 16 , wherein reducing the quality parameter comprises:

determining the reduced quality parameter value such that metric of the second portion of the output media stream increases to at least the target metric.

18. The computer device of claim 15 , wherein applying the selected effect to the first portion of the input media comprises:

extracting a number of facial features from the first portion of the input media stream;

tracking locations of the facial features in the first portion of the input media stream; and

applying the selected effect using the locations of the facial features, wherein the quality parameter controls the number of facial features.

19. The computer device of claim 15 , wherein the instructions when executed further cause the processor to perform steps including:

monitoring respective throughputs of a plurality of effects applied to the first portion of the input media stream; and

identifying the selected effect from among the plurality of effects as having a slowest throughput of the respective throughputs.

20. The computer device of claim 15 , wherein the performance metric comprises a media frame rate or audio track latency.

Assignments (2)
CHANGE OF NAME Recorded Nov 18, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058897/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 6, 2017
From: PIQUE CORCHS, HERMES GERMI; PUGIN, KIRILL A.; RACASANU, RAZVAN GABRIEL; MILLER, COLIN TODD
To: FACEBOOK, INC.
Reel/Frame 042926/0723 →