|
From: | Sebastien Frippiat |
Subject: | Re: [fluid-dev] Some questions about Midi playback |
Date: | Fri, 23 Jun 2006 13:05:54 +0200 |
User-agent: | Mozilla Thunderbird 1.0.7-1.4.1 (X11/20050929) |
Hi.
Thank you for replying. I already searched a lot around the web for a good MIDI library. I found PortMidi which I think is pretty good for handling low-level Midi I/O. However it lacks support for MIDI files. And the problem is there : I need to play MIDI files while being able to dynamically modify parameters (tempo and velocity). Moreover, I need to play them on a Midi port (Midi synthetizer of the sound card, maybe external devices later). There are libraries on the web for loading Midi file but I don't know enough about Midi to handle the timing myself. Then, finding such a library is pretty though. I think that another way to do it is to use libkmid under Linux and DirectMusic under Windows... which complicates the task.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.
So, I will look at the source code to try to redirect output to a Midi port (I guess I should say "hack the source code" because it will cause fluidsynth to do something it wasn't developped for). I'll tell you about my progress about it even it it's not the main purpose of the lib.
Anyway, if someone has any MIDI sequencer library suggestions, they are welcomed.
Have a nice week-end, Sebastien Frippiat
[Prev in Thread] | Current Thread | [Next in Thread] |