$BBh(J 15 $B>O(J: MIDI $B%5!<%S%9$NDs6!(J


 

$BBh(J 13 $B>O(J$B!V%5!<%S%9%W%m%P%$%@%$%s%?%U%'!<%9$N35MW!W(J$B$G!"(Jjavax.sound.sampled.spi $B$H(J javax.sound.midi.spi $B$N(J 2 $B$D$N%Q%C%1!<%8$O%5%&%s%I%5!<%S%9$N3+H/]%/%i%9$rDj5A$7$F$$$k$3$H$r@bL@$7$^$7$?!#(J $B%5!<%S%9%W%m%P%$%@$O$3$l$i$NCj>]%/%i%9$N$&$A$N$$$:$l$+$N%/%i%9$N%5%V%/%i%9$rO$G$O(J javax.sound.sampled.spi $B%Q%C%1!<%8$N;HMQJ}K!$r@bL@$7$^$7$?!#(J $B$3$N>O$G$O!"(JMIDI $B%G%P%$%9$H(J MIDI $B%U%!%$%k$rjavax.sound.midi.spi $B%Q%C%1!<%8$N;HMQJ}K!$K$D$$$F@bL@$7$^$9!#(J

$B4{B8$N(J MIDI $B%5!<%S%9$@$1$r%"%W%j%1!<%7%g%s%W%m%0%i%`$G;HMQ$9$k%W%m%0%i%^$O!"$3$N>O$rFI$^$J$/$F$b:9$7;Y$($"$j$^$;$s!#(J MIDI $B$N35MW$H%"%W%j%1!<%7%g%s%W%m%0%i%`$K%$%s%9%H!<%k:Q$_$N(J MIDI $B%5!<%S%9$N;HMQJ}K!$K$D$$$F$O!"$3$N%^%K%e%"%k(J ($B!X(JJava Sound API $B%W%m%0%i%^!<%:%,%$%I!Y(J) $B$NBh-6It!V(JMIDI$B!W$r;2>H$7$F$/$@$5$$!#(J $B$3$N>O$G$O!"%$%s%9%H!<%k:Q$_$N(J MIDI $B%5!<%S%9$K%"%/%;%9$9$k$?$a$K%"%W%j%1!<%7%g%s%W%m%0%i%`$,8F$S=P$9(J JavaTM Sound API $B%a%=%C%I$K$D$$$F$NCN<1$,$"$k$3$H$rA0Ds$H$7$^$9!#(J

$B$O$8$a$K(J

javax.sound.midi.spi $B%Q%C%1!<%8$K$O]%/%i%9$,B8:_$7!"(JMIDI $B%7%9%F%`$rDs6!$9$k(J 4 $B

$B%"%W%j%1!<%7%g%s%W%m%0%i%`$O!"%5!<%S%9%*%V%8%'%/%H$N%$%s%9%?%s%9$rD>@\:n@.$9$k$3$H$O$"$j$^$;$s!#%5!<%S%9%*%V%8%'%/%H$,(J MidiDeviceProvider $B$N$h$&$J%W%m%P%$%@%*%V%8%'%/%H$G$b!"%W%m%P%$%@%*%V%8%'%/%H$+$iDs6!$5$l$k(J Synthesizer $B$N$h$&$J%*%V%8%'%/%H$G$b!"F1MM$G$9!#(J $B$^$?!"%W%m%0%i%`$,(J SPI $B%/%i%9$rD>@\;2>H$9$k$3$H$b$"$j$^$;$s!#(J $B$=$NBe$o$j!"%"%W%j%1!<%7%g%s%W%m%0%i%`$O(J javax.sound.midi $B%Q%C%1!<%8Fb$N(J MidiSystem $B%*%V%8%'%/%H$KMW5a$r9T$$$^$9!#(JMidiSystem $B$O!"$=$NMW5a$rjavax.sound.midi.spi $B%/%i%9$N6q>]%5%V%/%i%9$r;H$C$F$3$l$i$NMW5a$r=hM}$7$^$9!#(J

MIDI $B%U%!%$%k=q$-9~$_%5!<%S%9$NDs6!(J

$BI8=`(J MIDI $B%U%!%$%k7A<0$O(J Type 0$B!"(JType 1$B!"(JType 2 $B$N(J 3 $Bl9g$O!"

MIDI $B%U%!%$%k$N=q$-9~$_5!G=$O(J MidiFileWriter $B$N6q>]%5%V%/%i%9$K$h$C$FDs6!$5$l$^$9!#(J $B$3$NCj>]%/%i%9$O(J javax.sampled.spi.AudioFileWriter $B$H$[$\F1$8$G$9!#(J $B$3$3$G$bF1MM$K!"%a%=%C%I$O=q$-9~$a$k%U%!%$%k$N%?%$%W$rCN$k$?$a$N%/%(%j!<%a%=%C%I$HAudioFileWriter $B$N>l9g$HF1MM$K!"]%a%=%C%I$G$9!#(J

boolean isFileTypeSupported(int fileType)
boolean isFileTypeSupported(int fileType, Sequence sequence) 
1 $B$DL\$N%a%=%C%I$O!";XDj$5$l$?%?%$%W$N(J MIDI $B%U%!%$%k$r%U%!%$%k%i%$%?!<$,=q$-9~$a$k$+$I$&$+$K$D$$$F$N0lHLE*$J>pJs$rDs6!$7$^$9!#(J 2 $B$DL\$N%a%=%C%I$O!"$h$j:Y$+$/FCDj$9$k$b$N$G$9!#(J $B;XDj$5$l$?%?%$%W$N(J MIDI $B%U%!%$%k$KFCDj$N(J Sequence $B$r=q$-9~$a$k$+$I$&$+$rLd$$9g$o$;$^$9!#(J $BDL>o$O!"$3$N(J 2 $B$D$N6q>]%a%=%C%I$O%*!<%P!<%i%$%I$9$kI,MW$O$"$j$^$;$s!#(J $B%G%U%)%k%H$lBP1~$9$k(J 2 $B$D$N%/%(%j!<%a%=%C%I$N0lJ}$r8F$S=P$7$F!"JV$5$l$?7k2L$r7+$jJV$7D4$Y$^$9!#(J $B$3$N(J 2 $B$D$N%/%(%j!<%a%=%C%I$OCj>]%a%=%C%I$J$N$G!"%5%V%/%i%9$K
abstract int[] getMidiFileTypes()
abstract int[] getMidiFileTypes(Sequence sequence)
1 $B$DL\$N%a%=%C%I$O0lHL$K%5%]!<%H$5$l$k$9$Y$F$N%U%!%$%k%?%$%W$NG[Ns$rJV$7$^$9!#(J $B0lHLE*$J

MidiFileWriter $B%5%V%/%i%9$N(J write $B%a%=%C%I$O!"=jDj$N(J Sequence $B$r;XDj$5$l$?%?%$%W$N(J MIDI $B%U%!%$%k$KE,9g$9$k%G!<%?7A<0$KId9f2=$7!"%3!<%I2=$5$l$?%9%H%j!<%`$r%U%!%$%k$^$?$O=PNO%9%H%j!<%`$K=q$-9~$_$^$9!#(J

abstract int write(Sequence in, int fileType,
                   java.io.File out)
abstract int write(Sequence in, int fileType,
                   java.io.OutputStream out)
$B$3$l$r9T$&$K$O!"(Jwrite $B%a%=%C%I$O!"%H%i%C%/$r7+$jJV$7D4$Y$F(J Sequence $B$r9=J82r@O$7!"E,1~$9$k%U%!%$%k%X%C%@$r9=C[$7!"%X%C%@$H%H%i%C%/$r=PNO$K=q$-9~$`I,MW$,$"$j$^$9!#(J MIDI $B%U%!%$%k$N%X%C%@7A<0$OEvA3!"(JMIDI $B;EMM$GDj5A$5$l$F$$$^$9!#(J $B%X%C%@$K4^$^$l$k>pJs$O!"$=$N%U%!%$%k$,(J MIDI $B%U%!%$%k$G$"$k$3$H$r<($9!V%^%8%C%/%J%s%P!pJs(J ($B=|;;7A<0$HJ,2rG=(J) $B$J$I$G$9!#(J MIDI $B%U%!%$%k$N;D$j$NItJ,$O!"(JMIDI $B;EMM$K$h$jDj5A$5$l$?7A<0$N%H%i%C%/%G!<%?$G$9!#(J

$B$3$3$G!"%"%W%j%1!<%7%g%s%W%m%0%i%`!"(JMIDI $B%7%9%F%`!"$*$h$S%5!<%S%9%W%m%P%$%@$,(J MIDI $B%U%!%$%k$N=q$-9~$_$G$I$N$h$&$KO"7H$9$k$+$r4JC1$K@bL@$7$^$9!#(J $BIaDL!"%"%W%j%1!<%7%g%s%W%m%0%i%`$O%U%!%$%k$KJ]B8$9$k$?$a$N(J MIDI Sequence $B$r;}$C$F$$$^$9!#(J $B$3$N%W%m%0%i%`$O!"%U%!%$%k$r=q$-9~$b$&$H$9$kA0$K!"$3$N(J Sequence $B$K;HMQ$G$-$k(J MIDI $B%U%!%$%k7A<0$,%5%]!<%H$5$l$F$$$k$+$I$&$+$r!"(JMidiSystem $B%*%V%8%'%/%H$KLd$$9g$o$;$^$9!#(J MidiSystem.getMidiFileTypes(Sequence) $B%a%=%C%I$O!"%7%9%F%`$,FCDj$N%7!<%1%s%9$r=q$-9~$`$3$H$,$G$-$k$9$Y$F$N(J MIDI $B%U%!%$%k%?%$%W$NG[Ns$rJV$7$^$9!#(J $B$3$N%a%=%C%I$O!"%$%s%9%H!<%k$5$l$F$$$k(J MidiFileWriter $B%5!<%S%9$N$=$l$>$l$KBP1~$9$k(J getMidiFileTypes $B%a%=%C%I$r8F$S=P$7$F!"7k2L$r<}=8$7!"@0?t$NG[Ns$GJV$9$3$H$K$h$j$3$l$r9T$$$^$9!#$3$NG[Ns$O!"=jDj$N(J Sequence $B$KBP1~$9$k$9$Y$F$N%U%!%$%k%?%$%W$N%^%9%?!<%j%9%H$H9M$($k$3$H$,$G$-$^$9!#(J $B%U%!%$%k$K(J Sequence $B$r=q$-9~$`$H$-$O!"%U%!%$%k%?%$%W$rI=$9@0?t$H!"=q$-9~$^$l$k(J Sequence $B$H!"=PNO@h$N%U%!%$%k$r;XDj$9$k0z?t$,(J MidiSystem.write $B$X$N8F$S=P$7$KEO$5$l$^$9!#(JMidiSystem $B$O!";XDj$5$l$?%?%$%W$r;H$C$F=q$-9~$_MW5a$r=hM}$9$k%$%s%9%H!<%k:Q$_(J MidiFileWriter $B$rH=CG$7!"BP1~$9$k(J write $B$rE,@Z$J(J MidiFileWriter $B$K%G%#%9%Q%C%A$7$^$9!#(J

MIDI $B%U%!%$%kFI$_9~$_%5!<%S%9$NDs6!(J

MidiFileReader $BCj>]%/%i%9$O(J javax.sampled.spi.AudioFileReader $B%/%i%9$KN`;w$7$F$$$^$9!#(J $B$I$A$i$N%/%i%9$b(J 2 $B$D$N%*!<%P!<%m!<%I%a%=%C%I$G9=@.$5$l!"$=$l$>$l$,(J File$B!"(JURL$B!"(JInputStream $B$N$$$:$l$+(J 1 $B$D$N0z?t$rMidiFileReader $B$N>l9g!"(JAPI $B$O

abstract MidiFileFormat getMidiFileFormat(java.io.File file)
abstract MidiFileFormat getMidiFileFormat(
    java.io.InputStream stream)
abstract MidiFileFormat getMidiFileFormat(java.net.URL url)
$B6q>]%5%V%/%i%9$K$O!"FCDj$N(J MIDI $B%U%!%$%k(J ($B$^$?$O%9%H%j!<%`$d(J URL) $B$N7A<0$r5-=R$9$k(J MidiFileFormat $B%*%V%8%'%/%H$rJV$9$3$l$i$N%a%=%C%I$rpJs$,4^$^$l$F$$$k$3$H$,>r7o$G$9!#(J $B$3$N>r7o$,K~$?$5$l$J$$>l9g$O!"(JInvalidMidiDataException $B$rH/9T$7$^$9!#(J

$B$b$&(J 1 $B$D$N%*!<%P!<%m!<%I%a%=%C%I$O!"=jDj$N%U%!%$%k!"%9%H%j!<%`!"$^$?$O(J URL $B$+$i(J MIDI Sequence $B$rJV$7$^$9!#(J

abstract Sequence getSequence(java.io.File file)
abstract Sequence getSequence(java.io.InputStream stream)
abstract Sequence getSequence(java.net.URL url)
getSequence $B%a%=%C%I$O(J MIDI $BF~NO%U%!%$%kFb$N%P%$%H$N9=J82r@O$N:n6H$rSequence $B%*%V%8%'%/%H$r9=@.$7$^$9!#(J $B$3$N:n6H$OK\MidiFileWriter.write $B$G;HMQ$5$l$k=hM}$NH?BP$G$9!#(J $B$3$N:n6H$O(J MIDI $B;EMM$GDj$a$i$?(J MIDI $B%U%!%$%k$NFbMF$H(J Java Sound API $B$KDj$a$i$l$?(J Sequence $B%*%V%8%'%/%H$K$O(J 1 $BBP(J 1 $B$NBP1~4X78$,$"$k$?$a!"9=J82r@O$N>\:YgetSequence $B$KEO$5$l$?%U%!%$%k$NCf$N%G!<%?$r%U%!%$%k%j!<%@$,2rl9g(J ($B%U%!%$%k$,2u$l$F$$$?$j!"(JMIDI $B;EMM$K=>$C$F$$$J$$>l9g$J$I(J) $B$O!"(JInvalidMidiDataException $B$rH/9T$7$^$9!#(J

$BFCDj$N(J MIDI $B%G%P%$%9$NDs6!(J

MidiDeviceProvider $B$O!"FCDj%?%$%W(J (1 $B$D$^$?$OJ#?t(J) $B$N(J MIDI $B%G%P%$%9$rDs6!$9$k%U%!%/%H%j$H9M$($k$3$H$,$G$-$^$9!#(J $B$3$N%/%i%9$O!"(JMIDI $B%G%P%$%9$N%$%s%9%?%s%9$rJV$9%a%=%C%I$H!"$=$N%W%m%P%$%@$,Ds6!$G$-$k%G%P%$%9$N

$B$[$+$N(J javax.sound.midi.spi $B%5!<%S%9$HF1MM$K!"%"%W%j%1!<%7%g%s3+H/MidiSystem $B$N%a%=%C%I!"$3$N>l9g$O(J MidiSystem.getMidiDevice $B$H(J MidiSystem.getMidiDeviceInfo $B$X$N8F$S=P$7$r2p$7$F(J MidiDeviceProvider $B%5!<%S%9$K4V@\E*$K%"%/%;%9$7$^$9!#(J MidiDeviceProvider $B$r%5%V%/%i%92=$9$k$3$H$NL\E*$O?7$7$$javax.sound.sampled.spi $B%Q%C%1!<%8$N(J MixerProvider $B$N>l9g$HF1MM$K!"%5!<%S%9$N3+H/l9g!"JV$5$l$?%G%P%$%9$N%/%i%9$O(J javax.sound.sampled.Mixer $B%$%s%?%U%'!<%9$rjavax.sound.midi.MidiDevice $B%$%s%?%U%'!<%9$rSynthesizer $B$d(J Sequencer $B$N$h$&$J(J MidiDevice $B$N%5%V%$%s%?%U%'!<%9$rl9g$b$"$j$^$9!#(J

MidiDeviceProvider $B$NC10l$N%5%V%/%i%9$G$bJ#?t$NMidiDevice $B$rDs6!$9$k$3$H$,$G$-$k$3$H$+$i!"$3$N%/%i%9$N(J getDeviceInfo $B%a%=%C%I$OMxMQ2DG=$JJ#?t$N(J MidiDevices $B%G%P%$%9$rNs5s$7$?(J MidiDevice.Info $B%*%V%8%'%/%H$NG[Ns$rJV$7$^$9!#(J

abstract MidiDevice.Info[] getDeviceInfo()

$BJV$5$l$?G[Ns$K4^$^$l$kMWAG$O(J 1 $B$D$N>l9g$b$"$j$^$9!#(J $B0lHLE*$J%W%m%P%$%@$NMidiSystem $B$O!"%$%s%9%H!<%k:Q$_$N(J MidiDeviceProviders $B$r$9$Y$F7+$jJV$7$F!"$9$Y$F$N%$%s%9%H!<%k:Q$_%G%P%$%9$N%j%9%H$r9=C[$G$-$^$9!#(J $B$=$N8e!"(JMidiSystem $B$O$3$N%j%9%H(J (MidiDevice.Info[] $BG[Ns(J) $B$r%"%W%j%1!<%7%g%s%W%m%0%i%`$KJV$9$3$H$,$G$-$^$9!#(J

MidiDeviceProvider $B$K$O!"]%/%(%j!<%a%=%C%I$b4^$^$l$^$9!#(J

boolean isDeviceSupported(MidiDevice.Info info)
$B$3$N%a%=%C%I$K$h$j!"%7%9%F%`$OFCDj$N

$B:G8e$N(J MidiDeviceProvider $B%a%=%C%I$O!"MW5a$5$l$?%G%P%$%9$rJV$7$^$9!#(J

abstract MidiDevice getDevice(MidiDevice.Info info)
$B$3$N%a%=%C%I$O!":G=i$K0z?t$,$3$N%W%m%P%$%@$,Ds6!$G$-$k%G%P%$%9$r5-=R$7$F$$$k$+$I$&$+$r3NG'$7$J$1$l$P$J$j$^$;$s!#(J $B%G%P%$%9$r5-=R$7$F$$$J$$>l9g$O!"(JIllegalArgumentException $B$r%9%m!<$7$^$9!#(J $B0z?t$KBP1~$9$k%G%P%$%9$,$"$k>l9g$O!"$=$N%G%P%$%9$rJV$7$^$9!#(J

$B%5%&%s%I%P%s%/%U%!%$%kFI$_9~$_%5!<%S%9$NDs6!(J

SoundBank $B$O!"(JSynthesizer $B$K%m!<%I$G$-$k0lO"$N(J Instruments $B$G$9!#(J Instrument ($B%$%s%9%H%%%k%a%s%H(J) $B$O!"FCDj$NA0$H>pJs$NJ8;zNs$b4^$^$l$^$9!#(J SoundBank $B$O(J MIDI $B;EMM$N%P%s%/$K$[$\BP1~$7$F$$$^$9$,!"3HD%@-$,$"$j!"%"%I%l%92DG=$J=89g$G$9!#(JMIDI $B%P%s%/$N=89g$H9M$($kJ}$,E,@Z$G$9!#(J SoundBank $B$H(J Synthesizer $B$rM}2r$9$k$?$a$N>pJs$O!"Bh(J 12 $B>O(J$B!V%5%&%s%I$N9g@.!W(J$B$r;2>H$7$F$/$@$5$$!#(J

SoundbankReader $B$O(J 1 $B$D$N%*!<%P!<%m!<%I%a%=%C%I$+$i@.$j$^$9!#$3$N%a%=%C%I$r%7%9%F%`$,8F$S=P$7$F%5%&%s%I%P%s%/%U%!%$%k$+$i(J Soundbank $B%*%V%8%'%/%H$rFI$_9~$_$^$9!#(J

abstract Soundbank getSoundbank(java.io.File file)
abstract Soundbank getSoundbank(java.io.InputStream stream)
abstract Soundbank getSoundbank(java.net.URL url)

SoundbankReader $B$N6q>]%5%V%/%i%9$O!"%W%m%P%$%@$,Dj5A$7$?FCDj$N(J SoundBank$B!"(JInstrument$B!"(JSynthesizer $B$NSynthesizer $B%/%i%9$K(J SoundBank $B$r%m!<%I$G$-$k$h$&$K$7$^$9!#(J Synthesizer $B$4$H$K9g@.5;=Q$OBg$-$/0[$J$j$^$9!#$3$N$?$a!"(JSynthesizer $B$N9g@.=hM}$K%3%s%H%m!<%k$^$?$O;XDj%G!<%?$rDs6!$9$k(J Instrument $B$^$?$O(J SoundBank $B$KJ]B8$5$l$k%G!<%?$N7A<0$OB?4t$K$o$?$j$^$9!#(J $B9g@.5;=Q$K$h$C$F$O!"I,MW$J%Q%i%a!<%?%G!<%?$,?t%P%$%H$@$1$N>l9g$d!"KDBg$J%5%&%s%I%5%s%W%k$r%Y!<%9$K$7$F$$$k>l9g$,$"$j$^$9!#(J SoundBank $BFb$K$I$N$h$&$J%j%=!<%9$,B8:_$9$k$N$+$O!"$=$l$i$N%m!<%I@h$N(J Synthesizer $B$N@-SoundbankReader $B%5%V%/%i%9$N(J getSoundbank $B%a%=%C%I$NSoundBank $B$K4X$9$k>pJs$X$N%"%/%;%9SoundbankReader $B$NFCDj$N%5%V%/%i%9$O!"(JSoundBank $B%G!<%?$rJ]B8$9$k$?$a$NFCDj$N%U%!%$%k7A<0$rM}2r$7$^$9!#(J $B$3$N%U%!%$%k7A<0$O%Y%s%@!<8GM-$GFH<+7A<0$N>l9g$,$"$j$^$9!#(J

SoundBank $B$OC1$J$k%$%s%?%U%'!<%9$G$9!#(JSoundBank $B%*%V%8%'%/%H$NFbMF$K4X$9$k@)Ls$O$[$H$s$I$"$j$^$;$s!#(J $B$3$N%$%s%?%U%'!<%9$rgetResources$B!"(JgetInstruments$B!"(JgetVendor$B!"(JgetName $B$J$I(J) $B$G$O!"%*%V%8%'%/%H$K4^$^$l$k%G!<%?MW7o$O4K$$$b$N$G$9!#(J $B$?$H$($P!"(JgetResources $B$H(J getInstruments $B$O6uGr$NG[Ns$rJV$9$3$H$,$G$-$^$9!#(J $B%5%V%/%i%92=$5$l$?(J SoundBank $B%*%V%8%'%/%H$N

$B%5%&%s%I%P%s%/%U%!%$%k$O(J Java Sound API $B$N30It$K!"DL>o$O$=$Nl9g$b$"$j$^$9!#(J