How to make MIDI music (1)
What is MIDI
MIDI is the English abbreviation of Musical Instrument Digital Interface. MIDI is not a real thing, but an internationally accepted standard interface. It is a standard protocol for communication between electronic musical instruments and between electronic musical instruments and computers. Through it, various MIDI devices can accurately transmit MIDI information. It has gone through a long period of development since its advent in the early 1980s. We can broadly understand it as an electronic music synthesizer, which is a general term for computer music, including all technologies related to protocols, equipment, etc. What we usually call "MIDI" usually just refers to a computer music file format.
As long as we pay a little attention, we can often see many music files with MID and RMI extensions. These are the most commonly used MIDI formats on computers. A MIDI song that can be played for about 5 minutes has a capacity of only more than a hundred K bytes. The waveform music file of the same song, such as WAV, is up to about 50MB. Even after high-ratio compression processing by MP3 technology, it is still 5MB in size. In comparison, MIDI is small and exquisite. Such files are most suitable for dissemination on the Internet. This characteristic of MIDI files determines that MIDI music is definitely the music most closely related to the Internet.
What is the difference between MIDI and ordinary audio files?
MIDI files do not quantitatively record the sound changes of the music at every moment like WAV or MP3. At what time, what instrument is used, what note it starts with, what tone it ends with, what accompaniment is added, etc., so the MIDI file itself is not music, but a pronunciation command. The MIDI file itself is just some digital signals, not Contains any sound information. WAV records the sound waveforms and converts these analog waveforms into digital information. The volume occupied by this information is obviously much larger than that of simply descriptive MIDI files.
How MIDI music is played
Since MIDI files are only descriptions of music playback and do not themselves contain any sound information for playback, then the computer can How is music played by our sound card? This requires various forms of synthesis, that is, when playing MIDI, the computer sends instructions to the sound card, and the sound card resynthesizes the MIDI information according to the instructions. Therefore, the playback effect of MIDI depends on the quality and timbre of the user's MIDI device. As far as computer sound cards are concerned, the most common methods are FM synthesis and wavetable synthesis. The former was mostly used in previous ISA sound cards. FM is the English abbreviation of "frequency modulation". It uses the principle of sound oscillation to synthesize MIDI. However, due to the limitations of the technology itself, and the fact that most of these sound cards use cheap chips, the effect is naturally poor; the effect brought by wavetable synthesis is far better than FM, and has been widely used in computers. Wavetable-like sound cards and wavetable software emerge in endlessly.
What is a wave table?
The English name of the wave table is "WAVE TABLE", which means "waveform table". In fact, it records all the sounds that can be produced by various real musical instruments (including various ranges and tones) and stores them as a wavetable file. For example, a piano has piano timbre samples, and a guitar has guitar timbre samples. During playback, instructions are sent to the wave table based on the music information recorded in the MIDI file, and the corresponding sound information is found one by one from the "table", which is synthesized and processed before being played back. Since it uses samples of real musical instruments, the effect is naturally better than FM. Generally, the instrument sound information of the wave table is recorded with a precision of 44.1KHz and 16Bit, so as to achieve the most realistic playback effect. For a wavetable sound card or wavetable software, the main indicators to measure its wavetable performance include the following aspects.
The first is the wavetable library capacity. Since wavetable synthesis technology records the timbre samples of real musical instruments and then synthesizes them, the larger the wavetable, the more realistic the timbre samples will be and the better the effect will be. The wavetable library of professional MIDI equipment can be up to 32MB or more. Today's PCI sound cards generally provide a 2MB wavetable library, and the best one is 4MB. As far as the sense of hearing is concerned, the effect that the 4MB sound library can achieve is already quite good. Although there is a gap with professional equipment, it is enough for ordinary users. In recent years, with the rapid development of computer technology, various software wave tables have emerged and are likely to replace hard wave tables. YAMAHA SYXG-100 is the latest popular soft wavemeter launched by YAMAHA.
The best thing about soft wavetable is that it is "free". Download a wavetable software, install it on your machine, and you can enjoy the amazing effect of wavetable synthesis
< p>Then there is polyphony. On the outer packaging of various sound cards, we often see numbers such as 64 and 128. Some users and even merchants mistake them for data processing channel units.In fact, 64 and 128 only represent the maximum polyphony number that this card can achieve during MIDI synthesis. The so-called "polyphony" refers to the maximum number of sounds that a MIDI music can emit in one second. If the polyphony number is too small, some parts of more complex MIDI music will be lost during synthesis, directly affecting the playback effect. There are also concepts of "hardware supporting polyphony" and "software supporting polyphony". The so-called "hardware-supported polyphony" means that all polyphony numbers are generated by the sound card chip, while "software-supported polyphony" means that the polyphony number is increased by software synthesis based on "hardware polyphony", but this requires Consumes CPU resources.