IP Library › Granted Patent US 11,838,604
Granted Patent B2
US 11,838,604 · App. 17/730,454 · Granted Dec 5, 2023

Generating crowdsourced trailers based on forward or rewind commands

Inventors: Christopher James Tegethoff (Portland, OR); Abhijit Pol (Los Gatos, CA); Anthony Wood (Palo Alto, CA)
Assignee: Roku, Inc.
H04N21/8549G06F3/0482H04N21/4312H04N21/44H04N21/44204H04N21/44222H04N21/4667H04N21/472H04N21/4662
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,838,604
App. No.
17/730,454
Filed
Apr 27, 2022
Granted
Dec 5, 2023
Kind
B2
Art Unit
2481
USPC
725/38
Abstract

Disclosed herein are system, method, and computer program product embodiments for automatically and programmatically generating crowdsource trailers. In an embodiment, interactions with streaming content performed by a plurality users who consumed the content are received. A value is assigned to each of the interactions. A plurality of windows of content are identified within the streaming content. The values of the interactions for each of the landing frames within each of the plurality of windows are accumulated. A particular one of the plurality of windows with a highest accumulated value is selected. A trailer for the content is generated based on the selected particular window and provided.

Claims (61)

1. A method comprising:

receiving interactions with streaming content performed by a plurality of users who consumed the streaming content, wherein the interactions are associated with a landing frame of the streaming content;

assigning a value to each of the interactions, wherein the assigned value corresponds to a number of times either a fast forward or rewind command is received, wherein a greater number of times corresponds to a higher assigned value, wherein a first interaction of the interactions comprises at least one fast forward interaction and at least one rewind interaction prior to a play command combined into the first interaction;

identifying a plurality of windows of content within the streaming content, wherein each window comprises a plurality of frames, including the landing frame;

accumulating the assigned values of the interactions for the landing frame within each of the plurality of windows;

selecting a particular window of the plurality of windows with a highest accumulated value for the landing frame of the particular window;

generating a trailer for the streaming content based on the selected particular window;

providing the streaming content and the trailer;

determining that the assigned value has changed for one or more of the interactions; and

updating the trailer based on the assigned value for each of the interactions, including the changed assigned value for the one or more interactions.

2. The method of claim 1 , further comprising:

storing the interactions and assigned values in a marker database.

3. The method of claim 2 , further comprising:

ordering the interactions based on which landing frames of the streaming content are associated with the interactions.

4. The method of claim 1 , wherein the streaming content comprises music.

5. The method of claim 1 , wherein the receiving comprises:

identifying at least one of the interactions that is associated with a single one of the landing frames and no other frames of the streaming content; and

excluding the identified at least one interaction from the accumulating.

6. The method of claim 1 , wherein the accumulating comprises averaging the values.

7. The method of claim 1 , wherein the generating comprises:

determining a number of frames of the trailer; and

arranging the landing frame associated with a selected interaction in a middle of the determined number of frames of the trailer, wherein a number of frames prior to the landing frame is equal to a number of frames following the landing frame in the trailer.

8. The method of claim 1 , wherein at least one of the landing frames is used in at least two of the plurality of windows, and wherein at least one of the plurality of windows includes two or more landing frames.

9. The method of claim 1 , wherein the particular interaction comprises one of a fast-forward or rewind interaction that occurred prior to a post-interaction play time.

10. The method of claim 1 , wherein the updated trailer is different from the trailer generated before the updating.

11. The method of claim 1 , wherein the first interaction is assigned a higher point value than an interaction comprising either a single fast forward interaction or a single rewind interaction prior to a play command.

12. A system comprising:

at least one processor configured to perform operations comprising:

receiving interactions with streaming content performed by a plurality of users who consumed the streaming content, wherein the interactions are associated with a landing frame of the streaming content;

assigning a value to each of the interactions, wherein the assigned value corresponds to a number of times either a fast forward or rewind command is received, wherein a greater number of times corresponds to a higher assigned value, wherein a first interaction of the interactions comprises at least one fast forward interaction and at least one rewind interaction prior to a play command combined into the first interaction;

identifying a plurality of windows of content within the streaming content, wherein each window comprises a plurality of frames, including the landing frame;

accumulating the assigned values of the interactions for the landing frame within each of the plurality of windows;

selecting a particular window of the plurality of windows with the highest accumulated value for the landing frame of the particular window;

generating a trailer for the streaming content based on the selected particular window;

determining that the assigned value has changed for one or more of the interactions; and

updating the trailer based on the assigned value for each of the interactions, including the changed assigned value for the one or more interactions.

13. The system of claim 12 , the operations further comprising:

storing the interactions and assigned values in a marker database.

14. The system of claim 13 , the operations further comprising:

ordering the interactions based on which landing frames of the streaming content are associated with the interactions.

15. The system of claim 13 , wherein the streaming content comprises music.

16. The system of claim 13 , wherein the receiving comprises:

identifying at least one of the interactions that is associated with a single one of the landing frames and no other frames of the streaming content; and

excluding the identified at least one interaction from the accumulating.

17. The system of claim 13 , wherein the accumulating comprises averaging the values.

18. The system of claim 13 , wherein the generating comprises:

determining a number of frames of the trailer; and

arranging the landing frame associated with a selected interaction in a middle of the determined number of frames of the trailer, wherein a number of frames prior to the landing frame is equal to a number of frames following the landing frame in the trailer.

19. 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 comprising:

receiving interactions with streaming content, performed by a plurality of users who consumed the streaming content, received from remote controls communicatively coupled to streaming players that are configured to provide the streaming content, wherein each interaction corresponds to one of a button press or voice command issued via one of the remote controls, and wherein the interactions are associated with a landing frame of the streaming content;

assigning a value to each of the interactions, wherein the assigned value corresponds to a number of times either a fast forward or rewind command is received, wherein a greater number of times corresponds to a higher assigned value, wherein a first interaction of the interactions comprises at least one fast forward interaction and at least one rewind interaction prior to a play command combined into the first interaction;

identifying a plurality of windows of content within the streaming content, wherein each window comprises a plurality of frames, including the landing frame;

accumulating the assigned values of the interactions for the landing frame within each of the plurality of windows;

selecting a particular window of the plurality of windows with a highest accumulated value for the landing frame of the particular window;

generating a trailer for the streaming content based on the selected particular window;

providing the streaming content and the trailer;

determining that the assigned value has changed for one or more of the interactions; and

updating the trailer based on the assigned value for each of the interactions, including the changed assigned value for the one or more interactions.

20. The non-transitory computer-readable medium of claim 19 , wherein the receiving comprises:

identifying at least one of the interactions that is associated with a single one of the landing frames and no other frames of the streaming content; and

excluding the at least one identified interaction from the accumulating.

Assignments (2)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2023
From: TEGETHOFF, CHRISTOPHER JAMES; POL, ABHIJIT; WOOD, ANTHONY
To: ROKU, INC.
Reel/Frame 064749/0214 →
Continuity (5)
Continuation 17189558 · Mar 2, 2021
Continuation 16459730 · Jul 2, 2019
Continuation 15940386 · Mar 29, 2018
Continuation In Part 15806384 · Nov 8, 2017
Related Publication 20220256254A1 · Aug 11, 2022