I did it like you sad but it never works. Here is a part of my code:
@ForgeSubscribe
public void onBackgroundSound(PlayBackgroundMusicEvent par1PlayBackgroundMusicEvent) {
SoundPoolEntry var1 = par1PlayBackgroundMusicEvent.manager.soundPoolMusic.getRandomSoundFromSoundPool("ml.outdoor");
if(var1 != null) {
System.out.println("Play!");
par1PlayBackgroundMusicEvent.result = par1PlayBackgroundMusicEvent.manager.soundPoolMusic.getRandomSoundFromSoundPool("ml.outdoor");
} else {
System.out.println("Load!");
par1PlayBackgroundMusicEvent.manager.soundPoolMusic.addSound("ml/outdoor.ogg", new File(Minecraft.getMinecraft().getMinecraftDir(), "resources/MusicLoops/Outdoor.ogg"));
this.onBackgroundSound(par1PlayBackgroundMusicEvent);
}
}
I moved the file to mcp/jars/resources/MusicLoops/Outdoor.ogg. The messages from System.out.println say if it should play. And they do it always when they should do. But I can't here any music. The normal integrated music plays well.