Hi, I'm happy to go along with what you said, but I have a few comments. If
we decide to read from an environment variable, we should read it from the
existing @FLUID_DAEMON_ENV_FILE@. It doesn't make sense to use $PATH since
that has a different purpose on Linux systems (namely, searching for
binaries).

Further, the reason I made it compile-time configurable is two-fold:
consistency with existing code and to allow the maintainer to set a
reasonable default. If we're doing this to make it more convenient for
(potentially non-technical users), it's generally the maintainer's job to
adapt the search path to their system. The user shouldn't have to manually
edit the path themselves. Although, one approach is to have a global file
like /etc/fluidsynth.rc (filled by the maintainer) and then make the local
one (empty by default, filled by the user) take precedence.

Thanks for the feedback.

On Fri, Nov 2, 2018 at 12:49 PM Tom M. <tom.m...@googlemail.com> wrote:

> Thanks for the feedback guys!
>
> I share the concerns brought up here and agree that this is no suitable
> feature for the fluidsynth library. I.e. the current proposal to make it a
> FluidSetting and expose a find_soundfont() function via the API is not
> suitable.
>
> IMO this should be implemented as exclusive feature for the executable.
> Preferably **not** as compile time option. A normal user who acutally
> benefits from this feature should not dependent on any compile flags a
> packager has or hasn't specified when compiling fluidsynth.
>
> Keep in mind that synth.default-soundfont approaches a similar problem
> using a cmake flag. However I couldn't find any distribution (ubuntu,
> megeia, fedora, openSUSE) making use of this.
>
> I propose to keep it simple and implement this using an environment
> variable: If a soundfont specified on the commandline isn't found in the
> current working directory, the fluidsynth exec. looks through the $PATH
> variable and takes the first one it finds. The user only needs to setup up
> this env. var. in his ~/.bash.rc or similar. Ofc. we could also use a
> custom env. variable.  I like $PATH because it's convenient on *nix and
> Windows.
>
> Also when implementing this, I suggest to remove synth.default-soundfont
> and possibly also the DEFAULT_SOUNDFONT cmake flag. After all, the current
> implementation only uses the default soundfont when the user plays back a
> MIDI file.
>
> Tom
>
>
>
>
> _______________________________________________
> 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

Reply via email to