APPARATUS AND METHODS OF DELIVERING MUSIC AND INFORMATION
20190361667 ยท 2019-11-28
Inventors
Cpc classification
H04L67/02
ELECTRICITY
G06F16/685
PHYSICS
G06F3/167
PHYSICS
Y10S707/99948
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
G06F16/68
PHYSICS
G06F3/165
PHYSICS
Y10S707/99945
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
International classification
G06F16/68
PHYSICS
Abstract
The invention comprises music and information delivery systems and methods. One system comprises a portable communication device configured to receive a piece of music from an audio source and transmit the piece of music via a first communication medium to a host computer. The host computer is configured to receive the piece of music from the portable communication device and search a storage medium to identify and access the piece of music from the storage medium. The host computer is configured to transmit the piece of music via a second communication medium to one or more reception units that are configured to receive the piece of music from the host computer via the second communication medium.
Claims
1-23. (canceled)
24. A method for controlling acquisition of an audio signal by a computing system, the method comprising: receiving, via a microphone, at a first sensitivity level, a speech command; in response to receiving the speech command and without receiving additional speech commands: increasing a sensitivity of the microphone to a second sensitivity level for observing non-speech audio including music; receiving audio signal by the microphone, at the second sensitivity level; and searching the received audio signal for non-speech audio; and in response to identifying non-speech audio in the audio signal, matching at least a portion of the identified non-speech audio to an identified audio pattern,
25. The method of claim 24, wherein searching the received audio signal for non-speech audio comprises filtering the audio signal by at least one of a bandpass filter, low pass filter, or anti-aliasing filter.
26. The method of claim 24, wherein the identified non-speech audio includes at least one of whistling, humming, singing, drum beats, or sound of another musical instrument.
27. The method of claim 24, further comprising sampling the at least a portion of the identified non-speech audio for a length of time.
28. The method of claim 27, further comprising configuring the length of time based, at least in part, on a degree of certainty for successfully matching the at least a portion of the identified non-speech audio to an identified audio pattern.
29. The method of claim 27, further comprising configuring the length of time based on at least one of a starting point of the sampling, type of the non-speech audio, or method for identifying the non-speech audio.
30. The method of claim 24, wherein receiving the speech command comprises receiving a pre-established spoken keyword or key-phrase.
31. The method of claim 24, wherein matching the at least a portion of the identified non-speech audio to an identified audio pattern comprises: transmitting the at least a portion of the identified non-speech audio to a server; and receiving at least an indication of the identified audio pattern that has been matched to the at least a portion of the identified non-speech audio.
32. A computer-readable storage medium storing instructions that, when executed by one or more processors of a computing system, cause the computing system to perform actions comprising: in response to receiving a speech command and without receiving additional speech commands: increasing a sensitivity of a microphone from a first sensitivity level to a second sensitivity level for observing non-speech audio including music; and receiving audio signal by the microphone, at the second sensitivity level; and identifying non-speech audio from the received audio signal; and matching the identified non-speech audio to an identified audio pattern.
33. The computer-readable storage medium of claim 32, wherein matching the identified non-speech audio to the identified audio pattern comprises: identifying words in the non-speech audio; and comparing the identified words to previously identified words mapped to the identified audio pattern.
34. The computer-readable storage medium of claim 32, wherein the second sensitivity level comprises a sensitivity level of the microphone sufficient for detecting music at least 20 feet away.
35. The computer-readable storage medium of claim 32, wherein the actions further comprise determining a location of the computing system.
36. The computer-readable storage medium of claim 35, wherein matching the identified non-speech audio to the identified audio pattern is based, at least in part, on the determined location of the computing system.
37. The computer-readable storage medium of claim 35, wherein actions further comprise presenting options to access media associated with the identified audio pattern based, at least in part, on the determined location of the computing system.
38. The computer-readable storage medium of claim 32, wherein identifying the non-speech from the received audio signal comprises filtering ambient noise from the received audio signal.
39. The computer-readable storage medium of claim 38, wherein filtering ambient noise from the received audio signal comprises excluding, from the received audio signal, at least one of talking or traffic sounds.
40. A computing system comprising: one or more processors; a microphone configured to receive audio; and at least one memory storing contents that, when executed by the one or more processors, cause the computing system to: in response to receiving a speech command and without receiving additional speech commands: increase a sensitivity of the microphone from a first sensitivity level to a second sensitivity level for observing non-speech audio including music; and receiving audio signal by the microphone, at the second sensitivity level; and identify non-speech audio from the received audio signal; and match the identified non-speech audio to an identified audio pattern.
41. The system of claim 40, wherein the contents, when executed by the one or more processors, further cause the computing system to sample at least a portion of the identified non-speech audio for a configurable length of time.
42. The system of claim 41, wherein the contents, when executed by the one or more processors, further cause the computing system to configure the length of time based, at least in part, on a degree of certainty for successfully matching the non-speech audio to an identified audio pattern.
43. The system of claim 40, wherein the contents, when executed by the one or more processors, further cause the computing system to present options to access media associated with the identified audio pattern based, at least in part, on a location of the computing system.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
DETAILED DESCRIPTION
[0031] The present invention relates to music and information delivery systems and methods. One system of the present invention allows a user to sample and buy a piece of music almost instantaneously, regardless of the location of the user and regardless of the time when the user hears the music. The system provides various music delivery options. For example, the system allows a user to download music to a portable wireless phone, an organizer, a laptop, a home computer, a discman, a Walkman, a home stereo system, a portable stereo system, and/or a vehicle stereo system. In addition, the system may download information related to the selected music, such as merchandise information, to such devices.
[0032] The system allows the user to download content (music and/or music-related information) to more than one device, including a device at a different geographical location from the user. For example, the user can request the transmission of content to a communication device in the possession of another user in another state or country. The system allows the user to download music that the user hears on the radio, even when the user does not know the title of the music or the artist that created the music. The system also allows the user to download music that is broadcast ambiently, for example at a party, store, theater, restaurant or bar.
[0033] Various embodiments of the invention utilize (1) the Internet, (2) wireless communication technology, (3) embedded audio signal technology, (4) music data compression and transfer technology, (5) voice-activated command technology and/or (6) audio signal identification technology. Exemplifying Internet and web technology are described in a publication entitled WEB Techniques published by Miller Freeman, such as Volume 5, Issue 2, dated February 2000. Exemplifying wireless communication systems are described in a text book entitled Mobile Communications Engineering by William C. Y. Lee, published by McGraw-Hill, copyright 1998, ISBN 0-07-037103-2. Exemplifying telecommunication systems are described in a text book entitled Desktop Encyclopedia of Telecommunications by Nathan J. Muller, published by McGraw-Hill, copyright 1998, ISBN 0-07-044457-9. Exemplifying embedded audio signal technology is described in U.S. Pat. No. 5,581,576 entitled Radio Information Broadcasting and Receiving System. Exemplifying music data compression and transfer technology is described in U.S. Pat. No. 5,734,119 entitled Method For Streaming Transmission of Compressed Music. Exemplifying voice-activated command technology is described in U.S. Pat. No. 5,703,308 entitled Karaoke Apparatus Responsive to Oral Request of Entry Songs. Exemplifying audio signal identification technology is described in U.S. Pat. No. 5,581,658 entitled Adaptive System For Broadcast Program Identification And Reporting.
Overall System Structure
[0034]
[0035] In
[0036] A wireless communication system used in embodiments of the present invention may comprise an FM broadcast, an AM broadcast, a microwave link, a television broadcast using television channel bandwidth to transmit a compressed audio signal (e.g., using JPEG, MPEG or other standards), a cellular system, a digital cellular system, a personal communication services (PCS) system, a satellite communication system, a packet radio system, or a mobile broadband system, among others. A cellular system may use code division multiple access (CDMA, e.g., IS-95), time division multiple access (TDMA, e.g., IS-136, personal digital phone (PDC), Global System Mobile (GSM)), or frequency division multiple access (FDMA), among others.
[0037]
[0038] As used herein, an identification refers to a code identifying a piece of music, or to at least a segment of a piece of music. As used herein, a sample refers to at least a segment of a piece of music. A piece of music may comprise, for example, a song, a portion of a song, an instrumental score, etc.
[0039] In a block 302, the local server 104 receives the identification from the user and accesses the identified one or more pieces of music, other pieces of music related to the piece of music identified by the user, and/or information related to the identified piece(s) of music from a database. In a block 304, the local server 304 transfers the identified content (music, related music and/or music-related information) over a communication network 200, 202, 204, 206 or 208 to the SPCD 102, CTPU 108 and/or user computer 106, as requested by the user. Each device in
[0040] In one embodiment, the SPCD 102 (
The Specialized Portable Communication Devices (SPCD)
[0041]
[0042] The SPCD 102 may comprise one of several different combinations of various components. In the embodiment shown in
[0043] Some of the components and modules illustrated in
[0044] The words unit, module, and component, as used herein, may comprise software, hardware or a combination of software and hardware.
[0045] In
[0046] In
[0047] In one embodiment, the user interface 132 of
[0048] In
[0049] In one embodiment, the microphone 250 is configured to increase its sensitivity level when a user says SAMPLE or presses a key on the keypad 252 to sample a piece of music. The increased sensitivity level may cause the microphone 250, the filter(s) 264 and/or other components of the SPCD 102 to search for audio signals that resemble music, such as whistling, humming, singing, drum beats, other musical instruments, etc., and filter out ambient noise, such as people talking, traffic sounds, etc. The increased sensitivity level may also cause the microphone 250 and/or other components of the SPCD 102 to suppress background sounds (extraneous noise). One method and apparatus of suppressing background sounds is described in U.S. Pat. No. 5,848,163, which is hereby incorporated herein by reference in its entirety.
[0050] In
[0051] In
[0052] In
[0053] In
[0054] In
[0055] In general, the SPCD 102 is configured to (i) sample a piece of music that is broadcast ambiently or directly to a transceiver 130 and (ii) transmit a content request to the local server 104. In one embodiment, the SPCD 102 also downloads audio and/or visual information (e.g., text, graphics, animation, etc.) from the first local server 104 that allows a user to select pieces of music, albums, and related products and services.
[0056] The Location Identification Unit
[0057] In
[0058] In another embodiment, the location identification unit 120 includes a global positioning system (GPS) unit configured to operate in combination with a satellite system for monitoring the position of the SPCD 102. Alternatively, other types of position monitoring methods may be used without departing from the scope of the invention.
[0059] The location information of the SPCD 102 can be used, for example, to determine the nearest server 104, CTPU 108, user computer 106 (
[0060] In one embodiment, the location identification unit 120 determines the nearest music store and informs the user of the location of the music store and/or whether the sampled piece of music is currently on sale at that store. In another embodiment, the location identification unit 120 provides a list of music stores to the user via the display 254.
[0061] Channel Availability Determination Module
[0062] In
[0063] In one embodiment, the channel availability determination module 256 also determines the signal-to-noise ratio (SNR) of one or more of the communication channels 200, 210, 201. Thus, the channel availability determination module 256 selects an available communication channel with the least amount of noise to transmit data from the transceiver 130. As described above, the SPCD 102 may transmit data to a CTPU 108 or user computer 106, which then transmits the data to the server 104.
[0064] The Voice Command Activation Unit
[0065] In
[0066] Such commands may include, for example, commands to (i) transmit samples of music via the transceiver 130, (ii) store samples of music in the memory unit 118, (iii) download music selection information from a local server 104, (iv) transmit a content request to a local server 104, (v) read an embedded code within a piece of music, (vi) specify a destination for the server 104 to download the requested content, and/or (vii) find the nearest music store that has the sampled piece of music in inventory. Those skilled in the art will readily appreciate from the teachings herein that the voice command activation unit 122 can be configured to receive various other commands as well, as may be desirable for implementing the system described herein.
[0067] Voice command activation is particularly convenient when the user is driving a vehicle or engaged in some other activity where the user may not be able to hold or operate the SPCD 102. Those skilled in the art will understand that various voice recognition systems and technologies will be suitable for the purposes of the present invention.
[0068] Configurable Music Sampler
[0069] In
[0070] In one embodiment, the configurable music sampler 124 informs the user that the length of sample time has expired by causing the user interface 132 to emit a sound from the speaker 248 or display a message on the display 254.
[0071] Sample Length Determination Unit
[0072] In
[0073] The degree of certainty, e.g., 60%, 70%, 80%, 90%, 95%, for correct identification may be configured by the user, the SPCD manufacturer, the server 104 or an operator at the server 104. Thus, the configurable music sampler 124 has a pre-configured length of sample time, and the sample length determination unit 126 has a pre-configured degree of certainty for correct music identification.
[0074] The sample length determination unit 126 may operate in addition to or instead of the configurable music sampler 124. For example, in one embodiment, if the configurable music sampler 124 is configured to sample a piece of music for 10 seconds, and the sample length determination unit 126 determines that 5 seconds of a particular sample is sufficient for the server 104 to identify the piece of music, then the sample length determination unit 126 may override the 10-second time period of the configurable music sampler 124. In another embodiment, the user or the SPCD manufacturer may activate either the configurable music sampler 124 (with a pre-configured length of sample time) or the sample length determination unit 126 (with a pre-configured degree of certainty for correct music identification and a variable length of sample time).
[0075] There are at least two methods of identifying a piece of music, as described in further detail below with reference to the server 104. One method involves matching the sampled piece of music to a piece of music stored in a database 137 of the local server 104. Another method involves reading one or more embedded signals in the sampled piece of music to identify the sampled piece of music.
[0076] The Embedded Code Recognition Unit
[0077] The embedded code recognition unit 128 is configured to read, or at least recognize the presence of, a music identification code embedded within a piece of music played ambiently or received from a radio broadcast. In one embodiment, the embedded code comprises audio signals transmitted within a subcarrier along with the music itself. The embedded audio signals may comprise a repeating signal of finite length that repeats, e.g., every four seconds, a series of repeating signals or a continuous signal. In one embodiment, the embedded audio signal code has a start signal and an end signal. In one embodiment, the signals are embedded in a drumbeat of the piece of music. In one embodiment, the embedded code is embedded by a radio station before or during a radio broadcast. In another embodiment, the embedded code is embedded by a recording company as the music is stored on a medium such as a compact disc. In one embodiment, the embedded code comprises audio signals at a frequency that is preferably inaudible to humans and safe for the environment, e.g., not harmful to cats, dogs and other animals. Those skilled in the art will readily appreciate from the teachings herein that any of a variety of methods for embedding codes will be suitable for the purposes of the present invention, and also that any of a variety of different types of codes can be used.
[0078] In one embodiment, the SPCD 102 transmits one or more music identification codes read by the embedded code recognition unit 128 to the local server 104. The local server 104 scans a database 137 to find the corresponding songs, as described below with reference to
[0079] In one embodiment, the embedded code recognition unit 128 itself is configured to identify the name of the artist, the title of the song and/or the title of the album without communicating with the server 104. In one embodiment, the user can say IDENTIFY into the microphone to instruct the embedded code recognition unit 128 to identify the title of the piece of music, the name of artist, and/or the title of the album(s) that include(s) the song. The embedded code recognition unit 128 identifies the name of the artist, the title of the song and/or the title of the album and presents this information to the user via the display 254 or the speaker 248.
[0080] Destination Directory Module
[0081] The destination directory module 246 matches one or more spoken words, such as, for example, HOUSE, CAR, ANNE, JESSICA'S CAR, ALL FRIENDS, SELECTED FRIENDS, FAMILY, IMMEDIATE FAMILY, SISTER, BOSS, or BUSINESS ASSOCIATES, to one or more device identification codes. Each user computer 106, 112 and CTPU 108A-C, 114 in the system 100 (
[0082] In one embodiment, the device identification codes comprise phone numbers stored in the memory 118. In one embodiment, the destination directory module 246 uses, among other things, a list of names and corresponding phone numbers stored in the memory 118, similar to phone number lists currently stored on cellular phones manufactured by Nokia. The list of names and corresponding phone numbers stored in the memory may be modified by the user by adding, deleting or changing entries.
[0083] In one embodiment, the destination directory 246 allows the user to categorize the identification codes into groups such as FRIENDS, FAMILY or BUSINESS ASSOCIATES. In another embodiment, the destination directory 246 automatically categorizes some or all of the identification codes into groups.
[0084] If the destination directory module 246 does not find a match in the stored list, then the SPCD 102 can generate an error signal via the display 254 or the speaker 248 to the user or send the spoken word to the server 104 for processing at the server 104.
[0085] When the SPCD 102 finds the one or more corresponding device identification codes, the SPCD 102 transmits the one or more device identification codes to the local server 104. In another embodiment, the SPCD 102 transfers the identified destinations to the local server 104, and the local server 104 searches for the one or more device identification codes corresponding to the identified destinations. The local server 104 is configured to transmit the user-requested content to the devices with the corresponding device identification codes. For example, a user can request that selected content be delivered to a CTPU integrated within the user's car stereo and/or the user's user computer.
[0086] Operation of the SPCD and
[0087]
[0088] In the block 322, the transceiver 130 transmits the sampled piece of music to a local server such as the first local server 104 (
[0089] In one embodiment, the CTPU 108 or user computer 106 is configured to perform the operations of the server 104, as described below. In other words, the CTPU 108 or user computer 106 has the software and/or hardware to process user commands, such as identifying a sampled piece of music and sending music, related music or information to a user-specified destination. In this embodiment, the SPCD 102 may simply send the user command and sampled piece of music to the CTPU 108 or user computer 106.
[0090] In blocks 324 and 326, the configurable music sampler 124 and/or the sample length determination unit 126 analyzes the music sample to determine whether the sample length is sufficient to identify the piece of music with a particular degree of certainty (e.g., at least 60%, 70%, 80%, 90%, or 95% degree of certainty) and/or whether the sample time period, e.g. 10 seconds, has expired. If the sample length is not sufficient, then the SPCD 102 continues to transmit the sample to the server 104 in a block 328.
[0091] If the sample length is sufficient, then the transceiver 130 ends the transmission of the sampled piece of the music (block 330). In a block 332, the SPCD 102 notifies the user that the transmission is complete by displaying a message on the display 254 and/or emitting an audio signal from the speaker 248. In a block 334, the SPCD 102 waits for the next user command.
[0092] In response to the sampled music transmission from the SPCD 102, the server 104 preferably scans a storage medium located within the server 104 or in another local or remote device to identify the piece of music. The server can then transmit the entire piece of music, related pieces of music and/or music-related information to one or more communication devices specified by the user. The operation of the server 104 is described further below with reference to
[0093] In one embodiment, the SPCD 102 is configured to store a plurality of samples and transmit all of them substantially at the same time. The SPCD 102 can store preferably up to 10, more preferably up to 20, more preferably up to 50, and even more preferably up to 100 samples of music or other types of audio signals. In one embodiment, the SPCD 102 stores up to 5-10 samples and then send the samples all at once to the server 104 after the 5th or 10th sample is taken. In one embodiment, the SPCD 102 can store any number of samples within a limited memory allocation. Once the samples consume the entire memory allocation, the SPCD 102 transmits the samples all at substantially the same time to the server 102, user computer 104, or CTPU 108.
[0094] Some User Commands
[0095] In
[0096] SAMPLE
[0097] SEND SONG TO MY CAR (if the user has two or more cars, then the user can specify which car, e.g., SEND SONG TO MY JEEP)
[0098] SEND ENTIRE CD TO MY CAR
[0099] SEND RELATED MUSIC (BY ARTIST or GENRE, etc.) TO MY CAR
[0100] SEND INFO TO MY CAR
[0101] SEND SONG (and/or CD, RELATED MUSIC, INFO, LYRICS, CONCERT INFO, MERCHANDISE INFO, etc.) TO MY HOME (and/or CAR)
[0102] SEND SONG (and/or CD, RELATED MUSIC, INFO, etc.) TO JESSICA'S CAR (and/or HOME, etc.)
[0103] SEND SONG TO MY FRIENDS (and/or MY FAMILY, MY SISTER, etc.)
[0104] ADD SONG TO MY DANCE MIX AT HOME (and/or CAR, etc.)
[0105] ADD SONG TO MY ROMANTIC DINNER LIST AT HOME (and/or CAR, etc.)
[0106] MOVIE: The Matrix (order the actual movie or soundtrack)
[0107] CANCEL ORDER
[0108] For most of the commands above, the SPCD 102 transmits the command to the server 104 (or CTPU 108 or user computer 106) which processes the command and transmits the requested content to the user-designated device, such as a user computer 106 or 112 or a CTPU 108A-C, 114. The user may use one or more of the above commands in combination.
[0109] For example, when the user designates a CAR, the server 104 may transmit the requested content to a CTPU 108 located in a car. When the user designates a HOME, the server 104 may transmit the requested content to a CTPU 108 or user computer 106 located in a house or apartment. If the user does not specify a device, the server 104 may send the requested content to a default device, such as the user computer 106 or the CTPU 108A.
[0110] In one embodiment, when the user specifies MY DANCE MIX or MY ROMANTIC DINNER LIST, the server 104 (or the user computer 106) adds the requested music to a compilation stored at the user-designated device, such as the user computer 106 or the CTPU 108A.
[0111] In one embodiment, when the user says LYRICS and samples a piece of music, the local server 104 identifies the piece of music and downloads the lyrics of the piece of music, if available, to a user-designated device, such as the user computer 106 or the CTPU 108A.
[0112] In one embodiment, when the user says MOVIE: The Matrix, the local server 104 downloads a movie soundtrack from the movie The Matrix to a user-designated device, such as the user computer 106 or the CTPU 108A.
[0113] In one embodiment, when the user says CANCEL ORDER, the server 104 cancels the current or latest user command.
[0114] In one embodiment, the SPCD 102 allows the user to order one or more songs for playback at the user computer site or CTPU site by specifying: (1) the name(s) of songs and/or artists, (2) the type(s) of music, (3) the order of the songs, (4) the desired length of compilation, (5) the start time and end time, and/or (6) whether the songs will repeat.
[0115] The Server
[0116]
[0117] Some of the components and modules illustrated in
[0118] In
[0119] In
[0120] In
[0121] In
[0122] The pieces of music field 138 may comprise, for example, MP3 files, .WAV files, etc. In another embodiment, the pieces of music are stored in a separate storage medium, such as compact discs, at the server site or away from the server site. If the pieces of music are stored at a different site than the server 104, the server 104 has access to the pieces of music or the server 104 can direct the transmission of the pieces of music.
[0123] The related information field 144 may include, for example, a music type or classification (e.g., hip hop, classical), song lyrics, sheet music or tablature, concert information, prices of the pieces of music, music videos, offers for selling apparel or memorabilia such as photographs, posters, bumper stickers, etc. Preferably, the system of the present invention allows a user to order and/or purchase such related merchandise and merchandise.
[0124] In one embodiment, the memory 136 comprises a plurality of smaller databases in addition to or instead of the database 137 shown in
[0125] In
[0126] In
[0127] In
[0128] The User Identification Module
[0129] In
[0130] The Music Sample-Matching Module
[0131] There are at least two methods of identifying a piece of music. One method involves matching the sampled piece of music to a piece of music stored in the database 137. Another method involves reading one or more embedded codes or signals in the sampled piece of music to identify the sampled piece of music.
[0132] In the first method, the music sample-matching module 148 comprises firmware and/or hardware that compares a sampled piece of music from the user with pieces of music 138 stored in database 137 to find the closest match. For example, the sample-matching module 148 might compare a five- or ten-second sample of Led Zeppelin's Stairway to Heaven and find the complete song from database 137.
[0133] In one embodiment, the music sample-matching module 148 comprises a digital comparator circuit that compares a digitized sample of a piece of music from the user with a plurality of digitized pieces of music stored in the database 137. In one embodiment, the music sample-matching module 148 may further comprise filters to filter the sampled audio signal received from the user. The filters may be used to filter out noise or to separate the sampled piece of music from the user into individual audio signal patterns.
[0134] For example, in one embodiment, the comparator circuit uses the filters or other components to separate the sampled piece of music from the user into individual audio signals, such as vocals, drum, guitar, bass guitar, keyboard, etc. The comparator circuit may then process these individual audio signals in parallel and match them to audio signals of similar vocal (e.g., distinct pitch) or instrument type (e.g., guitar rifts of Jimmy Page, Jimi Hendrix) stored in the database 137. For example, the comparator may attempt to match a sampled drum signal to one or more stored drum signals while substantially simultaneously attempting to match a sampled guitar signal to one or more stored guitar signals. Parallel processing of different audio signals reduces the time necessary to identify the user-requested piece of music.
[0135] In the second method, the music sample matching module 148 scans the embedded code field 140 of the database 137 to find the music identification code of the piece of music requested by the user. If a piece of music does not have an embedded code or the embedded code is not found in the database 137, then the server 104 uses the first method described above.
[0136] In one embodiment, the two methods above are executed in combination at the same time to confirm the accuracy of a music match. Other music identification methods and apparatuses may be used in addition to or instead of the methods described herein.
[0137] Related Music Detection Module
[0138] In
[0139] The Database Update Module
[0140] In
[0141] General Operation of the Server
[0142]
[0143] In a block 354, the local server 104 transmits the identified piece(s) of music to a device specified by the user, such as a CTPU 108 or user computer 106. The local server 104 may also transmit other information stored in the database 137, such as the name of the artist(s), the title of the song, the name of the album, the music video of the piece of music to be stored or played on the TV set 188 coupled to the user computer 106 (
[0144] In one embodiment, the server 104 is configured to receive and process a plurality of user commands substantially simultaneously, i.e., substantially in parallel.
[0145] As stated above, the CTPU 108 or user computer 106 may be configured to perform the operations of the server 104. In other words, the CTPU 108 or user computer 106 has the software and/or hardware to process user commands, such as identifying a sampled piece of music and sending music, related music or information to a user-specified destination. In this embodiment, the SPCD 102 may simply send the sampled piece of music to the CTPU 108 or user computer 106.
[0146] The Content Transceiver Playback Units (CTPU)
[0147] The CTPUs 108 of the present invention are preferably configured to provide most or all of the above-described functionality of the SPCD 102. The CTPU 108 is further configured to play a piece of music via a built-in speaker or transfer the piece of music to an external stereo system 180, such as, for example, a vehicle stereo system, a home stereo system, or a portable handheld stereo system. In one embodiment, the CTPU 108 is larger than the SPCD 102 and comprises more memory and/or more features than the SPCD 102.
[0148]
[0149] Some of the components and modules illustrated in
[0150] The microcontroller unit 158, memory unit 160, location identification unit 162, voice command activation unit 164, configurable music sampler 166, sample length determination unit 168, sample length determination unit 168, embedded code recognition unit 170, destination directory 260, channel availability determination module 262 user interface 174, filters 268 and power supply 234 are configured similarly to the corresponding units described above with regard to the SPCD 102 of
[0151] The CTPU 108 may be integrated into or coupled to a variety of different devices, such as stereo systems and user computers. For example, the CTPU 108 may be integrated into or coupled to a vehicle stereo system, such as, for example, in an automobile, train, plane or boat. In addition or alternatively, the CTPU 108 may be integrated into or coupled to a home stereo system or a portable handheld stereo system, such as a Walkman or discman.
[0152] In one embodiment, the CTPU 108 is removably connectable to and interchangeable between such devices, such that it can be quickly and easily removed from a first device and connected to a second device. For example, in one embodiment, a user can remove a CTPU 108 coupled to a stereo system of a first vehicle from the first vehicle and couple the CTPU 108 to a stereo system of a second vehicle. Advantageously, music and other information stored in the memory unit 160 of the CTPU 108 are accessible in any automobile the user chooses to install the CTPU 108. In one embodiment, the CTPU 108 may operate in combination with a non-volatile memory within a vehicle that permanently stores pieces of music.
[0153] Preferably, the SPCD and CTPUs allow a network of users to identify, request, and deliver music to a variety of devices on the network. For example, suppose a user owns two vehicles, vehicle A and vehicle B, each having a stereo system. With reference to
[0154] Suppose further that the user has a friend or relative driving a third automobile, automobile C, and that the third CTPU 108C is integrated with a stereo system of automobile C. The third CTPU 108C has a fourth device identification code. If desired, the user can instruct the first local server 104 to transmit the selected piece of music to automobile C by, for example, saying SEND TO C'S CAR or otherwise entering the fourth device identification code. The CTPU 108A sends the fourth device identification code to the server 104, and the server 104 downloads the music to the CTPU 108C with the fourth device identification code. Thus, the system 100 allows a network of users to conveniently transmit selected music or music-related content to one another as desired.
[0155] The system 100 is preferably configured to allow users to transmit content to one another, as described above, even when the users are located at significant distances from one another. For example, suppose the first user in the example above is located in Los Angeles, Calif. With reference to
[0156] In one embodiment, the CTPU is integrated with a vehicle or home music receiver, such as a radio. The CTPU can be configured to automatically identify and/or sample songs played thereon and store such identifications in a temporary memory. Moreover, the CTPU can store a predetermined number of identifications. Every time a new song is played, the CTPU stores an identification of the new song and erases the least recently stored song identification in the temporary memory. The predetermined number can be any desired number. For example, the CTPU can be configured to store embedded codes or recorded samples of the prior 10 or 20 songs played thereon. Advantageously, the user can identify and request delivery of songs whose identifications are stored in the temporary memory.
The User Computer
[0157]
[0158] In
[0159] The user computer 106 may receive from the server 104 and display on the monitor 270 concert information, tour dates, ticket prices, album signing dates and locations, public appearances, new albums release dates, new music video release times and dates, and/or information on how to purchase t-shirts, hats, bumper stickers, etc. In one embodiment, the server 104 transmits a uniform resource locator (URL) of an Internet web site to the user computer 106, which the user can access via a standard web browser.
[0160] The user computer 106 may further receive from the server 104 and display lyrics and/or musical instrument sheets for guitar, piano/keyboard, drum, bass guitar, etc. In one embodiment, the user computer 106 is configured to teach the user how to play the piece of music with a musical instrument, such as displaying where to place the user's fingers on a guitar fret during the course of a piece of music.
[0161] In one embodiment, the user computer 106 allows a user to incorporate the pieces of music received from the server 104 into home videos from video recorder 272.
[0162] In one embodiment, the SPCD 102, CTPU 108 and user computer 10 are preferably configured to allow a user to easily transfer content stored on the memory units 118 and 160 (
[0163] Music Selection Information
[0164] In one embodiment, the SPCD 102, the user computer 106, and the CTPU 108 are configured to download music selection information, e.g., in the form of graphical user interface (GUI) menus or audio menus, from the first local server 104. The music selection information may comprise, for example, directories of music organized by artist, song titles, music styles or categories, etc. The user can download menus of music and select one or more pieces of music to be transmitted to a user-specified device. In
[0165] Limited Music Playback
[0166] The music delivery system 100 can be configured to provide the user with various options relating to the temporal availability or number of permitted uses of downloaded music. In one embodiment, the user can pay a reduced charge (as compared to, for example, the standard charge for downloading a piece of music) to download a piece of music for limited play duration. In other words, the system can limit the time within which the user can play the downloaded piece of music. For example, the user might only be able to play the piece of music for one week from the time of downloading. Preferably, the reception device (e.g., the CTPU or user computer) includes a timer module. When the user downloads the piece of music, the reception device records the time that the piece of music is received. When the user requests to play the piece of music, the timer module determines if the piece of music has been stored for longer than a preconfigured or user-specified time limit. If so, the timer module denies play of the piece of music and/or deletes the piece of music from the storage medium of the reception device. Advantageously, the user can pay a reduced charge for pieces of music of limited temporal availability.
[0167] In another embodiment, the user can pay a reduced charge to download a piece of music with a limited play number. In other words, the system can limit the number of times that a downloaded piece of music can be played. For example, the user might only be able to play the piece of music five times after downloading it. Preferably, the reception device (e.g., the CTPU or user computer) includes a counter module configured to keep track of the number of times each stored piece of music is played. Every time a downloaded piece of music is played, the counter module updates the record of the number of times that piece of music has been played. When the number of times the piece of music has been played reaches a preconfigured or user-specified number, the counter module deletes the piece of music from the storage medium of the reception device.
[0168] Music Identification Combined with Conventional Music Delivery
[0169] In one embodiment, the system 100 is configured such that a user can request to purchase selected music in a conventional form, such as a compact disc or cassette after the system 100 identifies and finds the sampled music. In this embodiment, the user's request for a particular song, compilation of songs, artist's album, or other request is transmitted to the first local server and stored therein. Preferably, a system administrator or computer monitors such requests and then conventionally (i.e., non-electronically) mails the requested media and content to an address provided by the user.
[0170] In addition, the system 100 may include a media production service as well. For example, suppose the user requests a compilation of songs that are not otherwise commercially available on a single compact disc or cassette. A media production service team or computer can compile the selected songs onto a compact disc or cassette and then mail it to the user.
[0171] The system 100 can be configured so that a user can request alternative versions of selected music, such as karaoke versions.
[0172] The system 100 can be configured so that when a user requests to transmit content to a communication device in the possession of a third party, the user can also request that a specialized email or e-greeting be sent to the third party's communication device, such as a SPCD 102, CTPU 108 or user computer 106.
[0173] Methods of Payment
[0174] In one embodiment, the system 100 charges the user's monthly mobile phone bill either a flat monthly fee, a fee for each user request, or some combination of the two. In one embodiment, the fees are charged to a user's credit card automatically. In one embodiment, the system 100 allows the user to select a method of payment.
[0175] Although this invention has been described with reference to music, those skilled in the art will readily appreciate from the teachings herein that the methods and apparatus described herein can be used for the identification, request, and delivery of any types of non-music audio signals, such as speeches, news reports, etc., and information related thereto. The methods and apparatus described herein can also be used for the delivery of video information and information related thereto.
[0176] Although this invention has been disclosed in the context of certain preferred embodiments and examples, it will be understood by those skilled in the art that the present invention extends beyond the specifically disclosed embodiments to other alternative embodiments and/or uses of the invention and obvious modifications thereof. Thus, it is intended that the scope of the present invention herein disclosed should not be limited by the particular disclosed embodiments described above, but should be determined only by a fair reading of the claims that follow.