java中的音频播放无法正常工作
我试图模拟这里找到的代码,但无法通过loop()或start()播放。我一直在寻找答案,但我的答案似乎只是一个侥幸或愚蠢的错误,其他人都能认识到java中的音频播放无法正常工作,java,audio,javasound,Java,Audio,Javasound,我试图模拟这里找到的代码,但无法通过loop()或start()播放。我一直在寻找答案,但我的答案似乎只是一个侥幸或愚蠢的错误,其他人都能认识到 import javax.sound.sampled.*; import java.net.URL; public class AudioTest { public static void main(String[] args) throws Exception { URL url = new URL("http://
import javax.sound.sampled.*;
import java.net.URL;
public class AudioTest
{
public static void main(String[] args) throws Exception
{
URL url = new URL("http://www.public.asu.edu/~wnjones1/leftright.wav");
Clip clip = AudioSystem.getClip();
AudioInputStream audioIn = AudioSystem.getAudioInputStream(url);
clip.open(audioIn);
clip.start();
}
}
它拥有示例中缺少GUI的所有内容,但这不重要,不是吗?它至少还能玩一次,对吗
任何帮助都将不胜感激。谢谢大家!
--编辑--
这是一个简单的两秒钟的.wav文件,我从我的网站上提取。我使用的是Java7u21
--编辑v2.0--
所以基本上我学到的是。。。保留GUI。或者使用小程序,这样就不必担心main()的结尾
在Java声音信息中看到的(工作)源代码。佩奇就是这样
import java.net.URL;
import javax.swing.*;
import javax.sound.sampled.*;
public class LoopSound {
public static void main(String[] args) throws Exception {
URL url = new URL(
"http://pscode.org/media/leftright.wav");
Clip clip = AudioSystem.getClip();
// getAudioInputStream() also accepts a File or InputStream
AudioInputStream ais = AudioSystem.
getAudioInputStream( url );
clip.open(ais);
clip.loop(Clip.LOOP_CONTINUOUSLY);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
// A GUI element to prevent the Clip's daemon Thread
// from terminating at the end of the main()
JOptionPane.showMessageDialog(null, "Close to exit!");
}
});
}
}
我提请你注意:
// A GUI element to prevent the Clip's daemon Thread
// from terminating at the end of the main()
JOptionPane.showMessageDialog(null, "Close to exit!");
加上那一部分就可以了
所以没有GUI我不能播放任何文件 我想不起基于命令行的应用程序。这确实听起来不错,但这是可能的
import java.net.URL;
import javax.swing.*;
import javax.sound.sampled.*;
import java.util.Scanner;
public class LoopSound {
public static void main(String[] args) throws Exception {
URL url = new URL(
"http://pscode.org/media/leftright.wav");
Clip clip = AudioSystem.getClip();
// getAudioInputStream() also accepts a File or InputStream
AudioInputStream ais = AudioSystem.
getAudioInputStream( url );
clip.open(ais);
clip.loop(Clip.LOOP_CONTINUOUSLY);
Scanner scanner = new Scanner (System.in);
scanner.nextInt();
}
}
如果你想播放mp3文件,我的意思是使用像j2se这样的java,告诉我我可以帮你向我解释你的查询,你想要什么更新这个问题。这是一个.wav文件,我使用的是JavaSE7u21。试试看这对你有帮助吗?我故意忽略了GUI。我想我可以不用它。所以没有GUI我不能播放任何文件?不,我没说过。请参见编辑。需要做的只是防止
main(String)
结束。如果你回来时说“没有扫描仪我就不能播放歌曲”
,我会被警告说我会打你的头(这是一条规则)。“那么……没有扫描仪我不能播放音乐?”我开玩笑说。但是谢谢。它确实更能解释为什么有GUI。
import java.net.URL;
import javax.swing.*;
import javax.sound.sampled.*;
import java.util.Scanner;
public class LoopSound {
public static void main(String[] args) throws Exception {
URL url = new URL(
"http://pscode.org/media/leftright.wav");
Clip clip = AudioSystem.getClip();
// getAudioInputStream() also accepts a File or InputStream
AudioInputStream ais = AudioSystem.
getAudioInputStream( url );
clip.open(ais);
clip.loop(Clip.LOOP_CONTINUOUSLY);
Scanner scanner = new Scanner (System.in);
scanner.nextInt();
}
}