Search

US-20260127636-A1 - OBJECT INJECTION FRAMEWORK FOR DYNAMIC AND INTERACTIVE SCREENSAVER

US20260127636A1US 20260127636 A1US20260127636 A1US 20260127636A1US-20260127636-A1

Abstract

Disclosed herein are system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for dynamically adjusting a screensaver on a display device. An example embodiment operates by a media device detecting the initiation of a screensaver and requesting replacement objects to be injected into the screensaver while the screensaver is displayed on a display device. The media device may receive the replacement objects, select which replacement objects to be injected into the screensaver, and injecting the selected replacement objects into an off-screen portion of the screensaver prior to the off-screen portion being displayed on the displayed device.

Inventors

  • Mehul Sanghavi
  • Saket Kumar
  • Mark Goodwin
  • TAMAS KOLOTI
  • Matthew MACALUSO

Assignees

  • ROKU, INC.

Dates

Publication Date
20260507
Application Date
20260105

Claims (20)

  1. 1 . A computer-implemented method for dynamically adjusting a screensaver while in a display loop on a display device, comprising: initiating, by at least one computer processor of a media device in communication with the display device, the screensaver in a display loop on the display device, wherein the screensaver comprises a plurality of layers including a background layer, a middle layer, and a foreground layer, and wherein the display loop comprises horizontally scrolling the screensaver on the display device; displaying, during a first loop of the display loop, a first portion of the screensaver on the display device; displaying, during the first loop of the display loop, a second portion of the screensaver on the display device such that the first portion of the screensaver is positioned off-screen of the display device; transmitting an object request to an object server while the second portion of the screensaver is displayed during the first loop of the display loop, and wherein the object request includes a request for a replacement object; identifying, based on metadata of the replacement object, an object type and a layer in the plurality of layers for inserting the replacement object, wherein the identified layer comprises one of the background layer, the middle layer, or the foreground layer; identifying, based on the object type, an object to be replaced in the identified layer; replacing, while the second portion of the screensaver is displayed during the first loop, the object to be replaced with the replacement object; and displaying, during a second loop of the display loop, the first portion of the screensaver with the replacement object.
  2. 2 . The computer-implemented method of claim 1 , wherein displaying the first portion of the screensaver comprises displaying the background layer at a first scrolling speed, the middle layer at a second scrolling speed, and the foreground layer at a third scrolling speed.
  3. 3 . The computer-implemented method of claim 2 , wherein the first scrolling speed, the second scrolling speed, and the third scrolling speed are different from each other.
  4. 4 . The computer-implemented method of claim 2 , wherein at least two of the first scrolling speed, the second scrolling speed, and the third scrolling speed are equal.
  5. 5 . The computer-implemented method of claim 1 , wherein the replacement object is a replacement interactive object, wherein the object to be replaced comprises an interactive component, and wherein replacing the object to be replaced further comprises: replacing the interactive component with the replacement interactive object, wherein the replacement interactive object is configured to be user-selectable; and displaying additional content associated with the replacement interactive object responsive to receiving a user selection of the replacement interactive object.
  6. 6 . The computer-implemented method of claim 1 , wherein the metadata further comprises a user personalization parameter, and wherein identifying the object to be placed further comprises: identifying, based on the object type and the user personalization parameter, the object to be replaced in the identified layer.
  7. 7 . The computer-implemented method of claim 6 , wherein the user personalization parameter comprises at least one of user browser history, user viewing history, user purchasing history, and user settings associated with the media device.
  8. 8 . A system, comprising: one or more memories; at least one processor each coupled to at least one of the memories and configured to perform operations for dynamically adjusting a screensaver on a display device, the operations comprising: initiating, by at least one computer processor of a media device in communication with the display device, the screensaver in a display loop on the display device, wherein the screensaver comprises a plurality of layers including a background layer, a middle layer, and a foreground layer, and wherein the display loop comprises horizontally scrolling the screensaver on the display device; displaying, during a first loop of the display loop, a first portion of the screensaver on the display device; displaying, during the first loop of the display loop, a second portion of the screensaver on the display device such that the first portion of the screensaver is positioned off-screen of the display device; transmitting an object request to an object server while the second portion of the screensaver is displayed during the first loop of the display loop, and wherein the object request includes a request for a replacement object; identifying, based on metadata of the replacement object, an object type and a layer in the plurality of layers for inserting the replacement object, wherein the identified layer comprises one of the background layer, the middle layer, or the foreground layer; identifying, based on the object type, an object to be replaced in the identified layer; replacing, while the second portion of the screensaver is displayed during the first loop, the object to be replaced with the replacement object; and displaying, during a second loop of the display loop, the first portion of the screensaver with the replacement object.
  9. 9 . The system of claim 8 , wherein displaying the first portion of the screensaver comprises displaying the background layer at a first scrolling speed, the middle layer at a second scrolling speed, and the foreground layer at a third scrolling speed.
  10. 10 . The system of claim 9 , wherein the first scrolling speed, the second scrolling speed, and the third scrolling speed are different from each other.
  11. 11 . The system of claim 9 , wherein at least two of the first scrolling speed, the second scrolling speed, and the third scrolling speed are equal.
  12. 12 . The system of claim 8 , wherein the replacement object is a replacement interactive object, wherein the object to be replaced comprises an interactive component, and wherein in replacing the object to be replaced, the operations further comprising: replacing the interactive component with the replacement interactive object, wherein the replacement interactive object is configured to be user-selectable; and displaying additional content associated with the replacement interactive object responsive to receiving a user selection of the replacement interactive object.
  13. 13 . The system of claim 8 , wherein the metadata further comprises a user personalization parameter, and wherein in identifying the object to be placed, the operations further comprising: identifying, based on the object type and the user personalization parameter, the object to be replaced in the identified layer.
  14. 14 . The system of claim 13 , wherein the user personalization parameter comprises at least one of user browser history, user viewing history, user purchasing history, and user settings associated with the media device.
  15. 15 . A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations for dynamically adjusting a screensaver on a display device, the operations comprising: initiating, by at least one computer processor of a media device in communication with the display device, the screensaver in a display loop on the display device, wherein the screensaver comprises a plurality of layers including a background layer, a middle layer, and a foreground layer, and wherein the display loop comprises horizontally scrolling the screensaver on the display device; displaying, during a first loop of the display loop, a first portion of the screensaver on the display device; displaying, during the first loop of the display loop, a second portion of the screensaver on the display device such that the first portion of the screensaver is positioned off-screen of the display device; transmitting an object request to an object server while the second portion of the screensaver is displayed during the first loop of the display loop, and wherein the object request includes a request for a replacement object; identifying, based on metadata of the replacement object, an object type and a layer in the plurality of layers for inserting the replacement object, wherein the identified layer comprises one of the background layer, the middle layer, or the foreground layer; identifying, based on the object type, an object to be replaced in the identified layer; replacing, while the second portion of the screensaver is displayed during the first loop, the object to be replaced with the replacement object; and displaying, during a second loop of the display loop, the first portion of the screensaver with the replacement object.
  16. 16 . The non-transitory computer-readable medium of claim 15 , wherein displaying the first portion of the screensaver comprises displaying the background layer at a first scrolling speed, the middle layer at a second scrolling speed, and the foreground layer at a third scrolling speed.
  17. 17 . The non-transitory computer-readable medium of claim 16 , wherein the first scrolling speed, the second scrolling speed, and the third scrolling speed are different from each other.
  18. 18 . The non-transitory computer-readable medium of claim 16 , wherein at least two of the first scrolling speed, the second scrolling speed, and the third scrolling speed are equal.
  19. 19 . The non-transitory computer-readable medium of claim 15 , wherein the replacement object is a replacement interactive object, wherein the object to be replaced comprises an interactive component, and wherein in replacing the object to be replaced, the operations further comprising: replacing the interactive component with the replacement interactive object, wherein the replacement interactive object is configured to be user-selectable; and displaying additional content associated with the replacement interactive object responsive to receiving a user selection of the replacement interactive object.
  20. 20 . The non-transitory computer-readable medium of claim 15 , wherein the metadata further comprises a user personalization parameter, and wherein in identifying the object to be placed, the operations further comprising: identifying, based on the object type and the user personalization parameter, the object to be replaced in the identified layer.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS This application is a continuation of U.S. patent application Ser. No. 18/216,453, filed on Jun. 29, 2023, the contents of which are incorporated herein by reference in its entirety. FIELD This disclosure is generally directed to dynamically modifying screensavers with a variety of content including personalized content and interactive content. SUMMARY Provided herein are system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for dynamically modifying screensavers as they are being displayed with personalized and updated content. In some aspects, a media device may include an object injection engine that injects new objects into an off-screen portion of a screensaver that is currently being displayed on a display device. In some aspects, displaying the screensaver may include displaying a portion of the screensaver on-screen of the display device while a remaining portion of the screensaver is off-screen of the display device. In some aspects, the screensaver includes a horizontal or vertical scrolling effect so that different portions of the screensaver are displayed sequentially in a loop. In some aspects, the display of the screensaver may be on a loop so that the portions of the screensaver may be repeated on the display over a certain interval of time. In some aspects, the media device may initiate the screensaver for display on the display device. The screensaver may be divided into a plurality of panels (or portions) including a first panel and a second panel. The media device may transmit an object request to an object server while the first panel of the screensaver is currently displayed on the display device. The second panel may be off-screen and not currently displayed on the display device. The object request may include a request for a replacement object to replace a current object of the second panel of the screensaver. The media device may then receive the replacement object from the object server and replace the current object of the screensaver with the replacement object to form a modified second panel of the screensaver that now includes the replacement object instead of the current object. Replacement of the current object may be performed prior to displaying the second panel on the display device (i.e., in an off-screen portion of the screensaver). The media device may then continue the display loop of the screensaver by scrolling the screensaver such that the first panel is not displayed on a display device and the modified second panel of the screensaver is displayed on the display device. In some aspects, various objects of a screensaver may be dynamically updated while the screensaver is displayed as part of a display loop. The display loop allows for on-screen and off-screen portions of the screensaver and the object injection framework of the present disclosure utilizes the off-screen portions to seamlessly inject new objects into the screensaver. Objects may be personalized based on user interest and information and may be provided by object providers (e.g., advertisers) as part of a campaign for reaching out to customers. Accordingly, a screensaver may be dynamically updated and personalized to a user's taste and based on requirements from object providers. BRIEF DESCRIPTION OF THE FIGURES The accompanying drawings are incorporated herein and form a part of the specification. FIG. 1 illustrates a block diagram of a multimedia environment, according to some aspects. FIG. 2 illustrates a block diagram of a streaming media device, according to some aspects. FIGS. 3A-3D illustrate exemplary display sequences of a screensaver by a media device, according to some aspects. FIGS. 4A-4C illustrate exemplary replacement objects of a screensaver, according to some aspects. FIGS. 5A-5F illustrate exemplary injection of replacement objects in a screensaver, according to some aspects. FIGS. 6A-6E illustrate exemplary injection of replacement objects in a foreground of a screensaver, according to some aspects. FIGS. 7A-7B illustrate exemplary interactive screensaver objects, according to some aspects. FIG. 8 illustrates a flow diagram 800 of communication within a media system implementing an object injection framework for a screensaver, according to some aspects. FIG. 9 illustrates an exemplary display loop for displaying and modifying a screensaver, according to some aspects. FIG. 10 illustrates a flowchart for displaying and modifying a screensaver, according to some aspects. FIG. 11 illustrates an example computer system useful for implementing various aspects. In the drawings, like reference numbers generally indicate identical or similar elements. Additionally, generally, the left-most digit(s) of a reference number identifies the drawing in which the reference number first appears. DETAILED DESCRIPTION Streaming media devices, such as those on over-the-top (