Method and apparatus for audio broadcast of enhanced musical instrument digital interface (MIDI) data formats for control of a sound generator to create music, lyrics, and speech
First Claim
1. A method of broadcasting Musical Instrument Digital Interface (MIDI) formatted data for the control of a sound generator, comprising the steps of:
- dividing a sequence of MIDI data commands into discrete packets occurring within a predetermined accumulator period of time;
modifying each of said MIDI data commands by labeling said commands with a time tag representing a relative time at which said MIDI data command occurs within its corresponding accumulator period;
encoding said modified MIDI data commands on a carrier wave for broadcasting to a remote receiver for the control of a sound generator.
0 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for the transmission and reception of broadcasted instrumental music, vocal music, and speech using digital techniques. The data is structured in a manner similar to the current standards for MIDI data. Transmitters broadcast the data to receivers which contain internal sound generators or an interface to external sound generators that create sounds in response to the data. The invention includes transmission of multiple audio data signals for several languages on a conventional radio and television carrier through the use of low bandwidth data. Error detection and correction data is included within the transmitted data. The receiver has various error compensating mechanisms to overcome errors in data that cannot be corrected using the error correcting data that the transmitter sent. The data encodes for elemental vocal sounds and music.
146 Citations
29 Claims
-
1. A method of broadcasting Musical Instrument Digital Interface (MIDI) formatted data for the control of a sound generator, comprising the steps of:
-
dividing a sequence of MIDI data commands into discrete packets occurring within a predetermined accumulator period of time;
modifying each of said MIDI data commands by labeling said commands with a time tag representing a relative time at which said MIDI data command occurs within its corresponding accumulator period;
encoding said modified MIDI data commands on a carrier wave for broadcasting to a remote receiver for the control of a sound generator. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19)
receiving said boardcast carrier signal and decoding the encoded modified MIDI data commands transmitted therein;
sequencing said decoded MIDI data commands within their accumulator periods in accordance with the time tag representing a relative time at which said MIDI data command was encoded within its accumulator period;
outputting said sequenced MIDI data commands to sound generator.
-
-
3. A method for creating sound as recited in claim 2 further comprising:
-
analyzing said transmitted decoded MIDI data commands for vocal “
note-on”
commands;
and adding a vocal “
note-off”
command prior to each said vocal “
note-on”
command.
-
-
4. A method for creating sound as recited in claim 2 further comprising the steps of:
-
identifying one or more sounds;
determining a standard formatted MIDI code corresponding to each of said identified sounds;
comparing said transmitted encoded MIDI data commands to said predetermined standard formatted MIDI codes for said identified sounds; and
isolating said transmitted encoded MIDI data commands that match said predetermined standard formatted MIDI codes for identified sounds.
-
-
5. A method for creating sound as recited in claim 4 further comprising the step of:
after isolating said transmitted encoded MIDI data commands that match said predetermined standard formatted MIDI codes for said identified sounds, changing loudness data for said transmitted encoded MIDI data commands.
-
6. A method for creating sound as recited in claim 4 further comprising the steps of:
-
designating one or more substitute sounds to replace said identified sounds;
generating standard formatted MIDI data encoding for said substitute sounds;
replacing said transmitted encoded MIDI data commands that match said predetermined standard formatted MIDI codes for said identified sounds with said generated MIDI data encoding for said substitute sounds.
-
-
7. The method of broadcasting data as recited in claim 1, wherein said sequence of MIDI data commands code for two different sound tracks, and said step of dividing the sequence of data commands further comprises the step of functionally grouping a first sound track into a first packet of MIDI data and functionally grouping a second sound track into a second packet of MIDI data.
-
8. The method of broadcasting data as recited in claim 7, wherein said first and second sound tracks are voice tracks that encode for different languages.
-
9. The method of transmitting data as recited in claim 1, wherein said data represents modified MIDI data corresponding to a modified MIDI data format.
-
10. The method of transmitting data as recited in claim 9, wherein the discrete portions of said modified MIDI data include vocal “
- note-off”
commands and vocal “
note-on”
commands, and said method further comprises the step prior to dividing said data into accumulator periods of deleting selected vocal “
note-off”
commands that are immediately followed by a vocal “
note-on”
command.
- note-off”
-
11. A method for producing sound from data broadcast in accordance with the method of claim 9, wherein said modified MIDI data encodes for instrumental music and elemental vocal sounds, said method comprising the steps of:
-
receiving and decoding said modified MIDI data from said carrier wave;
placing the discrete portions of said decoded modified MIDI data into a proper time position relative to other such portions based on the accumulator period of each discrete portion and time tag with which said discrete portion was labeled;
conveying said modified MIDI data to a sound generator.
-
-
12. A receiver for receiving a broadcast carrier signal encoded in accordance with the method of claim 1, and for decoding modified MIDI data commands therefrom, said receiver further comprising a receiver processor for dividing said modified MIDI data commands into said discrete packets based on their accumulator periods and for sequencing said modified MIDI data commands within their accumulator periods in accordance with the time tag representing a relative time at which said modified MIDI data command was encoded within its accumulator period.
-
14. A method for producing sound from data broadcast in accordance with the method of claim 9, wherein said modified MIDI data commands encode for instrumental music and elemental vocal sounds, said method comprising the steps of:
-
receiving and decoding said modified MIDI data from said carrier wave;
placing the discrete portions of said decoded modified MIDI data into a proper time position relative to other such portions based on the accumulator period of each discrete portion and time with which said discrete portion was labeled;
assessing a data bit error rate;
determining an anti-ciphering time delay;
outputting said decoded modified MIDI data to a sound generator;
waiting for said anti-ciphering time delay to expire; and
outputting to said sound generator “
note-off”
command if said anti-ciphering time delay expires.
-
-
15. The method for producing sound from data according to claim 14, wherein said anti-ciphering time delay is a function of said data bit error rate.
-
16. The method for producing sound from data according to claim 14, further comprising the step of dividing said transmitted modified MIDI data into at least two groups of phonemes including consonants and vowels, said anti-ciphering time delay being determined for each said group of phonemes.
-
17. The method for producing sound from data according to claim 14, further comprising the step of determining a duration of at least one vocal music note, said anti-ciphering time delay being a function of said duration.
-
18. The method for producing sound from data according to claim 14, further comprising the step of determining a duration of at least one instrumental music note, said anti-ciphering time delay being a function of said duration.
-
19. The method for producing sound from data according to claim 14, further comprising the step of determining a duration of at least one elementary speech sound, said anti-ciphering time delay being a function of said duration.
-
13. A method of producing speech and music vocals comprising the steps of:
-
dividing speech and music vocals into elemental vocal sounds;
encoding said elemental vocal sounds into modified MIDI data commands inclusive of vocal “
note-off”
commands and vocal “
note-on”
commands;
selectively deleting “
note-off”
commands when immediately followed by a “
note-on”
command; and
conveying said encoded modified MIDI data commands to a sound generator for production of sound.
-
-
20. A method for broadcasting Musical Instrument Digital Interface (MIDI) formatted data comprising the steps of:
-
encoding sound as discrete MIDI data commands;
dividing said encoded MIDI data commands into a plurality of discrete packets occurring within predetermined-duration accumulator periods and modifying each divided MIDI data command by tagging said MIDI data command with a time tag representing a relative time at which said modified MIDI data command occurs within its corresponding accumulator period;
encoding said modified MIDI data on a broadcast carrier signal;
receiving said broadcast carrier signal and decoding said modified MIDI data commands;
sequencing said modified MIDI data commands in accordance with their accumulator period and time tags;
controlling a sound generator in accordance with said sequenced modified MIDI data commands to generate chronological sounds. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
-
28. A method for producing of speech and music vocals by transmitting Musical Instrument Digital Interface (MIDI) formatted data, said method comprising the steps of:
-
dividing speech and music vocals into elemental vocal sounds;
encoding each of said elemental vocal sounds into standard formatted MIDI data commands, and for each elemental vocal sound generating a preceding “
note-on”
command and selectively generating a subsequent “
note-off”
command only when not immediately followed by a “
note-on”
command;
outputting the MIDI data commands with “
note-on” and
“
note-off”
commands to a sound generator for decoding of said elemental vocal sounds and production of speech and music vocals.
-
-
29. A method for creating sound from transmitted modified MIDI data, said modified MIDI data having been transmitted with time tags and in accumulator periods from a remote transmitter, said method comprising the steps of:
-
receiving said transmitted modified MIDI data;
placing said transmitted modified MIDI data into the proper time position within said accumulator periods;
assessing a data bit error rate;
comparing said assessed data bit error rate to pre-determined values;
suppressing specified modified MIDI data when said assessed data bit error rate exceeds said predetermined values; and
outputting non-suppressed modified MIDI data to a sound generator.
-
Specification