PDA

View Full Version : java devo riprodurre un suono


texerasmo
22-06-2005, 12:14
Ciao a tutti devo riprodurre un suono mid oppure wav va be lo stesso potete darmi qualche dritta?

texerasmo
22-06-2005, 12:42
ho trovato questo esmepio su internet ma non mi funge..


import javax.swing.*;
import javax.sound.sampled.*;
import java.io.*;

public class suono extends JFrame {


public suono(String file) {
// String file1="C:/mino.mid";
File sf=new File(file);

AudioFileFormat aff;
AudioInputStream ais;


try {
aff=AudioSystem.getAudioFileFormat(sf);

ais=AudioSystem.getAudioInputStream(sf);


AudioFormat af=aff.getFormat();


DataLine.Info info = new DataLine.Info(
Clip.class,
ais.getFormat(),
((int) ais.getFrameLength() *
af.getFrameSize()));

Clip ol = (Clip) AudioSystem.getLine(info);

ol.open(ais);

ol.loop(0);
} catch(UnsupportedAudioFileException ee){} catch(IOException ea){} catch(LineUnavailableException LUE){};

}

public static void main(String arg[]) {
new suono(arg[0]);

}

}


dal mi main faccio


String prova = "C:\\mino.wav";
boolean mino= true;
if (mino){
suono allarme = new suono(prova);

}

ally
22-06-2005, 13:06
...provato qui (http://www.jsresources.org/)?...

ally
22-06-2005, 13:23
...a me funziona...

import javax.swing.*;
import javax.sound.sampled.*;
import java.io.*;

public class Suono extends JFrame {

public static void main(String arg[]) {
Suono suono = new Suono("C:\\done.wav");
boolean mino = true;
if (mino){
Suono allarme = new Suono("C:\\done.wav");
}
}

public Suono(String file) {
// String file1="C:/mino.mid";
File sf=new File(file);

AudioFileFormat aff;
AudioInputStream ais;


try {
aff=AudioSystem.getAudioFileFormat(sf);

ais=AudioSystem.getAudioInputStream(sf);


AudioFormat af=aff.getFormat();


DataLine.Info info = new DataLine.Info(
Clip.class,
ais.getFormat(),
((int) ais.getFrameLength() *
af.getFrameSize()));

Clip ol = (Clip) AudioSystem.getLine(info);

ol.open(ais);
ol.loop(0);
} catch(UnsupportedAudioFileException ee){}
catch(IOException ea){}
catch(LineUnavailableException LUE){};

}
}

...pero' devi riordinare qualcosina...