JavaのMIDI機能についてはあまりよく分かりませんが、実際、それはまったく私をうんざりさせます。しかし、私は何をしたいのですかちょうどは、1つのメモを再生する単純なアプリケーションを構築します。MIDI初心者 - 1つの音符を再生する必要があります
Javaサウンドを使用して単一のMIDIノートを再生する方法は?
これはウェブ上でのサポートはほとんどなく、私は全く犠牲になっています。
JavaのMIDI機能についてはあまりよく分かりませんが、実際、それはまったく私をうんざりさせます。しかし、私は何をしたいのですかちょうどは、1つのメモを再生する単純なアプリケーションを構築します。MIDI初心者 - 1つの音符を再生する必要があります
Javaサウンドを使用して単一のMIDIノートを再生する方法は?
これはウェブ上でのサポートはほとんどなく、私は全く犠牲になっています。
これは本当に古い質問ですが、初心者のプログラマとしては、これをどうやって行うのか非常に難しい時があったので、次のようなhello-world-styleプログラムをJava他の誰かを助けるために単一のMIDIノートを演奏すること。
import javax.sound.midi.*;
public class MidiTest{
public static void main(String[] args) {
try{
/* Create a new Sythesizer and open it. Most of
* the methods you will want to use to expand on this
* example can be found in the Java documentation here:
* https://docs.oracle.com/javase/7/docs/api/javax/sound/midi/Synthesizer.html
*/
Synthesizer midiSynth = MidiSystem.getSynthesizer();
midiSynth.open();
//get and load default instrument and channel lists
Instrument[] instr = midiSynth.getDefaultSoundbank().getInstruments();
MidiChannel[] mChannels = midiSynth.getChannels();
midiSynth.loadInstrument(instr[0]);//load an instrument
mChannels[0].noteOn(60, 100);//On channel 0, play note number 60 with velocity 100
try { Thread.sleep(1000); // wait time in milliseconds to control duration
} catch(InterruptedException e) { }
mChannels[0].noteOff(60);//turn of the note
} catch (MidiUnavailableException e) {}
}
}
上記のコードは、主に、いくつかのオンラインチュートリアルにあるコードを切り取り、貼り付けしていたものです。私が見つけた最も役立つチュートリアルは次のとおりです:
http://www.ibm.com/developerworks/library/it/it-0801art38/ これは素晴らしいチュートリアルで、おそらくあなたが探しているものがすべてあります。しかし、最初は少し圧倒的かもしれません。
http://patater.com/gbaguy/javamidi.htm 15歳で作成された非勤務のコードです。これは驚くほど - 私が見つけた最も有益なものでした。
あなたに最高の運があります。 乾杯。
これまでのチュートリアルはどのようなものでしたか?どのように動作していませんか? –
[Javaサウンド情報]からリンクされているリソースを参照してください。ページ](http://stackoverflow.com/tags/javasound/info)。また、MIDIチューンを再生する短いソースもあります。 –
SierraとBatesの "Head First Java"には、このためのサンプルコードがあります。 –