您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

更改混音器以在Java中将声音输出到

更改混音器以在Java中将声音输出到

获取当前平台上所有Mixer数组,可以使用AudioSystem#getMixerInfo

static void printAllMixerNames() {
    for(Mixer.Info info : AudioSystem.getMixerInfo()) {
        System.out.println(info.getName());
    }
}

如果您的虚拟电缆可用,它将在阵列中。例如,在我的Mac上,将打印以下内容

Java声音音频引擎
内建输入
声花(2ch)
声花(64ch)
Pro Tools汇总I / O

(Soundflower是一个虚拟设备。)

为了得到一些具体的信息Mixer,不幸的是您需要进行String评估。因此,您需要事先发现其名称,供应商或其他名称,或者为用户提供从列表中选择一个的选项。

static Mixer getMixerByName(String toFind) {
    for(Mixer.Info info : AudioSystem.getMixerInfo()) {
        if(toFind.equals(info.getName())) {
            return AudioSystem.getMixer(info);
        }
    }
    return null;
}

Mixer获得特定信息后,您可以从中获取LineAudioInputStream。您可以Clip通过来从中获取一个AudioSystem#getClip(Mixer.Info)

我正在尝试播放wav / …

javax.sound.sampled不支持mp3替代方法可以在这里找到。

java 2022/1/1 18:26:02 有327人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶