News for hackers. Stuff that matters.
Re:Show HN: BitMidi – Wayback machine for old-school MIDI files by jimbo1qaz on Friday September 07, 2018 @01:05AM (#17932007)
>the best MIDI player written in C (libtimidity)

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.

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.