对于任何长于几秒钟的声音,最好直接从磁盘读取,而不是将其完全加载到RAM内存中, Libgdx提供了一个Music 接口,让您可以做到这一点。
要加载一个音乐实例,我们可以执行以下操作:
Music music = Gdx.audio.newMusic(Gdx.files.internal("data/mymusic.mp3"));
这会从文件目录为data的内部目录中加载一个名为“mymusic.mp3”的MP3文件,播放音乐实例的代码如下:
music.play();
当然,您可以设置Music实例的各种播放属性:
music.setVolume(0.5f); // sets the volume to half the maximum volume
music.setLooping(true); // will repeat playback until music.stop() is called
music.stop(); // stops the playback
music.pause(); // pauses the playback
music.play(); // resumes the playback
boolean isPlaying = music.isPlaying(); // obvious :)
boolean isLooping = music.isLooping(); // obvious as well :)
float position = music.getPosition(); // returns the playback position in seconds
Music相当耗内存,通常不超过两个实例.如果不再需要使用Music实例请及时释放资源。
music.dispose();