gpt4 book ai didi

Java音乐播放器: Song information and playing

转载 作者:行者123 更新时间:2023-12-02 14:45:27 25 4
gpt4 key购买 nike

在 Android 中,我们可以使用媒体播放器在设备上播放歌曲,并使用光标来获取轨道信息(操作系统会跟踪该信息)。我的问题是,这些的 Java 等价物是什么?

注意:我看到有人提到JavaFX,但是默认情况下它似乎没有随JVM一起安装,因此我的程序将不再是跨平台的。

有什么建议吗?

注意:这些都将是本地文件,尽管它们可以是任何音频文件类型。

最佳答案

我将提供有关 Java 音乐播放器的 JavaFX 相关解决方案的信息,因为我认为这是用于此任务的一项很好的技术。

支持的平台和格式

they may be of any audio filetype.

JavaFX 支持的音频类型记录在 javafx.scene.media javadoc 中。 JavaFX 2.2 支持的格式是各种容器中的 MP3、AAC 和 PCM,例如 mp3、mp4 和 wav 文件。不支持 Ogg Theora 等其他格式 - 因此,如果您需要此类格式,您将需要与 JavaFX 2.2 不同的解决方案。

I have seen people mentioning JavaFX, however this does not seem to be installed with the JVM by default and thus my program would no longer be cross-platform

由于 Java 7 update 6 和 JavaFX 2.2 在 OS X、Windows 和 Linux 上运行,因此默认情况下,JavaFX 随 Oracle Java 运行时一起安装。目前还没有在移动平台上运行 JavaFX 的广泛可用的解决方案(尽管将来可能会改变)。

有关在 Java 7 中使用 JavaFX 的更多信息,请参见我对 Compiling and running with JavaFX 2.1 的回答。以及JavaFX Deployment Guide .

get the track information (which the OS keeps track of)

大多数轨道信息实际上编码在媒体文件中,而不是操作系统数据库中。您可以retrieve metadata来自 JavaFX 播放的媒体文件。支持从媒体文件解析有限数量的元数据,如 media documentation 中所定义。 。请注意,并非所有媒体都包含所有元数据。我测试过a free mp3 file from amazon并能够成功地从中提取大量元数据。来自 iTunes 的测试 aac 编码 m4a 文件的元数据大部分为空。因此结果取决于所使用的媒体文件。

示例播放器

我创建了一个sample music player在 JavaFX 中播放目录中的音频文件,显示每首歌曲的元数据。

audioplayer

java2s 还托管 source for a media playerPro JavaFX 2 book 的作者创建。这可能是比我的代码更好的引用,因为我的代码是一个快速破解,而专业源代码来自一本专业出版的书籍。

其他问题

Any suggestions for those of us on linux not using Oracle's JRE?

Oracle JRE 可在 Linux 上使用,但如果您不想使用它,可以构建 openjfx对于 openjdk并使用它,或者您可以使用 Oracle JRE 开发应用程序并使用 JavaFX 打包工具将其分发为 self-contained application因此它没有外部 JRE 依赖性。

关于Java音乐播放器: Song information and playing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17035762/

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