我将在android pad中模拟钢琴键盘。当使用按一个键时,我想播放一些声音,我知道JetPlayer可以播放midi文件,但在这种情况下,我没有mid文件,只有一个音符,怎么做?
答案 0 :(得分:2)
如果使用MP3,您可能需要考虑使用SoundPool类。看一下教程here
这使您可以创建一个HashMap,其中包含每个声音的索引,然后您可以使用它来播放每个单独的音符。例如,索引可以是关键数字。要播放音符,您只需使用相关索引调用SoundPool的playSound方法。
我假设您的钢琴键数量有限,因此,加载多个声音文件(您的MP3)的开销是可以接受的。如果你有一个很大的数字,你可能需要考虑只为用户可见的密钥加载声音文件,以便控制你的内存使用。
答案 1 :(得分:0)
你无法在手机上专门“弹奏”钢琴。你必须有一个声音字节,用于特定音符。