public class AudioSystem extends Object
AudioSystemã¯ã©ã¹ã¯ããµã³ããªã³ã°ããããªãŒãã£ãªã»ã·ã¹ãã ã»ãªãœãŒã¹ã®ãšã³ããªã»ãã€ã³ããšããŠåäœããŸãã ãã®ã¯ã©ã¹ã䜿çšãããšãã·ã¹ãã ã«ã€ã³ã¹ããŒã«ããããããµãŒã«ç
§äŒããã³ã¢ã¯ã»ã¹ã§ããŸãã AudioSystemã«ã¯ãå皮圢åŒéã§ã®ãªãŒãã£ãªã»ããŒã¿ã®å€æããªãŒãã£ãªã»ãã¡ã€ã«ãšã¹ããªãŒã éã®å€æãå®è¡ããããã®å€æ°ã®ã¡ãœãããçšæãããŠããŸãã ãŸãããããµãŒãæç€ºçã«æäœããªããŠããçŽæ¥AudioSystemããLineãååŸã§ããã¡ãœããããããŸãã
ããããã£ã䜿çšããŠãç¹å®ã®ã©ã€ã³ã»ã¿ã€ãã®ããã©ã«ãã»ãããµãŒãæå®ã§ããŸãã ã·ã¹ãã ã»ããããã£ãããããã£ã»ãã¡ã€ã«ã®äž¡æ¹ãšã䜿çšå¯èœã§ãã sound.propertiesããããã£ã»ãã¡ã€ã«ã¯ãå®è£
åºæã®å Žæ(éåžžããã¯Javaã€ã³ã¹ããŒã«ã»ãã£ã¬ã¯ããªå
ã®libãã£ã¬ã¯ããª)ããèªã¿åãããŸãã ããããã£ãã·ã¹ãã ã»ããããã£ãšããŠããããããã£ã»ãã¡ã€ã«å
ã«ãååšããå Žåã¯ãã·ã¹ãã ã»ããããã£ãåªå
ãããŸãã ããããã£ããŸã£ããæå®ãããŠããªãå Žåã¯ã䜿çšå¯èœãªããã€ã¹ã®äžããé©åãªããã©ã«ãã»ããããã£ãéžæãããŸãã ããããã£ã»ãã¡ã€ã«ã®æ§æã¯Properties.loadã«æå®ãããŠããŸãã æ¬¡ã®è¡šã¯ã䜿çšå¯èœãªããããã£ã»ããŒãšãããããèªèããã¡ãœããã®ãªã¹ãã§ãã
| ããããã£ã»ã㌠| ã€ã³ã¿ãã§ãŒã¹ | 圱é¿ãåããã¡ãœãã |
|---|---|---|
javax.sound.sampled.Clip |
Clip |
getLine(javax.sound.sampled.Line.Info), getClip() |
javax.sound.sampled.Port |
Port |
getLine(javax.sound.sampled.Line.Info) |
javax.sound.sampled.SourceDataLine |
SourceDataLine |
getLine(javax.sound.sampled.Line.Info), getSourceDataLine(javax.sound.sampled.AudioFormat) |
javax.sound.sampled.TargetDataLine |
TargetDataLine |
getLine(javax.sound.sampled.Line.Info), getTargetDataLine(javax.sound.sampled.AudioFormat) |
mixer providerã¯ã©ã¹ã®å®å
šæå®åã§ãã ãããµãŒåã¯ãMixer.Infoã®getNameã¡ãœããããè¿ãããStringãšãããã³ã°ãããŸãã ã¯ã©ã¹åããããµãŒåã®äžæ¹ãçç¥ããããšãã§ããŸãã ã¯ã©ã¹åã ããæå®ããå Žåãããã·ã¥èšå·ã¯çç¥ã§ããŸãã
ãããã€ãã»ã¯ã©ã¹ãæå®ãããŠããŠãã€ã³ã¹ããŒã«æžãããã€ãããæ£åžžã«ååŸã§ããå Žåããã®ãããã€ãããMixer.Infoãªããžã§ã¯ãã®ãªã¹ããåãåºãããŸãã ããã§ãªãå ŽåããŸãã¯ãããã®ãããµãŒããã以éãããã³ã°ãè¡ããªãå ŽåãgetMixerInfo()ããååŸãããªã¹ãã«ã¯ã䜿çšå¯èœãªãã¹ãŠã®Mixer.Infoãªããžã§ã¯ããå«ãŸããŸãã
ãããµãŒåãæå®ãããŠããå ŽåãçµæãšããŠåŸãããMixer.Infoãªããžã§ã¯ãã®ãªã¹ããæ€çŽ¢ãããŸããäžèŽããååãæã€æåã®ãªããžã§ã¯ã(察å¿ããã©ã€ã³ã»ã€ã³ã¿ãã§ãŒã¹ãæäŸããMixerãæã€ãã®)ãè¿ãããŸãã äžèŽããMixer.Infoãªããžã§ã¯ããèŠã€ãããªãå ŽåããŸãã¯ãããµãŒåãæå®ãããŠããªãå ŽåãçµæãšããŠåŸããããªã¹ãã®æåã®ãããµãŒ(ããããã®ã©ã€ã³ã»ã€ã³ã¿ãã§ãŒã¹ãæäŸ)ãè¿ãããŸãã ããšãã°ã"com.sun.media.sound.MixerProvider#SunClip"ãå€ã«æã€ããããã£javax.sound.sampled.Clipã§ã¯ãClipã€ã³ã¹ã¿ã³ã¹èŠæ±æã«getLineãåŒã³åºããããšãã«ã次ã®ãããªçµæãåŸãããŸã: ã€ã³ã¹ããŒã«æžãããµãŒã»ãããã€ãã®ãªã¹ãå
ã«ã¯ã©ã¹com.sun.media.sound.MixerProviderãååšããå Žåã"SunClip"ãšããååãæã€æåã®ãããµãŒã«å«ãŸããæåã®Clipãè¿ãããŸãã 該åœãããã®ãèŠã€ãããªãå Žåã¯ãååãšã¯é¢ä¿ãªããæå®ããããããã€ãã®æåã®ãããµãŒããæåã®Clipãè¿ãããŸãã ååšããªãå Žåã¯ãgetMixerInfoã«ãã£ãŠè¿ããããã¹ãŠã®ãããµãŒã®ãªã¹ãã«å«ãŸãã"SunClip"ãšããååã®æåã®Mixerããæåã®Clipãè¿ãããŸãããããèŠã€ãããªãå Žåã¯ããã¹ãŠã®ãããµãŒã®ãªã¹ãå
ã®æåã®Mixerã®æåã®Clipãè¿ãããŸãã ããã«ã倱æããå Žåã¯ãIllegalArgumentExceptionãã¹ããŒãããŸãã
AudioFormatãAudioInputStreamãMixerãLineãLine.Info| 修食åãšå | ãã£ãŒã«ã | 説æ |
|---|---|---|
static int |
NOT_SPECIFIED |
äžæãªæ°å€ãè¡šãæŽæ°ã
|
| 修食åãšå | ã¡ãœãã | 説æ |
|---|---|---|
static AudioFileFormat |
getAudioFileFormat(File file) |
æå®ããã
Fileã®ãªãŒãã£ãªã»ãã¡ã€ã«åœ¢åŒãååŸããŸãã |
static AudioFileFormat |
getAudioFileFormat(InputStream stream) |
æå®ãããå
¥åã¹ããªãŒã ã®ãªãŒãã£ãªã»ãã¡ã€ã«åœ¢åŒãååŸããŸãã
|
static AudioFileFormat |
getAudioFileFormat(URL url) |
æå®ãããURLã®ãªãŒãã£ãªã»ãã¡ã€ã«åœ¢åŒãååŸããŸãã
|
static AudioFileFormat.Type[] |
getAudioFileTypes() |
ã·ã¹ãã ããã¡ã€ã«æžèŸŒã¿ãµããŒããæäŸãããã¡ã€ã«ã»ã¿ã€ããååŸããŸãã
|
static AudioFileFormat.Type[] |
getAudioFileTypes(AudioInputStream stream) |
æå®ããããªãŒãã£ãªå
¥åã¹ããªãŒã ããã·ã¹ãã ãæžã蟌ãããšãã§ãããã¡ã€ã«ã»ã¿ã€ããååŸããŸãã
|
static AudioInputStream |
getAudioInputStream(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream) |
æå®ããããªãŒãã£ãªå
¥åã¹ããªãŒã ã倿ããŠã瀺ããããšã³ã³ãŒãã£ã³ã°ã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ãååŸããŸãã
|
static AudioInputStream |
getAudioInputStream(AudioFormat targetFormat, AudioInputStream sourceStream) |
æå®ããããªãŒãã£ãªå
¥åã¹ããªãŒã ã倿ããŠã瀺ããã圢åŒã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ãååŸããŸãã
|
static AudioInputStream |
getAudioInputStream(File file) |
æå®ããã
FileãããªãŒãã£ãªå
¥åã¹ããªãŒã ãååŸããŸãã |
static AudioInputStream |
getAudioInputStream(InputStream stream) |
æå®ãããå
¥åã¹ããªãŒã ãããªãŒãã£ãªå
¥åã¹ããªãŒã ãååŸããŸãã
|
static AudioInputStream |
getAudioInputStream(URL url) |
æå®ãããURLã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ãååŸããŸãã
|
static Clip |
getClip() |
ãªãŒãã£ãªã»ãã¡ã€ã«ããªãŒãã£ãªã»ã¹ããªãŒã ã®åçã«äœ¿çšã§ããã¯ãªãããååŸããŸãã
|
static Clip |
getClip(Mixer.Info mixerInfo) |
ãªãŒãã£ãªã»ãã¡ã€ã«ããªãŒãã£ãªã»ã¹ããªãŒã ã®åçã«äœ¿çšã§ããã¯ãªãããæå®ã®ãããµãŒãããååŸããŸãã
|
static Line |
getLine(Line.Info info) |
æå®ããã
Line.Infoãªããžã§ã¯ãã®èšè¿°ã«äžèŽããã©ã€ã³ãååŸããŸãã |
static Mixer |
getMixer(Mixer.Info info) |
èŠæ±ããããªãŒãã£ãªã»ãããµãŒãååŸããŸãã
|
static Mixer.Info[] |
getMixerInfo() |
ã·ã¹ãã ã«çŸåšã€ã³ã¹ããŒã«ãããŠãããªãŒãã£ãªã»ãããµãŒã®ã»ããã衚ããããµãŒæ
å ±ãªããžã§ã¯ãã®é
åãååŸããŸãã
|
static SourceDataLine |
getSourceDataLine(AudioFormat format) |
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãªãŒãã£ãªã»ããŒã¿ãåçããããã«äœ¿çšãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã |
static SourceDataLine |
getSourceDataLine(AudioFormat format, Mixer.Info mixerinfo) |
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãMixer.Infoãªããžã§ã¯ãã«ãã£ãŠæå®ããããããµãŒã«ãã£ãŠæäŸããããªãŒãã£ãªã»ããŒã¿ã®åçã«äœ¿çšã§ãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã |
static Line.Info[] |
getSourceLineInfo(Line.Info info) |
ã€ã³ã¹ããŒã«ãããŠãããããµãŒã§ãµããŒããããç¹å®ã®ã¿ã€ãã®ãœãŒã¹ã»ã©ã€ã³ã«é¢ããæ
å ±ãååŸããŸãã
|
static TargetDataLine |
getTargetDataLine(AudioFormat format) |
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãªãŒãã£ãªã»ããŒã¿ãé²é³ããããã«äœ¿çšã§ããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã |
static TargetDataLine |
getTargetDataLine(AudioFormat format, Mixer.Info mixerinfo) |
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãMixer.Infoãªããžã§ã¯ãã«ãã£ãŠæå®ããããããµãŒã«ãã£ãŠæäŸããããªãŒãã£ãªã»ããŒã¿ã®é²é³ã«äœ¿çšã§ããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã |
static AudioFormat.Encoding[] |
getTargetEncodings(AudioFormat.Encoding sourceEncoding) |
ã€ã³ã¹ããŒã«ããã圢åŒå€æã®ã»ããã䜿çšããŠãæå®ããããšã³ã³ãŒãã£ã³ã°ã§ãªãŒãã£ãªå
¥åã¹ããªãŒã ããã·ã¹ãã ãååŸã§ãããšã³ã³ãŒãã£ã³ã°ãååŸããŸãã
|
static AudioFormat.Encoding[] |
getTargetEncodings(AudioFormat sourceFormat) |
ã€ã³ã¹ããŒã«ããã圢åŒå€æã®ã»ããã䜿çšããŠãæå®ããã圢åŒã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ããã·ã¹ãã ãååŸã§ãããšã³ã³ãŒãã£ã³ã°ãååŸããŸãã
|
static AudioFormat[] |
getTargetFormats(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat) |
ç¹å®ã®ãšã³ã³ãŒãã£ã³ã°ãæã€åœ¢åŒãããã³ã€ã³ã¹ããŒã«ããã圢åŒå€æã®ã»ããã䜿çšããŠæå®ããã圢åŒã®ã¹ããªãŒã ããã·ã¹ãã ãååŸã§ãã圢åŒãååŸããŸãã
|
static Line.Info[] |
getTargetLineInfo(Line.Info info) |
ã€ã³ã¹ããŒã«ãããŠãããããµãŒã§ãµããŒããããç¹å®ã®ã¿ã€ãã®ã¿ãŒã²ããã»ã©ã€ã³ã«é¢ããæ
å ±ãååŸããŸãã
|
static boolean |
isConversionSupported(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat) |
æå®ããããšã³ã³ãŒãã£ã³ã°ã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ããæå®ããã圢åŒã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ããååŸã§ãããã©ããã瀺ããŸãã
|
static boolean |
isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat) |
æå®ããã圢åŒã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ããå¥ã®æå®ããã圢åŒã®ãªãŒãã£ãªå
¥åã¹ããªãŒã ããååŸã§ãããã©ããã瀺ããŸãã
|
static boolean |
isFileTypeSupported(AudioFileFormat.Type fileType) |
æå®ããããã¡ã€ã«ã»ã¿ã€ãã®ãã¡ã€ã«æžèŸŒã¿ãµããŒããã·ã¹ãã ãæäŸããŠãããã©ããã瀺ããŸãã
|
static boolean |
isFileTypeSupported(AudioFileFormat.Type fileType, AudioInputStream stream) |
æå®ããããã¡ã€ã«ã»ã¿ã€ãã®ãªãŒãã£ãªã»ãã¡ã€ã«ãã瀺ããããªãŒãã£ãªå
¥åã¹ããªãŒã ããæžèŸŒã¿ã§ãããã©ããã瀺ããŸãã
|
static boolean |
isLineSupported(Line.Info info) |
æå®ããã
Line.Infoãªããžã§ã¯ãã«äžèŽããã©ã€ã³ãã·ã¹ãã ããµããŒãããŠãããã©ããã瀺ããŸãã |
static int |
write(AudioInputStream stream, AudioFileFormat.Type fileType, File out) |
æå®ããããã¡ã€ã«ã»ã¿ã€ãã®ãªãŒãã£ãªã»ãã¡ã€ã«ã衚ããã€ãã®ã¹ããªãŒã ããæå®ãããå€éšãã¡ã€ã«ãžæžã蟌ã¿ãŸãã
|
static int |
write(AudioInputStream stream, AudioFileFormat.Type fileType, OutputStream out) |
æå®ããããã¡ã€ã«ã»ã¿ã€ãã®ãªãŒãã£ãªã»ãã¡ã€ã«ã衚ããã€ãã®ã¹ããªãŒã ããæå®ãããåºåã¹ããªãŒã ãžæžã蟌ã¿ãŸãã
|
public static final int NOT_SPECIFIED
NOT_SPECIFIEDã®å€ãåãå
¥ããŸãã ããã¥ã¡ã³ãã«ç€ºãããŠããããã«ãã»ãã®ã¡ãœããã§ããã®å€ãåãå
¥ããããè¿ãããããå ŽåããããŸãã public static Mixer.Info[] getMixerInfo()
getMixer(javax.sound.sampled.Mixer.Info)public static Mixer getMixer(Mixer.Info info)
info - å¿
èŠãªãããµãŒã衚ãMixer.Infoãªããžã§ã¯ãããŸãã¯ã·ã¹ãã ã®ããã©ã«ãã»ãããµãŒã®å Žåã¯nullSecurityException - ã»ãã¥ãªãã£äžã®å¶çŽã®ããã«èŠæ±ããããããµãŒã䜿çšã§ããªãå ŽåIllegalArgumentException - æ
å ±ãªããžã§ã¯ããã·ã¹ãã ã«ã€ã³ã¹ããŒã«ããããããµãŒã衚ããªãå ŽågetMixerInfo()public static Line.Info[] getSourceLineInfo(Line.Info info)
info - æ
å ±ãèŠæ±ãããã©ã€ã³ã®çš®é¡ãæå®ããLine.Infoãªããžã§ã¯ãLine.Infoãªããžã§ã¯ãã®é
åã äžèŽãããœãŒã¹ã»ã©ã€ã³ããµããŒããããŠããªãå Žåãé·ã0ã®é
åãè¿ãããã Mixer.getSourceLineInfo(Line.Info)public static Line.Info[] getTargetLineInfo(Line.Info info)
info - æ
å ±ãèŠæ±ãããã©ã€ã³ã®çš®é¡ãæå®ããLine.Infoãªããžã§ã¯ãLine.Infoãªããžã§ã¯ãã®é
åã äžèŽããã¿ãŒã²ããã»ã©ã€ã³ããµããŒããããŠããªãå Žåãé·ã0ã®é
åãè¿ãããã Mixer.getTargetLineInfo(Line.Info)public static boolean isLineSupported(Line.Info info)
Line.Infoãªããžã§ã¯ãã«äžèŽããã©ã€ã³ãã·ã¹ãã ããµããŒãããŠãããã©ããã瀺ããŸãã ã©ã€ã³ã¯ãã€ã³ã¹ããŒã«ããããããµãŒããµããŒãããå Žåã¯ãµããŒããããŸãã info - ãµããŒãã®æç¡ãç
§äŒãããã©ã€ã³ãèšè¿°ããLine.Infoãªããžã§ã¯ãtrueãããã§ãªãå Žåã¯falseMixer.isLineSupported(Line.Info)public static Line getLine(Line.Info info) throws LineUnavailableException
Line.Infoãªããžã§ã¯ãã®èšè¿°ã«äžèŽããã©ã€ã³ãååŸããŸãã
DataLineãèŠæ±ããããã€infoãDataLine.Infoã®ã€ã³ã¹ã¿ã³ã¹ã§ãã£ãŠã1ã€ä»¥äžã®å®å
šæå®ã®ãªãŒãã£ãªåœ¢åŒãæå®ããå ŽåãæåŸã®ãã®ãè¿ãããDataLineã®ããã©ã«ãã®åœ¢åŒã«ãªããŸãã
ã·ã¹ãã ã»ããããã£javax.sound.sampled.Clipãjavax.sound.sampled.Portãjavax.sound.sampled.SourceDataLineãããã³javax.sound.sampled.TargetDataLineãå®çŸ©ãããŠããå ŽåããŸãã¯ãããããsound.propertiesããã¡ã€ã«å
ã«å®çŸ©ãããŠããå Žåã¯ããããã¯ããã©ã«ãã»ã©ã€ã³ã®ååŸã«äœ¿çšãããŸãã 詳现ã¯ãclass descriptionãåç
§ããŠãã ããã ããããã®ããããã£ãèšå®ãããŠããªãå ŽåããŸãã¯ããããã£ã§èŠæ±ããããããµãŒãã€ã³ã¹ããŒã«ãããŠããªãããèŠæ±ãããã©ã€ã³ãæäŸããªãå Žåãã€ã³ã¹ã¿ã³ã¹åããããã¹ãŠã®ãããµãŒããèŠæ±ãããã©ã€ã³ã»ã¿ã€ãã«ã€ããŠç
§äŒãããŸãã èŠæ±ãããã©ã€ã³ã»ã¿ã€ããæäŸããæåã®ãããµãŒããã©ã€ã³ãè¿ãããŸãã
info - å¿
èŠãªçš®é¡ã®ã©ã€ã³ãèšè¿°ããLine.Infoãªããžã§ã¯ãLineUnavailableException - ãªãœãŒã¹ã®å¶çŽã®ããã«ãäžèŽããã©ã€ã³ã䜿çšã§ããªãå ŽåSecurityException - ã»ãã¥ãªãã£äžã®å¶çŽã®ããã«ãäžèŽããã©ã€ã³ã䜿çšã§ããªãå ŽåIllegalArgumentException - ã€ã³ã¹ããŒã«ããããããµãŒãä»ããŠãæå®ãããLine.Infoãªããžã§ã¯ããšäžèŽããã©ã€ã³ã1ã€ãã·ã¹ãã ããµããŒãããªãå Žåpublic static Clip getClip() throws LineUnavailableException
Clipãªããžã§ã¯ãããµããŒãããã·ã¹ãã å
ã«ã€ã³ã¹ããŒã«ãããä»»æã®ãããµãŒããæäŸãããŸãã
è¿ãããã¯ãªããã¯ãopen(AudioFormat)ãŸãã¯open(AudioInputStream)ã¡ãœããã§éãããŠããå¿
èŠããããŸãã
ããã¯ãgetMixerãšgetLineãå
éšäœ¿çšããé«åºŠãªã¡ãœããã§ãã
ã·ã¹ãã ã»ããããã£javax.sound.sampled.Clipãå®çŸ©ãããŠããå ŽåããŸãã¯ãsound.propertiesããã¡ã€ã«å
ã«å®çŸ©ãããŠããå Žåããã®ããããã£ã¯ãããã©ã«ãã»ã¯ãªããã®ååŸã«äœ¿çšãããŸãã 詳现ã¯ãclass descriptionãåç
§ããŠãã ããã
LineUnavailableException - ãªãœãŒã¹ã®å¶çŽã®ããã«ãã¯ãªããã»ãªããžã§ã¯ãã䜿çšã§ããªãå ŽåSecurityException - ã»ãã¥ãªãã£ã®å¶çŽã®ããã«ãã¯ãªããã»ãªããžã§ã¯ãã䜿çšã§ããªãå ŽåIllegalArgumentException - ã·ã¹ãã ãä»»æã®ã€ã³ã¹ããŒã«æžã¿ãããµãŒã§1ã€ä»¥äžã®ã¯ãªããã»ã€ã³ã¹ã¿ã³ã¹ããµããŒãããªãå ŽågetClip(Mixer.Info)public static Clip getClip(Mixer.Info mixerInfo) throws LineUnavailableException
è¿ãããã¯ãªããã¯ãopen(AudioFormat)ãŸãã¯open(AudioInputStream)ã¡ãœããã§éãããŠããå¿
èŠããããŸãã
ããã¯ãgetMixerãšgetLineãå
éšäœ¿çšããé«åºŠãªã¡ãœããã§ãã
mixerInfo - å¿
èŠãªãããµãŒã衚ãMixer.Infoãªããžã§ã¯ãããŸãã¯ã·ã¹ãã ã®ããã©ã«ãã»ãããµãŒã®å Žåã¯nullLineUnavailableException - ãªãœãŒã¹ã®å¶çŽã®ããã«ããã®ãããµãŒããã¯ãªããã䜿çšã§ããªãå ŽåSecurityException - ã»ãã¥ãªãã£ã®å¶çŽã®ããã«ããã®ãããµãŒããã¯ãªããã䜿çšã§ããªãå ŽåIllegalArgumentException - ã·ã¹ãã ãæå®ã®ãããµãŒã§1ã€ä»¥äžã®ã¯ãªããããµããŒãããªãå ŽågetClip()public static SourceDataLine getSourceDataLine(AudioFormat format) throws LineUnavailableException
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãªãŒãã£ãªã»ããŒã¿ãåçããããã«äœ¿çšãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã è¿ãããã©ã€ã³ã¯ãããã©ã«ãã®ã·ã¹ãã ã»ãããµãŒããæäŸãããŸãããŸãã¯ãäžèŽããSourceDataLineãªããžã§ã¯ãããµããŒãããä»»æã®ã€ã³ã¹ããŒã«æžãããµãŒããæäŸãããŸãã
è¿ãããã©ã€ã³ã¯ãopen(AudioFormat)ãŸãã¯open(AudioFormat, int)ã¡ãœããã§éãããŠããå¿
èŠããããŸãã
ããã¯ãgetMixerãšgetLineãå
éšäœ¿çšããé«åºŠãªã¡ãœããã§ãã
è¿ãããSourceDataLineã®ããã©ã«ãã®ãªãŒãã£ãªåœ¢åŒã¯ãformatã§åæåãããŸãã
ã·ã¹ãã ã»ããããã£javax.sound.sampled.SourceDataLineãå®çŸ©ãããŠããå ŽåããŸãã¯ãsound.propertiesããã¡ã€ã«å
ã«å®çŸ©ãããŠããå Žåããã®ããããã£ã¯ãããã©ã«ãã®ãœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ã®ååŸã«äœ¿çšãããŸãã 詳现ã¯ãclass descriptionãåç
§ããŠãã ããã
format - è¿ãããã©ã€ã³ã®ãµããŒã察象ãªãŒãã£ãªåœ¢åŒãæå®ããAudioFormatãªããžã§ã¯ãããã®ä»ã®ãªãŒãã£ãªåœ¢åŒã®å Žåã¯nullSourceDataLineãªããžã§ã¯ãLineUnavailableException - ãªãœãŒã¹ã®å¶çŽã®ããã«ãäžèŽãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåSecurityException - ã»ãã¥ãªãã£äžã®å¶çŽã®ããã«ãäžèŽãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåIllegalArgumentException - ã·ã¹ãã ããä»»æã®ã€ã³ã¹ããŒã«æžã¿ãããµãŒã«ããæå®ã®ãªãŒãã£ãªåœ¢åŒããµããŒããããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ã1ã€ä»¥äžãµããŒãããªãå ŽågetSourceDataLine(AudioFormat, Mixer.Info)public static SourceDataLine getSourceDataLine(AudioFormat format, Mixer.Info mixerinfo) throws LineUnavailableException
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãMixer.Infoãªããžã§ã¯ãã«ãã£ãŠæå®ããããããµãŒã«ãã£ãŠæäŸããããªãŒãã£ãªã»ããŒã¿ã®åçã«äœ¿çšã§ãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã
è¿ãããã©ã€ã³ã¯ãopen(AudioFormat)ãŸãã¯open(AudioFormat, int)ã¡ãœããã§éãããŠããå¿
èŠããããŸãã
ããã¯ãgetMixerãšgetLineãå
éšäœ¿çšããé«åºŠãªã¡ãœããã§ãã
è¿ãããSourceDataLineã®ããã©ã«ãã®ãªãŒãã£ãªåœ¢åŒã¯ãformatã§åæåãããŸãã
format - è¿ãããã©ã€ã³ã®ãµããŒã察象ãªãŒãã£ãªåœ¢åŒãæå®ããAudioFormatãªããžã§ã¯ãããã®ä»ã®ãªãŒãã£ãªåœ¢åŒã®å Žåã¯nullmixerinfo - å¿
èŠãªãããµãŒã衚ãMixer.Infoãªããžã§ã¯ãããŸãã¯ã·ã¹ãã ã®ããã©ã«ãã»ãããµãŒã®å Žåã¯nullSourceDataLineãªããžã§ã¯ãLineUnavailableException - ãªãœãŒã¹ã®å¶çŽã®ããã«ãæå®ã®ãããµãŒããäžèŽãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåSecurityException - ã»ãã¥ãªãã£äžã®å¶çŽã®ããã«ãæå®ã®ãããµãŒããäžèŽãããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåIllegalArgumentException - æå®ã®ãããµãŒããæå®ã®ãªãŒãã£ãªåœ¢åŒããµããŒããããœãŒã¹ã»ããŒã¿ã»ã©ã€ã³ã1ã€ä»¥äžãµããŒãããªãå ŽågetSourceDataLine(AudioFormat)public static TargetDataLine getTargetDataLine(AudioFormat format) throws LineUnavailableException
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãªãŒãã£ãªã»ããŒã¿ãé²é³ããããã«äœ¿çšã§ããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã è¿ãããã©ã€ã³ã¯ãããã©ã«ãã®ã·ã¹ãã ã»ãããµãŒããæäŸãããŸãããŸãã¯ãäžèŽããTargetDataLineãªããžã§ã¯ãããµããŒãããä»»æã®ã€ã³ã¹ããŒã«æžãããµãŒããæäŸãããŸãã
è¿ãããã©ã€ã³ã¯ãopen(AudioFormat)ãŸãã¯open(AudioFormat, int)ã¡ãœããã§éãããŠããå¿
èŠããããŸãã
ããã¯ãgetMixerãšgetLineãå
éšäœ¿çšããé«åºŠãªã¡ãœããã§ãã
è¿ãããTargetDataLineã®ããã©ã«ãã®ãªãŒãã£ãªåœ¢åŒã¯ãformatã§åæåãããŸãã
ã·ã¹ãã ã»ããããã£javax.sound.sampled.TargetDataLineãå®çŸ©ãããŠããå ŽåããŸãã¯ãsound.propertiesããã¡ã€ã«å
ã«å®çŸ©ãããŠããå Žåããã®ããããã£ã¯ãããã©ã«ãã®ã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ã®ååŸã«äœ¿çšãããŸãã 詳现ã¯ãclass descriptionãåç
§ããŠãã ããã
format - è¿ãããã©ã€ã³ã®ãµããŒã察象ãªãŒãã£ãªåœ¢åŒãæå®ããAudioFormatãªããžã§ã¯ãããã®ä»ã®ãªãŒãã£ãªåœ¢åŒã®å Žåã¯nullTargetDataLineãªããžã§ã¯ãLineUnavailableException - ãªãœãŒã¹ã®å¶çŽã®ããã«ãäžèŽããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåSecurityException - ã»ãã¥ãªãã£ã®å¶çŽã®ããã«ãäžèŽããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåIllegalArgumentException - ã·ã¹ãã ããä»»æã®ã€ã³ã¹ããŒã«æžã¿ãããµãŒã«ããæå®ã®ãªãŒãã£ãªåœ¢åŒããµããŒãããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ã1ã€ä»¥äžãµããŒãããªãå ŽågetTargetDataLine(AudioFormat, Mixer.Info)ãAudioPermissionpublic static TargetDataLine getTargetDataLine(AudioFormat format, Mixer.Info mixerinfo) throws LineUnavailableException
AudioFormatãªããžã§ã¯ãã§æå®ããã圢åŒã§ãMixer.Infoãªããžã§ã¯ãã«ãã£ãŠæå®ããããããµãŒã«ãã£ãŠæäŸããããªãŒãã£ãªã»ããŒã¿ã®é²é³ã«äœ¿çšã§ããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ãååŸããŸãã
è¿ãããã©ã€ã³ã¯ãopen(AudioFormat)ãŸãã¯open(AudioFormat, int)ã¡ãœããã§éãããŠããå¿
èŠããããŸãã
ããã¯ãgetMixerãšgetLineãå
éšäœ¿çšããé«åºŠãªã¡ãœããã§ãã
è¿ãããTargetDataLineã®ããã©ã«ãã®ãªãŒãã£ãªåœ¢åŒã¯ãformatã§åæåãããŸãã
format - è¿ãããã©ã€ã³ã®ãµããŒã察象ãªãŒãã£ãªåœ¢åŒãæå®ããAudioFormatãªããžã§ã¯ãããã®ä»ã®ãªãŒãã£ãªåœ¢åŒã®å Žåã¯nullmixerinfo - å¿
èŠãªãããµãŒã衚ãMixer.Infoãªããžã§ã¯ãããŸãã¯ã·ã¹ãã ã®ããã©ã«ãã»ãããµãŒã®å Žåã¯nullTargetDataLineãªããžã§ã¯ãLineUnavailableException - ãªãœãŒã¹ã®å¶çŽã®ããã«ãæå®ã®ãããµãŒããäžèŽããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåSecurityException - ã»ãã¥ãªãã£ã®å¶çŽã®ããã«ãæå®ã®ãããµãŒããäžèŽããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ã䜿çšã§ããªãå ŽåIllegalArgumentException - æå®ã®ãããµãŒããæå®ã®ãªãŒãã£ãªåœ¢åŒããµããŒãããã¿ãŒã²ããã»ããŒã¿ã»ã©ã€ã³ã1ã€ä»¥äžãµããŒãããªãå ŽågetTargetDataLine(AudioFormat)ãAudioPermissionpublic static AudioFormat.Encoding[] getTargetEncodings(AudioFormat.Encoding sourceEncoding)
sourceEncoding - 倿ãµããŒãã«ã€ããŠç
§äŒãããšã³ã³ãŒãã£ã³ã°sourceEncodingããµããŒããããŠããªãå Žåãé·ã0ã®é
åãè¿ãããã ããã§ãªãå Žåãé
åé·ã¯1以äžã§ãsourceEncodingã衚ã(倿ãªã)ã public static AudioFormat.Encoding[] getTargetEncodings(AudioFormat sourceFormat)
sourceFormat - 倿ã«ã€ããŠç
§äŒãããªãŒãã£ãªåœ¢åŒsourceFormatããµããŒããããŠããªãå Žåãé·ã0ã®é
åãè¿ãããã ããã§ãªãå Žåãé
åé·ã¯1以äžã§ãsourceFormatã®ãšã³ã³ãŒãã£ã³ã°ã衚ã(倿ãªã)ã public static boolean isConversionSupported(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
targetEncoding - 倿åŸã®å¿
èŠãªãšã³ã³ãŒãã£ã³ã°sourceFormat - 倿åã®ãªãŒãã£ãªåœ¢åŒtrueãããã§ãªãå Žåã¯falsepublic static AudioInputStream getAudioInputStream(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream)
targetEncoding - 倿åŸã®å¿
èŠãªãšã³ã³ãŒãã£ã³ã°sourceStream - 倿ãããã¹ããªãŒã IllegalArgumentException - 倿ããµããŒããããŠããªãå ŽågetTargetEncodings(AudioFormat.Encoding), getTargetEncodings(AudioFormat), isConversionSupported(AudioFormat.Encoding, AudioFormat), getAudioInputStream(AudioFormat, AudioInputStream)public static AudioFormat[] getTargetFormats(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
targetEncoding - 倿åŸã®å¿
èŠãªãšã³ã³ãŒãã£ã³ã°sourceFormat - 倿åã®ãªãŒãã£ãªåœ¢åŒpublic static boolean isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat)
targetFormat - 倿åŸã®å¿
èŠãªãªãŒãã£ãªåœ¢åŒsourceFormat - 倿åã®ãªãŒãã£ãªåœ¢åŒtrueãããã§ãªãå Žåã¯falsepublic static AudioInputStream getAudioInputStream(AudioFormat targetFormat, AudioInputStream sourceStream)
targetFormat - 倿åŸã®å¿
èŠãªãªãŒãã£ãªåœ¢åŒsourceStream - 倿ãããã¹ããªãŒã IllegalArgumentException - 倿ããµããŒããããŠããªãå Žå#getTargetEncodings(AudioFormat)#ãåç
§getTargetFormats(AudioFormat.Encoding, AudioFormat), isConversionSupported(AudioFormat, AudioFormat), getAudioInputStream(AudioFormat.Encoding, AudioInputStream)public static AudioFileFormat getAudioFileFormat(InputStream stream) throws UnsupportedAudioFileException, IOException
IOExceptionã§å€±æããããšããããŸãã stream - ãã¡ã€ã«åœ¢åŒæ
å ±ãæœåºããå
¥åã¹ããªãŒã AudioFileFormatãªããžã§ã¯ãUnsupportedAudioFileException - ã·ã¹ãã ãèªèããæå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ãã¹ããªãŒã ã瀺ããªãå ŽåIOException - å
¥åºåäŸå€ãçºçããå ŽåInputStream.markSupported(), InputStream.mark(int)public static AudioFileFormat getAudioFileFormat(URL url) throws UnsupportedAudioFileException, IOException
url - ãã¡ã€ã«åœ¢åŒæ
å ±ãæœåºããURLAudioFileFormatãªããžã§ã¯ãUnsupportedAudioFileException - ã·ã¹ãã ãèªèããæå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ãURLã瀺ããªãå ŽåIOException - å
¥åºåäŸå€ãçºçããå Žåpublic static AudioFileFormat getAudioFileFormat(File file) throws UnsupportedAudioFileException, IOException
Fileã®ãªãŒãã£ãªã»ãã¡ã€ã«åœ¢åŒãååŸããŸãã Fileã¯æå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ã瀺ãå¿
èŠããããŸãã file - ãã¡ã€ã«åœ¢åŒæ
å ±ãæœåºããFileAudioFileFormatãªããžã§ã¯ãUnsupportedAudioFileException - ã·ã¹ãã ãèªèããæå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ãFileã瀺ããªãå ŽåIOException - å
¥åºåäŸå€ãçºçããå Žåpublic static AudioInputStream getAudioInputStream(InputStream stream) throws UnsupportedAudioFileException, IOException
IOExceptionã§å€±æããããšããããŸãã stream - AudioInputStreamãæ§ç¯ããå
¥åã¹ããªãŒã AudioInputStreamãªããžã§ã¯ããUnsupportedAudioFileException - ã·ã¹ãã ãèªèããæå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ãã¹ããªãŒã ã瀺ããªãå ŽåIOException - å
¥åºåäŸå€ãçºçããå ŽåInputStream.markSupported(), InputStream.mark(int)public static AudioInputStream getAudioInputStream(URL url) throws UnsupportedAudioFileException, IOException
url - AudioInputStreamãæ§ç¯ããURLAudioInputStreamãªããžã§ã¯ãUnsupportedAudioFileException - ã·ã¹ãã ãèªèããæå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ãURLã瀺ããªãå ŽåIOException - å
¥åºåäŸå€ãçºçããå Žåpublic static AudioInputStream getAudioInputStream(File file) throws UnsupportedAudioFileException, IOException
FileãããªãŒãã£ãªå
¥åã¹ããªãŒã ãååŸããŸãã Fileã¯æå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ã瀺ãå¿
èŠããããŸãã file - AudioInputStreamãæ§ç¯ããFileFileã瀺ããªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ã«åºã¥ãAudioInputStreamãªããžã§ã¯ãUnsupportedAudioFileException - ã·ã¹ãã ãèªèããæå¹ãªãªãŒãã£ãªã»ãã¡ã€ã«ã»ããŒã¿ãFileã瀺ããªãå ŽåIOException - å
¥åºåäŸå€ãçºçããå Žåpublic static AudioFileFormat.Type[] getAudioFileTypes()
public static boolean isFileTypeSupported(AudioFileFormat.Type fileType)
fileType - æžèŸŒã¿æ©èœãç
§äŒããããã¡ã€ã«ã»ã¿ã€ãtrueãããã§ãªãå Žåã¯falsepublic static AudioFileFormat.Type[] getAudioFileTypes(AudioInputStream stream)
stream - ãªãŒãã£ãªã»ãã¡ã€ã«ã»ã¿ã€ãã®ãµããŒããç
§äŒããããªãŒãã£ãªå
¥åã¹ããªãŒã public static boolean isFileTypeSupported(AudioFileFormat.Type fileType, AudioInputStream stream)
fileType - æžèŸŒã¿æ©èœãç
§äŒããããã¡ã€ã«ã»ã¿ã€ãstream - ãã¡ã€ã«æžèŸŒã¿ãµããŒããç
§äŒãããã¹ããªãŒã trueãããã§ãªãå Žåã¯falsepublic static int write(AudioInputStream stream, AudioFileFormat.Type fileType, OutputStream out) throws IOException
AudioSystem.NOT_SPECIFIEDã®å Žåããã®ãã¡ã€ã«ãæžã蟌ãããšãããšãIOExceptionã§å€±æããŸãã stream - ãã¡ã€ã«ã«æžã蟌ãŸãããªãŒãã£ãªã»ããŒã¿ãå«ããªãŒãã£ãªå
¥åã¹ããªãŒã fileType - æžã蟌ããªãŒãã£ãªã»ãã¡ã€ã«ã®çš®é¡out - ãã¡ã€ã«ã»ããŒã¿ãæžã蟌ãŸããã¹ããªãŒã IOException - å
¥åºåäŸå€ãçºçããå ŽåIllegalArgumentException - ã·ã¹ãã ããã®ãã¡ã€ã«ã»ã¿ã€ãããµããŒãããŠããªãå ŽåisFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type), getAudioFileTypes()public static int write(AudioInputStream stream, AudioFileFormat.Type fileType, File out) throws IOException
stream - ãã¡ã€ã«ã«æžã蟌ãŸãããªãŒãã£ãªã»ããŒã¿ãå«ããªãŒãã£ãªå
¥åã¹ããªãŒã fileType - æžã蟌ããªãŒãã£ãªã»ãã¡ã€ã«ã®çš®é¡out - ãã¡ã€ã«ã»ããŒã¿ãæžã蟌ãŸããå€éšãã¡ã€ã«IOException - å
¥åºåäŸå€ãçºçããå ŽåIllegalArgumentException - ã·ã¹ãã ããã®ãã¡ã€ã«ã»ã¿ã€ãããµããŒãããŠããªãå ŽåisFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type), getAudioFileTypes() ãã°ãŸãã¯æ©èœãéä¿¡
詳现ãªAPIãªãã¡ã¬ã³ã¹ããã³éçºè
ããã¥ã¡ã³ãã«ã€ããŠã¯ãJava SEã®ããã¥ã¡ã³ããåç
§ããŠãã ããã ãã®ããã¥ã¡ã³ãã«ã¯ãæŠå¿µçãªæŠèŠãçšèªã®å®çŸ©ãåé¿æ¹æ³ãæå¹ãªã³ãŒãäŸãªã©ã®ãéçºè
ã察象ã«ãããã詳现ãªèª¬æãå«ãŸããŠããŸãã
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyãåç
§ããŠãã ããã