Closed vanfanel closed 7 years ago
I never came across a SF2 that uses ROM samples (i.e. it tells fluidsynth that these samples are stored in non-volatile memory that cannot be written to). This doesnt make sense for files used on modern computers with huge amounts of RAM and that's why this feature is unimplemented.
Having that said, I dont think your SF2 uses ROM samples, I suspect the file is corrupt. It would be nice if you could post it. Otherwise try opening it with one of those various SF2 editors and save it again, hoping it'll be fixed then.
If the file is not corrupt and really uses ROM samples for whatever reason, you could just open it in an editor and manually modify the sample types to RAM.
This is the SF2 file that causes these errors: https://musical-artifacts.com/artifacts/18/Square.zip
I have tried editing it with an utility called "Polyphone", with no success: I can't see a ROM/RAM field. What GNU/Linux editor can your recommend for this? The font doesn't look corrupt, at least the editor didn't say so.
I remember of the AWE32 card (born in 1996) that contains an hardware synthesizer soundfont compatible . On this hardware, some samples was in ROM and others could be added on additional card RAM (Read/write memory). For details, please have a look to the SF specifications.
- 5.8 The IPRD Sub-chunk
- 5.4 The irom Sub-chunk
- 11.1 Silicon SoundFont Overview.
It is perhaps possible that the actual soundfont loader ignore or cannot read ROM samples situated
on specific hardware as Fluidsynth actually cannot play on hardware synthesizer.
Also it possible that some soundfont editor cannot read and display this kind of samples.
I remember of the vienna soundfont
editor that was able to read ROM samples from the Creative Labs AWE32
card. Also this editor exits if a AWE32 or others hardware from Creative is not on the machine.
I have done a quick look to your soundfont square.sf2
using swami editor
. If you look to the product engine (on Tab properties) the name is SBAWE32 (meaning Sound Blaster AWE32). It was the synthesizer described above. This Soundfont (edited in 1999) is only playable on this hardware synthesizer. Hopefully you will find many others soundfonts playable on Fluidsynth, please see the Wiki page SoundFont.
I see. So in other words, even though we are using SF2 files, when it comes to ROM samples, these are no real samples, but only references to samples (via the IROM sub-chunk) that are hardcoded in those SoundBlaster cards? While those ROM samples could be implemented as "Silicon SoundFont Bank" or some other proprietary format within the SB cards?
So in other words, even though we are using SF2 files, when it comes to ROM samples, these are no real samples, but only references to samples (via the IROM sub-chunk) that are hardcoded in those SoundBlaster cards?
Yes, the samples are not in the soundfount file but in silicon. Example, in the case of SB AWE32 this was the 1st Synthesizer for "grand public" based on SoundFont not too expensive for this time (250 euros). Professional synthesizer was (and still are) very expensive.The synthesizer on theses card are EMU8000 synthesizer and effects processor chip, 1 MiB EMU8011 sample ROM. This was the first synthesizer connectable on computer based ISA (PC and many others). At this time ( < 2000 years) synthesizers was only in hardware because CPU was not enough fast.
While those ROM samples could be implemented as "Silicon SoundFont Bank" or some other proprietary format within the SB cards?
Creatives labs was the first to bring low cost synthesizer with SB AWE32 (Audio i/o cards) but he is not a synthesizer builder. At this time EMU society was a hardware synthesizer builder with proprietary samples. Creatives have requested EMU to build chip for their SB card. So the chip have inherited of the sample ROM. But the card can be extended with on board RAM. Than SoundFont specifications was written by EMU.
As an example you know in FluidSynth, the dsp chain to produce only one voice (sample table, ADSR, LFO,FILTER,....). You have the same in a AWE32 card for 32 voices only. Actually a 2GHz CPU can run 310 voices (but the fan are noisy). Hope you will hear the synthesizer on this card. Note that chorus and reverb are on chip. It sound very good and FluidSynth is close to this result (not for the reverb ). You know now the saga of the SoundFont started somewhere in 1995. Good article AWE32.
@vanfanel Sorry for the last comment, i am aware that the end is a bit out of your initial question.
@jjceresa : Don't be sorry at all! I love these readings about the old day sound systems, I am an Amiga an C64 (SID) die-hard fan myself, so the 90's are a bit out of my knowledge, so its very interesting.
Hi,
When using some SF2 sound banks, I have seen messages like this:
What does it mean? Is it possible to support these samples? I am asking here because I couldn't find an answer anywere in the docs. Feel free to close this as you answer, as it's not really an issue but some kind of unimplemented feature, I guess.
Thanks!