如何控制MIDI音序器的音量?
除了让音量自动消失之外,我还希望音量逐渐消失并关闭。
if (musicSr != null)
{
musicSr.stop();
musicSr.close();
musicSr = null;
musicS = null;
File music = new File(midi);
if(music.exists())
{
musicS = MidiSystem.getSequence(music);
}
// Create a sequencer for the sequence
musicSr = MidiSystem.getSequencer();
musicSr.open();
musicSr.setSequence(musicS);
musicSr.setLoopCount(Sequencer.LOOP_CONTINUOUSLY);
musicSr.start();
}
最佳答案
Sequencer界面不直接支持音量更改(就此而言,是任何逐渐的更改)。
要更改音量,您必须将实际的音量更改消息发送到目标设备。
即,将控制更改消息在适当的时间位置插入音序器的音轨。
要获得淡出效果,请使用多个带有递减值的消息。