我希望能够在安卓设备上根据用户输入播放特定频率的声音,有点类似于吉他应用程序。有人可以告诉我如何做吗?我需要在res\raw文件夹中拥有所有频率声音吗?
尽管它看起来并不复杂,但这是一个非常复杂的问题。
当你说“声音”时,你只是指简单的音调(例如正弦、方波、三角波、锯齿波),还是想播放像吉他、钢琴等“真实”的乐器声音?
如果是第一种情况(简单的音调),那么Desiderio的答案可能是正确的,但如果你想要“真实”的乐器声音,那么你需要在/res/raw或/ assets目录中有一个短的“采样”。
您可以将它们加载到SoundPool实例中,并将其用于以不同的“速率”播放,例如,速率为2将加快两倍的速度和双倍频率,从而增加一个八度。速率为0.5将减半速度,因此将声音降低一个八度。