当前位置: 首页 > 知识库问答 >
问题:

如何在Java中通过MediaPlayer播放内存中的声音 /JavaFX

林鸿彩
2023-03-14

API引用显示<code>javafx.scene。media支持从URL播放声音。在我的例子中,声音文件是:

  1. 完全在内存中(在字节数组中),或
  2. 即时下载到内存中

它不能保存到本地文件,但我想通过MediaPlayer播放它。

如何创建内存中声音字节数组的URL?

共有2个答案

经和洽
2023-03-14

com.sun.media.jfxmedia.AudioClip.create()(Oracle的JFX实现中javafx.scene.media.AudioClip在内部使用的类)提供了从内存字节数组创建音频剪辑的能力。然而,从java8-b127开始,它(以及该类包含的其他有趣的方法,例如createSegment)抛出Un的操作异常

源代码文件提到http://javafx-jira.kenai.com/browse/RT-27007,但是,它已经从JIRA删除。所以,不要为了实施而屏息以待。

狄令
2023-03-14

抱歉,你不能,因为:

仅支持HTTP、FILE和JAR URL。

根据文档

 类似资料:
  • 我在许多论坛和YouTube教程中搜索了一些简单的代码来播放声音文件(.mp3),但我找到的所有内容都不适合我。 我总是收到异常,它找不到文件或其他错误,但它总是以异常结束。 有什么我必须先配置的吗? -编辑- 我再次尝试以下代码来显示我得到的解释: 这是我的代码 添加JFXPanel后,我得到了异常:线程“main”中的异常MEDIA Exception:MEDIA _ UNAVAILABLE

  • 问题内容: Octave似乎假设某个特定的声音播放实用程序将在系统上可用,但似乎没有提供指定备用声音的功能。在以下错误中,Octave正在寻找,这不是在所有系统上都可用的实用程序。 八度:38>声音(beamformed_20) sh:ofsndplay:找不到命令 是否可以使用Octave配置设置或代码片段来指定适合系统的实用程序? 问题答案: 在我的一台Linux机器上,我创建了以下ofsnd

  • 问题内容: 我希望能够在程序中播放声音文件。我应该去哪里看? 问题答案: 我写了下面的代码,效果很好。但我认为它仅适用于格式。

  • 我希望能够在我的程序中播放声音文件。我应该去哪里?

  • 问题内容: 这是我用来在我的react应用程序中使用url(this.url)播放声音的代码。当我按下播放按钮时,它给我一个错误 我不确定为什么会这样,因为我没有看到任何未定义的状态。一个;; 状态已经声明。 我是新来的反应者,所以我可能会错过一些非常重要的东西。 请帮忙! 问题答案: 我稍微改进了Jaxx的版本,使其包含一个,以便在音频结束时重置按钮。 ES6类属性语法 挂钩版本(反应16.8+

  • 问一下Xamarin.Forms便携里面Xamarin.Forms的音频怎么播放 正如我所知,有依赖服务,我看到了一些示例,只有iOS和Android,但没有Windows Phone 8.1/Windows 8.1和UWP。