Re:Show HN: BitMidi – Wayback machine for old-school MIDI files
by feross on Friday September 07, 2018 @01:21AM
(#17932055)
Okay, I stand corrected. I did a bunch of research, but I clearly missed some superior MIDI players. I'll take a look at FluidSynth-lite and see if there's some way to use it.
One issue I can already see is they use a SoundFont file (.sf2) instead of instrument patch files, which means the whole 100MB+ file probably needs to be loaded before playback. My current approach uses GUS patch files which have one file per instrument, so I can load just what's needed for a particular song and start playing much sooner.
Edit: It looks the GeneralUser SoundFont is only 31MB and it sounds almost as good as the 100MB+ one. So, while this will still be slower than my current approach of loading just the needed instruments, perhaps if I start loading it in the background with ServiceWorker and cache it forever, this could work. Thoughts welcome.
Re:Show HN: BitMidi – Wayback machine for old-school MIDI files
by SmellyGeekBoy on Friday September 07, 2018 @04:23AM
(#17932690)
Perhaps give users the choice of which MIDI playback "engine" to use? It seems a shame to throw away all of your hard work (on the player) so far.
Ouch. Has timidity fixed the issue where playing 2 of the same note in sequence cuts off the release tail of the first note when the second starts? Fluidsynth is written in C and doesn't have that issue and sounds better (I assume this behavior matches good MIDI hardware, but not sure about the crappy Windows GS Wavetable Synth). fluidsynth-lite is a Fluidsynth fork with dependencies removed.