Preloading Animation Files in a Memory of a Client Device
Abstract
A digital magazine presents content items to a user including one or more animation files. An animation file includes a plurality of frames that each has a variable display duration. To improve presentation of an animation file, a number of frames of the animation file that are preloaded into a memory of the client device on which the animation file is presented is determined based on contextual features describing computing resources available to the client device and on the display duration of frames of the animation file subsequent to a currently displayed frame of the animation file. Additionally, an animation file may be selected for preloading and display from a plurality of animation files based on a ranking the animation files.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
accessing a plurality of animation files, each animation file associated with one or more attributes including a corresponding visual prominence that describes how visually prominent the animation file is when displayed in a display device of a client device, each attribute of the animation file affecting computing resources expended to preload and to display the animation file, and comprising a plurality of frames, each frame having a variable display duration; determining a ranking of the plurality of animation files based on the corresponding one or more attributes of each animation file; obtaining one or more contextual features about the client device, the contextual features describing computing resources available to the client device for displaying frames of one or more animation files; selecting a set of animation files of the plurality of animation files that each have attributes that do not exceed the computing resources available to the client device for displaying frames of one or more animation files; selecting an animation file of the set of animation files having at least a threshold position in the ranking of the plurality of animation files; displaying the selected animation file in a portion of the display device of the client device according to the corresponding visual prominence of the selected animation file; determining that the computing resources available to the client device for displaying animation files exceed computing resources needed for displaying the selected animation file; responsive to the determination, selecting an additional animation file from the set of animation files having at least the threshold position in the ranking of the plurality of animation files; and displaying the additional animation file in another portion of the display device.
2 . The method of claim 1 , further comprising:
determining a number of frames of the selected animation file to preload into a memory of the client device based on the one or more contextual features of the client device and a display duration of one or more frames of the selected animation file.
3 . The method of claim 1 , further comprising:
obtaining one or more updated contextual features about the display device as the selected animation file and the additional animation file are displayed; and determining a number of frames of the selected animation file subsequent to a currently displayed frame of the selected animation file to preload into a memory of the client device based at least in part on the one or more updated contextual features of the client device and a display duration of one or more frames of the selected animation file subsequent to the currently displayed frame of the selected animation file.
4 . The method of claim 3 , further comprising:
obtaining one or more further updated contextual features about the display device as the selected animation file and the additional animation file are displayed; and modifying the determined number of frames of the selected animation file to preload into the memory of the client device based at least in part on the one or more further updated contextual features of the client device.
5 . The method of claim 3 , further comprising:
determining a number of frames of the additional animation file subsequent to a currently displayed frame of the additional animation file to preload into the memory of the client device based at least in part on the one or more updated contextual features of the client device and a display duration of one or more frames subsequent to a currently displayed frame of the additional animation file.
6 . The method of claim 1 , wherein obtaining one or more contextual features about the client device comprises:
obtaining one or more selected from a group consisting of: an indication of memory resources available to the client device, an indication of processing resources available to the client device, an indication of one or more characteristics of the display device, and any combination thereof.
7 . The method of claim 6 , wherein the indication of one or more characteristics of the display device comprises at least one selected from a group consisting of: a display area of the display device, a display resolution of the display device, a size of pixels in the display area of the display device, a capability of the display device to render the animation file, and any combination thereof.
8 . A non-transitory computer readable medium storing executable computer program instructions, the computer program instructions comprising instructions that when executed cause a computer processor to:
access a plurality of animation files, each animation file associated with one or more attributes including a corresponding visual prominence that describes how visually prominent the animation file is when displayed in a display device of a client device, each attribute of the animation file affecting computing resources expended to preload and to display the animation file, and comprising a plurality of frames, each frame having a variable display duration; determine a ranking of the plurality of animation files based on the corresponding one or more attributes of each animation file; obtain one or more contextual features about the client device, the contextual features describing computing resources available to the client device for displaying frames of one or more animation files; select a set of animation files of the plurality of animation files that each have attributes that do not exceed the computing resources available to the client device for displaying frames of one or more animation files; select an animation file of the set of animation files having at least a threshold position in the ranking of the plurality of animation files; display the selected animation file in a portion of the display device of the client device according to the corresponding visual prominence of the selected animation file; determine that the computing resources available to the client device for displaying animation files exceed computing resources needed for displaying the selected animation file; responsive to the determination, select an additional animation file from the set of animation files having at least the threshold position in the ranking of the plurality of animation files; and display the additional animation file in another portion of the display device.
9 . The computer readable medium of claim 8 , wherein the computer program instructions further comprise instructions that when executed cause the computer processor to:
determine a number of frames of the selected animation file to preload into a memory of the client device based on the one or more contextual features of the client device and a display duration of one or more frames of the selected animation file.
10 . The computer readable medium of claim 8 , wherein the computer program instructions further comprise instructions that when executed cause the computer processor to:
obtain one or more updated contextual features about the display device as the selected animation file and the additional animation file are displayed; and determine a number of frames of the selected animation file subsequent to a currently displayed frame of the selected animation file to preload into a memory of the client device based at least in part on the one or more updated contextual features of the client device and a display duration of one or more frames of the selected animation file subsequent to the currently displayed frame of the selected animation file.
11 . The computer readable medium of claim 10 , wherein the computer program instructions further comprise instructions that when executed cause the computer processor to:
obtain one or more further updated contextual features about the display device as the selected animation file and the additional animation file are displayed; and modify the determined number of frames of the selected animation file to preload into the memory of the client device based at least in part on the one or more further updated contextual features of the client device.
12 . The computer readable medium of claim 10 , wherein the computer program instructions further comprising instructions that when executed cause the computer processor to:
determine a number of frames of the additional animation file subsequent to a currently displayed frame of the additional animation file to preload into the memory of the client device based at least in part on the one or more updated contextual features of the client device and a display duration of one or more frames subsequent to a currently displayed frame of the additional animation file.
13 . The computer readable medium of claim 8 , wherein the instructions for obtaining one or more contextual features about the client device comprise instructions that when executed cause the computer processor to:
obtain at least one selected from a group consisting of: an indication of memory resources available to the client device, an indication of processing resources available to the client device, an indication of one or more characteristics of the display device, and any combination thereof.
14 . The computer readable medium of claim 13 , wherein the indication of one or more characteristics of the display device comprises at least one selected from a group consisting of: a display area of the display device, a display resolution of the display device, a size of pixels in the display area of the display device, a capability of the display device to render the animation file, and any combination thereof.
15 . A computer system comprising:
a processor; a non-transitory computer-readable storage medium coupled to the processor and storing executable computer program instructions that, when executed by the processor, cause the processor to:
access a plurality of animation files, each animation file associated with one or more attributes including a corresponding visual prominence that describes how visually prominent the animation file is when displayed in the display device of a client device, each attribute of the animation file affecting computing resources expended to preload and to display the animation file, and comprising a plurality of frames, each frame having a variable display duration;
determine a ranking of the plurality of animation files based on the corresponding one or more attributes of each animation file;
obtain one or more contextual features about the client device, the contextual features describing computing resources available to the client device for displaying frames of one or more animation files;
select a set of animation files of the plurality of animation files that each have attributes that do not exceed the computing resources available to the client device for displaying frames of one or more animation files;
select an animation file of the set of animation files having at least a threshold position in the ranking of the plurality of animation files;
display the selected animation file in a portion of the display device of the client device according to the corresponding visual prominence of the selected animation file;
determine that the computing resources available to the client device for displaying animation files exceed computing resources needed for displaying the selected animation file;
responsive to the determination, select an additional animation file from the set of animation files having at least the threshold position in the ranking of the plurality of animation files; and
display the additional animation file in another portion of the display device.
16 . The computer system of claim 15 , wherein the non-transitory computer-readable storage medium coupled to the processor further includes executable computer program instructions that, when executed by the processor, cause the processor to:
determine a number of frames of the selected animation file to preload into a memory of the client device based on the one or more contextual features of the client device and a display duration of one or more frames of the selected animation file.
17 . The computer system of claim 15 , wherein the non-transitory computer-readable storage medium coupled to the processor further includes executable computer program instructions that, when executed by the processor, cause the processor to:
obtain one or more updated contextual features about the display device as the selected animation file and the additional animation file are displayed; and determine a number of frames of the selected animation file subsequent to a currently displayed frame of the selected animation file to preload into a memory of the client device based at least in part on the one or more updated contextual features of the client device and a display duration of one or more frames of the selected animation file subsequent to the currently displayed frame of the selected animation file.
18 . The computer system of claim 17 , wherein the non-transitory computer-readable storage medium coupled to the processor further includes executable computer program instructions that, when executed by the processor, cause the processor to:
obtain one or more further updated contextual features about the display device as the selected animation file and the additional animation file are displayed; and modify the determined number of frames of the selected animation file to preload into the memory of the client device based at least in part on the one or more further updated contextual features of the client device.
19 . The computer system of claim 17 , wherein the non-transitory computer-readable storage medium coupled to the processor further includes executable computer program instructions that, when executed by the processor, cause the processor to:
determine a number of frames of the additional animation file subsequent to a currently displayed frame of the additional animation file to preload into the memory of the client device based at least in part on the one or more updated contextual features of the client device and a display duration of one or more frames subsequent to a currently displayed frame of the additional animation file.
20 . The computer system of claim 15 , wherein obtain one or more contextual features about the client device comprises:
obtain at least one selected from a group consisting of: an indication of memory resources available to the client device, an indication of processing resources available to the client device, an indication of one or more characteristics of the display device, and any combination thereof.Join the waitlist — get patent alerts
Track US2019266698A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.