iiwusynth-devel
[Top][All Lists]
Advanced

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

Re: [iiwusynth-devel] Optimization


From: Peter Hanappe
Subject: Re: [iiwusynth-devel] Optimization
Date: 20 Feb 2002 16:49:49 +0100

On Wed, 2002-02-20 at 11:57, address@hidden wrote:
> Hello,
>  
> first of all, thanks for iiwusynth - it works very well. 

Thanks!

> I found a 12 MB Rhodes EP-soundfont, which just blows away any
synthesizer-fake-Rhodes I have ...

Can you send the link? I'm interested.

> Some notes (should be 'some patches', maybe after the weekend :-)
>  
> - Compiler optimization: After upgrading to the latest GCC version, I
managed to compile with -O3 -funroll-loops -mcpu=i686 -march=i686. 
> At least the -O3 is needed for handling full polyphony (on a P III
700). Not sure about the i686 options, though.
> With previous compiler versions, strange behaviour resulted from -O3
(the root key of each sample was missing, but that's a compiler bug).

Currently it's compiled with -O6. But it seems completely wrong now. man
gcc doesn't mention -O6 at all. I don't know where I picked that up. 

I've changed it to -O2. What versions of gcc have the -O3 bug?


> - Bug: There should be a pitchbend default value for each Midi
channel. Currently pitch bend starts with +/- 0 for each generator,
instead of the real position of the pitch bend wheel.

I changed that for the pitch bend. I commited it in CVS. 

> - Filter: The filter -is- commented out at the moment? I'm not sure, I
didn't manage to set the filter. I'll try to find some time in the
weekend to understand the code...

There still are problems with the filter. It works reasonably well when
the filter parameters don't change. When the resonance frequency is
heavily modulated the filter goes bezurk. I know digital filters whose
poles are variable can cause them to become unstable. I'm digging into
that right now.

> - Equalizer: I have implemented a 10 band equalizer in C, that works
just fine ( http://millisampler.sourceforge.net). It's based on a
'recipe' from a DSP application note.
> The CPU load with all 10 bands on is around 10 % on my machine.
Turning off bands (gain = 0 dB) reduces the load proportionally.
> While I don't think that it could be included in iiwysynth in a way
compatible with the standard, It might be useful as a 'master effect',
which is 
> only controlled via command line parameters. Any opinions?

I was thinking of adding support for the LADSPA plugins to iiwusynth. It
is not high on my priority list but it  would make it easy to add new
master effects to the synthesizer while keeping the synth coherent with
the soundfont specifications. Have you considered turning your equalizer
into a LADSPA plugin?


> -Sysex: Iiwusynth locks up, when sysex messages are transmitted.

Thanks. I'll check. Are you using the alsa or the oss driver?


Cheers,
Peter

PS: Thanks for the text version of your mail :)

> Regards
>  
> Markus
> address@hidden
>  
>  
>  




reply via email to

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