当您在JDA中使用Lavaplayer (Java不和谐API)时,您将如何创建bass boost命令?
有一个类似于!bassboost 0-100的命令。
发布于 2022-03-27 21:15:19
经过几个小时的尝试,不同的事情使它正常工作,我最终使用了一个Lavaplayer EqualizerFactory。
首先,我从这里复制了这些值
public static final float[] BASS_BOOST = {
0.2f,
0.15f,
0.1f,
0.05f,
0.0f,
-0.05f,
-0.1f,
-0.1f,
-0.1f,
-0.1f,
-0.1f,
-0.1f,
-0.1f,
-0.1f,
-0.1f
};然后,我创建了一个新的EqualizerFactory,并将它作为一个过滤器添加到行会音乐管理器中,并设置了帧缓冲持续时间,以使低音增强所需的时间更短,这样的效果如下:
this.equalizer = new EqualizerFactory();
this.player.setFilterFactory(equalizer);
this.player.setFrameBufferDuration(500); // prevent bass boost taking time to take effect然后,我最终创建了一个小方法,您可以提供从0-200来设置低音提升级别。
public void bassBoost(float percentage)
{
final float multiplier = percentage / 100.00f;
for (int i = 0; i < BASS_BOOST.length; i++)
{
equalizer.setGain(i, BASS_BOOST[i] * multiplier);
}
}所以低音助推器对当前播放的歌曲起了作用我需要这样做:
playerManager.getConfiguration().setFilterHotSwapEnabled(true);就这么多了!
https://stackoverflow.com/questions/71635447
复制相似问题