Hallo,
irgendwie bin ich mit meinem Problem ziemlich ratlos. Vielleicht weiß ja hier jemand Rat .
Ich möchte gerne ein Wave abspielen. Dazu nutze ich die beiden folgenden Funktionen:
Das eigentliche Abspielen wird dann von einer extra Funktion realisiert. Das funktioniert auch, insofern ich das mit lokalen Dateien mache (also mit der zweiten Funktion). Jedoch das Einlesen per URL will einfach nicht funktionieren, wobei die url richtig ist. Ich bekomme zwar was zurück, allerdings entspricht dies nicht dem korrekten Inhalt. Bin echt ratlos Danke
irgendwie bin ich mit meinem Problem ziemlich ratlos. Vielleicht weiß ja hier jemand Rat .
Ich möchte gerne ein Wave abspielen. Dazu nutze ich die beiden folgenden Funktionen:
Code:
public void read(URL url){
try{
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(url.openStream());
AudioFormat af = audioInputStream.getFormat();
int size = (int) (af.getFrameSize() * audioInputStream.getFrameLength());
byte[] audio = new byte[size];
DataLine.Info info = new DataLine.Info(Clip.class, af, size);
audioInputStream.read(audio, 0, size);
clipStore.put(url.getFile(), new AudioData(af, audio, size, info));
} catch (Exception e){
}
}
public void read(File file){
try{
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file);
AudioFormat af = audioInputStream.getFormat();
int size = (int) (af.getFrameSize() * audioInputStream.getFrameLength());
byte[] audio = new byte[size];
DataLine.Info info = new DataLine.Info(Clip.class, af, size);
audioInputStream.read(audio, 0, size);
clipStore.put(file.getName(), new AudioData(af, audio, size, info));
} catch (Exception e){
}
}
public class AudioData{
public AudioFormat af;
public byte[] audio;
public int size;
public DataLine.Info info;
public AudioData(AudioFormat af, byte[] audio, int size, DataLine.Info info){
this.af = af;
this.audio = audio;
this.size = size;
this.info = info;
}
}
Das eigentliche Abspielen wird dann von einer extra Funktion realisiert. Das funktioniert auch, insofern ich das mit lokalen Dateien mache (also mit der zweiten Funktion). Jedoch das Einlesen per URL will einfach nicht funktionieren, wobei die url richtig ist. Ich bekomme zwar was zurück, allerdings entspricht dies nicht dem korrekten Inhalt. Bin echt ratlos Danke