• 追加された行はこの色です。
  • 削除された行はこの色です。
TITLE:MIDIファイルの演奏
#navi(../)
*MIDIファイルの演奏 [#q50a5f5c]
>編集者:[[Terai Atsuhiro>terai]]~
作成日:2006-01-09~
更新日:&lastmod;
Posted by [[terai]] at 2006-01-09

#contents

**概要 [#k362057e]
MidiSystemからSequencerを作成取得し、MIDIファイルを演奏します。

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

#screenshot

**サンプルコード [#s9901c5c]
#code{{
 final Sequencer sequencer;
 try{
   sequencer = MidiSystem.getSequencer();
   sequencer.open();
   InputStream is = new BufferedInputStream(
     MainPanel.class.getResourceAsStream("Mozart_toruko_k.mid"));
   Sequence s = MidiSystem.getSequence(is);
   sequencer.setSequence(s);
 }catch(Exception e) {
   e.printStackTrace();
   return;
 }
 start = new JButton(new AbstractAction("start") {
   public void actionPerformed(ActionEvent ae) {
     sequencer.start();
   }
 });
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();
  }
});
}}
-&jnlp;
-&jar;
-&zip;

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

**参考リンク [#h23d44e1]
-[[Javaでゲーム - サウンドメモ>http://muimi.com/j/game/sound/]]
-[[クラシックMIDI ラインムジーク>http://classic-midi.com/]]

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