正在 Raspberry pi 和 java 上播放音频
Playing audio on Raspberry pi with java
你好,我这里有这段代码
import java.io.File;
import java.io.IOException;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.UnsupportedAudioFileException;
public class Playmusic implements Runnable {
public static void main(String[] args){
Thread t = new Thread(new Playmusic());
t.start();
}
@Override
public void run() {
AudioInputStream audioIn;
try {
audioIn = AudioSystem.getAudioInputStream(new File("test.wav"));
Clip clip;
clip = AudioSystem.getClip();
clip.open(audioIn);
clip.start();
Thread.sleep(clip.getMicrosecondLength()/1000);
} catch (UnsupportedAudioFileException | IOException | LineUnavailableException | InterruptedException e1) {
e1.printStackTrace();
}
}
}
在覆盆子上播放声音。但是当我 运行 它时,它不会产生任何输出。
我已经在它工作的 Windows 和 Linux 系统上测试了它。
该程序确实注意到了该文件,因为它在整个声音持续时间内都在休眠,并且没有给我任何运行时异常。
它也不能是导致问题的扬声器,因为我可以用
aplay test.wav
播放声音并且它给了我一个输出。我想使用 JavaFX 库,但它似乎在 resbian 的缩减 java 版本中被删除。
这与 Java 或 Raspbian 无关...检查 RPi 配置 sudo raspi-config
,并确保您在 HDMI 或 Jack Out 之间正确配置音频输出.那应该可以解决问题...
你好,我这里有这段代码
import java.io.File;
import java.io.IOException;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.UnsupportedAudioFileException;
public class Playmusic implements Runnable {
public static void main(String[] args){
Thread t = new Thread(new Playmusic());
t.start();
}
@Override
public void run() {
AudioInputStream audioIn;
try {
audioIn = AudioSystem.getAudioInputStream(new File("test.wav"));
Clip clip;
clip = AudioSystem.getClip();
clip.open(audioIn);
clip.start();
Thread.sleep(clip.getMicrosecondLength()/1000);
} catch (UnsupportedAudioFileException | IOException | LineUnavailableException | InterruptedException e1) {
e1.printStackTrace();
}
}
}
在覆盆子上播放声音。但是当我 运行 它时,它不会产生任何输出。
我已经在它工作的 Windows 和 Linux 系统上测试了它。
该程序确实注意到了该文件,因为它在整个声音持续时间内都在休眠,并且没有给我任何运行时异常。
它也不能是导致问题的扬声器,因为我可以用 aplay test.wav
播放声音并且它给了我一个输出。我想使用 JavaFX 库,但它似乎在 resbian 的缩减 java 版本中被删除。
这与 Java 或 Raspbian 无关...检查 RPi 配置 sudo raspi-config
,并确保您在 HDMI 或 Jack Out 之间正确配置音频输出.那应该可以解决问题...