Re: 200+ sine oscillators on iOS
Re: 200+ sine oscillators on iOS
- Subject: Re: 200+ sine oscillators on iOS
- From: Albin Stigö <email@hidden>
- Date: Sun, 27 May 2018 21:53:23 +0200
An oscillator based on a lookup table would work well. You only need one
table per wave type and then maintain separate pointers into the table for
each oscillator.
If the wavetable is a power of two you can use the wrap-around overflow
behavior of unsigned ints instead of mod operator %.
--Albin
On Sun, May 27, 2018, 21:33 Ian Kemmish <email@hidden> wrote:
>
> I'd go along with what the two Brians have said - you're vastly better off
> doing the mixing yourself.
>
> Two extra (and largely architecture independent points):
>
> 1) If you're mixing 200 oscillators, then you'll need eight bits of
> headroom just to do the mixing; if you have a polyphonic synthesiser with a
> thousand or more oscillators per voice, you'll need even more. Bearing in
> mind that you also want to generate the sine waves with as many bits of
> precision as you can, it's easier to manage (or at least debug) this stuff
> if you do it yourself.
>
> 2) Most machines these days are SIMD. There are a variety of algorithms
> for producing efficient sine oscillators on such architectures, but the
> output may be time- or oscillator- interleaved in odd ways. Again, if
> you're managing the mixing buffer yourself, this is easier to handle.
>
> As you can see (www.fdsynthesis.com), I got bored with this before
> CoreAudio even reached phones:-), but some of it may still be relevant.
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> Ian Kemmish 2 Sale Mews, Biggleswade, Beds SG18 0AY
> email@hidden Tel: +44 1767 318605 Mob: +44 7952
> 854387
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
>
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Coreaudio-api mailing list (email@hidden)
> Help/Unsubscribe/Update your Subscription:
>
>
> This email sent to email@hidden
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden