2010-12-05 31 views
2

我正在为音乐心理学项目编写一个小型网络应用程序,该项目将播放一系列主题的声音样本,并要求他们对每一个主题进行评分。我需要生成一系列音调(可能是所有正弦波),并应用一个或两个基本滤波器/效果,例如失真。实际上,我需要一个简单的合成器库。基本的声音生成/合成库,任何语言

因为它是一个网络应用程序,我需要它能够吐出音频文件(通过HTML5音频播放),而不只是实时播放声音。我会提前生成这些文件,而不是在应用程序运行时,因此性能不是问题。

我在Python中最舒服,但该应用程序很简单,所以我愿意使用几乎任何语言。用于Python/Tcl的流行Snack库有一些基本的综合设施,但除了formants之外,没有任何效果可言。

最自然的选择是像Csound,Supercollider或ChucK这样的声音设计语言,但它似乎有一个非常陡峭的学习曲线,只是产生不同频率的正弦波,有时还会产生失真效应。

回答

0

既然你事先做了这个,就用Audacity。它能够产生正弦波/方波/锯齿波(产生>啁​​啾声)并具有一些效果。然后您可以保存到许多压缩格式。

如果您要创建大量文件,您可能不想坐下来手动生成每个文件。幸运的是,Audacity is scriptable

+0

这看起来很不错,但理想情况下,我希望能够在服务器端运行脚本并生成声音文件以及JSON文件,并通过文件列表向客户端发送,他们的路径和其他一些关于他们的数据。有了Audacity,每当我想改变声音时,我都必须启动一个桌面应用程序,用自动化脚本旋转,然后重新上传输出。谢谢,但是 - 如果我不能得到我真正想要的东西,这可能是我最终做的。 – Alex 2010-12-05 02:07:44

2

我最终坚持与小吃。我怀疑没有符合我的标准的东西。我通过创造“恶劣的音色”条件来妥协,我想通过混合一个方波和一点噪音来产生失真。听起来不太好,但我没有具体定义我需要用于该项目的“苛刻”。