-
Notifications
You must be signed in to change notification settings - Fork 259
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for SF2 RMIDI files with embedded soundfonts #1356
Comments
RMID is a different file format than MIDI, which is currently not supported. Hence, this is a feature request, not a bug. And to be frank, my personal motivation to support this is nearly non-existent. Fluidsynth's builtin MIDI player is very basic. Yet, I would probably accept a PR for this. |
I wrote a complete and precise version of the SF2 RMIDI standard and I've updated the link in the issue. Also, here's another test file: |
I didn't look up any official RMID spec. But pls. keep in mind that RIFF usually has a 16-bit alignment requirement. The embedded SF probably fulfills this requirement. I'm not sure if the MID has to, but if is has, it won't be a simple "read MIDI from memory" operation. One would first has to get rid of the padding bytes. |
Also I've linked the specification for the SF2 RMIDI format, which is backwards compatible with the DLS version, so simply using that would work. |
Ok. So then my preference of implementing this would be to teach both, the MIDI player and the soundfont loader to handle and accept rmid files (rather than memory mapping the file and loading from memory). |
Yes, but the soundfont loader also has to load the DBNK chunk from the INFO chunk to set the bank offset correctly. |
Okay, I think I need to clear things up: So, here's the official doc from MMA (via internet archive): This (official) version only supports DLS and poses a few issues:
This is why I propose to add the new SF2 Version that I created with help of Zoltán Bacskó from Falcosoft. This version solves all of the problems mentioned above:
Getting it supported in fluidsynth would help a lot in it getting more popular as fluid is a very well known sf2 synth.
Bonus: this logic should also work for DLS files as they too have |
Any updates on this? |
FluidSynth version
Execute
fluidsynth --version
and provide the output.SF2 RMIDI specification
The feature request
Fluidsynth would be able to open RIFF midi (.rmi) files.
Bonus points for also reading the embedded sf2 file and using it.
Simple solution
RIFF
instead ofMThd
RMID
data
. The data of the chunk is the MIDI file (complete with MThd, etc).'RIFF'
or'DLS '
. This is the embedded soundfont or dls. The provided file has an sf2 embedded, not dls.Steps to reproduce
Please explain the steps required to duplicate the issue, esp. if you are able to provide a sample application. E.g. how to start fluidsynth, what shell commands to enter, what midi events to send, etc.
fluidsynth soundfont.sf2 the_file.rmi
The text was updated successfully, but these errors were encountered: