denemo-devel
[Top][All Lists]
Advanced

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

Re: [Denemo-devel] Fluidsynth build


From: Jeremiah Benham
Subject: Re: [Denemo-devel] Fluidsynth build
Date: Wed, 28 Oct 2009 11:08:41 -0500

On Wed, 2009-10-28 at 10:04 +0000, Richard Shann wrote:
> On Mon, 2009-10-26 at 13:39 -0500, Jeremiah Benham wrote:
> > On Mon, 2009-10-26 at 18:11 +0000, Richard Shann wrote:
> > > I have built denemo from git with --enable-fluidsynth
> > > but I don't know how to test it. I don't hear anything synthesized
> > > with/without immediate playback set for example, and the aural training
> > > game did not sound out.
> > > What are the settings needed?
> > 
> > At the moment the settings are in preferences FLUIDSYNTH tab. This will
> > soon be moved to the playback properties. First I must clean up playback
> > properties. I see that it is still using tables. I thought I did this
> > already. I guess I did not. Perhaps that is another file I am thinking
> > of. In the FLUIDSYNTH choose and audio output driver. You will probably
> > want alsa or jack. This will soon be a combobox. Next you are going to
> > have to place the path to your soundfont in the other text entry dialog.
> > This will also be replaced with one of those file chooser dialogs. I
> > plan on having the display of loaded soundfonts in a kind of display
> > that looks similar to the Score Configuration Wizard Instrument
> > selection with a load sound font and an unload soundfont button. Then we
> > will also have to have a way to chose bank and all of that from the
> > soundfont selected.
> > 
> > Midi playback does not work yet via FLUIDSYNTH it is still via timidity
> > or users midi player. I have not read all of fluidsynth's api but so far
> > the only way to deal with midi data is like this:
> > fluid_synth_noteon(synth, channel, key, velocity);
> > 
> > If this is all we have we will have to fire this off at the time of each
> > midi event. Would we use a similar timer that would increment an index
> > in midi ticks for time then run fluid_synth_noteon in a for loop.
> > Something like is sudo code:
> > 
> > for (;;){
> >   if (smf->midi_tick = NULL){ //end of song
> >     EndOfSong = TRUE;
> >     break;
> >   }
> >   if (index smf->event->midi_tick)
> >     fluid_synth_noteon(synth, channel, key, velocity);
> > 
> >   smf->event = smf_next_event();    
> > }
> > 
> > The the timer would be stopped and index reset to 0 when EndOfSong ==
> > TRUE; 
> > 
> > Am I on the right track with that?
> 
> I think you may need:
> 
> fluid_synth_t fluid_synth_handle_midi_event() calls the appropriate
> synth routine (noteon, pitch bend etc).
> 
> which I found at 
> 
> https://resonance.org/svn/fluidsynth/api/index.html


Would I implement a timer as I mentioned above?

Jeremiah


> 
> Richard
> 
> 





reply via email to

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