【发布时间】:2024-01-01 09:26:01
【问题描述】:
我正在用 Java 创建一个小型音频播放器,可以很好地播放某些格式(例如 WAV)。我发现这是因为javax.sound 不支持 MP4。从我读过的内容来看,从 MP4 转换为 WAV 是无损的,所以我相信这不应该那么困难。我知道有很多第三方库可以做到这一点,但我对下载一个应该相当简单的东西不感兴趣。我已经查看了每个 ISO 的特定 ISO,试图了解数据是如何存储的,以便能够创建 BufferedReader 和 BufferedWritter 以查看是否可以手动转换它,但我无法找到信息我在寻找。在纯 Java 1.7.0 中执行此操作的方法是什么(我知道 JavaFX 有一个 MediaPlayer,但不幸的是我不能使用 1.8.0)。
或者,如果有人知道我可以在哪里找到构成 MP4 和 WAV 的每个容器的特定容器信息(例如标头大小/信息、数据、ACK/NACK 等)。
【问题讨论】:
-
是什么让您认为这很简单?这实际上是极其复杂的。 MP4 文件中可能使用的编解码器都经过了数十年的研究。使用现有的编解码器。更好的是,使用 FFmpeg 并让它为您完成所有工作。我不明白你为什么认为你不能使用现有的图书馆。
标签: java audio audio-streaming audio-converter