fluid-dev
[Top][All Lists]
Advanced

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

Re: [fluid-dev] Patches for 1.1.1


From: Elimar Green
Subject: Re: [fluid-dev] Patches for 1.1.1
Date: Sat, 5 Jun 2010 09:49:21 -0700

Hello Sven,

I'm aware that there are rather significant issues with the new version of FluidSynth.  Properly fixing them would require a bit more time investment than I currently have to offer the project though.  The patch to #79 looks like it would introduce another potential event ordering issue.  It seems to me, that if an ALL_CTRL_OFF event is received, followed by a control change event, they should be processed in the order they were received in (how it is now).  Having a combination of queued versus non-queued events, leads to non-deterministic behavior (the current issue with #65).  There is no guarantee as to which order the events will be processed.

I'd like to fix this soon, but I want to do it properly.  I'm not convinced yet that these two solutions are the proper way.  Please convince me though, if you feel they are, since I haven't researched it thoroughly.  When I have some more time, I'll look into re-designing FluidSynth, so these queuing issues no longer exist.  Hopefully in the next month or two.

Best regards,

Elimar


On Sat, Jun 5, 2010 at 7:45 AM, Sven Meier <address@hidden> wrote:
Hi Elimar,

first let me thank you for your efforts on Fluidsynth, especially for the recent migration to Sourceforge.

Please note that issues #79 and #65 are no obscure feature requests of a few organ enthusiasts but failures to adhere to the Midi specification.

Could you please take a look on http://sourceforge.net/apps/trac/fluidsynth/ticket/79 ?
The attached patch doesn't change the queuing mechanism. Controllers are just reset immediately, so I don't expect any incompatibility with QSynth because of this change.

Regards

Sven


On 06/05/2010 01:20 AM, Elimar Green wrote:
Looking over the mailing list archives, I was able to refresh my memory as to why I reverted the bank queuing.  Programs like QSynth rely on the notion that querying current bank/program numbers assigned to channels will reflect the most recently assigned values.  For some reason I opted to revert the queuing behavior, since it went against the mentioned expectation, rather than try and have the state machine reflect the most recent assignment.  The right way to fix all this is to re-work the FluidSynth core thread related code to get rid of queuing where possible.  As has been discussed a little previously between David and myself, as much of the state machine as possible should be protected by the synth mutex and queuing used only to update the synth core, which would then be purely a voice synthesis engine.

If there is a quick fix though, to resolve the out of order issues AND also work in regards to returning the latest bank/program number when queried, I'm all for that.  Simply reverting back to the queued case though, will break QSynth.

Cheers,

Elimar

On Fri, Jun 4, 2010 at 3:06 PM, Elimar Green <address@hidden <mailto:address@hidden>> wrote:

   Ticket reporting on SourceForge is working.  I got an update.     Just haven't gotten around to researching why I originally changed
   it from queuing program changes.  I'm sure there was some reason
   to that, but event ordering issues are obviously not acceptable.     I'll try and get around to reviewing this soon.  Perhaps there was
   some mailing list traffic around revision 277 that would clarify
   why the queuing got reverted.

   Regards,

   Elimar


   On Fri, Jun 4, 2010 at 2:01 PM, Graham Goode <ggoode.sa
   <http://ggoode.sa>@gmail.com <http://gmail.com>> wrote:

       Hi Guys,

       Sven Meier of the jOrgan project has made some fixes for
       fluidsynth
       1.1.1 (Tickets 65 and 79). We as jOrgan users have his patched
       fluidsynth version but it looks like these have not been
       accepted into
       the SourceForge repository yet. Is there someone looking into
       these or
       is sourceforge not reporting ticket changes yet?

       GrahamG

       _______________________________________________
       fluid-dev mailing list
       address@hidden <mailto:address@hidden>

       http://lists.nongnu.org/mailman/listinfo/fluid-dev




_______________________________________________
fluid-dev mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/fluid-dev
 


_______________________________________________
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]