Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEM, METHOD, AND APPARATUS FOR AUTOMATIC CHANNEL RECOMMENDATION AND SELECTION
Document Type and Number:
WIPO Patent Application WO/2009/113040
Kind Code:
A3
Abstract:
A channel recommendation apparatus to recommend radio channels. The channel recommendation apparatus includes a radio channel analyzer and an automatic channel selector coupled to the radio channel analyzer. The radio channel analyzer scans available radio channels for broadcast content, analyzes the broadcast content of each radio channel having broadcast content, and classifies each radio station having broadcast content. The automatic channel selector automatically initiates a switch from a current radio channel to a new radio channel in response to a disruption of content in progress on the current radio channel.

Inventors:
LI HONG (NL)
GERRITS ANDREAS JOHANNES (NL)
GODDARD STEPHEN (DE)
Application Number:
PCT/IB2009/051058
Publication Date:
November 19, 2009
Filing Date:
March 13, 2009
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NXP BV (NL)
LI HONG (NL)
GERRITS ANDREAS JOHANNES (NL)
GODDARD STEPHEN (DE)
International Classes:
H04H60/43; H04H60/65
Foreign References:
US6748237B12004-06-08
EP1434371A22004-06-30
Attorney, Agent or Firm:
WILLIAMSON, Paul (IP&L DepartmentBetchworth House, 57-65 Station Road, Redhill Surrey RH1 1DL, GB)
Download PDF:
Claims:
What is claimed is:

1. A channel recommendation apparatus to recommend radio channels, the channel recommendation apparatus comprising: a radio channel analyzer to scan a plurality of radio channels for broadcast content, to analyze the broadcast content of each radio channel having broadcast content, and to classify each radio station having broadcast content; an automatic channel selector coupled to the radio channel analyzer, the automatic channel selector to automatically initiate a switch from a current radio channel to a new radio channel in response to a disruption of content in progress on the current radio channel.

2. The channel recommendation apparatus of claim 0, wherein the automatic channel selector is further configured to measure a signal quality of the current radio channel, wherein the disruption of the content in progress comprises a determination that the signal quality is less than a quality threshold.

3. The channel recommendation apparatus of claim 0, wherein the automatic channel selector is further configured to automatically initiate the switch to the new radio channel in response to recognition of a less preferred audio segment within the content in progress, wherein the disruption of the content in progress comprises the recognition of the less preferred audio segment according to a user profile.

4. The channel recommendation apparatus of claim 0, wherein the radio channel analyzer is further configured to collect an audio sample from each of the radio channels which has broadcast content and to perform audio analysis on each collected audio sample to classify the corresponding radio channels according to a plurality of genre classifications and to measure a musical feature similarity between the audio sample and a plurality of audio segments associated with the user profile.

5. The channel recommendation apparatus of claim 0, wherein the radio channel analyzer is further configured to collect metadata from each of the radio channels

which has broadcast content and to analyze the collected metadata to classify the corresponding radio channels according to a plurality of genre classifications.

6. The channel recommendation apparatus of claim 0, further comprising a memory device to store a lookup table of available radio channels having broadcast content, wherein each of the available radio channels is identified by a genre classification.

7. The channel recommendation apparatus of claim 0, wherein the automatic channel selector is further configured to generate a recommended channel list based on the analyzed broadcast content generated by the radio channel analyzer. 8. The channel recommendation apparatus of claim 0, wherein the radio channel analyzer is further configured to rank the plurality of radio channels according to the analyzed broadcast content generated by the radio channel analyzer relative to a user profile, and to allocate a higher scanning priority to newly discovered radio channels and preferred audio segments and a lower scanning priority to less-preferred audio segments, wherein the higher scanning priority comprises longer scan durations and a higher frequency of scans.

9. The channel recommendation apparatus of claim 0, wherein the automatic channel selector is further configured to prompt the user with an audio cue and a visual cue to select the new radio channel from the recommended channel list. 10. The channel recommendation apparatus of claim 0, further comprising a behavior analyzer coupled to the automatic channel selector, the behavior analyzer to analyze user listening behavior to identify genres of interest to the user and to identify genres of disinterest to the user.

11. A computer program product comprising a computer useable storage medium to store a computer readable program that, when executed on a computer, causes the computer to perform operations comprising: scan a plurality of radio channels for broadcast content; analyze the broadcast content of each radio channel having broadcast content; classify each radio station having broadcast content; and automatically initiate a switch from a current radio channel to a new radio channel in response to a disruption of content in progress on the current radio channel. 12. The computer program product of claim 0, wherein the computer readable program, when executed on the computer, causes the computer to perform operations to measure a signal quality of the current radio channel and to automatically initiate the switch to the new radio channel based on the signal quality, wherein the disruption of the content in progress comprises a determination that the signal quality is less than a quality threshold.

13. The computer program product of claim 0, wherein the computer readable program, when executed on the computer, causes the computer to perform operations to automatically initiate the switch to the new radio channel in response to recognition of a less preferred audio segment within the content in progress, wherein the disruption of the content in progress comprises the recognition of the less preferred audio segment according to a user profile.

14. The computer program product of claim 0, wherein the computer readable program, when executed on the computer, causes the computer to perform operations to collect an audio sample from each of the radio channels which has broadcast content and to perform audio analysis on each collected audio sample to classify the corresponding radio channels according to a plurality of genre classifications and to measure a musical feature similarity between the audio sample and a plurality of audio segments associated with the user profile.

15. The computer program product of claim 0, wherein the computer readable program, when executed on the computer, causes the computer to perform operations to collect metadata from each of the radio channels which has broadcast content and to analyze the collected metadata to classify the corresponding radio channels according to a plurality of genre classifications.

16. The computer program product of claim 0, wherein the computer readable program, when executed on the computer, causes the computer to perform operations to analyze user listening behavior to identify genres of interest to the user and to identify genres of disinterest to the user.

17. The computer program product of claim 0, wherein the computer readable program, when executed on the computer, causes the computer to perform operations to generate a recommended channel list based on the analyzed broadcast content generated by the channel analyzer and to prompt the user with an audio cue and a visual cue to select the new radio channel from the recommended channel list.

18. The computer program product of claim 0, wherein the computer readable program, when executed on the computer, causes the computer to perform operations to rank the radio channels according to the analyzed broadcast content relative to a user profile, and to allocate a higher scanning priority to newly discovered radio channels and preferred audio segments and a lower scanning priority to less-preferred audio segments, wherein the higher scanning priority comprises longer scan durations and a higher frequency of scans.

19. A radio receiver comprising : a first tuner to tune to a selected radio channel; a second tuner to implement a background scan of a plurality of radio channels having broadcast content; and a channel recommendation apparatus coupled to the first and second tuners, the channel recommendation apparatus to identify a recommended radio channel based on a user profile. 20. The radio receiver of claim 0, further comprising a user interface to allow a user to enable operation and features of the channel recommendation apparatus and to set user preferences, including user interests and user disinterests, associated with the user profile.

Description:

SYSTEM, METHOD, AND APPARATUS FOR AUTOMATIC CHANNEL RECOMMENDATION AND SELECTION

In a conventional radio receiver, a user in a certain geographical area may store preferred radio station frequencies of radio stations whose content is available in that geographical area and whose content and format appeals to the user. The user stores the preferred radio station frequencies according to the user's preferences for format and content broadcasted from the different radio stations. The preferred radio station frequencies are stored as presets by associating each preferred radio station frequency with one or more buttons on the conventional radio receiver. The user may then select a preset radio station using a button on the conventional radio receiver.

When the user leaves the certain geographical area and enters a new geographical area, or when the user travels beyond the broadcasting area of the radio stations in the certain geographical area that is associated with the user's presets, the presets may no longer tune to radio stations whose format and content appeals to the user. Moreover, the presets may tune to frequencies on the radio band that are unused in the new geographical area, producing static when the preset is selected.

Where the signal associated with the frequency stored in the preset no longer maintains a clear fidelity, or where a different radio station in the new geographical area uses the same radio station frequency as the preferred radio station frequency associated with a preset to broadcast content of a different format that does not appeal to the user, the user may manually scan the radio frequency range to find alternative content that appeals to the user.

For a user driving in a vehicle, it is often difficult to quickly get an overview of the new radio channels when the user drives to a new geographical area. The user manually scans all the radio channels to find channels with appealing content. The driver may manually scan the radio channels several times to find appealing content. As the driver scans through different radio channels listening for content that the driver may find appealing, the driver may skip over content and programs that would be appealing to the driver because of quick channel switching behaviors and/or

commercial breaks. Manually scanning and rescanning consumes valuable time and attention from the driver, and may distract the driver from driving. Such manual scanning and rescanning may present, at best, a potential annoyance to the driver and, at worst, a potential harm to the driver as well as pedestrians and other drivers. Embodiments of an apparatus are described. In one embodiment, the apparatus is a channel recommendation apparatus for recommending radio channels. The channel recommendation apparatus includes a radio channel analyzer and an automatic channel selector coupled to the radio channel analyzer. The radio channel analyzer scans a plurality of radio channels for broadcast content, analyzes the broadcast content of each radio channel having broadcast content, and classifies each radio station having broadcast content. The automatic channel selector automatically initiates a switch from a current radio channel to a new radio channel in response to a disruption of content in progress on the current radio channel. Other embodiments of the apparatus are also described. Embodiments of a system are also described. In one embodiment, the system is a radio system for recommending radio channels. The radio system includes a radio receiver, a first tuner, a second tuner, and a channel recommendation apparatus. The first tuner tunes to a selected radio channel. The second tuner implements a background scan of a plurality of radio channels having broadcast content. The channel recommendation apparatus identifies a recommended radio channel based on a user profile. Other embodiments of the system are also described.

Other aspects and advantages of embodiments of the present invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrated by way of example of the principles of the invention.

Fig. 1 depicts a schematic block diagram of one embodiment of a radio system.

Fig. 2 depicts a schematic block diagram of one embodiment of a radio receiver.

Fig. 3 depicts a schematic block diagram of one embodiment of a channel recommendation apparatus.

Fig. 4 depicts a schematic flow chart diagram of one embodiment of a channel recommendation method for use with the channel recommendation apparatus of Fig. 3.

Fig. 5 depicts a schematic flow chart diagram of one embodiment of an automatic channel selector method for use with the channel recommendation apparatus of Fig. 3.

Throughout the description, similar reference numbers may be used to identify similar elements.

Fig. 1 depicts a schematic block diagram of one embodiment of a radio system 100. The radio system 100 includes a radio station- 1 102, a radio station-N 104, a radio interface 106, a personal mobile audio device 108, a home audio device 110, and a vehicle audio device 112. Although the depicted radio system 100 is shown and described herein with certain components and functionality, other embodiments of the radio system 100 may be implemented with fewer or more components or with less or more functionality.

In one embodiment, the radio system 100 includes a plurality of radio stations 102-104. In some embodiments, the radio stations 102-104 include all the radio channels broadcasted in a certain geographical area. In some embodiments, the radio station- 1 102 broadcasts content of a certain format and genre. In some embodiments, the radio station-N 104 broadcasts content of a different format and genre than the format and genre of the radio station- 1 102. For example, the radio station- 1 102 may broadcast content with a sports-radio format and the radio station- N 104 may broadcast content with a classical music format. Alternatively, the radio station-N 104 broadcasts content of a similar format and genre as that of the radio station- 1 102. In some embodiments, the radio stations 102-104 broadcast modulated radio frequency signals over the radio interface 106 such as an over-the-air (OTA) interface.

In one embodiment, the personal mobile audio device 108 includes a radio receiver. A user may carry the personal mobile audio device 108 with him or her as he or she travels from one location to another. The radio receiver of the personal mobile audio device 108 allows the user to tune to any one of the plurality of radio stations 102-104 according to the user's preferences. Selecting one of the plurality of radio stations 102-104 allows the user to listen to the selected radio station such as the radio station- 1 102.

In one embodiment, the home audio device 110 includes a radio receiver. A user typically leaves the home audio device 110 in a home for home listening to radio station broadcasts and other music. The radio receiver of the home audio device 1 10 allows the user to tune to any one of the plurality of radio stations 102-104 according to the user's preferences. Selecting one of the plurality of radio stations 102-104 allows the user to listen to the selected radio station such as the radio station- 1 102. In one embodiment, the vehicle audio device 112 includes a radio receiver. A user typically listens to radio station broadcasts in his or her vehicle via the vehicle audio device 112. The radio receiver of the vehicle audio device 112 allows the user to tune to any one of the plurality of radio stations 102-104 according to the user's preferences. Selecting one of the plurality of radio stations 102-104 allows the user to listen to the selected radio station such as the radio station- 1 102. Fig. 2 depicts a schematic block diagram of one embodiment of a radio receiver 200. The radio receiver 200 is typical of radio receivers found in audio devices such as the personal mobile audio device 108, the home audio device 110, the vehicle audio device 112, and other similar audio devices. The radio receiver 200 includes a user interface 202, a channel recommendation apparatus 204, a tuner- 1 206, a tuner-N 208, a first antenna 210 connected to the tuner-1 206, and a second antenna 212 connected to the tuner-N 208. Although the depicted radio receiver 200 is shown and described herein with certain components and functionality, other embodiments of the radio receiver 200 may be implemented with fewer or more components or with less or more functionality.

In one embodiment, the user controls the radio receiver 200 through the user interface 202. In some embodiments, the user interface 202 includes buttons, knobs, displays, on-screen buttons and interactive selections on a display, and other software-based and/or tactile interfaces that allow a user to control and interact with the functionality of the radio receiver 200 such as voice-controlled commands. In some embodiments, the user interface 202 allows a user to set user preferences. In some embodiments, the user interface 202 allows a user to save user preferences in a user profile. In some embodiments, the user interface 202 allows a user to enable operation and features of the channel recommendation apparatus 204. The channel recommendation apparatus 204 enables the radio receiver 200 of the personal mobile audio device 108, the home audio device 110, the vehicle audio device 112, and/or other similar audio devices to scan the entire broadcast range of radio stations 102-104 for content that is appealing to a user according to a saved user profile. The channel recommendation apparatus 204 simultaneously also may allow a user to select and listen to one of the plurality of radio stations 102-104.

In one embodiment, the radio receiver 200 includes two tuners, the tuner- 1 206 and the tuner-N 208. In some embodiments, the radio receiver includes at least two tuners tuner- 1 206 through tuner-N 208. In some embodiments, the channel recommendation apparatus 204 implements the tuner- 1 206 to tune to a selected radio station and allows the user to listen to the broadcast content of the selected radio station. In some embodiments, the channel recommendation apparatus 204 implements the tuner-N 208 to perform a background scan of other radio stations. In some embodiments, the channel recommendation apparatus 204 implements the tuner- 1 206 and the tuner-N 208 simultaneously in order to allow a user to tune and listen to a selected radio station while performing a background scan of the entire broadcast range of radio stations 102-104 for content that is appealing to a user according to a saved user profile.

In one embodiment, the antennas 210 and 212 receive content broadcasted from the radio stations 102-104. In some embodiments, the antenna 210 allows the tuner- 1 206 to tune into a selected radio channel and antenna 212 allows the tuner-N

208 to scan the broadcast content of radio channels. The antennas 210 and 212 may include omni-directional antennas, directional antennas, sectoral antennas, panel antennas, and/or other types of antennas.

Fig. 3 depicts a schematic block diagram of one embodiment of a channel recommendation apparatus 300. In some embodiments, the channel recommendation apparatus 300 is substantially similar to the channel recommendation apparatus 204 shown in Fig. 2. As depicted, the channel recommendation apparatus 300 includes a processor 302, a memory device 304, a radio channel analyzer 306, and an automatic channel selector 308. In one embodiment, the memory device 304 stores a lookup table 310 and at least one user profile 312. The illustrated channel recommendation apparatus 300 also includes a behavior analyzer 314. Although the depicted channel recommendation apparatus 300 is shown and described herein with certain components and functionality, other embodiments of the channel recommendation apparatus 300 may be implemented with fewer or more components or with less or more functionality.

In some embodiments, the channel recommendation apparatus 300 executes radio-scanning and recommendation algorithms according to the settings and preferences entered by a user through the user interface 202. As explained above, in some embodiments, the channel recommendation apparatus 300 implements the tuner- 1 206 to allow the user to listen to a radio channel, and controls at least one other tuner such as the tuner-N 208 to scan multiple radio channels and detect broadcast content from each available radio station such as the radio station- 1 102 through the radio station-N 104. In some embodiments, the channel recommendation apparatus 300 extracts audio samples from each of the scanned radio stations and stores the audio samples in the memory device 304. In some embodiments, the channel recommendation apparatus 300 generates a recommended channel list based on the extracted audio samples. In some embodiments, the channel recommendation apparatus 300 selects a new radio channel from the recommended channel list and switches the tuner- 1 206 to the new radio channel.

In one embodiment, the processor 302 is a central processing unit (CPU) with one or more processing cores. In other embodiments, the processor 302 is a radio channel processing unit or another type of processing device such as a general purpose processor, an application specific processor, a multi-core processor, or a microprocessor. Alternatively, a separate processor may be coupled to the channel recommendation apparatus 300. In general, the processor 302 executes one or more instructions to provide operational functionality to the channel recommendation apparatus 300. The instructions may be stored locally in the processor 302 or in the memory device 304. Alternatively, the instructions may be distributed across one or more devices such as the processor 302, the memory device 304, or another data storage device.

In some embodiments, the memory device 304 includes a lookup table 310. In some embodiments, the memory device 304 buffers the extracted audio samples for processing. In some embodiments, the memory device 304 stores user preferences, for example, that a user enters through the user interface 202. In some embodiments, the user preferences are stored in a user profile 312. Thus, the radio receiver 200, in some embodiments, allows at least one user to store a plurality of profiles. For example, user A prefers sports radio programs and user B prefers rock music programs. User A enters his user preferences in the radio receiver 200 through the user interface 202 and stores those user preferences as a user A profile. User B enters her user preferences in the radio receiver 200 through the user interface 202 and stores those user preferences as a user B profile. Storing a user profile 312 on the memory device 304 allows the channel recommendation apparatus 300 to scan, analyze, and recommend channels based on the user preferences of a currently selected user profile 312.

In some embodiments, the memory device 304 also stores a list of available radio stations according to a signal quality threshold. When the signal quality of a radio station exceeds the signal quality threshold, then the channel recommendation apparatus 300 includes the radio station in the list of available radio stations. In some embodiments, the memory device 304 stores analyses associated with the extracted

audio samples. In some embodiments, the memory device 304 also stores data associated with the listening behavior and listening habits of a user. In some embodiments, the memory device 304 stores program statistics and/or historical data associated with a scanned radio channel. In some embodiments, the memory device 304 is a random access memory

(RAM) or another type of dynamic storage device. In other embodiments, the memory device 304 is a read-only memory (ROM) or another type of static storage device. In other embodiments, the illustrated memory device 304 is representative of both RAM and static storage memory within the channel recommendation apparatus 300. In some embodiments, the memory device 304 is content-addressable memory (CAM). In other embodiments, the memory device 304 is an electronically programmable read-only memory (EPROM) or another type of storage device. Alternatively, a separate memory device may be coupled to the radio channel analyzer 306, the automatic channel selector 308, and/or the behavior analyzer 314. Additionally, some embodiments store the instructions as firmware such as embedded foundation code, basic input/output system (BIOS) code, cluster optimization code, and/or other similar code.

In some embodiments, the radio channel analyzer 306 controls at least one tuner such as the tuner-N 208 to scan multiple radio channels and detect broadcast content from each available radio station such as the radio station- 1 102 through the radio station-N 104. The radio channel analyzer 306 scans a radio station such as the radio station- 1 102 to collect data related to the programming information and format associated with the radio station-1 102. In some embodiments, the radio channel analyzer 306 extracts audio samples from the radio station-1 102 and/or the radio station-N 104. In some embodiments, the radio channel analyzer 306 gathers broadcasted metadata such as the genre, program information, and information associated with the Radio Data System (RDS). RDS is a standard for sending small amounts of digital information using conventional FM radio broadcasts, although other standards may be used. The RDS standardizes several types of transmitted information, including time, track title, artist, and station identification, etc. Based on

the data gathered such as the audio samples and metadata, the radio channel analyzer 306 analyzes the gathered data in conjunction with the user preferences of the currently selected profile.

In some embodiments, the radio channel analyzer 306 uses an audio analysis algorithm to detect frequency spectrum features and a set of musical features associated with the audio sample. In some embodiments, the spectrum features and musical features extracted by the analysis algorithm include tonality, chroma, rhythm statistics, and so forth.

In some embodiments, a feature vector is extracted at a predetermined rate (e.g., every 0.5 seconds). In some embodiments, a plurality of feature vectors are extracted on an overlapped window of audio samples. In some embodiments, the audio analysis includes a segment algorithm to segment songs and other program items of a radio channel. Additionally, a feature vector may be generated for each segmented item. Thus, the radio channel analyzer 306 determines whether the audio sample is a sample of classical music, a sample of rock music, a sample of news reporting, a sample of disc jockey (DJ) talk, a sample of sports radio programming, a sample of commercial advertising, or other similar radio content. In some embodiments, the radio channel analyzer 306 uses the analysis results from the audio sample in conjunction with the captured broadcast metadata in order to rank each available radio channel in accordance with the user preferences of the currently selected user profile 312.

In some embodiments, the recommended channel list contains each available radio channel in an order determined by the rank given to each available radio channel by the radio channel analyzer 306. In some embodiments, the recommended channel list contains a partial list of each available radio channel according to the rank given to each available radio channel by the radio channel analyzer 306. In some embodiments, the radio channel analyzer 306 tracks the available radio stations and stores information associated with each available radio station in the lookup table 310. In some embodiments, the radio channel analyzer 306 performs analysis on the audio samples in conjunction with the stored program statistics and/or

historical data associated with a scanned radio channel. In some embodiments, the radio channel analyzer 306 discovers a new radio station and adds the newly discovered radio station to the stored list of available radio stations.

In some embodiments, the radio channel analyzer 306 computes a music-to- talk ratio according to the analysis of an audio sample with the audio analysis algorithm. In some embodiments, the radio channel analyzer 306 associates a time- stamp with the radio channel analysis in order to associate a radio station program format with the time of day. For example, the morning format of a certain radio station may be mostly talk-radio with some music played, while the afternoon format of the same radio station may be mainly music played with some talk-radio. Thus, in some embodiments, the radio channel analyzer 306 associates the music-to-talk ratio with the time of day.

In some embodiments, the memory device 304 stores the analysis results history such as detected class, duration, and time to estimate a schedule of a radio channel such as through a week. The size of the history depends on the size of the memory device 304. Thus, the estimated schedule provides a table of probability of possible classes at a given moment in the week. The probability is determined by the number of occurrence of a class around the same time in the past determined from the stored analysis results history. In some embodiments, the probability has a quality measure, which increases when the number of results increases, and drops when the results decrease over time. From the stored analysis results history, a schedule of a radio channel is derived such as a certain talk-radio show on certain days of the week at certain times of the day.

In some embodiments, the radio channel analyzer 306 builds a recommended channel list according to a data set associated with each available radio station. In some embodiments, the radio channel analyzer 306 ranks each of the available radio stations in the recommended channel list according to the data set associated with each available radio station. In some embodiments, the radio channel analyzer 306 dynamically adjusts the ranking of the available radio stations according to the current analysis of each available radio channel. For example, when a user selects a

user preference of music over talk, or a high music-to-talk ratio, a radio station that has a morning talk show with some music in the morning but mostly plays music in the afternoon may be ranked low in the morning time during the morning talk show and increase in rank in the afternoon when music is mostly played. In some embodiments, the data set associated with each available radio station includes at least the user preferences of the currently selected profile or default profile, the user behavior and listening habits associated with an available radio station, and the stored program information and historical data associated with the available radio station. Additionally, the data set may also include the associated metadata gathered from the available radio station, the audio analysis computed according to the audio analysis algorithm, the stored program statistics and/or historical data associated with a scanned radio channel, and a previous ranking of each available radio station. In some embodiments, a user selects to view the recommended channel list in some form through the user interface 202. In some embodiments, the automatic channel selector 308 monitors the current listening conditions of the radio receiver 200. The automatic channel selector 308 monitors the current listening conditions of the radio receiver 200 to detect a disruption of content in progress. In response to detection of a disruption of content, the automatic channel selector 308 automatically selects a new radio channel from the recommended channel list. In other words, when a user is listening to a currently selected radio channel, and the automatic channel selector 308 detects a disruption of content, the automatic channel selector 308 selects the new radio channel and changes the radio station from the currently selected radio channel to the new selected radio channel by directing the tuner- 1 206 to tune to the frequency of the new selected radio channel. In some embodiments, the automatic channel selector 308 generates the recommended channel list and dynamically updates the recommended channel list.

A disruption of content may include the signal quality of the currently selected radio channel dropping below a predetermined signal quality threshold. In some embodiments, a disruption of content may be defined according to a user preference

stored in the memory device 304. For example, a user may enter a user preference through the user interface 202 to select a new radio channel in response to the radio channel analyzer 306 detecting a commercial advertisement. Other disruptions of content may be based on other user preferences such as a preferred music-to-talk ratio, a preferred music genre, a preferred format, a preferred artist and/or title track, and other similar user preferences. For example, a user may enter a user preference through the user interface 202 to change to a radio station playing music by a certain artist, or playing a certain track title of a certain artist. Accordingly, in response to the radio channel analyzer 306 detecting the certain artist and/or certain title track playing on the radio station-1 102, the automatic channel selector 308 directs the tuner- 1 206 to switch from the currently selected radio station to the radio station-1 102 which is currently playing the certain artist and/or certain track title.

In some embodiments, the disruption of content may be based on the time of day. For example, by analyzing the user behavior and listening habits of a user, the behavior analyzer 314 may determine that the user tunes to a certain radio program of a certain radio channel at a particular time of day. Thus, the automatic channel selector 308, in some embodiments, automatically selects the certain radio channel at the particular time of day when the automatic channel selector 308 determines that the certain radio channel is currently playing the certain radio program at the particular time of day. In some embodiments, the automatic channel selector 308 prompts the user with an audio cue and/or a visual cue through the user interface 202 whether to change the radio channel. Thus, the automatic channel selector 308 may suggest a new radio channel to the user based on the current listening conditions and a detected disruption of content and prompt the user to select a new radio channel from the recommended channel list. In this way, the channel recommendation apparatus 300 may automatically initiate a switch to a new radio station, while allowing the user to manually finalize the switch to the new radio station.

In some embodiments, the behavior analyzer 314 tracks the listening behavior and listening habits of the user and associates the listening behavior and listening habits of the user with the user preferences of the currently selected profile. Thus, in

one embodiment, the memory device 304 is configured to store listening behavior and listening habits of a user in association with the user preferences of the currently selected profile. When no profile is selected, or when a user does not generate a profile, in some embodiments, the radio channel analyzer 306 selects a default profile. In some embodiments, the user profile 312 is the default profile. In some embodiments, the radio channel analyzer 306 is configured to perform radio channel analysis in association with the default profile. In this way, the channel recommendation apparatus 300 may automatically initiate a switch to a new radio station while allowing the user to finalize the switch to the new station. Fig. 4 depicts a schematic flow chart diagram of one embodiment of a channel recommendation method 400 for use with the channel recommendation apparatus 300 of Fig. 3. Although the channel recommendation method 400 is described in conjunction with the channel recommendation apparatus 300 of Fig. 3, some embodiments of the method 400 may be implemented with other types of channel recommendation apparatuses.

At block 402, a user enters a set of preferences via the user interface 202 on the radio receiver 200, and the user preferences are stored in the memory device 304. In some embodiments, the user preferences are associated with a user profile 312. When no user profile 312 is selected or no profile is programmed in the radio receiver 200, in some embodiments, the channel recommendation apparatus 300 saves the user preferences to a default profile.

At block 404, the radio receiver 200 implements a first tuner such as the tuner- 1 206 to tune to a radio station selection such as the radio station- 1 102. At block 406, the radio channel analyzer 306 implements a second tuner such as the tuner-N 208 to scan broadcast content of other radio stations such as the radio station- 1 102 through the radio station-N 104. In some embodiments, the radio channel analyzer 306 scans the broadcast content of other radio stations as well as the selected radio station simultaneously. In some embodiments, the radio channel analyzer 306 scans radio channels in a round-table way. In some embodiments, the radio channel analyzer 306 collects metadata, such as RDS data, including genre, station format,

artist, title, time of day, etc. In some embodiments, the radio channel analyzer 306 collects audio samples from each radio station, as described above.

At block 408, the radio channel analyzer 306 analyzes the scanned broadcast content from each available radio station. In some embodiments, the radio channel analyzer 306 uses an audio analysis algorithm to analyze the broadcast content of each audio sample to detect frequency spectrum features and a set of musical features associated with each audio sample. In some embodiments, the radio channel analyzer 306 performs analysis on the collected metadata associated with a particular radio station. At block 410, the radio channel analyzer 306 develops a recommended channel list according to the analysis of broadcast content relative to a user profile 312. In some embodiments, the user preferences are associated with a profile. Thus, in some embodiments, the radio channel analyzer 306 develops a recommended channel list for each set of user preferences associated with a user profile 312. For example, a particular user may program multiple user profiles such as a classical music profile, a sports radio profile, and a talk-radio profile, etc. Alternatively, at least two users may each set up at least one user profile each for which the radio channel analyzer 306 develops a recommended channel list according to the user preferences associated with each user's user profile. In some embodiments, the radio channel analyzer 306 allocates newly detected radio channels a higher scanning priority. In other words, the radio channel analyzer 306 scans newly detected radio channels with longer scan durations and/or allocates a higher frequency of scans to build an estimated broadcast content schedule and add recommendations quickly. In some embodiments, the radio channel analyzer 306 maintains a higher scanning priority for some preferred channels, according to the user profile. In some embodiments, the radio channel analyzer 306 drops the analysis density of some non-preferred channels, according to the user profile.

At block 412, the radio channel analyzer 306 stores the recommended channel list in the memory device 304. In some embodiments, the radio channel analyzer 306 stores the collected metadata and audio samples of each radio station, as well as the

analysis associated with the collected metadata and audio samples of each radio station in the lookup table 310. In some embodiments, the lookup table 310 is configured to store a historical programming profile, historical ranking, and other related data associated with each available radio station. Fig. 5 depicts a schematic flow chart diagram of one embodiment of an automatic channel selector method 500 for use with the channel recommendation apparatus 300 of Fig. 3. Although the automatic channel selector method 500 is described in conjunction with the channel recommendation apparatus 300 of Fig. 3, some embodiments of the method 500 may be implemented with other types of channel recommendation apparatuses.

At block 502, the automatic channel selector 308 continuously monitors content in progress while the radio channel analyzer 306 continually scans available radio channels and updates the recommended channel list, accordingly. At block 504, the radio channel analyzer 306 scans other radio channels to identify radio channel with content of interest to a user.

At block 506, the automatic channel selector 308 determines whether a disruption of content in progress occurs. When the automatic channel selector 308 determines the content in progress is disrupted, the automatic channel selector method 500 proceeds according to the user profile 312 in recommending radio channels. Otherwise, the automatic channel selector method 500 continues to monitor the current content in progress and scan other radio channels. As described above with reference to Fig. 3, a disruption of content may be defined according to a user preference stored in the memory device 304. The disruption of content may be based on a preferred music-to-talk ratio, a preferred music genre, a preferred format, a preferred artist and/or title track, and other similar user preferences.

In some embodiments, the disruption of content may be based on the signal quality of the currently selected radio channel. When the signal quality drops below a predetermined signal quality threshold, then the automatic channel selector 308 changes the radio channel to the currently highest ranked channel in the recommended channel list. Additionally, the disruption of content may be based on

detected commercial advertisements. For example, a user may enter a user preference through the user interface 202 to avoid commercial advertisements on radio stations. Accordingly, the ranking of the radio station- 1 102 may fluctuate in the recommended channel list according to the real-time analysis of the radio station- 1 102. When the radio station- 1 102 is playing music, then the ranking of the radio station- 1 102 is increased in the recommended channel list, so long as the music played on the radio station- 1 102 corresponds to the user's preferred musical type according to the currently selected user profile 312. On the other hand, when the radio channel analyzer 306 detects a commercial advertisement playing on the radio station- 1 102, the ranking drops accordingly.

At block 508, the automatic channel selector 308 determines whether the automatic switching function is enabled by the user. When the automatic channel selector 308 determines the automatic switching function is enabled according to the user preferences of the user profile 312 the automatic channel selector method 500 proceeds to automatically switch to the recommended radio channels. Otherwise, the automatic channel selector method 500 proceeds to block 512.

At block 510, the automatic channel selector 308 switches to another radio channel from the recommended channel list. Thus, when a user prefers to change channels at commercial advertisements and is tuned to the radio station-N 104, and music playing on the radio station-N 104 is interrupted by a commercial advertisement while the radio station- 1 102 is currently playing music of the user's preferred musical type, then the automatic channel selector 308, in some embodiments, automatically changes the radio channel from the radio station-N 104 to the radio station- 1 102, when the radio station- 1 102 is currently the highest ranked radio station in the recommended channel list.

At block 512, the automatic channel selector 308 presents a list of radio channels from the recommended channel list to the user. At block 514, a user selects a channel from the presented list. In one embodiment, the user requests to view the recommended channel list or an overview of the recommended channel list through

the user interface 202. Thus, the user interface 202 enables the user to view the recommended channel list and to select a channel from the recommended channel list. It should also be noted that at least some of the operations for the methods may be implemented using software instructions stored on a computer useable storage medium for execution by a computer. As an example, an embodiment of a computer program product includes a computer useable storage medium to store a computer readable program that, when executed on a computer, causes the computer to perform operations, including an operation to scan radio channels, analyze the broadcast content of the radio channels, classify the broadcast content of the radio channels, and automatically select a radio channel.

Embodiments of the invention can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment containing both hardware and software elements. In one embodiment, the invention is implemented in software, which includes but is not limited to firmware, resident software, microcode, etc.

Furthermore, embodiments of the invention can take the form of a computer program product accessible from a computer-usable or computer-readable storage medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer-usable or computer readable storage medium can be any apparatus that can store the program for use by or in connection with the instruction execution system, apparatus, or device.

The computer-useable or computer-readable storage medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device), or a propagation medium. Examples of a computer-readable storage medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk, and an optical disk. Current examples of optical disks include a compact disk with read only memory (CD-ROM), a compact disk with

read/write (CD-R/W), a digital video disk (DVD), and high-definition (HD) disks such as Blu-Ray and HD-DVD.

An embodiment of a data processing system suitable for storing and/or executing program code includes at least one processor coupled directly or indirectly to memory elements through a system bus such as a data, address, and/or control bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution. Input/output or I/O devices (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled to the system either directly or through intervening I/O controllers. Additionally, network adapters also may be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices through intervening private or public networks. Modems, cable modems, and Ethernet cards are just a few of the currently available types of network adapters.

Although the operations of the method(s) herein are shown and described in a particular order, the order of the operations of each method may be altered so that certain operations may be performed in an inverse order or so that certain operations may be performed, at least in part, concurrently with other operations. In another embodiment, instructions or sub-operations of distinct operations may be implemented in an intermittent and/or alternating manner.

Although specific embodiments of the invention have been described and illustrated, the invention is not to be limited to the specific forms or arrangements of parts so described and illustrated. The scope of the invention is to be defined by the claims appended hereto and their equivalents.