如何用C/C++或Java生成真正的低音吉他声音?

die*_*ock 1 c++ java audio midi bass

我一直在互联网上进行广泛的研究,因为我需要一种方法来从程序中产生真正的低音(如电贝司吉他).事情是我一直在用MIDI的方式来产生那种声音,但是我不确定这是不是正确的事情,实际上我对这个主题知之甚少,是我第一次尝试任何与原始编码产生声音有关的事情.我一直在寻找不同的API来帮助我,他们中的大多数都是开源的,看看是做什么的,但我发现它们非常复杂,学习曲线非常陡峭,文档很少.我一直在寻找开源程序,如tuxguitar,用java制作,类似于GuitarPro,所以我可以看到产生低音的效果,我还有一些代码可以扫描,所以我可以找到我要找的东西,但是我担心这不是我需要或能做的事情.所以要包装所有这些,我的问题是:有没有办法产生真正的音乐低音,无论是通过本机代码还是任何API,没有必要使用MIDI或类似的东西,最好是在c/c ++或java?非常感谢PS借口任何sintaxis或语言错误,我不是英语本地人.

Bra*_*rad 7

MIDI只是一种控制协议,与声音本身无关.它通常用于合成器控制(注意开/关消息,什么不是),但这就是它.

大多数设备都有一个合成器,可以在用MIDI控制时为你产生声音.这是迄今为止最简单的入门方式,但你会发现大多数普通MIDI合成器的声音听起来并不那么好.

现在,就产生你所追求的声音而言,你正在谈论编写自己的合成器.没有魔力.没有捷径.这很辛苦!通常,合成器将使用一组样本,然后操纵它们.例如,你将有一个采样的样本,然后另一个用于吉他的声音.这将全部在ADSR信封上进行控制.即使这样,它也听起来并不令人惊讶,因为你只是近似于仪器的一小部分特征.