STREAMING MEDIA PERSONALIZED PROGRAM SCHEDULER
BACKGROUND OF THE INVENTION
Field of the Invention:
The present invention relates, in general, to methods and apparatus for receiving music and other audio broadcasts and, more specifically, to streaming media broadcasts on the Internet. Description of the Art:
Television and radio stations have for years distributed audio and visual programs by transmitting audio and visual signals in to a predetermined format via high frequency carrier waves which are broadcast from transmitters to receivers within a predefined area of transmission. It is also known for network broadcasts to be transmitted via land or satellite link to receivers at various locations across the country or the world for rebroadcast within a predetermined area of the individual receiver. The recent development of on-line networks, such as the Internet, have enabled streaming media broadcasts in digital form to be transmitted from individual radio and television stations through an Internet service provider for communication via the Internet to individual user computers, each also connected to the Internet through a service provider. All television and radio stations print, or in the case of cable and satellite television transmissions, display, or otherwise make available to the public a listing of the various programs and the program broadcast start and end times for their entire program schedule, usually on a weekly basis. More detailed information concerning each program may also be available, such as the program content, lead actors and actresses, the diskjockey, show host, etc.
Regardless of the nature of the audio or visual broadcast media, an individual who desires to listen to certain programs, such as radio programs, has heretofore been required to first locate the particular program of interest by word of mouth, random selection or from a printed program schedule, determine its day of the week and start and end times of broadcast, and then, at the appropriate time and/or day, turn on his or her radio or audio receiver to listen to the broadcast. As the next
program of interest may be broadcast on a different station, the user is required to redial his or her audio receiver at the appropriate time to receive the next program.
The Internet has expanded the range of available audio or visual programs which can be received by an individual listener to the entire world rather than just from transmitters within the user's local area or a few networks. However, it is extremely difficult, if not impossible, to obtain program schedule information from radio stations located outside of a user's home country or even home locality. Even if a listener was able to obtain a program listing of radio broadcasts in a foreign country, the program listing will be scheduled for the time zone or zones of the resident country and not the listener's local time zone. The listener must therefore convert the program time of a particular broadcast to his own time zone if he wants to listen to the program when it is broadcast.
In addition, while a listener can usually obtain program listings of television and radio broadcasts within his or her locality, or even from national broadcast networks, programs offered in other localities of a are usually difficult to obtain.
Thus, it would be desirable to provide a radio and/or television broadcast scheduling apparatus and method which enables a listener to search for programs of interest across the entire world, obtain program schedule and program content information about such programs, and then schedule such programs into an individually personalized listening schedule in which the only action required of the listener is to turn on his or her Internet communications interface to receive the selected programs at appropriate broadcast times.
SUMMARY OF THE INVENTION The present invention is a method and apparatus for scheduling and communicating the broadcast of streaming media material to a user according to a unique user schedule using the Internet.
According to one aspect of the invention, the method of scheduling the broadcast of streaming media material using the Internet comprises the steps of:
creating a program database of streaming media programs accessible through the Internet including at least the program name and program start and end broadcast times and optionally, the program description; selecting programs from the program database for scheduling in a unique user schedule stored in a user database; creating a schedule of selected programs from the program database in the user database; storing the schedule in the user database; and communicating programs listed in the user database from the program broadcast source to the user through the Internet.
Preferably, the method further includes the step of converting the start and end times of each program in the program database to the time zone of the user.
The method also includes the step of resolving conflicts between scheduled program start and end times and prior scheduled programs before storing a new selected program in the user's schedule.
In another aspect of the invention, means are provided in a control for allowing a user to search the program database by entering keywords for program material containing the keywords and outputting a list containing the keywords.
In another aspect of the invention, the method further comprises the step sensing the broadcast media format of each program when a program is selected for transmission to a user and then configuring the user receiver to accept the transmitted program in the required broadcast format.
In another aspect of the invention, an apparatus communicates programs broadcast over the Internet as streaming media to a user. The apparatus includes means for creating a program database of programs material available as streaming media from broadcast sources, the programs material including at least the name of the program and the start and end times of the program. The apparatus also includes means for enabling a user to select at least one program from the program database. Means are also provided for storing a user selected program in a discrete user schedule in a user database according to the day of play and at least the start time of the selected program.
Finally, means are provided, upon user access, for communicating the streaming media broadcast of a user selected program to the user during the time of broadcast of the program.
The apparatus also includes means for receiving at least one program and one station program station information from a broadcast source for storing in the program database.
The apparatus includes means responsive to the user resident time zone, for converting the start and end times of each program in the program database to an equivalent user resident time. The apparatus also includes means for determining a schedule conflict between a previous user selected program in the user schedule and at least one of a start time, and end time and the intervening time therebetween of a new selected program. The schedule conflict means resolves the conflict before storing a newly selected program in the user selected schedule. The method and apparatus of the present invention provides a unique communication methodology enabling a user to not only search and obtain information concerning radio and/or television and/or other audio and/or video programs broadcast in streaming media format over the Internet, but also selecting desired programs for storage in a discrete user schedule, unique for each user. The user then needs only to access the website of the control which contains the program database and user's schedule database to access the stored program schedule. The control then access the user's schedule and broadcasts the then current program in the user's schedule which is being broadcast over the Internet to the user.
The method and apparatus includes several unique features, one of which is an automatic time zone adjustment of the starting and end times of each program in the program database to the user resident time zone as each program is selected for scheduling or transmission to the user.
Another unique feature is the means for automatically detecting schedule conflicts between a newly selected program and prior programs in the user's schedule before entering the new program in the user's schedule.
In another aspect, the method and apparatus of the present invention uniquely sends the broadcast format of the streaming media program selected for transmission to the user and then configures the user Internet connection to the proper broadcast format to receive the streaming media broadcast of the selected program.
BRIEF DESCRIPTION OF THE DRAWING The various features, advantages and other uses of the present invention will become more apparent by referring to the following detailed description and drawing in which: Fig. 1 is a pictorial diagram of a streaming media communications network in which the present invention is utilized;
Fig. 2 is a general block diagram of the database portion of the streaming media scheduling apparatus and method of the present invention;
Fig. 3 is a representation of a display screen showing a user's personal pages;
Fig. 4 is a representation of a display screen showing the search feature of the present invention;
Fig. 5 is a detailed flow diagram showing the sequence of operation of the inventive apparatus and method; Fig. 6 is a screen display representation showing the scheduling step of the present invention;
Fig. 7 is a block diagram of the scheduler logic according to the present invention; and
Fig. 8 is a flow diagram showing the program play sequence of operation according to the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENTS Before describing the features of the scheduler apparatus and method of the present invention, a brief explanation of an Internet based, streaming media audio program network will be presented to better to understand the features and advantages of the present scheduler apparatus and method.
Public and network television and radio stations, denoted generally by reference numbers 10 and 12 in Fig. 1, have for years broadcast television and radio programs by carrier wave transmission from transmitters 14 and 16. The transmitters have a given power transmission range. Within the transmission range of the transmitters 14 and 16, individuals can receive the broadcast signal from the broadcast source or station 10 or 12 via high frequency carrier signals.
Certain broadcast media, including radio and television stations 10 and 12, now also transmit their programs in digital format for transmission as streaming audio or streaming media over the Internet. In such a communication network, a data line 20, such as a cable or modem connection, is provided between a CPU at each broadcast station 10 or 12 and an individual service provider 22 and 24 for each broadcast station 10 or 12. The service provider, such as America On-line, etc., provides interconnection in the necessary Hyper Text Transmission Protocol or other communication protocol to establish communication with other service providers through the Internet 26.
In general, the digital streaming media is available from each service provider 22 and 24 to individual users, such as first and second users, each having a computer or CPU 28 and 30, respectively. Each CPU 28 and 30 is connected to a service provider 32 for communication via the Internet 26 to any other service provider, such as the service providers 22 and 24 to which the broadcast stations 10 and 12 are connected. In this manner, the users of the CPUs 28 and 30, upon inputting an appropriate website address of the broadcast station 10 or 12, may receive the digital streaming media signals from the individual broadcast station 10 and 12 through the Internet 26, which signals are converted to analog signals and output through conventional speakers 34 driven by individual sound generator cards or circuits in each CPU 28 and 30.
The streaming media is typically provided in one of a number of specific formats, such as the separate formats used by Real Media, Microsoft Windows Media, Quick Time, Liquid Audio, etc. A control computer or CPU 40, according to the present invention, executes a memory stored program to selectively schedule and automatically control
the flow of digital streaming media from any of the broadcast sources, such as broadcast sources 10 and 12, to the individual CPUs 28 and 30 whenever the user activates the CPU 28 or 30. The CPU 40 may be any conventional central processing unit or computer, including microprocessor based controllers workstations, etc. The CPU 40 is also connected through a service provider 42 to the Internet 26. An I/O interface 44 is connected to the CPU 40 for inputting and outputting signals therefrom. The I/O interface 44 typically includes a keyboard, and/or mouse and a display monitor.
The CPU 40 also communicates with a memory 45 which is capable of receiving data to form a program database 46 and user database 48. The formation and use of the program database 46 and user database 48 is shown in Fig. 2.
With respect to the program database 46, station information 50, such as the station call letters, the station broadcast frequency and other station information, such as the location of the broadcast station, is input along with program information 52 for the particular station to form programming information 54 which is stored as the program database 46 in the memory 45. The program information 52 will include the program schedule of the particular station which hereafter will be described as a 24-hour/7-day schedule divided into at least one hour segments and possibly even smaller segments, such as fifteen minutes, thirty minutes, etc. In addition to a particular program start time and end time, other information may also be provided as part of the program information 52 such as the title of the program, its general subject matter or content, the names of the diskjockey(s) or program hosts as well as other pertinent information which may be useful to an individual user to determine whether or not he or she would enjoy listening to the particular program. All of this information is stored as programing information 54 in the program database
46.
The user database program 48 is formed of user information 56 and a user schedule 58. With respect to user information 56, information about the particular user is stored by the CPU 40 in the user database 48. Such information can include the name of the individual user, the time zone where the user is located, a user
password, e-mail address, etc. This information is stored in a so-called "personal page" in the user database 48.
The user schedule 58 can be developed in a variety of ways. First, as shown in Fig. 3, the control program executed by the CPU 40 has a search capability which enables a user to search through the various programs and other program and station information stored in the program database 46 to locate programs which may be of interest to the user. Favorite subjects or programs may also be stored on the user's personal page in the user database 48. Three such favorites are shown in Fig. 3, by example. After accessing the search capability through the input of a user name and password, the user can type in any word or series of words with appropriate search connectors as is conventional with other search engines available on the Internet. For example, if the user inputs the term "Greek", as shown in Fig. 4, the CPU 40, after conducting a search through the programming information 54 in the program database 46 will output a list of stations or programs which deal with Greek subjects, originate from Greece, or contain news or music relevant to those of Greek extraction. The user can then select any of the stations, or programs listed in the search output for more information, such as the program information 52 on any station or program in the search output. This enables a user to obtain the title of a program which he or she wishes to schedule for listening, as well as the start and end times of the program.
As part of the search capability of the control of the present invention, the personal page screen shown in Fig. 3 also provides the user with the ability to click on and listen to any currently playing program in one of at least two streaming media formats, such as Real Media or Microsoft Windows Media formats. Various icons can also be selected to delete a selection, edit a selection or play a selection.
In Fig. 5, the scheduler sequence of the present invention is depicted. In step 60, the user conducts the search described above and partially shown in Figs. 3 and 4. A choice is made in step 62 between a specific program or an entire station as shown on the search output. When program is selected in step 62, program information 52 of the particular program is displayed to the user in step 64 on his or
her monitor. The user can select this program for addition to his or her user page by clicking on an appropriate icon on the screen in step 66.
The CPU 40 then displays the screen shown in Fig. 6 which lists the program and other pertinent information, such as its title and start and end times. The user inputs an entry type in step 67 in the entry type box as to how often the user wishes to listen to the selected program. For example, if the selected program runs daily, the user can input the term "daily" to add the schedule on a daily basis to his user page. Alternately, the user can select other entry types, such as once a week, every other day, etc., regardless of the actual broadcast of the program on a daily basis.
After receiving program information 52 about the selected program, the user inputs in steps 68 and 69 the start time and end time of the program. In the case of a selected station, the start and end times 68 and 69 could signify a particular program. Although the start time and end time can coincide with the actual start and end times of the program broadcast, the user can be more selective and limit his listening to a shorter period, such as one hour of a four hour broadcast.
Next, the control or CPU 40 conducts a schedule conflict check in step 70, Fig. 5, to determine if the start and end times entered by the user for the selected program, and including the time period between such start and end times conflict with any previously scheduled programs in the user page. The control of the present invention provides conflict determination and resolution by first determining if a schedule conflict exists between a newly selected program and a previously selected and stored program on the user page, as well as taking corrective action, such as rejecting the newly selected program and displaying an error message in step 71 or adding the new selected program to the user page and displaying a confirmation message in step 72 of overriding the previously stored program. The user also has the capability to adjust the start and end times of any previously stored program or a newly selected program to resolve a schedule conflict when receiving an error message in step 71. Going back to step 62, the user can select a station from a search list or from a entered station call letters. Upon selecting a station from the search listing
in step 62, the station profile page containing station information 50 is displayed to the user in step 74 along with the station program schedule in step 76. The user can then select and add individual programs at the selected station to his personal page through steps 66-72 as described above. The user also has the capability of clicking on an icon on the display screen to obtain program details in step 78.
This creation of a personal page or user program schedule is shown in greater detail in Fig. 7. The user can perform a search using keywords in step 60 and find program information and station information through the search results in step 80. Such information includes station and program information defined above as programming information 54.
The user can then select a program or station to a be added to the user page or schedule in step 67. When scheduling programs, the user is directed through a sequence in which the CPU 40 displays program information in step 64 as well as the entry type box 67 to enable the user to select either daily or a specific day of the week for play of the selected program. Step 73 shows a menu of the individual days of the week (Monday through Friday) for the day type selection or an exact date of the month for a date type input.
The CPU 40 then displays the user's day or date schedule in step 82. The user has the capability of having individual schedules for different days of the week or dates or a single schedule which is continually repeated as shown in step 84. The conflict check in step 70 compares previously stored user schedule data 58 with the newly selected program. If no conflict exists, the newly selected program is added to the user schedule data 58 in step 88. This scheduling process can be continued to enable a user to add to the schedule or be terminated.
A somewhat similar sequence is followed by the CPU 40 when "station" information is selected in step 62. First, the station profile or information is displayed in step 74. The user can also input a daily or specific date of station play in step 68 and select a specific day of the week or date for the program play in step 73. The user's day or date schedule is then displayed in step 82. The user then selects the start and end time of the selected station in step 84. A conflict check 68 compares the
user's preexisting schedule 58 with the day or date of play and the start and end times of play of programs on the selected station. If no conflict exist, the selected station is added to the user's schedule data 58 in step 98. Again, this process can be continued by the user to add to the schedule or be terminated. It should be noted that an individual user's schedule stored in the user database 48 may be mostly filled during the waking hours of the seven days of the week or may be intermittent in terms of scheduled programs and blank or non- scheduled time periods. The scheduled program periods would coincide to those times when the user expects to be able to listen to the selected program by turning on his computer 28 or 30 and accessing the website of the CPU 40.
In order to play the selected schedule, a user activates his computer 28 or 30 and launches the play sequence by first inputting the address of the CPU 40 in step 110. The CPU 40 then accesses the specific user's database 48 and determines which scheduled program coincides with the then existing time based on Greenwich Mean Time (GMT). It should be noted at this point that the program information 52 supplied by each broadcast source will be in the Greenwich Mean Time (GMT) where the particular broadcast source is located. The control of the present invention will automatically convert these times to current GMT times for the user's time zone. For example, a program which originates in Great Britain and which is broadcast at 9:00 a.m. GMT on Monday of each week will be displayed to a user located in New York with a five hour time adjustment wherein the start and end times of the selected program will be readjusted from 9:00 a.m. GMT to 4:00 a.m. GMT for the user in New York.
The CPU 40 selects the program corresponding to the current GMT, the user's time zone in step 112 and provides the necessary Internet links to connect the user's computer 28 or 30 with the proper broadcast source 10 or 12 to enable the selected program to be played in step 114 and broadcast through the audio system 34 of the user's computer 28 or 30.
It should also be noted that the control or CPU 40 automatically determines the streaming media format of any program selected for communication to
the user and then communicates the selected program in the media format of the program broadcast source.
The CPU 40 then waits for a preset time period, which has been set to five minutes, by example only, in step 116 before checking the user's schedule data 48 for the next program in the user's schedule. In this manner, the CPU 40 continually loops through the user's schedule 48 and will play successive programs from the user's schedule as long as the user remains connected to the broadcast source by the link established through the control of the present invention. The user may terminate the Internet connection at any time. In summary, the present invention enables individual users to conduct a worldwide search of streaming media broadcast sources to determine stations and/or programs of interest to the particular user and then enable the user to schedule the programs or certain programs on a selected station in a discrete user page or schedule. The program information of the streaming media broadcast sources is stored in a program database at a control. In this manner, the user can access the control through conventional Internet communications causing the control to access the user's schedule and then create the necessary Internet communication links to couple the selected streaming media broadcast source to the user for broadcast of the media for the scheduled time period selected by the user. Subsequent scheduled programs are automatically connected by the control to the user at the specified scheduled times. In addition, the present invention uniquely provides time zone adjustment of scheduled programs around the world to enable the user to access the desired program at the proper time of broadcast.