This invention is related to systems and methods for recording and deleting programs and more particularly, systems and methods for recording and deleting programs that are of lesser importance to the user.
Recording devices, such as digital video recording (DVR) devices, are well known in the art but still have deficiencies. A user of a DVR device may schedule recordings for a number of programs that he or she may not have the same level of interest in. Should a scheduling conflict occur, the user may be forced to choose to record the program or programs he or she is most interested in, and then search for another broadcast of the other program or programs to record. This may be burdensome and complicated, or perhaps just undesirable, for some users.
A user of a DVR device may experience a similar, undesirable experience when, for example, the user tries to record a program and finds that the DVR device has insufficient space remaining. The user is then forced to either cancel the recording, or select and delete one or more recorded programs to make room for the new program. This experience may even be more frustrating if the user's DVR has space available when the user schedules the recording, but does not have enough space when the program is transmitted. In such cases, unless the user fortuitously checked the DVR device and made space before the broadcast time, the requested program may not be recorded. When the user is more interested in the program he or she wanted to record than in programs already recorded, the experience can be quite frustrating.
As yet another example of a potentially undesirable experience, a DVR device may automatically delete programs in order to make room for a new recording. If the DVR deletes a program that the user is more interested in than the program being recorded, such a result may frustrate the user.
Accordingly, it would be desirable to provide systems and methods for recording programs for which a user has lesser interest at a convenient time.
This and other objects of the present invention are accomplished in accordance with the principles of the present invention by providing an interactive television application coupled with a recording device. The interactive television application automatically designates, or receives a user's designation for, recording priorities for its recordings. Among the priorities is a “when convenient” priority (others may be, for example, “high” and “low”). In some embodiments, the only recording priority option is “when convenient” or not. The “when convenient” priority indicates that no particular transmission of the requested program is preferred for recording, and that a copy of the requested program should be recorded at the first opportunity in which the recording would not conflict with other user requests.
Prior to recording a program, the interactive television application determines whether recording the program will conflict with current, anticipated or scheduled uses of resources in the user's equipment. For example, the interactive television application may determine whether a tuner will be available for the recording, or whether there will be enough space available to record the program. If a conflict exists or will exist, the interactive television application examines the recording priority of the program. If the recording priority is “when convenient,” the interactive television application searches for another transmission of the program at a time when there are no conflicts, and schedules that transmission for recording.
It may be that there is no time when a single transmission of a “when convenient” program can be recorded in its entirety without a resource conflict. In this situation, the interactive television application schedules recordings for the portions of the different transmissions of the “when convenient program” that are not conflicted. As each portion is recorded, or after all of the portions are recorded, the interactive television application will stitch the pieces of the program together to produce a complete recording. Alternatively, the interactive television application may leave the portions unstitched, and simply play them back in order when the user requests that the program be played back.
In response to determining that a scheduled recording is not designated “when convenient”, the interactive television application determines whether any other scheduled recordings having a “when convenient” priority can be rescheduled. If not, the interactive television application may alert the user that there is an irreconcilable conflict, and request that the user choose between the recordings or automatically choose between the recordings. For example, the interactive television application may automatically cancel a “low priority” recording in favor of a “high priority” recording.
In some embodiments, the interactive television application may automatically designate, or receive a user's designation for, a deletion priority for recorded programs. When a conflict occurs due to a lack of space on the recording device, the interactive television application uses the deletion priority to determine which, if any, program or programs to delete in order to make room for the new recording. The deletion priorities include a “when convenient” priority (which may be the only option in some embodiments). Other priorities may be, for example, “save until I delete,” “high,” and “low.” In response to determining that a recorded program has a “when convenient” deletion priority, the interactive television application deletes the recorded program to make room for the new program if the recorded program can be recorded later when space is available and there are no other conflicts (the interactive television application may use stitching to accomplish re-recording the entire program).
The above and other features of the present invention, its nature and various advantages will be more apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings, and in which:
Content source 20 may be any suitable content source such as, for example, a cable system headend, satellite television distribution facility, television broadcast facility, on-demand server (e.g., video-on-demand (VOD) server), or any other suitable facility or system for originating or distributing content. Content source 20 may be configured to transmit signals over any suitable communications path 22 including, for example, a satellite path, a fiber-optic path, a cable path, or any other suitable wired or wireless path. The signals may carry any suitable content such as, for example, television programs, music, news, web services, or any other suitable content. The signals may be transmitted as a broadcast, multicast, unicast, or any other suitable transmission stream.
User equipment 10 may include any equipment suitable for providing an interactive television experience. For example, user equipment 10 may include computer equipment, such as a personal computer with a television card (PCTV). User equipment 10 may include television equipment such as a television, set-top box, recording device, video player, user input device (e.g., remote control, keyboard, mouse, touch pad, touch screen, voice recognition interface, etc.) or any other device suitable for providing an interactive television experience. For example, user equipment 10 may include a DCT 2000, 2500, 5100, 6208 or 6412 set-top box provided by Motorola, Inc.
In the example of
Recording device 14 may be a personal video recorder (PVR), digital video recorder (DVR), video cassette recorder (VCR), DVD-recorder, or any other suitable recording device. Recording device 14 may include one or more tuners.
Display device 12 may be any suitable device such as, for example, a television monitor or a computer monitor. Display device 12 may also be configured to provide for the output of audio.
Control circuitry 18 is adapted to receive user inputs from input device 16, execute the instructions of the interactive television application, direct recording device 14 to record programs, and direct display device 12 to display transmitted programs, recorded programs, and interactive television application display screens. Control circuitry 18 may include one or more tuners (e.g., analog or digital tuners), encoders and decoders (e.g., MPEG encoders and decoders), processors (e.g., Motorola 68000 family processors), memory (i.e., RAM and hard disks), communications circuitry (e.g., cable modem circuitry), input/output circuitry (e.g., graphics circuitry), connections to the various devices of user equipment 10 (e.g., recording device 14), and any other suitable component for providing analog or digital television programming, program recording, and interactive television features. In some embodiments, control circuitry 18 may be included as part of one of the devices of user equipment 10 such as, for example, part of recording device 14, display 12, or any other device (e.g., a set-top box, television, video player, etc.).
Control circuitry 18 may include memory for storing interactive television application instructions or other programming logic, and database 104. Database 104 stores interactive television application data from data sources 24 (such as program scheduling data), and other data for use by the interactive television application (e.g., user profiles, recorded program lists, equipment settings, or other suitable information). Database 104 may also store deletion and recording priorities for scheduled and actual recordings. In some embodiments, database 104 is stored in other portions of user equipment 10, such as recording device 14, or may be stored across different devices inside or outside the home.
User equipment 10 may receive interactive television application data from one or more data sources 24. Data sources 24 may provide data for a particular type of content or for a particular application. For example, one data source 24 may provide data for non-on-demand assets (e.g., non-pay and pay-per-view television programs), and another may provide data for on-demand assets (e.g., VOD programs). Or, for example, a single data source may provide both of these types of data. In some embodiments, one data source 24 may provide data for an interactive television program guide, and another may provide data for another interactive television application running on user equipment 10 (e.g., a home shopping application). In some embodiments, data sources 24 may provide data to the interactive television application using a client/server approach. There may be one server per data source, one for all sources or, in some embodiments, a single server may communicate as a proxy between user equipment 10 and various data sources 24.
Content source 20 and data sources 24 are shown in
To schedule the recording of a program or other suitable video, a user may highlight a desired program (in the example of
Prior to choosing to record a program, the user may request additional information regarding the program. For example, the user may highlight a listing using highlight region 212 and press an “Information” key or key sequence on user input device 16. In response to receiving the user request, the interactive television application may display an information screen.
Screen 300 also includes selectable icons 310, some or all of which may include text descriptions. The screen may include options for recording, series recording, parental control locks, or any other suitable interactive television application action. If a user decides to record the program, the user may schedule the recording by pressing a “Record” key or key sequence, selecting a “Record” option from the screen using user input device 16, or by any other suitable means.
In some embodiments, the user may be watching a program on display device 12 in a full screen view, for example full screen view 400 shown in
In response to receiving a user request to record a program (e.g., from any of screens 200, 300 or 400), the interactive television application automatically designates, or prompts the user to designate, a recording priority for the selected program (e.g., high, low, “when convenient,” etc.). The interactive television application may automatically designate a priority for a recording using any suitable approach. For example, if a user pays for viewing or recording a program, it is likely that the user has a high interest in the program and the interactive television application may set its priority as high. As another example, the interactive television application may determine how desirable a program will be to the user based on the user's viewing history. The application may, for example, designate the program high priority in response to determining that the program is of a type that the user is very interested in and very likely to watch. It may designate a program as “when convenient” when it determines, for example, that there are other programs of more interest at the same time that the selected program is transmitted and there are other transmissions of the selected program. As yet another example, the interactive television application may, as a default, set recordings of currently-watched programs to high.
In some embodiments, the interactive television application may attempt to predict when the user is likely to watch recordings and set the recording priority accordingly. This prediction may be based on, for example, the time the user typically waits between recording a program and watching it (a “waiting period”). The waiting period may be determined by the guide or, alternatively, set by the user. The interactive television application may determine waiting periods for different categories or genres of programs to better predict when the user will watch a given recording. In some embodiments, the interactive television application may automatically update recording priorities as time approaches when a user is likely to watch a recording.
The following example will demonstrate how an interactive television application may automatically determine the recording priority for a program in some embodiments of the present invention. Assume the user on Monday selects for recording a Tuesday prime time program every week (such as for a series recording). The interactive television application, based on the user's viewing and usage history, determines that this is a program the user is very interested in, and that the user typically waits until Saturdays to watch this recording. The interactive television application also examines its schedule data and determines that repeats of the program will occur three times before Saturday. After determining that there are no conflicts for any of the transmissions, the interactive television application sets the priority to “when convenient”. As the week progresses, the user schedules more recordings, causing resource conflicts for the first and third transmissions. In response, the interactive television application will update the recording priority to high, and schedule the second transmission for recording.
The interactive television application may, instead of or in addition to automatically setting a recording priority for a recording, prompt the user for a priority designation for a recording. For example, the interactive television application may display a screen or pop-up, such as pop-up menu 502 shown in
The recording priority (and other recording options), whether set by the user or automatically by the interactive television application, may be stored in a database such as database 104 of
Prior to recording a program, the interactive television application determines whether the recording will conflict with current, scheduled or anticipated uses of resources in user equipment 10. For example, the interactive television application may determine whether a tuner in control circuitry 18 or recording device 14 (
If a conflict exists or will exist, the interactive television application examines the recording priority of the program. If the recording priority is “when convenient”, the interactive television application searches its schedule data (such as program guide data received from data source 24 and stored in database 104 of
The following example will illustrate how the interactive television application may record a program having a “when convenient” recording priority. In this example, the interactive television application determines whether there is a resource conflict when the user sets the recording. The user decides to record the program “Biography” by selecting the corresponding listing in
In some cases, there may be no time when a single transmission of a “when convenient” program can be recorded in its entirety without a resource conflict. In this situation, the interactive television application schedules recordings for the portions of the different transmissions of the “when convenient program” that are not conflicted. As each portion is recorded, or after all of the portions are recorded, the interactive television application may stitch the pieces of the program together to produce a single complete recording. Alternatively, the interactive television application may leave the portions unstitched, and simply play them back in order when the user requests that the program be played back.
The following example will illustrate this feature. Assume a “when convenient” program has only two transmissions, from 8-10 PM on two successive Fridays. After scheduling the recording of the first transmission, the user schedules two high priority recordings for other programs. The first is for 8-9 PM during the first transmission of the “when convenient” recording. The second is for 9-10 PM during the second transmission of the “when convenient” recording. The second high priority recording was set before the first transmission of the “when convenient” program.
After the user scheduled the first high priority recording, the interactive television application identifies the conflict. It resolves the conflict by identifying the next transmission of the “when convenient” program after the conflict, and scheduling that transmission (the second transmission) for recording. After the user scheduled the second high-priority recording, the interactive television application identifies the conflict. It responds by identifying the next transmission of the “when convenient” program, which is the first transmission that originally had a conflict. After comparing the start and end times of the high priority recordings and determining that the entire “when convenient” program may be recorded, the interactive television application schedules for recording the halves of the “when convenient” transmissions that are not conflicted.
In some embodiments, the interactive television application may systematically record portions of a “when convenient” program when the user's equipment has resources available, even if the interactive television application has not identified alternate transmissions of the program to record to complete the recording (e.g., because there are no known future transmissions, or because the user's equipment's resources are not available at known future transmissions). In such cases, one or more later, as of yet undetermined transmissions may be used to complete the recording.
In some cases, the interactive television application will determine that a schedule conflict is irreconcilable and prompt the user to choose between programs.
In some cases, a conflict may occur due to a lack of space on the recording device. In such cases, the interactive television application may use a deletion priority to resolve the conflict (e.g., to determine which, if any, program or programs to delete in order to make room for the new recording). In some embodiments, the interactive television application may automatically designate, or receive a user's designation for, a deletion priority for recorded programs. The deletion priorities include a “when convenient” priority (which may be the only option in some embodiments). Other priorities may be, for example, “save until I delete,” “high,” and “low.”
In response to an indication that a program has a “when convenient” or other deletion priority, the interactive television application may change an entry in database 104 (
The interactive television application may automatically designate the deletion priority for a program using any suitable approach. For example, if a user paid to record a program, it is likely that the user has a high interest in the program and the interactive television application may set its deletion priority as high. As another example, the interactive television application may determine how desirable a program will be to the user based on the user's viewing history. The application may, for example, designate the program high priority in response to determining that the program is of a type that the user is very interested in and very likely to watch. It may designate a program as “when convenient” when it determines, for example, that there are other transmissions of a program during the user's typical waiting period for watching recorded programs generally, or during the user's waiting period for watching recordings of a particular genre. In some embodiments, the interactive television application may designate the deletion priority for recordings that the user has watched as “when convenient.” In some embodiments, the interactive television application may automatically set the deletion priority to “when convenient” for any program with a record priority of “when convenient.”
The interactive television application may, instead of or in addition to automatically setting a deletion priority for a recording, prompt the user for a deletion priority. For example, the user may highlight a listing within the recordings display of
In response to determining that a recorded program has a “when convenient” deletion priority, the interactive television application will delete the recorded program to make room for the new program if the recorded program can be recorded later when space is available (and there are no other conflicts). In some embodiments, the program with the “when convenient” deletion priority may be deleted to make room for a higher priority program regardless of whether a later airing is available to replace it. When a program having a “when convenient” deletion priority is deleted, the interactive television application automatically schedules the program for re-recording if another airing is available. In some embodiments, the scheduled recording may be set with a “when convenient” recording priority. The program may then be re-recorded once space becomes available. In some embodiments, the interactive television application may delete and re-schedule for recording programs that do not have a “when convenient” recording priority, but that the user has already played back.
In some instances, the interactive television application may not be able to resolve a storage space conflict.
Once a program has been recorded, either completely or in part, the user may access a listing display, for example listing display 800 shown in
To allow a user to identify programs having a “when convenient” deletion priority in listings displays, the interactive television application may display an icon on the listings associated with the programs, change the color of the listings, or mark the listings in any suitable manner. In the example of
In some embodiments, the recorded programs listings (e.g., listings 802) may include listings for programs that are partially recorded. The partially recorded programs may be made available to the user for viewing. In some embodiments, the listings for incomplete programs may include an indication of the completed amount of the recording. For example, listing 816 indicates that “Biography” is only 70% complete. In some embodiments, the indication may inform the user which portions are available for viewing and/or which portions are not yet recorded. In some embodiments, the interactive television application may provide the expected date and time when the recording of the program will be complete to the user. In some embodiments, only programs that are completely recorded may be included in program listings 802.
The following flow charts serve to illustrate processes involved in some embodiments of this invention.
At step 930, the interactive television application determines whether the recording priority of the program permits recording alternate (e.g., future) transmissions of the program instead of the scheduled recording (i.e., whether the priority is “when convenient”). If the interactive television application determines that the recording priority of the program does not permit recording alternate transmissions, process 900 moves to step 935, where the selected transmission is recorded. If instead the interactive television application determines that the recording priority of the program permits recording alternate transmissions, process 900 moves to step 940. Step 930 may be performed conditionally in response to determining that the recording conflicts or will conflict with another use of the resources of the user's equipment (not shown).
At step 940, in response to determining that the recording priority permits recording alternate transmissions instead of the selected one, the interactive television application identifies alternate transmissions of the program. For example, the interactive television application may search the program schedule data provided by data sources 24 for alternate transmission times of the program. At step 950, the interactive television application determines whether portions of each transmission of the program conflict with current, anticipated or scheduled uses of resources in the user's equipment, beginning with either the originally selected transmission or the alternate transmissions. For example, the interactive television application may determine whether programs are scheduled for recording at the same time portions of the original and alternate transmissions, or whether there will not be sufficient space on recording device 14 (
At step 970, the interactive television application determines whether the program has been recorded in its entirety by, for example, comparing the portions of the program that were recorded from each transmission and determines whether the combination of the portions provides the user with the entire program. If the interactive television application determines that the recording is incomplete, process 900 moves to step 950 to record additional portions of the program. If instead the interactive television application determines that the recording is complete, process 900 ends at step 972.
At step 1040, the interactive television application assigns a particular transmission of the program to record. For example, the interactive television application may assign a transmission selected by the user for recording. In some embodiments, the interactive television application may skip step 1040 (e.g., when the selected program has a “when convenient” recording priority).
At step 1050, the interactive television application determines whether the recording priority of the program permits recording alternate transmissions of the program instead of the scheduled transmission (i.e., whether the priority is “when convenient”). If the interactive television application determines that the recording priority of the program does not permit recording alternate transmissions, process 1000 moves to step 1055, where the user's equipment records the assigned transmission of the program (e.g., assigned at step 1040). Process 1000 then ends at step 1092. If instead the interactive television application determines that the recording priority of the program permits recording alternate transmissions, process 1000 moves to step 1060. Step 1050 may be performed conditionally in response to determining that the recording conflicts or will conflict with another use of the resources of the user's equipment (not shown).
At step 1060, the interactive television application identifies a current or alternate transmission of the program. In some embodiments, the interactive television application may identify transmissions of the program at the time the program is selected for recording, at the time the program is transmitted (or shortly before), or at any time in between. In some embodiments, the interactive television application may identify transmissions at regular intervals.
At step 1070, the interactive television application determines whether the identified transmission of the program conflicts with uses of resources of the user's equipment. For example, the interactive television application may determine whether the user's equipment has an available tuner and enough space to record the identified transmission. If the interactive television application determines that the transmission does not conflict with uses of the user's equipment (e.g., the user's equipment has enough resources available to record the identified transmission), process 1000 moves to step 1075, where the identified transmission is recorded. Process 1000 then ends at step 1092.
If instead the interactive television application determines that the transmission conflicts with uses of the user's equipment (e.g., the user's equipment does not have enough resources available to record the identified transmission), process 1000 moves to step 1080. At step 1080, the interactive television application determines whether a portion of the identified transmission that has not yet been recorded conflicts with other uses of the resources of the user's equipment. For example, the interactive television application may determine whether the user's equipment has a tuner available for recording only a half hour of a two hour program. As another example, the interactive television application may determine whether the user's equipment has enough space to record only 30 minutes of a program. If the interactive television application determines that the portions of the transmission that have not yet been recorded conflict with uses of resources of the user's equipment (e.g., the user's equipment does not have available resources to record the portions of the program that have not yet been recorded), process 1000 moves back to step 1060 where the interactive television application identifies another transmission of the program.
If instead the interactive television application determines that a portion of the transmission that has not yet been recorded does not conflict with uses of resources of the user's equipment (e.g., the user's equipment has available resources to record a portion of the program that has not yet been recorded), process 1000 moves back to step 1085. At step 1085, the interactive television application records the portion of the program that does not conflict with uses of resources of the user's equipment. At step 1090, the interactive television application determines whether the recording of the selected program is complete. If the interactive television application determines that the recording is incomplete, process 1000 moves back to step 1060 where another transmission of the program is selected. If instead the interactive television application determines that the recording is complete, process 1090 ends at step 1092.
At step 1130, the interactive television application identifies previously recorded programs (or portions of programs) 1 . . . N and, at step 1140, determines whether each of the identified recorded programs or portions of programs has a deletion priority that permits deleting the program and recording a future transmission of the program (i.e., “when convenient” deletion priority). The order in which the programs are checked may be based on any suitable criteria, e.g., priority, date recorded, size, etc. If the interactive television application determines that a program does not have a deletion priority that permits deleting the program and recording a future transmission of the program, process 1100 moves back to step 1140 to determine whether another recorded program has a suitable deletion priority.
If instead the interactive television application determines that a program or a portion of a program has a deletion priority that permits deleting the program and recording a future transmission of the program, process 1100 moves to step 1150. At step 1150, the interactive television application determines whether the program has a future transmission that does not conflict with uses of resources of the user's equipment. For example, the interactive television application may identify future transmissions of the recorded program or a portion of the program and compare them with scheduled and anticipated uses of resources of the user's equipment (e.g., available tuners). If the interactive television application determines that the program does not have a suitable future transmission, process 1100 moves back to step 1140 to determine whether another recorded program has an appropriate deletion priority, as described above.
If instead the interactive television application determines that the recorded program or a portion of the program has a future transmission that does not conflict with uses of resources of the user's equipment, process 1100 moves to step 1160, at which the interactive television application schedules the future transmission for recording. Steps 1150 and 1160 may be optional. The interactive television application may delete the program or portion of the program with the “when convenient” deletion priority, even if no known future transmission can be scheduled for recording. At step 1170, the interactive television application deletes the recorded program or a portion of the program to create space for recording additional programs. At step 1180, the interactive television application determines whether the user's equipment has enough space to record the program in its entirety now that the recorded program has been deleted. If the interactive television application determines that the user equipment has enough space available, process 1100 moves to step 1190 and records the requested program in the available space. If instead the interactive television application determines that the user's equipment does not have enough space, process 1100 moves back to step 1140 to attempt to find another “when convenient” recording for deletion, as described above. Process 1100 ends at step 1192.
In some embodiments, the interactive television application may record only a portion of the requested program in the space made available by the deletion such as when, for example, the program to be recorded has a “when convenient” recording priority. In such embodiments, the interactive television application may use stitching, described above, to play back the program.
The above described embodiments of the present invention are presented for purposes of illustration and not of limitation, and the present invention is limited only by the claims which follow.
This application is a divisional of U.S. patent application Ser. No. 11/237,839, filed Sep. 27, 2005, which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | 11237839 | Sep 2005 | US |
Child | 12491921 | US |