作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在构建一个 iOS 合成器,使用 Audio Unit,基本上围绕 this 构建.
我已经支持简单的 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 中实现它。
有什么帮助吗?
最佳答案
您可以像对三角波一样对锯齿波使用截断傅里叶级数,除了在求和中包括偶次谐波项和奇次谐波项,并使用等于每项谐波数的除数而不是这样的平方。
您使用的项越多,级数近似值就越像锯齿波,但它包含的高频内容也越多。
关于C - 锯齿波的傅里叶变换级数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9981348/
尝试使用 tkinter 为一系列 PIL 图像制作动画。我的帧持续时间 (ms) 的图表如下所示: 有人知道是什么导致了这种尖尖的锯齿图案吗? 这是一个重现的脚本: from PIL import
我正在尝试使用 Canvas 创建“星爆”效果,但线段出现令人难以置信的像素化。我做错了什么吗? var rays = 40; var canvas = $("header canvas")[0];
爪牙 我在 JAGS 中有一个仅拦截逻辑模型,定义如下: model{ for(i in 1:Ny){ y[i] ~ dbern(mu[s[i]]) } for(j in 1:Ns){
我是一名优秀的程序员,十分优秀!