[Top][All Lists]

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

Re: [fluid-dev] Changing sequencer time-scale

From: dave
Subject: Re: [fluid-dev] Changing sequencer time-scale
Date: Sat, 26 Dec 2020 12:42:07 -0000



Jeroen's question is relevant for my own efforts to schedule events, essentially from a MIDI file, in the FluidSynth sequencer, in order to create a WAV file.


It appears that the one important event that I can't directly schedule is a tempo change.  In MIDI this is a 6 byte event starting with (hex) bytes FF 51 03  and then with 3 data bytes specifying the new relationship between ticks and milliseconds.


It would be nice if I could just schedule this event directly in the sequencer when needed.  But...


.. I gather that the way to do it should be to schedule a call-back, and from within the call-back use fluid_sequencer_set_time_scale() to redefine the relationship between ticks and milliseconds.   Do I understand that this should work straightforwardly after the 2.2.0 fix?


If so, can I ask about 'simultaneous' events?   In music, a tempo change is usually notated at a bar line, and a note may start immediately after the bar line.  This would result in a note-on event scheduled with the same time-marking as the tempo change (or in this case the case the call-back).   Will that be OK?


Looking forward to getting further up the learning curve with FluidSynth in the New Year.   It’s going to save me from MIDI’s 16 channel constraint, and I’m seriously impressed.




From: fluid-dev <fluid-dev-bounces+dave=mozart.co.uk@nongnu.org> On Behalf Of Tom M. via fluid-dev
Sent: 25 December 2020 23:05
To: Jeroen Neve <jeroen.neve@hotmail.com>
Cc: Tom M. <tom.mbrt@googlemail.com>; FluidSynth mailing list <fluid-dev@nongnu.org>
Subject: Re: [fluid-dev] Changing sequencer time-scale


This quirk will be fixed in fluidsynth 2.2.0. There are still two issues open before we are ready for releasing it. In the meantime, you can clone recent master and try it yourself. Feedback is welcome.



reply via email to

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