gpt4 book ai didi

audio - 在 Raspi 上使用 javax.sound.sampled 和 openjdk-7

转载 作者:太空宇宙 更新时间:2023-11-04 07:16:11 24 4
gpt4 key购买 nike

我在使用 Java 从 Raspi 中获得良好的声音时遇到了很大的问题。

我想为我用 Java 编写的媒体服务器编写一个小型 AirPlay 客户端。我开始使用 javazoom 中的 Player 类 ( http://www.javazoom.net/javalayer/docs/docs1.0/javazoom/jl/player/package-summary.html )。这给我带来的不是真正的断断续续,但不知何故扭曲,并且比我流式传输到 Raspi 的 mp3 文件的正常播放速度慢。

我的第一个想法是,也许 mp3 的解码对于 Raspi 来说有点太多了,特别是因为超频有一点帮助。所以现在我将 mp3 转换为服务器上的 wav 文件,然后将其流式传输到 Raspi,使用 javax.sound.sampled.* 内容播放它。然而,没有任何改进:|

有人有在 Raspi 上播放 Java 声音文件的经验吗?任何建议都有帮助!

谢谢,斯特凡

最佳答案

我建议您尝试使用 JavaFX。它比标准 JDK 上对媒体的支持要好得多。此外,您已经在使用 Java 7,因此迁移会很容易。方法如下:

Media media = new Media(Utils.findURI(baseDirName, soundFileName).toString());
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Platform.runLater(new Runnable() {
@Override
public void run() {
MediaPlayer mediaPlayer = new MediaPlayer(media);
mediaPlayer.setCycleCount(1);
mediaPlayer.play();
}
});
}
});

OpenJDK 中声音的实现存在很多错误。其中之一是它滥用音响系统并垄断它。因此,在 Linux 上,如果您按照上述方式进行操作,您将有更好的机会让事情正常运行。

关于audio - 在 Raspi 上使用 javax.sound.sampled 和 openjdk-7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19939555/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com