Claims
- 1. A method for streaming transmission of signals representative of music for real time playback over a network comprising the steps of:
- (a) encoding the music using MIDI representations, voicing parameters, and custom wavetable data;
- (b) transmitting a data file via the Internet containing the encoded music;
- (c) receiving the encoded music data file;
- (d) playing back the encoded music data file in the foreground on one or more devices connected to the network as it arrives, initially using only standard MIDI musical instruments substituted for any non-MIDI standard musical instruments, as specified in the original composition, while data containing voicing parameters and custom wave table information necessary to play the original non-MIDI standard musical instruments is received in the background; and
- (e) replacing the substituted standard MIDI musical instruments with the original non-MIDI standard musical instruments as the play back continues in the foreground and the data containing voicing parameters and custom wave table information is received in the background.
- 2. The method of claim 1 wherein the encoding of the music comprises the steps of:
- (a) storing in a first file MIDI code of the music that can be accurately represented using MIDI standard music data;
- (b) determining MIDI standard instruments that provide the best approximation for the music that is not played by MIDI standard instruments;
- (c) storing in a second file MIDI code of the music that best approximates the music originally played by non-MIDI standard instruments; and
- (d) creating a third data file by incorporating the stored first and second files comprising a plurality of fields including:
- a first field having a complete representation of the music using only MIDI standard instruments; and
- a second field having data containing voicing parameters and custom wave table information for recreating the original music created using non-MIDI standard instruments.
- 3. The method of claim 1 wherein encoding the music comprises the steps of:
- (a) storing in a first file data representative of instrument voices;
- (b) storing in a second file MIDI code of the music that can be accurately represented using MIDI standard instruments;
- (c) determining MIDI standard instruments that provide the best approximation for the music that is not played by MIDI standard instruments;
- (c) storing in a third file MIDI code of the music that best approximates the music originally played by non-MIDI standard instruments; and
- (d) creating a fourth data file by incorporating the stored first, second files and third files comprising a plurality of fields including:
- a first field having data representative of instrument voices;
- a second field having a complete representation of the music using only MIDI standard instruments and instrument voices defined by the data of the first field; and
- a third field having data containing voicing parameters and custom wave table information for recreating the original music created using non-MIDI standard instruments.
- 4. The method of claim 1 wherein the voicing parameters include data to synthesize music altered by one or more special effects including reverberation, spatialization, equalization, and chorusing processing.
- 5. A network music transfer and compression system comprising:
- a plurality of remotely situated computing means for storing and playing a data file having a plurality of fields representative of music and musical voices;
- network means for interconnecting the plurality of computing means to facilitate data transfer between them;
- communications protocol means for compressing the data file and transferring it from one of the plurality of computing means operating as a server means to one or more of the remaining computing means operating as one or more recipient means comprising:
- means for sequentially transmitting the plurality of fields of the data file over the network means from the server means;
- means for receiving and processing a first field containing data representative of MIDI standard music and musical voices at the one or more recipient means in a background processing operation;
- play back means for playing the received data, using MIDI standard instruments, by the recipient means in a foreground processing operation;
- means for receiving at the recipient means, upon completed receipt of the first field in the background operation, a second field transmitted by the server means and containing non-MIDI standard instrument information; and
- means at the recipient means for replacing select MIDI standard instruments used by the playback means with non-MIDI standard instruments as the non-MIDI standard instrument information becomes available in the background operation.
- 6. A method of encoding and compressing music without losing any information comprising the steps of:
- (a) storing in a first file data representative of instrument voices;
- (b) storing in a second file MIDI code of the music that can be accurately represented using MIDI standard instruments;
- (c) determining MIDI standard instruments that provide the best approximation for the music that is not played by MIDI standard instruments;
- (d) storing in a third file MIDI code of the music that best approximates the music originally played by non-MIDI standard instruments; and
- (e) creating a fourth data file by incorporating the stored first, second files and third files comprising a plurality of fields including:
- a first field having data representative of instrument voices;
- a second field having a complete representation of the music using only MIDI standard instruments and instrument voices defined by the data of the first field; and
- a third field having data containing voicing parameters and custom wave table information for recreating the original music created using non-MIDI standard instruments.
- 7. A data file format for representing music in a compressed format comprising:
- a first field having data representative of instrument voices;
- a second field having a complete representation of the music using only MIDI standard instruments and instrument voices defined by the data of the first field; and
- a third field having data containing voicing parameters and custom wave table information for recreating the original music created using non-MIDI standard instruments.
RELATED APPLICATIONS
This application is related to U.S. patent application No. 08/561,889 filed on Nov. 22, 1995, and now U.S. Pat. No. 5,596,159 and U.S. patent application No. 08/672,096 filed Jun. 27, 1996, both entitled "SOFTWARE SOUND SYNTHESIS SYSTEM" by Steven S. O'Connell, assigned to the assignee of the present invention, and incorporated herein by reference.
US Referenced Citations (5)