We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(12)
那里有大量的 C/C++ 库,其中大多数不再更新。 关于 C# 的内容不多,但我见过几个。 我没有真正使用过它们中的任何一个,所以我无法给出任何建议。
我将从 Harmony Central 开始,看看您是否在那里找到任何有用的东西。
或者,搜索 analog sourceforge.net 上的综合有很多结果。
There are an awful lot of C/C++ libraries out there, most no longer updated. There's not much for C#, but I have seen a couple. I haven't really used any of them in anger, so I can't give any recommendations.
I would start with Harmony Central and see if you find anything of use there.
Alternatively, a search for analog synthesis on sourceforge.net has plenty of results.
斯坦福大学的 CCRMA 是音频软件的良好资源。 C++ 综合工具包 (STK) 看起来可以帮助您。
CCRMA at Stanford can be a good resource for audio software. The Synthesis ToolKit in C++ (STK) looks like it could help you out.
Moog 和 Yamaha DX7 截然不同。 DX7使用FM合成,这非常奇怪。 与 Moog 等常见的 VCO/VCA/VCF 类似物非常不同。
很长一段时间以来,雅马哈一直在通过诉讼来捍卫其 FM 专利,但我相信这些专利现在都已经过期了。 卡西欧的相位失真与雅马哈的FM类似,并成功避免了雅马哈的愤怒(据我所知)。
我首先会选择其中之一。 自从 Nord Lead 和 Access Virus 出现以来,Virtual Analog(模拟模拟合成器)就风靡一时。 而且更容易思考。 所以如果你想和时髦的人群一起散步,我会走那条路。
从良好的限带振荡器开始,制作包络发生器,制作滤波器。 要获得灵感,请查看威尔士合成器食谱,了解如何使用两个-振荡器合成器。 我将从实现这些补丁所需的最低功能开始。
FM 和 PD 很狂野。 如果您走这条路,那就需要将足够多的 FM 操作员以有趣的配置链接在一起,以获得一系列有趣的声音。 警告:避免 FM 中的混叠需要做大量工作。
The Moog and the Yamaha DX7 are drastically different. The DX7 uses FM synthesis, which is severely strange. Very different from the usual VCO/VCA/VCF analogs like the Moog.
For a long time, Yamaha litigated to defend its FM patents, but they have all expired by now, I believe. Casio's phase distortion was similar to Yamaha's FM, and managed to avoid Yamaha's wrath (so far as I know).
I'd start by picking one or the other. Virtual Analog (emulating analog synths) is all the rage since the Nord Lead and the Access Virus showed up. And a lot easier to contemplate. So I'd go that way if you want to walk with the hip crowd.
Start with good band-limited oscillators, make an envelope generator, do a filter. For inspiration, check out Welsh's Synthesizer Cookbook to see how all kinds of sounds can be make with a two-oscillator synth. I'd start by implementing the minimum features needed for those patches.
FM and PD are wild. If you go that route, it's all about chaining enough FM operators together in interesting configurations to get a spectrum of interesting sounds. Warning: it's a lot of work to avoid aliasing in FM.
Synthmaker 和 SynthEdit 将为您生成 VST 代码。 SynthEdit 确实输出未编译的 C++ 源文件,并且是免费的。
http://www.synthedit.com/
http://synthmaker.co.uk/
Synthmaker and SynthEdit will generate VST code for you. SynthEdit definitely outputs the uncompiled C++ source files, and is free.
http://www.synthedit.com/
http://synthmaker.co.uk/
最好的选择是查看 KvR 上的开发者论坛。 他们将能够为您指明最佳开源 DSP/合成引擎以及一些您可以从中获取灵感的开源 VSTi 插件的方向。 不过,这一切都将采用 C/C++ 语言。 目前托管代码中仅提供最基本的音频合成。
your best bet is to check out the developer forums over at KvR. They will be able to point you in the direction of the best open source DSP/synthesis engines as well as some open source VSTi plugins that you can take inspiration from. It will all be in C / C++ though. There is only the most basic of audio synthesis available in managed code at the moment.
musicdsp 网站也有一个很棒的 综合库。 关于如何做事的大量 C/C++ 示例代码。
The musicdsp website also has a great synthesis library. Lots of sample code in C/C++ on how to do things.
查看 Python 音乐库问题的答案。 虽然问题说的是“Python”,但 Python 是基于 C 构建的。因此,Python 中可用的任何内容也将有一个 C 库。
Look at the answers to the Python Music Library question. While the question says "Python", Python is built on C. So anything usable from Python will have a C library, also.
我编写了一个简单的合成库作为 iPhone 应用程序的一部分。 也许它也能满足您的合成器需求。 也许不是。
http://mobilesynth.googlecode.com/svn/trunk/mobilesynth/Classes /合成/
I wrote a simple synth library as part of an iPhone app. Perhaps it would work for your synth needs as well. Perhaps not.
http://mobilesynth.googlecode.com/svn/trunk/mobilesynth/Classes/synth/
这些教程(特别是从第 8 部分开始)涵盖了经典程序的所有部分的编程C++ 中的减法合成器:振荡器、包络、滤波器和 LFO。
These tutorials (especially from part 8 onwards) cover programming all the parts of a classic subtractive synth in C++: Oscillators, envelopes, filter and LFO.
Chuck 是我所知道的最好的,但它像 C++,而不是 C++。
Chuck is the best I know of, but its C++ like, not C++.
我在 BASS 库方面取得了一些成功,但上次我使用它时,它的 .Net 支持有点粗糙。和它一起玩。 它主要是低级流编码等,但它确实支持一些 DX8 效果。
I've had some success with the BASS library, but it's .Net support was a little crude when last I played with it. It mostly low-level stream encoding and such, but it does have support for some DX8 effects.
您可能需要查看关于 CodeProject 的两篇文章。 Leslie Stanley 用 C# 创建了一个 Synth 工具包(据我所知,它是完全托管的)。
C# 合成工具包 - 第一部分
C# Synth Toolkit - Part II
另外,我刚刚发现这个 StackOverflow 问题 有一些很好的链接,尽管它与 Java 相关
There are two articles on CodeProject you might want to check out. Leslie Stanford created a Synth toolkit in C# (as far as I know it's completely managed).
C# Synth Toolkit - Part I
C# Synth Toolkit - Part II
Also, I just found this StackOverflow Question which has some good links, though it's Java related