RELATED APPLICATIONS This application is a continuation of Ser. No. 10/300,147, filed Nov. 20, 2002, which is a continuation of Ser. No. 09/309,400, filed May 11, 1999, which is a continuation of Ser. No. 08/975,612, filed Nov. 21, 1997, which is a continuation-in-part of Ser. No. 08/638,022, filed Apr. 25, 1996, now U.S. Pat. No. 5,848,398, which is a continuation-in-part of Ser. No. 08/584,253, filed Jan. 11, 1996, now U.S. Pat. No. 5,781,889, which is a continuation of Ser. No. 08/268,782, filed Jun. 30, 1994, now abandoned, which is a divisional of Ser. No. 07/846,707, filed Mar. 6, 1992, now U.S. Pat. No. 5,355,302, which is a continuation in part of Ser. No. 07/538,981, filed Jun. 15, 1990, now abandoned. All of the applications and patents listed above are hereby incorporated by reference in their entireties.
BACKGROUND OF THE INVENTION The present invention relates generally to a jukebox system, and more particularly to such a system including one or more computer jukeboxes that can be managed from a remote location.
Heretofore, an assortment of musical recordings found in a jukebox consists of a plurality of records, each record containing a specific recording. Traditionally, these records are grooved phonograph records. After a patron makes a selection, the selected phonograph record is mechanically removed from a storage rack within the jukebox, and the phonograph record is placed upon rotating platform. A stylus which is connected to a speaker system is then placed upon the rotating phonograph record, resulting in the phonograph record being played by the jukebox. For each selection, a separate phonograph record must be removed from the storage rack in order to be played by the jukebox.
Conventional jukeboxes have also implemented compact disks as means for creating an assortment of musical songs. Compact disks provide the improved sound quality made possible by digital recordings. The same technique, however, is used to play compact disks. A separate compact disk corresponding to each selection must be removed from a storage rack in order for the jukebox to play the selection. Updating conventional jukeboxes is a costly and time consuming task. Routemen must periodically travel to each jukebox location and replace the existing recordings of each jukebox with up-to-date records. The existing recordings are no longer used by the jukebox once removed, thus making the conventional method wasteful.
Routemen must also travel to each jukebox location to keep a tally of the number of times each musical recording is selected in order to determine royalty fees. It is known to provide a jukebox with a counter that keeps track of the number of times each musical recording is selected, but routemen must still travel to each jukebox location to obtain this information. Such a process requires an excessive number of people to visit each jukebox location periodically and visually read the information off the counter within each jukebox. Since the number of jukeboxes in operation is quite large, the employment of routemen to obtain such data involves a considerable expense. Furthermore, the ever changing nature of the recording industry requires that such data be gathered frequently in order to keep abreast of a continually changing market.
Conventional jukeboxes display a selection menu allowing a patron to select a particular recording that he or she may want to hear. When that song is being played, a video accompanying the song is typically displayed on the screen. However, when the jukebox is not being used either the selection menu is still continually displayed or the screen is blank.
BRIEF SUMMARY OF THE INVENTION Accordingly, it is a primary object of the present invention to provide a method and apparatus for managing a plurality of computer jukeboxes which is capable of eliminating the necessity for routemen to change records in the jukeboxes. The computer jukeboxes store recordings in memory, thus enabling routemen to simply load new recordings into the memory of each computer jukebox.
Another object of the present invention is to eliminate a necessity for routemen by enabling new recordings and selection menus to be downloaded to each computer jukebox via a transmission link. In that regard, it is an object of the present invention to provide a method and apparatus which eliminates the material waste usually associated with updating jukeboxes. Instead of throwing away old recordings and replacing them with new ones, as is the conventional procedure, the present invention eliminates this waste by enabling new recordings to simply be downloaded into the memory of each computer jukebox. The old recordings are simply erased, if necessary.
Another object of the present invention is to provide a method and apparatus which is capable of remotely obtaining jukebox usage data, thus eliminating a necessity for routemen to do this task. The present invention utilizes a computer jukebox, which as part of its software programming, stores the number of times each musical recording is played and the number of credits that have been awarded. This data is uploaded to a central control device via a transmission link.
An additional object of the present invention is to provide a method and apparatus utilizing modem computer technology to digitally store and play musical records. The jukebox of the present invention is basically a computer having a sophisticated audio production capability, the computer storing digitized song data in a computer memory. Because conventional jukeboxes maintain compact discs or records in the jukebox, theft of the compact disc/records has been a problem, this problem being eliminated by the present invention's utilization of a computer memory to store the digitized song data.
A further object of the present invention is to provide a method and apparatus capable of being used with the remote management of jukeboxes via public telephone lines without interfering with an establishments' use of their own phone lines.
Still a further object of the present invention is to provide a method and apparatus for downloading and storing advertisements to a computer jukebox, and then running the advertisements on a screen associated with the computer jukebox at specified times. Additionally, the jukebox may also be associated with an electronic game so that advertisements not be run on a screen of the electronic game when the game is not being played.
It is a related object of the present invention to track the number of times a particular advertisement is actually run so that the advertiser can be appropriately billed. This information is uploaded to the central control device via the transmission link.
Other objects, features and advantages of the present invention will be readily apparent from the following description of certain preferred embodiments thereof taken in conjunction with the accompanying drawings, although variations and modifications may be effected without departing from the spirit and scope of the novel concepts of the disclosure.
BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGSFIG. 1 is a block diagram of the computer jukebox system of the present invention.
FIG. 2 is an illustration of the data structure of an individual song record stored in a master library catalog illustrated inFIG. 1.
FIG. 3 is a flow-chart illustrating the procedure for storing new songs in a bulk storage unit illustrated inFIG. 1.
FIGS. 4A and B are flow-charts illustrating the software procedures used by the central management system and the jukebox respectively in managing the song library of the jukebox.
FIG. 5 is a flow-chart illustrating the specific operation of the jukebox in interfacing with a user.
DETAILED DESCRIPTION OF THE INVENTION In accordance with the, present invention as shown inFIG. 1, acentral management system11 monitors and updates the available selection of music at a number of remotely located jukeboxes such as ajukebox13. Particularly, thecentral management system11 monitors eachjukebox13 to determine the number of times each song has been played. From these numbers, thecentral management system11 can calculate the royalty payments that are due. More importantly, thecentral management system11 can identify those specific songs which need to be replaced in each jukebox on an individual basis, the central management system communicating replacement songs to eachjukebox13 to update the available music selection therein as needed.
Eachjukebox13 is basically a computer having sophisticated audio production capability wherein eachcomputer jukebox13 is programmed to play songs that have been digitally compressed and stored in a large-volumedata storage unit93. Thestorage unit93 may be an optical memory or any other available large volume nonvolatile computer memory that provides both read and write access.
Thecentral management system11 communicates with eachcomputer jukebox13 via atransmission link15. Thecentral management system11 and eachjukebox13 userespective modems17 and19 to maintain serial communication on thetransmission link15. Thetransmission link15 may be a cable system such as public or private telephone lines or the like. However, themodems17 and19 may be replaced with RF (radio frequency) transceivers and associated antennas. In the latter instance thetransmission link15 is an RF link.
Additionally, in another embodiment, an audio codec may be included as part of thecentral management system11. The audio codec receives analog audio input, converts it into digital bytes, and then compresses these bytes via known audio compression methods for economic transmission, such as by the commercially available “MUSICAM.RTM.” algorithm. The compressed digital audio can than be transmitted to thejukebox13 by thetransmission link15 which, in addition to the above described system such as telephone lines, cable, RF links or modems, can include transmission via a sub carrier to utilize certain FM channels. In this embodiment, the audio information is transmitted in packets of a predetermined length. Each packet is organized such that a header is transmitted first. The header is followed by the compressed audio data and then by a trailer containing an error detection method to ensure that the audio was transferred properly.
In another embodiment, thecentral management system11 transmits the compressed audio data via satellite or cellular telephone systems. In either of these cases, thetransmission link15 is a satellite uplink or a cellular uplink. In yet another embodiment, the audio information may be stored on a portable infra red device, and the information may be transmitted from the device via infra red rays to thecomputer jukebox13. As discussed in more detail below, thecentral management system11 can transmit other information, specifically video and graphic information via thetransmission link15 to thecomputer jukebox13.
Specifically, thecentral management system11 includes ahost computer21 which maintains amaster library23 of songs and associated graphics which are stored in a compressed digital form in abulk storage unit25. Thebulk storage unit25 is capable of storing vast amounts of digital data, and may take the form of a read-write optical storage device. Thehost computer21 indexes themaster library23 by using amaster catalog27 which is also maintained in thebulk storage unit25.
Themaster catalog27 stores asong record29, as illustrated inFIG. 2, for each song stored in themaster library23. Eachsong record29 associates information in the following fields: a)title field31, containing the name of the song; b) aclassification field33, containing the type of music, i.e., country, pop, jazz, classical, etc.; c) asong address field37, containing the beginning address in thebulk storage unit25 of the compressed digital data of the song; d) asong size field39, containing the number of bytes in length of the compressed digital data; e) agraphics address field41, containing the beginning address in thebulk storage unit25 of the compressed digital data of a graphics image, if any, to be associated with the song; f) agraphics size field43, containing the number of bytes in length of the compressed graphics image; and g) aplay count field45, containing a count which indicates the number of times this specific song has been played. By parsing themaster catalog27, thehost computer21 can quickly locate all available information relating to any available song. Themaster catalog27 also stores data particular to each jukebox such as the number of times each available song has been played, the coin intake for that jukebox, etc. The data particular to each jukebox is uploaded from the jukebox to thecentral management system11 to update themaster catalog27.
Returning toFIG. 1, in order to add to themaster library23 and associatedmaster catalog27, thehost computer21 receives, has compressed and stores in thebulk storage unit25 digital data representing the new song and associated pictorial graphics. Thehost computer21 receives the digital data for storage from three sources: 1) a compact disc read only memory (CDROM)reader51, which reads CDROMS; 2) agraphics scanner53, which digitizes pictorial graphic images; and 3) an analog to digital (A/D) reader/converter55, which reads analog data from both tapes and records and then converts the analog data into digital data. Acompression circuit52 using an adaptive-delta, pulse-code-modulation compression scheme compresses the digital data before it is stored. Other compression schemes may also be used. Thecompression circuit52 might also be fully replaced by a software algorithm, such as MUSICAM.RTM., which is executed by thehost computer21.
FIG. 3 more specifically illustrates the operation of thehost computer21 in adding new songs to themaster library23. At ablock61, the user is initially prompted by thehost computer21 to enter a new song title and category. Thehost computer21 writes this information into thetitle field31 andclassification field33 of anew song record29 at ablock63. Next, at ablock65, thehost computer21 prompts the user to place either a CDROM into thereader51 or a record or tape into the reader/converter55. After the user has completed this placement, at ablock67 thehost computer21 identifies available storage space in thebulk storage unit25 by analyzing the space in use as described in the current list ofsong records29 in themaster catalog27. The beginning address of this available storage space is placed in thesong address field37 of thenew song record29. Thereafter, at ablock69, thehost computer21 provides a read enable signal on abus50 to either thereader51 or reader/converter55. Either thereader51 or reader/converter55 responds by reading and sending digital data representing the new song to thehost computer21 via thebus50. Utilizing abus54, thehost computer21 forwards the digital data received to thecompression circuit52, receives compressed digital data from thecompression circuit52 and writes the compressed digital data into thebulk storage unit25. At ablock71, upon reaching the end of the digital data output, i.e., the end of a song, thehost computer21 writes the byte length of the digital output into thesong size field39.
Thehost computer21 at ablock73 prompts the user to load a picture, such as an album cover, into thegraphics scanner53. At ablock75, thehost computer21 identifies further available storage space in thebulk storage unit25 and places the beginning address thereof into the graphics addressfield41. Once a picture is loaded, thehost computer21 atblock77, using thebus50, provides a read enable signal to thescanner53 which responds viabus50 by digitizing the picture and transferring the digitized output to thehost computer21. At ablock79, using thebus54, thehost computer21 forwards the digitized data of the picture to thecompression circuit52, receives compressed digitized data from thecompression circuit52, and writes the compressed digitized data into thebulk storage unit25. At ablock81, upon reaching the end of the digitized output, i.e., the end of the picture, thehost computer21 places the byte length of the digitized output into thegraphics size field43. Finally, at ablock83, thehost computer21 sets theplay count field45 to zero (0). This flow-chart is repeated as necessary until all of the new songs are added to themaster library27. It is noted that the operator can also delete, modify or replace anyspecific song record29 found in themaster catalog27 andmaster library23.
Returning toFIG. 1, eachcomputer jukebox13 plays songs and displays graphics which are stored locally in the large-volumedata storage unit93. Thestorage unit93 of thejukebox13 contains a subset of the songs found in themaster library23 maintained by thecentral management system11. More specifically, thestorage unit93 of thejukebox13 stores asong library91 which is a corresponding subset of themaster library23. Thesong library91 contains all of the currently available song selections and associated pictorial graphics for thejukebox13. Thestorage unit93 also stores acatalog95 that is an index into thelocal song library91. Thecatalog95 is similar to themaster catalog27. Both thesong library91 and associatedcatalog95 are monitored and updated by thecentral management system11 as needed via thetransmission link15. Thejukebox13 permits this monitoring and updating at any time with no impact on its end-user performance.
Thejukebox13 also includes aprocessing circuit121 which contains amicroprocessor121A, read only memory (ROM)121B and random access memory (RAM)121C. As in conventional computer systems, themicroprocessor121A operates in accordance with the software program contained in theROM121B and utilizes theRAM121C for scratch-pad memory. Theprocessing circuit121 may also contain a decompression circuit (not shown) or may perform decompression using a software algorithm stored in theROM121B depending on the type of data compression scheme used by thecentral management system11. In either case, decompression is necessary to decompress the compressed data received from thecentral control system11 so that the song can be played and associated graphics image displayed.
Theprocessing circuit121 controls the operation and flow of data into and out of thejukebox13 through themodem19 via abus124. Using thebus124, theprocessing circuit121 also controls avisual display125, one ormore selection keys123 and a coin/bill detector126 to provide the user with an interactive interface to thejukebox13. Thekeys123 provide signals representing user inputs such as displayed song selection. Thedisplay125 displays alpha numeric information as well as pictorial graphics to interface with the user. The coin/bill detector126 is responsive to one or more coins or bills input by a customer to determine whether the proper amount of money has been input and to provide money detect signals coupled to the processing circuit. Theprocessing circuit121 further controls, via thebus124, anaudio reproduction circuit127 coupled to aspeaker system129 along abus131 to provide an audio output to the user.
FIGS. 4A and 4B are flow-charts illustrating the software procedures respectively used by thecentral management system11 and thejukebox13 in managing thesong library91 of thejukebox13. At ablock101, thecentral management system11 initiates communication with one of thejukeboxes13 via thetransmission link15.
Immediately thereafter, at ablock103, themanagement system11 requests that the jukebox data be sent including a copy of thecatalog95. At acorresponding block141, thejukebox13 responds by sending the copy of the catalog file as well as other jukebox data including total money intake over a period of time. The data sent from the jukebox to the management station may also include customer requests for new songs, a customer utilizing the display and keyboard of thejukebox13 to enter song request data as discussed below. Thereafter, at ablock105, by examining eachplay count field45 in the copy of thecatalog95 received, themanagement system11 determines the royalty amount due per song and whether to replace or update specific song entries stored in thejukebox13. Themanagement system11 also determines the total money intake from the play count information and compares this value to the total money intake value received from the jukebox to provide a check. At aninquiry block107, if no replacements are necessary, themanagement system11 branches to ablock109 to terminate communication with thejukebox13. If, however, replacements are necessary, themanagement system11 branches to download the changes. Particularly, at ablock111, themanagement system11 downloads to thejukebox13 the song records29 of both the song to be replaced and the replacement song. In acorresponding block143, thejukebox13 replaces thesong record29 in thecatalog95.
Thereafter, thejukebox13 identifies available storage space in thestorage unit93 based on thesong size field39 of the new song, and writes the beginning address thereof into thesong address field37 in acorresponding block145. Afterwards, at ablock113, thecentral management system11 downloads the compressed digital data of the song to thejukebox13. Afterwards, at ablock113 thecentral management system11 downloads the compressed digital data of the song to thejukebox13. At acorresponding block147, thejukebox13 receives and writes the data into thesong library91. Next, at acorresponding block149, thejukebox13 identifies available storage space in thestorage unit93 based on thegraphics size field43, and writes the beginning address thereof into the graphics addressfield41 of the new song. Thereafter, at ablock115, themanagement system11 downloads the compressed digitized data of the picture to thejukebox13. The jukebox, at acorresponding block151, receives and writes the data into thesong library91. Finally, theblock107 is again encountered. If further replacements need to be made, theblocks111,113 and115 are repeated until complete. At acorresponding block153, the jukebox similarly repeats the correspondingblocks143 through151 until no further replacements need to be made. A further block placed immediately above theblock107 may also be used, wherein thecentral management system11 sends a delete, modify, add or replace command to thejukebox13 before downloading into thesong library93. In this way, themanagement system11 receives additional flexibility in updating thejukebox13. It is noted that thejukebox13 can also initiate communications with themanagement system11 at predetermined times or if the jukebox determines that an event has occurred that themanagement system11 should be aware of.
FIG. 5 is a flow-chart illustrating the specific operation of theprocessing circuit121 of thejukebox13 in interfacing with the user. At ablock161, if no song selection is playing, theprocessing circuit121 operates in a user attract mode, displaying a random sequence of available graphic images on thevisual display125. More particularly, theprocessing circuit121 randomly selects a starting address of the compressed graphics data from the available song records29 in thecatalog95. From that starting address, thecircuit121 retrieves the data from thesong library91 via thebus124. Thecircuit121 decompresses and transfers the data along thebus124 to thevisual display125 for display. Thereafter, thecircuit121 again randomly selects a starting address of available graphics data and this cycle repeats. If, however, a song selection is being played when theblock161 is encountered, the attract mode sequencing does not occur. Instead, thecircuit121 displays the associated graphics image of the song being played on thedisplay125. During the attract mode theprocessing circuit121 may also control thedisplay125 to present a prompt requesting customers to enter new song requests. The new song request data entered by a customer using the keyboard is stored and uploaded to themanagement system11 to aid thesystem11 in determining whether new song data should be downloaded to the jukebox.
At ablock163, theprocessing circuit121 responds to a signal indicating user interest from theselection keys123 by providing on thedisplay125 those music categories, i.e., country, rock, jazz, etc., found in thecatalog95. At ablock165, thecircuit121 responds to a signal indicating a category selection from thekeys123 by providing on thedisplay125 an index of available songs, arranged alphabetically either by artist or title, which can be scrolled and selected using thekeys123. Upon selection of a specific song, thecircuit121 encounters aninquiry block167. If at theblock167 thecircuit121 determines from the signal received from themoney detector125 that a sufficient amount of money has not been deposited, a branch to ablock169 occurs. At theblock169, using thedisplay125, thecircuit121 prompts the user to deposit money into the coin/bill detector126, then branches back to theblock161. However, if sufficient moneys have been deposited, thecircuit121 branches to ablock171 wherein thecircuit121 updates the play count field of the selected song's record in thecatalog file95 and money intake data stored in the memory. The circuit also places thesong record29 corresponding to the selected song into a queue of song records to be played. After the selection is queued, thecircuit121 encounters aninquiry block153. If the total number of selections purchased have been selected, thecircuit121 branches back to theblock161. Otherwise, if further purchased selections are forthcoming, thecircuit121 branches back to theblock163. In this manner, all of the selections are made and placed in the queue. Upon completion of playing a queued-up, selected song, thecircuit121 removes thecorresponding song record29 from the queue, selects the next song record in the queue, begins to play that next song, and executes theblock161. It is noted that the song queue can be displayed on thedisplay125 in order to show customers what songs have already been selected prior to making their selection.
More specifically, referring back toFIG. 1, once a specific song has been selected and queued-up, theprocessing circuit121 first identifies the beginning address of the compressed digital data from thesong address field37 of thesong record29 in the queue. From this address, using thebus124, thecircuit121 reads the compressed digital data out of thestorage unit93, decompresses that data, and sends the decompressed digital data to theaudio reproduction circuit127. Theaudio reproduction circuit127, commonly found in CDROM readers and associated amplifiers, converts the digital data to an analog signal which is amplified and used to drive thespeaker system129 via thebus131. After a selected song finishes playing, theprocessing circuit121 deletes thesong record29 of the selected song from the queue, increments theplay count field45 associated with that song in thecatalog95, and begins playing the next selected song in the queue if any exists. The process set forth in the flow-chart detailed inFIG. 5 is then repeated.
While the present invention is being described and illustrated in accordance with the preferred embodiment enabling new recordings and computer usage data to be transferred via thetransmission line15, the monitoring and updating may also be directly transferred. In this latter embodiment, routemen physically visit the location of eachcomputer jukebox13. During these visits, the routemen carry aportable management system181 which has only a subset of potential replacement songs stored in a subset library and associated catalog (not shown) on a portablebulk storage unit183. The subset library is loaded by theportable management system181 onto the portablebulk storage unit183 either directly from thebulk storage unit25 or indirectly as is initially done by the central management system11 (described above). In all other ways, theportable management system181 operates the same as thecentral management system11, collecting thecatalog95 of eachjukebox13 and updating or replacing as necessary. To accomplish this, theportable management system181 communicates at a very high rate of speed with thejukebox13 via a parallel communication link185 and a direct memory access (DMA) link187.
Additionally, the routemen may simply exchange the “old”storage unit93 with a pre-loaded storage unit (not shown). Thecentral management system11 may later read the “old”storage unit93 to gather the information from thecatalog95. Such an embodiment still enjoys the other advantages made possible by thecomputer jukeboxes13 described herein.
Additionally, thevisual display125 can be directed to display various advertisements. The advertisements are downloaded from thecentral management system11 to selectedcomputer jukeboxes13 via thetransmission link15. Also downloaded with the advertisements is digital data representing the identity of each advertisement, the number of times, and when each of the advertisements is to be run. The advertisement data is stored at a separate location on thestorage unit93 so that they can be easily located and tracked.
The advertisements like the audio data are preferably sent to thecomputer jukebox13 in compressed form, using a known compression scheme. The compressed data is preferably sent in packets that contain a header. The header contains information about the advertisement including how many times a day the advertisement should be run and at what times. The advertisements can then be displayed at the predetermined times on thevisual display125.
In the preferred embodiment, if a conflict arises between a song being played and the time for an advertisement to be played, the conflict is resolved as follows. If the song contains audio only and no associated graphics being shown on thevisual display125, then the advertisement, if it is video only, will be played simultaneously. If the advertisement contains video data and audio data, the advertisement will be run at the next available time slot or be shipped altogether. As each jukebox13 tracks when an advertisement starts and when it stops, if a particular advertisement is never run, then the central management system will receive such information and the advertiser will be billed accordingly.
The advertisements are also stored in thestorage unit93. Because there is bilateral communication between thecentral management system11 and thecomputer jukeboxes13, thecentral management system11 can track the number of times each advertisement is actually run for billing and royalty purposes by having this information uploaded from thecomputer jukebox13 to thecentral management system11. Thetransmission link15 that's used to download or transmit these advertisements can be any of the means disclosed above, including, modems17,19, a cable system, a RF link, a satellite link, a cellular telephone link, or a portable handheld device.
The downloading and storing of advertisements is completed by the same apparatus and method as described above in connection withFIGS. 1 through 5.
In yet another embodiment, thecomputer jukebox13 is associated with an electronic game, such as an electronic dart game. In the embodiment, the advertisements are also played on thevisual display125 associated with the electronic game when the game is not being played.
Additionally, it is to be understood that the embodiments of the present invention described hereinabove are merely illustrative and that other modifications and adaptations may be made without departing from the scope of the appended claims.