我以前从未使用过 OpenAL,并且一直在查看一些示例代码。但是,在我开始在我的程序中测试代码之前,我想知道是否有办法选择特定的录音设备进行输入(可能通过带有不同麦克风的组合框)。我知道在 Java Sound API 中这是不可能的,这就是我询问 AL 的原因。
最佳答案
是的。
获取设备列表。提示用户选择一个。用 alcCaptureOpenDevice
设置它。
见 ALC11 API 。
就像是:
String[] capDevices = ALC11.alcGetString(null, ALC11.ALC_CAPTURE_DEVICE_SPECIFIER).split("\0");
for (int i = 0; i < capDevices.length; i++) {
System.out.println("Capture device "+ i + ": " + capDevices[i]);
}
//Selection code goes here
String chosenDevice = ...;
ALCdevice device = ALC11.alcCaptureOpenDevice(chosenDevice, freq, format, bufferSize);
(免责声明:尚未编译/测试)
关于java - 是否可以在 OpenAL 中直接选择录制设备?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16329081/