When we read a file kar or midi, the reading is done through the small bank GM integrated into Windows named "gm.dls". It is found under "C: \ Windows \ System32 \ drivers" or "C: \ Windows \ SysWOW64 \ drivers" for the 64-bit system. It is she who is responsible for the poor quality of the restitution of the midi on our PC.
To improve the sound of MIDI, there are several solutions. Sound Fonts or SoundFonts are synthetic banks that offer the 128 instruments defined by the General MIDI standard. These banks are interchangeable at will, you can even build your own bank of instruments. They are housed in RAM and software is needed for their use. For karaoke use, once the system is installed, we do not deal with it anymore.
To summarize, the MIDI file contains the score of the song as well as all the parameters related to its execution. During playback, the midi software will redirect the 16 parameterized instrument outputs to the SF system, which will be responsible for rendering them to the sound card. Finally, it pre-amplifies them to send them to the sound system.
With a simple keyboard or piano midi, it is also possible to use the system SF, integrated in the south. To connect, a midi / usb adapter is required. Once the keyboard signal received by the PC, we get a complete and simple midi synthesis system that can even be controlled from the keyboard. The advantage is to do without the complex learning of a keyboard-sequencer.