gpt4 book ai didi

java - 如何在android/java中合成钢琴音色

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:09:27 24 4
gpt4 key购买 nike

我已经在 Android 上制作了一些简单的应用程序,并且认为是时候制作一些更复杂的东西了。所以,我想我会尝试一些已经存在的东西,但是从头开始构建它。

这个想法是创建一个应用程序,允许用户通过按下显示屏上的虚拟键来弹奏钢琴。但我不确定如何合成每个音符的声音,最好是将每个音符的副本存储在文件中,还是有更动态的方式来动态合成音符和和弦。

我用过 C++,所以 NDK 的东西也可以。感谢您的帮助。

最佳答案

声音播放(传递缓冲区)几乎必须通过 Android java api 完成

综合可以在 native 或 java 中完成,视其偏好而定。

短的(未压缩的)样本可以重复播放,但您可能还需要一个起音 transient 。或许您可以进行起音、延音和释音,只要按下琴键就重复延音。理想情况下,每个样本都应该是其基本组成部分周期的整数倍,这样当您在攻击维持或维持衰减之间切换时就不会出现瞬变。

我相信您可以在某处找到 FM 或其他合成器的代码...您可能希望在 native 库中实现这一点,该库将缓冲区交给 Java 代码以传递给音频 API。

可惜的是android已经有一个内置的midi合成器,但显然缺少一个动态接口(interface),所以它只能播放midi文件。

关于java - 如何在android/java中合成钢琴音色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4348039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com