Multimedia scheduler
First Claim
1. A job scheduling apparatus for scheduling media items for a plurality of network broadcast channels, comprising:
- at least one processor programmed to;
provide a work manager, said work manager comprising at least one producer thread, a task queue and at least one worker thread; and
provide one or more scheduler objects associated with each producer thread;
wherein said work manager and associated scheduler objects are configured to create and maintain a job schedule according to predefined criteria, and wherein said at least one producer thread is configured to check a channel at configurable intervals, increment a schedule of said channel to generate work requests, and place said work requests in said task queue;
wherein said worker threads are configured to execute said work requests,wherein said scheduler objects comprise work creator objects and wherein associating a particular scheduler object with a particular producer thread comprises wrapping a work creator object of said particular scheduler object with said particular producer thread.
3 Assignments
0 Petitions
Accused Products
Abstract
A song and ad scheduler supporting clip-based and stream-based scheduling of multimedia items generates several hours of schedule in advance. Having multiple channel capability, the scheduler uses as inputs: the channel, associated playlists, rotation pattern for the channel, and associated programming rules to produce a schedule of multimedia items for the channel. Initially, the scheduler produces a schedule for each channel of predetermined length; then it periodically revisits the channel to add more songs, keeping the schedule to the desired length. Length of the initial playlist is configurable. The scheduler uses a producer-consumer model for distributing work. Producer threads periodically scan the system for work to be done. When a producer thread encounters work to be done, e.g. adding to the schedule of a channel, the producer thread places a work request into a queue. Worker threads consume the work requests by fulfilling the requested work.
-
Citations
16 Claims
-
1. A job scheduling apparatus for scheduling media items for a plurality of network broadcast channels, comprising:
-
at least one processor programmed to; provide a work manager, said work manager comprising at least one producer thread, a task queue and at least one worker thread; and provide one or more scheduler objects associated with each producer thread; wherein said work manager and associated scheduler objects are configured to create and maintain a job schedule according to predefined criteria, and wherein said at least one producer thread is configured to check a channel at configurable intervals, increment a schedule of said channel to generate work requests, and place said work requests in said task queue; wherein said worker threads are configured to execute said work requests, wherein said scheduler objects comprise work creator objects and wherein associating a particular scheduler object with a particular producer thread comprises wrapping a work creator object of said particular scheduler object with said particular producer thread. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer-readable storage medium having computer-executable instructions embodied thereon to execute a job scheduler, said job-scheduler comprising:
-
a work manager, said work manager comprising at least one producer thread, a task queue and at least one worker thread; and one or more scheduler objects associated with each producer thread; wherein said work manager and associated scheduler objects are configured to create and maintain a job schedule according to predefined criteria, and wherein said at least one producer thread is configured to check a channel at configurable intervals, increment a schedule of said channel to generate work requests, and place said work requests in said task queue; wherein said worker threads are configured to execute said work requests, wherein said scheduler obiects comprise work creator obiects and wherein associating a particular scheduler object with a particular producer thread comprises wrapping a work creator object of said particular scheduler object with said particular producer thread. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification