我在http://www.tutorials.de/threads/java-einen-sound-abspielen.17178/找到了这个TestCode 它在OSX上运行,但在我的PC Win7上运行。 Win7上的Sound API有什么问题吗? 我安装了几个声音设备(integerated和FireWire AudioInterface)并尝试了两种声音设备并且没有听到任何声音。
import javax.sound.sampled.*;
import java.io.*;
/*
* SoundTest.java
*
* Created on 1. August 2003, 21:06
*/
/**
*
* @author Administrator
*/
public class SoundTest {
/** Creates a new instance of SoundTest */
public SoundTest() {
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
try{
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("sample.wav"));
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);
// for(int i=0; i < 32; i++) {
Clip clip = (Clip) AudioSystem.getLine(info);
clip.open(af, audio, 0, size);
clip.start();
// }
}catch(Exception e){ e.printStackTrace(); }
}
}
感谢您的回复!
Ĵ
答案 0 :(得分:1)
如果您使用的是Java 7,我建议您尝试使用JavaFX API。它们在各种平台上更先进,更兼容。在任何人提出要求之前,您不仅限于使用JavaFX的网站。
答案 1 :(得分:0)
你做了一个不好的例子,那就是混合了两种不同方法的代码(自己阅读音频流而不是让剪辑处理流)。
这里的最佳答案How can I play sound in Java?显示了如何通过Clip播放。