VOGONS


Reply 140 of 186, by Osprey

User metadata
Rank Member
Rank
Member

Yeah, I didn't mean that it's more accurate, just that the fuller sound suits my taste more. I did check out someone's Doom soundtrack recorded on the SC-55 and he actually makes it available in both "raw" and "boosted" versions (here). The raw version is, presumably, with all settings on the front panel at their defaults, and the boosted version with them kicked up a few notches. In the end, you might argue that the raw is more "accurate," but I suppose that you could argue that they both are, since the SC-55 was designed to be fiddled with to get the sound that sounds best to you, which is why it had settings like level and reverb right on the front panel. I wasn't arguing one way or the other, though. I was simply sharing my impressions of the differences between deemster's version and the re-balanced one to help others decide which would be more to their tastes.

Reply 141 of 186, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Osprey wrote:

...
...The S-YXG50 VSTi sounds perfectly with XG MIDs, so I can use that when I get nostalgic for my old DX50XG, but it'd be really nice to have that in soundfont format, so that I don't have to have two different MIDI drivers installed. I don't know if it's possible to convert or port that to a soundfont.
...

Unfortunately such a single soundfont (even in theory) is not possible. While theoretically you can create a full SC-55 GS implementation with a soundfont (I mean the full program/bank combinations) you cannot implement even the XG Lite standard with a soundfont. The reason is the limitation of SF2 format itself. Soundfonts are tightly linked to GS and they can only use 128 banks that are usually addressable by Bank MSB. XG requires Bank MSB+LSB addressing (so 16384 possible banks).

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 142 of 186, by HunterZ

User metadata
Rank l33t++
Rank
l33t++
Falcosoft wrote:
Osprey wrote:

...
...The S-YXG50 VSTi sounds perfectly with XG MIDs, so I can use that when I get nostalgic for my old DX50XG, but it'd be really nice to have that in soundfont format, so that I don't have to have two different MIDI drivers installed. I don't know if it's possible to convert or port that to a soundfont.
...

Unfortunately such a single soundfont (even in theory) is not possible. While theoretically you can create a full SC-55 GS implementation with a soundfont (I mean the full program/bank combinations) you cannot implement even the XG Lite standard with a soundfont. The reason is the limitation of SF2 format itself. Soundfonts are tightly linked to GS and they can only use 128 banks that are usually addressable by Bank MSB. XG requires Bank MSB+LSB addressing (so 16384 possible banks).

Time for someone to invent SF3 I guess?

Reply 143 of 186, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Actually it seems the format already exists in the form of DLS. According to specification:

ulBank Specifies the MIDI bank location. Bits 0-6 are defined as MIDI CC32 and bits 8-14 are defined as MIDI CC0. Bits 7 and 15 […]
Show full quote

ulBank Specifies the MIDI bank location. Bits 0-6 are defined as MIDI CC32 and
bits 8-14 are defined as MIDI CC0. Bits 7 and 15-30 are reserved and
should be written to zero. If Bit 31 is equal to 1 then the instrument is a
drum instrument; if equal to 0 then the instrument is a melodic
instrument.

Contrary in SF2 specification:

The WORD wPreset contains the MIDI Preset Number and the WORD wBank contains the MIDI Bank Number which
apply to this preset... The special case of a General MIDI percussion bank is handled conventionally by a wBank value of 128. If the value in either field is not a valid MIDI value of
zero through 127, or 128 for wBank, the preset cannot be played but should be maintained.

But unfortunately DLS never had the moment. Without a proper/convenient authoring tool most DLS files are converted from SF2 files. Tools like Awave studio are rather editors/converters.
I really do not know what the relative unpopularity of DLS format can be attributed to.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 144 of 186, by Osprey

User metadata
Rank Member
Rank
Member
Falcosoft wrote:

Unfortunately such a single soundfont (even in theory) is not possible. While theoretically you can create a full SC-55 GS implementation with a soundfont (I mean the full program/bank combinations) you cannot implement even the XG Lite standard with a soundfont. The reason is the limitation of SF2 format itself. Soundfonts are tightly linked to GS and they can only use 128 banks that are usually addressable by Bank MSB. XG requires Bank MSB+LSB addressing (so 16384 possible banks).

Thanks for the explanation. I didn't realize that the SF2 format was that limited.

Reply 147 of 186, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

People have them mirrored. See this post and those that follow it:
Soundfonts that mimic old hardware (SC-55, DX50XG, AWE64 Gold)

All hail the Great Capacitor Brand Finder

Reply 150 of 186, by deemster

User metadata
Rank Member
Rank
Member

Hi! I have been, and still am, quite busy lately. However, I really want to thank you guys for preserving my soundfonts! They were accidentally removed from my Onedrive. And of course it's really cool that gzdoom includes it 😁

TODO:
- Find a way to make it sound good with other drivers than Bassmidi, for example Fluidsynth
- Make the DB50XG soundfont actually XG compatible

I will do both once I have the time!

Reply 152 of 186, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
deemster wrote:
Hi! I have been, and still am, quite busy lately. However, I really want to thank you guys for preserving my soundfonts! They we […]
Show full quote

Hi! I have been, and still am, quite busy lately. However, I really want to thank you guys for preserving my soundfonts! They were accidentally removed from my Onedrive. And of course it's really cool that gzdoom includes it 😁

TODO:
- Find a way to make it sound good with other drivers than Bassmidi, for example Fluidsynth
- Make the DB50XG soundfont actually XG compatible

I will do both once I have the time!

FWIW, SC-55 Preset sounds pretty good to me in Fluidsynth. There's room for improvement, of course, a lot in the synth engine itself. CTF support would be lovely.

I also wish someone would give you access to a Homac board so you'd be able to work on a really nice Kurzweil soundfont.

All hail the Great Capacitor Brand Finder

Reply 154 of 186, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
TODO: - Find a way to make it sound good with other drivers than Bassmidi, for example Fluidsynth - Make the DB50XG soundfont ac […]
Show full quote

TODO:
- Find a way to make it sound good with other drivers than Bassmidi, for example Fluidsynth
- Make the DB50XG soundfont actually XG compatible
I will do both once I have the time!

I don't think it's possible to make a single XG compatible DB50XG SF2 format soundfont as I said above:
Soundfonts that mimic old hardware (SC-55, DX50XG, AWE64 Gold).
E.g. in the current version of the DB50XG soundfont the SFX bank that is addressable by Bank MSB 64 in XG is placed in Bank 125 since Bank 64 is already occupied by the variation bank that is addressable by Bank LSB 64 in XG. So you should sacrifice either the the LSB Bank 64 or the MSB Bank 64 but both choices breaks XG compatibility unfortunately. There is no perfect solution to this problem: in SF2 there is only 1 bank 'dimension' (0..127 for melodic and 128 for drums) but XG compatibility would require 2 (0..127 for MSB and 0..127 for LSB). A possible solution would be a DLS format soundfont but unfortunately it is not supported by Bassmidi...

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 155 of 186, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

The community needs to work on an open-source SF2+DLS software wavetable MIDI synthesizer. Maybe use Munt as the starting point, since it works well in Windows and Linux. Right now we're stuck with Fluidsynth, which is old and Linux only, and BASSMIDI which is closed-source and Windows-only.

Reply 156 of 186, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

DLS support seems to be on the radar for Fluidsynth:
https://github.com/FluidSynth/fluidsynth/issues/320

HunterZ wrote:

The community needs to work on an open-source SF2+DLS software wavetable MIDI synthesizer. Maybe use Munt as the starting point, since it works well in Windows and Linux. Right now we're stuck with Fluidsynth, which is old and Linux only, and BASSMIDI which is closed-source and Windows-only.

Munt is completely different, technologically. I can't see it providing any head start. Fluidsynth has four separate build paths for Windows and (externally) prebuilt binaries which you can also use, so it's hardly incompatible with Windows.
https://github.com/GameMaker2k/FluidSynth-Windows-Builds

All hail the Great Capacitor Brand Finder

Reply 157 of 186, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

Looks like BASSMIDI has a Linux library too. Interesting that nobody uses FluidSynth on Windows or BASSMIDI on Linux.

I guess it would be best for people to pour effort into FluidSynth then.

Reply 159 of 186, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
gdjacobs wrote:

DLS support seems to be on the radar for Fluidsynth:
https://github.com/FluidSynth/fluidsynth/issues/320

Thanks for the link. I have read that topic and it's promising. But If I understand the direction correctly the first form of the support would be a real time DLS->SF2 conversion. That basically would kill the advantage of DLS we need.
I have thought about another possible solution. It partly resembles what HunterZ suggested earlier. But it don't need to be SF3 only SF2+ 😀. According to SF2 specification:

The WORD wPreset contains the MIDI Preset Number and the WORD wBank contains the MIDI Bank Number which
apply to this preset... The special case of a General MIDI percussion bank is handled conventionally by a wBank value of 128. If the value in either field is not a valid MIDI value of
zero through 127, or 128 for wBank, the preset cannot be played but should be maintained.

So wBank is actually stored in a WORD sized field. To store a single Bank dimension (MSB or LSB) a BYTE sized field is enough (only 7 bits or rather 8 bits because of Drum bank 128). So Both bank MSB and LSB values could be stored in the existing wBank field. The problem is only that existing software should understand this SF2+ extension... But on the positive side software that would not understand this new Bank coding scheme would be still compatible with SF2+. They would simply 'ignore but maintain' the additional banks according to specification.
The main problem with DLS (I think) is the lack of authoring software. But there are many free (even open source) authoring tools for SF2. I think it would be relatively easy to extend e.g. Polyphone to understand and handle more than 128 Banks according to this SF2+ extension. Then we would only need to convince Ian Luck the author of Bass (he is always very helpful) and the FluidSynth creators to also support this extension.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper