fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] FluidSynth and MIDI channels


From: David Bellows
Subject: Re: [fluid-dev] FluidSynth and MIDI channels
Date: Wed, 17 Aug 2016 08:02:31 -0700

Hello Marcus,

> to use more than the 16 MIDI channels you probably have to talk to
fluidsynth via the API rather than through MIDI messages. Maybe you
could hack something with the built-in midi router, but I'm not sure.

Yeah, the more I thought about it the more I figured it would be
something like that. (Ie, something beyond my programming
skills/knowledge.)

> But might I suggest that you look into the SysEx messages from the
Midi Tuning Standard[1]?

My software was originally using this method with Timidity (in fact
the code is still in there -- it's easy to switch between the
methods). I tried many times to get those MIDI files to work with
FluidSynth but they would not produce any sound (no error messages,
though). I've even asked about it here and elsewhere but never got an
answer about whether FluidSynth actually supports the MTS.

The problem with Timidity is that you cannot have more than one MTS
sysex command going at the same time. Which basically results in
1-note polyphony. I'm sure FS is in better shape than that but if it
does support the MTS then I wonder what the limits would be for it?

And then of course it might turn out that there's a problem with how I
generate those MTS MIDI files.

When you try it out in a few weeks let me know your results. I would
prefer using the MTS as it should also result in greater resolution
(16384 pitches between each semitone vs 8192 when using pitch bend).

> And even if SysEx is not possible
for you... there is always the option of using the (undocumented)
tuning commands via the FluidSynth shell.

"Undocumented"? I'll look into that as best as I can!

Thanks!
Dave

On Wed, Aug 17, 2016 at 1:22 AM, Marcus Weseloh <address@hidden> wrote:
> Hello David,
>
> to use more than the 16 MIDI channels you probably have to talk to
> fluidsynth via the API rather than through MIDI messages. Maybe you
> could hack something with the built-in midi router, but I'm not sure.
>
> But might I suggest that you look into the SysEx messages from the
> Midi Tuning Standard[1]? I haven't tried it myself (will do so in a
> few weeks time), but from looking at the source, FluidSynth seems to
> support all the MTS SysEx messages. And even if SysEx is not possible
> for you... there is always the option of using the (undocumented)
> tuning commands via the FluidSynth shell. Scala[2] can export tunings
> both in SysEx and FluidSynth shell commands, so you might give that a
> try.
>
> [1] http://www.midi.org/techspecs/midituning.php
> [2] http://www.huygens-fokker.org/scala/
>
> Cheers,
>
>     Marcus
>
> 2016-08-16 22:26 GMT+02:00 David Bellows <address@hidden>:
>> Plus I just realized that even if the channels work like I'm hoping,
>> how in the world do I actually use them? My MIDI files can only have
>> information for indicating one of 16 channels so how would I tell
>> FluidSynth to use channel 17?  I guess there could be a specific
>> control_code or something to indicate switching to a different bank of
>> 16 channels?
>>
>> On Tue, Aug 16, 2016 at 10:44 AM, David Bellows <address@hidden> wrote:
>>> Hi everyone,
>>>
>>> I'm working on a project that generates music and allows the user to
>>> use any tuning I can figure out how to include. I'm also rendering the
>>> music in MIDI and using pitch bend for the alternate tunings. Since
>>> MIDI has 16 channels and pitch bend applies to every note on a channel
>>> this effectively limits one to 16-note polyphony when dealing with
>>> alternate tunings.
>>>
>>> I then saw the -K option which allows FluidSynth to use up to 256 channels.
>>>
>>> My question then is this: does this mean that one can set the pitch
>>> bend to different values for all 256 channels thus giving us 256-note
>>> polyphony? If so that would be a terrific feature and a godsend.
>>>
>>> Thanks,
>>> Dave
>>
>> _______________________________________________
>> fluid-dev mailing list
>> address@hidden
>> https://lists.nongnu.org/mailman/listinfo/fluid-dev
>
> _______________________________________________
> fluid-dev mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/fluid-dev



reply via email to

[Prev in Thread] Current Thread [Next in Thread]