KMid's homepage






Round Tables


Midi Files



Page created by
Antonio Larrosa

Last updated on
26 Jan 2001

Page created on
16 Nov 1997

KDE Now!

Index Features Download LatestNews Screenshots Default

KMid's homepage

What is KMid ?

KMid is a X11 / KDE based midi player for Linux and FreeBSD.
KMid displays the text of karaoke files and change its colour as it is being played so that the tune can be easily followed !
It uses /dev/sequencer as output device supporting external synths, AWE , GUS and now also FM cards (such as sb16 or sbpro).

Tell me more about KMid

KMid current version has support for midi mappers, karaoke, playlists, and much more.
As of version 0.2, it already supports Drag&Drop, customizable fonts, possibility of playing some broken midi files, etc.
Version 0.3 includes an option to automatically select the type of lyrics that a song includes, better support for corrupted files, real session management (the application is not only restarted, but restored), etc.
Version 0.4 provides support for AWE and GUS cards, as well as a dialog to select the output device and midi map to use. Also supports playing gzipped files and has some bug fixes (as well as new bugs ;-) ).
Version 0.4.1 only fixes some problems with GUS (now it works !), and other small things.
Version 0.5 main news are support for FM devices and collections (also called playlists)
Version 0.5.1 has been released the same day than 0.5 just to fix a very small bug and improve (greatly) the FM support
Version 0.6 includes some bug fixes and improved synchronization between music and lyrics. KMid 0.6 now works in English and Spanish (other languages coming soon), with full translations of help.
Version 1.0 has some bugfixes (just changed the number to celebrate the KDE 1.0 announcement)
Version 1.2 added the channel view (see features, or better, screenshots :-)), volume bar and various bug fixes.
Version 1.7 fixed many things, mainly a problem that made KMid play midi files with a random tempo on some systems. It also contains a fix to work with 2.2.x kernels, a fix for AWE devices that were playing with a too high pitch, compiler bugs workarounds, etc.
Please note that I am developing KMid using the CVS tree of kdemultimedia. As this make easier to me to develop, KMid versions found in the kdemultimedia snapshots will be updated more often than the versions found at this page. Anyway, I will release major releases here too.
I started KMid's developing on the 11th of September of 1997 and it has gone very fast , probably because of the KDE libraries :-)

I'd like to see KMid's features

  • KMid has a nice interface to display karaoke lyrics.
  • A channel view to see what notes is each instrument playing.
  • Supports external midi synths, AWE cards, FM output, and GUS (for the later, needs the Linux Ultrasound Project driver and gusd installed).
  • Powerful Midi Mapper that will make people with no general midi synths happier than ever :-).
  • Collections with unlimited number of songs !
  • Drag & drop so you can drop in KMid any midi file from a kfm window.
  • Customizable fonts for karaoke text to be displayed.
  • Supports the two standards to introduce lyrics in midi files, that is, lyrics or text events (and guess which one a song uses automatically)
  • Session Management. If a song is playing while you logout from KDE, the next time you login, the same song will start playing !
  • Can play some broken midi files which make other players core dump !
  • Can open gzipped files just as any other midi file.
  • A Volume bar to change the volume of the song.
  • Consumes approximately 0.1% of my CPU (depends on the complexity of the song)
  • Runs on Linux and FreeBSD (perhaps also other unices ...)

I want to see a screenshot !

animated kmid
If you prefer to see a bigger, better quality screenshot (not animated like the above one), just click here.

Where can I download KMid current version from ?

You can download KMid from this page, or you can get the latest version from the kdemultimedia cvs snapshot in any of the mirrors.

If you have kdelibs from KDE 1.1.x, get one of the following files :

kmid-1.7-1.i386.rpm (283 Kb.) version 1.7

To download the source rpm, press on the next link :

kmid-1.7-1.src.rpm (421 Kb.) version 1.7

Or the tgz package :

kmid-1.7.tar.bz2 (419 Kb.) version 1.7

If this site is very slow for you, go to the Download Section where there is a list of other sites to download KMid from.

How do I install it ?

If you have downloaded the rpm distribution, just do 'rpm -i kmid-1.7-1.i386.rpm' as root to install it, then you should restart kde for the changes of mime types and the kpanel to take effect (or issue a 'kwmcom kpanel:restart' command). If you have installed the kdemultimedia package in rpm format, you won't be able to do that, because KMid is also distributed in there. Anyway, there is still a solution, force rpm to install the KMid package.
To install the tar.gz release of kmid, decompress it by doing 'tar xvfz kmid-1.7.tar.bz2' or something like that, it will create a new directory and then you should read the README file for compiling instructions. (That is, type "configure", "make" and "su -c "make install"")

What are KMid terms of use ?

KMid is distributed under the GNU General Public License Version 2.

Latest News

1 Mar 2000
- Wow, it has been a long time since I wrote the last news item, but it's not because anything has passed but because things happened so fast that I didn't had time to update the page :-)
- The most recent items follow:
- KMid has been splitted in libkmid (a generic midi library) and KMid (the player). Libkmid has its own page here
- I've ported KMid to use the recent KXMLGUI framework and the size of just one source code file has been reduced by over a 10% (6 Kb less)
- Last, but not least, KMid is now a part ! That means that it can be embeeded into konqueror like this cool konqy+kmid screenshot . The best thing is that the whole work has been done in just 20 minutes ! Isn't KParts cooool?
- I added native ALSA support to libkmid, so KMid now should work with ALSA.
- Btw, the sources for this version are only available at KDE's CVS.

19 May 99
- Finally got the time to make some distribution files for kmid 1.7 with the latest features and fixes. Note : It's the same version as included on the kdemultimedia package from KDE 1.1.1 .

8 Apr 99
- Fixed a problem that made Kmid consume 99% of CPU since a month ago, now it's back to the usual 0.00% of CPU use :-)
- Raised version number to 1.7 . I will try to release the sources and binary files soon (in the meantime, you can download KMid latest version from the KDE CVS snapshots)

2 Apr 99
- Did a workaround for a bug in the egcs compiler that made kmid freeze under certain conditions when parsing some midi files.
- Fixed a problem by which kmid didn't play the last half second or so of some songs.

21 Mar 99
- Fixed the high pitch of AWE cards (thanks to Joseph H. Buehler and Takashi Iwai for their indications)

6 Mar 99
- The sound driver in Linux kernels from the 2.2.x series work very different than the ones in 2.0.x so kmid was severely damaged. After several days of hacking I've found a fix that even works in the 2.0.x kernels.

27 Jan 99
- Fixed default midi map in consolekmid (the console version of kmid)

21 Jan 99
- Fixed a core dump in extremely rare files (I would say that there is only one of these on the whole internet)

16 Jan 99
- Decode URL before showing it on the screen.

20 Dec 98
- Fixed a problem when [un]installing midi devices (not such a mad idea if you use kernel modules) that made kmid segfault because it couldn't found the device.

18 Dec 98
- Fixed a geometry layout bug

17 Dec 98
- Initial support for SoftOSS (this is making some sound now :))
- Indentified the player directory sources and beautified them a little

11 Dec 98
- Fixed a shared memory leackage bug (hopefully the last bug in KMid :)

10 Dec 98
- Added new sgml documentation, updated up to KMid 1.6

27 Nov 98
- Small fix and raised version number to 1.6