如何解码 ogg vorbis 文件 java?

Posted

技术标签:

【中文标题】如何解码 ogg vorbis 文件 java?【英文标题】:How to decode ogg vorbis file java? 【发布时间】:2015-07-13 06:45:17 【问题描述】:

我开始使用 lwjgl 和 openal,所以我希望能够解码 ogg vorbis 文件并使用 openal 播放它。我的问题是:如何从 java 解码 ogg 文件,获取频率、pcm 数据等并将其发送到 openal 以便我可以播放?我找到jorbis 来做这件事,但它似乎太难用了,而且网上的教程有点乱。我正在考虑类似 alutLoadWavFromFile 之类的东西,但适用于 ogg(和 java)。

谢谢!

编辑:好的,我会澄清我的问题。我想解码一个ogg文件。然后将数据发送到openal。但是我唯一不知道该怎么做的部分是解码部分。

【问题讨论】:

"我如何从 java 解码一个 ogg 文件,获取频率、pcm 数据等并将其发送到 openal 以便我可以播放它?" 这是实际上5个问题。请尝试缩小范围。 没错。修复它 How can I decode OGG vorbis data from a ByteBuffer?的可能重复 【参考方案1】:

VorbisJava 正是这样做的。在工具目录中有一个合理的例子。

https://github.com/Gagravarr/VorbisJava/blob/master/tools/src/main/java/org/gagravarr/vorbis/tools/VorbisCommentTool.java

VorbisFile vf = new VorbisFile(new File(inFile));

此外,Java Sound API 具有可扩展的服务提供者模型。您可以将 OggVorbis 添加为提供程序。

见How can I decode OGG vorbis data from a ByteBuffer?

【讨论】:

以上是关于如何解码 ogg vorbis 文件 java?的主要内容,如果未能解决你的问题,请参考以下文章

如何无损连接ogg vorbis文件?

WEB浏览器视频流播放方案

使用 GStreamer 播放保存在数组中的原始 PCM

h5在页面嵌入video时,只有声音没有画面

在Flash / Flex应用程序中使用Ogg Vorbis

h5 video 视频播放开发 和 问题集合