首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bass Boost - JDA Lavaplayer

Bass Boost - JDA Lavaplayer
EN

Stack Overflow用户
提问于 2022-03-27 10:16:21
回答 1查看 294关注 0票数 0

当您在JDA中使用Lavaplayer (Java不和谐API)时,您将如何创建bass boost命令?

有一个类似于!bassboost 0-100的命令。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-27 21:15:19

经过几个小时的尝试,不同的事情使它正常工作,我最终使用了一个Lavaplayer EqualizerFactory。

首先,我从这里复制了这些值

代码语言:javascript
复制
    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,并将它作为一个过滤器添加到行会音乐管理器中,并设置了帧缓冲持续时间,以使低音增强所需的时间更短,这样的效果如下:

代码语言:javascript
复制
        this.equalizer = new EqualizerFactory();

        this.player.setFilterFactory(equalizer);
        this.player.setFrameBufferDuration(500); // prevent bass boost taking time to take effect

然后,我最终创建了一个小方法,您可以提供从0-200来设置低音提升级别。

代码语言:javascript
复制
    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);
        }
    }

所以低音助推器对当前播放的歌曲起了作用我需要这样做:

代码语言:javascript
复制
playerManager.getConfiguration().setFilterHotSwapEnabled(true);

就这么多了!

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71635447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档