IP Library › Granted Patent US 12,300,274
Granted Patent B2
US 12,300,274 · App. 18/449,801 · Granted May 13, 2025

Content system with user-input based video content generation feature

Inventors: Katie Lauren Lucas (Cambridge, GB); Sunil Ramesh (Cupertino, CA); Michael Cutter (Golden, CO); Charles Brian Pinkerton (Boulder, CO); Karina Levitian (Austin, TX)
Assignee: Roku, Inc.
G11B27/031H04N21/4532H04N21/4667H04N21/4755H04N21/8456
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,300,274
App. No.
18/449,801
Granted
May 13, 2025
Kind
B2
Abstract

In one aspect, an example method includes (i) obtaining a first segment of video content; (ii) outputting for presentation, the obtained first segment; (iii) after outputting for presentation the obtained first segment, causing a user to be prompted for user-input data; (iv) receiving user-input data provided in response to the prompting; (v) using at least the received user-input data to synthetically generate a second segment of the video content, wherein the generated second segment is static, non-interactive content; and (vi) outputting for presentation, the generated second segment.

Claims (52)

1. A method for use in connection with a content-presentation device, the method comprising:

obtaining a first segment of video content;

outputting for presentation, via the content-presentation device, the obtained first segment;

after outputting for presentation the obtained first segment, causing a user to be prompted for user-input data;

receiving user-input data, wherein the user-input data is received in response to the prompting;

using at least the received user-input data to synthetically generate a second segment of the video content, wherein the generated second segment is static, non-interactive content; and

outputting for presentation, via the content-presentation device, the generated second segment, after outputting for presentation, the second segment, outputting for presentation a video content editing interface that facilitates (i) outputting for presentation historical data indicating (a) a history of user input-data received in connection with the video content and (b) a history of segments synthetically generated in connection with the video content (ii) editing at least a portion of the received user input-data, and (ii) based on the edited user input-data, re-generating one or more corresponding segments of the video content.

2. The method of claim 1 , wherein the first segment is a live-action video recording.

3. The method of claim 1 , further comprising:

detecting metadata associated with the first segment, wherein the metadata specifies a set of user-selectable options, wherein causing the user to be prompted for input-data comprises causing presentation of the set of user-selectable options, and wherein receiving the user input-data provided in response to the prompting comprises receiving a selection from the presented set of user-selectable options.

4. The method of claim 1 , further comprising:

detecting an occurrence of a real-time event occurring proximate a time point at which the first segment is output for presentation, and

wherein causing the user to be prompted for input-data comprises causing presentation of a set of user-selectable options based on the real-time event, and wherein receiving the user-input data provided in response to the prompting comprises receiving a selection from the presented set of user-selectable options.

5. The method of claim 1 , further comprising:

crowdsourcing user input-data provided in response to prompting associated with multiple other instances of the first segment being presented to other users;

wherein causing the user to be prompted for input-data comprises causing presentation of a set of user-selectable options based on the crowdsourced user-input data, and wherein receiving the user-input data provided in response to the prompting comprises receiving a selection from the presented set of user-selectable options.

6. The method of claim 1 , further comprising:

in connection with causing the user to be prompted for user-input data, causing presentation of historical data indicating (i) a history user input-data received in connection with the video content and (ii) a history of segments synthetically generated in connection with the video content.

7. The method of claim 1 , wherein using at least the received user-input data to synthetically generate the second segment comprises:

providing at least the received user-input data to a trained model, wherein the trained model is configured to use at least user-input data as runtime input-data to generate video data representing a segment of video content as runtime output-data; and

responsive to providing the user-input data to the trained model, receiving from the trained model, corresponding video data representing a generated segment of video content.

8. The method of claim 7 , wherein the model was trained by providing to the model as training data, multiple training input-data sets, and for each of the training input-data sets, a respective training output-data set;

wherein each of the training input-data sets includes respective (i) user-input data and (ii) video data and/or associated metadata; and

wherein each of the training output-data sets includes a respective segment of video content.

9. The method of claim 1 , further comprising:

receiving user-profile data for the user, wherein using at least the received user-input data to synthetically generate the second segment comprises using at least the received user-input data and the received user-profile data to synthetically generate the second segment.

10. The method of claim 1 , wherein using at least the received user-input data and the received user-profile data to synthetically generate the second segment comprises:

providing the received user input data and the received user-profile data to a trained model, wherein the trained model is configured to use at least user-input data and user-profile data as runtime input-data to generate video data representing a segment of video content as runtime output-data; and

responsive to providing the user input-data and the user profile-data to the trained model, receiving from the trained model, corresponding video data representing a generated segment of video content.

11. The method of claim 1 , wherein the video content editing interface further facilitates determining and outputting for presentation a program score for the video content.

12. The method of claim 11 , wherein the video content editing interface further facilitates (i) identifying a first portion of the received user input-data that, as compared to a remaining portion of the received user input-data, more greatly influenced characteristics of synthetically-generated segments of the video content, and (ii) outputting for presentation an indication of the identified first portion of the received user input-data.

13. The method of claim 1 , wherein (i) the obtaining the first segment of video content, (ii) the outputting for presentation, via the via the content-presentation device, the obtained first segment, (iii) the causing the user to be prompted for user-input data, (iv) the receiving user-input data provided in response to the prompting, (v) the using at least the received user-input data to synthetically generate the second segment, and (vi) the outputting for presentation, via the content-presentation device, the generated second segment, are all performed by a computing system that (i) is connected to the content-presentation device, and (ii) facilitates the content-presentation device presenting the video content.

14. The method of claim 13 , wherein the content-presentation device is a television.

15. The method of claim 1 , wherein (i) the obtaining the first segment of video content, (ii) the outputting for presentation, via the content-presentation device, the obtained first segment, (iii) the causing the user to be prompted for user-input data, (iv) the receiving user-input data provided in response to the prompting, (v) the using at least the received user-input data to synthetically generate the second segment, and (vi) the outputting for presentation, via the content-presentation device, the generated second segment, are all performed by the content-presentation device.

16. The method of claim 15 , wherein the content-presentation device is a television.

17. A non-transitory computer-readable medium having stored thereon program instructions that upon execution by a computing system, cause performance of a set of acts for use in connection with a content-presentation device, the set of acts comprising:

obtaining a first segment of video content;

outputting for presentation, via the content-presentation device, the obtained first segment;

after outputting for presentation the obtained first segment, causing a user to be prompted for user-input data;

receiving user-input data provided in response to the prompting;

using at least the received user-input data to synthetically generate a second segment of the video content, wherein the generated second segment is static, non-interactive content; and

outputting for presentation, via the content-presentation device, the generated second segment, after outputting for presentation the second segment, outputting for presentation a video content editing interface that facilitates (i) outputting for presentation historical data indicating (a) a history of user input-data received in connection with the video content and (b) a history of segments synthetically generated in connection with the video content (ii) editing at least a portion of the received user input-data, and (iii) based on the edited user input-data, re-generating one or more corresponding segments of the video content.

18. The non-transitory computer-readable medium of claim 17 , wherein using at least the received user-input data to synthetically generate the second segment comprises:

providing at least the received user-input data to a trained model, wherein the trained model is configured to use at least user-input data as runtime input-data to generate video data representing a segment of video content as runtime output-data; and

responsive to providing the user-input data to the trained model, receiving from the trained model, corresponding video data representing a generated segment of video content.

19. A computing system configured for performing a set of acts for use in connection with a content-presentation device, the set of acts comprising:

obtaining a first segment of video content;

outputting for presentation, via the content-presentation device, the obtained first segment;

after outputting for presentation the obtained first segment, causing a user to be prompted for user-input data;

receiving user-input data provided in response to the prompting;

using at least the received user-input data to synthetically generate a second segment of the video content, wherein the generated second segment is static, non-interactive content; and

outputting for presentation, via the content-presentation device, the generated second segment, after outputting for presentation, the second segment, outputting for presentation a video content editing interface that facilitates (i) outputting for presentation historical data indicating (a) a history of user input-data received in connection with the video content and (b) a history of segments synthetically generated in connection with the video content, (ii) editing at least a portion of the received user input-data, and (iii) based on the edited user input-data, re-generating one or more corresponding segments of the video content.

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 15, 2023
From: LUCAS, KATIE LAUREN; RAMESH, SUNIL; CUTTER, MICHAEL; PINKERTON, CHARLES BRIAN; LEVITIAN, KARINA
To: ROKU, INC.
Reel/Frame 064589/0852 →
Continuity (2)
Continuation 18149492 · Jan 3, 2023
Related Publication 20240221789A1 · Jul 4, 2024
References Cited (13)
US 20140101118A1 · Dhanapal · 2014 [cited by examiner]
US 20150365725A1 · Belyaev · 2015 [cited by examiner]
US 20160014482A1 · Chen · 2016 [cited by examiner]
US 20170110151A1 · Matias · 2017 [cited by applicant]
US 20170366860A1 · Goela · 2017 [cited by examiner]
US 20190208264A1 · Delaney · 2019 [cited by examiner]
US 20190392866A1 · Yoon · 2019 [cited by examiner]
US 20200213680A1 · Ingel · 2020 [cited by applicant]
US 20210185378A1 · Rajendran · 2021 [cited by applicant]
US 20210314675A1 · Wang · 2021 [cited by applicant]
US 20210409640A1 · Jiang · 2021 [cited by applicant]
US 20220007082A1 · Okuda · 2022 [cited by examiner]
US 20220028425A1 · Kalish · 2022 [cited by applicant]