有没有一种简单直接的方法可以将音频用作程序的输出?

Is there a simple and direct way of using audio as an output for a program?

我想尝试一些带有音频处理的 C 和 C++ 编程,例如合成器、合唱、延迟等,但我只知道使用控制台作为输出。我希望有一个 window 能够向扬声器发送音频信号,运行 后台代码并以与它类似的方式使用它,而不是控制台应用程序与 printf 一起使用:每次我调用 "output function",它都会向扬声器(或声卡)发送一个样本值,指示当前振荡器位置。每次请求时或在内置循环结束时都可以执行此输出操作。以高采样率完成所有这些工作会很棒。

我认为我可以在网络音频 API 上使用 AudioWorker 并在 HTML5 canvas 上使用灵活的 GUI 来完成所有这些工作,但我是新手 API ] 而且我不确定它产生的音质是否足够好。

提前致谢。

编辑:我使用 Windows 8.1,但欢迎任何针对其他平台的回答。

Edit2:除 C、C++ 或 JavaScript 之外的任何编程语言也欢迎提出建议。

我用 Web Audio API 做了很多声音合成,我觉得它听起来很棒。 Javascript 真的是你所需要的。嗯,如果你想使用音频文件,你需要一个网络服务器来提供这些音频文件,但音频合成都发生在 javascript.

使用什么 OS 并不重要,但不同的浏览器对网络音频 API 的支持程度不同。 Chrome 往往得到最好的支持,而 Internet Explorer 肯定得到最差的支持。