[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [fluid-dev] Some questions about Midi playback
From: |
Sebastien Frippiat |
Subject: |
Re: [fluid-dev] Some questions about Midi playback |
Date: |
Fri, 23 Jun 2006 11:24:52 +0200 |
User-agent: |
Mozilla Thunderbird 1.0.7-1.4.1 (X11/20050929) |
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] Some questions about Midi playback, Sebastien Frippiat, 2006/06/22
- Re: [fluid-dev] Some questions about Midi playback,
Sebastien Frippiat <=
- Re: [fluid-dev] Some questions about Midi playback, Josh Green, 2006/06/23
- Re: [fluid-dev] Some questions about Midi playback, Sebastien Frippiat, 2006/06/23
- Re: [fluid-dev] Some questions about Midi playback, Josh Green, 2006/06/24
- Message not available
- Re: [fluid-dev] Some questions about Midi playback, Sebastien Frippiat, 2006/06/26
- Re: [fluid-dev] Some questions about Midi playback, Sebastien Frippiat, 2006/06/26
- Re: [fluid-dev] Some questions about Midi playback, Sebastien Frippiat, 2006/06/29