Page 1 of 3

Soundfont discussion

PostPosted: Mon May 15, 2017 6:57 am
by Enjay
Split from: viewtopic.php?f=44&t=19063&p=997606s#p997606

Nash wrote:Also gzdoom.sf2 is missing.

I quite like gzdoom.sf2 and I'm going to use it by default simply because most people will, I guess. However, I also have a soundfont file called TimGM6mb.sf2 which I got after wildweasel talked about it ( viewtopic.php?f=35&t=55379&p=980744&hilit=TimGM6mb#p980744 ). Personally, I think it sounds better but it is nearly twice the size of gzdoom.sf2 so I guess it's not really suitable for inclusion in the distribution.

Might it be an idea for the Wiki to be updated to somehow list suitable, tried and tested soundfonts (perhaps with brief reviews for each one)? I know that there is lots of information about sound fonts and various links on the wiki but there isn't a nice, simple, easily accessible list that just has links to specific sound fonts that are known to work well with *zdoom. (At least I couldn't find one.) I know there are links to forum threads but, again, they aren't a nice simple list and you have to trawl through quite a few posts to get the information that you need. A simple list in the wiki might help the uninitiated user to quickly get themself sorted out with a good soundfont. I know it took me a while to work out and find what I needed.

Also, is there any way of having a soundfont menu within *zdoom? I don't even know if that is technically possible but if you were using Timidity, Fluidsynth, etc then a menu item that allowed you to cycle through sound fonts in a specified directory would be very nice. I don't know if *zdoom has that kind of file-finding capability?

Re: DRD Team Dev builds

PostPosted: Mon May 15, 2017 7:30 am
by _mental_
There is a rudimentary menu for FluidSynth soundfonts.
To make it visible you need to add a section to your config file like this:
Code: Select allExpand view
[SoundFonts]
cool=c:\doom\cool.sf2
lame=c:\doom\lame.sf2
SC-55=c:\doom\SC-55.sfpack

A new Select Configuration entry will appear in FluidSynth settings of Advanced Sound Options menu.
File must exist to be inserted into the list of soundfonts.

Re: DRD Team Dev builds

PostPosted: Mon May 15, 2017 7:58 am
by Enjay
Useful information. I didn't realise it did that. Thanks, I'll try it later.

Re: DRD Team Dev builds

PostPosted: Mon May 15, 2017 8:10 am
by _mental_
Actually there is a similar thing for Timidity and WildMIDI, section should be named [PatchSets] in this case.

Re: DRD Team Dev builds

PostPosted: Mon May 15, 2017 8:53 am
by Gez
Enjay wrote:Also, is there any way of having a soundfont menu within *zdoom? I don't even know if that is technically possible but if you were using Timidity, Fluidsynth, etc then a menu item that allowed you to cycle through sound fonts in a specified directory would be very nice. I don't know if *zdoom has that kind of file-finding capability?


There's now a cool new feature for that, but before it, there was my MIDI soundfont menu mod.

Re: DRD Team Dev builds

PostPosted: Mon May 15, 2017 9:01 am
by Enjay
I missed that somehow, or maybe I was just using FMOD and not bothering about soundfonts at the time. Thanks for the link.

As for wildMidi, is it any good and what does it take to install it? Is it a similar process to Timidity? I had a quick look at the website yesterday but I didn't have time to look at it properly.

I reported it elsewhere but I get a helluva delay when using Timidity whenever music changes. Normally it's not too noticeable on standard maps because they play one tune for the whole map (though I do notice the delay when the map starts or music changes elsewhere). However, if a map changes (midi) music mid-level, timidity has a very noticeable loading delay. It's also easy to spot when cycling through the options menu. Whenever I select Timidity, there is a half-second pause with no music and general unresponsiveness until the music starts.

Re: Soundfont discussion

PostPosted: Mon May 15, 2017 9:33 am
by _mental_
WildMIDI doesn't need external executable. It requires to specify path to a patches configuration file in wildmidi_config CVAR.
The same patchsets as with Timidity can be used, like EAWPATS for example.

Re: Soundfont discussion

PostPosted: Mon May 15, 2017 10:52 am
by Enjay
Thanks. I got it set up. I tried a few options and I personally found that using the eawpats patches found on idgames and using the gravis.cfg gave pretty good results. It works a lot more quickly than Timidity (for me) with no delay when the music changes. However, I do find having to have a folder with hundreds of .PAT files in it very messy.

At least i have it working though, which is cool because I've been wanting to try it for a while. It's also allowed me to get GUS working so now all the possible midi output types in the menu do something for me. :biggrin:

[edit]
_mental_ wrote:There is a rudimentary menu for FluidSynth soundfonts.
To make it visible you need to add a section to your config file like this:
Code: Select allExpand view
[SoundFonts]
cool=c:\doom\cool.sf2
lame=c:\doom\lame.sf2
SC-55=c:\doom\SC-55.sfpack

A new Select Configuration entry will appear in FluidSynth settings of Advanced Sound Options menu.
File must exist to be inserted into the list of soundfonts.

And further thanks. I got that working too. It feels a little... I dunno, inconsistent with other menus and the like but it works. Having the Fluidsynth advanced option of "Patch Set" accept typed entries made me think I'd only need to type in the "friendly name" from my [SoundFonts] ini entry. However, that needs the full path. Going to the configuration sub menu, however, made selecting the one I wanted easy. Although it all feels a bit unfinished. But I guess you alluded to that when you said it was rudimentary.

FWIW (and you probably know this) the ini entries don't need full paths if the files are in subdirectories of the GZDoom folder. eg, this worked for me (as did full paths):
Code: Select allExpand view
[SoundFonts]
Arachno=Soundfonts\Arachno.sf2
AWE32=Soundfonts\1mgm.sf2
AWE64Presets=Soundfonts\AWE64Presets.sf2
AWE64=Soundfonts\AWE64Gold.sf2
Chorium=Soundfonts\ChoriumRevA.sf2
GZDoom=Soundfonts\gzdoom.sf2
GeneralUser=Soundfonts\GeneralUser.sf2
NTONYXGenMidi=Soundfonts\32MbGMStereo.sf2
Orchestral=Soundfonts\Orchestral.sf2
RolandSC55Pre=Soundfonts\RolandSC-55Presets.sf2
SGM=Soundfonts\SGM-V2.01.sf2
SGMX=Soundfonts\SGM-v2.01-Sal-Guit-Bass-V1.1.sf2
Timidity=Soundfonts\TimGM6mb.sf2
Weeds=Soundfonts\WeedsGM3.sf2
YamahaDB50XGPre=Soundfonts\YamahaDB50XGPresets.sf2
(Doom64SFX)=Soundfonts\DOOMSND.SF2

I put the soundfonts in a subdirectory of my gzdoom folder cunningly called Soundfonts. Presumably full paths would be useful if the soundfonts were held somewhere centrally for other programs or *zdoom installs to use.

Re: Soundfont discussion

PostPosted: Mon May 15, 2017 3:47 pm
by Nevander
What the heck is gzdoom.sf2? I never heard of a soundfont with the same name as the port before.

Re: Soundfont discussion

PostPosted: Mon May 15, 2017 4:09 pm
by Kappes Buur
Nevander wrote:What the heck is gzdoom.sf2? I never heard of a soundfont with the same name as the port before.


Visit github.

Re: Soundfont discussion

PostPosted: Mon May 15, 2017 5:03 pm
by Gez
Nevander wrote:What the heck is gzdoom.sf2? I never heard of a soundfont with the same name as the port before.

https://github.com/coelckers/gzdoom/com ... 125bf9c836

People have been complaining about MIDI since FMOD was removed, so now the default is FluidSynth with that soundfont.

Re: Soundfont discussion

PostPosted: Tue May 16, 2017 11:45 am
by Graf Zahl
The name is intentionally generic, if people want to use a different default fallback. The original name of this file also had several spaces which does not work that well on some systems.

Re: Soundfont discussion

PostPosted: Tue May 16, 2017 11:50 am
by Graf Zahl
Enjay wrote:And further thanks. I got that working too. It feels a little... I dunno, inconsistent with other menus and the like but it works.


That's because this does not really work with the default menu items and I felt that making it work was more important before getting it out than making it work well.

And concerning Timidity++ - that currently only works in Windows, if someone on a Linux or Mac system knows how to deal with different Timidity configs, feel free to change that . But on Windows the only way to use it with different sound fonts in parallel is to have separate EXEs with their own config files.

BTW, with all the SF2's I tried, I felt that Timidity++ had better quality than FluidSynth - which always seems to sound more rough.

Re: Soundfont discussion

PostPosted: Tue May 16, 2017 1:00 pm
by Enjay
Graf Zahl wrote:BTW, with all the SF2's I tried, I felt that Timidity++ had better quality than FluidSynth - which always seems to sound more rough.

I have no real complaint about how Timidity++ sounds. However, the significant pauses I experience when midi music changes is enough for me to not find it usable.

Re: Soundfont discussion

PostPosted: Tue May 16, 2017 4:24 pm
by Chris
Graf Zahl wrote:BTW, with all the SF2's I tried, I felt that Timidity++ had better quality than FluidSynth - which always seems to sound more rough.

Which is odd, considering FluidSynth was designed from the ground up for SF2, and even goes out of its way to emulate miscalculations found in Creative's hardware that don't fit the spec, so that it sounds consistent. While Timidity was designed for GUS patchsets, and got SF2 support by internally converting them (which does lose information, since proper rendering of SF2s requires more features than GUS patches define).

Makes me wonder what I would've ended up with, if I was able to follow through with adding MIDI softsynth capabilities to OpenAL by following the SF2 spec as-written.