我希望使用Audacity中的Nyquist Prompt插件构建一个长度为2048个样本的分段线性波形。例如,我可以通过从2048个静音(零)样本开始,选择全部,然后使用以下方法调用奈奎斯特提示来生成方波脉冲:
(sum s (pwl
0 1
0.5 1
0.5))
这使用分段线性(pwl)函数创建一个波形,该波形在时间0,级别1.0开始,然后线性插值到时间0.5(选择的一半),级别1.0,然后立即跳转到等级0.0,并继续在0.0直到时间1.0。
这是有效的,但是得到的波形在时间0.5处没有明显的单样本转换(步骤),而是在~40个样本之间具有1.0到0.0之间的线性斜坡。在这种情况下这是不可接受的。
转换here表明,在Audacity中,奈奎斯特插件实际上以比音频速率小得多的控制速率运行,因此产生了斜坡。
我实际上希望创建一个比方波更复杂的波形,所以一旦这个问题得到解决,我就可以继续构建完整的波形。
我的问题是:
如果更有意义的话,我很乐意在Audacity之外使用奈奎斯特。
答案 0 :(得分:1)
我链接的主题包含了我需要的答案。我会在这里发布,以防将来帮助某人:
(progv '(*control-srate*) (list *sound-srate*)
(sum s (pwl
0 1
0.5 1
0.5))
)
这将控制速率设置为等于声音采样率,从而允许pwl函数直接绘制到单个样本中的目标水平。
此外,似乎只需将下一个语句作为前一个语句的最后一个参数,就可以使Lisp中的语句成为顺序语句。例如,这里调用'sum'的语句位于一个块中,该块是progv的第三个参数。这是正确的吗?