Jul 20, 2020
(and last updated on Aug 02, 2020)
This is a soundfont of the wince_gm.dls soundbank that shipped with Windows Ce 4.2. The original DLS file couldn't be loaded by many programs so I had to manually create the soundfont. The original samples were dumped using sampledump from libdmusic. After they were dumped, they were converted to 16 bit signed PCM using Goldwaves batch converter. to extract the instrument and loop point information from the DLS, I had to run a modified python script that generated a text dump of the DLS. This script initially couldn't extract the needed loop point information, so I had to add support for that my self. The script was also erroring out on some unknown chunks in the DLS, so I made the script ignore the unknown chunks. After all of the information was extracted, the loop point information was readded to the samples. After this was all done, I worked non-stop on the soundfont for about 10 days using sf2comp. I was able to convert the tuning and envelope information from DLS to SF2, but I didn't bother converting the LFO or volume attenuation information as I don't think that is too important. I also used Wavosaur to shorten some loop points by 1 sample. Some of the loops either didn't sound right or they made a note become slightly out of tune relative to other notes. These small fixes to the loop points were done as I noticed them, so I Probably missed some. Some of the samples were also at the wrong playback rate, so this was corrected. I am pretty sure I fixed all of the playback rate problems, as they resulted in a key playing a completely wrong note.
Another interesting thing to note is since the samples used in this project were decoded using a much better decoder than the one on Windows CE, this soundfont actually sounds much better than the original synth.
I figured out how to add the volume attenuation information, and I also added the modulation envelopes. I also fixed some envelopes and a couple more loop points.
I added the LFO frequency and delay information.
This soundfont is now irrelevant, since I figured out how to directly convert the DLS into a soundfont.