Hi Marcus,
After a glance to your patch example in ticket 166 , to avoid memory leak we need to somes minor changes ... mod = fluid_mod_new(); ... ... fluid_synth_add_default_mod(synth, mod, FLUID_SYNTH_ADD); fluid_mod_delete (mod); // free the modulator to avoid memory leak. 2) The new API fluid_synth_add_default_mod() store modulator in an internal default_mod[] table. As this table is and defined in fluid_synth.h, it will be declared in all modules that include fluid_synth.h. This results in lost of memory. It seems that this table is only necessary in the module fluid_synth.c, so it must be declared only once in fluid_synth.c. If later this table must be visible to other modules it will be necessary to define the table as external for theses modules. This implementation patch: - agree with the default modulators list specified in Soundfont specifications. - it allows to changes existing default modulators. - its allows to add new default modulator others than thoses of the specification. This is a good job. jjc. > Message du 31/05/17 00:43 > De : "Marcus Weseloh" > A : "FluidSynth mailing list" > Copie à : > Objet : [fluid-dev] New RFC patch: public API to manipulate default modulators > > Hello all, > > following up on Kjetils request for non-standard "default" modulators in the > thread about the polyphonic key pressure patch[1], I've created an RFC patch > to add a new public API function to modify the default modulator list: https://sourceforge.net/p/fluidsynth/tickets/166/ > > I would be very grateful if you could give me comments on that approach. Would an extension like this be acceptable for FluidSynth? > While there are ways to manipulate the default modulators by writing a custom soundfont loader, the amount of work needed to achieve this is quite high. One would have to recreate and modify the complete fluid_defpreset_noteon function. Using the patch in ticket #166, developers only need to set up the modulator and call one additional function. > I've tested the patch of course, but would also welcome further testing by others. > > All the best, > Marcus > [1] https://lists.nongnu.org/archive/html/fluid-dev/2017-05/msg00027.html _______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/fluid-dev
_______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/fluid-dev