• 追加された行はこの色です。
  • 削除された行はこの色です。
TITLE:MIDIファイルの演奏
#navi(../)
#tags()
#tags(Sound, MidiSystem)
RIGHT:Posted by &author(aterai); at 2006-01-09
*MIDIファイルの演奏 [#q50a5f5c]
MidiSystemからSequencerを作成取得し、MIDIファイルを演奏します。
* MIDIファイルの演奏 [#q50a5f5c]
``MidiSystem``から``Sequencer``を作成取得し、``MIDI``ファイルを演奏します。

-&jnlp;
-&jar;
-&zip;
- &jnlp;
- &jar;
- &zip;

//#screenshot
#ref(http://lh3.ggpht.com/_9Z4BYR88imo/TQTP2Xw5rXI/AAAAAAAAAeo/3v8-ggh9ZBE/s800/MidiSystem.png)
#ref(https://lh3.googleusercontent.com/_9Z4BYR88imo/TQTP2Xw5rXI/AAAAAAAAAeo/3v8-ggh9ZBE/s800/MidiSystem.png)

**サンプルコード [#s9901c5c]
** サンプルコード [#s9901c5c]
#code(link){{
URL url = getClass().getResource("Mozart_toruko_k.mid");
final Sequencer sequencer;
try{
  Sequence s = MidiSystem.getSequence(url);
  sequencer  = MidiSystem.getSequencer();
  sequencer.open();
  sequencer.setSequence(s);
}catch(Exception e) {
  e.printStackTrace();
  return;
}
start = new JButton(new AbstractAction("start") {
  public void actionPerformed(ActionEvent ae) {
    sequencer.start();
  }
});
}}

**解説 [#f3cdbcb2]
MidiSystem.getSequencerメソッドでSequencerを取得し、これにMidiSystem.getSequenceメソッドでMIDIファイルから生成したSequenceを設定します。
Sequencer.startメソッドで演奏を開始することができます。
** 解説 [#f3cdbcb2]
``MidiSystem.getSequencer``メソッドで``Sequencer``を取得し、これに``MidiSystem.getSequence``メソッドで``MIDI``ファイルから生成した``Sequence``を設定します。

**参考リンク [#h23d44e1]
-[http://muimi.com/j/game/sound/ Javaでゲーム - サウンドメモ]
-[http://classic-midi.com/ クラシックMIDI ラインムジーク]
-[[Wavファイルの演奏>Swing/Sound]]
-[[Beep音を鳴らす>Swing/Beep]]
-[[AuditoryCuesでイベント音を設定する>Swing/AuditoryCues]]
``Sequencer.start``メソッドで演奏を開始することができます。

**コメント [#u2657308]
** 参考リンク [#h23d44e1]
- [http://muimi.com/j/game/sound/ Javaでゲーム - サウンドメモ]
- [http://classic-midi.com/ クラシックMIDI ラインムジーク]
- [[Wavファイルの演奏>Swing/Sound]]
- [[Beep音を鳴らす>Swing/Beep]]
- [[AuditoryCuesでイベント音を設定する>Swing/AuditoryCues]]

** コメント [#u2657308]
#comment