
FatBoy SoundFont - rocky1138
https://fatboy.site/
======
johnzim
Love it!

I had to go back and listen to one of my favorite midi tracks - the Ultima
online Buccaneer's Den theme.

Using this sound font there are some really major improvements. Not that the
original instrumentation that shipped with machines of the day didn't have its
charm.

I love the fact that we used to literally ship midi files around for game
music - it's such a technically elegant approach and because it could be
thought of as just 'musical markup' it was even trivial to add compositions to
websites - when we had severe bandwidth limitations.

While there's no question that the addition of a mastering step and the
ability to ship perfectly 'rasterized' music (to mix metaphors) has meant we
have a perfect rendition of the composer's intent and is vital for a lot of
musical expression, there was always something fun about the idea that music
directors were practically composing symphonies to be played by individual
orchestras on each user's machine.

~~~
codetrotter
> there was always something fun about the idea that music directors were
> practically composing symphonies to be played by individual orchestras on
> each user's machine

I like this way of looking at it. And with different sound fonts like the
original vs the FatBoy sample posted on the site and ITT

[https://www.youtube.com/watch?v=veMlnxlgpZg](https://www.youtube.com/watch?v=veMlnxlgpZg)

[https://www.youtube.com/watch?v=b3uycgx8FiA](https://www.youtube.com/watch?v=b3uycgx8FiA)

it’s kind of like we get to listen to new interpretations of the music, where
the sheet music remains the same but the conductor has told the orchestra to
perform it different in terms of instruments used. I think.

Someone who knows about orchestra music and performance correct me if you
think what I said was off base. I don’t know whether it is actually the role
of the conductor to pick instruments. Wikipedia says:

> The primary duties of the conductor are to interpret the score in a way
> which reflects the specific indications in that score, set the tempo, ensure
> correct entries by ensemble members, and "shape" the phrasing where
> appropriate.

[https://en.wikipedia.org/wiki/Conducting](https://en.wikipedia.org/wiki/Conducting)

So I don’t know who actually picks the instruments that the orchestra will
use.

~~~
samatman
A composer specifies which instruments play what, as a general rule.

We call it an ‘arrangement’ when a piece of music is reinterpreted with
different instruments.

------
feross
Nice work! I am working to improve the MIDI playback quality on my MIDI
archive website, BitMidi ([https://bitmidi.com](https://bitmidi.com)), and I
think this might help.

The main difficulty with a web-based MIDI player like BitMidi is that it's not
feasible to force the user to wait for a 300+ MB SoundFont to download before
starting in-browser playback. The current format I use ("patch" files) has a
separate file for each instrument, so I can lazily load only the necessary
instruments needed to play a single song. You can see the approach I use here:
[https://github.com/feross/timidity](https://github.com/feross/timidity)

Anyway, excellent work on this SoundFont!

~~~
Asooka
Can't browsers just play midi files? I know we could in the 90s and 00s.

~~~
classichasclass
Not directly. This was usually done through a plug-in such as QuickTime.

~~~
pygy_
... QuickTime which itself can't play midi anymore.

------
Tade0
Excellent work!

My only complaint would be the too low snare volume.

I almost stopped making any music after I switched to a laptop and lost daily
access to an old SoundBlaster card which only supported some obscure sound
font format. One of the fonts supplied with the driver CD was named
"eapci8m.ecw" and had some of the best sounding instruments I ever heard - and
all that squeezed into an 8MB file!

Regarding the snare: here's a piece I did for my friend's acting-school-entry-
exam-dance-routine back in 2007:

With Fatboy:

[http://node.tade0.usermd.net/crook-
fatboy.mp3](http://node.tade0.usermd.net/crook-fatboy.mp3)

Original(caution: much louder):

[http://node.tade0.usermd.net/crook.mp3](http://node.tade0.usermd.net/crook.mp3)

------
hudbuddy
Without commenting on the design, I just want to say that I appreciate how
well the information on the home page is laid out.

You addressed all of my questions in order and in a compelling way. Very solid
melding of marketing and education.

~~~
kapep
Maybe I missed something while reading the page but the whole time I my
biggest question was what it actually sounds like. At the very bottom is a
"hear demo" link, that leads to a Youtube channel with one song. But there
isn't a link to the original version, so I can't compare how much it improved.

------
Birch-san
Wonderful samples. None of the instruments are neglected; the standard is
consistently high. And I'm happy to have clarity on the terms of use. So many
(for example, Shan's Soundfont) have no stated license or provenance.

I'll be loading this into juicysfplugin[0] (my free, cross-platform soundfont
synth) for a play.

[0] [https://github.com/Birch-san/juicysfplugin](https://github.com/Birch-
san/juicysfplugin)

------
rocky1138
I realize it's somewhat ironic that I'm the one who posted the link but I
myself am not a huge fan of the font itself. The site is cool, though. My main
problem with the SoundFont is the same that many of them have: they, for some
reason, mute the chirping sound in Duke3d's storm.mid. It totally changes the
song and I just find myself getting frustrated when it's missing.

~~~
vanderZwan
The changelog shows the font is still being tweaked based on real-life
feedback:

[https://fatboy.site/changelog.html](https://fatboy.site/changelog.html)

And if you scroll down, there's an email address:

contact@fatboy.site

So you could try contacting the author about this issue

~~~
rocky1138
Thanks. I've sent them a message and included the MIDI file.

------
colanderman
The soundtrack of Descent 1 was composed on a Roland SC-88 (or a sister
model), which was the "gold standard" Midi hardware module of the era. (Its
samples formed the basis of the wavetable synth shipped with Windows 95.) I
rendered here the Descent 1 title theme using FatBoy via FluidSynth:
[https://chris.pacejo.net/temp/descent/D1.ogg](https://chris.pacejo.net/temp/descent/D1.ogg)

It's good, but compare to a rendering from an actual SC-88:
[https://www.youtube.com/watch?v=xqrvsy7AeGw](https://www.youtube.com/watch?v=xqrvsy7AeGw)
(not my rendering, though I do own an SC-88)

There are definitely nuances missing; e.g. 40 s in, when there's just the bass
vamp, the SC-88 rendering is far superior in my opinion. At 60 s in, the synth
that enters is too loud in the FatBoy rendering.

It's possible – maybe even likely – that these differences are more due to
FluidSynth not interpreting all controls and RPNs identically to the SC-88.

Same comparison, only for Descent 2:
[https://chris.pacejo.net/temp/descent/D2-Title.ogg](https://chris.pacejo.net/temp/descent/D2-Title.ogg)
(FatBoy/FluidSynth) vs.
[https://www.youtube.com/watch?v=o9_uUCBCuUs](https://www.youtube.com/watch?v=o9_uUCBCuUs)
(SC-55 II) I think the difference here is stark. Though clearly FluidSynth is
partly to blame, as the beginning notes aren't even in tune with each other in
that rendering.

~~~
vanderZwan
> _controls and RPNs_

Out of curiosity: could you elaborate on what those are? My first guess would
be it's something like font hinting but for MIDI

~~~
colanderman
Sort of. They control things like volume, panning, reverb, pitch bend
sensitivity, tuning, synthesizer parameters, etc. Most controls have a defined
meaning, though some (named things like "General Purpose" and "Effect 1
Depth") do not, and control different things on different synthesizers. (For
example, "Effect 1 Depth" is usually reverb, but not always.) But even those
things with a defined meaning are "defined" in the loosest sense of the word.
E.g. one synthesizer may implement "Modulation" as tremolo, while another may
implement it as vibrato (two similar, but noticeably different, musical
effects). So any MIDI recording which ventures even slightly outside of the
most common and obvious controls or RPNs risks losing important nuances upon
being played by a different synthesizer.

(The difference between controls and RPNs is that RPNs are – in theory –
extensible, registered with a centralized authority, so that new ones may be
developed. In practice, there are a small fixed number, fewer even than
controls.)

Further there are NRPNs, which are like RPNs but are not registered with any
authority. So these completely vary by manufacturer. The SC-88 has a bunch of
these, things like "Vibrato Rate", which, if ignored by another synthesizer,
sometimes make no difference, or sometimes are very noticeable, depending on
the degree to which the composer is relying on that functionality.

Often the bigger difference which I neglected to mention is banks. There are
128 MIDI "patches" – sounds – but of course there are many more than 128
instruments in the world. So there is also a system of patch variations called
"banks". Usually these variations are true variations (e.g. concert grand vs.
baby grand piano), but sometimes they are completely different (Moog
synthesizer vs. square wave). And like controls, they are variably ill-defined
or not standardized, and thus not implemented identically on all synthesizers.

(The reason for this mess is because MIDI is really an evolved creature. The
original MIDI standard specified very little, so General MIDI (GM) was born,
which is what most people know as "MIDI", but that was insufficient, so
manufacturers authored their own extensions: Roland created GS; Yamaha created
XG; and of course they are incompatible with each other.)

~~~
vanderZwan
That was very interesting and educational, thank you!

------
wiradikusuma
I remember my younger days. Games today depend on graphics card for quality,
so you can brag to have better graphics with your friends if you have a better
card.

In the old days, the card was important of course (it's more to whether it's
software or hardware, essentially jagged vs "smooth" picture), but having a
good MIDI sound card is like heaven and earth for the ear. I literally spent
hours just justening to MIDI files downloaded from the internet when I got a
Sound Blaster (forgot the model).

~~~
smacktoward
Me too. And of course the Sound Blaster was an _entry-level_ MIDI device; even
while I was enjoying my SB card I was jealous of people who could afford a
Roland MT-32!

------
dgorges
Here’s the Link to the sample:

[https://youtu.be/b3uycgx8FiA](https://youtu.be/b3uycgx8FiA)

Sounds pretty good!

~~~
selfselfself
Here's the original for comparison. It's quite an improvement!

[https://www.youtube.com/watch?v=veMlnxlgpZg](https://www.youtube.com/watch?v=veMlnxlgpZg)

~~~
pilif
Are you sure this was a Roland SC? This sounded pretty close to just plain old
Adlib. Of course _any_ sound font would sound better than fm synth. What would
be helpful is to have the track played on an MT32 or a Sound Canvas to do a
proper comparison.

That's the thing about these old games: they were totally made for how the
MT32 and later the Sound Canvas sounded to the point where they would even
chose an instrument that would otherwise not be fitting, but which sounded
good on the original device.

Unfortunately for me, all of this happened way before I had money on my own or
could convince my parents to shell out the considerable sum these devices
would have cost, so I really don't know how these games were intended to
sound.

Which makes me really sad as a huge video game music fan/nerd.

~~~
zokier
[https://www.youtube.com/watch?v=_HjPqvCp_aQ](https://www.youtube.com/watch?v=_HjPqvCp_aQ)
here is an actual mt32 recording, without voice over, that should make the
comparison more clear

------
karmakaze
Make sure you get to the bottom of the page and hear the linked samples.

The "King's Quest V - Oasis Theme" was so immersive I couldn't help clicking
on the static image to try and play it.

~~~
samplatt
I recently replayed through KQ5 (and for the first time ever, finally
completed it). The provided youtube recording of the oasis theme MIDI is way
way WAAAAYYYY nicer quality than the original game. Is this deliberate? Is
this what we're trying to showcase?

Side-note: It was really nice hearing the theme music when encountering the
princess near the end of KQ5, as it was very clearly the progenitor of the
"Girl in the Tower" song that was to be the main theme of KQ6, which is my
favourite by a long way. It was an unexpected nostalgia hit, was quite well
done and I'm glad they carried the tune between the games.

------
themodelplumber
That's really cool to hear about. IMO you can't have enough SoundFonts... :-)
Back when I used Reason a lot, I would load these into the sampler and see
which sounds I liked better between the different collectoins. Spending more
time in Linux these days, we are lucky to be able to open FOSS like LMMS(.io)
and there's an SF2 Player instrument you can use for auditioning the various
banks and patches within the SoundFont.

------
cschep
Any chance someone with this already setup could share a sample of DOOM E1M1??
Man, I loved that song.

Thanks!

~~~
pezz
[https://clyp.it/zbkee0uy](https://clyp.it/zbkee0uy) (better quality)

~~~
cschep
thank you! sounds AWESOME!

------
jaimex2
Fantastic.

Duke3D and Bermuda Syndrome nostalgia time.

I used to love listening to midis back in the day, I think the soundfonts that
came with my Sound blaster vibra 128 were top notch at the time.

------
classichasclass
For Timidity in Linux, though, I find myself relying on eawpats (
[https://www.doomworld.com/idgames/sounds/eawpats](https://www.doomworld.com/idgames/sounds/eawpats)
). It doesn't require that the simple Timidity support in things like
SDL_mixer understand soundfonts, and I like the old GUS sound more.

------
CJKinni
Well, this inspired me to install ScummVM, install this pack, and finally beat
Kings Quest VII Chapter 1. It was the first game I ever had as a kid, and I
never was able to get past one of the puzzles. The audio sounds great!

------
feluso
This was very eye-opening, not being very familiar with the time I thought
MIDI was just a designation we had for music in older games, I never thought
it worked like that, sounds like it could have a lot of potential!

~~~
theandrewbailey
There's an extension for MIDI to control things like lighting and
pyrotechnics:

[https://en.wikipedia.org/wiki/MIDI_Show_Control](https://en.wikipedia.org/wiki/MIDI_Show_Control)

------
diaz
Informative. Never had any idea that these MIDI things allowed people to use
different music to reproduce it. I mean I always thought that MIDI was
something about connecting real instruments to computers or something, never
really saw a use for it. Reading from the comments it seems people used to
share and play these on a previous era. Interesting. The video of the game
sounds interesting I guess.

------
bstar77
I worked at Babbages in the early to mid 90's. It was very sad to watch the
"Multimedia" revolution happen before my eyes... I wasn't impressed then and
the multimedia titles didn't age well, imo. Midi in games had so much more
potential that I don't believe was ever fully realized.

------
pengstrom
Also relevant is GXSCC, a midi player that turns the music into chiptunes!

[http://www.geocities.co.jp/SiliconValley-
SanJose/8700/P/Gsor...](http://www.geocities.co.jp/SiliconValley-
SanJose/8700/P/GsorigE.htm)

------
withinrafael
I was using Creative SoundBlaster's 8MBGMSFX with Terra Nova: Strike Force
Centauri and I found some samples to be way too loud. Popped in FatBoy and the
title music sounds fantastic.

------
bayindirh
Oh boy,this thing will make me dig my DOS game archive and oldies trove when I
get home.

------
bullen
Is it hard to make the soundfont as wave tables instead? Samples are so large!

~~~
Birch-san
At the very least, it would be good to release an sf3 version; sf3 uses ogg
compression (as opposed to mp3). This can be 10x smaller for comparable
quality.

Though I found that (fluidsynth, at least) is very slow at loading sf3. Takes
a few seconds.

~~~
voltagex_
I wonder how hard it would be to write a non-compliant SoundFont that uses
Opus - Ogg Vorbis is very old at this point and not as good as newer codecs.

Edit: _that_ was a fun rabbit hole

SF2.04, owned by Creative.
[http://freepats.zenvoid.org/sf2/sfspec24.pdf](http://freepats.zenvoid.org/sf2/sfspec24.pdf)

SF3 is "just" Ogg compressed SF2, but there's no spec and it seems like it's
only implemented in [http://www.fluidsynth.org/](http://www.fluidsynth.org/)

Edit edit: in the SF2.04 spec - "hydra - A. A nine-headed mythical beast. B.
The nine “pdta” sub-chunks which make up the SoundFont articulation data."

