JAVALinux。多声卡订单

JAVALinux。多声卡订单,java,linux,audio,Java,Linux,Audio,我编写了SpringBoot应用程序,用于从三个相同的声卡捕获音频,将声音转换为mp3并流式传输到网络 获取可用设备的代码: public static Map<Integer, Mixer.Info> getAvailableDevices() { Mixer.Info[] mixers = AudioSystem.getMixerInfo(); Map<Integer, Mixer.Info> devices = new HashMap<&g

我编写了SpringBoot应用程序,用于从三个相同的声卡捕获音频,将声音转换为mp3并流式传输到网络

获取可用设备的代码:

public static Map<Integer, Mixer.Info> getAvailableDevices() {

    Mixer.Info[] mixers = AudioSystem.getMixerInfo();

    Map<Integer, Mixer.Info> devices = new HashMap<>();
    for (Mixer.Info mixer : mixers) {
        Integer patternStart = mixer.getName().indexOf(ALSA_DEVICE_PATTERN);
        if (patternStart > 0) {
            devices.put(Integer.parseInt(mixer.getName().substring(patternStart + 4, patternStart + 5)), mixer);
        }
    }

    return devices;
}
我不能保证重启后会有相同顺序的设备


我不知道该怎么做。请帮帮我。

谷歌找到了这个。。第6节(锚链接似乎不起作用,所以你必须向下滚动)哦,谢谢。这是一个很好的决定。snd-ca0106模块没有vid和pid。所以我可以使用udev规则。但我不知道谷歌是怎么发现这个的。。第6节(锚链接似乎不起作用,所以你必须向下滚动)哦,谢谢。这是一个很好的决定。snd-ca0106模块没有vid和pid。所以我可以使用udev规则。但我不知道怎么做。
options snd_ca0106 index=0
options snd_ca0106 index=1
options snd_ca0106 index=2