fluid-dev
[Top][All Lists]
Advanced

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

Re: [fluid-dev] Some questions about Midi playback


From: Josh Green
Subject: Re: [fluid-dev] Some questions about Midi playback
Date: Fri, 23 Jun 2006 12:44:44 +0200

Sorry for the late reply.  It sounds like what you are looking for is
more of a sequencer library rather than a software synthesizer.  As you
mentioned, FluidSynth is more of a soft synth.  For this reason, I don't
think modifying the MIDI player in FluidSynth to use external MIDI
devices makes much sense.  There is already a wealth of MIDI sequencers
out there, which can even be used instead of FluidSynth's somewhat
primitive sequencer to sequence FluidSynth.  Of course, feel free to
modify FluidSynth's source to your needs, but I don't think those
changes belong in the official release.  If on the other hand, there is
something broken with the fluid_player_set_midi_tempo, it should
probably be fixed.

Development on FluidSynth has been somewhat dormant as of late, but I'm
planning on adding some features (such as the recent 24 bit sample
support in SoundFont files) and fixing bugs in what not, in the near
future.

Best regards,
        Josh Green


On Fri, 2006-06-23 at 11:24 +0200, Sebastien Frippiat wrote:
> Hi again.
> 
> > - Is it possible to modify tempo such as the Midi file is playing 
> > twice faster than as specified in the Midi file (I tried 
> > fluid_player_set_midi_tempo 
> > <http://www.nongnu.org/fluid/api/midi_8h.html#a33> but it didn't 
> > worked well for this purpose) ? I managed to do it by modifying the 
> > source code : it is quite easy to multiply/divide the tempo when 
> > receiving tempo events. I hard-coded the multiplier to do the test. I 
> > would gladly write a clean way to do it (by adding something like 
> > fluid_player_set_midi_tempo_multiplier by example) if it would 
> > interest someone. However I would like to know if there is clean way 
> > to do it without modify the source code of FluidSynth.
> > - Same question for the velocity (easy to change it when receiving 
> > NoteOn and NoteOff events).
> 
> As I need to progress on this, I went on my way to modify fluidsynth 
> source code. You'll find attached a little patch to apply my 
> modifications. Just cd to the fluidsynth-1.0.7 directory, copy the patch 
> file and run the following :
> patch -u -i fluidsynth-tempo-velocity.patch -p 1
> 
> Then you can ./configure and make the library.
> 
> > Besides, is it possible, when reading a Midi file, not to send the 
> > data to the synthetizer but instead forward the Midi messages to a 
> > Midi device ? I guess it would require me to have something like a 
> > callback when reading the file but I didn't find it. Again, I think it 
> > would be pretty easy to add it to the library. I searched the doc and 
> > the source code for informations about the router but it seems it is 
> > only used for Midi input (am I wrong ?). It would be useful to add 
> > something like routers when playing Midi file (and therefore consider 
> > Midi file and Midi file player as Midi input).
> >
> Ok, as I worked a bit within the source code and I played a bit with it, 
> I have some more remarks about what I'm trying to do. I know that 
> fluidsynth is about playing Midi files / data through a software 
> synthetizer. However, I'm more interested in using the Midi card to do 
> that and to be able to use other Midi renderering devices. I'm not a 
> music expert but I think that modifying the fluid_midi_send_event (in 
> fluid_midi.c) function could work.
> 
> Any ideas, remarks ? (please...)
> 
> Thank you,
> Sebastien Frippiat
> 
> 
> 
> _______________________________________________
> fluid-dev mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/fluid-dev
> 





reply via email to

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