# Patent

## Title
Receiver monitoring and alert system

## Abstract

A method and system are provided in which a user is enabled to create a preferred playlist of the user's favorite songs. An input device allows the user to add and/or delete songs from this preferred playlist. In an exemplary embodiment, songs playing on several radio stations are monitored and when a song from the user's favorites list begins to play on a station other than the station to which the user is currently tuned, an audio and/or visual signal is provided to alert the user, and the user may change stations manually or tune to the new station automatically.

## Background
RELATED APPLICATIONS
Subject matter disclosed and not claimed herein is disclosed and claimed in related co-pending Application No. 11/044,569, which was filed on Jan. 27, 2005 and which is assigned to the assignee of the present application and included herein by reference.
FIELD OF THE INVENTION
The present invention relates generally to information processing systems and more particularly to a system and methodology for processing received digital audio and/or video signals.
BACKGROUND OF THE INVENTION
In the rapidly changing world of telecommunications and electronics in general, the concepts of radio that exist today are not much different from those in existence in the early part of the twentieth century. Despite the advent of physical media which enable a user to carry the music to which the user wishes to listen, the concept of radio still exists in a format offering users very few user options. Although a user may choose a station or several stations which may be preferred by the user, there are no current options which enable users to listen to preferred music selections, for example, at the user's convenience rather than on the timetables provided by the local broadcasters.
Moreover, it is oftentimes frustrating for a user to switch among radio stations in an effort to find a music selection preferred by the user. Many times, when a user finally does find a music selection or song that the user prefers, the song may be ending and the user may have to initiate the station scanning process all over again. This is not only frustrating to the user but also distracting and even dangerous when the user is operating a motor vehicle at the same time.
Thus, there is a need for an improved digital processing system which provides a greater degree of control by users of radio and other broadcast signal content.
SUMMARY OF THE INVENTION
A method and system are provided in which a user is enabled to create a preferred playlist of the user's favorite songs or types of video presentations. An input device allows the user to add and/or delete items from the favorites list. In an exemplary video application, a user is enabled to indicate by using a digital video recorder, a specific type of broadcast such as “Sports” or “Basketball”. In an exemplary radio application, the user is enable to list songs on the preferred playlist. Video signals or songs playing on several channels or stations are monitored and when a listed video type or song from the user's favorites list begins to play on a station other than the station to which the user is currently tuned, an audio and/or visual signal is provided to alert the user, and the user may change channels or stations manually or tune to the new station automatically. In one embodiment, the user alert and/or automatic changing of stations is accomplished only if the video type or song being played on the channel or station currently being listened to is not on the user's favorites list. In one example, the user is enabled to add video types or songs to the favorites list by pressing an “ADD” button at any time while a type of video or a favorite song is being played. Thereafter, when the selected video type or song is again played, the user is alerted to change channels or tune the appropriate station to watch the selected video type or listen to the selected song. The user is also enabled to delete video types and/or songs from the favorites list by entering an edit mode to present the favorites list on a display associated with the television or radio, highlighting or otherwise indicating a video type or song which the user wishes to delete and pressing a delete button. The ADD and DELETE functions may also be implemented through the use of an embedded voice processing system in which case the user need only speak an appropriate command such as “Add”, “Delete” or “Change Station”.



BRIEF DESCRIPTION OF THE DRAWINGS
A better understanding of the present invention can be obtained when the following detailed description of a preferred embodiment is considered in conjunction with the following drawings, in which:
FIG. 1 is a block diagram of a receiving device implemented in accordance with the present invention;
FIG. 2 is a schematic block diagram of a compare function implemented in accordance with the present invention;
FIG. 3 is an illustration of one embodiment of a display unit used in connection with the present invention;
FIG. 4 is an illustration of another embodiment of a display unit which may be used in connection with the present invention;
FIG. 5 is a flow chart showing an exemplary operational sequence using the present invention; and
FIG. 6 is a flow chart illustrating an exemplary operational sequence for a delete function as may be used with the present invention.



DETAILED DESCRIPTION
Relatively recent developments in Radio Data System (RDS) and Radio Broadcast Data System (RBDS) technologies have resulted in widespread implementation of improved digital processing systems for radio transmission systems. With RDS, identification information concerning a song currently being played on a radio for example, is available from the broadcast information for other uses. For example, the name of the song, the artist, the album and other related information may be decoded from a received radio transmission and made available for additional processing. Although the present disclosure is made with regard to an RDS radio system, it is understood that the principles contained herein also have application to video signal processing methodologies, and may be used in connection with digital video receivers and recorders as well, in processing various types and titles of digital video signal streams.
It is noted that circuits and devices which are shown in block form in the drawings are generally known to those skilled in the art, and are not specified to any greater extent than that considered necessary as illustrated, for the understanding and appreciation of the underlying concepts of the present invention and in order not to obfuscate or distract from the teachings of the present invention.
With reference to FIG. 1, the various methods discussed herein may be implemented within a receiving device 100 which illustrates only one of many possible exemplary embodiments of the present invention. The receiving device 100 includes a receiver unit 101 which is arranged to receive broadcast signals through an antenna 102. The radio receiver unit 101 receives signals from the antenna 102 and converts those signals into a plurality of digital data streams 105 of information S1-S(n). Received signals may include, for example, amplitude modulated (AM), frequency modulated (FM) and/or citizen's band (CB) signals, inter alia. Analog signals are converted into digital streams through analog-to-digital converters (not shown) within the radio receiver unit 101. As hereinafter discussed in greater detail, a digital data stream is generated for each station that has been tuned-in or selected by a user of the receiver unit 101. If no stations have been pre-selected by a user, the receiver 101 provides data streams for each of a predetermined number of the strongest stations received by the receiver 101. In the present example, where no stations have been pre-selected by a user, the radio receiver 101 will digitize and provide data streams for the five strongest stations being received. It is understood that the exact number of default stations may be any number depending upon the application and the number of stations being received in the geographical area.
The station digitized data streams are applied to processing circuitry 103 which includes one or more CPUs 107, a memory unit 109, storage 111, a network interface 113 and voice processing circuitry 115. The memory unit 109 is used for selectively storing favorite songs and listings. The voice processing circuitry 115 enables synthesized voiced announcements to be made and also enables direct user input through voiced commands. Voiced inputs as well as push-button inputs are processed through a user input or interface unit 117. All of the functional blocks within the processing circuitry 103 are connected together by a common system bus. The system is designed to enable a user, inter alia, to input the name or title of a favorite song using a voiced input to the voice processing module 115. The voiced-in title will then be inserted into a favorites listing such that the system will subsequently search for the input title from song header information transmitted from the tuned radio stations.
Outputs from the processing circuitry 103 are provided to a display module 119, and also as played station audio output to a speaker system 121 of an audio player. The display device 119 may comprise, for example, a liquid crystal display (LCD) which is viewable by a user in a motor vehicle. Outputs from the processing circuitry are also provided to an audio alert system 123, which, in response to signals provided from the processing circuitry 103, is enabled to alert a user to various conditions by sounding alarms and/or synthesized voice announcements. Other alarms including visual alarms (i.e. flashing or blinking text) are also enabled to effect and modify visual presentations or screens on the display module 119.
As shown in FIG. 2, in one example, audio data streams S1-S(n) are applied to a First-In First-Out (FIFO) memory and station selection control unit 201. The FIFO memory is designed to capture and shift data streams of a length, i.e. “T”, which corresponds to the length of a typical audio stream for most popular songs. When a song is queued for playing by a tuned station, header information containing the song title and other related information is detected 203 and the header information is switched by a switching device 205 to a header information buffer 207 where it is accessed and compared in a look-up and compare circuit 209 to a favorites list containing a listing of a user's favorite songs. When a match is detected, alert signals are sent to alert a user that one of the user's favorite songs is currently being played on a given station. Subsequently, when a user switches from another station in order to hear a favorite song, the beginning of the song is referenced to begin playing from the appropriate FIFO memory unit. Each of the predetermined tuned radio stations provides a digital data stream and each data stream is applied to a different channel in a FIFO memory and selection control unit 201. As shown, a user may select which station is to be played and the data stream from the selected station is output to an audio player 202.
In FIG. 3, there is shown a display screen arrangement 301 which is positioned to be viewable by a user (i.e. driver or passenger) within a motor vehicle for example. As shown, the display screen arrangement 301 includes a display area 303 to display the station to which the radio receiver is tuned at any given time. Another section 304 of the display area includes a “favorite song” area 305 which indicates when one or more of a user's favorite songs are playing on one of the tuned stations 307. When more than one of the user's favorite songs are playing at the same time, all of songs that are currently playing will be indicated 308 along with the respective stations 310. Songs that have been previously recorded or saved to memory may also be selected and played by a user and the display area 304 will identify which song is currently being played.
In another display area section 312, there is shown a Favorites List 311 which displays an assigned reference number 313 for each favorite song of the user together with the corresponding song title 315 and singer 317. There is also a column to indicate whether or not a particular song on the favorites list has already been recorded 320. Those songs that have been recorded may be selected, highlighted and played from memory by the user by hitting a Play button 323. Songs on the favorites list which have been identified and input to the favorites list by the user (for example by a voiced input) cannot be played from memory until a user has recorded the playing of that song from a tuned station. However, a user may have an unrecorded favorite played by actuating the Add button 319 when an alert signal indicates that the favorite is being played on a tuned station as is hereinafter explained in greater detail.
In another section 322, a user is enabled to select songs from the Favorites List 311, e.g. Song B, for playing and/or deletion. A user is enabled to move from song to song on the Favorites List 311 by manipulating the Select Button 321 which will highlight 318 the particular song selection on the display screen. The user is then enabled to either play a selected recorded song by actuating the Play Button 323 or delete the selected recorded song by actuating a Delete Button 325. The various buttons are shown in differing shapes in order to facilitate the selection of the correct button by a user driving a motor vehicle without requiring the user to look at the button itself. In another exemplary implementation, the various buttons are positioned on the side of the steering wheel for easy access.
The “Add Current Song” feature enables a user, for example a driver of a motor vehicle, to hit only one button, i.e. the “Add Current Song” (ADD) Button 319, in order to have a song currently being received by the receiver 101 on any of the tuned stations, to be marked and entered on the “Favorites List” 311 and optionally recorded from the FIFO memory 201 to non-volatile (NV) memory and/or storage for later retrieval and playing at the user's convenience. When a user hears a song on the station currently being listened to and the user wishes to record the current song, all the user has to do is hit the ADD button 319. If a favorite song is being played on another station, then an alert signal, i.e. blinking or steady light 309 will be activated to show that a favorite 305 is playing and on which station 307. An audio alert signal may also be concurrently sounded in order to get the user's attention. The user may then manually switch to the indicated station at which time the alert signals will be turned off. Light 309 and/or indicator 307 may also serve a dual function as a push button switch in order to facilitate switching stations and insure that the correct station is switched to without requiring the user to manually search for the correct station as displayed 307. The unit may also be programmed to automatically switch stations when a favorite is playing on another station. The processing may also include a check on the currently playing song before switching so that the player will not switch to a new station if a favorite is already playing on the current station. The “ADD”, “DELETE” and other functions may also be implemented through the use of an embedded voice processing system in which case the user need only speak an appropriate command such as, but not limited to, “Add”, or “Delete” or “Switch”.
FIG. 4 shows a simplified alternate layout of a display arrangement 400 in which typical radio selection push buttons 401, 403, 405, 407 and 409 are arranged to correspond to tuned radio stations A, B, C, D and E which are shown on display area 412. In FIG. 4, each radio station has a corresponding alert light indicator 402, 404, 406, 408 and 410 which is designed to light up when a favorite song is playing on the corresponding station. The function of the alert light indicators 402-410 are the same as alert indicator 309 in FIG. 3. FIG. 4 also shows a simplified operational panel section for adding 419, selecting 421 and deleting 423 songs from a displayed favorites playlist 411.
As shown in the flow chart of FIG. 5, in a typical operation when the system is initiated, a memory check 501 is first made in order to insure that there is sufficient memory available to store a favorite song if one is played while a user is listening to the radio input audio player. This memory check precludes the possibility that a user will be alerted that a favorite song is being played but there is not sufficient memory to record it. Next, if sufficient memory is available 503, then the data streams from the tuned stations are monitored and compared 511 with the favorites list to look for a “match”. If there is not sufficient memory 503 to store a favorite song if a favorite song happens to be detected, then an appropriate message is displayed and announced via synthesized voice message 505, and an option 507 is given to the user to execute a delete function 509 to delete a selected favorite and make memory space available for a new favorite song before beginning to monitor the tuned stations 511.
Next, when a match occurs 513 between a song on the favorites list and a song playing on one of the tuned radio stations, the currently playing status is announced 515 to a user by an alert signal. If the user chooses to have the favorite song played 517 on the audio player, then the radio channel is switched 519 to the station which is playing the favorite song and the favorite song is played. When the favorite song has completed playing 521, the processing continues from the memory check block 501.
In another example, the user is enabled to actuate a “record only” button (not shown) so that when the playing of a favorite song is detected on another station, the system records the favorite song from the other station “in the background” but does not change the station that is currently being listened to by the user. Further enhancements include the ability to set degrees of preferences for favorite songs such that one song or a group of preferred songs will be displayed in one color and/or more prominently, while other less preferred songs would be displayed less prominently and/or in a different color. In this example, when preferred songs are played on another station, the system automatically switches stations but when less preferred songs are detected as being played, only a visual and/or audio indication or alert is given and the user has the option to manually switch to the new station at that time.
FIG. 6 illustrates an exemplary operational sequence which occurs during a Delete function. As shown, when a delete function is selected 601 by a user pushing the delete button 325, the selected favorite song on the play list is highlighted, for example, by blinking text 603 to identify the song to be deleted. If the highlighted song is the one intended to be deleted by the user, the user will confirm 605 the delete function by, for example, hitting the delete button 325 a second time. If the wrong song is highlighted for deletion, the user may select another function 607. For example, the user may hit the select button 321 to move up or down on the favorites list and that operation 609 will cancel the pending but unconfirmed deletion operation. The user may also choose the Add 319 or Play 323 buttons to effect a cancellation of the pending but unconfirmed delete function. If after hitting the Delete button one time, no further action is taken for a predetermined period of time 615, the Delete function will also be canceled and the process will end. If the Delete function is confirmed by the user by hitting the Delete button, for example, for a second time, then the highlighted song will be deleted 611 and the memory that was taken by the deleted song will again be made available 613.
The processing herein disclosed may be implemented in many forms and combinations of hardware and software. The following illustrates an exemplary high level source code listing which may be used to alert a driver when a favorite song is playing.















blnFavoriteSongPlaying=false



while (true) {









1. Get RDS info for currently playing radio station.



2. Look up song title in favorite songs list. If









present, blnFavoriteSongPlaying=true,









else blnFavoriteSongPlaying=false.









3. For each preset station in preset stations list









3a. Get RDS info for currently playing song. (The









car would have a separate tuner for this purpose so as not



to interfere with the currently playing song).









3b. Look up song title in favorite songs list.



3c. If title exists in favorite songs list









3c1. If (blnFavoriteSongPlaying)









3c1a. Update timestamp for entry in









favorite songs list with current time.









3c2. Else









3c2a. Retrieve timestamp for entry in









favorite songs list.









3c2b. If (timestamp!=null&&(current









time-timestamp)>30 seconds)









3c2b1. Clear timestamp for entry









in favorite songs list.









3c2b2. Turn off display for









flashing light above preset station, if it was currently



on.









3c2c. Else









3c2c1. Display flashing light









above preset station that has been currently cycled to in



order to alert the driver that a favorite song is playing



on a different station.



}










In an exemplary video application, a user in a home environment is enabled to indicate by using a digital video recorder and menu driven inputs, a specific type of broadcast such as “Sports” or “Basketball”, and a processing methodology as described above would alert the user when a preferred type of video broadcast is being played on a channel other than the channel currently being watched by the user. Similar processing methodologies are applied to enable the user to add or switch to a channel where a preferred type of video presentation is being presented.
The method and apparatus of the present invention has been described in connection with a preferred embodiment as disclosed herein. The disclosed methodology may be implemented in a wide range of sequences, menus and screen designs to accomplish the desired results as herein illustrated. Although an embodiment of the present invention has been shown and described in detail herein, along with certain variants thereof, many other varied embodiments that incorporate the teachings of the invention may be easily constructed by those skilled in the art, and even included or integrated into a processor or CPU or other larger system integrated circuit or chip. The disclosed methodology may also be implemented solely or partially in program code stored on a CD, disk or diskette (portable or fixed), or other memory device, from which it may be loaded into memory and executed to achieve the beneficial results as described herein. Accordingly, the present invention is not intended to be limited to the specific form set forth herein, but on the contrary, it is intended to cover such alternatives, modifications, and equivalents, as can be reasonably included within the spirit and scope of the invention.

## Claims

1. A method for processing a plurality of digital data streams, said digital data streams being derived from transmissions received from a like plurality of radio stations, said method comprising:
receiving said digital data streams by a processing circuit;
simultaneously storing segments of all of said digital data streams in separate memory units, said segments being of a duration sufficient to include complete songs being played on said radio stations from a beginning to an end of said songs;
determining when one or more of said digital data streams contains a predetermined data sequence, said predetermined data sequence being representative of the playing of a particular song on one of said radio stations;
producing an alert signal upon said determining, said alert signal being operable to provide at least one perceptible indicium to a user that said predetermined song is being received by said receiver; and
providing a selection means to said user, said selection means being selectively operable by said user to play said predetermined song from said beginning of said predetermined song.

2. The method as set forth in claim 1 wherein said predetermined data sequence is representative of a title of said song.

3. The method as set forth in claim 2 wherein said predetermined data sequence is contained within a header segment of a song file.

4. The method as set forth in claim 1 wherein said at least one perceptible indicium is a visually perceptible indicium.

5. The method as set forth in claim 1 wherein said at least one, perceptible indicium is an audibly perceptible indicium.

6. The method as set forth in claim 1 wherein said at least one perceptible indicium includes a visually perceptible indicium.

7. The method as set forth in claim 1 and further including producing an indication of a particular one of said radio stations from which said predetermined song is being received.

8. The method as set forth in claim 1 and further including enabling a switching from a currently listened to radio station to said particular one of said radio stations from which said predetermined song is being received.

9. The method as set forth in claim 1 and further including:
enabling a user to create a playlist of said user's favorite songs; and
displaying said playlist on a display device.