US20130139111A1 - Personalized content management - Google Patents
Personalized content management Download PDFInfo
- Publication number
- US20130139111A1 US20130139111A1 US13/479,744 US201213479744A US2013139111A1 US 20130139111 A1 US20130139111 A1 US 20130139111A1 US 201213479744 A US201213479744 A US 201213479744A US 2013139111 A1 US2013139111 A1 US 2013139111A1
- Authority
- US
- United States
- Prior art keywords
- content
- user
- program
- category
- source
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
- H04N21/4314—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44209—Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
- H04N21/4532—Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/475—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
- H04N21/4755—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for defining user preferences, e.g. favourite actors or genre
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4828—End-user interface for program selection for searching program descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/163—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S715/00—Data processing: presentation processing of document, operator interface processing, and screen saver display processing
- Y10S715/961—Operator interface with visual structure or function dictated by intended use
- Y10S715/965—Operator interface with visual structure or function dictated by intended use for process control and configuration
- Y10S715/97—Instrumentation and component modelling, e.g. interactive control panel
Definitions
- the present invention is related to multimedia content delivery systems, and more particularly to systems that personalize or customize content.
- bandwidth capacity available to consumers for receiving content from the Internet and other networks has increased ten-fold and more.
- the increased bandwidth capacity has enabled consumers to download larger and larger files and other content, including rich media and multimedia content such as video clips, songs and movies.
- This increased bandwidth capacity has increased Internet usage and the potential for enjoyable and productive usage.
- An advantage of the present invention is that it overcomes the disadvantages and shortcomings of the prior art. Another advantage of the present invention is that it provides a personalized content manager, whereby a user can personalize multimedia content received from a multimedia content delivery system. Another advantage of the present invention is that it provides an easy to use, customizable interface for viewing, listening or otherwise accessing (collectively referred to as “viewing”) multimedia content.
- a personalized content management interface comprising a dynamic graphical user interface (“GUI”).
- GUI dynamic graphical user interface
- the dynamic GUI comprises one or more category buttons capable of being selected, one or more source buttons, including a source button for real-time stream, capable of being selected, and a content list.
- Each category button represents a category of content that may be accessed by a user.
- each source button represents a source of content that may be accessed by a user.
- One category button and one source button are selected and the content list includes any content, if any, that is within the category of content represented by the selected category button and that is provided by the source of content represented by the selected source button.
- the method comprises the steps of displaying a personalized content management interface, selecting one or more category buttons, selecting one or more source buttons, wherein the source buttons include a multicast stream button, and generating a list of content that comprises content titles for content that is within the category of content represented by the selected category button and that is provided by the source of content represented by the selected source button.
- a client that has a bandwidth capacity, comprising a user machine, that includes a processor, a display, and a memory.
- the memory includes client software with a personal content manager module containing instructions for generating a dynamic graphical user interface (“GUI”), that is displayed on the display.
- GUI dynamic graphical user interface
- the dynamic GUI comprises one or more category buttons capable of being selected, wherein the category button(s) represents a category of content that may be accessed by a user, one or more source buttons, including a source button for real-time stream, capable of being selected, wherein the source button(s) represents a source of content that may be accessed by a user, and a content list, wherein one category button and one source button are selected and the content list includes any content, if any, that is within the category of content represented by the selected category button, that is provided by the source of content represented by the selected source button and that has a bandwidth that is less than or equal to the client bandwidth capacity.
- a system for providing broadband content that comprises a signal origination point that originates broadband content, a transmission medium that receives and transmits the broadband content transmitted from the signal origination point, a service provider that received the transmitted broadband content, and the client described above, wherein the client received the transmitted broadband content from the service provider, also achieves these and other advantages of the present invention.
- a method of personalized content management comprises the steps of receiving input regarding the filtering of broadband content, filtering the broadband content with one or more content categories based on the filtering input, filtering the content with one or more of a plurality of content sources based on the filtering input, and generating a personalized content management interface screen that includes a list of titles of the filtered content.
- a computer-readable medium containing instructions for performing the above-described method and a user machine comprising a processor and a memory containing instructions, for execution by the processor, for performing the above-described method, also achieve these and other advantages of the present invention.
- FIG. 1 is a block diagram illustrating a broadband content delivery system.
- FIG. 2 is a flowchart illustrating a method of bandwidth testing.
- FIGS. 3 a and 3 b are block diagrams illustrating exemplary components of the broadband content delivery system.
- FIG. 4 is an illustration of an exemplary program nugget.
- FIGS. 5-7 are illustrations of exemplary personal content management interface screens.
- FIGS. 8-13 are flowcharts illustrating exemplary methods of personal content management.
- FIG. 1 illustrates a broadband content delivery system 10 with which the present invention may be used.
- a personalized content manager (not shown in FIG. 1 ) is used to manage the broadband content delivered by the broadband content delivery system 10 .
- the illustrative broadband content delivery system 10 comprises a signal origination point 12 , a transmission medium 14 (e.g., a satellite), one or more service providers 16 , and one or more clients 18 .
- the client 18 typically includes a user machine (e.g., a PC) that includes resident client software.
- the client software enables access to the broadband content, supports the broadband content delivery system 10 and provides the personalized content manager and the personalized content management interface.
- high bandwidth content 20 (e.g., video, audio and web data) is transmitted from a signal origination point 12 such as a Network Operations Center (“NOC”) on high-resolution (“high rez”) virtual channels 22 .
- the transmission medium 14 is satellite, ether and/or landline, or a combination thereof.
- the content 20 is received by a service provider 16 , typically an edge-of-net broadband Internet service provider (“ISP”) and transmitted over a broadband medium 24 , such as DSL or coaxial cable, to a client 18 .
- ISP edge-of-net broadband Internet service provider
- Two-way communications between the client 18 and the NOC 12 are maintained over the Internet 26 .
- the broadband content delivery system 10 In addition to transmitting the content on virtual channels 22 , the broadband content delivery system 10 also transmits a control channel that is received by the client 18 .
- the control channel contains information and instructions that help enable the client 18 to access and control the content 20 provided by the broadband content delivery system 10 .
- the control channel is used to issue commands or directives to the client 18 . These commands or directives may result in feedback or a report back from the client 18 to the NOC 12 via the Internet.
- the control channel is used to deliver program descriptors or “program nuggets”, which are discussed in detail below.
- the broadband content delivery system 10 provides low bandwidth content 20 on low-resolution (“low rez”) virtual channels 22 (e.g., approximately 200 Kbps) or other communications bandwidth to accommodate these clients. Consequently, when a client 18 signs-on, the broadband content delivery system 10 preferably conducts a bandwidth test to measure client's 18 bandwidth capability (“available bandwidth”). Usually, the available bandwidth is calculated as the maximum bandwidth content that the client 18 can consistently receive.
- an exemplary method 30 of bandwidth testing comprises: client software links 32 to a local system Point of Presence (POP) server at the ISP, via a TCP/IP point to point connection; the POP server transmits 34 a fixed volume of data to the client; the client software records 36 the time required to receive this data; during transmission of the fixed volume of data, the client software calculates 38 a point sample of throughput; and, the preceding are repeated 39 until the results are consistent within a certain constant window of time (e.g., when the results are within a 5% range). In this example the amount of data divided by the time required to receive the data determines the client's 18 available bandwidth. Alternatively, the bandwidth test may be run with the POP server transmitting varying volumes of data to the client 18 to determine if the results change for these different values.
- POP Point of Presence
- content 20 may be transmitted or broadcast by the NOC 12 on the virtual channels 22 as real-time multicast or unicast streams.
- a multicast stream comprises streaming content that is directed to and available to multiple clients 18 .
- a unicast stream comprises streaming content that is directed to and available to one client 18 .
- additional content 20 may be provided by third-parties as on-demand broadband content selected from the Internet (“edge-of-net”) by a user at the client 18 .
- an ISP 16 may provide the edge-of-net content.
- the user may store selected content, such as portions of the real-time multicast or unicast streams in a local cache at the client 18 . This stored or personal content 28 may be kept on a user machine hard-drive or other storage medium.
- FIGS. 3 a and 3 b are block diagrams illustrating exemplary hardware components of the broadband content delivery system 10 that may be used for implementing the personalized content manager.
- FIG. 3 a includes the client 18 , comprising a user machine 40 connected with a network such as the Internet 26 , providing network connections to the NOC 12 and the ISP 16 .
- the user machine 40 includes the client software 43 that the user has downloaded from an ISP 16 or portal or otherwise obtained (e.g., by loading from a CD-ROM or magnetic disk or by being pre-installed on the user machine 40 ).
- the client software 43 supports the broadband content delivery system 10 and is executed to run the personalized content manager (“PCM”) 45 .
- the personalized content manager 45 is a module of the client software 43 .
- Other clients 18 such as client 19 may also be connected with network and may include the same components as client 18 .
- the user machine 40 illustrates typical components of a user machine.
- the user machine 40 typically includes a memory 42 , a secondary storage device 44 , a processor 46 , an input device 48 , a display device 50 , and an output device 52 .
- Memory 42 may include random access memory (RAM) or similar types of memory, and it may store one or more applications 44 , including client software 43 , and a web browser 56 , for execution by processor 46 .
- the secondary storage device 44 may include a hard disk drive, floppy disk drive, CD-ROM drive, or other types of non-volatile data storage.
- the local cache that includes a user's personal content 28 , and a user's personal profile, may be stored on the secondary storage device 44 .
- the processor 46 may execute client software 43 (including the personalized content management interface 45 ) and other applications 44 stored in memory 42 or secondary storage 50 , or received from the Internet or other network 60 .
- the processor 46 may execute client software 43 in order to provide the functions described in this specification including the personalized content management interface screens and personal content manager 45 functions described below.
- the input device 48 may include any device for entering information into the user machine 40 , such as a keyboard, mouse, cursor-control device, touch-screen, infrared, microphone, digital camera, video recorder or camcorder.
- the display device 50 may include any type of device for presenting visual information such as, for example, a computer monitor or flat-screen display.
- the output device 52 may include any type of device for presenting a hard copy of information, such as a printer, and other types of output devices include speakers or any device for providing information in audio form.
- the web browser 56 is used to access the personalized content manager 45 and display the personalized content management interface screens, through which the user can manage the broadband content broadcast by the broadband content delivery system 10 , as described below.
- the web browser 56 also is used to access the NOC 12 and ISP 16 .
- Examples of web browsers 56 include the Netscape Navigator program and the Microsoft Internet Explorer program. Any web browser, co-browser, or other application capable of retrieving content from a network and displaying pages or screens may be used.
- Examples of user machines 40 for interacting within the broadband content delivery system 10 include personal computers, laptop computers, notebook computers, palm top computers, network computers, Internet appliances, or any processor-controlled device capable of executing a web browser 56 or other type of application for interacting with the broadband content delivery system 10 .
- FIG. 3 b illustrates typical hardware components of a server 58 at the NOC 12 .
- a server 58 at an ISP 16 such as the local system POP server referred to in FIG. 2 above, may have similar hardware components.
- the server 58 typically includes a memory 60 , a secondary storage device 62 , a processor 64 , an input device 66 , a display device 68 , and an output device 70 .
- the memory 60 may include RANI or similar types of memory, and it may store one or more applications 64 for execution by processor 64 .
- the secondary storage device 62 may include a hard disk drive, floppy disk drive, CD-ROM drive, or other types of non-volatile data storage.
- the processor 64 executes application(s) 64 , which are stored in memory 60 or secondary storage 74 , or received from the Internet 26 or other network.
- the input device 66 may include any device for entering information into server 58 , such as a keyboard, mouse, cursor-control device, touch-screen, infrared, microphone, digital camera, video recorder or camcorder.
- the display device 68 may include any type of device for presenting visual information such as, for example, a computer monitor or flat-screen display.
- the output device 70 may include any type of device for presenting a hard copy of information, such as a printer, and other types of output devices include speakers or any device for providing information in audio form.
- the server 58 may store a database structure in secondary storage 74 , for example, for storing and maintaining information regarding the broadband content delivery system 10 and the clients. For example, it may maintain a relational, object-oriented, or other database for storing information concerning client 18 users, the access rights of the users, their account status and/or a user personal profile.
- processor 46 may execute one or more software applications 54 (or 72 ), such as client software 43 , in order to provide the personalized content manager 45 , the personalized content management interface screens, and other functions described in this specification.
- the processing may be implemented in software, such as software modules, for execution by computers or other machines.
- the personal content manager 45 is a module or component of the client software 43 .
- the processing by processor 46 (and/or processor 64 ) may provide and support pages, windows and menus (collectively, “screens”) described in this specification and otherwise for display on display devices associated with the client 18 .
- screen refers to any visual element or combinations of visual elements for displaying information or forms; examples include, but are not limited to, graphical user interfaces on a display device or information displayed in web pages or in pop-up windows/menus on a display device.
- the screens may be formatted, for example, as web pages in HyperText Markup Language (HTML), Extensible Markup Language (XML) or in any other suitable form for presentation on a display device depending upon applications used by users to interact with the broadband content delivery system 10 .
- HTML HyperText Markup Language
- XML Extensible Markup Language
- buttons are selected, for example, to enter information or commands or to retrieve information or access other screens. The selection may occur, for example, by using a cursor-control device to “click on” or “double click on” the button; alternatively, buttons may be selected by entering a series of keystrokes or in other ways such as through voice commands or use of a touch screen.
- buttons described below illustrate a particular arrangement and number of buttons in each screen, other arrangements are possible and different numbers of buttons in the screens may be used to accomplish the same or similar functions of displaying information and receiving information or commands. Also, the same button may be used for performing a number of functions, such as both displaying information and receiving a command.
- broadband content delivery system 10 may use multiple servers 59 as necessary or desired to support the users and may also use back-up or redundant servers to prevent network downtime in the event of a failure of a particular server.
- the user machine 40 and server 58 are depicted with various components, one skilled in the art will appreciate that the user machine 40 and the server 58 can contain additional or different components.
- aspects of an implementation consistent with the present invention are described as being stored in memory, one skilled in the art will appreciate that these aspects can also be stored on or read from other types of computer program products or computer-readable media, such as secondary storage devices, including hard disks, floppy disks, or CD-ROM; a carrier wave from the Internet or other network; or other forms of RAM or ROM.
- the computer-readable media may include instructions for controlling a computer system, such as user machine 40 and server 58 , to perform a particular method or implementation.
- the content 20 whether broadcast as a real-time stream on a virtual channel or provided by a third-party as edge-of net content, comprises chunks of content called programs.
- each program that is broadcast as a real-time stream on a virtual channel 22 has a corresponding program nugget 74 .
- program nuggets 74 are preferably broadcast or communicated on the control channel.
- the NOC 12 usually transmits the program nugget 74 at some time preceding the broadcast of the corresponding program.
- the personalized content manager 45 preferably uses program nuggets 74 , and the data contained therein, to manage the content 20 as described below.
- An example program nugget 74 is seen in FIG. 4 .
- the program nugget 74 shown includes various information and data related to a corresponding program.
- this information and data may comprise a program title 76 , a program description 78 , a rating 80 , a program classification 82 , a program category name 84 , program sub-category names 86 , a thumbnail display 88 or link to thumbnail display, a link 90 to a video trailer, a local cache path 92 , a local cache filename 94 , schedule information 96 , pay-per-view information 98 , a program ID 100 , a source IP address 102 , a source TCP Port 104 , a bitrate 106 and an expiry date 108 for the program.
- Other data and information may be included in the program nugget 74 .
- the program nugget 74 is usually written in Extensible Markup Language (“XML”) format, although other formats or languages may be used. If the program nugget 74 is written in XML, the information and data from the program nugget 74 may be easily used to generate or incorporated in a dynamic hyper-text markup language (“DHTML”) screen.
- XML Extensible Markup Language
- the program nugget 74 is stored at the client 18 on the user machine's 40 secondary storage device 44 . Program nuggets 74 will usually remain stored at the client 18 at least until the corresponding program is viewed. Consequently, program nuggets 74 corresponding to personal content 28 that the user has saved in the local cache will be available when the user chooses to examine or view the personal content. Alternatively, program nuggets 74 can be re-transmitted or requested at a later time.
- an example of the program description 78 is a textual description of the program.
- the rating 80 indicates the appropriate viewer-ship of the program and may use the MPAA standards.
- the program classification 82 provides the type of program (e.g., professional baseball game, horror movie, rock music, historical documentary, etcetera) and the general category of the program. For example, a number may indicate the program classification 82 . Specific ranges of numbers may indicate a general category (e.g., 1400-1499 may indicate sports programs). A sub-range of numbers within the general category range may indicate a sub-category (e.g., 1400-1405 may indicate baseball programs). Likewise, a specific number may indicate a specific type of program (e.g.
- Program classification 82 may also be indicated by other classifications systems, such as combinations of letters, letters and numbers or any similar system.
- the program category name 84 indicates the general category (e.g., sports) of the program, while the sub-category names 86 indicate sub-categories (e.g., race, Formula 1) of the program.
- the thumbnail 88 is usually a video or audio clip of the program.
- the thumbnail 88 may be a single still screen shot from a program. Likewise, it may be a few seconds of audio from the program or a longer portion of audio from the program. Thumbnails 88 may be provided for all types of content, whether movies, music, information or other types of content.
- the link 90 to a video trailer provides a link to a short (e.g., three minutes) motion video trailer or preview of the program.
- the video trailer may be broadcast on a virtual channel and/or stored on the user machine's 40 secondary storage device 44 .
- the links to the thumbnail and video trailer preferably identify the name and paths of files comprising the thumbnail and video trailer.
- the real-time stream content may include pay-per-view content.
- the pay-per-view information 98 describes various pay-per-view options, such as one-time viewing only, multiple-viewings, storing in the local cache, a specific time-period for viewing (e.g., a day, week, month, season or year), and includes the pricing for these options.
- the real-time stream content may exclude content that expires. For example, if the user has only paid for one-month of viewing a program, that program will expire one-month after it is purchased. Other programs, which are available for purchase or simply for storing at no cost, preferably expire on a certain date.
- the expiration date 108 is the date on which the content expires.
- the program ID 100 is a number that identifies the program.
- the program nuggets 74 also contain source data indicating the source of the corresponding program. For example, if a program is a real-time stream program or an edge-of-net program, the source data of the corresponding program nugget 74 will so indicate with the source IP address 102 and the source TCP port 104 . If a real-time stream program is stored as personal content 28 in the local cache, the source data of the corresponding program nugget 74 will be modified to reflect that the local cache is the source of the program. For example, the program nugget 74 may include the local cache path 92 and local cache filename if the content is stored in the local cache. The program nuggets 74 may also include bandwidth information (e.g., the bitrate 106 ) that is used with the bandwidth capability to determine a client's 18 ability to receive the particular content.
- bandwidth information e.g., the bitrate 106
- the NOC 12 may also transmit program nuggets 74 for edge-of-net content.
- a program nugget 74 for an edge-of-net program will usually be transmitted at some time preceding the broadcast or availability of the corresponding edge-of-net program.
- the program nuggets 74 for edge-of-net programs may have information and data similar to that discussed above for real-time stream programs.
- the third-parties that broadcast the edge-of net content preferably provide this information and data to the NOC 12 (or local system POP server) for incorporation in a program nugget 74 .
- the broadband content delivery system 10 provides a personalized content management interface 45 for its users.
- the personalized content manager 45 provides personalized content management screens and enables the user to manage the content provided by the multiple sources described above.
- the user can manage the content 20 from real-time streams, the edge-of-net and the local cache or subset of this content (collectively, hereinafter referred to as content 20 ).
- the program nuggets 74 specifically the program classifications 82 , program category names 84 and sub-category names 86 in the program nuggets 74 , facilitate the organization and sorting of the content into various categories.
- the source data (e.g., source IP address 102 , source TCP port 104 , local cache path 92 and local cache filename 94 ) facilitates the organization and sorting of the content 20 by the multiple sources (real-time stream, edge-of-net and local cache).
- this data from the program nuggets 74 enables the presentation of content 20 sorted by category and source.
- FIG. 5 illustrates an embodiment of a personalized content management interface screen 110 .
- the personalized content manager 45 is preferably a module of the client software 43 .
- the personalized content manager 45 module is executed (e.g., by processor 46 ), it generates the personalized content management screen 110 shown in FIG. 5 , and other embodiments of the screen 110 discussed herein.
- the personalized content management interface screen 110 preferably comprises a dynamic graphical user interface (GUI), as illustrated by the screen in FIG. 5 .
- the dynamic GUI 110 presents the above-described content 20 sorted by category and source.
- the dynamic GUI 110 is usually a dynamic hyper-text markup language (DHTML) screen, although other formats and languages may be used.
- the dynamic GUI 110 is preferably displayed on the user machine's 40 display device 50 and may be accessed and controlled with a cursor controlled by the input device 48 (e.g., a cursor-control device, such as a mouse).
- the dynamic GUI 110 comprises an “available now” menu 112 which lists program titles 76 of content that is available for immediate viewing based on the users selection of one or more category buttons 114 (e.g., news, business, finance, sports, music, video, technology, computers, lifestyles and arts) from a list of categories and one or more source buttons 116 (e.g., cache, edge-of-net and live (i.e., real-time streams)) from a list of sources.
- the category names for the category buttons 114 are preferably taken from program category names 84 of available program nuggets 74 .
- the available now menu 112 further comprises an “all” button 118 that may be highlighted to select all categories.
- the available now menu 112 displays program titles 76 of all content available from the selected source buttons 116 .
- the available now menu 112 comprises an up arrow 120 and a down arrow 122 which are selected to scroll through the list of categories 124 , and an “Up” button 126 which may be highlighted to immediately return to the top of the category list 124 .
- the available now menu 112 comprises a “search” button 128 that is clicked in order to display the content from the highlighted/selected categories 114 and sources 116 .
- the user may choose to view available content from specific categories by clicking on the categories' buttons 114 with the cursor, which will highlight the specific categories on the available now menu 112 .
- the user may select any combination of one or more of the available sources by clicking on the source buttons 116 .
- the categories 114 and sources 116 selected may be toggled and more or less may be selected at any time. With category button(s) 114 and source button(s) 116 highlighted, clicking on the search button 128 will cause the dynamic GUI 110 to display a list of program titles 76 of content available in the selected category(ies) from the source(s) selected. Referring to FIG.
- the user may wish to see news, business, finance, sports and computers content from the edge of net and live (i.e., real-time stream) sources.
- the search button 128 is clicked, all content available from these categories and these sources is listed, by title and source, on the dynamic GUI 110 .
- the DHTML screen comprising this list may be built by extracting information (e.g., program titles 76 and source data) from the program nugget 74 XML files or through other similar means.
- the user's selection of categories and sources are the criteria that the personalized content manager 45 utilizes as a filter to determine which titles 76 from which sources to display on the dynamic GUI 110 .
- the personalized content manager 45 compares the categories selected with the program classifications 82 and/or program category names 84 contained in the program nuggets 74 for the available content. If there is a match, then the matched content is filtered for further comparison with the user-selected sources. If there is no match, the content is filtered out. All the matched content is filtered by the selected sources.
- the source data (e.g., source IP address 102 , source TCP port 104 , local cache path 92 and local cache filename 94 ) contained in the program nuggets 74 is compared to the selected sources, and if there is a match, the content's title is displayed on the dynamic GUI 110 . If there is no match, the content is not from a selected source and its title 76 will not be displayed.
- the categories on the dynamic GUI 110 may be classified using a numbering scheme as discussed above for the program classifications. For example, if 1400-1499 is all sports, then any content that has a program classification within this range of numbers will be filtered for further comparison with the user-selected sources. It is specifically noted that the order of filtering may be altered; for example, the content may be filtered by the selected sources and then by the selected categories.
- the All button 118 and all of the source buttons 116 are highlighted in the dynamic GUI's 110 default status so that the dynamic GUI 110 displays a list of all program titles 76 available from all the sources.
- the dynamic GUI 110 may be configured so that toggling the selected category buttons 114 and source buttons 116 will cause the dynamic GUI 110 to display program titles 76 of content from the selected categories 114 and sources 116 without necessitating the clicking of the search button 128 .
- double-clicking on a category button 114 will cause the dynamic GUI 110 to switch to a specific category menu 130 that corresponds to the double-clicked category button 114 .
- the sports category button has been double-clicked and the dynamic GUI 110 has switched to a sports category menu.
- the sports category menu, and indeed any specific category menu 130 is very similar to the normal available now menu 112 displayed in FIG. 5 .
- the primary difference is that the category list 124 has been replaced by a list of sub-category buttons 132 corresponding to sub-categories of the specific category.
- the sports category menu comprises a list of sub-category buttons including hockey, baseball, football, basketball, soccer, golf, tennis, rugby, cricket and curling.
- the sub-category names may be taken from the program sub-category names 86 in available program nuggets 74 .
- the specific category menus 30 are operated in much the same manner as the normal available now menu 112 . For example, if the user highlights the hockey, baseball and soccer category buttons 114 and the edge of net and live source buttons 116 by clicking on them and clicks the search button 128 , the titles 76 of any hockey, baseball or soccer content available from the edge of net or real-time stream will be displayed on the dynamic GUI 110 .
- each program title 76 in the displayed lists on the dynamic GUI 110 comprises hyper-text. Consequently, when a program title 76 displayed on the dynamic GUI 110 is double-clicked with the cursor or otherwise launched, the dynamic GUI 110 inserts and displays extended information about the selected program.
- This extended information preferably includes a program description and a hotlink or hyperlink that provides direct access for retrieval and display or recording (caching) of the content. Clicking on the hotlink, for example, may cause the selected program to be displayed with an overlay menu that provides the options of immediate viewing or caching.
- the extended information may also include additional characteristics of the program retrieved from the program nugget 74 XML.
- the extended information may include the program description 78 , the program classification 82 , the source, and/or the program thumbnail 88 .
- the extended information may be presented directly below the selected program title 76 in the program list or as a pop-up or drop-down window. This feature allows the user to learn more about programs before selecting them for viewing or recording. Alternatively, double-clicking on the program title 76 may cause the program to be displayed (e.g., in a screen on the display device 50 ).
- the dynamic GUI 110 also comprises a “Text Specific” data field 134 .
- the Text Specific data field 134 allows the user to further refine the displayed program list. Text strings entered into the Text Specific data field 134 may be applied against the program titles 76 , program descriptions 78 , sub-category names 86 and program types of the listed programs. The user enters a specific text string into the Text Specific data field 134 and clicks the Search button 128 , causing the personalized content manager 45 to search the above-mentioned fields of available program nuggets 74 for matches.
- the user would enter “Philadelphia Flyers” in the Text Specific data field 134 and click the Search button 128 .
- the resultant search will cause the dynamic GUI 110 to display a program list with program titles 76 of programs that had only Philadelphia Flyers® in one of the above-mentioned fields (e.g., program title 76 ), if there were any available in the content as sorted by the selected categories and sources.
- a search page or pop-up window that enables the user to conduct a word search may be accessed from a hyperlink on the dynamic GUI 110 .
- the dynamic GUI 110 comprises a “scheduled” menu 136 .
- Toggling between an “available now” button 138 and “schedule” button 140 on the dynamic GUI 110 may access the scheduled menu 136 .
- the scheduled menu 136 lists program titles 76 of content that will be broadcast live (i.e., as a real-time stream) on a virtual channel at some time in the future.
- This scheduled content may be selected by the user at any time in advance of broadcast, for automatic caching on the client 18 hard drive and later, on-demand viewing.
- the scheduled content may be selected to provide the user with a reminder when it is broadcast or to be automatically displayed at its scheduled time.
- the scheduled menu 136 comprises one or more category buttons 114 from a list of categories, up arrow 120 and down arrow 122 buttons, an All button 118 , an Up button 126 , a Search button 128 and a Text Specific data field 134 that operate as described above.
- the category buttons 114 may be double-clicked to access a category specific scheduled menu 136 .
- the scheduled menu 136 comprises a plurality of day buttons 142 and a plurality of hour buttons 144 (or other increments of time).
- the day buttons 142 may correspond to the days of the week (i.e., Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday), as shown in FIG.
- the user may select one or more day buttons 142 and, if desired, one or more hour buttons 144 to see the content available on the selected day(s) at any selected time(s) for any selected category(ies).
- the user By clicking on the desired category button(s) 114 , day button(s) 142 and hour button(s) 144 and clicking the Search button 128 , the user causes the Scheduled menu 136 to display a list of program titles 76 , including the scheduled day and time of broadcast.
- the user can click on a reminder button 146 , to schedule a reminder when the selected program is broadcast, or a cache button 148 , to schedule the caching of the selected program in the user machine's 40 secondary storage device 44 .
- the dynamic GUIs 110 discussed above may be “Smart Menus” whose selection choices are automatically sorted in order of preference according to an analysis of historical usage accrued in the user's personal profile (a.k.a., user profile).
- the broadband content delivery system 10 preferably tracks the user's viewing decisions or habits in order to create the user's personal profile.
- the program classification 78 (and/or program category name 84 and sub-category names 86 ) for each program that the user views may be recorded, thereby creating a running total of the number of programs from each general category and/or sub-category and/or of each program type that the user views.
- the user's personal profile will comprise the user's category and type preferences as determined by this running total.
- the user's personal profile will include a first program type preference for professional hockey games.
- the user's personal profile will also include a first sub-category preference of hockey and a first general category preference of sports.
- the data comprising the running total and user preferences, as well as the user profile generated from this data, may be stored in the user machine's 40 secondary storage device 44 .
- the user may proactively create and/or modify the user's personal profile.
- the user may select program type preferences from a list of program types.
- the user may select sub-category and general category preferences from lists of sub-categories and general categories.
- the user may modify its user profile by re-ordering its existing preferences. For example, if the user's first program type preference is professional baseball games and the user wants to change this first program type preference to professional football games (e.g., because it is football season), the user may select professional football games from the list of program types. Any changes to the user's personal profile made by a user are also preferably stored in the user machine's 40 secondary storage device 44 .
- the user's personal profile is preferably used to sort the program lists displayed by the dynamic GUI 110 .
- the user's personal profile preferably is applied to the program lists after the categories selected by the user on the dynamic GUI 110 are determined. For example, if the user's personal profile indicates a first program type preference for professional hockey games since the user has viewed professional hockey games 85% of the time, and the all category is selected, then any professional hockey games that are available from the sources (assuming all the sources are selected) will be displayed at the top or most prominent position of the program list.
- the first program type preference is irrelevant and inapplicable to the program list. If the remaining program type preferences of the user are also irrelevant and inapplicable to the program list (i.e., because they are for program types that are not included in the news category), the sub-category preferences of the user will be next examined. Since the user's personal profile indicates a first program type preference for professional hockey games since the user has viewed professional hockey games 85% of the time, then the hockey sub-category would be the first sub-category preference indicated by the user's personal profile. Consequently, any news programs that also fell in the hockey sub-category (e.g., a hockey news program) will be displayed at the top or most prominent position of the program list on the dynamic GUI 110 .
- the dynamic GUI 110 may include a user profile sort hyper-text (not shown). If the user profile sort hyper-text is selected, the program lists will be sorted with the user profile. If the user profile sort hyper-text is de-selected, the program lists will not be sorted with the user profile. If the program lists are not sorted with the user profile, other sorting mechanisms or methods may be used to sort the program lists. For example, the program lists may be sorted in alphabetical order or in chronological order.
- the dynamic GUIs 110 described above also do not display program titles 76 of content that the client 18 cannot receive. As discussed previously, not all clients will have the bandwidth capability to receive the high bandwidth on high rez virtual channels 22 . Consequently, the personalized content manager 45 preferably filters the content from the multiple sources with the client's 18 bandwidth capability, as determined by the process described above, to prevent the display of such content. Accordingly, the dynamic GUI 110 s, such as the available now menu 112 and schedule menu, will not display this non-receivable content.
- this non-receivable content is displayed on the dynamic GUI 110 .
- the non-receivable content is displayed in a manner than prevents the user from accessing it.
- program titles 76 for programs that the client 18 cannot receive may be displayed as normal text that cannot be clicked (e.g., non-hyper-text). These program titles 76 may also be grayed-out to indicate that the user cannot access them. Additionally, these program titles 76 may be hyper-text that is not linked with the corresponding content, therefore preventing access to the content, that may be selected so as to cause the pop-up or pull-down window with the program's characteristics to be displayed.
- These alternative dynamic GUI 110 embodiments may be used to encourage viewers to purchase additional bandwidth capacity. Advertisements selling expanding bandwidth services may be displayed when content is selected which cannot be accessed due to a client's 18 limited bandwidth.
- the method of determining the bandwidth capacity or available bandwidth described above is one example of a number of available methods.
- the available bandwidth may be requested from the ISP 16 that provides the broadband connection to the client 18 .
- This broadband ISP 16 may know the available bandwidth from previous tests or may perform their own regular tests.
- the broadband ISP 16 may know what the available bandwidth should be based on the equipment installed at the client 18 and the broadband medium used to connect to the client 18 .
- the client 18 or a NOC 12 server 58 may store historical records of the client's 18 throughput and determine the client's 18 available bandwidth from these records.
- the available bandwidth determined from any of the above methods or means may be used as a starting point for the first method described above.
- the available bandwidth may be requested from the ISP 16 , and this available bandwidth may be used as a baseline for the test illustrated in FIG. 2 . If the test shown in FIG. 2 determined a substantially different available bandwidth than that provided by the ISP 16 , the NOC 12 may re-run the test to verify the results.
- FIG. 8 is a flowchart illustrating an exemplary method 150 of personalized content management, preferably performed by the personalized content manager 45 , as described above.
- the method 150 comprises the steps of: broadband content 152 ; receiving filtering input 154 ; filtering the content with one or more content categories 156 ; filtering the content with one or more content sources 158 ; sorting the filtered content with the user profile 160 ; generating a personalized content management interface screen that includes a list of titles of the filtered and sorted content 162 ; and, determining if user filtering input is received 164 , whereby steps 156 - 164 are repeated if user filtering input is received.
- Receiving broadband content 152 preferably comprises a client 18 receiving broadband content from a plurality of sources, such as from the NOC 12 , edge-of-net content from the ISP 16 , and personal content from the local cache (e.g., on the user machine 40 ).
- the receiving step 152 preferably also comprises receiving a plurality of program nuggets 74 .
- the received program nuggets 74 may correspond to received content, future, scheduled content or available PPV content, for example.
- Receiving filtering input 154 preferably comprises the personalized content manager 45 receiving filtering input from a user and/or from default settings.
- the personalized content manager 45 will generate a personalized content management interface screen in which the content is filtered based on default settings.
- the receiving step 154 will receive the default settings, which may be set by the user and stored on the user machine's 40 secondary storage device 44 .
- the receiving step 154 will receive user filtering input such as selected source(s) buttons 116 and/or selected category button(s) 114 .
- the personalized content manager 45 will generate a personalized content management interface screen in which the content is filtered based on the user filtering input alone or in combination with default settings.
- Filtering the content with one or more content categories 156 preferably comprises the personalized content manager 45 filtering the received content based on received filtering input related to category.
- the filtering step 156 may include the personalized content manager 45 comparing user selected or default categories to program nugget category data (e.g., program classification 82 , program category names 84 , and/or program sub-category names 86 ) found in the received content's program nuggets 74 . If the user selected or default category(ies) matches the program nugget category data of certain content (e.g., a program), then the certain content is not filtered out. Oppositely, if there is no match, the certain content is filtered out.
- program nugget category data e.g., program classification 82 , program category names 84 , and/or program sub-category names 86
- Filtering the content with one or more content sources 158 preferably comprises the personalized content manager 45 filtering the received content based on received filtering input related to source.
- the filtering step 158 may include the personalized content manager 45 comparing user selected or default source(s) to program nugget source data (e.g., IP address 102 , TCP port 104 , local cache path 92 , and/or local cache filename 94 ) found in the received content's program nuggets 74 . If the user selected or default source(s) matches the program nugget source data of certain content (e.g., a program), then the certain content is not filtered out. Oppositely, if there is no match, the certain content is filtered out.
- the order in which the filter steps 156 and 158 are executed is variable.
- Sorting the content with the user profile 160 preferable comprises the personalized content manager 45 sorting the received content based on the user's personal profile.
- the client software 43 preferably tracks the user's content usage and creates a user personal profile, or user profile, based on this tracking.
- the client software 43 may store the occurrence or frequency of the user viewing content with a certain program classification 82 , category name 84 and/or sub-category name 86 .
- the client software 43 ranks the program classifications 82 , category names 84 and/or sub-category names 86 of the user's viewed content based on the number of occurrences or frequency of viewing.
- the sorting step 160 preferably includes the personalized content manager 45 sorting the received content to match rankings of the program classifications 82 , category names 84 and/or sub-category names 86 in the user profile.
- the sorting step 160 is preferably performed after the filtering steps 156 and 158 , although it may be performed prior to these steps.
- the generating a personalized content management interface screen that includes a list of titles of filtered and sorted content 164 preferably comprises the personalized content manager 45 generating a dynamic GUI 110 (e.g., including menus 112 , 130 or 136 ) that includes the program titles 76 of the certain content that was not filtered out by the filtering steps 156 and 158 and which is sorted by the sorting step 160 .
- the dynamic GUI 110 is preferably displayed by the web browser 56 on the display device 50 of the user machine 40 .
- the dynamic GUI 110 therefore preferably includes content from selected categories (or sub-categories, see specific category menu 132 above) from selected sources (NOC 12 , edge-of-net from the ISP 16 or personal content 28 from the local cache).
- the dynamic GUI 110 preferably includes numerous sections (e.g., buttons, arrows and/or hyperlinks) through which the user can browse through, search, and further filter the program titles. If the preceding steps are performed in conjunction with the client software 43 start-up, the default settings are preferably used to filter ( 156 and 158 ) the content. If the preceding steps are not performed in conjunction with the client software 43 start-up, user filtering input and/or default settings may be used to filter the content.
- numerous sections e.g., buttons, arrows and/or hyperlinks
- determining if user filtering input is received 164 preferably comprises the personalized content manager 45 determining if the user selects a section to enter initial user filtering input (e.g., the user first enters filtering input on the first generated and displayed dynamic GUI 110 after client software 43 start-up) or additional user filtering input (e.g., the user enters additional filtering input on a dynamic GUI 110 generated based on previous user filtering input). If the user does enter filtering input, the method 150 preferably repeats steps 156 - 164 .
- FIG. 9 is a flowchart illustrating an exemplary method 170 of personalized content management, preferably performed by the personalized content manager 45 , as described above.
- the method 170 preferably comprises the steps of: receiving user category and source selection(s) 172 ; comparing selected category(ies) to program nugget data 174 ; comparing selected source(s) to program nugget data 176 ; sorting content with the user profile 178 ; displaying titles of sorted and matched content 180 ; receiving user title selection 182 ; and, displaying content corresponding to selected title 184 .
- Steps 172 to 180 may be performed as described above.
- the receiving user category and source(s) 172 may include the personalized content manager 45 receiving user selections of category button(s) 114 and source button(s) 116 .
- displaying title of sorted and matched content 180 may include the personalized content manager 45 generating a dynamic GUI 110 with the program titles 76 of the filtered and sorted content and displaying the dynamic GUI 110 on the web browser 56 on the display device 50 of the user machine 40 .
- Receiving user title selection 182 preferably comprises the personalized content manager 45 (and/or client software 43 ) receiving a user selection of a program title 76 displayed in the dynamic GUI 110 (e.g., including menus 112 , 130 or 136 ).
- the user may select a program title 76 by clicking on the program title 76 , if the program title 76 includes a hyperlink.
- the hyperlink may be a link to the content corresponding to the selected program title, in which case the client software 43 displays the content corresponding to the selected title 184 .
- the hyperlink may be a link to a pop-up, pull-down or overlay menu that includes additional options, such as further information regarding the corresponding content (e.g., such as the program description 78 or PPV information 98 , if applicable), access to the thumbnail 88 and/or video trailer 90 , and/or the link to the corresponding content, for example.
- the method 170 may also comprise displaying a pop-up, pull-down or overlay menu (not shown), displaying a program description or PPV information (not shown), and/or displaying a thumbnail or video trailer (not shown).
- FIG. 10 is a flowchart illustrating an exemplary method 190 of personalized content management, preferably performed by the personalized content manager 45 , as described above.
- the method 190 preferably comprises the steps of: receiving user category and source selection(s) 192 ; comparing selected category(ies) to program nugget data 194 ; comparing selected source(s) to program nugget data 196 ; sorting content with the user profile 198 ; filtering the content with bandwidth capacity 200 ; and, displaying titles of sorted and matched content 202 .
- the filtering step 200 preferably comprises the personalized content manager 45 filtering the content with the bandwidth capacity of the client 18 on which the personalized content manager 45 is running.
- the personalized content manager 45 compares the bandwidth capacity to the bitrate 106 in the program nuggets. If the bitrate 106 of certain content exceeds the bandwidth capacity, the certain content is filtered out. As discussed above, the personalized content manager 45 may treat the content filtered out based on bandwidth capacity in a variety of ways. For example, the personalized content manager 45 may exclude the filtered out content from the generated dynamic GUI 110 . Alternatively, the personalized content manager 45 may include the filtered out content in the dynamic GUI 110 by including the corresponding program titles 76 grayed-out without hyperlinks or with hyperlinks to pop-ups, pull-downs or overlays that explain why the program title 76 is grayed-out and/or include an offer for expanding the client's 18 bandwidth capacity.
- FIG. 11 is a flowchart illustrating an exemplary method 210 of personalized content management, preferably performed by the personalized content manager 45 , as described above.
- the method 210 preferably comprises the steps of: receiving user category and source selection(s) 212 ; comparing selected category(ies) to program nugget data 214 ; comparing selected source(s) to program nugget data 216 ; sorting content with the user profile 218 ; filtering content with available now status 220 ; and, displaying titles of available now, sorted and matched content 222 .
- the filtering content with available now status 220 preferably comprises the personalized content manager 45 determining what received content is presently available. Generally, all received content is presently available (notwithstanding bandwidth and other restrictions).
- the system 10 may multicast or unicast content that is available in the future (e.g., PPV content purchased for a scheduled, later viewing).
- the NOC 12 generally transmits program nuggets 74 in advance of the corresponding content. Therefore, the filtering content with available now status 220 may include the personalized content manager 45 comparing schedule information 96 in program nuggets 74 with the present time and filtering out content that corresponds to program nuggets 74 with schedule information 96 for future times.
- the displaying titles of available now, sorted and matched content 222 preferably includes the personalized content manager 45 generating a dynamic GUI 110 that includes the available now menu 112 .
- the available now menu 112 is preferably the default setting for the dynamic GUI 110 .
- FIG. 12 is a flowchart illustrating an exemplary method 230 of personalized content management, preferably performed by the personalized content manager 45 , as described above.
- the method 230 preferably comprises the steps of: receiving user category and source selection(s) 232 ; comparing selected category(ies) to program nugget data 234 ; comparing selected source(s) to program nugget data 236 ; sorting content with the user profile 238 ; filtering content with input schedule data 240 ; and, displaying titles of scheduled, sorted and matched content 242 .
- the filtering content with input schedule data 240 preferably comprises the personalized content manager 45 receiving a user schedule input and filtering the scheduled content based on the user schedule input.
- dynamic GUI 110 preferably comprises a schedule menu button 140 that toggles to the scheduled menu 136 .
- the schedule menu 136 preferably displays scheduled content and includes a plurality of day buttons 142 and hour buttons 144 .
- the filtering content with input schedule data 240 preferably comprises the personalized content manager 45 receiving user selections of one or more day buttons 142 and/or hour buttons 144 and comparing the selected day(s) and/or hour(s) to the schedule information 96 in received program nuggets.
- the displaying step 242 preferably comprises the personalized content manager 45 generating and displaying a dynamic GUI 110 comprising a scheduled menu 136 that includes schedule content with schedule information 96 that matched the selected day(s) and/or hour(s).
- FIG. 13 is a flowchart illustrating an exemplary method 250 of personalized content management, preferably performed by the personalized content manager 45 , as described above.
- the method 250 preferably comprises the steps of receiving user category and source selection(s) 252 ; comparing selected category(ies) to program nugget data 254 ; comparing selected source(s) to program nugget data 256 ; sorting content with the user profile 258 ; displaying titles of sorted and matched content 260 ; conducting a word search of displayed titles 262 ; and, displaying titles of content matching word search 264 .
- Conducting a word search of displayed titles 262 preferably comprises the personalized content manager 45 receiving a search term input from the text specific data field 134 and comparing the search term to program nugget 74 data.
- the personalized content manager 45 may compare the search term to program titles 76 , program descriptions 78 , program ratings 80 , program classifications 82 , program category names 84 , program sub-category names 86 , source data, schedule information 96 , expiry date 108 , etc.
- the displaying titles of content matching word search 264 preferably includes the personalized content manager 45 generating and displaying a dynamic GUI 110 with program titles 76 corresponding to content that had matching program nugget 74 data.
Abstract
A personalized content manager is disclosed. The personalized content manager comprises an apparatus, system, method, and computer readable medium that includes or performs the steps of receiving input regarding the filtering of broadband content, filtering the broadband content with one or more content categories based on the filtering input, filtering the content with one or more of a plurality of content sources based on the filtering input, and generating a personalized content management interface screen that includes a list of titles of the filtered content.
Description
- This is a Continuation Application of Ser. No. 10/946,618, filed Sep. 22, 2004, which in turn is a Continuation Application of Ser. No. 09/878,232, filed Jun. 12, 2001, which in turn claimed the benefit of the priority of U.S. Provisional Patent Application, Ser. No. 60/210,747, filed Jun. 12, 2000, and which all three applications are hereby incorporated by reference in their entirety. This application also hereby incorporates by reference U.S. patent application Ser. No. 09/835,529, filed Apr. 17, 2001.
- 1. Technical Field
- The present invention is related to multimedia content delivery systems, and more particularly to systems that personalize or customize content.
- 2. Description of Related Art
- Over the past ten years, the bandwidth capacity available to consumers for receiving content from the Internet and other networks has increased ten-fold and more. The increased bandwidth capacity has enabled consumers to download larger and larger files and other content, including rich media and multimedia content such as video clips, songs and movies. This increased bandwidth capacity has increased Internet usage and the potential for enjoyable and productive usage.
- Despite the increased bandwidth capacity, however, prior to the present invention, there were no consumer-based broadband services that automate the delivery of rich media and multimedia content directly to the consumer's personal computer (PC) or Internet access device. Prior to the present invention, there were no service providers optimizing the use of a broadband connection by distributing multiple channels of rich media content and providing a mechanism to automate the selective tuning to desired material. Prior to the present invention, there were no mechanisms available to support Internet protocol (“IP”) recording and hence the time-shifted viewing of rich media material broadcast to the consumers PC or Internet access device.
- Likewise, there has been an increase in the efforts of companies to gather information about consumers and to target consumers with advertising. Despite this effort, however, prior to the present invention there was no user interface that incorporates a profiling engine in offering personalized access to available material. Indeed, prior to the present invention, there was no personalized offering of rich media material to consumer PCs and Internet access devices.
- Indeed, for the consumer of rich multimedia material, there does not exist a system of personalizing the consumer's access to the rich multimedia material. No systems exist that allow the consumer to view lists of content filtered by category and source. Likewise, no systems exist that allow the consumer to view lists of content filtered or sorted by a personal profile. Further, no systems exists that provide a dynamic interface that a consumer can modify to their liking to display differently filtered and sorted lists of content.
- An advantage of the present invention is that it overcomes the disadvantages and shortcomings of the prior art. Another advantage of the present invention is that it provides a personalized content manager, whereby a user can personalize multimedia content received from a multimedia content delivery system. Another advantage of the present invention is that it provides an easy to use, customizable interface for viewing, listening or otherwise accessing (collectively referred to as “viewing”) multimedia content.
- These and other advantages of the present invention are achieved by a personalized content management interface, comprising a dynamic graphical user interface (“GUI”). The dynamic GUI comprises one or more category buttons capable of being selected, one or more source buttons, including a source button for real-time stream, capable of being selected, and a content list. Each category button represents a category of content that may be accessed by a user. Likewise, each source button represents a source of content that may be accessed by a user. One category button and one source button are selected and the content list includes any content, if any, that is within the category of content represented by the selected category button and that is provided by the source of content represented by the selected source button.
- These and other advantages of the present invention are also achieved by a method of personalized content management. The method comprises the steps of displaying a personalized content management interface, selecting one or more category buttons, selecting one or more source buttons, wherein the source buttons include a multicast stream button, and generating a list of content that comprises content titles for content that is within the category of content represented by the selected category button and that is provided by the source of content represented by the selected source button.
- Likewise, these and other advantages of the present invention are achieved by a client, that has a bandwidth capacity, comprising a user machine, that includes a processor, a display, and a memory. The memory includes client software with a personal content manager module containing instructions for generating a dynamic graphical user interface (“GUI”), that is displayed on the display. The dynamic GUI comprises one or more category buttons capable of being selected, wherein the category button(s) represents a category of content that may be accessed by a user, one or more source buttons, including a source button for real-time stream, capable of being selected, wherein the source button(s) represents a source of content that may be accessed by a user, and a content list, wherein one category button and one source button are selected and the content list includes any content, if any, that is within the category of content represented by the selected category button, that is provided by the source of content represented by the selected source button and that has a bandwidth that is less than or equal to the client bandwidth capacity. A system for providing broadband content that comprises a signal origination point that originates broadband content, a transmission medium that receives and transmits the broadband content transmitted from the signal origination point, a service provider that received the transmitted broadband content, and the client described above, wherein the client received the transmitted broadband content from the service provider, also achieves these and other advantages of the present invention.
- Further, these and other advantages of the present invention are achieved by a method of personalized content management. The method comprises the steps of receiving input regarding the filtering of broadband content, filtering the broadband content with one or more content categories based on the filtering input, filtering the content with one or more of a plurality of content sources based on the filtering input, and generating a personalized content management interface screen that includes a list of titles of the filtered content. A computer-readable medium containing instructions for performing the above-described method and a user machine comprising a processor and a memory containing instructions, for execution by the processor, for performing the above-described method, also achieve these and other advantages of the present invention.
- The detailed description will refer to the following drawings, in which like numbers refer to like items, and in which:
-
FIG. 1 is a block diagram illustrating a broadband content delivery system. -
FIG. 2 is a flowchart illustrating a method of bandwidth testing. -
FIGS. 3 a and 3 b are block diagrams illustrating exemplary components of the broadband content delivery system. -
FIG. 4 is an illustration of an exemplary program nugget. -
FIGS. 5-7 are illustrations of exemplary personal content management interface screens. -
FIGS. 8-13 are flowcharts illustrating exemplary methods of personal content management. -
FIG. 1 illustrates a broadbandcontent delivery system 10 with which the present invention may be used. A personalized content manager (not shown inFIG. 1 ) is used to manage the broadband content delivered by the broadbandcontent delivery system 10. The illustrative broadbandcontent delivery system 10 comprises asignal origination point 12, a transmission medium 14 (e.g., a satellite), one ormore service providers 16, and one ormore clients 18. Theclient 18 typically includes a user machine (e.g., a PC) that includes resident client software. The client software enables access to the broadband content, supports the broadbandcontent delivery system 10 and provides the personalized content manager and the personalized content management interface. Typically, high bandwidth content 20 (e.g., video, audio and web data) is transmitted from asignal origination point 12 such as a Network Operations Center (“NOC”) on high-resolution (“high rez”)virtual channels 22. Thetransmission medium 14 is satellite, ether and/or landline, or a combination thereof. Thecontent 20 is received by aservice provider 16, typically an edge-of-net broadband Internet service provider (“ISP”) and transmitted over abroadband medium 24, such as DSL or coaxial cable, to aclient 18. Two-way communications between theclient 18 and the NOC 12 are maintained over the Internet 26. - In addition to transmitting the content on
virtual channels 22, the broadbandcontent delivery system 10 also transmits a control channel that is received by theclient 18. The control channel contains information and instructions that help enable theclient 18 to access and control thecontent 20 provided by the broadbandcontent delivery system 10. The control channel is used to issue commands or directives to theclient 18. These commands or directives may result in feedback or a report back from theclient 18 to theNOC 12 via the Internet. Significantly, the control channel is used to deliver program descriptors or “program nuggets”, which are discussed in detail below. - Not necessarily all
clients 18 of the broadbandcontent delivery system 10 will have the bandwidth capability or resources to receive the high bandwidth on high rez virtual channels 22 (e.g., 512 Kbps or more). Accordingly, in addition tohigh bandwidth content 20, the broadbandcontent delivery system 10 provideslow bandwidth content 20 on low-resolution (“low rez”) virtual channels 22 (e.g., approximately 200 Kbps) or other communications bandwidth to accommodate these clients. Consequently, when aclient 18 signs-on, the broadbandcontent delivery system 10 preferably conducts a bandwidth test to measure client's 18 bandwidth capability (“available bandwidth”). Usually, the available bandwidth is calculated as the maximum bandwidth content that theclient 18 can consistently receive. - As illustrated in the flowchart seen in
FIG. 2 , anexemplary method 30 of bandwidth testing comprises: client software links 32 to a local system Point of Presence (POP) server at the ISP, via a TCP/IP point to point connection; the POP server transmits 34 a fixed volume of data to the client; the client software records 36 the time required to receive this data; during transmission of the fixed volume of data, the client software calculates 38 a point sample of throughput; and, the preceding are repeated 39 until the results are consistent within a certain constant window of time (e.g., when the results are within a 5% range). In this example the amount of data divided by the time required to receive the data determines the client's 18 available bandwidth. Alternatively, the bandwidth test may be run with the POP server transmitting varying volumes of data to theclient 18 to determine if the results change for these different values. - Referring back to
FIG. 1 ,content 20 may be transmitted or broadcast by theNOC 12 on thevirtual channels 22 as real-time multicast or unicast streams. A multicast stream comprises streaming content that is directed to and available tomultiple clients 18. A unicast stream comprises streaming content that is directed to and available to oneclient 18. Furthermore,additional content 20 may be provided by third-parties as on-demand broadband content selected from the Internet (“edge-of-net”) by a user at theclient 18. For example, anISP 16 may provide the edge-of-net content. Likewise, the user may store selected content, such as portions of the real-time multicast or unicast streams in a local cache at theclient 18. This stored or personal content 28 may be kept on a user machine hard-drive or other storage medium. -
FIGS. 3 a and 3 b are block diagrams illustrating exemplary hardware components of the broadbandcontent delivery system 10 that may be used for implementing the personalized content manager.FIG. 3 a includes theclient 18, comprising auser machine 40 connected with a network such as theInternet 26, providing network connections to theNOC 12 and theISP 16. Theuser machine 40 includes theclient software 43 that the user has downloaded from anISP 16 or portal or otherwise obtained (e.g., by loading from a CD-ROM or magnetic disk or by being pre-installed on the user machine 40). As mentioned, theclient software 43 supports the broadbandcontent delivery system 10 and is executed to run the personalized content manager (“PCM”) 45. Preferably, thepersonalized content manager 45 is a module of theclient software 43.Other clients 18, such asclient 19 may also be connected with network and may include the same components asclient 18. - The
user machine 40 illustrates typical components of a user machine. Theuser machine 40 typically includes a memory 42, a secondary storage device 44, a processor 46, an input device 48, a display device 50, and anoutput device 52. Memory 42 may include random access memory (RAM) or similar types of memory, and it may store one or more applications 44, includingclient software 43, and aweb browser 56, for execution by processor 46. The secondary storage device 44 may include a hard disk drive, floppy disk drive, CD-ROM drive, or other types of non-volatile data storage. The local cache that includes a user's personal content 28, and a user's personal profile, may be stored on the secondary storage device 44. The processor 46 may execute client software 43 (including the personalized content management interface 45) and other applications 44 stored in memory 42 or secondary storage 50, or received from the Internet orother network 60. The processor 46 may executeclient software 43 in order to provide the functions described in this specification including the personalized content management interface screens andpersonal content manager 45 functions described below. The input device 48 may include any device for entering information into theuser machine 40, such as a keyboard, mouse, cursor-control device, touch-screen, infrared, microphone, digital camera, video recorder or camcorder. The display device 50 may include any type of device for presenting visual information such as, for example, a computer monitor or flat-screen display. Theoutput device 52 may include any type of device for presenting a hard copy of information, such as a printer, and other types of output devices include speakers or any device for providing information in audio form. - The
web browser 56 is used to access thepersonalized content manager 45 and display the personalized content management interface screens, through which the user can manage the broadband content broadcast by the broadbandcontent delivery system 10, as described below. Theweb browser 56 also is used to access theNOC 12 andISP 16. Examples ofweb browsers 56 include the Netscape Navigator program and the Microsoft Internet Explorer program. Any web browser, co-browser, or other application capable of retrieving content from a network and displaying pages or screens may be used. - Examples of
user machines 40 for interacting within the broadbandcontent delivery system 10 include personal computers, laptop computers, notebook computers, palm top computers, network computers, Internet appliances, or any processor-controlled device capable of executing aweb browser 56 or other type of application for interacting with the broadbandcontent delivery system 10. -
FIG. 3 b illustrates typical hardware components of aserver 58 at theNOC 12. Aserver 58 at anISP 16, such as the local system POP server referred to inFIG. 2 above, may have similar hardware components. Theserver 58 typically includes amemory 60, asecondary storage device 62, aprocessor 64, aninput device 66, adisplay device 68, and anoutput device 70. Thememory 60 may include RANI or similar types of memory, and it may store one ormore applications 64 for execution byprocessor 64. Thesecondary storage device 62 may include a hard disk drive, floppy disk drive, CD-ROM drive, or other types of non-volatile data storage. Theprocessor 64 executes application(s) 64, which are stored inmemory 60 orsecondary storage 74, or received from theInternet 26 or other network. Theinput device 66 may include any device for entering information intoserver 58, such as a keyboard, mouse, cursor-control device, touch-screen, infrared, microphone, digital camera, video recorder or camcorder. Thedisplay device 68 may include any type of device for presenting visual information such as, for example, a computer monitor or flat-screen display. Theoutput device 70 may include any type of device for presenting a hard copy of information, such as a printer, and other types of output devices include speakers or any device for providing information in audio form. - The
server 58 may store a database structure insecondary storage 74, for example, for storing and maintaining information regarding the broadbandcontent delivery system 10 and the clients. For example, it may maintain a relational, object-oriented, or other database for storinginformation concerning client 18 users, the access rights of the users, their account status and/or a user personal profile. - As mentioned above, processor 46 (and/or processor 64) may execute one or more software applications 54 (or 72), such as
client software 43, in order to provide thepersonalized content manager 45, the personalized content management interface screens, and other functions described in this specification. The processing may be implemented in software, such as software modules, for execution by computers or other machines. Preferably, thepersonal content manager 45 is a module or component of theclient software 43. The processing by processor 46 (and/or processor 64) may provide and support pages, windows and menus (collectively, “screens”) described in this specification and otherwise for display on display devices associated with theclient 18. The term “screen” refers to any visual element or combinations of visual elements for displaying information or forms; examples include, but are not limited to, graphical user interfaces on a display device or information displayed in web pages or in pop-up windows/menus on a display device. The screens may be formatted, for example, as web pages in HyperText Markup Language (HTML), Extensible Markup Language (XML) or in any other suitable form for presentation on a display device depending upon applications used by users to interact with the broadbandcontent delivery system 10. - The screens include various buttons, as explained below, to provide information or to receive information or commands. The term “button” with respect to screens refers to a particular portion of a screen, possibly including the entire screen. Buttons are selected, for example, to enter information or commands or to retrieve information or access other screens. The selection may occur, for example, by using a cursor-control device to “click on” or “double click on” the button; alternatively, buttons may be selected by entering a series of keystrokes or in other ways such as through voice commands or use of a touch screen. In addition, although the screens described below illustrate a particular arrangement and number of buttons in each screen, other arrangements are possible and different numbers of buttons in the screens may be used to accomplish the same or similar functions of displaying information and receiving information or commands. Also, the same button may be used for performing a number of functions, such as both displaying information and receiving a command.
- Although only one
server 58 is shown, broadbandcontent delivery system 10 may usemultiple servers 59 as necessary or desired to support the users and may also use back-up or redundant servers to prevent network downtime in the event of a failure of a particular server. In addition, although theuser machine 40 andserver 58 are depicted with various components, one skilled in the art will appreciate that theuser machine 40 and theserver 58 can contain additional or different components. In addition, although aspects of an implementation consistent with the present invention are described as being stored in memory, one skilled in the art will appreciate that these aspects can also be stored on or read from other types of computer program products or computer-readable media, such as secondary storage devices, including hard disks, floppy disks, or CD-ROM; a carrier wave from the Internet or other network; or other forms of RAM or ROM. The computer-readable media may include instructions for controlling a computer system, such asuser machine 40 andserver 58, to perform a particular method or implementation. - Referring back to
FIG. 1 , thecontent 20, whether broadcast as a real-time stream on a virtual channel or provided by a third-party as edge-of net content, comprises chunks of content called programs. Typically each program that is broadcast as a real-time stream on avirtual channel 22 has acorresponding program nugget 74. As discussed above,program nuggets 74 are preferably broadcast or communicated on the control channel. TheNOC 12 usually transmits theprogram nugget 74 at some time preceding the broadcast of the corresponding program. Thepersonalized content manager 45 preferably usesprogram nuggets 74, and the data contained therein, to manage thecontent 20 as described below. - An
example program nugget 74 is seen inFIG. 4 . Theprogram nugget 74 shown includes various information and data related to a corresponding program. For example, this information and data may comprise aprogram title 76, aprogram description 78, arating 80, aprogram classification 82, aprogram category name 84, program sub-category names 86, athumbnail display 88 or link to thumbnail display, alink 90 to a video trailer, alocal cache path 92, alocal cache filename 94,schedule information 96, pay-per-view information 98, aprogram ID 100, asource IP address 102, asource TCP Port 104, abitrate 106 and anexpiry date 108 for the program. Other data and information may be included in theprogram nugget 74. - The
program nugget 74 is usually written in Extensible Markup Language (“XML”) format, although other formats or languages may be used. If theprogram nugget 74 is written in XML, the information and data from theprogram nugget 74 may be easily used to generate or incorporated in a dynamic hyper-text markup language (“DHTML”) screen. Typically, theprogram nugget 74 is stored at theclient 18 on the user machine's 40 secondary storage device 44.Program nuggets 74 will usually remain stored at theclient 18 at least until the corresponding program is viewed. Consequently,program nuggets 74 corresponding to personal content 28 that the user has saved in the local cache will be available when the user chooses to examine or view the personal content. Alternatively,program nuggets 74 can be re-transmitted or requested at a later time. - Referring back to
FIG. 4 , an example of theprogram description 78 is a textual description of the program. Therating 80 indicates the appropriate viewer-ship of the program and may use the MPAA standards. Theprogram classification 82 provides the type of program (e.g., professional baseball game, horror movie, rock music, historical documentary, etcetera) and the general category of the program. For example, a number may indicate theprogram classification 82. Specific ranges of numbers may indicate a general category (e.g., 1400-1499 may indicate sports programs). A sub-range of numbers within the general category range may indicate a sub-category (e.g., 1400-1405 may indicate baseball programs). Likewise, a specific number may indicate a specific type of program (e.g. 1401 may be professional baseball games).Program classification 82 may also be indicated by other classifications systems, such as combinations of letters, letters and numbers or any similar system. Theprogram category name 84 indicates the general category (e.g., sports) of the program, while the sub-category names 86 indicate sub-categories (e.g., race, Formula 1) of the program. - The
thumbnail 88 is usually a video or audio clip of the program. For example, thethumbnail 88 may be a single still screen shot from a program. Likewise, it may be a few seconds of audio from the program or a longer portion of audio from the program.Thumbnails 88 may be provided for all types of content, whether movies, music, information or other types of content. Similarly, thelink 90 to a video trailer provides a link to a short (e.g., three minutes) motion video trailer or preview of the program. The video trailer may be broadcast on a virtual channel and/or stored on the user machine's 40 secondary storage device 44. The links to the thumbnail and video trailer preferably identify the name and paths of files comprising the thumbnail and video trailer. - The real-time stream content may include pay-per-view content. Accordingly, for pay-per-view content, the pay-per-view information 98 describes various pay-per-view options, such as one-time viewing only, multiple-viewings, storing in the local cache, a specific time-period for viewing (e.g., a day, week, month, season or year), and includes the pricing for these options. Likewise, the real-time stream content may exclude content that expires. For example, if the user has only paid for one-month of viewing a program, that program will expire one-month after it is purchased. Other programs, which are available for purchase or simply for storing at no cost, preferably expire on a certain date. The
expiration date 108 is the date on which the content expires. Theprogram ID 100 is a number that identifies the program. - The
program nuggets 74 also contain source data indicating the source of the corresponding program. For example, if a program is a real-time stream program or an edge-of-net program, the source data of thecorresponding program nugget 74 will so indicate with thesource IP address 102 and thesource TCP port 104. If a real-time stream program is stored as personal content 28 in the local cache, the source data of thecorresponding program nugget 74 will be modified to reflect that the local cache is the source of the program. For example, theprogram nugget 74 may include thelocal cache path 92 and local cache filename if the content is stored in the local cache. Theprogram nuggets 74 may also include bandwidth information (e.g., the bitrate 106) that is used with the bandwidth capability to determine a client's 18 ability to receive the particular content. - The
NOC 12 may also transmitprogram nuggets 74 for edge-of-net content. As with the real-time stream programs, aprogram nugget 74 for an edge-of-net program will usually be transmitted at some time preceding the broadcast or availability of the corresponding edge-of-net program. Theprogram nuggets 74 for edge-of-net programs may have information and data similar to that discussed above for real-time stream programs. The third-parties that broadcast the edge-of net content preferably provide this information and data to the NOC 12 (or local system POP server) for incorporation in aprogram nugget 74. - The broadband
content delivery system 10 provides a personalizedcontent management interface 45 for its users. Thepersonalized content manager 45 provides personalized content management screens and enables the user to manage the content provided by the multiple sources described above. The user can manage the content 20 from real-time streams, the edge-of-net and the local cache or subset of this content (collectively, hereinafter referred to as content 20). Theprogram nuggets 74, specifically theprogram classifications 82, program category names 84 andsub-category names 86 in theprogram nuggets 74, facilitate the organization and sorting of the content into various categories. Likewise, the source data (e.g.,source IP address 102,source TCP port 104,local cache path 92 and local cache filename 94) facilitates the organization and sorting of thecontent 20 by the multiple sources (real-time stream, edge-of-net and local cache). In combination, this data from theprogram nuggets 74 enables the presentation ofcontent 20 sorted by category and source. -
FIG. 5 illustrates an embodiment of a personalized contentmanagement interface screen 110. As described above, thepersonalized content manager 45 is preferably a module of theclient software 43. When thepersonalized content manager 45 module is executed (e.g., by processor 46), it generates the personalizedcontent management screen 110 shown inFIG. 5 , and other embodiments of thescreen 110 discussed herein. The personalized contentmanagement interface screen 110 preferably comprises a dynamic graphical user interface (GUI), as illustrated by the screen inFIG. 5 . Thedynamic GUI 110 presents the above-describedcontent 20 sorted by category and source. Thedynamic GUI 110 is usually a dynamic hyper-text markup language (DHTML) screen, although other formats and languages may be used. Thedynamic GUI 110 is preferably displayed on the user machine's 40 display device 50 and may be accessed and controlled with a cursor controlled by the input device 48 (e.g., a cursor-control device, such as a mouse). - In the embodiment shown in
FIG. 5 , thedynamic GUI 110 comprises an “available now”menu 112 which listsprogram titles 76 of content that is available for immediate viewing based on the users selection of one or more category buttons 114 (e.g., news, business, finance, sports, music, video, technology, computers, lifestyles and arts) from a list of categories and one or more source buttons 116 (e.g., cache, edge-of-net and live (i.e., real-time streams)) from a list of sources. The category names for thecategory buttons 114 are preferably taken from program category names 84 ofavailable program nuggets 74. The available nowmenu 112 further comprises an “all”button 118 that may be highlighted to select all categories. If the all button is highlighted, the available nowmenu 112displays program titles 76 of all content available from the selectedsource buttons 116. Likewise, the available nowmenu 112 comprises an uparrow 120 and adown arrow 122 which are selected to scroll through the list ofcategories 124, and an “Up”button 126 which may be highlighted to immediately return to the top of thecategory list 124. Further, the available nowmenu 112 comprises a “search”button 128 that is clicked in order to display the content from the highlighted/selectedcategories 114 andsources 116. - Using the available now
menu 112, the user may choose to view available content from specific categories by clicking on the categories'buttons 114 with the cursor, which will highlight the specific categories on the available nowmenu 112. The user may select any combination of one or more of the available sources by clicking on thesource buttons 116. Thecategories 114 andsources 116 selected may be toggled and more or less may be selected at any time. With category button(s) 114 and source button(s) 116 highlighted, clicking on thesearch button 128 will cause thedynamic GUI 110 to display a list ofprogram titles 76 of content available in the selected category(ies) from the source(s) selected. Referring toFIG. 5 , for example, the user may wish to see news, business, finance, sports and computers content from the edge of net and live (i.e., real-time stream) sources. Once thesearch button 128 is clicked, all content available from these categories and these sources is listed, by title and source, on thedynamic GUI 110. The DHTML screen comprising this list may be built by extracting information (e.g.,program titles 76 and source data) from theprogram nugget 74 XML files or through other similar means. - The user's selection of categories and sources are the criteria that the
personalized content manager 45 utilizes as a filter to determine whichtitles 76 from which sources to display on thedynamic GUI 110. Thepersonalized content manager 45 compares the categories selected with theprogram classifications 82 and/or program category names 84 contained in theprogram nuggets 74 for the available content. If there is a match, then the matched content is filtered for further comparison with the user-selected sources. If there is no match, the content is filtered out. All the matched content is filtered by the selected sources. The source data (e.g.,source IP address 102,source TCP port 104,local cache path 92 and local cache filename 94) contained in theprogram nuggets 74 is compared to the selected sources, and if there is a match, the content's title is displayed on thedynamic GUI 110. If there is no match, the content is not from a selected source and itstitle 76 will not be displayed. The categories on thedynamic GUI 110 may be classified using a numbering scheme as discussed above for the program classifications. For example, if 1400-1499 is all sports, then any content that has a program classification within this range of numbers will be filtered for further comparison with the user-selected sources. It is specifically noted that the order of filtering may be altered; for example, the content may be filtered by the selected sources and then by the selected categories. - In an alternative embodiment, the
All button 118 and all of thesource buttons 116 are highlighted in the dynamic GUI's 110 default status so that thedynamic GUI 110 displays a list of allprogram titles 76 available from all the sources. Further, thedynamic GUI 110 may be configured so that toggling the selectedcategory buttons 114 andsource buttons 116 will cause thedynamic GUI 110 to displayprogram titles 76 of content from the selectedcategories 114 andsources 116 without necessitating the clicking of thesearch button 128. - In one embodiment, double-clicking on a
category button 114 will cause thedynamic GUI 110 to switch to aspecific category menu 130 that corresponds to the double-clickedcategory button 114. In the example seen inFIG. 6 , the sports category button has been double-clicked and thedynamic GUI 110 has switched to a sports category menu. The sports category menu, and indeed anyspecific category menu 130, is very similar to the normal available nowmenu 112 displayed inFIG. 5 . The primary difference is that thecategory list 124 has been replaced by a list of sub-category buttons 132 corresponding to sub-categories of the specific category. For example, the sports category menu comprises a list of sub-category buttons including hockey, baseball, football, basketball, soccer, golf, tennis, rugby, cricket and curling. The sub-category names may be taken from the program sub-category names 86 inavailable program nuggets 74. Thespecific category menus 30 are operated in much the same manner as the normal available nowmenu 112. For example, if the user highlights the hockey, baseball andsoccer category buttons 114 and the edge of net and livesource buttons 116 by clicking on them and clicks thesearch button 128, thetitles 76 of any hockey, baseball or soccer content available from the edge of net or real-time stream will be displayed on thedynamic GUI 110. - Usually each
program title 76 in the displayed lists on thedynamic GUI 110 comprises hyper-text. Consequently, when aprogram title 76 displayed on thedynamic GUI 110 is double-clicked with the cursor or otherwise launched, thedynamic GUI 110 inserts and displays extended information about the selected program. This extended information preferably includes a program description and a hotlink or hyperlink that provides direct access for retrieval and display or recording (caching) of the content. Clicking on the hotlink, for example, may cause the selected program to be displayed with an overlay menu that provides the options of immediate viewing or caching. The extended information may also include additional characteristics of the program retrieved from theprogram nugget 74 XML. For example, the extended information may include theprogram description 78, theprogram classification 82, the source, and/or theprogram thumbnail 88. The extended information may be presented directly below the selectedprogram title 76 in the program list or as a pop-up or drop-down window. This feature allows the user to learn more about programs before selecting them for viewing or recording. Alternatively, double-clicking on theprogram title 76 may cause the program to be displayed (e.g., in a screen on the display device 50). - Referring again to
FIGS. 5 and 6 , thedynamic GUI 110 also comprises a “Text Specific”data field 134. The TextSpecific data field 134 allows the user to further refine the displayed program list. Text strings entered into the TextSpecific data field 134 may be applied against theprogram titles 76,program descriptions 78, sub-category names 86 and program types of the listed programs. The user enters a specific text string into the TextSpecific data field 134 and clicks theSearch button 128, causing thepersonalized content manager 45 to search the above-mentioned fields ofavailable program nuggets 74 for matches. For example, if the user wanted to locate Philadelphia Flyers® hockey games, it would enter “Philadelphia Flyers” in the TextSpecific data field 134 and click theSearch button 128. The resultant search will cause thedynamic GUI 110 to display a program list withprogram titles 76 of programs that had only Philadelphia Flyers® in one of the above-mentioned fields (e.g., program title 76), if there were any available in the content as sorted by the selected categories and sources. Alternatively, a search page or pop-up window that enables the user to conduct a word search may be accessed from a hyperlink on thedynamic GUI 110. - In another embodiment, as shown by
FIG. 7 , thedynamic GUI 110 comprises a “scheduled”menu 136. Toggling between an “available now”button 138 and “schedule”button 140 on thedynamic GUI 110 may access the scheduledmenu 136. The scheduledmenu 136lists program titles 76 of content that will be broadcast live (i.e., as a real-time stream) on a virtual channel at some time in the future. This scheduled content may be selected by the user at any time in advance of broadcast, for automatic caching on theclient 18 hard drive and later, on-demand viewing. Similarly, the scheduled content may be selected to provide the user with a reminder when it is broadcast or to be automatically displayed at its scheduled time. - Consequently, like the available now
menu 112, the scheduledmenu 136 comprises one ormore category buttons 114 from a list of categories, uparrow 120 and downarrow 122 buttons, an Allbutton 118, anUp button 126, aSearch button 128 and a Text Specific data field 134 that operate as described above. For example, thecategory buttons 114 may be double-clicked to access a category specific scheduledmenu 136. Additionally, the scheduledmenu 136 comprises a plurality ofday buttons 142 and a plurality of hour buttons 144 (or other increments of time). Theday buttons 142 may correspond to the days of the week (i.e., Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday), as shown inFIG. 7 , or alternatively, to the seven (7), ten (10), fourteen (14), etcetera, days including and following the present day as indicated by a number (e.g., 0 represents today and 1-6 represent the next six days). In addition to selecting zero, one ormore category buttons 114, the user may select one ormore day buttons 142 and, if desired, one ormore hour buttons 144 to see the content available on the selected day(s) at any selected time(s) for any selected category(ies). By clicking on the desired category button(s) 114, day button(s) 142 and hour button(s) 144 and clicking theSearch button 128, the user causes theScheduled menu 136 to display a list ofprogram titles 76, including the scheduled day and time of broadcast. With anyprogram title 76 highlighted, the user can click on a reminder button 146, to schedule a reminder when the selected program is broadcast, or acache button 148, to schedule the caching of the selected program in the user machine's 40 secondary storage device 44. - The
dynamic GUIs 110 discussed above may be “Smart Menus” whose selection choices are automatically sorted in order of preference according to an analysis of historical usage accrued in the user's personal profile (a.k.a., user profile). The broadbandcontent delivery system 10 preferably tracks the user's viewing decisions or habits in order to create the user's personal profile. For example, the program classification 78 (and/orprogram category name 84 and sub-category names 86) for each program that the user views may be recorded, thereby creating a running total of the number of programs from each general category and/or sub-category and/or of each program type that the user views. Accordingly, the user's personal profile will comprise the user's category and type preferences as determined by this running total. For example, if the running total indicates that the user has viewed professional hockey games 85 times out of 100 total programs viewed, the user's personal profile will include a first program type preference for professional hockey games. In the same example, the user's personal profile will also include a first sub-category preference of hockey and a first general category preference of sports. The data comprising the running total and user preferences, as well as the user profile generated from this data, may be stored in the user machine's 40 secondary storage device 44. - Alternatively, the user may proactively create and/or modify the user's personal profile. The user may select program type preferences from a list of program types. Likewise, the user may select sub-category and general category preferences from lists of sub-categories and general categories. Further, the user may modify its user profile by re-ordering its existing preferences. For example, if the user's first program type preference is professional baseball games and the user wants to change this first program type preference to professional football games (e.g., because it is football season), the user may select professional football games from the list of program types. Any changes to the user's personal profile made by a user are also preferably stored in the user machine's 40 secondary storage device 44.
- The user's personal profile is preferably used to sort the program lists displayed by the
dynamic GUI 110. The user's personal profile preferably is applied to the program lists after the categories selected by the user on thedynamic GUI 110 are determined. For example, if the user's personal profile indicates a first program type preference for professional hockey games since the user has viewed professional hockey games 85% of the time, and the all category is selected, then any professional hockey games that are available from the sources (assuming all the sources are selected) will be displayed at the top or most prominent position of the program list. - If, for the same user as above, the news category is selected, then the first program type preference is irrelevant and inapplicable to the program list. If the remaining program type preferences of the user are also irrelevant and inapplicable to the program list (i.e., because they are for program types that are not included in the news category), the sub-category preferences of the user will be next examined. Since the user's personal profile indicates a first program type preference for professional hockey games since the user has viewed professional hockey games 85% of the time, then the hockey sub-category would be the first sub-category preference indicated by the user's personal profile. Consequently, any news programs that also fell in the hockey sub-category (e.g., a hockey news program) will be displayed at the top or most prominent position of the program list on the
dynamic GUI 110. - The user may decide to view available content on the
dynamic GUI 110 without the user's personal profile being used to sort the program lists. Accordingly, thedynamic GUI 110 may include a user profile sort hyper-text (not shown). If the user profile sort hyper-text is selected, the program lists will be sorted with the user profile. If the user profile sort hyper-text is de-selected, the program lists will not be sorted with the user profile. If the program lists are not sorted with the user profile, other sorting mechanisms or methods may be used to sort the program lists. For example, the program lists may be sorted in alphabetical order or in chronological order. - Generally it is preferred that the
dynamic GUIs 110 described above also do not displayprogram titles 76 of content that theclient 18 cannot receive. As discussed previously, not all clients will have the bandwidth capability to receive the high bandwidth on high rezvirtual channels 22. Consequently, thepersonalized content manager 45 preferably filters the content from the multiple sources with the client's 18 bandwidth capability, as determined by the process described above, to prevent the display of such content. Accordingly, the dynamic GUI 110s, such as the available nowmenu 112 and schedule menu, will not display this non-receivable content. - In alternative embodiments, this non-receivable content is displayed on the
dynamic GUI 110. However, in these embodiments, the non-receivable content is displayed in a manner than prevents the user from accessing it. For example,program titles 76 for programs that theclient 18 cannot receive may be displayed as normal text that cannot be clicked (e.g., non-hyper-text). Theseprogram titles 76 may also be grayed-out to indicate that the user cannot access them. Additionally, theseprogram titles 76 may be hyper-text that is not linked with the corresponding content, therefore preventing access to the content, that may be selected so as to cause the pop-up or pull-down window with the program's characteristics to be displayed. These alternativedynamic GUI 110 embodiments may be used to encourage viewers to purchase additional bandwidth capacity. Advertisements selling expanding bandwidth services may be displayed when content is selected which cannot be accessed due to a client's 18 limited bandwidth. - The method of determining the bandwidth capacity or available bandwidth described above is one example of a number of available methods. The available bandwidth may be requested from the
ISP 16 that provides the broadband connection to theclient 18. Thisbroadband ISP 16 may know the available bandwidth from previous tests or may perform their own regular tests. Likewise, thebroadband ISP 16 may know what the available bandwidth should be based on the equipment installed at theclient 18 and the broadband medium used to connect to theclient 18. Additionally, theclient 18 or aNOC 12server 58 may store historical records of the client's 18 throughput and determine the client's 18 available bandwidth from these records. - Further, the available bandwidth determined from any of the above methods or means may be used as a starting point for the first method described above. In other words, the available bandwidth may be requested from the
ISP 16, and this available bandwidth may be used as a baseline for the test illustrated inFIG. 2 . If the test shown inFIG. 2 determined a substantially different available bandwidth than that provided by theISP 16, theNOC 12 may re-run the test to verify the results. -
FIG. 8 is a flowchart illustrating anexemplary method 150 of personalized content management, preferably performed by thepersonalized content manager 45, as described above. As shown, themethod 150 comprises the steps of: broadband content 152; receiving filtering input 154; filtering the content with one or morecontent categories 156; filtering the content with one or more content sources 158; sorting the filtered content with the user profile 160; generating a personalized content management interface screen that includes a list of titles of the filtered and sortedcontent 162; and, determining if user filtering input is received 164, whereby steps 156-164 are repeated if user filtering input is received. - Receiving broadband content 152 preferably comprises a
client 18 receiving broadband content from a plurality of sources, such as from theNOC 12, edge-of-net content from theISP 16, and personal content from the local cache (e.g., on the user machine 40). The receiving step 152 preferably also comprises receiving a plurality ofprogram nuggets 74. The receivedprogram nuggets 74 may correspond to received content, future, scheduled content or available PPV content, for example. Receiving filtering input 154 preferably comprises thepersonalized content manager 45 receiving filtering input from a user and/or from default settings. Preferably, when theclient software 43 is first started by a user, thepersonalized content manager 45 will generate a personalized content management interface screen in which the content is filtered based on default settings. In this situation, the receiving step 154 will receive the default settings, which may be set by the user and stored on the user machine's 40 secondary storage device 44. Alternatively, the receiving step 154 will receive user filtering input such as selected source(s)buttons 116 and/or selected category button(s) 114. I n this situation, thepersonalized content manager 45 will generate a personalized content management interface screen in which the content is filtered based on the user filtering input alone or in combination with default settings. - Filtering the content with one or more
content categories 156 preferably comprises thepersonalized content manager 45 filtering the received content based on received filtering input related to category. For example, thefiltering step 156 may include thepersonalized content manager 45 comparing user selected or default categories to program nugget category data (e.g.,program classification 82, program category names 84, and/or program sub-category names 86) found in the received content'sprogram nuggets 74. If the user selected or default category(ies) matches the program nugget category data of certain content (e.g., a program), then the certain content is not filtered out. Oppositely, if there is no match, the certain content is filtered out. - Filtering the content with one or more content sources 158 preferably comprises the
personalized content manager 45 filtering the received content based on received filtering input related to source. For example, the filtering step 158 may include thepersonalized content manager 45 comparing user selected or default source(s) to program nugget source data (e.g.,IP address 102,TCP port 104,local cache path 92, and/or local cache filename 94) found in the received content'sprogram nuggets 74. If the user selected or default source(s) matches the program nugget source data of certain content (e.g., a program), then the certain content is not filtered out. Oppositely, if there is no match, the certain content is filtered out. The order in which the filter steps 156 and 158 are executed is variable. - Sorting the content with the user profile 160 preferable comprises the
personalized content manager 45 sorting the received content based on the user's personal profile. As described above, theclient software 43 preferably tracks the user's content usage and creates a user personal profile, or user profile, based on this tracking. For example, theclient software 43 may store the occurrence or frequency of the user viewing content with acertain program classification 82,category name 84 and/orsub-category name 86. Preferably, theclient software 43 ranks theprogram classifications 82, category names 84 and/orsub-category names 86 of the user's viewed content based on the number of occurrences or frequency of viewing. Alternatively, the user may set or modify the rankings ofprogram classifications 82, category names 84 and/orsub-category names 86 in the user's personal profile. Either way, the sorting step 160 preferably includes thepersonalized content manager 45 sorting the received content to match rankings of theprogram classifications 82, category names 84 and/orsub-category names 86 in the user profile. The sorting step 160 is preferably performed after the filtering steps 156 and 158, although it may be performed prior to these steps. - The generating a personalized content management interface screen that includes a list of titles of filtered and sorted content 164 preferably comprises the
personalized content manager 45 generating a dynamic GUI 110 (e.g., includingmenus program titles 76 of the certain content that was not filtered out by the filtering steps 156 and 158 and which is sorted by the sorting step 160. Thedynamic GUI 110 is preferably displayed by theweb browser 56 on the display device 50 of theuser machine 40. Thedynamic GUI 110 therefore preferably includes content from selected categories (or sub-categories, see specific category menu 132 above) from selected sources (NOC 12, edge-of-net from theISP 16 or personal content 28 from the local cache). - As discussed above, the
dynamic GUI 110 preferably includes numerous sections (e.g., buttons, arrows and/or hyperlinks) through which the user can browse through, search, and further filter the program titles. If the preceding steps are performed in conjunction with theclient software 43 start-up, the default settings are preferably used to filter (156 and 158) the content. If the preceding steps are not performed in conjunction with theclient software 43 start-up, user filtering input and/or default settings may be used to filter the content. Either way, determining if user filtering input is received 164 preferably comprises thepersonalized content manager 45 determining if the user selects a section to enter initial user filtering input (e.g., the user first enters filtering input on the first generated and displayeddynamic GUI 110 afterclient software 43 start-up) or additional user filtering input (e.g., the user enters additional filtering input on adynamic GUI 110 generated based on previous user filtering input). If the user does enter filtering input, themethod 150 preferably repeats steps 156-164. -
FIG. 9 is a flowchart illustrating an exemplary method 170 of personalized content management, preferably performed by thepersonalized content manager 45, as described above. The method 170 preferably comprises the steps of: receiving user category and source selection(s) 172; comparing selected category(ies) to program nugget data 174; comparing selected source(s) toprogram nugget data 176; sorting content with the user profile 178; displaying titles of sorted and matchedcontent 180; receiving user title selection 182; and, displaying content corresponding to selectedtitle 184. Steps 172 to 180 may be performed as described above. For example, the receiving user category and source(s) 172 may include thepersonalized content manager 45 receiving user selections of category button(s) 114 and source button(s) 116. Likewise, displaying title of sorted and matchedcontent 180 may include thepersonalized content manager 45 generating adynamic GUI 110 with theprogram titles 76 of the filtered and sorted content and displaying thedynamic GUI 110 on theweb browser 56 on the display device 50 of theuser machine 40. - Receiving user title selection 182 preferably comprises the personalized content manager 45 (and/or client software 43) receiving a user selection of a
program title 76 displayed in the dynamic GUI 110 (e.g., includingmenus program title 76 by clicking on theprogram title 76, if theprogram title 76 includes a hyperlink. The hyperlink may be a link to the content corresponding to the selected program title, in which case theclient software 43 displays the content corresponding to the selectedtitle 184. Alternatively, as described above, the hyperlink may be a link to a pop-up, pull-down or overlay menu that includes additional options, such as further information regarding the corresponding content (e.g., such as theprogram description 78 or PPV information 98, if applicable), access to thethumbnail 88 and/orvideo trailer 90, and/or the link to the corresponding content, for example. Accordingly, the method 170 may also comprise displaying a pop-up, pull-down or overlay menu (not shown), displaying a program description or PPV information (not shown), and/or displaying a thumbnail or video trailer (not shown). -
FIG. 10 is a flowchart illustrating an exemplary method 190 of personalized content management, preferably performed by thepersonalized content manager 45, as described above. The method 190 preferably comprises the steps of: receiving user category and source selection(s) 192; comparing selected category(ies) toprogram nugget data 194; comparing selected source(s) toprogram nugget data 196; sorting content with theuser profile 198; filtering the content withbandwidth capacity 200; and, displaying titles of sorted and matchedcontent 202. Thefiltering step 200 preferably comprises thepersonalized content manager 45 filtering the content with the bandwidth capacity of theclient 18 on which thepersonalized content manager 45 is running. Preferably, thepersonalized content manager 45 compares the bandwidth capacity to thebitrate 106 in the program nuggets. If thebitrate 106 of certain content exceeds the bandwidth capacity, the certain content is filtered out. As discussed above, thepersonalized content manager 45 may treat the content filtered out based on bandwidth capacity in a variety of ways. For example, thepersonalized content manager 45 may exclude the filtered out content from the generateddynamic GUI 110. Alternatively, thepersonalized content manager 45 may include the filtered out content in thedynamic GUI 110 by including thecorresponding program titles 76 grayed-out without hyperlinks or with hyperlinks to pop-ups, pull-downs or overlays that explain why theprogram title 76 is grayed-out and/or include an offer for expanding the client's 18 bandwidth capacity. -
FIG. 11 is a flowchart illustrating anexemplary method 210 of personalized content management, preferably performed by thepersonalized content manager 45, as described above. Themethod 210 preferably comprises the steps of: receiving user category and source selection(s) 212; comparing selected category(ies) toprogram nugget data 214; comparing selected source(s) toprogram nugget data 216; sorting content with the user profile 218; filtering content with available now status 220; and, displaying titles of available now, sorted and matched content 222. The filtering content with available now status 220 preferably comprises thepersonalized content manager 45 determining what received content is presently available. Generally, all received content is presently available (notwithstanding bandwidth and other restrictions). However, thesystem 10 may multicast or unicast content that is available in the future (e.g., PPV content purchased for a scheduled, later viewing). Also, theNOC 12 generally transmitsprogram nuggets 74 in advance of the corresponding content. Therefore, the filtering content with available now status 220 may include thepersonalized content manager 45 comparingschedule information 96 inprogram nuggets 74 with the present time and filtering out content that corresponds to programnuggets 74 withschedule information 96 for future times. The displaying titles of available now, sorted and matched content 222 preferably includes thepersonalized content manager 45 generating adynamic GUI 110 that includes the available nowmenu 112. The available nowmenu 112 is preferably the default setting for thedynamic GUI 110. -
FIG. 12 is a flowchart illustrating anexemplary method 230 of personalized content management, preferably performed by thepersonalized content manager 45, as described above. Themethod 230 preferably comprises the steps of: receiving user category and source selection(s) 232; comparing selected category(ies) toprogram nugget data 234; comparing selected source(s) toprogram nugget data 236; sorting content with the user profile 238; filtering content withinput schedule data 240; and, displaying titles of scheduled, sorted and matched content 242. The filtering content withinput schedule data 240 preferably comprises thepersonalized content manager 45 receiving a user schedule input and filtering the scheduled content based on the user schedule input. - As described above,
dynamic GUI 110 preferably comprises aschedule menu button 140 that toggles to the scheduledmenu 136. Theschedule menu 136 preferably displays scheduled content and includes a plurality ofday buttons 142 andhour buttons 144. Accordingly, the filtering content withinput schedule data 240 preferably comprises thepersonalized content manager 45 receiving user selections of one ormore day buttons 142 and/orhour buttons 144 and comparing the selected day(s) and/or hour(s) to theschedule information 96 in received program nuggets. The displaying step 242 preferably comprises thepersonalized content manager 45 generating and displaying adynamic GUI 110 comprising a scheduledmenu 136 that includes schedule content withschedule information 96 that matched the selected day(s) and/or hour(s). -
FIG. 13 is a flowchart illustrating anexemplary method 250 of personalized content management, preferably performed by thepersonalized content manager 45, as described above. Themethod 250 preferably comprises the steps of receiving user category and source selection(s) 252; comparing selected category(ies) to program nugget data 254; comparing selected source(s) toprogram nugget data 256; sorting content with the user profile 258; displaying titles of sorted and matched content 260; conducting a word search of displayed titles 262; and, displaying titles of contentmatching word search 264. Conducting a word search of displayed titles 262 preferably comprises thepersonalized content manager 45 receiving a search term input from the textspecific data field 134 and comparing the search term toprogram nugget 74 data. For example, thepersonalized content manager 45 may compare the search term toprogram titles 76,program descriptions 78,program ratings 80,program classifications 82, program category names 84, program sub-category names 86, source data,schedule information 96,expiry date 108, etc. The displaying titles of contentmatching word search 264 preferably includes thepersonalized content manager 45 generating and displaying adynamic GUI 110 withprogram titles 76 corresponding to content that had matchingprogram nugget 74 data. - While the invention has been described with reference to the exemplary embodiments thereof, those skilled in the art will be able to make various modifications to the described embodiments of the invention without departing from the true spirit and scope of the invention. The terms and descriptions used herein are set forth by way of illustration only and are not meant as limitations. Those skilled in the art will recognize that these and other variations are possible within the spirit and scope of the invention as defined in the following claims and their equivalents.
Claims (11)
1-15. (canceled)
16. A personalized content management interface, comprising:
one or more category buttons for receiving a selection of a category from a user;
one or more source buttons for receiving a selection of a source from the user, wherein the one or more source buttons access broadcast data and local cache data; and
a list of content that includes content titles for content that is represented by the selected category and that is provided by the selected source,
wherein the list of content is filtered to exclude content that has a bandwidth requirement more than bandwidth capacity of the client, and wherein a user profile that describes the user's viewing habits is developed and applied to the list of content.
17. The personalized content management interface of claim 1 wherein the one or more source buttons include a source button for edge-of-net content.
18. The personalized content management interface of claim 1 wherein the interface displays available now content.
19. The personalized content management interface of claim 1 wherein the interface displays scheduled content.
20. The personalized content management interface of claim 1 further comprising a user machine and a display, wherein the interface is generated by software resident on the user machine and is displayed on the display.
21. A method of personalized content management, the method being executed at a client with a bandwidth capacity and comprising the steps of:
receiving a selection of a category from a user;
receiving a selection of a source from the user using one or more source buttons, wherein the source buttons access broadcast data and local cache data;
generating a list of content that includes content titles for content that is represented by the selected category and that is provided by the selected source;
filtering the list of content to exclude content that has a bandwidth requirement more than bandwidth capacity of the client;
developing a user profile that describes the user's viewing habits; and
applying the user profile to the list of content.
22. The method of claim 6, further comprising displaying titles of sorted and matched content.
23. A client that has a bandwidth capacity, comprising:
a user machine, that includes:
a processor;
a display; and
a memory that includes client software with a personal content manager module containing instructions for generating an interface comprising:
one or more category buttons for receiving a selection of a category from a user;
one or more source buttons for receiving a selection of a source from the user, wherein the one or more source buttons access broadcast data and local cache data; and
a list of content that includes content titles for content that is represented by the selected category and that is provided by the selected source,
wherein the list of content is filtered to exclude content that has a bandwidth requirement more than bandwidth capacity of the client, and wherein a user profile that describes the user's viewing habits is developed and applied to the list of content.
24. The client of claim 8 wherein the interface displays available now content.
25. The client of claim 8 wherein the interface displays scheduled content.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/479,744 US20130139111A1 (en) | 2000-06-12 | 2012-05-24 | Personalized content management |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US21074700P | 2000-06-12 | 2000-06-12 | |
US09/878,232 US20020057297A1 (en) | 2000-06-12 | 2001-06-12 | Personalized content management |
US10/946,618 US20050114794A1 (en) | 2000-06-12 | 2004-09-22 | Personalized content management |
US11/979,421 US8191015B2 (en) | 2000-06-12 | 2007-11-02 | Personalized content management |
US13/479,744 US20130139111A1 (en) | 2000-06-12 | 2012-05-24 | Personalized content management |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/979,421 Continuation US8191015B2 (en) | 2000-06-12 | 2007-11-02 | Personalized content management |
Publications (1)
Publication Number | Publication Date |
---|---|
US20130139111A1 true US20130139111A1 (en) | 2013-05-30 |
Family
ID=22784117
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/878,232 Abandoned US20020057297A1 (en) | 2000-06-12 | 2001-06-12 | Personalized content management |
US10/946,618 Abandoned US20050114794A1 (en) | 2000-06-12 | 2004-09-22 | Personalized content management |
US11/979,421 Expired - Fee Related US8191015B2 (en) | 2000-06-12 | 2007-11-02 | Personalized content management |
US13/479,744 Abandoned US20130139111A1 (en) | 2000-06-12 | 2012-05-24 | Personalized content management |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/878,232 Abandoned US20020057297A1 (en) | 2000-06-12 | 2001-06-12 | Personalized content management |
US10/946,618 Abandoned US20050114794A1 (en) | 2000-06-12 | 2004-09-22 | Personalized content management |
US11/979,421 Expired - Fee Related US8191015B2 (en) | 2000-06-12 | 2007-11-02 | Personalized content management |
Country Status (3)
Country | Link |
---|---|
US (4) | US20020057297A1 (en) |
AU (1) | AU2001268320A1 (en) |
WO (1) | WO2001097084A2 (en) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8762939B1 (en) | 2010-07-02 | 2014-06-24 | Nuance Communications, Inc. | System and method for displaying key performance indicators in an application design tool |
US8761373B1 (en) | 2011-10-03 | 2014-06-24 | Nuance Communications, Inc. | System and method for determining IVR application flow from customer-service call recordings |
US8825866B2 (en) | 2012-05-02 | 2014-09-02 | Nuance Communications, Inc. | System and method for enabling demand-based pooling of endpoint resources in a multi-application environment |
US8824663B2 (en) | 2010-12-17 | 2014-09-02 | Nuance Communications, Inc. | System, method, and computer program product for detecting redundancies in information provided by customers in a customer service system |
US8903712B1 (en) * | 2011-09-27 | 2014-12-02 | Nuance Communications, Inc. | Call steering data tagging interface with automatic semantic clustering |
US20150169214A1 (en) * | 2013-12-18 | 2015-06-18 | Lenovo (Singapore) Pte. Ltd. | Graphical input-friendly function selection |
US9081410B2 (en) * | 2012-11-14 | 2015-07-14 | Facebook, Inc. | Loading content on electronic device |
US9218188B2 (en) | 2012-11-14 | 2015-12-22 | Facebook, Inc. | Animation sequence associated with feedback user-interface element |
US9229632B2 (en) | 2012-10-29 | 2016-01-05 | Facebook, Inc. | Animation sequence associated with image |
US9235321B2 (en) | 2012-11-14 | 2016-01-12 | Facebook, Inc. | Animation sequence associated with content item |
US9245312B2 (en) | 2012-11-14 | 2016-01-26 | Facebook, Inc. | Image panning and zooming effect |
US9507483B2 (en) | 2012-11-14 | 2016-11-29 | Facebook, Inc. | Photographs with location or time information |
US9507757B2 (en) | 2012-11-14 | 2016-11-29 | Facebook, Inc. | Generating multiple versions of a content item for multiple platforms |
US9547416B2 (en) | 2012-11-14 | 2017-01-17 | Facebook, Inc. | Image presentation |
US9547627B2 (en) | 2012-11-14 | 2017-01-17 | Facebook, Inc. | Comment presentation |
US9607289B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Content type filter |
US9606717B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Content composer |
US9606695B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Event notification |
US9684935B2 (en) | 2012-11-14 | 2017-06-20 | Facebook, Inc. | Content composer for third-party applications |
US9696898B2 (en) | 2012-11-14 | 2017-07-04 | Facebook, Inc. | Scrolling through a series of content items |
Families Citing this family (156)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6778651B1 (en) * | 1997-04-03 | 2004-08-17 | Southwestern Bell Telephone Company | Apparatus and method for facilitating service management of communications services in a communications network |
US20010048738A1 (en) * | 1997-04-03 | 2001-12-06 | Sbc Technology Resourses, Inc. | Profile management system including user interface for accessing and maintaining profile data of user subscribed telephony services |
US6427175B1 (en) * | 1999-09-24 | 2002-07-30 | Clickmarks, Inc | Method and apparatus for collaborative remote link management using sharable online bookmarks |
US7191394B1 (en) | 2000-06-21 | 2007-03-13 | Microsoft Corporation | Authoring arbitrary XML documents using DHTML and XSLT |
US7346848B1 (en) | 2000-06-21 | 2008-03-18 | Microsoft Corporation | Single window navigation methods and systems |
US7000230B1 (en) | 2000-06-21 | 2006-02-14 | Microsoft Corporation | Network-based software extensions |
US7624356B1 (en) | 2000-06-21 | 2009-11-24 | Microsoft Corporation | Task-sensitive methods and systems for displaying command sets |
US6883168B1 (en) | 2000-06-21 | 2005-04-19 | Microsoft Corporation | Methods, systems, architectures and data structures for delivering software via a network |
US7117435B1 (en) | 2000-06-21 | 2006-10-03 | Microsoft Corporation | Spreadsheet fields in text |
US7155667B1 (en) | 2000-06-21 | 2006-12-26 | Microsoft Corporation | User interface for integrated spreadsheets and word processing tables |
US6874143B1 (en) | 2000-06-21 | 2005-03-29 | Microsoft Corporation | Architectures for and methods of providing network-based software extensions |
US6948135B1 (en) | 2000-06-21 | 2005-09-20 | Microsoft Corporation | Method and systems of providing information to computer users |
US7155001B2 (en) * | 2001-10-24 | 2006-12-26 | Sbc Properties, L.P. | System and method for restricting and monitoring telephone calls |
US7317787B2 (en) * | 2000-11-21 | 2008-01-08 | At&T Knowledge Ventures, L.P. | Voice enhancing for advance intelligent network services |
US8402068B2 (en) | 2000-12-07 | 2013-03-19 | Half.Com, Inc. | System and method for collecting, associating, normalizing and presenting product and vendor information on a distributed network |
KR100898424B1 (en) * | 2000-12-12 | 2009-05-21 | 소니 가부시끼 가이샤 | Recording/reproducing device and method, and storage medium |
US7237190B2 (en) * | 2001-03-07 | 2007-06-26 | International Business Machines Corporation | System and method for generating multiple customizable interfaces for XML documents |
US7464072B1 (en) | 2001-06-18 | 2008-12-09 | Siebel Systems, Inc. | Method, apparatus, and system for searching based on search visibility rules |
JP2003030964A (en) * | 2001-07-11 | 2003-01-31 | Sony Corp | Playback device and editing device |
JP2003050816A (en) * | 2001-08-03 | 2003-02-21 | Sony Corp | Retrieval device and retrieval method |
US7337220B2 (en) * | 2001-10-24 | 2008-02-26 | At&T Labs, Inc. | Unified interface for managing DSL services |
US20030115318A1 (en) * | 2001-12-13 | 2003-06-19 | Microsoft Corporation. | Concentric user-targeting delivery system and methods |
US20030126601A1 (en) * | 2001-12-31 | 2003-07-03 | Koninklijke Philips Electronics N.V. | Visualization of entertainment content |
US7502457B2 (en) * | 2002-02-28 | 2009-03-10 | At&T Intellectual Property I, L.P. | Outbound call rules routing |
JP4224250B2 (en) * | 2002-04-17 | 2009-02-12 | パイオニア株式会社 | Speech recognition apparatus, speech recognition method, and speech recognition program |
US7957509B2 (en) * | 2002-04-30 | 2011-06-07 | At&T Intellectual Property I, L.P. | Voice enhancing for advance intelligent network services |
US20040003394A1 (en) * | 2002-07-01 | 2004-01-01 | Arun Ramaswamy | System for automatically matching video with ratings information |
US7200614B2 (en) | 2002-11-27 | 2007-04-03 | Accenture Global Services Gmbh | Dual information system for contact center users |
US20050014116A1 (en) * | 2002-11-27 | 2005-01-20 | Reid Gregory S. | Testing information comprehension of contact center users |
US7502997B2 (en) * | 2002-11-27 | 2009-03-10 | Accenture Global Services Gmbh | Ensuring completeness when publishing to a content management system |
US8275811B2 (en) * | 2002-11-27 | 2012-09-25 | Accenture Global Services Limited | Communicating solution information in a knowledge management system |
US7769622B2 (en) | 2002-11-27 | 2010-08-03 | Bt Group Plc | System and method for capturing and publishing insight of contact center users whose performance is above a reference key performance indicator |
US7062505B2 (en) * | 2002-11-27 | 2006-06-13 | Accenture Global Services Gmbh | Content management system for the telecommunications industry |
US9396473B2 (en) | 2002-11-27 | 2016-07-19 | Accenture Global Services Limited | Searching within a contact center portal |
US8572058B2 (en) | 2002-11-27 | 2013-10-29 | Accenture Global Services Limited | Presenting linked information in a CRM system |
US7418403B2 (en) * | 2002-11-27 | 2008-08-26 | Bt Group Plc | Content feedback in a multiple-owner content management system |
WO2004064296A2 (en) | 2003-01-07 | 2004-07-29 | Home Box Office | Integrated media viewing environment |
US7415672B1 (en) | 2003-03-24 | 2008-08-19 | Microsoft Corporation | System and method for designing electronic forms |
US7275216B2 (en) * | 2003-03-24 | 2007-09-25 | Microsoft Corporation | System and method for designing electronic forms and hierarchical schemas |
US7370066B1 (en) | 2003-03-24 | 2008-05-06 | Microsoft Corporation | System and method for offline editing of data files |
US7296017B2 (en) | 2003-03-28 | 2007-11-13 | Microsoft Corporation | Validation of XML data files |
US7913159B2 (en) | 2003-03-28 | 2011-03-22 | Microsoft Corporation | System and method for real-time validation of structured data files |
US7451392B1 (en) | 2003-06-30 | 2008-11-11 | Microsoft Corporation | Rendering an HTML electronic form by applying XSLT to XML using a solution |
JP2005044104A (en) * | 2003-07-28 | 2005-02-17 | Toshiba Corp | Contents management device and contents management method |
US7082573B2 (en) * | 2003-07-30 | 2006-07-25 | America Online, Inc. | Method and system for managing digital assets |
US7406660B1 (en) | 2003-08-01 | 2008-07-29 | Microsoft Corporation | Mapping between structured data and a visual surface |
US7702723B2 (en) * | 2003-08-01 | 2010-04-20 | Turbine, Inc. | Efficient method for providing game content to a client |
US7334187B1 (en) | 2003-08-06 | 2008-02-19 | Microsoft Corporation | Electronic form aggregation |
US20050044508A1 (en) * | 2003-08-21 | 2005-02-24 | International Business Machines Corporation | Method, system and program product for customizing a user interface |
US7764778B2 (en) * | 2003-09-12 | 2010-07-27 | At&T Intellectual Property I, L.P. | International origin dependent customized routing of calls to toll-free numbers |
KR100605969B1 (en) * | 2003-09-19 | 2006-07-26 | 삼성전자주식회사 | Mobile communication terminal equipment for arranging favorite items and method therefor |
US8438147B2 (en) * | 2003-09-29 | 2013-05-07 | Home Box Office, Inc. | Media content searching and notification |
US7516118B1 (en) * | 2003-12-31 | 2009-04-07 | Google Inc. | Methods and systems for assisted network browsing |
US8175444B2 (en) * | 2004-01-14 | 2012-05-08 | Samsung Electronics Co., Ltd. | Method of reproducing from storage medium storing interactive graphics stream activated in response to user's command |
US8819072B1 (en) | 2004-02-02 | 2014-08-26 | Microsoft Corporation | Promoting data from structured data files |
US9396212B2 (en) * | 2004-04-07 | 2016-07-19 | Visible World, Inc. | System and method for enhanced video selection |
US9087126B2 (en) | 2004-04-07 | 2015-07-21 | Visible World, Inc. | System and method for enhanced video selection using an on-screen remote |
US7496837B1 (en) | 2004-04-29 | 2009-02-24 | Microsoft Corporation | Structural editing with schema awareness |
JP2005327000A (en) * | 2004-05-13 | 2005-11-24 | Sony Corp | User interface controller, user interface control method and computer program |
US7281018B1 (en) | 2004-05-26 | 2007-10-09 | Microsoft Corporation | Form template data source change |
US7774620B1 (en) | 2004-05-27 | 2010-08-10 | Microsoft Corporation | Executing applications at appropriate trust levels |
US20060004799A1 (en) * | 2004-06-18 | 2006-01-05 | Austin Wallender | Network content organization tool |
US9635429B2 (en) | 2004-07-30 | 2017-04-25 | Broadband Itv, Inc. | Dynamic adjustment of electronic program guide displays based on viewer preferences for minimizing navigation in VOD program selection |
US7631336B2 (en) | 2004-07-30 | 2009-12-08 | Broadband Itv, Inc. | Method for converting, navigating and displaying video content uploaded from the internet to a digital TV video-on-demand platform |
US11259059B2 (en) | 2004-07-30 | 2022-02-22 | Broadband Itv, Inc. | System for addressing on-demand TV program content on TV services platform of a digital TV services provider |
US7590997B2 (en) | 2004-07-30 | 2009-09-15 | Broadband Itv, Inc. | System and method for managing, converting and displaying video content on a video-on-demand platform, including ads used for drill-down navigation and consumer-generated classified ads |
US7692636B2 (en) | 2004-09-30 | 2010-04-06 | Microsoft Corporation | Systems and methods for handwriting to a screen |
US8487879B2 (en) | 2004-10-29 | 2013-07-16 | Microsoft Corporation | Systems and methods for interacting with a computer through handwriting to a screen |
US7712022B2 (en) | 2004-11-15 | 2010-05-04 | Microsoft Corporation | Mutually exclusive options in electronic forms |
US7721190B2 (en) | 2004-11-16 | 2010-05-18 | Microsoft Corporation | Methods and systems for server side form processing |
US7904801B2 (en) | 2004-12-15 | 2011-03-08 | Microsoft Corporation | Recursive sections in electronic forms |
US7937651B2 (en) | 2005-01-14 | 2011-05-03 | Microsoft Corporation | Structural editing operations for network forms |
US20060200578A1 (en) * | 2005-02-23 | 2006-09-07 | Sherer W P | Avalanche control for video on demand session setup |
US7725834B2 (en) | 2005-03-04 | 2010-05-25 | Microsoft Corporation | Designer-created aspect for an electronic form template |
US9134884B2 (en) * | 2005-03-30 | 2015-09-15 | Ebay Inc. | Methods and systems to process a selection of a browser back button |
US20060229941A1 (en) * | 2005-04-11 | 2006-10-12 | Gupta Puneet K | Method and apparatus for soliciting and serving banner advertisements based on time-dependent and situational-dependent events |
US8010515B2 (en) | 2005-04-15 | 2011-08-30 | Microsoft Corporation | Query to an electronic form |
US20060274869A1 (en) * | 2005-06-07 | 2006-12-07 | Yahoo! Inc. | Dynamically generating content based on capabilities of a mobile device |
US8200975B2 (en) | 2005-06-29 | 2012-06-12 | Microsoft Corporation | Digital signatures for network forms |
US20070027830A1 (en) * | 2005-07-29 | 2007-02-01 | Microsoft Corporation | Dynamic content development based on user feedback |
AU2005100653A4 (en) * | 2005-08-12 | 2005-09-15 | Agent Mobile Pty Ltd | Mobile Device-Based End-User Filter |
US8949154B2 (en) * | 2005-10-07 | 2015-02-03 | Google Inc. | Content feed user interface with gallery display of same-type items |
US8001459B2 (en) | 2005-12-05 | 2011-08-16 | Microsoft Corporation | Enabling electronic documents for limited-capability computing devices |
US7779343B2 (en) | 2006-01-30 | 2010-08-17 | Microsoft Corporation | Opening network-enabled electronic documents |
US7769805B1 (en) * | 2006-03-31 | 2010-08-03 | Spring Communications Company L.P. | Mobile device catalog and caching and architecture |
US20070239682A1 (en) * | 2006-04-06 | 2007-10-11 | Arellanes Paul T | System and method for browser context based search disambiguation using a viewed content history |
US8214360B2 (en) * | 2006-04-06 | 2012-07-03 | International Business Machines Corporation | Browser context based search disambiguation using existing category taxonomy |
US20070266031A1 (en) * | 2006-05-15 | 2007-11-15 | Adams J Trent | Identifying content |
US8015506B2 (en) * | 2006-09-22 | 2011-09-06 | Microsoft Corporation | Customizing a menu in a discovery interface |
US8112714B2 (en) * | 2006-09-22 | 2012-02-07 | Microsoft Corporation | Customizing application page loading in a discovery interface |
US9032454B2 (en) * | 2006-10-02 | 2015-05-12 | At&T Intellectual Property I, L.P. | System and method of providing interactive content |
US20100106852A1 (en) * | 2007-10-24 | 2010-04-29 | Kindig Bradley D | Systems and methods for providing user personalized media content on a portable device |
EP2080114A4 (en) * | 2006-10-24 | 2012-02-01 | Slacker Inc | Method and device for playback of digital media content |
US8712563B2 (en) * | 2006-10-24 | 2014-04-29 | Slacker, Inc. | Method and apparatus for interactive distribution of digital content |
US10657168B2 (en) | 2006-10-24 | 2020-05-19 | Slacker, Inc. | Methods and systems for personalized rendering of digital media content |
US20080103529A1 (en) * | 2006-10-26 | 2008-05-01 | Old Dominion University | Apparatus and methods for performing cellular electro-manipulations |
US8826281B2 (en) * | 2006-11-07 | 2014-09-02 | Microsoft Corporation | Managing document publication using time-driven job scheduling |
US8898701B2 (en) * | 2006-12-29 | 2014-11-25 | Verizon Patent And Licensing Inc. | Method and system for providing attribute browsing of video assets |
US9071729B2 (en) | 2007-01-09 | 2015-06-30 | Cox Communications, Inc. | Providing user communication |
US8806532B2 (en) * | 2007-01-23 | 2014-08-12 | Cox Communications, Inc. | Providing a user interface |
US8789102B2 (en) * | 2007-01-23 | 2014-07-22 | Cox Communications, Inc. | Providing a customized user interface |
US9135334B2 (en) | 2007-01-23 | 2015-09-15 | Cox Communications, Inc. | Providing a social network |
US20080178125A1 (en) * | 2007-01-23 | 2008-07-24 | Microsoft Corporation | Providing dynamic content in a user interface in an application |
US8869191B2 (en) | 2007-01-23 | 2014-10-21 | Cox Communications, Inc. | Providing a media guide including parental information |
US20080222546A1 (en) * | 2007-03-08 | 2008-09-11 | Mudd Dennis M | System and method for personalizing playback content through interaction with a playback device |
CA2680797C (en) * | 2007-03-14 | 2018-02-13 | Slacker, Inc. | Systems and methods for portable personalized radio |
MX2009011047A (en) * | 2007-04-13 | 2010-03-30 | Sezmi Corp | Viewer interface for a content delivery system. |
US11570521B2 (en) | 2007-06-26 | 2023-01-31 | Broadband Itv, Inc. | Dynamic adjustment of electronic program guide displays based on viewer preferences for minimizing navigation in VOD program selection |
KR20090030966A (en) * | 2007-09-21 | 2009-03-25 | 삼성전자주식회사 | Apparatus and method for composing menu list's rank in potable terminal |
US8799308B2 (en) * | 2007-10-19 | 2014-08-05 | Oracle International Corporation | Enhance search experience using logical collections |
US8301605B2 (en) * | 2007-12-17 | 2012-10-30 | International Business Machines Corporation | Managing maintenance tasks for computer programs |
WO2009085266A2 (en) | 2007-12-21 | 2009-07-09 | Sezmi Corporation | System for content delivery |
US8443106B2 (en) | 2007-12-21 | 2013-05-14 | Gary Stephen Shuster | Content restriction compliance using reverse DNS lookup |
GB2471432A (en) * | 2008-04-03 | 2010-12-29 | Icurrent Inc | Information display system based on user profile data with assisted and explicit profile modification |
US7979565B2 (en) * | 2008-08-27 | 2011-07-12 | International Business Machines Corporation | System and method to provide a network service |
JP4715901B2 (en) * | 2008-10-15 | 2011-07-06 | コニカミノルタビジネステクノロジーズ株式会社 | Management system |
US9245033B2 (en) | 2009-04-02 | 2016-01-26 | Graham Holdings Company | Channel sharing |
KR101604693B1 (en) * | 2009-07-01 | 2016-03-18 | 엘지전자 주식회사 | Mobile terminal and method for controlling multimedia contents thereof |
US8973049B2 (en) * | 2009-12-04 | 2015-03-03 | Cox Communications, Inc. | Content recommendations |
US10156954B2 (en) * | 2010-01-29 | 2018-12-18 | Oracle International Corporation | Collapsible search results |
US8271435B2 (en) * | 2010-01-29 | 2012-09-18 | Oracle International Corporation | Predictive categorization |
US9009135B2 (en) * | 2010-01-29 | 2015-04-14 | Oracle International Corporation | Method and apparatus for satisfying a search request using multiple search engines |
US8832749B2 (en) * | 2010-02-12 | 2014-09-09 | Cox Communications, Inc. | Personalizing TV content |
US20110209091A1 (en) * | 2010-02-24 | 2011-08-25 | Visteon Global Technologies, Inc. | System and method to measure bandwidth in human to machine interfaces |
US8977675B2 (en) | 2010-03-26 | 2015-03-10 | Salesforce.Com, Inc. | Methods and systems for providing time and date specific software user interfaces |
TW201135487A (en) * | 2010-04-12 | 2011-10-16 | Compal Electronics Inc | Method and system for filtering and displaying information |
US8719879B2 (en) | 2010-06-11 | 2014-05-06 | Kuautli Media Investment Zrt. | Method and apparatus for content delivery |
US8732776B2 (en) | 2010-07-01 | 2014-05-20 | Kuautli Media Investment Zrt. | End of show handling |
US9167302B2 (en) | 2010-08-26 | 2015-10-20 | Cox Communications, Inc. | Playlist bookmarking |
US8789117B2 (en) | 2010-08-26 | 2014-07-22 | Cox Communications, Inc. | Content library |
CN101938634B (en) * | 2010-09-16 | 2013-05-08 | 中兴通讯股份有限公司 | Method and device for bandwidth control of set top boxes in IPTV (Internet Protocol Television) system |
US20120131466A1 (en) | 2010-11-23 | 2012-05-24 | Embarq Holdings Company, Llc | User-Based Monitoring and Control |
KR101885377B1 (en) * | 2011-05-04 | 2018-08-29 | 엘지전자 주식회사 | Method for displaying a service list and display device thereof |
US9417754B2 (en) * | 2011-08-05 | 2016-08-16 | P4tents1, LLC | User interface system, method, and computer program product |
US9461759B2 (en) | 2011-08-30 | 2016-10-04 | Iheartmedia Management Services, Inc. | Identification of changed broadcast media items |
US8639178B2 (en) | 2011-08-30 | 2014-01-28 | Clear Channel Management Sevices, Inc. | Broadcast source identification based on matching broadcast signal fingerprints |
US9013996B2 (en) | 2012-05-16 | 2015-04-21 | Centurylink Intellectual Property Llc | Customer configuration of broadband services |
US10198776B2 (en) | 2012-09-21 | 2019-02-05 | Graham Holdings Company | System and method for delivering an open profile personalization system through social media based on profile data structures that contain interest nodes or channels |
CA2796502C (en) * | 2012-11-23 | 2019-09-10 | Ibm Canada Limited - Ibm Canada Limitee | Managing a classification system and associated selection mechanism |
US20140237612A1 (en) * | 2013-02-20 | 2014-08-21 | Avaya Inc. | Privacy setting implementation in a co-browsing environment |
US10275463B2 (en) | 2013-03-15 | 2019-04-30 | Slacker, Inc. | System and method for scoring and ranking digital content based on activity of network users |
US9277262B2 (en) * | 2013-04-05 | 2016-03-01 | Disney Enterprises, Inc. | Content orchestration for assembly of customized content streams |
KR20150000309A (en) * | 2013-06-24 | 2015-01-02 | 삼성전자주식회사 | A method and devic for providing a contents with streaming |
KR102191965B1 (en) * | 2013-07-01 | 2020-12-16 | 삼성전자주식회사 | Mobile terminal and operating method thereof |
US20150074650A1 (en) * | 2013-09-06 | 2015-03-12 | Thomson Reuters Global Resources | Multivariate a/b testing of mobile applications |
US9398316B2 (en) * | 2014-02-17 | 2016-07-19 | Verizon Patent And Licensing Inc. | Temporary storage of recorded content on a cloud storage server |
US9398061B2 (en) | 2014-05-14 | 2016-07-19 | Google Inc. | Simulating broadcast television channel surfing for on-demand content |
US9729933B2 (en) | 2014-06-30 | 2017-08-08 | Rovi Guides, Inc. | Systems and methods for loading interactive media guide data based on user history |
US10652127B2 (en) | 2014-10-03 | 2020-05-12 | The Nielsen Company (Us), Llc | Fusing online media monitoring data with secondary online data feeds to generate ratings data for online media exposure |
DE112015006257T5 (en) * | 2015-05-13 | 2017-11-16 | Google Inc. | SIMULATION OF A TELEPHONE CHANNEL, BROWSING ON-DEMAND CONTENT |
US10401933B2 (en) * | 2015-09-30 | 2019-09-03 | Futurewei Technologies, Inc. | Approach for end-to-end power efficiency modeling for data centers |
US10356456B2 (en) * | 2015-11-05 | 2019-07-16 | Adobe Inc. | Generating customized video previews |
US10685029B2 (en) * | 2015-11-23 | 2020-06-16 | Google Llc | Information ranking based on properties of a computing device |
US11042506B2 (en) * | 2016-07-20 | 2021-06-22 | Microsoft Technology Licensing, Llc | Compliance violation detection |
US11496803B2 (en) * | 2019-02-08 | 2022-11-08 | Hulu, LLC | Video stream switching service |
US11490166B2 (en) * | 2019-12-26 | 2022-11-01 | Sling TV L.L.C. | Systems and methods for program source display |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020023270A1 (en) * | 2000-04-17 | 2002-02-21 | Thomas C. Gomer | Three part architecture for digital television data broadcasting |
US20030088674A1 (en) * | 1996-03-08 | 2003-05-08 | Actv, Inc. | Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments |
US20050086688A1 (en) * | 1999-12-16 | 2005-04-21 | Microsoft Corporation | Methods and systems for managing viewing of multiple live electronic presentations |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5353121A (en) * | 1989-10-30 | 1994-10-04 | Starsight Telecast, Inc. | Television schedule system |
US5758257A (en) * | 1994-11-29 | 1998-05-26 | Herz; Frederick | System and method for scheduling broadcast of and access to video programs and other data using customer profiles |
US6138147A (en) * | 1995-07-14 | 2000-10-24 | Oracle Corporation | Method and apparatus for implementing seamless playback of continuous media feeds |
US5991811A (en) * | 1995-09-04 | 1999-11-23 | Kabushiki Kaisha Toshiba | Information transmission system utilizing both real-time data transmitted in a normal-in-time direction and in a retrospective-in-time direction |
ATE290293T1 (en) * | 1995-10-02 | 2005-03-15 | Starsight Telecast Inc | DEVICES AND METHODS FOR PROVIDING TELEVISION PROGRAM INFORMATION |
JP3097525B2 (en) * | 1995-11-10 | 2000-10-10 | 株式会社日立製作所 | Data transmission method for performing information filtering |
US5953005A (en) * | 1996-06-28 | 1999-09-14 | Sun Microsystems, Inc. | System and method for on-line multimedia access |
US6172677B1 (en) * | 1996-10-07 | 2001-01-09 | Compaq Computer Corporation | Integrated content guide for interactive selection of content and services on personal computer systems with multiple sources and multiple media presentation |
US6216141B1 (en) * | 1996-12-06 | 2001-04-10 | Microsoft Corporation | System and method for integrating a document into a desktop window on a client computer |
GB2340634B (en) * | 1997-03-31 | 2001-04-18 | Microsoft Corp | Query-based electronic program guide |
AU1702199A (en) * | 1997-11-25 | 1999-06-15 | Motorola, Inc. | Audio content player methods, systems, and articles of manufacture |
US6694482B1 (en) * | 1998-09-11 | 2004-02-17 | Sbc Technology Resources, Inc. | System and methods for an architectural framework for design of an adaptive, personalized, interactive content delivery system |
AU5926499A (en) * | 1998-09-15 | 2000-04-03 | Microsoft Corporation | Interactive playlist generation using annotations |
US6766352B1 (en) * | 2000-05-04 | 2004-07-20 | International Business Machines Corporation | Indicator to show that a cached file is being displayed on a client system |
US6670971B1 (en) * | 2000-05-11 | 2003-12-30 | Onder Uzel | Internet television system and method with user selectable genres and schedule |
-
2001
- 2001-06-12 AU AU2001268320A patent/AU2001268320A1/en not_active Abandoned
- 2001-06-12 WO PCT/US2001/018799 patent/WO2001097084A2/en active Search and Examination
- 2001-06-12 US US09/878,232 patent/US20020057297A1/en not_active Abandoned
-
2004
- 2004-09-22 US US10/946,618 patent/US20050114794A1/en not_active Abandoned
-
2007
- 2007-11-02 US US11/979,421 patent/US8191015B2/en not_active Expired - Fee Related
-
2012
- 2012-05-24 US US13/479,744 patent/US20130139111A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030088674A1 (en) * | 1996-03-08 | 2003-05-08 | Actv, Inc. | Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments |
US20050086688A1 (en) * | 1999-12-16 | 2005-04-21 | Microsoft Corporation | Methods and systems for managing viewing of multiple live electronic presentations |
US20020023270A1 (en) * | 2000-04-17 | 2002-02-21 | Thomas C. Gomer | Three part architecture for digital television data broadcasting |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8762939B1 (en) | 2010-07-02 | 2014-06-24 | Nuance Communications, Inc. | System and method for displaying key performance indicators in an application design tool |
US8824663B2 (en) | 2010-12-17 | 2014-09-02 | Nuance Communications, Inc. | System, method, and computer program product for detecting redundancies in information provided by customers in a customer service system |
US8903712B1 (en) * | 2011-09-27 | 2014-12-02 | Nuance Communications, Inc. | Call steering data tagging interface with automatic semantic clustering |
US20150081290A1 (en) * | 2011-09-27 | 2015-03-19 | Nuance Communications, Inc. | Call steering data tagging interface with automatic semantic clustering |
US9251785B2 (en) * | 2011-09-27 | 2016-02-02 | Nuance Communications, Inc. | Call steering data tagging interface with automatic semantic clustering |
US8761373B1 (en) | 2011-10-03 | 2014-06-24 | Nuance Communications, Inc. | System and method for determining IVR application flow from customer-service call recordings |
US8825866B2 (en) | 2012-05-02 | 2014-09-02 | Nuance Communications, Inc. | System and method for enabling demand-based pooling of endpoint resources in a multi-application environment |
US9229632B2 (en) | 2012-10-29 | 2016-01-05 | Facebook, Inc. | Animation sequence associated with image |
US9684935B2 (en) | 2012-11-14 | 2017-06-20 | Facebook, Inc. | Content composer for third-party applications |
US9547627B2 (en) | 2012-11-14 | 2017-01-17 | Facebook, Inc. | Comment presentation |
US9081410B2 (en) * | 2012-11-14 | 2015-07-14 | Facebook, Inc. | Loading content on electronic device |
US9235321B2 (en) | 2012-11-14 | 2016-01-12 | Facebook, Inc. | Animation sequence associated with content item |
US9245312B2 (en) | 2012-11-14 | 2016-01-26 | Facebook, Inc. | Image panning and zooming effect |
US9218188B2 (en) | 2012-11-14 | 2015-12-22 | Facebook, Inc. | Animation sequence associated with feedback user-interface element |
US9507483B2 (en) | 2012-11-14 | 2016-11-29 | Facebook, Inc. | Photographs with location or time information |
US9507757B2 (en) | 2012-11-14 | 2016-11-29 | Facebook, Inc. | Generating multiple versions of a content item for multiple platforms |
US9547416B2 (en) | 2012-11-14 | 2017-01-17 | Facebook, Inc. | Image presentation |
US10762684B2 (en) | 2012-11-14 | 2020-09-01 | Facebook, Inc. | Animation sequence associated with content item |
US9607289B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Content type filter |
US9606717B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Content composer |
US9606695B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Event notification |
US10768788B2 (en) | 2012-11-14 | 2020-09-08 | Facebook, Inc. | Image presentation |
US9696898B2 (en) | 2012-11-14 | 2017-07-04 | Facebook, Inc. | Scrolling through a series of content items |
US10459621B2 (en) | 2012-11-14 | 2019-10-29 | Facebook, Inc. | Image panning and zooming effect |
US10664148B2 (en) | 2012-11-14 | 2020-05-26 | Facebook, Inc. | Loading content on electronic device |
US10762683B2 (en) | 2012-11-14 | 2020-09-01 | Facebook, Inc. | Animation sequence associated with feedback user-interface element |
CN104731401A (en) * | 2013-12-18 | 2015-06-24 | 联想(新加坡)私人有限公司 | Device and method for graphical input-friendly function selection |
US20150169214A1 (en) * | 2013-12-18 | 2015-06-18 | Lenovo (Singapore) Pte. Ltd. | Graphical input-friendly function selection |
Also Published As
Publication number | Publication date |
---|---|
AU2001268320A8 (en) | 2008-09-04 |
WO2001097084A3 (en) | 2008-07-24 |
US20080065991A1 (en) | 2008-03-13 |
US20050114794A1 (en) | 2005-05-26 |
US20020057297A1 (en) | 2002-05-16 |
WO2001097084A2 (en) | 2001-12-20 |
US8191015B2 (en) | 2012-05-29 |
AU2001268320A1 (en) | 2001-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8191015B2 (en) | Personalized content management | |
US11601697B2 (en) | System for addressing on-demand TV program content on TV services platform of a digital TV services provider | |
US9923947B2 (en) | Method and system for providing media programming | |
US7509340B2 (en) | Dynamic graphical index of website content | |
US8782194B2 (en) | Streaming media search and playback system | |
US8856826B2 (en) | System and method for effectively presenting multimedia information materials | |
US6486892B1 (en) | System and method for accessing, manipulating and viewing internet and non-internet related information and for controlling networked devices | |
US20020049635A1 (en) | Multiple advertising | |
US7996791B2 (en) | Streaming video programming guide system selecting video files from multiple websites and automatically generating selectable thumbnails | |
US8122472B2 (en) | User interface presenting enhanced video content information associated with video programs | |
US6772147B2 (en) | System and method for effectively implementing a personal channel for interactive television | |
US7155451B1 (en) | Automated browsing system for publishers and users on networks serving internet and remote devices | |
US7228305B1 (en) | Rating system for streaming media playback system | |
US20080162573A1 (en) | System and method for media search and playback | |
US20080016538A1 (en) | Distributed architecture for media playback system | |
JP2005509949A (en) | Method and system for retrieving, updating and presenting personal information | |
US7617296B2 (en) | Data compilation system and method | |
WO2001082621A1 (en) | Media and information display systems and methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |