我在javafx开发了一个音乐播放器。 有没有办法在Windows媒体播放器中实现类似于WOW EFFECT的3D音效。 我搜索过没有媒体播放器的方法来实现这样的事情。
我的javafx级别:中级
答案 0 :(得分:2)
AFAIK,可以应用于JavaFX MediaPlayer的唯一效果是均衡器,具有javafx.scene.media.AudioEqualizer
类。您可以使用getAudioEqualizer方法获取MediaPlayer
' AudioEqualizer
,并修改其现有频段,添加/删除频段等。
但是,如果你想实现其他效果(混响,延迟,失真......等等),我认为你运气不好:JavaFX媒体API并没有为此提供方法,并且它似乎并不意味着可以以任何方式进行扩展(例如,您无法为其他编解码器添加支持)。
如果您需要的不仅仅是JavaFX媒体API提供的内容,那么在Java中进行严肃媒体播放的唯一解决方案似乎是使用带有Java包装器的本机库。 vlcj(website here,Javadoc here)似乎是一个很好的解决方案:它提供了一个围绕VLC的java包装器,它是一个非常强大的媒体播放器,所以你应该能够完成你想要的大部分工作。 - 最糟糕的情况是,它提供了API来直接访问音频缓冲区并自行操作。它显然比使用JavaFX的原生媒体播放更加复杂......