SFe-Team-was-taken / SFe

Bringing soundfonts to new heights
Other
2 stars 1 forks source link

Implement the DMOD sub-chunk #2

Open sylvia-leaf opened 2 months ago

sylvia-leaf commented 2 months ago

Implementing the DMOD sub-chunk proposal by spessasus: https://github.com/davy7125/polyphone/issues/205

spessasus commented 2 months ago

Hi, I have expanded upon this idea and included a test soundfont + support for this in my program. What do you think?

See it here

sylvia-leaf commented 1 month ago

The idea to rework the default modulator system is something that has been mentioned before, and I think that your DMOD idea could work. The earlier we can get people to support these extra features, the better.

We want to get the final 4.00 specification out as soon as possible, however building the SDKs required to make it work will be tough work. I wonder if we can fork Polyphone and add the SFe features to save ourselves all the effort of making in-house programs.

Once that's done, we can divide and conquer. You get your DMOD idea out to a few major open source projects, and we'll work on officially releasing the 4.01 spec. If SDK delays are significant, we may even bring DMOD forward to 4.00.

Also, having the DMOD specification on its own page, rather than just as the issue you opened in the Polyphone repository, is a good idea, as it will make it clearer what the DMOD spec is for those who want to implement it, as well as part of SFe 4.01.

You mentioned that you wanted to set wMajor=3 for those who use the DMOD subchunk, however not all software programs with wMajor=3 are guaranteed to work for it.

This is why SFe64 starts with wMajor=4. While SFe32 typically uses version 2.128 to prevent SF2.04 players from erroring out, using wMajor=4 is okay as well. If necessary, 4.00.6 will change the system to allow users to use file version 4.00 instead of 2.128.

spessasus commented 1 month ago

Well, my sf2 synth already supports the DMOD chunk (and I've included a test soundfont in the spec) so you can see the behavior in action. I'm also thinking of creating my own sf editor that would run in the browser and implement the said DMOD chunk editor.

sylvia-leaf commented 1 month ago

I thank you for your gratitude. I do have some experience with JavaScript, so I'll go fork SpessaSynth to make it compliant with the SFe specification :)