private synchronized void startSampled( AudioInputStream as,
InputStream in ) throws UnsupportedAudioFileException,
LineUnavailableException {
Info info = null;
DataPusher datapusher = null;
DataLine.Info lineinfo = null;
SourceDataLine sourcedataline = null;
// if ALAW or ULAW, we must convert....
as = Toolkit.getPCMConvertedAudioInputStream(as);
if( as==null ) {
// could not convert
return;
}
lineinfo = new DataLine.Info(SourceDataLine.class,
as.getFormat());
if( !(AudioSystem.isLineSupported(lineinfo))) {
return;
}
sourcedataline = (SourceDataLine)AudioSystem.getLine(lineinfo);
datapusher = new DataPusher(sourcedataline, as);
info = new Info( null, in, datapusher );
infos.addElement( info );
datapusher.start();
}