METHOD AND SYSTEM FOR DETERMINING THE AVAILABILITY OF A MEDIA CONTROLLER
Method and system for determining the availability of a media controller to record a program in the future. A media controller receives a request to schedule the recording of a program during a particular time slot. The media controller obtains an availability probability of the media controller during the time slot. The media controller determines, based on the availability probability, whether the media controller is available to record the program. The availability probability may be based on previous usage data that identifies previous usage associated with the media controller.
1 . A method for scheduling the recording of a program, comprising:
determining a program to record;
determining a time associated with the program;
obtaining an availability probability of a first media controller; and
scheduling the recording of the program with the first media controller based on the availability probability.
2 . The method of claim 1 , wherein determining the time associated with the program further comprises determining a time slot associated with the program, and wherein the availability probability is based on previous usage data that identifies previous usage of the first media controller during the time slot.
3 . The method of claim 2 , wherein the previous usage data comprises data identifying previous viewings of a plurality of programs during the time slot.
4 . The method of claim 2 , wherein the previous usage data comprises data identifying a previous recording of a program during the time slot.
5 . The method of claim 1 , wherein determining the program to record comprises:
receiving, by the first media controller, a request from a second media controller to record the program; and
wherein obtaining the availability probability of the first media controller comprises accessing previous usage data that identifies previous usage of a first tuner associated with the first media controller.
6 . The method of claim 5 , wherein scheduling the recording of the program based on the availability probability of the first media controller further comprises:
sending the second media controller a first message indicating that the first media controller is available to record the program based on the availability probability of the first media controller; and
scheduling the recording of the program with the first media controller upon receipt of a second message from the second media controller to schedule the recording of the program.
7 . The method of claim 5 , wherein obtaining the availability probability of the first media controller further comprises accessing previous usage data that identifies previous usage of a second tuner associated with the first media controller.
8 . The method of claim 7 , wherein scheduling the recording of the program based on the availability probability of the first media controller comprises:
determining a first availability probability associated with the first tuner;
determining a second availability probability associated with the second tuner; and
deriving the availability probability of the first media controller based on the first availability probability associated with the first tuner and the second availability probability associated with the second tuner.
9 . The method of claim 8 , wherein scheduling the recording of the program with the first media controller based on the availability probability of the first media controller further comprises scheduling the recording of the program with the first media controller based on a function of the availability probability of the first media controller and an availability threshold.
10 . The method of claim 1 , further comprising accessing a recording schedule identifying a plurality of time slots during which programs have been scheduled for recording, wherein scheduling the recording of the program with the first media controller based on the availability probability of the first media controller further comprises scheduling the recording of the program with the first media controller based on the availability probability of the first media controller and on the recording schedule.
11 . The method of claim 1 , further comprising determining a weekday associated with the program, wherein the availability probability is based on previous usage data that comprises data identifying previous usage of the first media controller during the weekday for each of a plurality of previous weeks, and during the same time slot.
12 . A method for scheduling the recording of a program, comprising:
determining, by a first media controller, a program to record at a future time;
determining that a second media controller is available to record the program based on an availability probability of the second media controller;
causing, by the first media controller, a display of information identifying the second media controller to a viewer; and
sending, by the first media controller, a request to the second media controller to schedule the recording of the program based on input received from the viewer in response to the display.
13 . The method of claim 12 , wherein the availability probability is based on previous usage data that identifies previous usage associated with the second media controller, further comprising accessing the previous usage data, by the first media controller, from a local storage medium.
14 . The method of claim 12 , wherein determining that the second media controller is available to record the program based on the availability probability of the second media controller further comprises:
sending the second media controller a request to indicate whether the second media controller is available to record the program, wherein the second media controller accesses previous usage data that identifies previous usage associated with the second media controller on a storage medium that is local to the second media controller in response to the request.
15 . The method of claim 12 wherein determining that the second media controller is available to record the program based on the availability probability of the second media controller further comprises:
determining that a third media controller is available to record the program based on an availability probability of the third media controller; and
wherein causing the display of information identifying the second media controller to the viewer further comprises causing the display of information identifying the second media controller and the third media controller to the viewer.
16 . A method for identifying an available media controller for recording a program, comprising:
receiving, by a computer server, a request from a first media controller identifying a program to record;
determining, by the computer server, a time slot associated with the program;
obtaining, by the computer server, an availability probability of a second media controller;
determining that the second media controller is available to record the program based on the availability probability of the second media controller; and
sending a message to the first media controller identifying the second media controller based on determining that the second media controller is available to record the program.
17 . The method of claim 16 , wherein the method further comprises:
accessing previous usage data that identifies previous usage associated with a third media controller to determine an availability probability of the third media controller; and
determining that the third media controller is available to record the program based on the availability probability of the third media controller;
wherein sending the message to the first media controller comprises sending a message to the first media controller identifying the second media controller and the third media controller.
18 . The method of claim 17 , further comprising:
receiving a second message from the first media controller identifying the second media controller; and
in response the second message, sending the second media controller a third message to schedule the program for recording on the second media controller.
19 . The method of claim 17 , wherein the availability probability of the second media controller is based on previous usage data associated with the second media controller and the availability probability of the third media controller is based on previous usage data associated with the third media controller, and wherein the previous usage data associated with the second media controller and the previous usage data associated with the third media controller are stored at the computer server.
20 . The method of claim 17 , further comprising:
receiving a plurality of usage messages from the second media controller, wherein each of the plurality of usage messages identifies at least a time slot during which the second media controller was in use.
21 . The method of claim 20 , further comprising generating previous usage data associated with the second media controller from the plurality of usage messages.
22 . A media controller comprising:
a network interface adapted to communicate with a network; and
a control system comprising a processor and coupled to the network interface, the control system adapted to:
determine a program to record at a future time;
determine that a second media controller is available to record the program based on an availability probability of the second media controller;
cause a display of information identifying the second media controller to a viewer; and
send a request to the second media controller to schedule the recording based on input received from the viewer in response to the display.
23 . The media controller of claim 22 , wherein to determine that the second media controller is available to record the program based on an availability probability of the second media controller, the media controller is further adapted to:
access previous usage data from a local storage medium coupled to the media controller.