[Top][All Lists]

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

Re: [fluid-dev] DSP testing

From: Josh Green
Subject: Re: [fluid-dev] DSP testing
Date: Wed, 31 Mar 2004 02:10:26 -0800

On Wed, 2004-03-31 at 01:50, Peter Hanappe wrote:
> I would like to avoid lock-free FIFOs if possible. FIFOs don't make the
> design of the synthesizer simpler. I think it is possible to do without.
> I'm thinking of using "voice groups":
> 1) make noteon() atomic. (currently, the synchronization is up to the
>     calling thread but that should be changed).
> 2) all the voices created during the call to noteon are in the same
>     voice group and should be phase locked.
> 3) a voice starts playing when the voice is turned on and when
>     the voice group is turned on. Currently, only the voice is checked.
> Changing and checking whether a voice group is on/off can be done using
> atomic operations. No need for locking, no need for FIFOs.
> I made the changes above in my local copy of fluidsynth. There weren't
> that many modifications to be made and all still seems to work. I
> can commit it to CVS if you want to check.

This sounds really cool, and will also make it easy to add the SoundFont
stereo linked sample functionality that is currently missing. By
allowing an arbitrary number of voices to be a part of the group, it
also makes it possible to play back DLS (DownLoad-able Sounds)
multi-channel surround audio (of course FluidSynth support for more
channels would be cool too :) I'm making DLS2 the native format of Swami
1.0 (all conversion to/from formats will proxy through DLS2 to reduce
the number of conversion routines required). Cheers.
        Josh Green

reply via email to

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