时间:2010-12-02 00:44:42

标签: audio

我正在寻找一种音频处理语言或库,这将允许我尝试不同的合成技术。我看过Processing,我觉得它的功能很棒,但是没有找到任何鼓舞人心的(和简单的)音频库。

作为基线,我想简单地创建我自己的样本缓冲区并播放它们(理想情况下是实时)。另外,处理MIDI事件的能力会很棒。我是一位经验丰富的C ++程序员,所以我可以原生地做,但希望有更多的DSL(领域特定语言)方法。

我可以访问Windows,Mac或Linux,所以对平台不太感兴趣。我可以处理的其他语言是C#,Java&蟒。

由于

詹姆斯

6 个答案:

答案 0 :(得分:3)

根据您希望保留多少低级内务管理详细信息,您可能需要查看CSound,或者如果您不想实际编写代码,则可以查看基于修补程序的系统{{3很高兴能与之合作。正如@Lou指出的那样,ChucK很有意思(但是上次检查出来的时候太麻烦了)。

如果您确实想编写代码,请查看PureData,一组用于音频处理和综合的C ++类。

对于应用程序框架,我建议Synthesis Toolkit,它具有令人难以置信的跨平台处理音频/ midi IO和GUI元素。

答案 1 :(得分:1)

Max MSP是一种具有高度表现力的音频制作工具。

我想你可以说它是一个高级工具,而不是一个低级编程语言。我对它的印象是,它面向的是技术音乐家或艺术工程师,但无论如何它会踢屁股,如果你愿意,你可以用它做低级别。

答案 2 :(得分:1)

我一直是SuperCollider的粉丝。它专为Mac OS X设计,但也适用于Linux。

该语言主要基于SmallTalk,如果您了解函数式编程的基础知识,那么它很容易掌握。 SC Server的声音输出质量非常好,并且在应用环境中内置了大量文档,并且可以在线获得。

答案 3 :(得分:1)

SuperCollider的一个有趣之处在于Android设备上的使用,它通过其他模块与python相互通信。 这是一个example

答案 4 :(得分:0)

我知道你没有说Ruby,但请查看Archeopteryx

https://github.com/gilesbowkett/archaeopteryx/wiki

或ChucK

http://chuck.cs.princeton.edu/

答案 5 :(得分:0)

查看NAudio,这是一个开源.NET音频SDK,用于处理Windows中的音频文件和设备。一些功能包括:

http://naudio.codeplex.com/

NAudio Features:

Play back audio using a variety of APIs
Decompress audio from different Wave Formats
Record audio using WaveIn, WASAPI or ASIO
Read and Write standard .WAV files
Mix and manipulate audio streams using a 32 bit floating mixing engine
Extensive support for reading and writing MIDI files
Full MIDI event model
Basic support for Windows Mixer APIs
A collection of useful Windows Forms Controls
Some basic audio effects, including a compressor