Automatically up-dated apparatus for generating music
This is a continuation of application Ser. No. 07/656,944 filed Feb. 19, 1991, now abandoned. 
    
    
     BACKGROUND OF THE INVENTION 
     The present invention relates to a music-generating system consisting of a host unit and a plurality of terminal units for generating music. 
     Music-generating devices such as `karaoke` units (units for generating musical accompaniment, i.e., the instrumental part without voice, to which people enjoy singing songs) generally include a memory medium for storing music data, e.g., magnetic tapes or optical disks. The music-generating device reads out specified music data from the memory medium according to external instructions and reproduces music corresponding to the music data. 
     The above conventional music-generating devices generally reproduce music corresponding to music data stored on the memory medium. Accordingly, frequent replacement of the memory medium is required for fulfilling various requirements of customers, for example, for regenerating newly released or available pieces of music. Shops or companies owning many music-generating devices such as `karaoke` devices have to conduct troublesome replacement for each memory medium. The frequent replacement of many memory mediums requires both time and cost. 
     Wherefore, the object of this invention is thus to provide an improved music-generating system for efficiently supplying newly available music data to a plurality of music-generating terminal units. 
     Other objects and benefits of the invention will become apparent from the detailed description which follows hereinafter when taken in conjunction with the drawing figures which accompany it. 
     SUMMARY 
     The above and other related objects are realized by a music-generating system including a host unit M1 and a plurality of music-generating terminal units M2 connected to the host unit M1 as shown in FIG. 1. Each of the plurality of music-generating terminal units M2 has memory means M3 for storing a plurality of music data, reproducing means M4 for reading out specified music data from the memory means M3 according to selection signals and reproducing music corresponding to the music data, receiving means M5 for receiving music data transmitted from the host unit M1, and writing means M6 for transmitting and writing music data received by the receiving means M5 onto the memory means M3. The host unit M1 has music data supply means M9 including input means M7 for inputting music data and transmitting means M8 for transmitting music data input through the input means M7 to each of the music-generating terminal units M2. 
     The music-generating system of the invention thus constructed works as follows. The host unit M1 transmits music data input through the input means M7 to each of the plurality of music-generating terminal units M2 via the transmitting means M8. The music-generating terminal unit M2 then receives music data transmitted from the host unit M1 by the receiving means M5. The writing means M6 transmits and writes the music data onto the memory means M3. When selection signals are sent from an external device to the music-generating terminal unit M2, the reproducing means M4 reads out specified music data from the memory means M3 according to the selection signals and reproduces music corresponding to the music data. 
    
    
     DESCRIPTION OF THE DRAWINGS 
     The invention may be best understood by referring to the following detailed description of the preferred embodiment and the accompanying drawings, wherein like numerals denote like elements and in which: 
     FIG. 1 is a block diagram showing basic features of the invention; 
     FIG. 2 is a block diagram showing the structure of a communication `karaoke` system embodying the invention; 
     FIG. 3 is a flowchart showing the process for receiving music data and reproducing `karaoke` music executed in each of the `karaoke` terminal units of FIG. 2; and 
     FIG. 4 is a flowchart showing the process for transmitting music data executed in the host unit of FIG. 2. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     A preferred embodiment of the invention will now be explained in detail referring to the drawings. Since there may be many modifications without departing from the scope and spirit of the invention, the embodiment below is not intended to limit the invention to the disclosed embodiment; but, is intended only to illustrate the invention more clearly. 
     FIG. 2 shows the structure of a communication `karaoke` system embodying the invention. The communication `karaoke` system includes a plurality of `karaoke` terminal units 3 for generating `karaoke` music, and a host unit 5 for supplying music data such as music note data for `karaoke` to each of the `karaoke` terminal units 3 and controlling the `karaoke` terminal units 3. Each of the `karaoke` terminal units 3 has a transmitting/receiving device 9 and the host unit 5 has a transmitting/receiving device 11, respectively. The transmitting/receiving devices 9 and 11 are connected to a public telephone network 7, so that each of the `karaoke` terminal units 3 and the host unit 5 communicate to each other through telephone lines. 
     In addition to the transmitting/receiving device 9, each `karaoke` terminal unit 3 includes an external memory unit 21 such as a hard disk for storing various music data for `karaoke`, a keyboard 23 for inputting selection signals and various information including communication commands for the host unit 5, and a display unit 25 for displaying operational procedure of the `karaoke` terminal unit 3 and some other messages. The `karaoke` terminal units 3 further has a music-synthesizing unit 27 including a synthesizer for converting digital music data into analog music signals, and a control unit 29 connected to the other devices and units 9, 21, 23, 25, and 27 for controlling data transfer between the `karaoke` terminal unit 3 and the host unit 5 and reproducing music corresponding to music data. 
     The `karaoke` terminal unit 3 also includes an amplifier 35 for mixing music signals sent from the music-synthesizing unit 27 with a voice input through a microphone 31, amplifying the mixture, and outputting it through a speaker 33. The control unit 29 is a microcomputer including a central processing unit (hereinafter referred to as CPU) 29a, a read only memory (hereinafter referred to as ROM) 29b, a random access memory (hereinafter referred to as RAM) 29c, an input/output port (hereinafter referred to as I/O port) 29d, and bus lines 29e for connecting them to one another. 
     In addition to the transmitting/receiving device 11, the host unit 5 includes an external memory unit 41 for storing various data including newly available music data which will be transmitted to each of the `karaoke` terminal units 3, a data input unit 43 for inputting various data, and a keyboard 45 for inputting commands including communication commands for the `karaoke` terminal units 3. The host unit 5 further has a display unit 47 for displaying input data and messages, and a control unit 49 for conducting data management and controlling data transfer between the host unit 5 and each of the `karaoke` terminal units 3. The control unit 49 is a microcomputer including a CPU 49a, a ROM 49b, a RAM 49c, an I/O port 49d, and bus lines 49e for connecting them to one another. 
     The communication `karaoke` system of the embodiment includes the host unit 5 and the plurality of `karaoke` terminal units 3 connected to each other through telephone lines, thus efficiently and effectively exchanging various data to each other. 
     The process for receiving music data and reproducing `karaoke` music executed in each of the `karaoke` terminal units 3 will now be explained based on the flowchart of FIG. 3, and the process for transmitting music data corresponding to the control process of the `karaoke` terminal units 3 executed in the host unit 5 will be explained based on the flowchart of FIG. 4. 
     When the `karaoke` terminal unit 3 is turned on, the control unit 29 starts the process shown in FIG. 3. The control unit 29 connects the transmitting/receiving device 9 to a telephone network at step S10 and calls the host unit 5 at step S12. At step S14 it is checked if the host unit 5 is occupied, that is, if it is communicating with another `karaoke` terminal unit 3. When the answer is YES at step S14, the program proceeds to step S16 at which the connection to the telephone network is cut, and returns to step S10. 
     On the other hand, when the answer is NO at step S14, that is, when the host unit 5 is not occupied, the program proceeds to step S18 at which it is determined if the transmitting/receiving device 9 detects a receiving signal, which is sent from the transmitting/receiving device 11 of the host unit 5 when the device 11 is connected to the telephone network. When the transmitting/receiving device 9 detects the receiving signal, the program proceeds to step S20 at which an identification number representing the specific `karaoke` terminal unit 3 and a signal for requiring newly available music data are transmitted to the host unit 5. 
     Receiving the requiring signal, the host unit 5 checks if there is newly available music data for the specific `karaoke` terminal unit 3, and sends back either a PRESENCE signal or a NON-PRESENCE signal to the transmitting/receiving device 9 (details of this process will be described later according to the flowchart of FIG. 4). At step S22, it is determined if the transmitting/receiving device 9 receives any signal. When the answer is YES at step S22, the program proceeds to step S24 at which it is checked if the signal received is a PRESENCE signal or a NON-PRESENCE signal. When the signal is a PRESENCE signal, program proceeds to step S26. 
     The control units 29 chooses a storage area for storing newly available music data in the external memory unit 21, and sends a stand-by signal to the host unit 5 at step S26. 
     Receiving the stand-by signal, the host unit 5 successively transmits music data and auxiliary data including identification numbers each representing a specific music piece to the `karaoke` terminal unit 3 (details of this process will be described later according to the flowchart of FIG. 4). The program then proceeds to step S28 at which music data transmitted are read and then sent to the external memory unit 21. At step S30, it is determined if the transmitting/receiving device 9 detects an end signal, which is sent from the host unit 5 when transmission of all newly available music data is completed. When the transmitting/receiving device 9 does not detect the end signal, the program returns to step S28. 
     When the transmitting/receiving device 9 detects the end signal at step S30 or when the answer is NO at step S24, the program proceeds to step S32 at which the connection to the telephone network is cut. At step S34, a message asking for selection of music pieces is displayed on the display unit 25. At step S36, it is determined if a selection signal is input through the keyboard 23. Selection of a music piece may be conducted by inputting an identification number representing a specific music piece. 
     When the selection signal is input, the program proceeds to step S38 at which the identification number of the music piece is displayed on the display unit 25. Then at step S40, it is checked if a start command is input through the keyboard 23. When the answer is YES at step S40, the program proceeds to step S42 at which music data corresponding to the identification number are read out from the external memory unit 21 and transmitted to the music-synthesizing unit 27, so that music is generated corresponding to the music data. At step S44, it is determined if reproduction of the music data is completed. When it is not completed, the program returns to step S42, and when it is completed, the program returns to step S34. When not the start command but a cancel command is input through the keyboard 23 while the identification number of the specific music piece is displayed at step S38, an interruption routine (not shown) is activated to stop the display on the display unit 25 and the program returns to step S34. 
     The data transmitting process executed in the host unit 5 will now be explained based on the flowchart of FIG. 4. This routine is executed when the host unit 5 is called through the telephone network. The host unit 5 connected to the telephone network at step S50 outputs a receiving signal at step S52, and reads data transmitted from the `karaoke` terminal unit at step S54. At step S56, it is determined if the data transmitted is a signal for requiring newly available music data. 
     When thenswer is NO at step S56, the program proceeds to step S74 at which other transmitting or receiving processes are executed according to data transmitted. The host unit 5 receives various data, including the reproduction frequency of each music data, working time of the `karaoke` terminal unit, and amount of money collected, sent from the `karaoke` terminal unit 3 at a regular interval. The host unit 5 also transmits data required by the `karaoke` terminal unit 3. After executing one of these processes, the program proceeds to step S70 at which the connection to the telephone network is cut, and then exits from the routine. 
     On the other hand, when the answer is YES at step S56, the program proceeds to step S58 at which it is checked if there is newly available music data for the `karaoke` terminal unit specified by the identification number sent with the requiring signal. 
     Every time music data are newly transmitted to a specified `karaoke` terminal unit, the identification number of the unit is registered in the external memory unit 41 of the host computer 5 as explained later. Thus, the host computer 5 checks if the identification number exists in the external memory unit 41 at step S58. Music data are previously transmitted to and stored in the external memory unit 41 through the data input unit 43 and the keyboard 45. 
     When the answer is YES at step S58, the program proceeds to step S60 at which a PRESENCE signal is output through the telephone line. When the answer is NO at step S58, on the other hand, the program proceeds to step S72 at which a NON-PRESENCE signal is output through the telephone line. The `karaoke` terminal unit 3 judges existence of newly available music data according to the signal. After executing step S72, the program proceeds to step S70 at which the communication to the telephone network is cut, and exits from the routine. 
     After the output of a PRESENCE signal at step S60, the program proceeds to step S62 at which it is determined if the transmitting/receiving device 11 receives a stand-by signal transmitted from the `karaoke` terminal unit 3. When the transmitting/receiving device 11 receives a stand-by signal at step S62, the program proceeds to step S64 at which the host unit 5 successively reads out newly available music data from the external memory unit 41 and transmits them to the `karaoke` terminal unit 3. At step S66, it is determined if transmission of all available music data is completed. When the answer is NO at step S66, the program returns to step S64, and when the answer is YES, the program proceeds to step S68. At step S68, an identification number representing the specific `karaoke` terminal unit 3 is registered in the external memory unit 41 and an end signal is transmitted to the `karaoke` terminal unit 3. The program then proceeds to step S70 at which the connection to the telephone network is cut, and exits from the routine. 
     As described above, in the communication `karaoke` system of the embodiment, all available music data are input in the external memory unit 41 of the host unit 5, and are transmitted to each of the plurality of `karaoke` terminal units 3 based on requirements. Thus, the communication `karaoke` system does not require any troublesome replacement of a memory medium, which is required for each `karaoke` unit in the conventional system. Namely, this system is cost-saving and labor-saving. Since registration of newly available music data is executed when the `karaoke` terminal unit is turned on, the system of the embodiment can efficiently fulfill various requirements of customers. 
     In the music-generating system of the invention, all available music data are first input in the host unit and then transmitted to each of the plurality of music-generating terminal units. Thus, the music-generating system fulfills various requirements of customers efficiently and effectively without doing any troublesome replacement of memory mediums.