💾 Archived View for thrig.me › music › soundfont captured on 2023-11-04 at 12:11:21. Gemini links have been rewritten to link to archived content

View Raw

More Information

➡️ Next capture (2024-05-10)

-=-=-=-=-=-=-

Soundfont

Soundfont files can be found at various places on the Internet.

Soundfont files help convert MIDI into sounds with suitable hardware or more likely these days software such as fluidsynth or LMMS (among many others; I'm mostly limited to what I can install on OpenBSD). Soundfont files are RIFF format, so EXIF tools may show header details.

    $ doas pkg_add p5-Image-ExifTool
    ...
    $ exiftool lilsness.sf2
    ExifTool Version Number         : 12.60
    File Name                       : lilsness.sf2
    Directory                       : .
    File Size                       : 908 kB
    File Modification Date/Time     : 2023:06:24 11:49:59-07:00
    File Access Date/Time           : 2023:06:24 11:49:59-07:00
    File Inode Change Date/Time     : 2023:06:24 11:49:59-07:00
    File Permissions                : -rw-r--r--
    File Type                       : RIFF
    File Type Extension             : riff
    MIME Type                       : application/unknown
    Title                           : Lil'Sness.sf2
    Product                         : SynthFont Viena
    Software                        : SynthFont Viena
    Copyright                       : Lil'Sness Soundfont © Lil'Alien 2022
    Date Created                    : 3/04/2022 11:13:26 AM
    Engineer                        : Lil'Alien
    Comment                         : Megalovania

Parsing the soundfont for what instruments it has and in what banks requires some time spent pouring over the soundfont specification and various "ah hah!" moments. This otherwise generally requires quite a lot of slow clicking around in some gooey (GUI) interface, which isn't very greppable, and is generally hard to save somewhere for reference. Therefore,

sflist.pl

MIDI Bank Select Gotcha

One tricky point is that after doing a MIDI bank select a program change is also necessary; otherwise, the new bank select will have no (immediate) effect.

    ...
    [ control_change => 96, 0,  0, 1 ],
    [ patch_change   =>  0, 0, 42    ], # otherwise control_change ignored
    ...

Related

../midi/

External Links

http://www.synthfont.com/sfspec24.pdf

https://lmms.io/

https://metacpan.org/pod/File::Format::RIFF

https://metacpan.org/pod/MIDI::Event

https://www.fluidsynth.org/

https://musical-artifacts.com/

https://sites.google.com/site/soundfonts4u/

However some of those sites are broken in w3m as Google wants you to "sign into the Internet" or some other such nonesense.