IP Library › Granted Patent US 11,659,244
Granted Patent B2
US 11,659,244 · App. 17/805,216 · Granted May 23, 2023

Methods and systems for generating and providing program guides and content

Inventors: Nicholas A. Grouf (Beverly Hills, CA); Ilya Pozin (Los Angeles, CA); Thomas Sieverding (Los Angeles, CA); Michael Price (St. Petersburg, FL); Lindsey Emerson (Los Angeles, CA); Lynn D. Gabbay (Jacksonville, FL); Thomas V. Ryan (Los Angeles, CA); Audra E. Gold (Los Angeles, CA); Chan V. Hou (Long Beach, CA)
Assignee: Pluto Inc.
H04N21/4532H04N5/445H04N5/45H04N21/23424H04N21/2407H04N21/2665H04N21/26241H04N21/26258H04N21/26283H04N21/435H04N21/4316H04N21/458H04N21/4668H04N21/47H04N21/4788H04N21/47214H04N21/4821H04N21/4825H04N21/4882
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,659,244
App. No.
17/805,216
Granted
May 23, 2023
Kind
B2
Abstract

Systems and methods for identifying, assembling, and publishing content are described. A a video content item, having a first time length, is identified by a system to be included in a program scheduled for a first time period. The video may be hosted on a third party system. A first time span within the first program is allocated for the video, wherein the first time span is longer than the first time length. The system determines, prior to or at the first time period, a time difference between a current length of the video and the first time span. At least partly in response to determining that the video has a time length shorter than the first time span, the system selects supplemental content based at least in part of the determined time difference to be streamed to user terminals over a data network within the first time period.

Claims (78)

1. A content scheduling system, comprising:

a network interface;

a computing device;

non-transitory computer readable memory that stores programs that when executed by the computing device, cause the content scheduling system to perform operations comprising:

provide, via the network interface, a graphic user interface comprising one or more fields and one or more controls via which a programmer is enabled to specify content sequencing information with respect to prerecorded primary content to be streamed at a future time over an Internet using IP packets from a content server to client devices and that enable a maximum amount of time and/or a maximum quantity of advertisements to be specified with respect to prerecorded primary content;

enable the programmer to specify advertisement content insertion points for items of prerecorded primary content; and

during streaming playback of the prerecorded primary content by a client device in accordance with the content sequencing information specified via the graphic user interface, wherein the prerecorded primary content is streamed using IP packets,

enable advertisement content to be dynamically selected, and

enable the dynamically selected advertisement content to be streamed over the Internet to the client device from a remote system in accordance with the specified insertion points.

2. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

detecting content programming errors comprising:

detecting a time range in a channel schedule wherein no content is designated to be played,

scheduling of a live event to be played at a time prior to an occurrence of the live event,

detecting insufficient available advertising space, and

identifying programming errors that need to be corrected and programming errors that may be ignored; and

reporting content programming errors to the programmer before the programmer synchronizes a programming calendar to a live calendar for viewing.

3. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

dynamically selecting an advertisement length for at least one advertisement based on a time an advertisement request is received, and a location of the client device.

4. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

determining that a first selected advertisement is shorter than an allocated time for the first selected advertisement; and

at least partly in response to determining that the first selected advertisement is shorter than the allocated time for the first selected advertisement, identifying fill-in content to enable synchronization with a program guide of scheduled content.

5. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

calculating, for a first program, a current total program length for the first program including a base program and current advertisement insertions, and continuously causing a display of an updated total program length as advertisement insertions are added.

6. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

calculating a current total time length for a first program, including a first item of primary content and current advertisement insertions;

comparing the calculated current total time length against a scheduled program time for the first program; and

at least partly in response to a programmer attempting to add an advertisement insertion point with an associated time length that would cause the total length of the first program to exceed a scheduled length for the first program, cause an error notice to be generated and presented to the programmer.

7. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

detecting content programming errors comprising detecting a time range in a channel schedule wherein no content is designated to be played; and

reporting content programming errors to the programmer before the programmer synchronizes a programming calendar to a live calendar for viewing.

8. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

detecting content programming errors comprising detecting scheduling of a live event to be played at a time prior to an occurrence of the live event.

9. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

detecting content programming errors comprising detecting scheduled content that has been removed or invalidated.

10. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

detecting content programming errors comprising detecting insufficient available advertising space.

11. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

detecting content programming errors comprising detecting incomplete metadata.

12. The content scheduling system as defined in claim 1 , wherein the operations further comprise:

detecting content programming errors; and

identifying programming errors that need to be corrected and programming errors that may be ignored.

13. Non-transitory computer readable memory that stores programs that when executed by a computing device, cause the computing device to perform operations comprising:

provide a graphic user interface comprising one or more fields and one or more controls via which a user is enabled to specify content sequencing information with respect to prerecorded primary content to be streamed over a network using IP packets from a content server to client devices and that enable a maximum amount of time and/or a maximum quantity of advertisements to be specified with respect to prerecorded primary content;

enable the user to specify advertisement content insertion points for items of prerecorded primary content; and

during streaming playback of the prerecorded primary content by a client device in accordance with the content sequencing information specified via the graphic user interface, wherein the prerecorded primary content is streamed using IP packets,

enable advertisement content to be dynamically selected, and

enable the dynamically selected advertisement content to be streamed over the network to the client device from a remote system in accordance with the specified insertion points.

14. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

detecting content programming errors comprising:

detecting a time range in a channel schedule wherein no content is designated to be played,

scheduling of a live event to be played at a time prior to an occurrence of the live event, and

detecting insufficient available advertising space; and

reporting content programming errors to the user before the user synchronizes a programming calendar to a live calendar for viewing.

15. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

detecting content programming errors comprising detecting a time range in a channel schedule wherein no content is designated to be played; and

reporting content programming errors to the user before the user synchronizes a programming calendar to a live calendar for viewing.

16. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

detecting content programming errors comprising detecting scheduling of a live event to be played at a time prior to an occurrence of the live event.

17. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

detecting content programming errors comprising detecting scheduled content that has been removed or invalidated.

18. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

detecting content programming errors comprising detecting insufficient available advertising space.

19. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

detecting content programming errors comprising detecting incomplete metadata.

20. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

detecting content programming errors; and

identifying programming errors that need to be corrected and programming errors that may be ignored.

21. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

dynamically selecting an advertisement length for at least one advertisement based on a time an advertisement request is received, and a location of the client device.

22. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

determining that a first selected advertisement is shorter than an allocated time for the first selected advertisement; and

at least partly in response to determining that the first selected advertisement is shorter than the allocated time for the first selected advertisement, identifying fill-in content to enable synchronization with a program guide of scheduled content.

23. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

calculating, for a first program, a current total program length for the first program including a base program and current advertisement insertions, and continuously causing a display of an updated total program length as advertisement insertions are added.

24. The non-transitory computer readable memory as defined in claim 13 , wherein the operations further comprise:

calculating a current total time length for a first program, including a first item of primary content and current advertisement insertions;

comparing the calculated current total time length against a scheduled program time for the first program; and

at least partly in response to a user attempting to add an advertisement insertion point with an associated time length that would cause the total length of the first program to exceed a scheduled length for the first program, causing an error notice to be generated and presented to the user.

Continuity (10)
Continuation 17174104 · Feb 11, 2021
Continuation 17084456 · Oct 29, 2020
Continuation 16784834 · Feb 7, 2020
Continuation 16297143 · Mar 8, 2019
Continuation 15975545 · May 9, 2018
Continuation 15633646 · Jun 26, 2017
Continuation 14988375 · Jan 5, 2016
Continuation 14622153 · Feb 13, 2015
Provisional Application 61940096 · Feb 14, 2014
Related Publication 20220303623A1 · Sep 22, 2022
Cited By (1)
US 12,432,406