我有一些与Sun,音频播放器和声音输入/输出相关的问题
为什么sun.audio.AudioPlayer
包不属于Java API?这里有一些信息:http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6b14/sun/audio/AudioPlayer.java但它仍然是我正在使用的默认JDK构建的一部分。
我已经尝试过使用JMF,花了半天时间用螺丝钉绕它,但没有真正有用。我设法将jmf.jar
导入到Eclipse中我尝试了一个演示脚本,它仍然像没有业务那样吐出错误。考虑到现在放弃了?!?然而,Java提供了一个相对较新版本的链接:http://www.oracle.com/technetwork/java/javase/download-142937.html我有点担心但是在页面底部如何写下“false ,,,,,,,”?
您认为什么是用于音频I / O和操作的最佳软件包?
我只是想在一个项目上工作,虽然MP3播放器是一个很好的起点,因为我可以做一点摆动。然而,从我读到的内容来看,它似乎相当困难Java并不是非常热衷于制作mp3和音频操作包。
答案 0 :(得分:7)
与其他sun.*
软件包一样,它没有文档,可能会消失。
这是一个可选包,不是SE的一部分,并且很长时间没有更新。 Oracle上面有一个页面,它仍然可用,但是,谁知道它会发生什么。
这是当前的Java声音实现,它是SE的一部分,可以找到它的教程here。如果你想在Java中使用音频,这是你应该学习的东西,因为它是官方的,它可以工作,它有时会得到更新并且有很好的文档记录。
为什么?尽管在文件系统中无处不在,但mp3的历史记录为licensing and patent issues。 Mp3是一个雷区,这可能是Sun / Oracle没有努力支持它的原因。 (如果这就是原因,我不会责怪他们。)
如果你真的想要播放mp3,那么网上就会出现一些第三方解码器。推荐一个没有意义,因为所有这些都会读取mp3。
使用javafx.scene.media.MediaPlayer
。见javafx.scene.media
/Supported Media Types。 JavaFX是Java 8(以及Java 7的新版本)中JRE / JDK的一部分,并且(可能)最终将取代javax.sound
和javax.swing
等几个SE API。