Claims
- 1. A method comprising:
computing a program score for individual programs that are to be represented in an electronic program guide; computing, from the program scores, a relative score for individual programs, the relative scores providing a measure of how well a particular program relates to the other programs that are to be represented in the electronic program guide; and displaying visual indicia of the relative scores of individual programs on the electronic program guide.
- 2. The method of claim 1, wherein the act of computing the program scores is performed by a recommendation engine that resides on a client device.
- 3. The method of claim 1, wherein the act of computing the program scores comprises computing the scores as a function of metadata that describes the programs and user preferences.
- 4. The method of claim 1, wherein the act of displaying comprises providing the visual indicia within a cell of the electronic program guide.
- 5. The method of claim 1, wherein the act of displaying comprises selecting the visual indicia based upon one or more thresholds associated with the relative scores.
- 6. The method of claim 5, wherein the visual indicia comprises one or more symbols.
- 7. The method of claim 5, wherein the visual indicia comprises a number.
- 8. The method of claim 5, wherein the visual indicia comprises one or more symbols, individual collections of symbols representing a range of relative scores.
- 9. The method of claim 5, wherein the visual indicia comprises a color associated with a cell of the electronic program guide that corresponds to the program.
- 10. The method of claim 1, wherein the act of computing the relative scores comprises dividing an individual program score by the highest score for any of the programs.
- 11. The method of claim 1 further comprising receiving input from one or more users and using the input to determine the visual indicia to displayed.
- 12. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 1.
- 13. A client device comprising:
computer-readable media; instructions on the computer-readable media; one or more processors capable of executing the instructions on the computer-readable media, the instructions causing the one or more processors to:
compute a program score for individual programs that are to be represented in an electronic program guide, the program scores being computed as a function of metadata that describes the programs and user preferences; compute, from the program scores, a relative score for individual programs, the relative scores providing a measure of how well a particular program relates to the other programs that are to be represented in the electronic program guide; and display visual indicia of the relative scores of individual programs on the electronic program guide.
- 14. The client device of claim 13, wherein the instructions cause the one or more processors to display the visual indicia within a cell of the electronic program guide.
- 15. The client device of claim 13, wherein the instructions cause the one or more processors to display the visual indicia by selecting the visual indicia based upon one or more thresholds associated with the relative scores.
- 16. The client device of claim 15, wherein the visual indicia comprises one or more symbols.
- 17. The client device of claim 15, wherein the visual indicia comprises a number.
- 18. The client device of claim 15, wherein the visual indicia comprises one or more symbols, individual collections of symbols representing a range of relative scores.
- 19. The client device of claim 15, wherein the visual indicia comprises a color associated with a cell of the electronic program guide that corresponds to the program.
- 20. A method comprising:
rendering an electronic program guide having individual cells that correspond to individual programs; and rendering at least one non-textual image that is associated with at least one program within the cell that corresponds to the one program.
- 21. The method of claim 20, wherein the act of rendering said at least non-textual one image comprises rendering an image of an individual who appears in the program.
- 22. The method of claim 20, wherein the act of rendering said at least non-textual one image comprises rendering an image of a scene from the program.
- 23. The method of claim 20, wherein the act of rendering said at least non-textual one image comprises rendering an image of cover art associated with the program.
- 24. The method of claim 20, wherein the act of rendering said at least non-textual one image comprises rendering a genre-related image associated with a genre of the program.
- 25. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 20.
- 26. A client device embodying the computer-readable media of claim 25.
- 27. An electronic program guide comprising:
multiple cells individual ones of which being associated with individual programs; and at least one non-textual image visually associated with at least one of the cells, the one image being related to a program that corresponds to the one cell.
- 28. The electronic program guide of claim 27, wherein said at least one non-textual image comprises an image of an individual who appears in the program.
- 29. The electronic program guide of claim 27, wherein said at least one non-textual image comprises an image of a scene from the program.
- 30. The electronic program guide of claim 27, wherein said at least one non-textual image comprises an image of cover art associated with the program.
- 31. The electronic program guide of claim 27, wherein said at least one non-textual image comprises a genre-related image associated with a genre of the program.
- 32. The electronic program guide of claim 27, wherein said at least one non-textual image comprises one or more of: an individual who appears in the program, a scene from the program, cover art associated with the program, a genre-related image associated with a genre of the program.
- 33. A client device embodying the electronic program guide of claim 27.
- 34. A method comprising:
determining one or more channels that comprise a user's favorite channels; and rendering an electronic program guide that contains entries for the determined favorite channels.
- 35. The method of claim 34, wherein the act of rendering comprises displaying only the favorite channels.
- 36. The method of claim 34, wherein the act of determining the one or more channels comprises receiving user input that indicates which channels are the user's favorites.
- 37. The method of claim 34, wherein the act of determining comprises determining the favorite channels without requiring the user to input their channel favorites.
- 38. The method of claim 34, wherein the act of determining comprises determining the favorite channels by analyzing a viewing log associated with a device on which the user views programs.
- 39. The method of claim 34, wherein the act of determining comprises determining the favorite channels by analyzing a viewing log associated with a device on which the user views programs to ascertain how long a user has viewed programs on a particular channel.
- 40. The method of claim 34 further comprising setting a threshold that defines the number of favorite channels a user may have, the rendering of the electronic program guide comprising rendering an electronic guide that contains entries does not exceed, in number, the threshold.
- 41. One or more computer readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to:
determine one or more channels that comprise a user's favorite channels; and render an electronic program guide that contains entries for the determined favorite channels.
- 42. The computer readable media of claim 41, wherein the instructions cause the one or more processors to render an electronic program guide that displays only the favorite channels.
- 43. The computer readable media of claim 41, wherein the instructions cause the one or more processors to determine the one or more channels by receiving user input that indicates which channels are the user's favorites.
- 44. The computer readable media of claim 41, wherein the instructions cause the one or more processors to determine the favorite channels without requiring the user to input their channel favorites.
- 45. The computer readable media of claim 41, wherein the instructions cause the one or more processors to determine the favorite channels by analyzing a viewing log associated with a device on which the user views programs.
- 46. The computer readable media of claim 41, wherein the instructions cause the one or more processors to determine the favorite channels by analyzing a viewing log associated with a device on which the user views programs to ascertain how long a user has viewed programs on a particular channel.
- 47. A method comprising:
determining one or more channels that comprise a user's favorite channels by evaluating individual programs that are broadcast on the one or more channels; and rendering an electronic program guide that contains entries for the determined favorite channels.
- 48. The method of claim 47, wherein the act of evaluating individual programs comprises calculating a score for the individual programs.
- 49. The method of claim 47, wherein the act of evaluating individual programs comprises calculating a score for the individual programs on a channel as a function of a user's preferences.
- 50. The method of claim 47, wherein the act of evaluating individual programs comprises calculating a score for all of the individual programs on every channel.
- 51. The method of claim 47, wherein the act of evaluating individual programs comprises calculating a score for all of the individual programs on every channel as a function of a user's preferences.
- 52. The method of claim 47, wherein the act of evaluating individual programs comprises:
calculating a score for individual programs appearing on multiple channels; and for each channel having programs for which a score was calculated, calculating an average program score.
- 53. The method of claim 52, the act of rendering comprises rendering an electronic program guide that contains only those channels that are determined to be a user's favorites.
- 54. The method of claim 52 further comprising setting a threshold that defines the number of favorite channels a user may have, the rendering of the electronic program guide comprising rendering an electronic guide that contains entries that do not exceed, in number, the threshold.
- 55. A client device programmed to implement the method of claim 47.
- 56. One or more computer readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to:
determine one or more channels that comprise a user's favorite channels by evaluating individual programs that are broadcast on the one or more channels, said evaluating comprising calculating a score for all of the individual programs on every channel as a function of a user's preferences; and render an electronic program guide that contains only entries for the determined favorite channels.
- 57. A client device embodying the computer readable media of claim 56.
- 58. A method comprising:
determining one or more channels that comprise favorite channels of one or more users by evaluating individual programs that are to appear in an electronic program guide in relation to preferences that are specified for the one or more users; and rendering an electronic program guide that contains only entries for the channels that are determined to be favorite channels.
- 59. The method of claim 58, wherein the act of evaluating individual programs comprises calculating, for each user, a score for the individual programs.
- 60. The method of claim 58, wherein the act of evaluating individual programs comprises calculating, for each user, a score for all of the individual programs on every channel.
- 61. The method of claim 58, wherein the act of evaluating individual programs comprises:
calculating, for each user, a score for individual programs appearing on multiple channels; for each channel having programs for which a score was calculated and for each user, calculating an average program score; and rendering an electronic program guide that contains entries for a defined number of channels having the highest average program scores.
- 62. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 58.
- 63. A client device embodying the computer-readable media of claim 62.
- 64. An electronic program guide comprising:
a display having entries associated with one or more channels, each channel entry having multiple cells individual ones of which being associated with individual programs; and the display comprising only entries for channels that have been determined to be favorite channels.
- 65. The electronic program guide of claim 64, wherein channels have been determined to be favorite channels through a score-based evaluation of individual programs appearing on each channel.
- 66. The electronic program guide of claim 64, wherein channels have been determined to be favorite channels through a score-based evaluation of individual programs appearing on each channel, the score-based evaluation first determining, for multiple channels, a score for each channel's programs; computing, for each channel, an average program score; and then determining one or more favorite channels based on the highest average program scores for the channels.
- 67. The electronic program guide of claim 64, wherein channels have been determined to be favorite channels of one or more users through a score-based evaluation of individual programs appearing on each channel.
- 68. The electronic program guide of claim 64, wherein channels have been determined to be favorite channels of one or more users through a score-based evaluation of individual programs appearing on each channel, the score-based evaluation comprising a score-based evaluation of the programs in relation to user preferences associated with one or more of the users.
- 69. A client device embodying the electronic program guide of claim 64.
- 70. A method comprising:
receiving user input that rates one or more programs that appear in an electronic program guide; and rendering an electronic program guide that incorporates the user's input.
- 71. The method of claim 70, wherein the act of rendering comprises providing visual indicia that represents the user's rating.
- 72. The method of claim 70, wherein the act of rendering comprises excluding, from the electronic program guide, one or more programs that were not favorably rated by the user.
- 73. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 70.
- 74. A client device embodying the computer-readable media of claim 73.
- 75. A method comprising:
receiving user input that defines a scoring range that can be used to assess whether or not to include a particular program in an electronic program guide; processing scores associated with individual programs to ascertain whether the programs have scores within the user-defined scoring range; and rendering an electronic program guide that presents visual indicia for programs whose scores are within the user-defined scoring range.
- 76. The method of claim 75, wherein the act of receiving is performed via a user interface slider that is configured to enable a user to define the scoring range.
- 77. The method of claim 75, wherein the act of receiving is performed via a user interface slider that is configured to enable a user to define the scoring range, the slider having one or more of an adjustable maximum position and an adjustable minimum position.
- 78. The method of claim 75, wherein the act of processing the scores comprises processing relative scores associated with the programs, the relative scores providing a measure of how programs relate to other programs that can appear in the electronic program guide.
- 79. The method of claim 75, wherein the act of rendering comprising rendering an electronic program guide that contains only visual indicia for programs whose scores are within the user-defined scoring range.
- 80. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 75.
- 81. A client device embodying the computer-readable media of claim 80.
- 82. A system comprising:
an electronic program guide application that is configured to render an electronic program guide having multiple entries that provide information on various programs; and a user input mechanism associated with the electronic program guide application and configured to enable a user to reduce the number of program entries in the electronic program guide.
- 83. The system of claim 82, wherein the user input mechanism comprises a rating mechanism by which a user can rate programs.
- 84. The system of claim 82, wherein the user input mechanism comprises a user interface component.
- 85. The system of claim 82, wherein the user input mechanism comprises a user interface component, the user interface component being configured to enable a user to define a scoring range that can be used to assess whether or not to include a particular program in the electronic program guide.
- 86. The system of claim 82, wherein the user input mechanism comprises a user interface component, the user interface component being configured to enable a user to define a scoring range that can be used to assess whether or not to include a particular program in the electronic program guide, the electronic program guide application being configured to:
process scores associated with individual programs to ascertain whether the programs have scores within the user-defined scoring range; and render an electronic program guide that presents visual indicia for programs whose scores are within the user-defined scoring range.
- 87. The system of claim 82, wherein the user input mechanism comprises a user interface component, the user interface component being configured to enable a user to define a scoring range that can be used to assess whether or not to include a particular program in the electronic program guide, the user interface component comprising a slider.
- 88. The system of claim 82, wherein the user input mechanism comprises a user interface component, the user interface component being configured to enable a user to define a scoring range that can be used to assess whether or not to include a particular program in the electronic program guide, the user interface component comprising a slider having one or more of an adjustable maximum position and an adjustable minimum position.
- 89. The system of claim 82, wherein the user input mechanism comprises one or more filters that can be selected by a user for filtering one or more program attributes.
- 90. The system of claim 82, wherein the user input mechanism comprises one or more filters that can be selected by a user for filtering one or more program attributes, the electronic program guide application being configured to cumulatively apply multiple filters to the programs' attributes.
- 91. A method comprising:
receiving user input that specifies one or more filters that are to be used to filter programs from an electronic program guide; using the one or more filters to filter one or more programs from programs that are to be represented in an electronic program guide; and rendering an electronic program guide that presents visual indicia associated with programs that have not been filtered.
- 92. The method of claim 91, wherein the filters are configured to filter on program attributes associated with the programs.
- 93. The method of claim 91, wherein the filters are configured to filter on program attributes associated with the programs, the program attributes being specified by a content description schema.
- 94. The method of claim 91, wherein the filters are configured to filter on program attributes associated with the programs, the program attributes being specified by an XML content description schema.
- 95. The method of claim 91, wherein the act of using the filters comprises cumulatively applying the filters to filter the one or more programs.
- 96. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 91.
- 97. A client device embodying the computer-readable media of claim 96.
- 98. A method comprising:
determining one or more programs for recommendation to a user based on program scores associated with individual programs; and rendering a display that contains one or more recommended programs.
- 99. The method of claim 98 further comprising prior to determining the one or more programs, computing program scores for the individual programs.
- 100. The method of claim 98 further comprising prior to determining the one or more programs, computing program scores for the individual programs as a function of user-defined preferences.
- 101. The method of claim 98, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs.
- 102. The method of claim 98, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a score-based rank.
- 103. The method of claim 98, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a numerical score.
- 104. The method of claim 98, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a score-based rank and a numerical score.
- 105. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 98.
- 106. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 98; and a client device embodying the one or more computer-readable media.
- 107. A method comprising:
determining one or more programs for recommendation to a user based on program scores associated with individual programs; rendering a display that contains one or more recommended programs; receiving user input that indicates one or more programs to record for future viewing; and recording the one or more programs.
- 108. The method of claim 107 further comprising prior to determining the one or more programs, computing program scores for the individual programs.
- 109. The method of claim 107 further comprising prior to determining the one or more programs, computing program scores for the individual programs as a function of user-defined preferences.
- 110. The method of claim 107, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs.
- 111. The method of claim 107, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a score-based rank.
- 112. The method of claim 107, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a numerical score.
- 113. The method of claim 107, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a score-based rank and a numerical score.
- 114. The method of claim 107 further comprising determining whether any programs selected by the user for recording conflict and, if so, resolving the conflict by ascertaining other recordable instances of one or more of the programs that do not conflict.
- 115. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 107.
- 116. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 107; and
a client device embodying the one or more computer-readable media.
- 117. A method comprising:
determining whether a user has recently viewed a particular program that is to be represented in an electronic program guide; and rendering an electronic program guide that presents visual indicia that indicates programs that have been recently viewed by the user.
- 118. The method of claim 117, wherein the visual indicia comprises one or more symbols.
- 119. The method of claim 117, wherein the visual indicia comprises a number.
- 120. The method of claim 117, wherein the visual indicia comprises a color associated with a cell of the electronic program guide that corresponds to the program.
- 121. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 117.
- 122. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 117; and
a client device embodying the one or more computer-readable media.
- 123. A method comprising:
determining whether a user has recently viewed a particular program that can be represented in an electronic program guide; and rendering an electronic program guide that does not contain an entry for at least one program that has been recently viewed by the user.
- 124. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 123.
- 125. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 123; and a client device embodying the one or more computer-readable media.
- 126. A method comprising:
determining one or more programs for recommendation to a user based on program scores associated with individual programs; determining whether the user has recently viewed a particular program that is to be recommended; rendering a display that contains one or more recommended programs; if the user has recently viewed a particular program that is to be recommended, rendering said display to not contain any recommendations for programs that have been recently viewed.
- 127. The method of claim 126 further comprising prior to determining the one or more programs for recommendation, computing program scores for the individual programs.
- 128. The method of claim 126 further comprising prior to determining the one or more programs for recommendation, computing program scores for the individual programs as a function of user-defined preferences.
- 129. The method of claim 126, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs.
- 130. The method of claim 126, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a score-based rank.
- 131. The method of claim 126, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a numerical score.
- 132. The method of claim 126, wherein the act of rendering the display comprises rendering a display that contains information associated with the programs and, for at least some of the programs, images associated with the programs, the information associated with the programs comprising a score-based rank and a numerical score.
- 133. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 126.
- 134. One or more computer-readable media having computer-readable instructions thereon which, when executed by one or more processors, cause the one or more processors to implement the method of claim 126; and
a client device embodying the one or more computer-readable media.
RELATED APPLICATIONS
[0001] This application is related to the following U.S. Patent Applications, the disclosures of which are incorporated by reference herein:
[0002] application Ser. No. 10/125,260, filed Apr. 16, 2002, entitled “Media Content Descriptions” and naming Dave Marsh as inventor;
[0003] application Ser. No. 10/125,259, filed Apr. 16, 2002, entitled “Describing Media Content in Terms of Degrees” and naming Dave Marsh as inventor;
[0004] application Ser. No. ______, bearing Attorney Docket No. ms1-1088, filed May 11, 2002, entitled “Scoring And Recommending Media Content Based On User Preferences”, and naming Dave Marsh as inventor;
[0005] application Ser. No. ______, bearing Attorney Docket No. ms1-1175, filed May 31, 2002, entitled “Entering Programming Preferences While Browsing An Electronic Programming Guide”, and naming Dave Marsh as inventor; and
[0006] application Ser. No. ______, bearing Attorney Docket No. ms1-1186, filed Jun. 6, 2002, entitled “Methods and Systems for Generating Electronic Program Guides”, and naming Dave Marsh as inventor.