My son has this toy that he doesn’t get to play with very often. It is actually one of those things that gets strapped to his crib and plays music and lights up. By the time he was old enough to enjoy it, we did 2 things. We no longer stayed in the house where it was kept often. And we took it out of his crib and strapped it to the full sized bed in the room with his crib. He sometimes got to play on the bed and really enjoyed playing with this thing.
One thing I noticed about this toy was that it played this song in a loop. It had a very nice melody and I really liked it. Then one day I wanted to figure out what song it was by trying to find someone who could name it as I was trying to describe the toy to Google. That sort of didn’t work because I either had the bring of the toy wrong or it was too old or unpopular. Still, the song came up in the results for similar toys. I wanted to put this song in the minivan to play for my son.
Apparantly, the song I was looking for is very famous and well known. It is a very popular song played at weddings. The song is Canon in D or Pachelbel’s Canon.
So I set about find a copy of the song similar to the rendition on the toy. Down a rabbit hole I go. I first look for mp3s from Amazon. I found something I bought with credits and it is fine but it isn’t what I was looking for.
Then I look for MIDI files. I find some and even found some I rather like. But they sound so bad. Then I remembered I used to listen to these files played back with samples of real instruments. I recalled it sounded pretty good. I did a bunch of reseach and wound up with this software stack.
- Windows – VirtualMIDIsynth, vanBosco’s Karaoke Player, Musyng.sf2 soundfont (huge at 1.6GB) and SGM-V2.01.sf2
- Linux – Fluidsynth
The Windows stack plays stuff OK but it doesn’t seem up the the task of conversion. I use Fluidsynth with the soundfonts to convert the MIDI files to wav files. I then use my custom compiled versions of ffmpeg to convert the wav files to mp3s. None of this is convenient but it works. I’ve managed to find quite a few MIDI files.
fluidsynth -F output.wav -O s32 /home/file0500/music/midi/Musyng.sf2 midifile.mid
ffmpeg -i wavefile.wav -codec:a libmp3lame -qscale:a 0 output.mp3
There is this one arrangement I really like. One reason is that the volume changes in a dramatic way in places. It has lots of nice strings (which is how I like this song played) and lots of layered instruments. But it also has these weird volume ups and downs that don’t obviously add value to the song. It just makes it sound bad. I looked for MIDI software to try to fix it but discovered MIDI is pretty damn hard and while it works, it is awkward. I’d have to know a lot of MIDI and music to adjust my file.
I then remembered there is another type of music file that also played songs with sampled sounds. One that might or might not be older than MIDI but one that was easier to get good sounding results from back in the day in the 90s before things like soundfonts removed the need to buy very pricey hardware to get MIDI files to play OK. These were called MODs. And I recall one of the first I heard was of the Beverly Hills Cop tune Axel Foley. It sounded much better than pretty much any MIDI file back then on the computers we had. MODs were pretty amazing in that they sounded good with just 4 channels. Other trackers that used similar technology like s3m and 669Â often had more channels but MODs were just fine. Blast from the past.
So I looked for some Canon in D MODs and found a whole bunch. I incidentally stumbled upon a Canon in D fan page with a huge collection of MIDIs.
For MODs I am using OpenMPT. It is modern and fantastic. It is currently being developed using the open source method. It supports all sorts of plugins and plays MIDIs and I saw mention of soundfonts. I will have to try it. If it sounds good, I can ditch that crappy MIDI software stack I am using now. It even outputs to lossless and lossy formats.
I expect that once I evaluate all of these songs or arrangements I might have 10 different Canon in D versions I like in the car.