MP3 파일을로드하려고합니다. 내 클래스 경로에 jmf.jar (windows 버전)이 있고 이클립스를 통해 클래스를 실행하려고합니다. 하지만 실행하려고하면이 오류가 발생합니다. Java API 및 JMF를 사용하여 mp3 재생 /로드, 오류 지원되지 않는 형식
나는 다운로드 오라클 사이트에서 JMF의 버전을 설정합니다내가 (이클립스를 통해) 오라클 자바 7을 실행하고
오류 :
javax.sound.sampled.UnsupportedAudioFileException:
could not get audio input stream from input stream
at
javax.sound.sampled.AudioSystem.getAudioInputStream
(Unknown Source)
at
org.berlin.sound.WaveformDisplaySimulator.main
(WaveformDisplaySimulator.java:47)
코드는 다음과 같습니다.
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import javax.media.Codec;
import javax.media.Format;
import javax.media.PlugInManager;
import javax.media.format.AudioFormat;
import javax.sound.sampled.AudioFileFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
public static void main(final String[] args) {
try {
System.out.println(System.getProperty("java.version"));
final String MP3 = "com.sun.media.codec.audio.mpa.JavaDecoder";
Codec mp3 = (Codec) Class.forName(MP3).newInstance();
final Format input1 = new AudioFormat(AudioFormat.MPEGLAYER3);
final Format input2 = new AudioFormat(AudioFormat.MPEG);
final Format output = new AudioFormat(AudioFormat.LINEAR);
PlugInManager.addPlugIn(
"com.sun.media.codec.audio.mpa.JavaDecoder",
new Format[]{ input1, input2 },
new Format[]{ output },
PlugInManager.CODEC
);
final AudioFileFormat.Type [] types = AudioSystem.getAudioFileTypes();
for (final AudioFileFormat.Type t : types) {
System.out.println("Returning Type : " + t);
} // End of the for //
final String PATH = "C:\\Users\\Downloads\\soundcloud2.mp3";
final File file = new File(PATH);
final AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new BufferedInputStream(new FileInputStream(file)));
} catch (final Exception e) {
e.printStackTrace();
}
} // End of the method //
MP3 라이브러리 플러그인이 있습니까? http://www.oracle.com/technetwork/java/javase/download-137625.html –
'입력 스트림에서 오디오 입력 스트림을 가져올 수 없습니다. '모든 MP3가 동일한 것은 아닙니다. 다른 MP3 파일과 함께 사용해보십시오. 특히 여기에있는 오래된/간단한 파일 (http://pscode.org/media/#sound) (이 페이지는 현재 느립니다)과 함께 사용해보십시오. –
mp3plugin.jar이 표시되지 않습니다. 위의 링크를 클릭하면 특별히 mp3plugin이없는 JMF 다운로드 사이트로 리디렉션됩니다. 또한 JMStudio를 사용하여 MP3를로드 할 수있었습니다. 그래서 그것은 내 코드 여야합니다. 나는 무엇을 바꿀 지 모른다. 또한 JavaDecoder 클래스가 내 클래스 경로에 없기 때문에 찾을 수 없습니다. –