IP Library Granted Patent US 12,732,647
Granted Patent B2
US 12,732,647 · App. 18/922,299 · Granted Sep 8, 2026

Rendering for electronic devices

Inventors: Yuhui Li (Cupertino, CA); Chendi Zhang (Belmont, CA); Andrey Pokrovskiy (Mountain View, CA); Wanqing Xin (Santa Clara, CA)
Assignee: Apple Inc.
H04N21/23418H04N21/2408H04N21/472
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 12,732,647
App. No.
18/922,299
Granted
Sep 8, 2026
Kind
B2
Abstract

Aspects of the subject technology relate to providing frame rate arbitration for electronic devices. Frame rate arbitration can include determining a global frame rate based on frame rate parameters from one or more animation sources, and providing the global frame rate to the animation sources. The frame rate parameters for various animations sources can have differing preferred, minimum, and/or maximum frame rates, and the global frame rate may be determined for concurrent display of multiple animations from the multiple animation sources. In one or more implementations, frame rate arbitration can also be performed based on frame rate parameters from an input source.

Claims (42)

1 . A method comprising:

providing, from a first animation source and to a system process, first frame rate parameters corresponding to a first animated content generated by the first animation source, the first frame rate parameters including at least one frame rate parameter different from a first global frame rate previously received by the first animation source;

receiving, from the system process, a second global frame rate based on the first frame rate parameters and second frame rate parameters corresponding to a second animated content provided by a second animation source, wherein the second global frame rate is different from the first global frame rate; and

switching a first frame rate for the first animation content to a second frame rate compatible with the second global frame rate at a scheduled transition timing.

2 . The method of claim 1 , further comprising:

receiving, with the second global frame rate, a time stamp indicating the scheduled transition timing when the switching is to occur.

3 . The method of claim 1 , wherein the scheduled transition timing of switching corresponds to a VSYNC signal.

4 . The method of claim 1 , wherein, after receiving the second global frame rate and prior to switching the first frame rate for the first animation content, the second animation source provides updated second frame rate parameters to the system process, the method further comprising:

receiving a third global frame rate different from the second global frame rate, the third global frame rate based on the first frame rate parameters and the updated second frame rate parameters, the third global frame rate replacing the second global frame rate.

5 . The method of claim 1 , wherein the first frame rate parameters include two or more of a minimum frame rate, a maximum frame rate, or a preferred frame rate.

6 . The method of claim 1 , further comprising:

after switching the first frame rate for the first animation content, providing the first animated content at an even-quanta of the second global frame rate to a rendering service.

7 . The method of claim 1 , wherein the first frame rate parameters include a minimum frame rate and a maximum frame rate, wherein the second frame rate comprises a frame rate which is interposed between the minimum frame rate and the maximum frame rate, and which is closest to the second global frame rate.

8 . The method of claim 1 , wherein the first animated content corresponds to a scrolling animation, and wherein the first animation source is configured to determine the first frame rate parameters by:

receiving a user scrolling input; and

applying the user scrolling input to a model to obtain the first frame rate parameters.

9 . An electronic device comprising:

a memory; and

one or more processors configured to:

provide, from a first animation source and to a system process, first frame rate parameters corresponding to a first animated content generated by the first animation source, the first frame rate parameters including at least one frame rate parameter different from a first global frame rate previously received by the first animation source;

receive, from the system process, a second global frame rate based on the first frame rate parameters and second frame rate parameters corresponding to a second animated content provided by a second animation source, wherein the second global frame rate is different from the first global frame rate; and

switch a first frame rate for the first animation content to a second frame rate compatible with the second global frame rate at a scheduled transition timing.

10 . The electronic device of claim 9 , wherein the one or more processors are further configured to:

receive, with the second global frame rate, a time stamp indicating the scheduled transition timing when the switching is to occur.

11 . The electronic device of claim 9 , wherein the scheduled transition timing of switching corresponds to a VSYNC signal.

12 . The electronic device of claim 9 , wherein, after receiving the second global frame rate and prior to switching the first frame rate for the first animation content, the second animation source provides updated second frame rate parameters to the system process, and wherein the one or more processors are further configured to:

receive a third global frame rate different from the second global frame rate, the third global frame rate based on the first frame rate parameters and the updated second frame rate parameters, the third global frame rate replacing the second global frame rate.

13 . The electronic device of claim 9 , wherein the first frame rate parameters include two or more of a minimum frame rate, a maximum frame rate, or a preferred frame rate.

14 . The electronic device of claim 9 , further comprising:

after switching the first frame rate for the first animation content to the second frame rate, providing the first animated content at an even-quanta of the second global frame rate to a rendering service.

15 . The electronic device of claim 9 , wherein the first frame rate parameters include a minimum frame rate and a maximum frame rate, wherein the second frame rate comprises a frame rate which is interposed between the minimum frame rate and the maximum frame rate, and which is closest to the second global frame rate.

16 . The electronic device of claim 9 , wherein the first animated content corresponds to a scrolling animation, and wherein the one or more processors are further configured to determine the first frame rate parameters by:

receiving a user scrolling input; and

applying the user scrolling input to a model to obtain the first frame rate parameters.

17 . The method of claim 1 , wherein the switching is performed in response to control signals from the system process that include timing information indicating when the scheduled transition timing is to occur.

18 . The method of claim 17 , wherein the control signals further include learned information based on prior animation behavior or input-derived frame-rate parameters.

19 . A non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations including:

providing, from a first animation source and to a system process, first frame rate parameters corresponding to a first animated content generated by the first animation source, the first frame rate parameters including at least one frame rate parameter different from a first global frame rate previously received by the first animation source;

receiving, from the system process, a second global frame rate based on the first frame rate parameters and second frame rate parameters corresponding to a second animated content provided by a second animation source, wherein the second global frame rate is different from the first global frame rate; and

switching a first frame rate for the first animation content to a second frame rate compatible with the second global frame rate at a scheduled transition timing.

20 . The non-transitory machine-readable medium of claim 19 , the operations further including:

after switching the first frame rate for the first animation content to the second frame rate, providing the first animated content at an even-quanta of the second global frame rate to a rendering service, wherein the scheduled transition timing of switching corresponds to a VSYNC signal or a time stamp provided by the system process.

Continuity (3)
Continuation 17899543 · Aug 30, 2022
Provisional Application 63243693 · Sep 13, 2021
Related Publication 20250047909A1 · Feb 6, 2025
References Cited (39)
US 8854381B2 · Mantor · 2014 [cited by examiner]
US 9019428B2 · Shukla et al. · 2015 [cited by applicant]
US 9589540B2 · Wu · 2017 [cited by examiner]
US 10325573B2 · Wood · 2019 [cited by examiner]
US 11068088B2 · Tripathi et al. · 2021 [cited by applicant]
US 11568588B2 · Spence · 2023 [cited by applicant]
US 20080303828A1 · Marchant et al. · 2008 [cited by applicant]
US 20110096077A1 · Jarrett · 2011 [cited by applicant]
US 20120044251A1 · Mark et al. · 2012 [cited by applicant]
US 20140082518A1 · Bhogal et al. · 2014 [cited by applicant]
US 20140267360A1 · Finkel · 2014 [cited by applicant]
US 20160335743A1 · Kostantinov · 2016 [cited by applicant]
US 20170352322A1 · Spence et al. · 2017 [cited by applicant]
US 20180261190A1 · Yi et al. · 2018 [cited by applicant]
US 20180261191A1 · Yi et al. · 2018 [cited by applicant]
US 20190180705A1 · Choudha et al. · 2019 [cited by applicant]
US 20200007914A1 · Peng et al. · 2020 [cited by applicant]
CN 201491423U · 2010 [cited by applicant]
CN 102831630A · 2012 [cited by applicant]
CN 102914941A · 2013 [cited by applicant]
CN 104220389A · 2014 [cited by applicant]
CN 106657681A · 2017 [cited by applicant]
CN 107680549A · 2018 [cited by applicant]
KR 1020160019896 · 2016 [cited by applicant]
KR 1020200091962 · 2020 [cited by applicant]
KR 1020210101627 · 2021 [cited by applicant]
WO WO2015166319A1 · 2015 [cited by applicant]
Smith, “New iPhone 8 schematics leak offers several exciting revelations,” Apr. 2017, retrieved from https://bgr.com//2017/01/24/iphone-8-rumors.schematics-leaks/, 4 pages. [cited by applicant]
Chinese Office Action from Chinese Patent Application No. 202111548412.5, dated Dec. 20, 2023, 40 pages including English language translation. [cited by applicant]
Extended European Search Report from European Patent Application No. 22195401.9, dated May 23, 2023, 22 pages. [cited by applicant]
Partial European Search Report from European Patent Application No. 22195401.9, dated Jan. 30, 2023, 18 pages. [cited by applicant]
Korean Written Decision on Registration from Korean Patent Application No. 2022-0113488, dated Feb. 21, 2024, 8 pages including machine-generated English language translation. [cited by applicant]
Korean Office Action from Korean Patent Application No. 10-2022-0113488, dated Jun. 22, 2023, 19 pages including English language translation. [cited by applicant]
European Office Action from European Patent Application No. 22195401.9, dated Oct. 28, 2024, 12 pages. [cited by applicant]
European Patent Application No. 22195401.9; European Office Action dated Mar. 5, 2026, 12 pages. [cited by applicant]
Chinese Patent Application 202211103371.3; First Office Action dated Jan. 22, 2026, 15 pages with machine translation. [cited by applicant]
Chinese Patent Application 202211103371.3; Search Report dated Jan. 22, 2026, 4 pages with English Translation. [cited by applicant]
Chinese Patent Application 2022111033713; Search Report dated Jun. 29, 2026, 7 pages with machine translation. [cited by applicant]
Chinese Patent Application 2022111033713; Notification to Grant Patent dated Jun. 29, 2026, 4 pages with machine translation. [cited by applicant]