Skip to content

Commit c954688

Browse files
committed
Mini Music App
1 parent 61680cf commit c954688

4 files changed

Lines changed: 128 additions & 0 deletions

File tree

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package exceptionHandling;
2+
3+
import javax.sound.midi.InvalidMidiDataException;
4+
import javax.sound.midi.MidiEvent;
5+
import javax.sound.midi.MidiSystem;
6+
import javax.sound.midi.MidiUnavailableException;
7+
import javax.sound.midi.Sequence;
8+
import javax.sound.midi.Sequencer;
9+
import javax.sound.midi.ShortMessage;
10+
import javax.sound.midi.Track;
11+
12+
public class MiniMiniMusicApp {
13+
public static void main(String[] args) {
14+
MiniMiniMusicApp mini = new MiniMiniMusicApp();
15+
mini.play();
16+
}
17+
18+
public void play() {
19+
try {
20+
Sequencer player = MidiSystem.getSequencer();
21+
player.open();
22+
23+
Sequence seq = new Sequence(Sequence.PPQ, 4);
24+
25+
Track track = seq.createTrack();
26+
27+
ShortMessage a = new ShortMessage();
28+
a.setMessage(144, 1, 44, 100);
29+
MidiEvent noteOn = new MidiEvent(a, 1);
30+
track.add(noteOn);
31+
32+
ShortMessage b = new ShortMessage();
33+
b.setMessage(128, 1, 44, 100);
34+
MidiEvent noteOff = new MidiEvent(b, 16);
35+
track.add(noteOff);
36+
37+
player.setSequence(seq);
38+
player.start();
39+
} catch (MidiUnavailableException e) {
40+
// TODO Auto-generated catch block
41+
e.printStackTrace();
42+
} catch (InvalidMidiDataException e) {
43+
// TODO Auto-generated catch block
44+
e.printStackTrace();
45+
}
46+
}
47+
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
package exceptionHandling;
2+
3+
import javax.sound.midi.InvalidMidiDataException;
4+
import javax.sound.midi.MidiEvent;
5+
import javax.sound.midi.MidiSystem;
6+
import javax.sound.midi.MidiUnavailableException;
7+
import javax.sound.midi.Sequence;
8+
import javax.sound.midi.Sequencer;
9+
import javax.sound.midi.ShortMessage;
10+
import javax.sound.midi.Track;
11+
12+
public class MiniMusicCmdLine {
13+
public static void main(String[] args) {
14+
MiniMusicCmdLine mini = new MiniMusicCmdLine();
15+
if(args.length < 2) {
16+
System.out.println("Don't forget instrument and note");
17+
}
18+
else {
19+
int instrument = Integer.parseInt(args[0]);
20+
int note = Integer.parseInt(args[1]);
21+
mini.play(instrument, note);
22+
}
23+
}
24+
25+
public void play(int instrument, int note) {
26+
try {
27+
Sequencer player = MidiSystem.getSequencer();
28+
player.open();
29+
Sequence seq = new Sequence(Sequence.PPQ, 4);
30+
Track track = seq.createTrack();
31+
32+
ShortMessage first = new ShortMessage();
33+
first.setMessage(192, 1, instrument, 0);
34+
MidiEvent changeInst = new MidiEvent(first, 1);
35+
track.add(changeInst);
36+
37+
ShortMessage a = new ShortMessage();
38+
a.setMessage(144, 1, note, 100);
39+
MidiEvent noteOn = new MidiEvent(a, 1);
40+
track.add(noteOn);
41+
42+
ShortMessage b = new ShortMessage();
43+
b.setMessage(128, 1, note, 100);
44+
MidiEvent noteOff = new MidiEvent(b, 16);
45+
track.add(noteOff);
46+
47+
player.setSequence(seq);
48+
player.start();
49+
} catch (MidiUnavailableException e) {
50+
// TODO Auto-generated catch block
51+
e.printStackTrace();
52+
} catch (InvalidMidiDataException e) {
53+
// TODO Auto-generated catch block
54+
e.printStackTrace();
55+
}
56+
}
57+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package exceptionHandling;
2+
3+
import javax.sound.midi.MidiSystem;
4+
import javax.sound.midi.MidiUnavailableException;
5+
import javax.sound.midi.Sequencer;
6+
7+
public class MusicTest1 {
8+
public void play() {
9+
try {
10+
Sequencer seq = MidiSystem.getSequencer();
11+
System.out.println("success");
12+
}catch(MidiUnavailableException ex) {
13+
System.out.println("bummer");
14+
}
15+
16+
}
17+
18+
public static void main(String[] args) {
19+
// TODO Auto-generated method stub
20+
MusicTest1 mt = new MusicTest1();
21+
mt.play();
22+
}
23+
}

src/writeAProgram/DotCom.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ String checkYourself(String strGuess) {
99
if(locationCells.isEmpty()) {
1010
return "kill";
1111
}
12+
1213
String result = "miss";
1314
int index = locationCells.indexOf(strGuess);
1415
if(index >= 0) {

0 commit comments

Comments
 (0)