Я не знаю, какую звуковую библиотеку вы пытаетесь использовать.
Если вы используете приличную версию JDK, это должно сработать:
import java.io.File;
import java.io.IOException;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.SourceDataLine;
import javax.sound.sampled.UnsupportedAudioFileException;
public class MakeSound {
public static void main(String[] args) throws LineUnavailableException, UnsupportedAudioFileException, IOException {
playSound("test.wav");
}
public static void playSound(String strFilename)
throws LineUnavailableException, UnsupportedAudioFileException, IOException {
File soundFile = new File(strFilename);
AudioInputStream audioStream = AudioSystem.getAudioInputStream(soundFile);
AudioFormat audioFormat = audioStream.getFormat();
DataLine.Info info = new DataLine.Info(SourceDataLine.class, audioFormat);
try (SourceDataLine sourceLine = (SourceDataLine) AudioSystem.getLine(info);) {
sourceLine.open(audioFormat);
sourceLine.start();
int nBytesRead = 0;
byte[] abData = new byte[128000];
while (nBytesRead != -1) {
nBytesRead = audioStream.read(abData, 0, abData.length);
if (nBytesRead > 0) {
sourceLine.write(abData, 0, nBytesRead);
}
}
sourceLine.drain();
}
}
}
HTH!