基本的にこれを中心に構築されたAudio Unitを使用して、iOSシンセを構築しています。
単純な ASR エンベロープと、正弦波、三角波、方形波を既にサポートしています。
サインは単純に、
sin(theta) * amplitude
正方形は
sgn(sin(theta)) * amplitude
現在、三角形は次のように非ループ FFT を使用しています。
((8 / pow(M_PI,2)) * (sin(theta) - sin(3*theta)/9 + sin(5*theta)/25)) * amplitude
しかし、のこぎり波がわかりません。試してみ2*(theta - floor(theta) - 0.5)
ましたが、(クリッピングによるものではなく) エイリアシングされて歪んでしまいました。フーリエ変換シリーズでビルドする必要がありますが、C で実装する方法がわかりません。
誰でも助けてくれますか?